public ActionResult Login(UserLoginModel login)
        {
            UserAccountDAL agent = new UserAccountDAL();
            login.Password = PasswordGenerator.EncryptPassword(login.Password);

            try
            {
                bool res = agent.IDCheck(login.UserName, login.Password);
                if (res)
                {
                    res = agent.RoleCheck(login.UserName, login.Password, login.Role);
                    if (res)
                    {
                        FormsAuthentication.SetAuthCookie(login.UserName, false);
                        Session["UserID"] = login.UserName;
                        Session["UserRole"] = login.Role;

                        if (login.Role.Equals("D"))
                        {
                            return RedirectToAction("DeliveryIndex", "Home");
                        }

                        else if (login.Role.Equals("F"))
                        {
                            return RedirectToAction("AddMenu", "FoodCourtAdmin");
                        }

                        else if (login.Role.Equals("M"))
                        {
                            return RedirectToAction("AddMovie", "MovieAdmin");
                        }

                        else if (login.Role.Equals("P"))
                        {
                            return RedirectToAction("AddVenue", "PartyAdmin");
                        }

                        else if (login.Role.Equals("U"))
                        {
                            return RedirectToAction("Index", "Home");
                        }

                        else
                        {
                            ModelState.AddModelError("", "You do not have admin priveleges. Role unverified.");
                            return View(login);
                        }

                    }

                    else
                    {
                        ModelState.AddModelError("", "You do not have admin priveleges. Role unverified.");
                        return View(login);
                    }
                }

                else
                {
                    ModelState.AddModelError("", "The user name or password provided is incorrect.");
                    return View(login);
                }
            }

            catch
            {

                return View();
            }
        }