public ActionResult IsPageBrowseAuthorized(string id) { AdminPages backEndPages = new AdminPages(); AdminPage backEndPage = backEndPages.GetPageByAction(id); return(Content(backEndPages.IsPermissionGranted(backEndPage.PageId, PermissionCode.Browse).ToString(), "text/plain")); }
public override void OnActionExecuting(ActionExecutingContext filterContext) { string controller = filterContext.ActionDescriptor.ControllerDescriptor.ControllerName.ToLower(); string action = filterContext.ActionDescriptor.ActionName; if (BackEndSessions.CurrentUser.IsNull()) { if (!(controller == "admin" && action.ToLower() == "login")) { filterContext.Result = new RedirectToRouteResult(new RouteValueDictionary(new { action = "Login", controller = "Admin", ReturnUrl = HttpUtility.UrlEncode(filterContext.HttpContext.Request.Url.AbsoluteUri) })); } } else { AdminPages backEndPages = new AdminPages(); AdminPage backEndPage = backEndPages.GetPageByAction(action); if (backEndPage.IsNotNull()) { if (backEndPages.IsPermissionGranted(backEndPage.PageId, PermissionCode.Browse)) { if (controller == "admin" && action.ToLower() == "login") { filterContext.Result = new RedirectToRouteResult(new RouteValueDictionary(new { action = "Index", controller = "Admin" })); } } else { filterContext.Result = new RedirectToRouteResult( new RouteValueDictionary( new { action = "ErrorPage", controller = "Admin", errorPage = action, errorMessage = Resources.Strings.PageAccessNotAuthorized } ) ); } } else { filterContext.Result = new RedirectToRouteResult( new RouteValueDictionary( new { action = "ErrorPage", controller = "Admin", errorPage = action, errorMessage = Resources.Strings.Error404 } ) ); } } }
protected override void Initialize(System.Web.Routing.RequestContext requestContext) { base.Initialize(requestContext); AdminPages backEndPages = new AdminPages(); AdminPage backEndPage = backEndPages.GetPageByAction(RouteData.GetRequiredString("action")) ?? new AdminPage(); backEndPage.IsModal = requestContext.HttpContext.Request["IsModal"].ConvertTo <bool>(false, true); ViewBag.AdminPage = backEndPage; }