public static dispecerlogin GetLoggedInUser()
        {
            dispecerlogin currentUser = GetUserIfAny();

            if (currentUser != null)
            {
                return(currentUser);
            }

            HttpCookie cookie = HttpContext.Current.Request.Cookies.Get(Constants.CookieLabel);

            if (cookie != null)
            {
                int  userID = 0;
                bool found  = int.TryParse(cookie.Value, out userID);

                if (found)
                {
                    dispecerlogin userToLogin = null;
                    try {
                        using (TruckTransportDbContext db = new TruckTransportDbContext())
                        {
                            userToLogin = db.dispecerlogin.AsNoTracking().Where(x => x.dispecerlogin_id == userID).SingleOrDefault();
                            StartSession(userToLogin, true);
                        }
                        return(userToLogin);
                    }
                    catch
                    {
                        return(null);
                    }
                }
            }

            return(null);
        }
Example #2
0
        public ActionResult Login(LoginVM model)
        {
            if (ModelState.IsValid)
            {
                using (TruckTransportDbContext _db = new TruckTransportDbContext())
                {
                    dispecerlogin userToFind = _db.dispecerlogin.AsNoTracking().Where(x => x.username == model.Username).SingleOrDefault();

                    if (userToFind != null && userToFind.password == model.Password)
                    {
                        Authentication.StartSession(user: userToFind, rememberMe: model.RememberMe);

                        userToFind.lastlogin = UnixTime.GetUnixTimeNow();
                        _db.SaveChanges();

                        return(RedirectToAction(actionName: "Index", controllerName: "Home"));
                    }

                    ModelState.AddModelError("", "Pogrešno korisničko ime ili lozinka!");
                }
            }

            return(View(viewName: "Login", model: model));
        }