private async Task LoadSharedKeyAndQrCodeUriAsync(AppUserTab user) { // Load the authenticator key & QR code URI to display on the form var unformattedKey = await _userManager.GetAuthenticatorKeyAsync(user); if (string.IsNullOrEmpty(unformattedKey)) { await _userManager.ResetAuthenticatorKeyAsync(user); unformattedKey = await _userManager.GetAuthenticatorKeyAsync(user); } SharedKey = FormatKey(unformattedKey); var email = await _userManager.GetEmailAsync(user); AuthenticatorUri = GenerateQrCodeUri(email, unformattedKey); }
public async Task <IActionResult> OnPostAsync(string returnUrl = null) { returnUrl = returnUrl ?? Url.Content("/"); //if (ModelState.IsValid) //{ var user = new AppUserTab { UserName = Input.Email, Email = Input.Email, RealName = Input.Name, EmpRcNo = Input.InstId }; if (Input.Password.Any(Char.IsUpper) == false) { errorm = "Your password must contain at least 1 upper case"; return(Page()); } var useremail = await _userManager.FindByEmailAsync(Input.Email); if (useremail != null) { errorm = "Cordinator already exist please check "; return(Page()); } var result = await _userManager.CreateAsync(user, Input.Password); if (result.Succeeded) { await _userManager.AddToRoleAsync(user, ConstantRole.AgencySuper); _logger.LogInformation("User created a new account with password."); await _signInManager.SignInAsync(user, isPersistent : false); successm = "ACCOUNT SUCCESSFULY CREATED"; return(Page()); } foreach (var error in result.Errors) { ModelState.AddModelError(string.Empty, error.Description); errorm = error.Description; } return(Page()); }
public async Task <IActionResult> OnPostConfirmationAsync(string returnUrl = null) { returnUrl = returnUrl ?? Url.Content("~/"); // Get the information about the user from the external login provider var info = await _signInManager.GetExternalLoginInfoAsync(); if (info == null) { ErrorMessage = "Error loading external login information during confirmation."; return(RedirectToPage("./Login", new { ReturnUrl = returnUrl })); } if (ModelState.IsValid) { var user = new AppUserTab { UserName = Input.Email, Email = Input.Email }; var result = await _userManager.CreateAsync(user); if (result.Succeeded) { result = await _userManager.AddLoginAsync(user, info); if (result.Succeeded) { await _signInManager.SignInAsync(user, isPersistent : false); _logger.LogInformation("User created an account using {Name} provider.", info.LoginProvider); return(LocalRedirect(returnUrl)); } } foreach (var error in result.Errors) { ModelState.AddModelError(string.Empty, error.Description); } } LoginProvider = info.LoginProvider; ReturnUrl = returnUrl; return(Page()); }
public async Task <IActionResult> OnPostAsync(string returnUrl = null) { returnUrl = returnUrl ?? Url.Content("/Areas/Identity/Pages/Account/Login"); if (ModelState.IsValid) { var user = new AppUserTab { UserName = Input.RcNo, Email = Input.Email }; if (Input.Password.Any(Char.IsUpper) == false) { errorm = "Your password must contain at least 1 upper case"; return(Page()); } var useremail = await _userManager.FindByEmailAsync(Input.Email); // var username = await _userManager.GetUserNameAsync(user); if (useremail != null) { errorm = "Email alrealdy exist please check "; return(Page()); } var result = await _userManager.CreateAsync(user, Input.Password); if (result.Succeeded) { // creating Creating Manager role //bool x = await _roleManager.RoleExistsAsync("Employer"); // if (!x) // { // var role = new RoleTb(); // role.Name = "Employer"; // role.RoleId = "EMP01"; // await _roleManager.CreateAsync(role); // } await _userManager.AddToRoleAsync(user, ConstantRole.Employer); _logger.LogInformation("User created a new account with password."); var code = await _userManager.GenerateEmailConfirmationTokenAsync(user); var callbackUrl = Url.Page( "/Account/ConfirmEmail", pageHandler: null, values: new { userId = user.Id, code = code }, protocol: Request.Scheme); await _emailSender.SendEmailAsync(Input.Email, "Confirm your email", $"Please confirm your account by <a href='{HtmlEncoder.Default.Encode(callbackUrl)}'>clicking here</a>."); // await _signInManager.SignInAsync(user, isPersistent: false); successm = "ACCOUNT SUCCESSFULY CREATED"; // Response.Redirect(returnUrl); // return LocalRedirect(returnUrl); return(RedirectToPage("Login")); // return Redirect("/Login?Message=" + successm); } foreach (var error in result.Errors) { ModelState.AddModelError(string.Empty, error.Description); errorm = error.Description; } } // If we got this far, something failed, redisplay form // return Page(); return(LocalRedirect(returnUrl)); }
public async Task <IActionResult> OnPostAsync(string returnUrl = null) { returnUrl = returnUrl ?? Url.Content("/"); if (ModelState.IsValid) { var user = new AppUserTab { UserName = Input.Email, Email = Input.Email, RealName = Input.Name, EmpRcNo = User.Identity.Name, PhoneNumber = Input.PhoneNo }; if (Input.Password.Any(Char.IsUpper) == false) { errorm = "Your password must contain at least 1 upper case"; return(Page()); } var useremail = await _userManager.FindByEmailAsync(Input.Email); // var username = await _userManager.GetUserNameAsync(user); if (useremail != null) { errorm = "Email alrealdy exist please check s"; return(Page()); } var result = await _userManager.CreateAsync(user, Input.Password); if (result.Succeeded) { await _userManager.AddToRoleAsync(user, ConstantRole.Employer); _logger.LogInformation("User created a new account with password."); //var code = await _userManager.GenerateEmailConfirmationTokenAsync(user); //var callbackUrl = Url.Page( // "/Account/ConfirmEmail", // pageHandler: null, // values: new { userId = user.Id, code = code }, // protocol: Request.Scheme); //await _emailSender.SendEmailAsync(Input.Email, "Confirm your email", // $"Please confirm your account by <a href='{HtmlEncoder.Default.Encode(callbackUrl)}'>clicking here</a>."); await _signInManager.SignInAsync(user, isPersistent : false); successm = "ACCOUNT SUCCESSFULY CREATED"; return(Page()); } foreach (var error in result.Errors) { ModelState.AddModelError(string.Empty, error.Description); errorm = error.Description; } } // If we got this far, something failed, redisplay form // return Page(); return(LocalRedirect(returnUrl)); }
public async void SeedRoles() { var roleStore = new RoleStore <IdentityRole>(_context); if (!_context.Roles.Any(r => r.Name == ConstantRole.Cordinator)) { var role = new RoleTb(); role.Name = ConstantRole.Cordinator.ToString().Trim(); role.RoleId = "CORD001"; await _roleManager.CreateAsync(role); } if (!_context.Roles.Any(r => r.Name == ConstantRole.Employer)) { var role = new RoleTb(); role.Name = ConstantRole.Employer.ToString().Trim(); role.RoleId = "EMP001"; await _roleManager.CreateAsync(role); } if (!_context.Roles.Any(r => r.Name == ConstantRole.Student)) { var role = new RoleTb(); role.Name = ConstantRole.Student.ToString().Trim(); role.RoleId = "STD01"; await _roleManager.CreateAsync(role); } if (!_context.Roles.Any(r => r.Name == ConstantRole.Admin)) { var role = new RoleTb(); role.Name = ConstantRole.Admin.ToString().Trim(); role.RoleId = "Admin"; await _roleManager.CreateAsync(role); } if (!_context.Roles.Any(r => r.Name == ConstantRole.SchSuper)) { var role = new RoleTb(); role.Name = "School Supervisor"; role.RoleId = ConstantRole.SchSuper.ToString().Trim(); await _roleManager.CreateAsync(role); } if (!_context.Roles.Any(r => r.Name == ConstantRole.AgencySuper)) { var role = new RoleTb(); role.Name = "Agency Supervisor"; role.RoleId = "Ags001"; await _roleManager.CreateAsync(role); } var getadmin = await _userManager.FindByEmailAsync("*****@*****.**"); if (getadmin == null) { var userd = new AppUserTab { Email = "*****@*****.**", UserName = "******", RealName = "Bssl Administrator" }; await _userManager.CreateAsync(userd, "Oj5!%hs17"); await _userManager.AddToRoleAsync(userd, SiwesData.ConstantRole.Admin); } // var adminroleid = await _roleManager.FindByNameAsync("Admin"); // var submenulist = _context.SubMenu.ToList(); // var saveadminmenu = new MenuAccess() ; //// saveadminmenu.RoleId = adminroleid.Id; // using (var saved = new MenuAccess()) // { // foreach (var dd in submenulist) // { // saved.RoleId = adminroleid.Id; // saved.Id = dd.Id; // } // _context.MenuAccess.Add(saved); // await _context.SaveChangesAsync(); // } // foreach(var ddd in submenulist) // { // MenuAccess savemenu = new MenuAccess( // { // savemenu.RoleId = adminroleid.Id, // savemenu.Id = ddd.Id, // }); // } // using (var ctx = new ApplicationDbContext() ) // { // foreach (var value in saveadminmenu) // { // value.Username = user; // value.Changed = DateTime.Now; // ctx.UOSChangeLog.Add(value); // } // ctx.SaveChanges(); // return true; // } //} // foreach (var dd in submenulist) // { // saveadminmenu.RoleId = adminroleid.Id; // saveadminmenu.SubMenuId = dd.Id; // _context.MenuAccess.Add(saveadminmenu); // await _context.SaveChangesAsync(); // } //using (var ctx = new MenuAccess) //{ // saveadminmenu(u => { u. = user; u.Changed = DateTime.Now; }); // var test = ctx.UOSChangeLog.AddRange(values); // ctx.SaveChanges(); // return true; //} //using (menuAccess = new MenuAccess()) //{ // foreach (var dd in saveadminmenu) // { // roleid = user; // value.Changed = DateTime.Now; // ctx.UOSChangeLog.Add(value); // } // ctx.SaveChanges(); // return true; //} //var newMonthlyAssessment = new MenuAccess //{ // RoleId = adminroleid.Id, // SubMenuId = submenulist, //}; }