/// <summary> /// Điều hướng đến trang login. /// Author : QuyPN - 28/05/2018 - create /// </summary> /// <returns>Trang view login, nếu có lỗi sẽ rả về trang error</returns> /// <remarks> /// Method: GET /// RouterName: UserLogin /// </remarks> public ActionResult Index() { try { int idAccount = XacThuc.GetIdAccount(); if (idAccount != 0) { return(RedirectToAction("Index", "Home", new { area = "home" })); } return(View()); } catch (Exception e) { return(RedirectToAction("Error", "Error", new { area = "error", error = e.Message })); } }
/// <summary> /// Ghi đè phương thức dùng để lọc request. /// Author : QuyPN - 24/09/2017 - create /// </summary> /// <param name="filterContext"> /// Data của 1 request. /// </param> public override void OnActionExecuting(ActionExecutingContext filterContext) { //Lấy data request var data = filterContext.RouteData; //Giá trị check có phải là ajax không bool isAjax = filterContext.HttpContext.Request.IsAjaxRequest(); string controller = (string)data.Values["controller"]; string action = (string)data.Values["action"]; string token = Common.GetCookie("token"); if (token != "") { if (isAjax) { //Nếu là ajax và không có quyền truy cập action này if (!XacThuc.CheckAuthentication(token, controller, action)) { //Chuyển qua action của controller xử lý lỗi không có quyền truy cập cho ajax filterContext.Result = new RedirectToRouteResult( new RouteValueDictionary(new { controller = "Error", action = "NotAccessAjax", area = "error" }) ); } } else { //Nếu không phải là ajax và không có quyền truy cập action này if (!XacThuc.CheckAuthentication(token, controller, action)) { //Trả về trang lỗi không có quyền truy cập filterContext.Result = new RedirectToRouteResult( new RouteValueDictionary(new { controller = "Error", action = "NotAccess", area = "error" }) ); } } } base.OnActionExecuting(filterContext); }