public IActionResult AcceptInvite(string code = null) { AcceptInviteViewModel viewModel = new AcceptInviteViewModel( code: code); return View(viewModel); }
public async Task AcceptInvitationAsync(AcceptInviteViewModel acceptInviteViewModel, String acceptedUserId) { var invite = await _inviteUserRepo.GetInvitationAsync(acceptInviteViewModel.InviteId); invite.Accepted = true; invite.Status = Invitation.StatusTypes.Accepted; invite.DateAccepted = DateTime.Now.ToJSONString(); await _inviteUserRepo.UpdateInvitationAsync(invite); var acceptedUser = await _appUserRepo.FindByIdAsync(acceptedUserId); var invitingUser = EntityHeader.Create(invite.InvitedById, invite.InvitedByName); var orgHeader = EntityHeader.Create(invite.OrganizationId, invite.OrganizationName); await AddAccountToOrgAsync(acceptedUser.ToEntityHeader(), orgHeader, invitingUser); if (acceptedUser.CurrentOrganization == null || acceptedUser.CurrentOrganization.IsEmpty()) { acceptedUser.CurrentOrganization = orgHeader; } acceptedUser.Organizations.Add(orgHeader); await _appUserRepo.UpdateAsync(acceptedUser); }
public ActionResult Join(string email, string houseCode) { var acceptInviteVM = new AcceptInviteViewModel { Email = email, Code = houseCode, HouseholdID = db.Invitations.FirstOrDefault(i => i.code == houseCode).HouseholdID }; return(View(acceptInviteVM)); }
public ActionResult Join(AcceptInviteViewModel acceptInviteVM) { var invite = db.Invitations.FirstOrDefault(i => i.Email == acceptInviteVM.Email && i.code == acceptInviteVM.Code); //var userId = User.Identity.GetUserId(); var userManager = new UserManager <ApplicationUser>( new UserStore <ApplicationUser>(db)); var user = userManager.FindByEmail(acceptInviteVM.Email); if (user == null) { userManager.Create(new ApplicationUser { UserName = acceptInviteVM.Email, Email = acceptInviteVM.Email, HouseholdID = acceptInviteVM.HouseholdID }, "Abc&123"); var userId = userManager.FindByEmail(acceptInviteVM.Email).Id; userManager.AddToRole(userId, "Adult"); db.SaveChanges(); TempData["sweetMsg"] = "Thank you for accepting my invitation, you are now a Household Member!"; } else if (invite != null) { //var userId = User.Identity.GetUserId(); //user = db.Users.Find(userId); user.HouseholdID = invite.HouseholdID; roleHelper.AddUserToRole(user.Id, "Adult"); db.SaveChanges(); TempData["sweetMsg"] = "Thank you for accepting my invitation, you are now a Household Member!"; } return(RedirectToAction("Index", "Home")); }
public async Task <AcceptInviteViewModel> GetInviteViewModelAsync(String inviteId) { var invite = await _inviteUserRepo.GetInvitationAsync(inviteId); return(AcceptInviteViewModel.CreateFromInvite(invite)); }
public Task <InvokeResult> AcceptInvitationAsync(AcceptInviteViewModel acceptInviteViewModel, String acceptedUserId) { return(AcceptInvitationAsync(acceptInviteViewModel.InvitedById, acceptedUserId)); }