public Menu(string __Name, string __Description, string __Code, int __Ordering, string __Url, Menu __Parent, Category __Category, int __Show) { _Name = __Name; _Description = __Description; _Code = __Code; _Ordering = __Ordering; _Url = __Url; _Show= __Show; _Parent = __Parent; if (__Category != null) _CategoryId = __Category.Id; else _CategoryId = 0; }
public static MenuTranslation FindByMenuAndLang(Menu menu, string lang) { SimpleQuery q = new SimpleQuery(typeof(MenuTranslation), @" from MenuTranslation T where T.Menu = ? and T.Language = ?", menu, lang); MenuTranslation[] translations = (MenuTranslation[])ExecuteQuery(q); if (translations.Length > 0) return translations[0]; else return null; }
public abstract string PrintSelectedItem (Menu menu, string item);
public abstract string PrintItem (Menu menu, string item);
public string BuildTreeLeftWithVinyetas (string givenMenu, Menu actualMenu, Category currentCategory, int depth_level, string currentLanguage, string styleClass) { User user = (User) Controller.Context.Session[Constants.USER]; TreeLeftWithVinyetas wv = new TreeLeftWithVinyetas (givenMenu, currentCategory, actualMenu, user); return wv.BuildTree(currentLanguage, depth_level, styleClass); }
public static MenuTranslation FindByMenuAndLang(Menu menu, Language lang) { MenuTranslation[] translations = (MenuTranslation[]) ActiveRecordBase.FindAll( typeof(MenuTranslation), Expression.Eq("Menu", menu), Expression.Eq("Lang", lang)); if ((translations != null) && (translations.Length > 0)) return translations[0]; else return null; }
protected bool Selected (Menu menu) { bool isAntecessor = false; if ((menu != null) && (this.actualMenu != null)) { for (Menu m = this.actualMenu; m.Parent != null; m = m.Parent) { if (m.Id == menu.Id) { isAntecessor = true; break; } } } if (((this.currentCategory != null) && (menu.CategoryId == this.currentCategory.Id)) || (isAntecessor == true)) return true; return false; }
public TreeTable (string menuName, Category currentCategory, Menu actualMenu, User user) { _givenMenu = Menu.FindByName (menuName); _currentCategory = currentCategory; _actualMenu = actualMenu; _user = user; }
public override string PrintSelectedItem (Menu menu, string item) { string html = String.Empty; html += "<td class=\"" + this.styleClass + "_td_current_" + this.actualDepth + "\">"; html += "<a href=" + menu.ToUrl(config.GetValue(Constants.SITE_ROOT)); html += " title=\"" + menu.Name +"\">"+ item; html += "</a>"; html += "</td>"; return html; }
public override string PrintSelectedItem (Menu menu, string item) { string html = String.Empty; html += "<li class=\"" + this.styleClass + "_li_current_" + this.actualDepth + "\">"; html += "<table class=\"" + this.styleClass + "\">"; html += "<td class=\"" + this.styleClass + "vinyeta" + this.actualDepth + "\">"; if (this.actualDepth != 1) html += ">"; // Viñeta html += "</td>"; html += "<td class=\"" + this.styleClass + "texto" + this.actualDepth + "\">"; html += "<a href=" + menu.ToUrl(config.GetValue(Constants.SITE_ROOT)); html += " title=\"" + menu.Name +"\">" + item; html += "</a>"; html += "</td>"; html += "</table>"; html += "</li>"; html += "<img src=\"" + config.GetValue(Constants.SITE_ROOT) + "/Public/style/img/separamenu.gif\" class=\"" + this.styleClass + ">"; return html; }
public TreeTable (Menu givenMenu, Category currentCategory, Menu actualMenu, User user) { _givenMenu = givenMenu; _currentCategory = currentCategory; _actualMenu = actualMenu; _user = user; }
public TreeLeftWithVinyetas (Menu givenMenu, Category currentCategory, Menu actualMenu, User user) { _givenMenu = givenMenu; _currentCategory = currentCategory; _actualMenu = actualMenu; _user = user; }
protected string GetDescription (Menu menu) { MenuTranslation mt = MenuTranslation.FindByMenuAndLang(menu, Language.FindByName(this.language)); string description; if (mt != null) description = mt.Translation; else description = menu.Description; return description; }
public string BuildSubTree (Menu menu) { this.actualDepth++; if (this.actualDepth <= this.depthLimit) { if (menu.Children.Count > 0) { String subtree = String.Empty; foreach (Menu m in menu.Children) { if ((Selected(m)) || (this.actualMenu.Code == "showAllChilds")) { subtree += PrintSelectedItem (m, GetDescription(m)); subtree += BuildSubTree(m); } else subtree += PrintItem (m, GetDescription(m)); } this.actualDepth--; return subtree; } } this.actualDepth--; return String.Empty; }
public static MenuTranslation[] FindByMenu(Menu menu) { SimpleQuery q = new SimpleQuery(typeof(MenuTranslation), @" from MenuTranslation T where T.Menu = ?", menu); return (MenuTranslation[]) ExecuteQuery(q); }
public string BuildTreeMapaWeb (string givenMenu, Category currentCategory, string currentLanguage, string styleClass) { Menu menu = new Menu("", "", "showAllChilds", 0, "", null, null, 0); User user = (User) Controller.Context.Session[Constants.USER]; Tree mw = new Tree (givenMenu, currentCategory, menu, user); return mw.BuildTree(currentLanguage, 999, styleClass); }
public MenuTranslation(Language lang, Menu menu, string translation) { _lang = lang; _menu = menu; _translation = translation; }
public string MakeMenu(string givenMenu, Category currentCategory, string currentLanguage, string styleClass) { Menu menu = new Menu(); //("", "", "", 0, "", null, null, 0); User user = (User) Controller.Context.Session[Constants.USER]; Tree mw = new Tree (givenMenu, currentCategory, menu, user); return mw.BuildTree(currentLanguage, 1, styleClass); }
private static string ReadMenu(XmlNode node, Menu parent) { try { if (node.Name == "Menu") { string name = NodeGetString(node, "nombre"); string description = NodeGetString(node, "description"); if (name != "" && description == "") description = name; if (name == "" && description != "") name = description; string idcategory = NodeGetString(node, "categorycode"); string code = NodeGetString(node, "code"); // Menu parent = (Menu)NodeGetObject(node, "parent", menus); string orderString = NodeGetString(node, "order"); int ordering = int.Parse(orderString); string url = NodeGetString(node, "url"); string categorystring = NodeGetString(node, "category"); if (categorystring == "") categorystring = name; Category category = null; if (url == "") { if (idcategory != "") category = (Category) NodeGetObject(node, "categorycode", categories); else category = (Category) GetObject(categorystring, categories, node, "category"); } System.Console.WriteLine ("Menu: "+ name); int show = 0; Menu m = new Menu(name, description, code, ordering, url, parent, category, show); m.Save(); menus[name] = m; if (menus[code] == null) menus[code] = m; else System.Console.WriteLine("Hay otro menú con el mismo CODE ({0})", m.Description); foreach (XmlNode n in node.ChildNodes) if (n.Name == "Menu") ReadMenu(n, m); } return null; } catch(System.FormatException) { return "No se pudo leeer columna ordering"; } }
private bool CheckMenuPermission(Menu menu) { bool hasPermission = false; Hashtable menuPermissionsHash; if (menu.CategoryId > 0) { Category category = Category.Find(menu.CategoryId); menuPermissionsHash = category.GetPermissionsHash(this.user); } else menuPermissionsHash = Commons.GetPermissionsBaseHash(true); if (menuPermissionsHash != null) { // Permissions check: (is working fine) Object permission = menuPermissionsHash[Permission.Read]; if ((permission != null) && ((bool)permission)) hasPermission = true; } return hasPermission; }