/// <summary> /// User Login /// </summary> /// <param name="user"></param> /// <returns></returns> public User UserLogin(User user) { try { UserLogin UserLogin = new UserLogin(); long userId = db.Users.Single(v => v.UserName == user.UserName).Id; var User = db.Users.Find(userId); //Check User If Clinet if (CheckedS.IsUserNotOnlyClinet(user)) { return(null); } UserLogin.LoginDate = DateTime.Now; UserLogin.FkUser_Id = userId; //Check Login Valid if (CheckedS.UserNameAndPasswordIsValid(user.UserName, user.Password)) { //Login Success UserLogin.IsSuccess = true; User.IsSuccessLogin = true; } else { //Login not Success //Check Last 10 login user If all NotSuccess Or Not int skipCount = db.UserLogins.Where(x => x.FkUser_Id == userId).Count() - 10; if (skipCount > 0) { var UserLogins = db.UserLogins.Where(x => x.FkUser_Id == userId).ToList(); if (!UserLogins.Skip(skipCount).Any(x => x.IsSuccess == true)) { User.IsBlocked = true; } } UserLogin.IsSuccess = false; User.IsSuccessLogin = false; } db.UserLogins.Add(UserLogin); db.SaveChanges(); User.IsBlocked = CheckedS.IsUserBlocked(user.UserName, user.Password); return(User); } catch (Exception ex) { return(null); } }
//Create Technical Support internal object CreateTechnicalSupport(TechnicalSupportVM technicalSupport) { if (string.IsNullOrEmpty(technicalSupport.UserName)) { return new { RequestType = RequestTypeEnumVM.Error, Message = Token.FiledIsRequired + " : " + Token.UserName } } ; if (string.IsNullOrEmpty(technicalSupport.Email)) { return new { RequestType = RequestTypeEnumVM.Error, Message = Token.FiledIsRequired + " : " + Token.Email } } ; if (string.IsNullOrEmpty(technicalSupport.Phone)) { return new { RequestType = RequestTypeEnumVM.Error, Message = Token.FiledIsRequired + " : " + Token.Phone } } ; if (string.IsNullOrEmpty(technicalSupport.Message)) { return new { RequestType = RequestTypeEnumVM.Error, Message = Token.FiledIsRequired + " : " + Token.Message } } ; if (!CheckedS.EmailIsCorrect(technicalSupport.Email)) { return new { RequestType = RequestTypeEnumVM.Error, Message = Token.InvalidEmail } } ; if (!CheckedS.NumberValid(technicalSupport.Phone)) { return new { RequestType = RequestTypeEnumVM.Error, Message = Token.InvalidNumber } } ; db.TechnicalSupports.Add(new TechnicalSupport() { CreateDateTime = DateTime.Now, Email = technicalSupport.Email, UserName = technicalSupport.UserName, Message = technicalSupport.Message, }); return(null); }
public ActionResult Login(User user, string returnUrl) { //Check Data Empty if (string.IsNullOrEmpty(user.UserName) || string.IsNullOrEmpty(user.Password)) { return(Json(new { RequestType = RequestTypeEnumVM.Error, Message = Token.EnterUserNameAndPassword, Title = Token.Error }, JsonRequestBehavior.AllowGet)); } //Check User Name Used if (CheckedS.UserNameValid(user.UserName)) { //Add User Login With Statues Login Right Now User User = CreateS.UserLogin(user); if (User == null) { //Retune Message Invalid Data return(Json(new { RequestType = RequestTypeEnumVM.Error, Message = Token.InvalidData }, JsonRequestBehavior.AllowGet)); } //Check last Login is Block if (User.IsBlocked) { //retuen message Account Block return(Json(new { RequestType = RequestTypeEnumVM.Error, Message = Token.YoureAccountIsBlocked }, JsonRequestBehavior.AllowGet)); } else //Check last Login Statues if (User.IsSuccessLogin) { //Login & Redirect Url //Login // FormsAuthentication.SetAuthCookie(user.UserName, user.RememberMe); var UserData = UserS.GetUser(User.Id); if (UserData.AllFile == null) { UserData.AllFile = new AllFile() { FileUrl = DefaultsVM.ImageDefult } } ; //Set User Objct Date In Cookie CookieService.SetUserInCookie(UserData); if (Url.IsLocalUrl(returnUrl) && returnUrl != "/" && returnUrl != "Logout") { return(Json(new { RequestType = RequestTypeEnumVM.Success, ReturnUrl = returnUrl }, JsonRequestBehavior.AllowGet)); } return(Json(new { RequestType = RequestTypeEnumVM.Success, ReturnUrl = "/Home" }, JsonRequestBehavior.AllowGet)); } else { //Retune Message Invalid Data return(Json(new { RequestType = RequestTypeEnumVM.Error, Message = Token.InvalidData }, JsonRequestBehavior.AllowGet)); } } else { //User Not Found ( Invalid Data) return(Json(new { RequestType = RequestTypeEnumVM.Error, Message = Token.InvalidData }, JsonRequestBehavior.AllowGet)); } }
public void Dispose() { db.Dispose(); CheckedS.Dispose(); }