Example #1
0
        public BaseController()
        {
            if (!string.IsNullOrEmpty(System.Web.HttpContext.Current.User.Identity.Name))
            {
                userCookieData = System.Web.HttpContext.Current.Session["userData"] as UserCookieData;
                if (userCookieData == null)
                {
                    userService = new UserService();

                    User userEntity = userService.GetByUsername(System.Web.HttpContext.Current.User.Identity.Name);
                    userCookieData = Mapper.Map <UserCookieData>(userEntity);
                    System.Web.HttpContext.Current.Session["userData"] = userCookieData;
                }
                ViewBag.UserCookieData = userCookieData;
            }
        }
Example #2
0
        public ActionResult Login(UserModelView userDataIn)
        {
            if (User.Identity.IsAuthenticated)
            {
                return(RedirectToAction("Index", "Home"));
            }

            System.Web.Helpers.AntiForgery.Validate();


            if (ModelState.IsValid)
            {
                if (this.userService.IsValidUser(userDataIn.Username, userDataIn.Password))
                {
                    User           userEntity     = this.userService.GetByUsername(userDataIn.Username);
                    UserCookieData userCookieData = Mapper.Map <UserCookieData>(userEntity);

                    var authTicket = new FormsAuthenticationTicket(
                        1,                           // version
                        userCookieData.Username,     // user name
                        DateTime.Now,                // created
                        DateTime.Now.AddMinutes(20), // expires
                        true,                        // persistent?
                        string.Empty                 // can be used to store roles
                        );

                    string encryptedTicket = FormsAuthentication.Encrypt(authTicket);

                    var authCookie = new HttpCookie(FormsAuthentication.FormsCookieName, encryptedTicket);
                    System.Web.HttpContext.Current.Response.Cookies.Add(authCookie);
                    if (!string.IsNullOrEmpty(userDataIn.ReturnUrl.ToString()))
                    {
                        return(Redirect(userDataIn.ReturnUrl.ToString()));
                    }
                    return(RedirectToAction("Home", "Index"));
                }
            }
            ModelState.AddModelError("General", "Invalid Username or Password");
            return(View(userDataIn));
        }