Beispiel #1
0
        public ActionResult Authorization(LoginViewModel model)
        {
            var user = Context.Users.Where(u => u.Username == model.Username && u.Password == model.Password).FirstOrDefault();
            if (user != null)
            {
                var roles = user.Roles.Select(m => m.RoleName).ToArray();

                CustomPrincipalSerializeModel serializeModel = new CustomPrincipalSerializeModel();
                serializeModel.UserId = user.UserId;
                serializeModel.FirstName = user.FirstName;
                serializeModel.LastName = user.LastName;
                serializeModel.roles = roles;

                string userData = JsonConvert.SerializeObject(serializeModel);
                FormsAuthenticationTicket authTicket = new FormsAuthenticationTicket(
                         1,
                         user.Email,
                         DateTime.Now,
                         DateTime.Now.AddMinutes(15),
                         false,
                         userData);

                string encTicket = FormsAuthentication.Encrypt(authTicket);
                HttpCookie faCookie = new HttpCookie(FormsAuthentication.FormsCookieName, encTicket);
                Response.Cookies.Add(faCookie);
                if (Request.IsAjaxRequest())
                {
                    return Json(user.Email);
                }
                return RedirectToAction("JsonIndex", "Home");
            }
            ModelState.AddModelError("", "Incorrect username and/or password");
            return null;
        }
Beispiel #2
0
        public ActionResult Index(LoginViewModel model)
        {
            if (Request.IsAjaxRequest() || ModelState.IsValid)
            {

                ActionResult actionResult = Authorization(model);
                return actionResult;

            }
            return View(model);
        }
Beispiel #3
0
 public ActionResult Registration(RegistrationViewModel model)
 {
     if (ModelState.IsValid)
     {
         User user = new User()
         {
             CreateDate = DateTime.Now,
             Email = model.Email,
             FirstName = model.FirstName,
             IsActive = true,
             LastName = model.LastName,
             Password = model.Password,
             Username = model.Username
         };
         Role userRole = Context.Roles.First(r => r.RoleName == "User");
         user.Roles.Add(userRole);
         Context.Users.Add(user);
         Context.SaveChanges();
         LoginViewModel loginViewModel = new LoginViewModel()
         {
             Username = model.Username,
             Password = model.Password
         };
         ActionResult actionResult = Authorization(loginViewModel);
         return actionResult;
     }
     return View(model);
 }