threadmode1.jsp
来自「Jive是基于JSP/JAVA技术构架的一个大型BBS论坛系统,这是Jive论坛」· JSP 代码 · 共 785 行 · 第 1/3 页
JSP
785 行
face="<%= JiveGlobals.getJiveProperty("skin.default.fontFace") %>"> <a href="watches.jsp?forum=<%= forumID %>&thread=<%= threadID %>&remove=true" ><%= SkinUtils.getLocalizedString("skin.default.thread.stop_watch",locale) %></a> </font> </td> <td><img src="images/blank.gif" width="10" height="1" border="0"></td> <% if (watchManager.isWatchedThread(pageUser, thread, WatchManager.EMAIL_NOTIFY_WATCH)) { %> <td><img src="images/remove_email_watch.gif" width="16" height="12" border="0" vspace="1"></td> <td> <%-- Remove Email Notification --%> <font size="<%= JiveGlobals.getJiveProperty("skin.default.fontSize") %>" face="<%= JiveGlobals.getJiveProperty("skin.default.fontFace") %>"> <a href="watches.jsp?forum=<%= forumID %>&thread=<%= threadID %>&remove=true&type=<%= WatchManager.EMAIL_NOTIFY_WATCH %>" ><%= SkinUtils.getLocalizedString("skin.default.watches.remove_email",locale) %></a> </font> </td> <% } else { if (!isLocked && !isArchived) { %> <td><img src="images/add_email_watch.gif" width="16" height="12" border="0" vspace="1"></td> <td> <%-- Add Email Notification --%> <font size="<%= JiveGlobals.getJiveProperty("skin.default.fontSize") %>" face="<%= JiveGlobals.getJiveProperty("skin.default.fontFace") %>"> <a href="watches.jsp?forum=<%= forumID %>&thread=<%= threadID %>&add=true&type=<%= WatchManager.EMAIL_NOTIFY_WATCH %>" ><%= SkinUtils.getLocalizedString("skin.default.watches.add_email",locale) %></a> </font> </td> <% } } %> </tr> </table> </td> </tr> </table> </td></tr> </table><br><% } %><% if (isLocked) { %> <table bgcolor="<%= JiveGlobals.getJiveProperty("skin.default.tableBorderColor") %>" cellpadding="1" cellspacing="0" border="0" width="400"> <tr><td> <table bgcolor="<%= JiveGlobals.getJiveProperty("skin.default.tableBorderColor") %>" cellpadding="3" cellspacing="0" border="0" width="100%"> <tr bgcolor="<%= JiveGlobals.getJiveProperty("skin.default.prefsHeaderBgColor") %>"> <td valign="top" width="1%" nowrap><img src="images/lock.gif" width="9" height="12" border="0" vspace="3" hspace="3"></td> <td width="99%"> <font size="<%= JiveGlobals.getJiveProperty("skin.default.fontSize") %>" face="<%= JiveGlobals.getJiveProperty("skin.default.fontFace") %>"> <%-- Topic Locked --%> <b><%= SkinUtils.getLocalizedString("skin.default.thread.topic_locked",locale) %></b> <br> <%-- Topic locked description --%> <%= SkinUtils.getLocalizedString("skin.default.thread.topic_locked_description",locale) %> <% if (isModerator) { %> <br> <%-- Moderator: --%> <b><%= SkinUtils.getLocalizedString("skin.default.global.moderator",locale) %><%= SkinUtils.getLocalizedString("skin.default.global.colon",locale) %></b> <%-- Unlock this topic --%> <a href="thread.jsp?forum=<%= forumID %>&thread=<%= threadID %>&unlock=true&tstart=<%= threadStart %>&trange=<%= threadRange %>" ><%= SkinUtils.getLocalizedString("skin.default.thread.unlock_this_topic",locale) %></a> <% } %> </font> </td> </tr> </table></td></tr> </table><br><% } else if (isArchived) { %> <table bgcolor="<%= JiveGlobals.getJiveProperty("skin.default.tableBorderColor") %>" cellpadding="1" cellspacing="0" border="0"> <tr><td> <table bgcolor="<%= JiveGlobals.getJiveProperty("skin.default.tableBorderColor") %>" cellpadding="3" cellspacing="0" border="0" width="100%"> <tr bgcolor="<%= JiveGlobals.getJiveProperty("skin.default.prefsHeaderBgColor") %>"> <td valign="top"><img src="images/archived.gif" width="11" height="14" border="0" vspace="2"></td> <td> <font size="<%= JiveGlobals.getJiveProperty("skin.default.fontSize") %>" face="<%= JiveGlobals.getJiveProperty("skin.default.fontFace") %>"> <%-- Topic Archived --%> <b><%= SkinUtils.getLocalizedString("skin.default.thread.topic_archived",locale) %></b> <br> <%-- Topic archived description --%> <%= SkinUtils.getLocalizedString("skin.default.thread.topic_archived_description",locale) %> <% if (isModerator) { %> <br> <%-- Moderator: --%> <b><%= SkinUtils.getLocalizedString("skin.default.global.moderator",locale) %><%= SkinUtils.getLocalizedString("skin.default.global.colon",locale) %></b> <%-- Unarchive this topic --%> <a href="thread.jsp?forum=<%= forumID %>&thread=<%= threadID %>&unarchive=true&tstart=<%= threadStart %>&trange=<%= threadRange %>" ><%= SkinUtils.getLocalizedString("skin.default.thread.unarchive_this_topic",locale) %></a> <% } %> </font> </td> </tr></table></td></tr></table><br><% } %><table cellpadding="0" cellspacing="2" border="0"><tr> <% if (!isLocked && !isArchived) { %> <td><a href="post.jsp?forum=<%= forumID %>&thread=<%= threadID %>&reply=true"><img src="images/reply.gif" width="17" height="17" title="<%= SkinUtils.getLocalizedString("skin.default.thread.click_reply",locale) %>" border="0"></a></td> <td nowrap><font size="<%= JiveGlobals.getJiveProperty("skin.default.buttonFontSize") %>" face="<%= JiveGlobals.getJiveProperty("skin.default.buttonFontFace") %>"> <a href="post.jsp?forum=<%= forumID %>&thread=<%= threadID %>&reply=true" title="<%= SkinUtils.getLocalizedString("skin.default.thread.click_reply",locale) %>"><%= SkinUtils.getLocalizedString("skin.default.thread.reply_topic",locale) %></a> </font> </td> <td><img src="images/blank.gif" width="10" height="1" border="0"></td> <% } %> <td><a href="post.jsp?forum=<%= forumID %>"><img src="images/post.gif" width="17" height="17" title="<%= SkinUtils.getLocalizedString("skin.default.thread.click_start_watch",locale) %>" border="0"></a></td> <td nowrap><font size="<%= JiveGlobals.getJiveProperty("skin.default.buttonFontSize") %>" face="<%= JiveGlobals.getJiveProperty("skin.default.buttonFontFace") %>"> <a href="post.jsp?forum=<%= forumID %>" title="<%= SkinUtils.getLocalizedString("skin.default.thread.click_start_watch",locale) %>"><%= SkinUtils.getLocalizedString("skin.default.global.post_new_topic",locale) %></a> </font> </td> <td><img src="images/blank.gif" width="10" height="1" border="0"></td> <% if ("true".equals(JiveGlobals.getJiveProperty("search.enabled"))) { %> <td><a href="search.jsp?forums=<%= forumID %>"><img src="images/search.gif" width="17" height="17" title="<%= SkinUtils.getLocalizedString("skin.default.thread.click_search",locale) %>" border="0"></a></td> <td nowrap><font size="<%= JiveGlobals.getJiveProperty("skin.default.buttonFontSize") %>" face="<%= JiveGlobals.getJiveProperty("skin.default.buttonFontFace") %>"> <a href="search.jsp?forums=<%= forumID %>" title="<%= SkinUtils.getLocalizedString("skin.default.thread.click_search",locale) %>"><%= SkinUtils.getLocalizedString("skin.default.global.search_forum",locale) %></a> </font> </td> <td><img src="images/blank.gif" width="10" height="1" border="0"></td> <% } %> <% if (!isGuest) { boolean showWatchLink = false; if (isWatchedThread) { showWatchLink = true; } else { if (!isArchived && !isLocked) { showWatchLink = true; } } if (showWatchLink) { if (!isWatchedThread) { %> <td><a href="watches.jsp?forum=<%= forumID %>&thread=<%= threadID %>&add=true"><img src="images/watch.gif" width="17" height="17" title="<%= SkinUtils.getLocalizedString("skin.default.thread.click_start_watch",locale) %>" border="0"></a></td> <td nowrap><font size="<%= JiveGlobals.getJiveProperty("skin.default.buttonFontSize") %>" face="<%= JiveGlobals.getJiveProperty("skin.default.buttonFontFace") %>"> <a href="watches.jsp?forum=<%= forumID %>&thread=<%= threadID %>&add=true" title="<%= SkinUtils.getLocalizedString("skin.default.thread.click_start_watch",locale) %>"><%= SkinUtils.getLocalizedString("skin.default.global.watch_topic",locale) %></a> </font> </td> <% } } } %></tr></table><table cellpadding="0" cellspacing="2" border="0" width="100%" align="center"><tr><td colspan="3"><img src="images/blank.gif" width="1" height="5" border="0"></td></tr><tr> <td width="1%" nowrap><% if (nav && prevThread != null) { String subj = prevThread.getRootMessage().getSubject(); // Replace any " in the subject subj = StringUtils.replace(subj, "\"", """);%> <a href="thread.jsp?forum=<%= forumID %>&thread=<%= prevThread.getID() %>&tstart=<%= prevStart %>&trange=<%= range %>" title="<%= subj %>" ><img src="images/prev.gif" width="10" height="10" hspace="2" title="<%= SkinUtils.getLocalizedString("skin.default.global.topic",locale) %><%= SkinUtils.getLocalizedString("skin.default.global.colon",locale) %> <%= subj %>" border="0"></a> <font size="<%= JiveGlobals.getJiveProperty("skin.default.buttonFontSize") %>" face="<%= JiveGlobals.getJiveProperty("skin.default.buttonFontFace") %>"> <a href="thread.jsp?forum=<%= forumID %>&thread=<%= prevThread.getID() %>&tstart=<%= prevStart %>&trange=<%= range %>" title="<%= SkinUtils.getLocalizedString("skin.default.global.topic",locale) %><%= SkinUtils.getLocalizedString("skin.default.global.colon",locale) %> <%= subj %>" ><%= SkinUtils.getLocalizedString("skin.default.thread.previous_topic",locale) %></a> </font><% } else { %> <% } %> </td> <td width="98%" align="center"> <table cellpadding="0" cellspacing="2" border="0"><tr> <td><a href="forum.jsp?forum=<%= forumID %>"><img src="images/back_to.gif" width="12" height="12" title="<%= SkinUtils.getLocalizedString("skin.default.global.go_back_to_topic_list",locale) %>" border="0"></a></td> <td nowrap> <font size="<%= JiveGlobals.getJiveProperty("skin.default.buttonFontSize") %>" face="<%= JiveGlobals.getJiveProperty("skin.default.buttonFontFace") %>"> <a href="forum.jsp?forum=<%= forumID %>" title="<%= SkinUtils.getLocalizedString("skin.default.global.go_back_to_topic_list",locale) %>" ><%= SkinUtils.getLocalizedString("skin.default.thread.back_to_topic",locale) %></a> </font> </td></tr></table> </td> <td width="1%" nowrap><% if (nav && nextThread != null) { String subj = nextThread.getRootMessage().getSubject();%> <font size="<%= JiveGlobals.getJiveProperty("skin.default.buttonFontSize") %>" face="<%= JiveGlobals.getJiveProperty("skin.default.buttonFontFace") %>"> <a href="thread.jsp?forum=<%= forumID %>&thread=<%= nextThread.getID() %>&tstart=<%= nextStart %>&trange=<%= range %>" title="<%= SkinUtils.getLocalizedString("skin.default.global.topic",locale) %><%= SkinUtils.getLocalizedString("skin.default.global.colon",locale) %> <%= subj %>" ><%= SkinUtils.getLocalizedString("skin.default.thread.next_topic",locale) %></a> </font> <a href="thread.jsp?forum=<%= forumID %>&thread=<%= nextThread.getID() %>&tstart=<%= nextStart %>&trange=<%= range %>" title="<%= subj %>" ><img src="images/next.gif" width="10" height="10" hspace="2" title="<%= SkinUtils.getLocalizedString("skin.default.global.topic",locale) %><%= SkinUtils.getLocalizedString("skin.default.global.colon",locale) %> <%= subj %>" border="0"></a><% } else { %> <% } %> </td></tr></table><% // There are messages, so iterate and print them out String bgcolor = ""; int row = 1; boolean rootDisplayed = false; int lastMessageDepth = 0; while (messages.hasNext() || !rootDisplayed) { ForumMessage message = null; if (!rootDisplayed) { message = rootMessage; rootDisplayed = true; } else { message = (ForumMessage)messages.next(); } // Get the tree depth for this message. This tells us how far to indent // it. int messageDepth = treeWalker.getMessageDepth(message); // Message moderation: // For each of the message, get its moderation value. If it's less // than the minimum moderation value for the thread, don't display it. int messageMinModValue = message.getModerationValue(); // Only display this message if this message's moderation value meets // or exceeds the minimum moderation value. if (messageMinModValue >= minModValue) { if (messageDepth <= lastMessageDepth+1) { lastMessageDepth = messageDepth; boolean isRootMessage = (message.getID() == rootMessage.getID()); User author = message.getUser(); if (row++%2 == 1) { bgcolor = JiveGlobals.getJiveProperty("skin.default.tableRowColor1"); } else { bgcolor = JiveGlobals.getJiveProperty("skin.default.tableRowColor2"); } // Check to see if there is an extended property for name & email // since the gateway feature imports names and emails as extended // props. String nameAndEmail = null; if (author == null) { String name = message.getProperty("name"); String email = message.getProperty("email"); nameAndEmail = getNameAndEmailDisplay(name, email); } String body = message.getBody(); if (hilite) { String[] queryWords = StringUtils.toLowerCaseWordArray(searchWords); body = StringUtils.highlightWords(body, queryWords, "<font style='background-color:#ffff00'><b>", "</b></font>");
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?