/// <summary> /// Adds the root. /// </summary> /// <param name="pageLinks">The page links.</param> /// <returns>returns the Page links including the root</returns> public static PageLinks AddRoot(this PageLinks pageLinks) { CodeContracts.VerifyNotNull(pageLinks, "pageLinks"); pageLinks.AddLink(pageLinks.Get <YafBoardSettings>().Name, YafBuildLink.GetLink(ForumPages.forum)); return(pageLinks); }
/// <summary> /// Adds the category. /// </summary> /// <param name="pageLinks">The page links.</param> /// <param name="categoryName">Name of the category.</param> /// <param name="categoryId">The category identifier.</param> /// <returns>Returns the Page links including the Category</returns> public static PageLinks AddCategory(this PageLinks pageLinks, [NotNull] string categoryName, [NotNull] int categoryId) { CodeContracts.VerifyNotNull(pageLinks, "pageLinks"); CodeContracts.VerifyNotNull(categoryName, "categoryName"); pageLinks.AddLink(categoryName, YafBuildLink.GetLink(ForumPages.forum, "c={0}", categoryId)); return(pageLinks); }
/// <summary> /// Adds the link. /// </summary> /// <param name="pageLinks">The page links.</param> /// <param name="title">The title.</param> /// <param name="url">The URL.</param> /// <returns>Returns the page links</returns> public static PageLinks AddLink(this PageLinks pageLinks, [NotNull] string title, [CanBeNull] string url = "") { CodeContracts.VerifyNotNull(pageLinks, "pageLinks"); CodeContracts.VerifyNotNull(title, "title"); pageLinks.Add(new PageLink() { Title = title.Trim(), URL = url?.Trim() }); return(pageLinks); }
/// <summary> /// Adds the forum links. /// </summary> /// <param name="pageLinks">The page links.</param> /// <param name="forumId">The forum id.</param> /// <param name="noForumLink">The no forum link.</param> /// <returns>Returns the page links</returns> public static PageLinks AddForum(this PageLinks pageLinks, int forumId, bool noForumLink = false) { CodeContracts.VerifyNotNull(pageLinks, "pageLinks"); using (var links = LegacyDb.forum_listpath(forumId)) { foreach (DataRow row in links.Rows) { if (noForumLink && row["ForumID"].ToType <int>() == forumId) { pageLinks.AddLink(row["Name"].ToString(), string.Empty); } else { pageLinks.AddLink( row["Name"].ToString(), YafBuildLink.GetLink(ForumPages.topics, "f={0}", row["ForumID"])); } } } return(pageLinks); }
/// <summary> /// Adds the forum links. /// </summary> /// <param name="pageLinks">The page links.</param> /// <param name="forumId">The forum id.</param> /// <param name="noForumLink">The no forum link.</param> /// <returns>Returns the page links</returns> public static PageLinks AddForum(this PageLinks pageLinks, int forumId, bool noForumLink = false) { CodeContracts.VerifyNotNull(pageLinks, "pageLinks"); using (var links = YafContext.Current.GetRepository <Forum>().ListPathAsDataTable(forumId)) { foreach (DataRow row in links.Rows) { if (noForumLink && row["ForumID"].ToType <int>() == forumId) { pageLinks.AddLink(row["Name"].ToString(), string.Empty); } else { pageLinks.AddLink( row["Name"].ToString(), YafBuildLink.GetLink(ForumPages.topics, "f={0}", row["ForumID"])); } } } return(pageLinks); }