public ActionResult Create([Bind(Include = "MaNguoiDung,TenNguoiDung,DiaChi,SoDienThoai,Email,CMND,UserName,PassWord,MaChucVu,Avatar")] NguoiDung nguoiDung, HttpPostedFileBase avatar)
        {                                                                                                           //,IsDeleted
            if (ModelState.IsValid)
            {
                if (avatar != null && avatar.ContentLength > 0)
                {
                    try
                    {
                        Random random     = new Random();
                        string avatarfile = nguoiDung.UserName + "_" + random.Next(10000).ToString() + "_" + Path.GetFileName(avatar.FileName);
                        string path       = Path.Combine(Server.MapPath("~/images/avatar/"), avatarfile);
                        avatar.SaveAs(path);
                        nguoiDung.Avatar = avatarfile;
                    }
                    catch (Exception)
                    {
                        //
                    }
                }
                else
                {
                    nguoiDung.Avatar = "default.png";
                }
                nguoiDung.PassWord = MD5Encode.CreateMD5(nguoiDung.PassWord);
                db.NguoiDungs.Add(nguoiDung);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            ViewBag.MaChucVu = new SelectList(db.ChucVus, "MaChucVu", "TenChucVu", nguoiDung.MaChucVu);
            return(View(nguoiDung));
        }
        public ActionResult CapNhat(FormCollection form)
        {
            var    user     = (NguoiDung)Session["Account"];
            string name     = form["name"].ToString();
            string phone    = form["phone"].ToString();
            string email    = form["email"].ToString();
            string address  = form["address"].ToString();
            string password = form["password"].ToString();

            var nguoidung = db.NguoiDungs.SingleOrDefault(n => n.UserName == user.UserName);

            if (nguoidung != null)
            {
                nguoidung.TenNguoiDung = name;
                nguoidung.SoDienThoai  = phone;
                nguoidung.Email        = email;
                nguoidung.DiaChi       = address;
                if (!String.IsNullOrEmpty(password))
                {
                    nguoidung.PassWord = MD5Encode.CreateMD5(password);
                }
                db.SaveChanges();
                SetAlert("Cập nhật thông tin thành công!", "success");
                Session["Account"] = nguoidung;
            }
            else
            {
                SetAlert("Không thể cập nhật thông tin", "error");
            }
            return(RedirectToAction("UserProfile"));
        }
 public ActionResult DangKy([Bind(Include = "MaNguoiDung,TenNguoiDung,SoDienThoai, Email,UserName,PassWord")] NguoiDung nguoiDung)
 {                                                                                                           //,IsDeleted
     if (ModelState.IsValid)
     {
         var nd = db.NguoiDungs.SingleOrDefault(n => n.UserName == nguoiDung.UserName ||
                                                n.SoDienThoai == nguoiDung.SoDienThoai || n.Email == nguoiDung.Email);
         if (nd == null)
         {
             try
             {
                 db.NguoiDungs.Add(new NguoiDung
                 {
                     TenNguoiDung = nguoiDung.TenNguoiDung,
                     DiaChi       = "",
                     SoDienThoai  = nguoiDung.SoDienThoai,
                     Email        = nguoiDung.Email,
                     CMND         = "",
                     UserName     = nguoiDung.UserName,
                     PassWord     = MD5Encode.CreateMD5(nguoiDung.PassWord),
                     IsDeleted    = false,
                     MaChucVu     = 6, // Customer
                     Avatar       = "default.png"
                 });
                 db.SaveChanges();
                 SetAlert("Tạo tài khoản thành công!", "success");
             }
             catch (Exception ex)
             {
                 SetAlert(ex.ToString(), "error");
                 RedirectToAction("Index");
             }
         }
         else
         {
             if (nd.UserName == nguoiDung.UserName)
             {
                 SetAlert("Tài khoản này đã có người sử dụng!", "error");
                 return(RedirectToAction("Index"));
             }
             if (nd.SoDienThoai == nguoiDung.SoDienThoai)
             {
                 SetAlert("Số điện thoại này đã có người sử dụng!", "error");
                 return(RedirectToAction("Index"));
             }
             SetAlert("Tạo tài khoản không thành công!", "error");
         }
     }
     else
     {
         SetAlert("Tạo tài khoản không thành công!", "error");
     }
     return(RedirectToAction("Index"));
 }
        public ActionResult DangNhap(FormCollection form)
        {
            string username = form["username"].ToString();
            string password = MD5Encode.CreateMD5(form["password"].ToString());

            var nguoiDung = db.NguoiDungs.SingleOrDefault(n => n.UserName == username && n.PassWord == password);

            if (nguoiDung != null)
            {
                if (nguoiDung.IsDeleted == false)
                {
                    IEnumerable <ChucVu> listQuyen = db.ChucVus.Where(n => n.MaChucVu == nguoiDung.MaChucVu);
                    string quyen = "";
                    foreach (var item in listQuyen)
                    {
                        quyen += item.TenChucVu + ",";
                    }
                    quyen = quyen.Substring(0, quyen.Length - 1);
                    PhanQuyen(nguoiDung.UserName.ToString(), quyen);
                    Session["Account"] = nguoiDung;
                    HoTen = nguoiDung.TenNguoiDung;
                    if (nguoiDung.ChucVu.TenChucVu != "KhachHang")
                    {
                        return(RedirectToAction("Index", "Manager/Home"));
                    }
                    return(RedirectToAction("Index", "Home"));
                }
                else
                {
                    SetAlert("Tài khoản của bạn đã bị khóa!", "error");
                    return(RedirectToAction("Index", "Home"));
                }
            }
            else
            {
                SetAlert("Sai tài khoản hoặc mật khẩu!", "error");
            }
            return(RedirectToAction("Index", "Home")); // Need add notification login not success
        }