public OperationStatus TryRegister(UserRegistrationClient registerUser, out TokenUser tokenUser) { if (registerUser == null) { tokenUser = null; return OperationStatus.DataFormatError; } tokenUser = null; registerUser.ServerStatus = false; OperationStatus status = OperationStatus.None; try { var circleUser = _userWork.Create(); circleUser.UserName = registerUser.UserName; circleUser.RegisterEmail = registerUser.RegisterEmail; circleUser.Password = registerUser.Password; status = _userWork.Save(circleUser); if (status == OperationStatus.Success) { MemberRole role = _roleWork.AllCacheItems.Where(x => x.Id == circleUser.RoleId).SingleOrDefault(); tokenUser = new TokenUser(circleUser, role); SecurityManager.AddOrUpdateCurrentTokenUser(tokenUser); status = OperationStatus.RegisterSuccess; registerUser.ServerStatus = true; return status; } } catch (Exception ex) { tokenUser = null; status = OperationStatus.GenericError; registerUser.ServerStatus = false; LoggingWork.Error(ex); } tokenUser = null; return status; }
public ClientJsonResult Register(UserRegistrationClient registerUser) { if (registerUser != null) { try { registerUser.ClearNotifications(); IAccountDriver driver = DependencyResolver.Current.GetService<IAccountDriver>(); TokenUser tokenUser; OperationStatus status = driver.TryRegister(registerUser, out tokenUser); if (status == OperationStatus.RegisterSuccess) { SaveTicketToCookie(tokenUser, false); TokenUserClient clientTokenUser = new TokenUserClient(tokenUser); clientTokenUser.AddSuccessNotification(MessageManager.GetMessage(status)); return ClientJson(clientTokenUser); } else { registerUser.ServerStatus = false; registerUser.AddErrorNotification(MessageManager.GetMessage(status)); } } catch (Exception ex) { registerUser.ServerStatus = false; LoggingWork.Error(ex); registerUser.AddErrorNotification(MessageManager.GetMessage(OperationStatus.GenericError)); } } else { registerUser = new UserRegistrationClient() { ServerStatus = false }; registerUser.AddErrorNotification(MessageManager.GetMessage(OperationStatus.DataFormatError)); } return ClientJson(registerUser); }
public ActionResult UserRegister(UserRegisterViewModel registerUser) { string errorMessage = null; if (registerUser == null) { registerUser = new UserRegisterViewModel(); errorMessage = MessageManager.GetMessage(OperationStatus.DataFormatError); } else { try { IAccountDriver driver = DependencyResolver.Current.GetService<IAccountDriver>(); TokenUser tokenUser; UserRegistrationClient client = new UserRegistrationClient() { UserName = registerUser.UserName, RegisterEmail = registerUser.RegisterEmail, Password = registerUser.Password }; OperationStatus status = driver.TryRegister(client, out tokenUser); if (status == OperationStatus.RegisterSuccess) { SaveTicketToCookie(tokenUser, false); string returnUrl = FormsAuthentication.GetRedirectUrl(string.Empty, false); return Redirect(returnUrl); } else { errorMessage = MessageManager.GetMessage(status); } } catch { errorMessage = MessageManager.GetMessage(OperationStatus.GenericError); } } if (!string.IsNullOrEmpty(errorMessage)) { ViewBag.ErrorMessage = errorMessage; } return PartialView("_UserRegister", registerUser); }