Esempio n. 1
0
        public static menuWithContent GetMenu(int id = 0, int websiteID = 0)
        {
            menuWithContent menu = new menuWithContent();
            try {
                CurtDevDataContext db = new CurtDevDataContext();
                menu = (from m in db.Menus
                        where m.menuID == id && m.websiteID.Equals(websiteID)
                        select new menuWithContent {
                            menuID = m.menuID,
                            menu_name = m.menu_name,
                            isPrimary = m.isPrimary,
                            active = m.active
                        }).First<menuWithContent>();

                List<menuItem> contents = (from msc in db.Menu_SiteContents
                                              where msc.menuID.Equals(menu.menuID)
                                              orderby msc.parentID, msc.menuSort
                                              select new menuItem {
                                                  menuContentID = msc.menuContentID,
                                                  menuID = msc.menuID,
                                                  menuSort= msc.menuSort,
                                                  menuTitle = msc.menuTitle,
                                                  menuLink = msc.menuLink,
                                                  parentID = msc.parentID,
                                                  linkTarget = msc.linkTarget,
                                                  contentID = msc.contentID,
                                                  content = (from sc in db.SiteContents
                                                                 where sc.contentID.Equals(msc.contentID)
                                                                 select new ContentPage {
                                                                     contentID = sc.contentID,
                                                                     page_title = sc.page_title,
                                                                     content_type = sc.content_type,
                                                                     lastModified = sc.lastModified,
                                                                     createdDate = sc.createdDate,
                                                                     published = sc.published,
                                                                     meta_title = sc.meta_title,
                                                                     meta_description = sc.meta_description,
                                                                     keywords = sc.keywords,
                                                                     active = sc.active,
                                                                     isPrimary = sc.isPrimary,
                                                                     revisions = (db.SiteContentRevisions.Where(x => x.contentID == sc.contentID).ToList<SiteContentRevision>())
                                                                 }).FirstOrDefault<ContentPage>()
                                                }).ToList<menuItem>();
                menu.contents = contents.ToLookup(k => (k.parentID == null) ? 0 : k.parentID);
                return menu;
            } catch { return menu; }
        }
Esempio n. 2
0
 public static string writeContentTree(menuWithContent menu, int parentid, int level)
 {
     string pagecontent = "";
     string editlink = "";
     string primarylink = "";
     level++;
     List<menuItem> menuitems = menu.getChildren(parentid);
     foreach (menuItem menuitem in menuitems) {
         editlink = "<a href=\"/Website/Link/Edit/" + menuitem.menuContentID + "\"><img src=\"/Content/img/pencil.png\" alt=\"Edit Link\" title=\"Edit Link\" /></a>";
         primarylink = "";
         if (menuitem.hasContent() && menuitem.content.isPrimary) {
             primarylink = "<a href=\"/Website/SetPrimaryContent/" + menuitem.contentID + "/" + menu.menuID + "\"><img src=\"/Content/img/check.png\" alt=\"Primary Page\" title=\"Primary Page\" /></a> ";
         } else if (menuitem.hasContent()) {
             primarylink = "<a href=\"/Website/SetPrimaryContent/" + menuitem.contentID + "/" + menu.menuID + "\"><img src=\"/Content/img/makeprimary.png\" alt=\"Make This Page the Primary Page\" title=\"Make This Page the Primary Page\" /></a> ";
             editlink = "<a href=\"/Website/Content/Edit/" + menuitem.contentID + "\"><img src=\"/Content/img/pencil.png\" alt=\"Edit Page\" title=\"Edit Page\" /></a>";
         };
         pagecontent += "<li id=\"item_" + menuitem.menuContentID + "\" class=\"level_" + level + (((menuitem.hasContent() && menuitem.content.published) || (!menuitem.hasContent())) ? " published" : "") + "\">" +
             "<span class=\"handle\">↕</span> <span class=\"title\">" + ((menuitem.hasContent()) ? menuitem.content.page_title : (menuitem.menuTitle + " (link)")) + "</span>" +
             "<span class=\"controls\">" +
                 primarylink +
                 editlink +
                 " <a href=\"/Website/RemoveContent/" + menuitem.menuContentID + "\" class=\"remove\" id=\"remove_" + menuitem.menuContentID + "\"><img src=\"/Content/img/delete.png\" alt=\"Remove Page From Menu\" title=\"Remove Page From Menu\" /></a>" +
             "</span>" +
             "<span id=\"meta_" + menuitem.menuContentID + "\">" +
                 "<input type=\"hidden\" id=\"parent_" + menuitem.menuContentID + "\" value=\"" + ((menuitem.parentID == null) ? 0 : menuitem.parentID) + "\" />" +
                 "<input type=\"hidden\" id=\"children_" + menuitem.menuContentID + "\" value=\"" + menu.getChildrenIDs(menuitem.menuContentID) + "\" />" +
                 "<input type=\"hidden\" id=\"count_" + menuitem.menuContentID + "\" value=\"" + menu.getChildrenCount(menuitem.menuContentID) + "\" />" +
                 "<input type=\"hidden\" id=\"sort_" + menuitem.menuContentID + "\" value=\"" + menuitem.menuSort + "\" />" +
                 "<input type=\"hidden\" id=\"depth_" + menuitem.menuContentID + "\" value=\"" + level + "\" />" +
             "</span>" +
             "<ul id=\"transport_" + menuitem.menuContentID + "\"></ul>" +
             "</li>";
         if (menu.hasChildren(menuitem.menuContentID)) {
             pagecontent += writeContentTree(menu, menuitem.menuContentID, level);
         }
     }
     return pagecontent;
 }