Ejemplo n.º 1
0
        public ActionResult LoginUser(UserTable user)
        {
            KhairaFreightEntities usersEntities = new KhairaFreightEntities();


            Validate_UserTable_Result roleUser = usersEntities.ValidateUser(user.Username, user.Password).FirstOrDefault();

            string message = string.Empty;

            switch (roleUser.UserId.Value)
            {
            case -1:
                message = "Username and/or password is incorrect.";
                break;

            case -2:
                message = "Account has not been activated.";
                break;

            default:
                FormsAuthenticationTicket ticket = new FormsAuthenticationTicket(1, user.Username, DateTime.Now, DateTime.Now.AddMinutes(2880), user.RememberMe, roleUser.Roles, FormsAuthentication.FormsCookiePath);
                string hash = FormsAuthentication.Encrypt(ticket);

                HttpCookie cookie = new HttpCookie(FormsAuthentication.FormsCookieName, hash);
                FormsAuthentication.SetAuthCookie(user.Username, user.RememberMe);
                if (ticket.IsPersistent)
                {
                    cookie.Expires = ticket.Expiration;
                }
                Response.Cookies.Add(cookie);
                //if (!string.IsNullOrEmpty(Request.Form["ReturnUrl"]))
                //{

                //    return RedirectToAction(Request.Form["ReturnUrl"].Split('/')[2]);

                //}
                //else
                //{

                //{

                //get user profile------------------------------------------------------
                List <UserTable> userList = usersEntities.UserTables.Where(x => x.Username.Equals(user.Username)).ToList();
                int    roleId             = Convert.ToInt32(userList[0].RoleId);
                int    EmpId = Convert.ToInt32(userList[0].EmpId);
                string uname = (userList[0].Username);

                Session["EmpId"] = EmpId;

                //---------------------------------------------------------------------------

                return(RedirectToAction("Profile"));
            }


            ViewBag.Message = message;

            return(View(user));
        }