protected void LatestPosts_ItemDataBound(object sender, RepeaterItemEventArgs e) { // populate the controls here... if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem) { DataRowView currentRow = ( DataRowView )e.Item.DataItem; // make message url... string messageUrl = YAF.Classes.Utils.YafBuildLink.GetLinkNotEscaped(YAF.Classes.Utils.ForumPages.posts, "m={0}#post{0}", currentRow ["LastMessageID"]); // get the controls HyperLink textMessageLink = (HyperLink)e.Item.FindControl("TextMessageLink"); HyperLink imageMessageLink = (HyperLink)e.Item.FindControl("ImageMessageLink"); ThemeImage lastPostedImage = (ThemeImage)e.Item.FindControl("LastPostedImage"); UserLink lastUserLink = ( UserLink )e.Item.FindControl("LastUserLink"); Label lastPostedDateLabel = ( Label )e.Item.FindControl("LastPostedDateLabel"); HyperLink forumLink = ( HyperLink )e.Item.FindControl("ForumLink"); // populate them... textMessageLink.Text = YAF.Classes.Utils.General.BadWordReplace(currentRow["Topic"].ToString()); textMessageLink.NavigateUrl = messageUrl; imageMessageLink.NavigateUrl = messageUrl; // Just in case... if (currentRow ["LastUserID"] != DBNull.Value) { lastUserLink.UserID = Convert.ToInt32(currentRow ["LastUserID"]); lastUserLink.UserName = currentRow ["LastUserName"].ToString(); } if (currentRow ["LastPosted"] != DBNull.Value) { lastPostedDateLabel.Text = YafDateTime.FormatDateTimeTopic(currentRow ["LastPosted"]); lastPostedImage.ThemeTag = (DateTime.Parse(currentRow ["LastPosted"].ToString()) > YAF.Classes.Utils.Mession.GetTopicRead(Convert.ToInt32(currentRow ["TopicID"]))) ? "ICON_NEWEST" : "ICON_LATEST"; } forumLink.Text = currentRow["Forum"].ToString(); forumLink.NavigateUrl = YAF.Classes.Utils.YafBuildLink.GetLinkNotEscaped(YAF.Classes.Utils.ForumPages.topics, "f={0}", currentRow ["ForumID"]); } }
protected void SubforumList_ItemCreated(object sender, RepeaterItemEventArgs e) { if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem) { DataRow row = ( DataRow )e.Item.DataItem; DateTime lastRead = Mession.GetForumRead(( int )row ["ForumID"]); DateTime lastPosted = row ["LastPosted"] != DBNull.Value ? ( DateTime )row ["LastPosted"] : lastRead; ThemeImage subForumIcon = e.Item.FindControl("ThemeSubforumIcon") as ThemeImage; subForumIcon.ThemeTag = "SUBFORUM"; subForumIcon.LocalizedTitlePage = "ICONLEGEND"; subForumIcon.LocalizedTitleTag = "NO_NEW_POSTS"; try { if (lastPosted > lastRead) { subForumIcon.ThemeTag = "SUBFORUM_NEW"; subForumIcon.LocalizedTitlePage = "ICONLEGEND"; subForumIcon.LocalizedTitleTag = "NEW_POSTS"; } } catch { } } }
/// <summary> /// Icons the legend load. /// </summary> /// <param name="sender">The sender.</param> /// <param name="e">The <see cref="EventArgs"/> instance containing the event data.</param> private void IconLegendLoad([NotNull] object sender, [NotNull] EventArgs e) { string[] themeImageTags = { "TOPIC_NEW", "TOPIC", "TOPIC_HOT_NEW", "TOPIC_HOT", "TOPIC_NEW_LOCKED", "TOPIC_LOCKED", "TOPIC_ANNOUNCEMENT_NEW", "TOPIC_ANNOUNCEMENT", "TOPIC_STICKY_NEW", "TOPIC_STICKY", "TOPIC_POLL_NEW", "TOPIC_POLL", "TOPIC_MOVED" }; string[] localizedTags = { "NEW_POSTS", "NO_NEW_POSTS", "HOT_NEW_POSTS", "HOT_NO_NEW_POSTS", "NEW_POSTS_LOCKED", "NO_NEW_POSTS_LOCKED", "ANNOUNCEMENT_NEW", "ANNOUNCEMENT", "STICKY_NEW", "STICKY", "POLL_NEW", "POLL", "MOVED" }; HtmlGenericControl tr = null; // add a table control var table = new HtmlGenericControl("div"); table.Attributes.Add(HtmlTextWriterAttribute.Class.ToString(), "container"); this.Controls.Add(table); for (var i = 0; i < themeImageTags.Length; i++) { if (i % 2 == 0 || tr == null) { // add <tr> tr = new HtmlGenericControl("div"); tr.Attributes.Add(HtmlTextWriterAttribute.Class.ToString(), "row"); table.Controls.Add(tr); } // add this to the tr... var td = new HtmlGenericControl("div"); td.Attributes.Add(HtmlTextWriterAttribute.Class.ToString(), "col"); tr.Controls.Add(td); // add the themed icons var themeImage = new ThemeImage { ThemeTag = themeImageTags[i] }; td.Controls.Add(themeImage); // space var space = new Literal { Text = " " }; td.Controls.Add(space); // localized text describing the image var localLabel = new LocalizedLabel { LocalizedTag = localizedTags[i] }; td.Controls.Add(localLabel); } }
/// <summary> /// The icon legend_ load. /// </summary> /// <param name="sender"> /// The sender. /// </param> /// <param name="e"> /// The e. /// </param> private void IconLegend_Load([NotNull] object sender, [NotNull] EventArgs e) { string[] themeImageTags = { "TOPIC_NEW", "TOPIC", "TOPIC_HOT_NEW", "TOPIC_HOT", "TOPIC_NEW_LOCKED", "TOPIC_LOCKED", "TOPIC_ANNOUNCEMENT_NEW", "TOPIC_ANNOUNCEMENT", "TOPIC_STICKY_NEW", "TOPIC_STICKY", "TOPIC_POLL_NEW", "TOPIC_POLL", "TOPIC_MOVED" }; string[] localizedTags = { "NEW_POSTS", "NO_NEW_POSTS", "HOT_NEW_POSTS", "HOT_NO_NEW_POSTS", "NEW_POSTS_LOCKED", "NO_NEW_POSTS_LOCKED", "ANNOUNCEMENT_NEW", "ANNOUNCEMENT", "STICKY_NEW", "STICKY", "POLL_NEW", "POLL", "MOVED" }; HtmlTableRow tr = null; // add a table control var table = new HtmlTable(); table.Attributes.Add("class", "iconlegend"); Controls.Add(table); for (int i = 0; i < themeImageTags.Length; i++) { if ((i % 2) == 0 || tr == null) { // add <tr> tr = new HtmlTableRow(); table.Controls.Add(tr); } // add this to the tr... HtmlTableCell td = new HtmlTableCell(); tr.Controls.Add(td); // add the themed icons var themeImage = new ThemeImage { ThemeTag = themeImageTags[i] }; td.Controls.Add(themeImage); // space var space = new Literal { Text = " " }; td.Controls.Add(space); // localized text describing the image var localLabel = new LocalizedLabel { LocalizedTag = localizedTags[i] }; td.Controls.Add(localLabel); } }
protected void ForumList1_ItemCreated(object sender, RepeaterItemEventArgs e) { if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem) { DataRow row = ( DataRow )e.Item.DataItem; ForumFlags flags = new ForumFlags(row["Flags"]); DateTime lastRead = Mession.GetForumRead(( int )row ["ForumID"]); DateTime lastPosted = row ["LastPosted"] != DBNull.Value ? ( DateTime )row ["LastPosted"] : lastRead; ThemeImage forumIcon = e.Item.FindControl("ThemeForumIcon") as ThemeImage; forumIcon.ThemeTag = "FORUM"; forumIcon.LocalizedTitlePage = "ICONLEGEND"; forumIcon.LocalizedTitleTag = "NO_NEW_POSTS"; try { if (flags.IsLocked) { forumIcon.ThemeTag = "FORUM_LOCKED"; forumIcon.LocalizedTitlePage = "ICONLEGEND"; forumIcon.LocalizedTitleTag = "FORUM_LOCKED"; } else if (lastPosted > lastRead) { forumIcon.ThemeTag = "FORUM_NEW"; forumIcon.LocalizedTitlePage = "ICONLEGEND"; forumIcon.LocalizedTitleTag = "NEW_POSTS"; } else { forumIcon.ThemeTag = "FORUM"; forumIcon.LocalizedTitlePage = "ICONLEGEND"; forumIcon.LocalizedTitleTag = "NO_NEW_POSTS"; } } catch { } if (!PageContext.BoardSettings.ShowModeratorList) { // hide moderator list... HtmlTableCell moderatorColumn = e.Item.FindControl("ModeratorListTD") as HtmlTableCell; ForumModeratorList modList = e.Item.FindControl("ModeratorList") as ForumModeratorList; // set them as invisible... moderatorColumn.Visible = false; modList.Visible = false; } } }