public static AdminInviteModel MapAdminInviteModel(Guid organizationUid) { var model = new AdminInviteModel(); model.OrganizationUid = organizationUid; model.SetInputModelValues(); return(model); }
public async Task <ActionResult> InviteAdmin(AdminInviteModel model) { if (ModelState.IsValid) { User user = UserManager.FindByName(model.InvitedEmail); bool canSend = false; if (user == null) { user = new User { UserName = model.InvitedEmail, Email = model.InvitedEmail, EmailConfirmed = true }; IdentityResult result = await UserManager.CreateAsync(user); canSend = result.Succeeded; if (!canSend) { foreach (var error in result.Errors) { ModelState.AddModelError("", error); } } } else { canSend = true; } if (canSend) { try { await SendActivationMail(user); return(RedirectToAction("Index")); } catch (System.Exception exc) { ModelState.AddModelError("", exc.Message); } } } return(View(model)); }
public async Task <IActionResult> Invite(AdminInviteModel model) { if (model.IsNotValid()) { model.SetInputModelValues(); return(View(model)); } var request = new AdminInviteRequest(CurrentUser.Id, model.OrganizationUid, model.Email, model.FirstName, model.LastName); var response = await _adminService.InviteSuperAdminUser(request); if (response.Status.IsNotSuccess) { model.MapMessages(response); model.SetInputModelValues(); return(View(model)); } // todo : email gönderme senaryosu CurrentUser.IsActionSucceed = true; return(Redirect("/Admin/InviteDone/")); }