public async Task <IActionResult> OnGetAsync(string userId, string code) { if (userId == null || code == null) { return(RedirectToPage("/Areas/Identity/Pages/Account/Manage")); } var user = await _userManager.FindByIdAsync(userId); if (user == null) { return(NotFound($"Nincs találat erre a felhasználóra: '{userId}'.")); } code = Encoding.UTF8.GetString(WebEncoders.Base64UrlDecode(code)); var result = await _userManager.ConfirmEmailAsync(user, code); StatusMessage = result.Succeeded ? "E-mail sikeresen megerősítve" : "Az E-mail cím megerősítése során hiba történet."; if (result.Succeeded) { RoleAndUserStruct newUser = new RoleAndUserStruct(null, user) { RoleId = "visitor" }; var p = await _repo.RoleModositas(newUser); } return(Page()); }
public async Task <IActionResult> OnPostAsync(string returnUrl = null) { returnUrl = returnUrl ?? Url.Content("~/"); ExternalLogins = (await _signInManager.GetExternalAuthenticationSchemesAsync()).ToList(); if (ModelState.IsValid) { var user = new IdentityUser { UserName = Input.Email, Email = Input.Email, EmailConfirmed = true }; var result = await _userManager.CreateAsync(user, Input.Password); if (result.Succeeded) { _logger.LogInformation("User created a new account with password."); RoleAndUserStruct newUser = new RoleAndUserStruct(null, user) { RoleId = "visitor" }; var p = await _repo.RoleModositas(newUser); var code = await _userManager.GenerateEmailConfirmationTokenAsync(user); code = WebEncoders.Base64UrlEncode(Encoding.UTF8.GetBytes(code)); var callbackUrl = Url.Page( "/Account/ConfirmEmail", pageHandler: null, values: new { area = "Identity", userId = user.Id, code = code, returnUrl = returnUrl }, protocol: Request.Scheme); //await _emailSender.SendEmailAsync(Input.Email, "Email megerősítése", // "Szia! \nNemrég regisztráltál a 412. Kalazanti Szent József cs.cs. raktárkezelő programjában" // + $"/nLégyszíves erősítsed meg az email címed erre a linkre kattintva:<a href='{HtmlEncoder.Default.Encode(callbackUrl)}'>email megerősítése</a>." // + "/nHa nem te regisztráltál akkor hagyd figyelmen kívül az emailt." // + "/n/nJó munkát"); if (_userManager.Options.SignIn.RequireConfirmedAccount) { return(RedirectToPage("RegisterConfirmation", new { email = Input.Email, returnUrl = returnUrl })); } else { await _signInManager.SignInAsync(user, isPersistent : false); return(LocalRedirect(returnUrl)); } } foreach (var error in result.Errors) { ModelState.AddModelError(string.Empty, error.Description); } } // If we got this far, something failed, redisplay form return(Page()); }