/// <summary> /// Creates the status message text for a topic. (i.e. Moved, Poll, Sticky, etc.) /// </summary> /// <param name="row">Current Topic Data Row</param> /// <returns>Topic status text</returns> protected string GetPriorityMessage(DataRowView row) { string strReturn = ""; if (row["TopicMovedID"].ToString().Length > 0) { strReturn = ForumPage.GetText("MOVED"); } else if (row["PollID"].ToString() != "") { strReturn = ForumPage.GetText("POLL"); } else { switch (int.Parse(row["Priority"].ToString())) { case 1: strReturn = ForumPage.GetText("STICKY"); break; case 2: strReturn = ForumPage.GetText("ANNOUNCEMENT"); break; } } if (strReturn.Length > 0) { strReturn = String.Format("[ {0} ] ", strReturn); } return(strReturn); }
/// <summary> /// Formats the Last Post for the Topic Line /// </summary> /// <returns>Formatted Last Post Text</returns> protected string FormatLastPost() { string strReturn = ForumPage.GetText("no_posts"); DataRowView row = m_row; if (row["LastMessageID"].ToString().Length > 0) { string strMiniPost = ForumPage.GetThemeContents("ICONS", (DateTime.Parse(row["LastPosted"].ToString()) > Mession.LastVisit) ? "ICON_NEWEST" : "ICON_LATEST"); string strBy = String.Format(ForumPage.GetText("by"), String.Format("<a href=\"{0}\">{1}</a> <a title=\"{4}\" href=\"{3}\"><img border=0 src='{2}'></a>", OrionGlobals.resolveBase(string.Format("userinfo.aspx?id={0}", row["LastUserID"])), BBCode.EncodeHTML(row["LastUserName"].ToString()), strMiniPost, Forum.GetLink(Pages.posts, "m={0}#{0}", row["LastMessageID"]), ForumPage.GetText("GO_LAST_POST") )); strReturn = String.Format("{0}<br />{1}", ForumPage.FormatDateTimeTopic(Convert.ToDateTime(row["LastPosted"])), strBy); } return(strReturn); }
protected override void Render(System.Web.UI.HtmlTextWriter writer) { System.Text.StringBuilder html = new System.Text.StringBuilder(2000); html.Append("<table width='100%' cellspacing=0 cellpadding=0>"); if (ForumPage.BoardSettings.AllowPrivateMessages) { html.AppendFormat("<tr class='header2'><td>{0}</td></tr>", ForumPage.GetText("MESSENGER")); html.AppendFormat("<tr><td>"); html.AppendFormat("<li><a href='{0}'>{1}</a></li>", Forum.GetLink(Pages.cp_inbox), ForumPage.GetText("INBOX")); html.AppendFormat("<li><a href='{0}'>{1}</a></li>", Forum.GetLink(Pages.cp_inbox, "sent=1"), ForumPage.GetText("SENTITEMS")); html.AppendFormat("<li><a href='{0}'>{1}</a></li>", Forum.GetLink(Pages.pmessage), ForumPage.GetText("NEW_MESSAGE")); html.AppendFormat("</td></tr>"); html.AppendFormat("<tr><td> </td></tr>"); } html.AppendFormat("<tr class='header2'><td>{0}</td></tr>", ForumPage.GetText("PERSONAL_PROFILE")); html.AppendFormat("<tr><td>"); html.AppendFormat("<li><a href='{0}'>{1}</a></li>", OrionGlobals.resolveBase("profile.aspx"), ForumPage.GetText("EDIT_PROFILE")); if (ForumPage.BoardSettings.AllowSignatures) { html.AppendFormat("<li><a href='{0}'>{1}</a></li>", Forum.GetLink(Pages.cp_signature), ForumPage.GetText("SIGNATURE")); } html.AppendFormat("<li><a href='{0}'>{1}</a></li>", Forum.GetLink(Pages.cp_subscriptions), ForumPage.GetText("SUBSCRIPTIONS")); html.AppendFormat("</td></tr>"); html.Append("</table>"); writer.Write(html.ToString()); }
protected string GetForumIcon(object o) { DataRow row = (DataRow)o; bool locked = ((int)row["Flags"] & (int)ForumFlags.Locked) == (int)ForumFlags.Locked; DateTime lastRead = ForumPage.GetForumRead((int)row["ForumID"]); DateTime lastPosted = row["LastPosted"] != DBNull.Value ? (DateTime)row["LastPosted"] : lastRead; string img, imgTitle; try { if (locked) { img = ForumPage.GetThemeContents("ICONS", "FORUM_LOCKED"); imgTitle = ForumPage.GetText("ICONLEGEND", "Forum_Locked"); } else if (lastPosted > lastRead) { img = ForumPage.GetThemeContents("ICONS", "FORUM_NEW"); imgTitle = ForumPage.GetText("ICONLEGEND", "New_Posts"); } else { img = ForumPage.GetThemeContents("ICONS", "FORUM"); imgTitle = ForumPage.GetText("ICONLEGEND", "No_New_Posts"); } } catch (Exception) { img = ForumPage.GetThemeContents("ICONS", "FORUM"); imgTitle = ForumPage.GetText("ICONLEGEND", "No_New_Posts"); } return(String.Format("<img src=\"{0}\" title=\"{1}\"/>", img, imgTitle)); }
private void DisplayPost_PreRender(object sender, EventArgs e) { Attach.Visible = CanAttach; Attach.Text = ForumPage.GetThemeContents("BUTTONS", "ATTACHMENTS"); Attach.ToolTip = "Attachments"; Attach.NavigateUrl = Forum.GetLink(Pages.attachments, "m={0}", DataRow["MessageID"]); Edit.Visible = CanEditPost; Edit.Text = ForumPage.GetThemeContents("BUTTONS", "EDITPOST"); Edit.ToolTip = "Edit this post"; Edit.NavigateUrl = Forum.GetLink(Pages.postmessage, "m={0}", DataRow["MessageID"]); Delete.Visible = CanDeletePost; Delete.Text = ForumPage.GetThemeContents("BUTTONS", "DELETEPOST"); Delete.ToolTip = "Delete this post"; Delete.Attributes["onclick"] = string.Format("return confirm('{0}')", ForumPage.GetText("confirm_deletemessage")); Quote.Visible = CanReply; Quote.Text = ForumPage.GetThemeContents("BUTTONS", "QUOTEPOST"); Quote.ToolTip = "Reply with quote"; Quote.NavigateUrl = Forum.GetLink(Pages.postmessage, "t={0}&f={1}&q={2}", ForumPage.PageTopicID, ForumPage.PageForumID, DataRow["MessageID"]); // private messages Pm.Visible = ForumPage.User.IsAuthenticated && ForumPage.BoardSettings.AllowPrivateMessages; Pm.Text = ForumPage.GetThemeContents("BUTTONS", "PM"); Pm.NavigateUrl = Forum.GetLink(Pages.pmessage, "u={0}", DataRow["UserID"]); // emailing Email.Visible = ForumPage.User.IsAuthenticated && ForumPage.BoardSettings.AllowEmailSending; Email.NavigateUrl = Forum.GetLink(Pages.im_email, "u={0}", DataRow["UserID"]); Email.Text = ForumPage.GetThemeContents("BUTTONS", "EMAIL"); Home.Visible = DataRow["HomePage"] != DBNull.Value && DataRow["HomePage"].ToString() != string.Empty; Home.NavigateUrl = DataRow["HomePage"].ToString(); Home.Text = ForumPage.GetThemeContents("BUTTONS", "WWW"); Msn.Visible = ForumPage.User.IsAuthenticated && DataRow["MSN"] != DBNull.Value; Msn.Text = ForumPage.GetThemeContents("BUTTONS", "MSN"); Msn.NavigateUrl = Forum.GetLink(Pages.im_email, "u={0}", DataRow["UserID"]); Aim.Visible = ForumPage.User.IsAuthenticated && DataRow["AIM"] != DBNull.Value; Aim.Text = ForumPage.GetThemeContents("BUTTONS", "AIM"); Aim.NavigateUrl = Forum.GetLink(Pages.im_aim, "u={0}", DataRow["UserID"]); Icq.Visible = ForumPage.User.IsAuthenticated && DataRow["ICQ"] != DBNull.Value; Icq.Text = ForumPage.GetThemeContents("BUTTONS", "ICQ"); Icq.NavigateUrl = Forum.GetLink(Pages.im_icq, "u={0}", DataRow["UserID"]); // display admin only info if (ForumPage.IsAdmin) { AdminInfo.InnerHtml = "<span class='smallfont'>"; if (Convert.ToDateTime(DataRow["Edited"]) != Convert.ToDateTime(DataRow["Posted"])) { // message has been edited AdminInfo.InnerHtml += String.Format("<b>Edited:</b> {0}", ForumPage.FormatDateTimeShort(Convert.ToDateTime(DataRow["Edited"]))); } AdminInfo.InnerHtml += String.Format(" <b>IP:</b> {0}", DataRow["IP"].ToString()); AdminInfo.InnerHtml += "</span>"; } }
protected string GetViewing(object o) { DataRow row = (DataRow)o; int nViewing = (int)row["Viewing"]; if (nViewing > 0) { return(" " + String.Format(ForumPage.GetText("VIEWING"), nViewing)); } else { return(""); } }
protected override void Render(System.Web.UI.HtmlTextWriter writer) { writer.WriteLine(ForumPage.GetText(ForumPage.ForumPostAccess ? "can_post" : "cannot_post")); writer.WriteLine("<br/>"); writer.WriteLine(ForumPage.GetText(ForumPage.ForumReplyAccess ? "can_reply" : "cannot_reply")); writer.WriteLine("<br/>"); writer.WriteLine(ForumPage.GetText(ForumPage.ForumDeleteAccess ? "can_delete" : "cannot_delete")); writer.WriteLine("<br/>"); writer.WriteLine(ForumPage.GetText(ForumPage.ForumEditAccess ? "can_edit" : "cannot_edit")); writer.WriteLine("<br/>"); writer.WriteLine(ForumPage.GetText(ForumPage.ForumPollAccess ? "can_poll" : "cannot_poll")); writer.WriteLine("<br/>"); writer.WriteLine(ForumPage.GetText(ForumPage.ForumVoteAccess ? "can_vote" : "cannot_vote")); writer.WriteLine("<br/>"); }
private void Page_Load(object sender, System.EventArgs e) { BoardSettings bs = ForumPage.BoardSettings; pagesize = bs.SmiliesColumns * bs.SmiliesPerRow; perrow = bs.SmiliesPerRow; // setup the header AddSmiley.Attributes.Add("colspan", perrow.ToString()); AddSmiley.InnerHtml = ForumPage.GetText("SMILIES_HEADER"); dtSmileys = DB.smiley_listunique(base.ForumPage.PageBoardID); pager.PageSize = pagesize; CreateSmileys(); }
/// <summary> /// Creates the text for the "Last Post" information on a forum listing. /// Detects user permissions and disables links if they have none. /// </summary> /// <param name="row">Current data row</param> /// <returns>Formatted "Last Post" text</returns> protected string FormatLastPost(System.Data.DataRow row) { if (row["RemoteURL"] != DBNull.Value) { return("-"); } int ForumID = Convert.ToInt32(row["ForumID"]); // defaults to "no posts" text string strTemp = ForumPage.GetText("NO_POSTS"); if (!row.IsNull("LastPosted")) { strTemp = ForumPage.GetThemeContents("ICONS", (DateTime.Parse(Convert.ToString(row["LastPosted"])) > Mession.LastVisit) ? "ICON_NEWEST" : "ICON_LATEST"); if (int.Parse(row["ReadAccess"].ToString()) > 0) { strTemp = String.Format("{0}<br/>{1}<br/>{2} <a title=\"{4}\" href=\"{5}\"><img src=\"{3}\"></a>", ForumPage.FormatDateTimeTopic((DateTime)row["LastPosted"]), String.Format(ForumPage.GetText("in"), String.Format("<a href=\"{0}\">{1}</a>", Forum.GetLink(Pages.posts, "t={0}", row["LastTopicID"]), Truncate(Utils.BadWordReplace(row["LastTopicName"].ToString()), 50))), String.Format(ForumPage.GetText("by"), String.Format("<a href=\"{0}\">{1}</a>", OrionGlobals.resolveBase(string.Format("userinfo.aspx?id={0}", row["LastUserID"])), BBCode.EncodeHTML(row["LastUser"].ToString()))), strTemp, ForumPage.GetText("GO_LAST_POST"), Forum.GetLink(Pages.posts, "m={0}#{0}", row["LastMessageID"]) ); } else { // no access to this forum... disable links strTemp = String.Format("{0}<br/>{1}<br/>{2}", ForumPage.FormatDateTimeTopic((DateTime)row["LastPosted"]), String.Format(ForumPage.GetText("in"), String.Format("{0}", Truncate(row["LastTopicName"].ToString(), 50))), String.Format(ForumPage.GetText("by"), String.Format("<a href=\"{0}\">{1}</a>", OrionGlobals.resolveBase(string.Format("userinfo.aspx?id={0}", row["LastUserID"])), row["LastUser"])) ); } } return(strTemp); }
/// <summary> /// Provides the "Forum Link Text" for the ForumList control. /// Automatically disables the link if the current user doesn't /// have proper permissions. /// </summary> /// <param name="row">Current data row</param> /// <returns>Forum link text</returns> public string GetForumLink(System.Data.DataRow row) { string strReturn = ""; int ForumID = Convert.ToInt32(row["ForumID"]); // get the Forum Description strReturn = Convert.ToString(row["Forum"]); if (int.Parse(row["ReadAccess"].ToString()) > 0) { strReturn = String.Format("<a href=\"{0}\">{1}</a>", Forum.GetLink(yaf.Pages.topics, "f={0}", ForumID), strReturn ); } else { // no access to this forum strReturn = String.Format("{0} {1}", strReturn, ForumPage.GetText("NO_FORUM_ACCESS")); } return(strReturn); }
protected override void Render(System.Web.UI.HtmlTextWriter writer) { DataTable dt = (DataTable)ViewState["data"]; bool bTopic = ForumPage.PageTopicID > 0; try { if (dt == null) { if (bTopic) { dt = DB.active_listtopic(ForumPage.PageTopicID); } else { dt = DB.active_listforum(ForumPage.PageForumID); } ViewState["data"] = dt; } if (bTopic) { writer.WriteLine("<tr class=\"header2\">"); writer.WriteLine(String.Format("<td colspan=\"3\">{0}</td>", ForumPage.GetText("TOPICBROWSERS"))); writer.WriteLine("</tr>"); writer.WriteLine("<tr class=\"post\">"); writer.WriteLine("<td colspan=\"3\">"); } else { writer.WriteLine("<tr class=\"header2\">"); writer.WriteLine(String.Format("<td colspan=\"6\">{0}</td>", ForumPage.GetText("FORUMUSERS"))); writer.WriteLine("</tr>"); writer.WriteLine("<tr class=\"post\">"); writer.WriteLine("<td colspan=\"6\">"); } bool bFirst = true; foreach (DataRow dr in dt.Rows) { if (!bFirst) { writer.WriteLine(","); } else { bFirst = false; } writer.Write(String.Format("<a href=\"{0}\">{1}</a>", OrionGlobals.resolveBase(string.Format("userinfo.aspx?id={0}", dr["UserID"])), BBCode.EncodeHTML(dr["UserName"].ToString()))); } writer.WriteLine("</td>"); writer.WriteLine("</tr>"); } finally { if (dt != null) { dt.Dispose(); } } }
protected string GetTopicImage(object o, ref string imgTitle) { DataRowView row = (DataRowView)o; DateTime lastPosted = row["LastPosted"] != DBNull.Value ? (DateTime)row["LastPosted"] : new DateTime(2000, 1, 1); bool isLocked = ((int)row["TopicFlags"] & (int)TopicFlags.Locked) == (int)TopicFlags.Locked; imgTitle = "???"; try { bool bIsLocked = isLocked || ((int)row["ForumFlags"] & (int)ForumFlags.Locked) == (int)ForumFlags.Locked; if (row["TopicMovedID"].ToString().Length > 0) { imgTitle = ForumPage.GetText("MOVED"); return(ForumPage.GetThemeContents("ICONS", "TOPIC_MOVED")); } DateTime lastRead = ForumPage.GetTopicRead((int)row["TopicID"]); DateTime lastReadForum = ForumPage.GetForumRead((int)row["ForumID"]); if (lastReadForum > lastRead) { lastRead = lastReadForum; } if (lastPosted > lastRead) { Mession.UnreadTopics++; if (row["PollID"] != DBNull.Value) { imgTitle = ForumPage.GetText("POLL_NEW"); return(ForumPage.GetThemeContents("ICONS", "TOPIC_POLL_NEW")); } else if (row["Priority"].ToString() == "1") { imgTitle = ForumPage.GetText("STICKY"); return(ForumPage.GetThemeContents("ICONS", "TOPIC_STICKY")); } else if (row["Priority"].ToString() == "2") { imgTitle = ForumPage.GetText("ANNOUNCEMENT"); return(ForumPage.GetThemeContents("ICONS", "TOPIC_ANNOUNCEMENT_NEW")); } else if (bIsLocked) { imgTitle = ForumPage.GetText("NEW_POSTS_LOCKED"); return(ForumPage.GetThemeContents("ICONS", "TOPIC_NEW_LOCKED")); } else { imgTitle = ForumPage.GetText("NEW_POSTS"); return(ForumPage.GetThemeContents("ICONS", "TOPIC_NEW")); } } else { if (row["PollID"] != DBNull.Value) { imgTitle = ForumPage.GetText("POLL"); return(ForumPage.GetThemeContents("ICONS", "TOPIC_POLL")); } else if (row["Priority"].ToString() == "1") { imgTitle = ForumPage.GetText("STICKY"); return(ForumPage.GetThemeContents("ICONS", "TOPIC_STICKY")); } else if (row["Priority"].ToString() == "2") { imgTitle = ForumPage.GetText("ANNOUNCEMENT"); return(ForumPage.GetThemeContents("ICONS", "TOPIC_ANNOUNCEMENT")); } else if (bIsLocked) { imgTitle = ForumPage.GetText("NO_NEW_POSTS_LOCKED"); return(ForumPage.GetThemeContents("ICONS", "TOPIC_LOCKED")); } else { imgTitle = ForumPage.GetText("NO_NEW_POSTS"); return(ForumPage.GetThemeContents("ICONS", "TOPIC")); } } } catch (Exception) { return(ForumPage.GetThemeContents("ICONS", "TOPIC")); } }
protected override void Render(System.Web.UI.HtmlTextWriter writer) { System.Text.StringBuilder html = new System.Text.StringBuilder(2000); html.AppendFormat("<tr class=\"{0}\">", (IsAlt ? "post_alt" : "post")); // Icon string imgTitle = "", img = GetTopicImage(m_row, ref imgTitle); html.AppendFormat("<td><img title='{1}' src='{0}'></td>", img, imgTitle); // Topic html.AppendFormat("<td><span class='post_priority'>{0}</span>", GetPriorityMessage(m_row)); if (FindUnread) { html.AppendFormat("<a href='{0}' class='post_link'>{1}</a>", Forum.GetLink(Pages.posts, "t={0}&find=unread", m_row["LinkTopicID"]), Utils.BadWordReplace(Convert.ToString(m_row["Subject"]))); } else { html.AppendFormat("<a href='{0}' class='post_link'>{1}</a>", Forum.GetLink(Pages.posts, "t={0}", m_row["LinkTopicID"]), Utils.BadWordReplace(Convert.ToString(m_row["Subject"]))); } string tPager = CreatePostPager(Convert.ToInt32(m_row["Replies"]) + 1, ForumPage.BoardSettings.PostsPerPage, Convert.ToInt32(m_row["LinkTopicID"])); if (tPager != String.Empty) { // more then one page to show html.AppendFormat("<br/><span class='smallfont'>{0}</span>", String.Format(ForumPage.GetText("GOTO_POST_PAGER"), tPager)); } //html.AppendFormat("<br/><span class='smallfont'>{0}: {1}</span>",ForumPage.GetText("TOPICS","CREATED"),ForumPage.FormatDateShort(m_row["Posted"])); html.Append("</td>"); // Topic Starter html.AppendFormat("<td><a href='{0}'>{1}</a></td>", OrionGlobals.resolveBase(string.Format("userinfo.aspx?id={0}", m_row["UserID"])), BBCode.EncodeHTML(m_row["Starter"].ToString())); // Replies html.AppendFormat("<td align=center>{0}</td>", FormatReplies()); // Views html.AppendFormat("<td align=center>{0:N0}</td>", m_row["Views"]); // Last Post html.AppendFormat("<td align=center class=smallfont>{0}</td>", FormatLastPost()); writer.Write(html.ToString()); base.RenderChildren(writer); writer.Write("</tr>"); }
protected override void Render(System.Web.UI.HtmlTextWriter writer) { System.Text.StringBuilder html = new System.Text.StringBuilder(2000); html.Append("<table cellspacing=1 cellpadding=1><tr>"); html.AppendFormat("<td><img align=absMiddle src='{0}'/> {1}</td>", ForumPage.GetThemeContents("ICONS", "TOPIC_NEW"), ForumPage.GetText("NEW_POSTS")); html.AppendFormat("<td><img align=absMiddle src='{0}'/> {1}</td>", ForumPage.GetThemeContents("ICONS", "TOPIC"), ForumPage.GetText("NO_NEW_POSTS")); html.Append("</tr><tr>"); html.AppendFormat("<td><img align=absMiddle src='{0}'/> {1}</td>", ForumPage.GetThemeContents("ICONS", "TOPIC_NEW_LOCKED"), ForumPage.GetText("NEW_POSTS_LOCKED")); html.AppendFormat("<td><img align=absMiddle src='{0}'/> {1}</td>", ForumPage.GetThemeContents("ICONS", "TOPIC_LOCKED"), ForumPage.GetText("NO_NEW_POSTS_LOCKED")); html.Append("</tr><tr>"); html.AppendFormat("<td><img align=absMiddle src='{0}'/> {1}</td>", ForumPage.GetThemeContents("ICONS", "TOPIC_ANNOUNCEMENT"), ForumPage.GetText("ANNOUNCEMENT")); html.AppendFormat("<td><img align=absMiddle src='{0}'/> {1}</td>", ForumPage.GetThemeContents("ICONS", "TOPIC_STICKY"), ForumPage.GetText("STICKY")); html.Append("</tr><tr>"); html.AppendFormat("<td><img align=absMiddle src='{0}'/> {1}</td>", ForumPage.GetThemeContents("ICONS", "TOPIC_MOVED"), ForumPage.GetText("MOVED")); html.AppendFormat("<td><img align=absMiddle src='{0}'/> {1}</td>", ForumPage.GetThemeContents("ICONS", "TOPIC_POLL"), ForumPage.GetText("POLL")); html.Append("</tr></table>"); writer.Write(html.ToString()); }
protected string FormatBody() { DataRowView row = DataRow; string html2 = FormatMsg.FormatMessage(ForumPage, row["Message"].ToString(), new MessageFlags(Convert.ToInt32(row["Flags"]))); // define valid image extensions string[] aImageExtensions = { "jpg", "gif", "png" }; if (long.Parse(row["HasAttachments"].ToString()) > 0) { string stats = ForumPage.GetText("ATTACHMENTINFO"); string strFileIcon = ForumPage.GetThemeContents("ICONS", "ATTACHED_FILE"); html2 += "<p>"; using (DataTable dt = DB.attachment_list(row["MessageID"], null, null)) { // show file then image attachments... int tmpDisplaySort = 0; while (tmpDisplaySort <= 1) { bool bFirstItem = true; foreach (DataRow dr in dt.Rows) { string strFilename = Convert.ToString(dr["FileName"]).ToLower(); bool bShowImage = false; // verify it's not too large to display (might want to make this a board setting) if (Convert.ToInt32(dr["Bytes"]) <= 262144) { // is it an image file? for (int i = 0; i < aImageExtensions.Length; i++) { if (strFilename.EndsWith(aImageExtensions[i])) { bShowImage = true; break; } } } if (bShowImage && tmpDisplaySort == 1) { if (bFirstItem) { html2 += "<i class=\"smallfont\">"; html2 += String.Format(ForumPage.GetText("IMAGE_ATTACHMENT_TEXT"), Convert.ToString(row["UserName"])); html2 += "</i><br/>"; bFirstItem = false; } html2 += String.Format("<img src=\"{0}image.aspx?a={1}\" alt=\"{2}\"><br/>", Data.ForumRoot, dr["AttachmentID"], Server.HtmlEncode(Convert.ToString(dr["FileName"]))); } else if (!bShowImage && tmpDisplaySort == 0) { if (bFirstItem) { html2 += String.Format("<b class=\"smallfont\">{0}</b><br/>", ForumPage.GetText("ATTACHMENTS")); bFirstItem = false; } // regular file attachment int kb = (1023 + (int)dr["Bytes"]) / 1024; html2 += String.Format("<img border='0' src='{0}'> <b><a href=\"{1}image.aspx?a={2}\">{3}</a></b> <span class='smallfont'>{4}</span><br/>", strFileIcon, Data.ForumRoot, dr["AttachmentID"], dr["FileName"], String.Format(stats, kb, dr["Downloads"])); } } // now show images tmpDisplaySort++; html2 += "<br/>"; } } } if (row["Signature"] != DBNull.Value && row["Signature"].ToString().ToLower() != "<p> </p>" && ForumPage.BoardSettings.AllowSignatures) { // don't allow any HTML on signatures MessageFlags tFlags = new MessageFlags(); tFlags.IsHTML = false; html2 += "<br/><hr noshade/>" + FormatMsg.FormatMessage(ForumPage, row["Signature"].ToString(), tFlags); } return(html2); }
protected string FormatUserBox() { System.Data.DataRowView row = DataRow; string html = ""; // Avatar if (ForumPage.BoardSettings.AvatarUpload && row["HasAvatarImage"] != null && long.Parse(row["HasAvatarImage"].ToString()) > 0) { html += String.Format("<img src='{1}image.aspx?u={0}'><br clear=\"all\"/>", row["UserID"], Data.ForumRoot); } else if (row["user_avatar"].ToString().Length > 0) { string s = row["user_avatar"].ToString(); if (s == null || s == string.Empty) { s = User.DefaultAvatar; } html += String.Format("<img src='{0}' width='50px' height='50px'><br clear=\"all\"/>", s ); } // Rank Image if (row["RankImage"].ToString().Length > 0) { html += String.Format("<img align=left src=\"{0}images/ranks/{1}\"/><br clear=\"all\"/>", Data.ForumRoot, row["RankImage"]); } // Rank html += String.Format("{0}: {1}<br clear=\"all\"/>", ForumPage.GetText("rank"), row["RankName"]); // Groups if (ForumPage.BoardSettings.ShowGroups) { using (DataTable dt = DB.usergroup_list(row["UserID"])) { html += String.Format("{0}: ", ForumPage.GetText("groups")); bool bFirst = true; foreach (DataRow grp in dt.Rows) { if (bFirst) { html += grp["Name"].ToString(); bFirst = false; } else { html += String.Format(", {0}", grp["Name"]); } } html += "<br/>"; } } // Extra row html += "<br/>"; // Joined html += String.Format("{0}: {1}<br/>", ForumPage.GetText("joined"), ForumPage.FormatDateShort((DateTime)row["user_registDate"])); // Posts html += String.Format("{0}: {1:N0}<br/>", ForumPage.GetText("posts"), row["Posts"]); // Location if (row["Location"].ToString().Length > 0) { html += String.Format("{0}: {1}<br/>", ForumPage.GetText("location"), FormatMsg.RepairHtml(ForumPage, row["Location"].ToString(), false)); } return(html); }