public async Task <ActionResult> Login(CustomUserLogin model) { if (ModelState.IsValid) { UserDTO userDto = new UserDTO { Email = model.Email, Password = model.Password }; ClaimsIdentity claim = await userService.Authenticate(userDto); if (claim == null) { ModelState.AddModelError("", "Incorrect login or password"); } else { AuthenticationManager.SignOut(); AuthenticationManager.SignIn(new AuthenticationProperties { IsPersistent = true }, claim); return(RedirectToAction("Index", "Hotel")); } } return(View(model)); }
public void SaveCustomLogin(string uniqueId, string userId) { var customLogin = new CustomUserLogin() { UniqueId = uniqueId, UserId = userId, }; _context.CustomUserLogins.Add(customLogin); _context.SaveChanges(); }
public ActionResult UserLogin(CustomUserLogin _User) { if (ModelState.IsValid) { TittleUserServices _UserService = new TittleUserServices(); string strRet = ""; long nId = 0; _UserService.ValidateLoginInfo(_User.Email, _User.Password, ref nId, ref strRet); if (string.IsNullOrEmpty(strRet)) { Session["UserID"] = nId; return(RedirectToAction("Index", "Dashboard")); } else { ViewBag.ErrorMessage = strRet; return(View("Index", _User)); } } ViewBag.ErrorMessage = "Please enter Email/Password."; return(View("Index")); }
public async Task <IHttpActionResult> RegisterExternal(RegisterExternalBindingModel model) { int userId = 0; if (!ModelState.IsValid) { string message = ""; var errors = ModelState.Values; foreach (var err in errors) { message = message + err.Errors[0].ErrorMessage; } return(BadRequest(message)); } var usercheckExist = UserManager.FindByEmail(model.Email); if (usercheckExist == null) { var usercheckusername = UserManager.FindByName(model.UserName); if (usercheckusername == null) { //var usercheckPhoneNo = helperServices.GetAllUsers().Where(x => x.PhoneNumber == model.PhoneNumber).FirstOrDefault(); //if (usercheckPhoneNo == null) //{ var user = new ApplicationUser() { UserName = model.UserName, Email = model.Email, RowStatus = true }; IdentityResult result = await UserManager.CreateAsync(user); var IdCreated = new CreatedId(); if (result.Succeeded) { var lastAddedUser = await UserManager.FindByNameAsync(user.UserName); userId = lastAddedUser.Id; await UserManager.AddToRoleAsync(userId, model.Role); IdCreated.Id = userId; int UserId = helperServices.GetAllUsers().OrderByDescending(x => x.Id).FirstOrDefault().Id; var UserLogin = new CustomUserLogin() { UserId = UserId, ProviderKey = model.LoginProvider }; AspNetUserLogin UserData = new AspNetUserLogin(); UserData.LoginProvider = model.LoginProvider; UserData.UserId = UserLogin.UserId; UserData.ProviderKey = model.Token.Substring(0, 120); int Id = helperServices.AddLogin(UserData); //return Ok(new { Code = "200", Message = "Success", Data = userId }); } return(Ok(new { Code = "200", Message = "Success", Data = IdCreated.Id })); } // return BadRequest("Phone No Already Exit"); //} string Messge = "User Name Already Exit"; return(BadRequest(Messge)); } return(BadRequest("Email Already Exit")); }