Beispiel #1
0
        public XResponse Execute(XGetTreeDataRequest request, IXExecutionContext context)
        {
            XTreePageInfo treePage = XTreeController.Instance.GetPageInfo(request.MetaName);
            XTreeLoadData treeData = treePage.GetData(request, context);


            if (treeData == null)
            {
                throw new ApplicationException("XTreePageInfo.GetData вернул null");
            }

            return(new XGetTreeDataResponse(treeData.Nodes.ToArray(), !treePage.OffShowIcons ? treePage.IconTemplateURI : String.Empty));
        }
Beispiel #2
0
        public bool HasRightsToExecute(XGetTreeDataRequest request, IXExecutionContextGuard context)
        {
            XTreePageInfo treePage = XTreeController.Instance.GetPageInfo(request.MetaName);

            if (treePage is TreePageWithAccessCheckInfo)
            {
                TreePageWithAccessCheckInfo treePageSec = (TreePageWithAccessCheckInfo)treePage;
                ITUser user = (ITUser)XSecurityManager.Instance.GetCurrentUser();
                if (user.PrivilegeSet.ContainsAll(treePageSec.AccessSecurity.RequiredPrivileges))
                {
                    return(true);
                }
                return(false);
            }
            return(true);
        }
        public XResponse Execute(XGetTreeMenuRequest request, IXExecutionContext context)
        {
            XTreePageInfo treePage = XTreeController.Instance.GetPageInfo(request.MetaName);

            XTreeMenuInfo treemenu;

            if (request.IsMenuForEmptyTree)
            {
                treemenu = treePage.GetMenuForEmptyTree(request, context);
            }
            else
            {
                treemenu = treePage.GetMenu(request, context);
            }
            if (treemenu != null)
            {
                return(new XGetMenuResponse(treemenu.ToXml()));
            }
            else
            {
                return(new XGetMenuResponse(null));
            }
        }