public IActionResult VerifyEmail(RegisterviewModel model, string token) { DboEmailVerification dbEmv = _context.DboEmailVerification.SingleOrDefault(m => m.Vchr250Token == token && m.BEnabled == true); if (dbEmv != null) { string username = model.UserName; byte[] password = System.Text.Encoding.Unicode.GetBytes(model.Password); string domainName = Utility.GetUserNameFromEmail(dbEmv.Nvch128Email, true); TempData["UserName"] = username; LoginViewModel mode1 = new LoginViewModel { Email = dbEmv.Nvch128Email }; DboCredentialOrganizationInfo user = _context.DboCredentialOrganizationInfo.SingleOrDefault(m => m.Vchr128EMailDomain == domainName && m.BAllowEmailAssociation == true && m.BAllowSelfRegistration == true); //validate whether user record exists DboCredential dbCr = _context.DboCredential.SingleOrDefault(m => m.Vchr32Name == model.UserName && m.Bin64PasswordHash == password && m.BEnabled == false); if (dbCr != null) { //step 6 creating user records. new BusinessLayer(_context).CreateNormalUserCredential(username, user.BintCredentialId); TempData["UserName"] = username; SetSessionUserName(username); dbEmv.BEnabled = false; _context.DboEmailVerification.Update(dbEmv); _context.SaveChanges(); return(RedirectToAction(nameof(CredentialsController.ManageCredentials), "Credentials", new { debug = "" })); } else { ViewData["ErroMessage"] = "User doenst not exists"; return(View()); } } else { //step 10 Access Denied. return(RedirectToAction(nameof(AccountController.AccessDenied), "Account", new { debug = "" })); } }
public IActionResult Register(RegisterviewModel register) { if (!ModelState.IsValid) { return(View(register)); } if (_userServices.isExistusername(register.Username)) { ModelState.AddModelError("Username", "نام کاربری معتبر نمی باشد"); return(View(register)); } if (_userServices.isExistemail(FixedText.fixedemail(register.Email))) { ModelState.AddModelError("Email", "ایمیل معتر نمی باشد"); return(View(register)); } User user = new User() { Activecode = NameGenerator.Generateuniqcode(), Email = FixedText.fixedemail(register.Email), isActive = false, Password = PasswordHelper.EncodePasswordMd5(register.Password), Username = register.Username, RegisterDate = DateTime.Now, UserAvatar = "Defult.jpg" }; _userServices.adduser(user); #region sende Activation email string body = _viewrender.RenderToStringAsync("_ActivateEmail", user); SendEmail.Send(user.Email, "فعال سازی", body); #endregion return(View("SuccedRegister", user)); }