コード例 #1
0
 public ActionResult Login(Models.PasgoUser userModel)
 {
     using (PasGoEntities db = new PasGoEntities())
     {
         if (db.Salt(userModel.PhoneNumber).Count() == 0)
         {
             TempData["Failed"] = "Tên đăng nhập hoặc mật khẩu không đúng";
             return(View());
         }
         string salt = db.Salt(userModel.PhoneNumber).ElementAt(0).ToString();
         string hash = Hashed(userModel.Password, salt);
         if (db.Login(userModel.PhoneNumber, hash).Count() == 0)
         {
             TempData["Failed"] = "Tên đăng nhập hoặc mật khẩu không đúng";
             return(View("Login"));
         }
         else
         {
             var userDetails = db.Login(userModel.PhoneNumber, hash).ElementAt(0);
             Session["PasgoID"]     = userDetails.PasgoID;
             Session["FullName"]    = userDetails.FullName;
             Session["PhoneNumber"] = userDetails.PhoneNumber;
             Session["Email"]       = userDetails.Email;
             Session["DOB"]         = userDetails.DOB;
             Session["Gender"]      = userDetails.Gender_;
             for (int i = 0; i < Session.Contents.Count; i++)
             {
                 System.Diagnostics.Trace.WriteLine(Session.Keys[i] + " - " + Session[i]);
             }
             FormsAuthentication.SetAuthCookie(userModel.PhoneNumber, true);
             if (userDetails.Level != 1)
             {
                 Session["Level"] = userDetails.Level;
                 return(RedirectToAction("Authentication", "Admin", userDetails));
             }
             if (userDetails.Locked != null && userDetails.Locked > DateTime.Now)
             {
                 TempData["Failed"] = "Tài khoản bị khóa, vui lòng liên hệ CSKH!";
                 return(RedirectToAction("Login"));
             }
             return(RedirectToAction("Index", "Home"));
         }
     }
 }
コード例 #2
0
        public ActionResult ChangePassword(string Phone, string PasgoID)
        {
            string oldpw     = Request.Form["old"];
            string newpw     = Request.Form["new"];
            string retypenew = Request.Form["retypenew"];
            string salt      = db.Salt(Phone).ToList().ElementAt(0).ToString();
            string oldhash   = Hashed(oldpw, salt);

            if (oldpw == "" || newpw == null || retypenew == null)
            {
                @TempData["Failed"] = "Mật khẩu không được để trống.";
                return(View());
            }

            if (newpw != retypenew)
            {
                @TempData["Failed"] = "Mật khẩu không giống nhau.";
                return(View());
            }

            string newsalt = CreatSalt();
            string newhash = Hashed(newpw, newsalt);
            var    result  = db.UpdatePassword(Convert.ToInt32(PasgoID), oldhash, newsalt, newhash).ToList().ElementAt(0);

            switch (Convert.ToInt32(result))
            {
            case 0:
                @TempData["Failed"] = "Thay đổi mật khẩu thất bại.";
                return(View());

            case 2:
                @TempData["Failed"] = "Mật khẩu không chính xác.";
                return(View());

            default:
                @TempData["Success"] = "Thay đổi mật khẩu thành công.";
                return(View());
            }
        }