public async Task <ActionResult> Register(RegisterViewModel model) { if (ModelState.IsValid) { var applicationUserCreateOptions = _mapping.Map <ApplicationUserCreateOptions>(model); var result = await _membershipService.CreateUser(applicationUserCreateOptions).ConfigureAwait(false); if (result.Succeeded) { var user = await _membershipService.GetUser(model.Email).ConfigureAwait(false); await _applicationSignInManager.SignInAsync(user, isPersistent : false, rememberBrowser : false); // For more information on how to enable account confirmation and password reset please visit http://go.microsoft.com/fwlink/?LinkID=320771 // Send an email with this link // string code = await UserManager.GenerateEmailConfirmationTokenAsync(user.Id); // var callbackUrl = Url.Action("ConfirmEmail", "Account", new { userId = user.Id, code = code }, protocol: Request.Url.Scheme); // await UserManager.SendEmailAsync(user.Id, "Confirm your account", "Please confirm your account by clicking <a href=\"" + callbackUrl + "\">here</a>"); return(JsonResultEx.Create()); } AddErrors(result); } return(JsonResultEx.Create(ModelState)); }
public ActionResult ResourceModel(string modelName) { if (string.IsNullOrEmpty(modelName)) { return(JsonResultEx.Create(HttpStatusCode.NotFound)); } var modelDescriptionGenerator = _configuration.GetModelDescriptionGenerator(); ModelDescription modelDescription; if (modelDescriptionGenerator.GeneratedModels.TryGetValue(modelName, out modelDescription)) { return(PartialView(modelDescription)); } if (!TryInitialize()) { return(JsonResultEx.Create(HttpStatusCode.NotFound)); } // retry if (modelDescriptionGenerator.GeneratedModels.TryGetValue(modelName, out modelDescription)) { return(PartialView(modelDescription)); } return(JsonResultEx.Create(HttpStatusCode.NotFound)); }
public async Task <ActionResult> Index(ApplicationUserQueryViewModel model) { var applicationUserQueryOptions = _mapping.Map <ApplicationUserQueryOptions>(model); var applicationUsers = await _membershipService.GetUsers(applicationUserQueryOptions).ToPagedListAsync(model).ConfigureAwait(false); var viewModel = _mapping.Map <PagedListViewModel <ApplicationUserListViewModel> >(applicationUsers); return(JsonResultEx.Create(viewModel)); }
public ActionResult Api(string apiId) { if (string.IsNullOrEmpty(apiId)) { return(JsonResultEx.Create(HttpStatusCode.NotFound)); } var apiModel = _configuration.GetHelpPageApiModel(apiId); if (apiModel != null) { return(PartialView(apiModel)); } return(JsonResultEx.Create(HttpStatusCode.NotFound)); }
public async Task <ActionResult> Edit(Guid id) { var applicationUser = await _membershipService.GetUser(id).ConfigureAwait(false); if (applicationUser == null) { return(JsonResultEx.Create(HttpStatusCode.NotFound)); } return(JsonResultEx.Create(new { RoleList = await _membershipService.GetRoles().Select(x => x.Name).ToListAsync().ConfigureAwait(false), ClaimList = await _membershipService.GetClaimTypes().ToListAsync().ConfigureAwait(false), Model = _mapping.Map <ApplicationUserViewModel>(applicationUser) })); }
public async Task <ActionResult> Login(LoginViewModel model, string returnUrl) { if (!ModelState.IsValid) { return(JsonResultEx.Create(ModelState)); } var result = await _applicationSignInManager.PasswordSignInAsync(model.Email, model.Password, model.RememberMe, shouldLockout : false).ConfigureAwait(false); switch (result) { case SignInStatus.Success: return(JsonResultEx.Create()); case SignInStatus.LockedOut: case SignInStatus.RequiresVerification: case SignInStatus.Failure: default: ModelState.AddModelError("", "Invalid login attempt."); return(JsonResultEx.Create(ModelState)); } }
public async Task <ActionResult> Password(ChangePasswordViewModel model) { if (!ModelState.IsValid) { return(JsonResultEx.Create(ModelState)); } var result = await _applicationUserManager.ChangePasswordAsync(User.Identity.GetUserId(), model.OldPassword, model.NewPassword).ConfigureAwait(false); if (result.Succeeded) { var user = await _applicationUserManager.FindByIdAsync(User.Identity.GetUserId()).ConfigureAwait(false); if (user != null) { await _applicationSignInManager.SignInAsync(user, isPersistent : false, rememberBrowser : false).ConfigureAwait(false); } return(JsonResultEx.Create()); } AddErrors(result); return(JsonResultEx.Create(ModelState)); }
public async Task <ActionResult> Update(Guid id, ApplicationUserUpdateViewModel model) { if (!ModelState.IsValid) { return(JsonResultEx.Create(ModelState)); } // create role if not exists model.Roles = (model.Roles ?? new List <string>()).Distinct(); var roles = await _membershipService.GetRoles().Select(x => x.Name).ToListAsync().ConfigureAwait(false); foreach (var role in model.Roles) { if (!roles.Contains(role)) { await _membershipService.CreateRole(role); } } var applicationUserUpdateOptions = _mapping.Map <ApplicationUserUpdateOptions>(model, options => options.Items.Add(nameof(id), id)); var result = await _membershipService.UpdateUser(applicationUserUpdateOptions).ConfigureAwait(false); return(JsonResultEx.Create(result)); }
public ActionResult LogOff() { _authenticationManager.SignOut(DefaultAuthenticationTypes.ApplicationCookie); return(JsonResultEx.Create()); }
public ActionResult CurrentUser() { var currentUser = _mapping.Map <CurrentUserViewModel>(User.Identity); return(JsonResultEx.Create(currentUser)); }