Пример #1
0
        /// <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);
            }
        }
Пример #2
0
        //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);
        }
Пример #3
0
        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));
            }
        }
Пример #4
0
 public void Dispose()
 {
     db.Dispose();
     CheckedS.Dispose();
 }