private void fillModel(ref JsTreeModel model, int?id) { var pages = CMSPage.FullPageTable.Where(x => id == null ? !x.ParentID.HasValue : x.ParentID == id).OrderBy( x => x.OrderNum); //var pages = db.CMSPages.Where(x => id == null ? !x.ParentID.HasValue : x.ParentID == id).OrderBy(x => x.OrderNum); foreach (var cmsPage in pages) { var child = new JsTreeModel() { data = cmsPage.PageName, attr = new JsTreeAttribute() { id = "x" + cmsPage.ID, href = Url.Action("Edit", "Pages", new { ID = cmsPage.ID }), uid = cmsPage.ID }, }; if (model.children == null) { model.children = new List <JsTreeModel>(); } model.children.Add(child); fillModel(ref child, cmsPage.ID); } }
/// <summary> /// 构造TreeNode 实例 /// </summary> /// <param name="item"></param> /// <param name="childrenItems"></param> /// <param name="isSelected"></param> /// <returns></returns> private JsTreeModel CreateJsTreeModelInstance(FunctionMenu item, JsTreeModel[] childrenItems, bool isSelected) { JsTreeModel model = null; if (childrenItems.Count() > 0) { model = new JsTreeModel { data = item.FuncName, attr = new JsTreeAttribute { id = item.ID.ToString(), selected = isSelected }, children = childrenItems }; } else { model = new JsTreeModel { data = item.FuncName, attr = new JsTreeAttribute { id = item.ID.ToString(), selected = isSelected } }; } return(model); }
private List <JsTreeModel> RecursiveQueryList(List <FolderVO> entities) { List <JsTreeModel> treeList = new List <JsTreeModel>(); foreach (var item in entities) { JsTreeModel jsTreeModel = new JsTreeModel() { id = item.BusinessId.ToString(), parent = item.ParentId.HasValue ? item.ParentId.Value.ToString() : "#", type = "default", text = item.Name, state = new JsTreeState { // 默认打开第一个节点,并且默认选择第一个节点 opened = !item.ParentId.HasValue, selected = !item.ParentId.HasValue, disabled = false }, a_attr = "<a>编辑</a><a>删除</a>" }; treeList.Add(jsTreeModel); } return(treeList); }
public virtual JsonResult GetTreeData() { try { var rootNode = new JsTreeModel { data = new JsTreeNodeData { title = "ejemplo" //icon = Utils.RelativeWebRoot + "Content/images/folder.ico" }, attr = new JsTreeAttribute { id = "0", rel = "0" } }; LoadModulos(rootNode); return(Json(rootNode)); } catch (Exception ex) { LogError(ex); return(MensajeError()); } }
private void LoadModulos(JsTreeModel node) { try { node.children = new List <JsTreeModel>(); List <Modulo> modulos = ModeloBL.Instancia.GetAllActives().ToList(); foreach (Modulo modulo in modulos) { string nuevoNombrePorIdioma = string.Empty; var moduloNode = new JsTreeModel { attr = new JsTreeAttribute { id = modulo.Id.ToString(), rel = "0" }, data = new JsTreeNodeData { title = modulo.tablc_vdescripcion //icon = Utils.RelativeWebRoot + "Content/images/form.ico" }, }; node.children.Add(moduloNode); } } catch (Exception ex) { LogError(ex); } }
public void getree() { SiteItemFolderDAL siteItemDal = new SiteItemFolderDAL(); JsTreeModel treeModel = new JsTreeModel(); treeModel.data = "Site Items"; treeModel.attr = new JsTreeAttribute { id = 5436, title = "" }; var list = siteItemDal.getFolderItemBySiteId(); foreach (var header in list) { JsTreeModel Parts = new JsTreeModel { data = header.ItemTitle, attr = new JsTreeAttribute { id = header.ItemId, title = header.ItemTitle } }; GetChildren(Parts, list); treeModel.children.Add(Parts); } JavaScriptSerializer serialize = new JavaScriptSerializer(); string jtree = serialize.Serialize(treeModel); // return Json(treeModel, JsonRequestBehavior.AllowGet); }
private void ObtenerHijos(ModuloModel moduloModel, IList <ModuloModel> listaJerarquia, JsTreeModel nodo) { List <ModuloModel> jerarquiaHijos = listaJerarquia.Where(x => x.ModuloId == moduloModel.ModuloId).ToList();//.OrderBy(p => p.Posicion).ToList(); if (jerarquiaHijos.Count <= 0) { return; } foreach (ModuloModel modulohijos in jerarquiaHijos) { JsTreeModel rootNode = new JsTreeModel { //state = new JsTreeNodeState {disabled = false, opened = false, selected = false}, li_attr = new JsTreeAttribute { id = modulohijos.ModuloId.ToString(), rel = "0" }, text = modulohijos.Descripcion, icon = WebUtils.RelativeWebRoot + "Content/js/jsTree/Folder.ico" }; ObtenerHijos(modulohijos, listaJerarquia, rootNode); nodo.children.Add(rootNode); } }
private void LoadModulos(JsTreeModel node) { node.children = new List <JsTreeModel>(); var modulos = ItemTablaBL.Instancia.GetByTabla((int)TipoTabla.Modulo).OrderBy(m => m.Nombre).ToList(); foreach (ItemTabla m in modulos) { var modulo = ItemTablaBL.Instancia.Single((int)TipoTabla.Modulo, m.IdItemTabla); if (modulo == null) { continue; } var moduloNode = new JsTreeModel { attr = new JsTreeAttribute { id = "0", rel = modulo.IdItemTabla.ToString() }, data = new JsTreeNodeData { title = modulo.Nombre, icon = Utils.AbsoluteWebRoot + "Content/images/form.ico" }, }; LoadFormularios(modulo.IdItemTabla, moduloNode); node.children.Add(moduloNode); } }
private void LoadModulos(JsTreeModel node) { node.children = new List <JsTreeModel>(); var modulos = EstructuraProductoBL.Instancia.GetByNivel(1).OrderBy(m => m.Nombre).ToList(); foreach (var m in modulos) { var modulo = EstructuraProductoBL.Instancia.Single(m.IdEstructuraProducto); if (modulo == null) { continue; } var moduloNode = new JsTreeModel { attr = new JsTreeAttribute { id = modulo.IdEstructuraProducto.ToString(), rel = "1" }, data = new JsTreeNodeData { title = modulo.Nombre, icon = Utils.AbsoluteWebRoot + "Content/images/form.ico" }, }; LoadFormularios(modulo.IdEstructuraProducto, moduloNode); node.children.Add(moduloNode); } }
public JsonResult GetTreeData() { List <PageItem> pages = new PagesDB().GetPagesFlat(this.PortalSettings.PortalID); List <JsTreeModel> lstTree = new List <JsTreeModel>(); foreach (PageItem page in pages) { if (page.NestLevel == 0) { //JsTreeModel[] child = getChildrenTree(page); JsTreeModel node = new JsTreeModel { data = page.Name, attr = new JsTreeAttribute { id = "pjson_" + page.ID.ToString() }, //children = child, state = "closed" }; lstTree.Add(node); } } int root = 0; JsTreeModel rootNode = new JsTreeModel { data = "Root", attr = new JsTreeAttribute { id = "pjson_" + root.ToString(), rel = "root" }, children = lstTree.ToArray <JsTreeModel>(), }; return(Json(rootNode)); }
private void LoadArbol(IEnumerable <EstructuraProducto> estructuras, int idModulo, JsTreeModel nodo) { try { if (nodo.children == null) { nodo.children = new List <JsTreeModel>(); } foreach (var f in estructuras) { var node = new JsTreeModel { attr = new JsTreeAttribute { id = f.IdEstructuraProducto.ToString(), rel = idModulo.ToString() }, data = new JsTreeNodeData { title = f.Nombre }, }; var forms = EstructuraProductoBL.Instancia.GetByIdParent(f.IdEstructuraProducto).OrderBy(m => m.Nombre).ToList(); node.data.icon = (forms.Count == 0) ? Utils.AbsoluteWebRoot + "Content/images/paper.ico" : Utils.AbsoluteWebRoot + "Content/images/form.ico"; nodo.children.Add(node); LoadArbol(forms, idModulo, node); } } catch (Exception ex) { throw new Exception(ex.Message); } }
/// <summary> /// A method to populate a TreeView with directories, subdirectories, and files /// </summary> /// <param name="dir">The path of the directory</param> /// <param name="node">The "master" node, to populate</param> public void PopulateTree(string dir, JsTreeModel node) { if (node.children == null) { node.children = new List <JsTreeModel>(); } // get the information of the directory var directory = new DirectoryInfo(dir); // loop through each subdirectory foreach (DirectoryInfo d in directory.GetDirectories()) { // create a new node JsTreeModel t = new JsTreeModel(); t.attr = new JsTreeAttribute(); t.attr.id = d.FullName; t.data = d.Name.ToString(); // populate the new node recursively PopulateTree(d.FullName, t); node.children.Add(t); // add the node to the "master" node } // loop through each file in the directory, and add these as nodes foreach (FileInfo f in directory.GetFiles("*.htm")) { // create a new node var t = new JsTreeModel(); t.attr = new JsTreeAttribute(); t.attr.id = f.FullName; t.data = f.Name.ToString(); // add it to the "master" node.children.Add(t); } }
public ActionResult Nodes() { var nodes = new List <JsTreeModel>(); nodes = JsTreeModel.BuildTree(); return(Json(nodes, JsonRequestBehavior.AllowGet)); }
public JsTreeModel[] getChildrenTree(PageItem page) { List <PageStripDetails> childPages = new PagesDB().GetPagesinPage(this.PortalSettings.PortalID, page.ID); int count = 0; List <JsTreeModel> lstTree = new List <JsTreeModel>(); foreach (PageStripDetails childPage in childPages) { PageItem aux = new PageItem(); aux.ID = childPage.PageID; aux.Name = childPage.PageName; //JsTreeModel[] childs = getChildrenTree(aux); JsTreeModel node = new JsTreeModel { data = aux.Name, attr = new JsTreeAttribute { id = "pjson_" + aux.ID.ToString() }, //children = childs, state = "closed" }; lstTree.Add(node); count++; } JsTreeModel[] tree = lstTree.ToArray <JsTreeModel>(); return(tree); }
private void LoadArbol(List <Formulario> formularios, int idModulo, JsTreeModel nodo) { try { if (nodo.children == null) { nodo.children = new List <JsTreeModel>(); } foreach (Formulario f in formularios) { var node = new JsTreeModel { attr = new JsTreeAttribute { id = f.IdFormulario.ToString(), rel = idModulo.ToString() }, data = new JsTreeNodeData { title = f.Nombre }, }; var forms = FormularioBL.Instancia.FormulariosLista(idModulo, f.IdFormulario).OrderBy(m => m.Nombre).ToList(); node.data.icon = (forms.Count == 0) ? Utils.AbsoluteWebRoot + "Content/images/paper.ico" : Utils.AbsoluteWebRoot + "Content/images/form.ico"; nodo.children.Add(node); LoadArbol(forms, idModulo, node); } } catch (Exception ex) { throw new Exception(ex.Message); } }
public JsonResult ObtenerEstructuraJerarquia() { var rootNode = new JsTreeModel(); JsTreeModel nodo = new JsTreeModel(); try { ModuloDTO moduloPadre = new ModuloDTO(); var list = ModeloBL.Instancia.GetAllActives(); var moduloDTOList = MapperHelper.Map <IList <Modulo>, IList <ModuloDTO> >(list); List <ModuloModel> modulo = new List <ModuloModel>(); foreach (var jerarquiaModel in moduloDTOList) { rootNode = new JsTreeModel { li_attr = new JsTreeAttribute { id = jerarquiaModel.Id.ToString(), rel = "0" }, text = jerarquiaModel.tablc_vdescripcion, icon = WebUtils.RelativeWebRoot + "Content/js/jsTree/Folder.ico" }; nodo.children.Add(rootNode); } //ObtenerHijos(moduloPadre, modulo, rootNode); } catch (Exception ex) { LogError(ex); } return(Json(nodo)); }
private void RecursiveAdd(IEnumerable <ApplicationPath> splitPaths, JsTreeModel node, string siteName) { var groups = splitPaths.GroupBy(x => x.PathElements[0]).ToList(); foreach (var group in groups) { var childNode = new JsTreeModel { Properties = new JsTreeModelProperties { IISSiteType = IISSiteType.Application, SiteName = siteName }, Data = string.IsNullOrEmpty(group.Key) ? "Root" : group.Key, Id = group.Select(x => x.FullPath).FirstOrDefault() }; node.Childrens.Add(childNode); List <ApplicationPath> children = group .Where(x => x.PathElements.Count() > 1) .Select(x => new ApplicationPath { PathElements = x.PathElements.Skip(1).ToList(), FullPath = x.FullPath }).ToList(); if (children.Count > 0) { RecursiveAdd(children, childNode, siteName); } else if (childNode.Id == "/") { node.Childrens.Remove(childNode); } } }
private void PopulateTree(JsTreeModel node) { foreach (var site in _siteCollection) { var siteJsTreeModel = new JsTreeModel(); siteJsTreeModel.Properties = new JsTreeModelProperties { IISSiteType = IISSiteType.Site }; siteJsTreeModel.Id = site.Name; siteJsTreeModel.Data = site.Name; node.Childrens.Add(siteJsTreeModel); if (site.Applications.Count > 0) { var applications = site.Applications.Where(x => x.Path != "/" || (!string.IsNullOrWhiteSpace(x.ToString()) && x.Path == "/")); List <ApplicationPath> splitPaths = applications .Select(x => new ApplicationPath { PathElements = x.Path .Split('/') .ToList(), FullPath = x.Path }) .ToList(); RecursiveAdd(splitPaths, siteJsTreeModel, site.Name); } } }
public void PopulateTree(string dir, JsTreeModel node) { if (node.children == null) { node.children = new List <JsTreeModel>(); } DirectoryInfo directory = new DirectoryInfo(dir); foreach (DirectoryInfo d in directory.GetDirectories()) { JsTreeModel t = new JsTreeModel(); string path = ValueConstant.FOLDER_SEPARATOR; string[] arr = d.FullName.Split('\\'); int index = Array.IndexOf(arr, ValueConstant.ROOT_FOLDER); for (int i = index; i < arr.Length; i++) { path += arr[i].ToString() + ValueConstant.FOLDER_SEPARATOR; } t.id = path; t.text = d.Name.ToString(); t.state = new StateNode(); t.state.opened = true; PopulateTree(d.FullName, t); node.children.Add(t); } }
public JsTreeModel[] getChildrenTree(PageItem page) { List <PageStripDetails> childPages = new PagesDB().GetPagesinPage(this.PortalSettings.PortalID, page.ID); int count = 0; List <JsTreeModel> lstTree = new List <JsTreeModel>(); foreach (PageStripDetails childPage in childPages) { if (PortalSecurity.IsInRole("Admins") || (!PortalSecurity.IsInRole("Admins") && (childPage.PageID != 100 || childPage.ParentPageID == 100))) { PageItem aux = new PageItem(); aux.ID = childPage.PageID; aux.Name = childPage.PageName; //JsTreeModel[] childs = getChildrenTree(aux); JsTreeModel node = new JsTreeModel { data = aux.Name, attr = new JsTreeAttribute { id = "pjson_" + aux.ID.ToString() }, //children = childs, }; lstTree.Add(node); count++; } } JsTreeModel[] tree = lstTree.ToArray <JsTreeModel>(); return(tree); }
public JsonResult GetTreeModule(string result, int pageId) { List <PageItem> pages = new PagesDB().GetPagesFlat(this.PortalSettings.PortalID); var page = pages.First(p => p.ID == pageId); JsTreeModel[] child = getChildrenTree(page); List <JsTreeModel> child2 = new List <JsTreeModel>(); var panelist = result.Split('+').ToList(); var panetopage = ModelServices.GetPageModules(pageId); var lowerpane = panelist.ConvertAll(d => d.ToLower()); var i = 0; foreach (var pane in panelist) { JsTreeModel[] childm = getModuleToPane(pane, pageId); JsTreeModel nodem = new JsTreeModel { text = pane, id = i.ToString(), data = pane, attr = new JsTreeAttribute { id = "pjson_pane_" + i, rel = "folder" }, //children2 = childm }; child2.Add(nodem); i++; } // add other pane. foreach (var pane in panetopage) { if (!lowerpane.Contains(pane.Key)) { JsTreeModel[] childm = getModuleToPane(pane.Key, pageId); JsTreeModel nodem = new JsTreeModel { text = pane.Key, id = i.ToString(), data = pane.Key + " [Not present in current layout]", attr = new JsTreeAttribute { id = "pjson_pane_" + i, rel = "folder2" }, //children2 = childm }; child2.Add(nodem); i++; } panelist.Add(pane.Key); } var childlist = child.ToList(); foreach (var childmod in child2) { childlist.Add(childmod); } child = childlist.ToArray <JsTreeModel>(); return(Json(child)); }
public JsonResult GetRootPage() { JsTreeModel rootNode = new JsTreeModel(); // rootNode.attr = new JsTreeAttribute(); rootNode.text = "Root"; rootNode.id = "0";// new DirectoryInfo(Request.MapPath("/")).Name; return(Json(rootNode, JsonRequestBehavior.AllowGet)); }
private void GetPanes(string pageid, List <JsTreeModel> pages, bool loadModules, string panename) { string URL = ConvertRelativeUrlToAbsoluteUrl(HttpUrlBuilder.BuildUrl("~/?pageid=" + Convert.ToInt32(pageid) + "&panelist=y")); System.Net.WebRequest webRequest = System.Net.WebRequest.Create(URL); webRequest.Method = "GET"; StreamReader sr = new StreamReader(webRequest.GetResponse().GetResponseStream()); string result = sr.ReadToEnd(); List <JsTreeModel> child2 = new List <JsTreeModel>(); var panelist = result.Split('+').ToList(); //var panetopage = ModelServices.GetPageModules(Convert.ToInt32(pageid)); var lowerpane = panelist.ConvertAll(d => d.ToLower()); var i = 0; if (!loadModules) { foreach (var pane in panelist) { //JsTreeModel[] childm = getModuleToPane(pane, Convert.ToInt32(pageid)); JsTreeModel nodem = new JsTreeModel { text = pane, id = pane, isPane = true, nodeType = "pane", // icon = @"/aspnet_client/jQuery/jsTree/icon.png", //+ "http://jstree.com/tree.png", type = "pane", //data = pane, attr = new JsTreeAttribute { id = "pjson_pane_" + i, rel = "folder" }, //children2 = childm }; child2.Add(nodem); i++; } pages.AddRange(child2); } else { // add other pane. JsTreeModel[] childm = getModuleToPane(panename, Convert.ToInt32(pageid)); pages.AddRange(childm); //JsTreeModel nodem = new JsTreeModel //{ // text = pane.Key, // id = pane.Key + i.ToString(), // isPane = true, // //data = pane.Key + " [Not present in current layout]", // attr = new JsTreeAttribute { id = "pjson_pane_" + i, rel = "folder2" }, // //children2 = childm //}; //child2.Add(nodem); //i++; } }
private void updateMenuOrders(NaviNode parent, JsTreeModel targetTreeNode, JsTreeModel sourceTreeNode, string hitMode) { List <JsTreeModel> children = _treeModelService.GetChildren(parent.Id).ToList <JsTreeModel>(); int index = 0; if (targetTreeNode == null) { index = children.Count; } else { int pos = 0; foreach (var t in children) { if (t.id == targetTreeNode.id) { switch (hitMode) { case "before": index = pos; break; case "after": index = pos + 1; break; } break; } pos++; } } sourceTreeNode.MenuOrder = 9999; int count = index + 1; for (int i = index; i < children.Count; i++) { if (children[i].id == sourceTreeNode.id) { continue; } children[i].MenuOrder = count; UpdateMenuOrder(children[i]); count++; } sourceTreeNode.MenuOrder = index; UpdateMenuOrder(sourceTreeNode); }
private static JsTreeModel AddVehicleNodes(Vehicle vehicle, string area) { var node = new JsTreeModel(); node.id = vehicle.Id.ToString(); // ReSharper disable once ComplexConditionExpression node.text = vehicle.VehicleName == string.Empty ? vehicle.LicensePlate : " " + vehicle.VehicleName; node.parent = area + "-" + Guid.Empty; node.icon = "la la-car "; return(node); }
private void LoadFormularios(int idModulo, JsTreeModel moduloNode) { try { var formularios = FormularioBL.Instancia.FormulariosLista(idModulo, null).OrderBy(m => m.Nombre).ToList(); LoadArbol(formularios, idModulo, moduloNode); } catch (Exception ex) { throw new Exception(ex.Message); } }
private JsTreeModel GetTreeData(string rootDirectory) { JsTreeModel rootNode = new JsTreeModel(); rootNode.attr = new JsTreeAttribute(); rootNode.data = "ROOT"; string rootPath = rootDirectory;// Request.MapPath("/Root"); rootNode.attr.id = rootPath; PopulateTree(rootPath, rootNode); return(rootNode); }
private void LoadFormularios(int idParent, JsTreeModel moduloNode) { try { List <EstructuraProducto> formularios = EstructuraProductoBL.Instancia.GetByIdParent(idParent).OrderBy(m => m.Nombre).ToList(); LoadArbol(formularios, 1, moduloNode); //el IdModulo = 1 } catch (Exception ex) { throw new Exception(ex.Message); } }
private void updateUrlForMovedNode(JsTreeModel sourceTreeNode) { // TODO Need optimization if (sourceTreeNode.Type == "N") { var n = _db.Set <NaviNode>().Find(sourceTreeNode.Id); _urlHelper.UpdatePageUrl(n); } else { var p = _db.Set <CmsPage>().Find(sourceTreeNode.Id); _urlHelper.UpdatePageUrl(p); } }
public JsonResult GetTreeData() { JsTreeModel rootNode = new JsTreeModel(); rootNode.text = "Hình ảnh"; rootNode.state = new StateNode(); rootNode.state.opened = true; string rootPath = Request.MapPath(ValueConstant.IMAGE_POST_FULL_PATH); rootNode.id = rootPath; PopulateTree(rootPath, rootNode); return(Json(rootNode, JsonRequestBehavior.AllowGet)); }