public void ChangePassword(BaseUser baseUser, string oldPassword, string newPassword) { if (baseUser == null) { throw new BusinessLogicException("Пользователь пустой!"); } if (!(baseUser is User)) { throw new BusinessLogicException("Вы кому пароль меняете?!"); } var user = baseUser as User; var checkedUser = SecurityService.EmailUserValidation(user.Email, oldPassword); if (checkedUser == null) { throw new ValidationException("Введен неправильный пароль!"); } Guid hash, salt; SecurityService.GeneratePasswordHash(newPassword, out hash, out salt); user.Password = hash; user.Salt = salt; DataService.PerThread.SaveChanges(); }
private void FixupInvitedUser(BaseUser previousValue) { if (previousValue != null && ReferenceEquals(previousValue.InviteTicket, this)) { previousValue.InviteTicket = null; } if (InvitedUser != null) { InvitedUser.InviteTicket = this; } }
private void FixupBaseUser(BaseUser previousValue) { if (previousValue != null && ReferenceEquals(previousValue.BlockedUserRecord, this)) { previousValue.BlockedUserRecord = null; } if (BaseUser != null) { BaseUser.BlockedUserRecord = this; } }
private void FixupRecipient(BaseUser previousValue) { if (previousValue != null && previousValue.InboxMessages.Contains(this)) { previousValue.InboxMessages.Remove(this); } if (Recipient != null) { if (!Recipient.InboxMessages.Contains(this)) { Recipient.InboxMessages.Add(this); } if (RecipientId != Recipient.Id) { RecipientId = Recipient.Id; } } }
private void FixupBaseUser(BaseUser previousValue) { if (previousValue != null && previousValue.SmsInfos.Contains(this)) { previousValue.SmsInfos.Remove(this); } if (BaseUser != null) { if (!BaseUser.SmsInfos.Contains(this)) { BaseUser.SmsInfos.Add(this); } if (BaseUserId != BaseUser.Id) { BaseUserId = BaseUser.Id; } } else if (!_settingFK) { BaseUserId = null; } }
private void FixupAuthor(BaseUser previousValue) { if (previousValue != null && previousValue.OutboxMessages.Contains(this)) { previousValue.OutboxMessages.Remove(this); } if (Author != null) { if (!Author.OutboxMessages.Contains(this)) { Author.OutboxMessages.Add(this); } if (AuthorId != Author.Id) { AuthorId = Author.Id; } } else if (!_settingFK) { AuthorId = null; } }
private void FixupReferal(BaseUser previousValue) { if (previousValue != null && previousValue.Invites.Contains(this)) { previousValue.Invites.Remove(this); } if (Referal != null) { if (!Referal.Invites.Contains(this)) { Referal.Invites.Add(this); } if (BaseUserId != Referal.Id) { BaseUserId = Referal.Id; } } else if (!_settingFK) { BaseUserId = null; } }
public void Block(BaseUser user, TimeSpan blockDuration) { throw new NotImplementedException(); }
/// <summary> /// Изменение пароля пользователя. Вызывается, когда известен пользователь. По сути со страницы пользователя /// </summary> public static void ChangePassword(BaseUser user, string oldPassword, string newPassword) { _accountService.ChangePassword(user, oldPassword, newPassword); }
public static void Block(BaseUser user, TimeSpan blockDuration) { _accountService.Block(user, blockDuration); }