示例#1
0
        private Node <TreeNode> GetBranch(HttpContextBase context)
        {
            var root          = Selection.ParseSelected(context.Request["root"]) ?? Selection.Traverse.RootPage;
            var selectedItem  = Selection.SelectedItem;
            var filter        = engine.EditManager.GetEditorFilter(context.User);
            var structure     = ApiExtensions.BuildBranchStructure(filter, engine.Resolve <IContentAdapterProvider>(), selectedItem, root);
            var usersTemplate = structure.Children.Where(x => x.Current.Path == "/TemplateUsers/").FirstOrDefault();

            ////var uploadFolder = structure.Children.Where(x => x.Current.Path == "/upload/").FirstOrDefault();
            ////Option 1: set non expandable on the Upload directory in the structure still traverse to the selected item
            ////if (uploadFolder != null)
            ////    uploadFolder.Current.NotExpandable = true;
            ////Option 2: remove upload folder will not traverse but upload folder will not be into tree
            ////if (uploadFolder != null)
            ////    structure.Children.Remove(uploadFolder);
            ////Option 3: remove children of upload folder will execute fast but we will lost expand arrow in the tree
            ////if (uploadFolder != null)
            ////    uploadFolder.Children.Clear();

            if (usersTemplate != null)
            {
                structure.Children.Remove(usersTemplate);
            }

            return(ApiExtensions.CreateNode(structure, engine.Resolve <IContentAdapterProvider>(), filter));
        }
示例#2
0
        private Node <TreeNode> GetBranch(HttpContextBase context)
        {
            var root         = Selection.ParseSelected(context.Request["root"]) ?? Selection.Traverse.RootPage;
            var selectedItem = Selection.SelectedItem;
            var filter       = engine.EditManager.GetEditorFilter(context.User);
            var structure    = ApiExtensions.BuildBranchStructure(filter, engine.Resolve <IContentAdapterProvider>(), selectedItem, root);

            return(ApiExtensions.CreateNode(structure, engine.Resolve <IContentAdapterProvider>(), filter));
        }
示例#3
0
        protected virtual Node <TreeNode> GetContent(HttpContextBase context, SelectionUtility selection, ContentItem selectedItem)
        {
            var filter = engine.EditManager.GetEditorFilter(context.User) & Content.Is.Page();

            var root      = selection.Traverse.RootPage;
            var structure = ApiExtensions.BuildBranchStructure(filter, engine.Resolve <IContentAdapterProvider>(), selectedItem, root);

            return(GetStructure(structure, filter));
        }
示例#4
0
        private Node <TreeNode> GetTree(HttpContextBase context)
        {
            var adapters     = engine.Resolve <IContentAdapterProvider>();
            var selectedItem = Selection.SelectedItem;
            var filter       = engine.EditManager.GetEditorFilter(context.User);
            int maxDepth;

            int.TryParse(context.Request["depth"], out maxDepth);
            var structure = ApiExtensions.BuildTreeStructure(filter, adapters, selectedItem, maxDepth);

            return(ApiExtensions.CreateNode(structure, adapters, filter));
        }
示例#5
0
 private Node <TreeNode> GetNode(HttpContextBase context)
 {
     return(ApiExtensions.CreateNode(new HierarchyNode <ContentItem>(Selection.SelectedItem), engine.Resolve <IContentAdapterProvider>(), engine.EditManager.GetEditorFilter(context.User)));
 }
示例#6
0
 protected virtual Node <TreeNode> GetStructure(HierarchyNode <ContentItem> structure, ItemFilter filter)
 {
     return(ApiExtensions.CreateNode(structure, engine.Resolve <IContentAdapterProvider>(), filter));
 }