public ActionResult Login(sdtoUser u)
        {
            FormsAuthentication.SignOut();
            // this action is for handle post (login)
            //if (ModelState.IsValid) // this is check validity
            {
                if ((u.FinancialYearId != null && u.FinancialYearId > 0))
                {
                    using (LoanDBContext dc = new LoanDBContext())
                    {
                        var v = dc.User.Where(a => a.UserName.Equals(u.UserName) && a.Password.Equals(u.Password)).FirstOrDefault();
                        if (v != null)
                        {
                            var userSession = new sdtoUserSession() { UserId = v.UserID, CompanyId = v.CompanyId, StartTime = DateTime.Now, FinancialYearId = u.FinancialYearId, Browser = UtilityHelper.UtilityHelper.GetBrowser(), SessionKey = System.Guid.NewGuid().ToString("N"), IPAddress = Request.ServerVariables["REMOTE_ADDR"] };
                            db.UserSessions.Add(userSession);
                            db.SaveChanges();
                            v.UserSession = userSession;
                            FormsAuthentication.SetAuthCookie(u.UserName, false);
                            UtilityHelper.UserSession.SetSession(UtilityHelper.UserSession.LoggedInUser, v);
                            //Session["LogedUserFullname"] = v.FirstName.ToString() + " " + v.LastName.ToString();
                            return RedirectToAction("Index", "Home");
                        }
                        else
                            ModelState.AddModelError("", "Invalid login attempt.");
                    }
                }
                else
                    ModelState.AddModelError("", "Please select a financial period.");

            }
            var accFY = db.FinancialPeriod.Where(x => x.IsDeleted == false).ToList().Select(x => new SelectListItem() { Value = x.FinancialPeriodId.ToString(), Text = x.PeriodName }).ToList();
            accFY.Insert(0, new SelectListItem() { Value = "0", Text = "Select a Period Name" });
            ViewBag.FinancialYears = new SelectList(accFY, "Value", "Text", 0);
            return View();
        }
示例#2
0
        public override void OnResultExecuting(ResultExecutingContext filterContext)
        {
            //filterContext.Controller.ViewBag.IsAuthenticated = MembershipService.IsAuthenticated;
            //filterContext.Controller.ViewBag.IsAdmin = MembershipService.IsAdmin;

            //var userProfile = MembershipService.GetCurrentUserProfile();
            //if (userProfile != null)
            //{
            //    filterContext.Controller.ViewBag.Avatar = userProfile.Picture;
            //}
            LoanDBContext db = new LoanDBContext();
            Business.SysBase.Tree.bfTree<sdtoUrlInfo> urls = new Business.SysBase.Tree.bfTree<sdtoUrlInfo>(db);
            filterContext.Controller.ViewBag.Menu = urls.GetData();
        }