Esempio n. 1
0
        public ActionResult Index()
        {
            var globalLabel = PageLabelService.GetByPageID <PageLabelDto>(ConstPage.Global);
            var result      = new GlobalLabelModel {
                PageLabels = globalLabel.Data
            };

            return(View(result));
        }
Esempio n. 2
0
 public JsonResult Save(PageLabelDto[] listLabels)
 {
     return(Json(JsonModel.Create(PageLabelService.Save(listLabels.ToList()))));
 }
 public JsonResult GetAllPageLabel(long pageID)
 {
     return(Json(!SmsCache.UserContext.IsSystemAdmin
                     ? JsonModel.Create(false)
                     : JsonModel.Create(PageLabelService.GetByPageID <PageLabelDto>(pageID))));
 }
        protected override void OnActionExecuted(ActionExecutedContext filterContext)
        {
            var viewResult = filterContext.Result as ViewResult;

            if (viewResult != null)
            {
                var attribute = filterContext.ActionDescriptor.GetAttribute <PageIDAttribute>() ??
                                filterContext.ActionDescriptor.ControllerDescriptor.GetAttribute <PageIDAttribute>();

                if (attribute != null)
                {
                    var pageLabelResult = PageLabelService.GetByPageID <LanguagePageLabelDto>(attribute.PageID, true);
                    if (pageLabelResult.Success && pageLabelResult.Data != null)
                    {
                        var labelDictionary = pageLabelResult.Data.ToDictionary(x => x.LabelID, x => x.Text);

                        viewResult.ViewData.Add(Common.Constant.ConstKey.ViewData_PageLabel, labelDictionary);
                        viewResult.ViewData.Add(Common.Constant.ConstKey.ViewData_PageID, attribute.PageID);
                    }
                }

                var allowPages = new List <LanguagePageDto>();
                var pageMenus  = new List <PageMenuDto>();

                if (SmsCache.UserContext == null || SmsCache.UserContext.UserID == 0)
                {
                    var allowPagesResult = PageService.GetPublicPages <LanguagePageDto>();
                    if (allowPagesResult.Success && allowPagesResult.Data != null)
                    {
                        allowPages = allowPagesResult.Data.ToList();

                        var pageMenusResult = PageMenuService.GetMenuByPageIds(allowPages.Select(x => x.ID).ToList());
                        if (pageMenusResult.Success && pageMenusResult.Data != null)
                        {
                            pageMenus = pageMenusResult.Data.ToList();
                        }
                    }
                }
                else
                {
                    var pageMenusResult = PageMenuService.GetMenuByPageIds(SmsCache.UserContext.AllowPageIDs);
                    if (pageMenusResult.Success && pageMenusResult.Data != null)
                    {
                        pageMenus = pageMenusResult.Data.ToList();

                        var allowPagesResult = PageService.GetPagesByIds <LanguagePageDto>(pageMenus.Select(x => x.PageID).ToList());
                        if (allowPagesResult.Success && allowPagesResult.Data != null)
                        {
                            allowPages = allowPagesResult.Data.ToList();
                        }
                    }
                }

                viewResult.ViewData.Add(Common.Constant.ConstKey.ViewData_AccessiblePagesForUser, allowPages);
                viewResult.ViewData.Add(Common.Constant.ConstKey.ViewData_PageMenu, pageMenus);

                if (attribute != null && allowPages.Any(x => x.ID == attribute.PageID))
                {
                    ViewBag.Title       = allowPages.First(x => x.ID == attribute.PageID).Title;
                    ViewBag.Description = allowPages.First(x => x.ID == attribute.PageID).Description;
                }
            }
            if (SmsCache.UserContext != null)
            {
                SmsCache.UserContext.LastAccess = DateTime.Now;
            }

            base.OnActionExecuted(filterContext);
        }
 public JsonResult MultiEditPageLabel(PageLabelDto[] listLabels)
 {
     return(Json(!SmsCache.UserContext.IsSystemAdmin
                     ? JsonModel.Create(false)
                     : JsonModel.Create(PageLabelService.Save(listLabels.ToList()))));
 }