listtopic.jsp
上传用户:jhtang88
上传日期:2014-01-27
资源大小:28528k
文件大小:42k
源码类别:

Jsp/Servlet

开发平台:

Java

  1. <%@ page contentType="text/html;charset=utf-8"%>
  2. <%@ page import="com.redmoon.forum.err.*"%>
  3. <%@ page import="com.redmoon.forum.person.*"%>
  4. <%@ page import="com.redmoon.forum.ui.*"%>
  5. <%@ page import="org.jdom.*"%>
  6. <%@ page import="java.util.*"%>
  7. <%@ page import="org.jdom.output.*"%>
  8. <%@ page import="org.jdom.input.*"%>
  9. <%@ page import="com.redmoon.forum.*"%>
  10. <%@ page import="com.redmoon.forum.ui.*"%>
  11. <%@ page import="cn.js.fan.db.*"%>
  12. <%@ page import="cn.js.fan.util.*"%>
  13. <%@ page import="cn.js.fan.web.*"%>
  14. <%@ page import="com.redmoon.forum.plugin.*"%>
  15. <%@ page import="com.redmoon.forum.plugin.base.*"%>
  16. <%@ page import="cn.js.fan.security.*"%>
  17. <%@ page import="cn.js.fan.module.pvg.*" %>
  18. <%@ taglib uri="/WEB-INF/tlds/LabelTag.tld" prefix="lt" %>
  19. <%@ taglib uri="/WEB-INF/tlds/AdTag.tld" prefix="ad" %>
  20. <jsp:useBean id="StrUtil" scope="page" class="cn.js.fan.util.StrUtil"/>
  21. <jsp:useBean id="privilege" scope="page" class="com.redmoon.forum.Privilege"/>
  22. <%
  23. long pageBeginTime =  System.currentTimeMillis();
  24. String boardcode = ParamUtil.get(request, "boardcode");
  25. if (boardcode.equals("")) {
  26. out.print(StrUtil.Alert_Back(cn.js.fan.web.SkinUtil.LoadString(request, "res.label.forum.listtopic", "need_board")));
  27. return;
  28. }
  29. Leaf curleaf = new Leaf();
  30. curleaf = curleaf.getLeaf(boardcode);
  31. if (curleaf==null || !curleaf.isLoaded()) {
  32. out.print(StrUtil.makeErrMsg(cn.js.fan.web.SkinUtil.LoadString(request, "res.label.forum.listtopic", "no_board")));
  33. return;
  34. }
  35. if (!privilege.canUserDo(request, boardcode, "enter_board")) {
  36. response.sendRedirect("../info.jsp?info= " + StrUtil.UrlEncode(SkinUtil.LoadString(request, "pvg_invalid")));
  37. return;
  38. }
  39. try {
  40. privilege.checkCanEnterBoard(request, boardcode);
  41. }
  42. catch (ErrMsgException e) {
  43. response.sendRedirect("../info.jsp?info=" + StrUtil.UrlEncode(e.getMessage()));
  44. // e.printStackTrace();
  45. return;
  46. }
  47. String boardname = curleaf.getName();
  48. String strThreadType = ParamUtil.get(request, "threadType");
  49. int threadType = ThreadTypeDb.THREAD_TYPE_NONE;
  50. if (StrUtil.isNumeric(strThreadType)) {
  51. threadType = Integer.parseInt(strThreadType);
  52. }
  53. UserSession.setBoardCode(request, boardcode);
  54. // 取得皮肤路径
  55. String skincode = curleaf.getSkin();
  56. if (skincode.equals("") || skincode.equals(UserSet.defaultSkin)) {
  57. skincode = UserSet.getSkin(request);
  58. if (skincode==null || skincode.equals(""))
  59. skincode = UserSet.defaultSkin;
  60. }
  61. SkinMgr skm = new SkinMgr();
  62. Skin skin = skm.getSkin(skincode);
  63. String skinPath = skin.getPath();
  64. String op = StrUtil.getNullString(request.getParameter("op"));
  65. //seo
  66. com.redmoon.forum.util.SeoConfig scfg = new com.redmoon.forum.util.SeoConfig();
  67. String seoTitle = scfg.getProperty("seotitle");
  68. String seoKeywords = scfg.getProperty("seokeywords");
  69. String seoDescription = scfg.getProperty("seodescription");
  70. String seoHead = scfg.getProperty("seohead");
  71. %>
  72. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
  73. <HTML><HEAD><TITLE><%=boardname%> - <%=Global.AppName%> <%=seoTitle%></TITLE>
  74. <%=seoHead%>
  75. <META http-equiv=Content-Type content="text/html; charset=utf-8">
  76. <META name="keywords" content="<%=seoKeywords%>">
  77. <META name="description" content="<%=seoDescription%>">
  78. <style>
  79. <!--
  80. #navDiv {
  81.       float:left;
  82.       width:100%;
  83.       line-height:normal;
  84.       }
  85. #navDiv td {
  86.       float:left;
  87.       background:url("images/tag_l.gif") no-repeat left top;
  88.       margin:0;
  89.       padding:0 0 0 5px;
  90.       text-decoration:none;
  91.   height:100%;
  92. }
  93. #navDiv span {
  94.       float:left;
  95.       display:block;
  96.       background:url("images/tag_r.gif") no-repeat right top;
  97.       padding:5px 5px 5px 0px;
  98.       color:#FFF;
  99.   height:100%;
  100.   text-align: center;
  101.   vertical-align: middle;
  102. }
  103. #navDiv span {float:none;}
  104. #navDiv a {
  105. color:#FFF;
  106. }
  107. #navDiv .td_hover {
  108.       background-position:0% -42px;
  109. }
  110. #navDiv .td_hover span {
  111.       background-position:100% -42px;
  112. }
  113. #navDiv .header {
  114.       background-position:0% -42px;
  115.   
  116. }
  117. #navDiv .header span {
  118.       background-position:100% -42px;
  119. }
  120. -->
  121. </style>
  122. <LINK href="<%=skinPath%>/skin.css" type=text/css rel=stylesheet>
  123. <SCRIPT>
  124. function openWin(url,width,height)
  125. {
  126.   var newwin = window.open(url,"_blank","toolbar=no,location=no,directories=no,status=no,menubar=no,top=50,left=120,width="+width+",height="+height);
  127. }
  128. function loadonline(boardcode){
  129. var targetImg = eval("document.all.followImg000");
  130. var targetDiv = eval("document.all.followDIV000");
  131. if (targetImg.src.indexOf("nofollow")!=-1){return false;}
  132. if ("object"==typeof(targetImg)){
  133. if (targetDiv.style.display!='block')
  134. {
  135. targetDiv.style.display="block";
  136. targetImg.src="images/minus.gif";
  137. advance.innerText="<lt:Label res="res.label.forum.listtopic" key="close_online"/>";
  138. if (targetImg.loaded=="no")
  139. document.frames["hiddenframe"].location.replace("online.jsp?boardcode="+boardcode);
  140. }
  141. else
  142. {
  143. targetDiv.style.display="none";
  144. targetImg.src="images/plus.gif";
  145. advance.innerText="<lt:Label res="res.label.forum.listtopic" key="show_online"/>"
  146. }
  147. }
  148. }
  149. // 展开帖子
  150. function loadThreadFollow(b_id,t_id,getstr){
  151. var targetImg2 =eval("document.all.followImg" + t_id);
  152. var targetTR2 =eval("document.all.follow" + t_id);
  153. if (targetImg2.src.indexOf("nofollow")!=-1){return false;}
  154. if ("object"==typeof(targetImg2)){
  155. if (targetTR2.style.display!="")
  156. {
  157. targetTR2.style.display="";
  158. targetImg2.src="<%=skinPath%>/images/minus.gif";
  159. if (targetImg2.loaded=="no"){
  160. document.frames["hiddenframe"].location.replace("listtree.jsp?id="+b_id+getstr);
  161. }
  162. }else{
  163. targetTR2.style.display="none";
  164. targetImg2.src="<%=skinPath%>/images/plus.gif";
  165. }
  166. }
  167. }
  168. </SCRIPT>
  169. <META content="MSHTML 6.00.2600.0" name=GENERATOR></HEAD>
  170. <BODY leftmargin="0" topMargin=0>
  171. <!--<%=skinPath%><%=skincode%>-->
  172. <%@ include file="inc/header.jsp"%>
  173. <%@ include file="inc/position.jsp"%>
  174. <%@ include file="../inc/inc.jsp"%>
  175. <jsp:useBean id="Topic" scope="page" class="com.redmoon.forum.MsgMgr" />
  176. <jsp:useBean id="userservice" scope="page" class="com.redmoon.forum.person.userservice" />
  177. <ad:AdTag type="<%=AdDb.TYPE_TEXT%>" boardCode="<%=boardcode%>"></ad:AdTag>
  178. <%
  179. String querystring = StrUtil.getNullString(request.getQueryString());
  180. String privurl=request.getRequestURL()+"?"+StrUtil.UrlEncode(querystring,"utf-8");
  181. // 登记访客
  182. try {
  183. privilege.enrolGuest(request,response);
  184. }
  185. catch (UserArrestedException e) {
  186. response.sendRedirect("info.jsp?info=" + StrUtil.UrlEncode(e.getMessage()));
  187. return;
  188. }
  189. // 刷新在位时间
  190. userservice.refreshStayTime(request,response);
  191. String timelimit = request.getParameter("timelimit");
  192. if (timelimit==null)
  193. timelimit = "all";
  194. String brule = StrUtil.getNullString(curleaf.getBoardRule());
  195. if (!brule.equals("")) {%>
  196. <TABLE height=25 cellPadding=3 width="98%" cellSpacing="1" align=center class="tableborder1">
  197.   <TBODY>
  198.     <TR>
  199.       <TD class="tablebody1"><lt:Label res="res.label.forum.listtopic" key="rule"/>
  200.   <%=brule%>
  201.   </TD>
  202.     </TR>
  203.   </TBODY>
  204. </TABLE>
  205. <table width="100%" border="0" align="center" cellpadding="0" cellspacing="0">
  206. <tr><td height="5"></td></tr>
  207. </table>
  208. <%}%>
  209. <%
  210. PluginMgr pm = new PluginMgr();
  211. Vector vplugin = pm.getAllPluginUnitOfBoard(boardcode);
  212. if (vplugin.size()>0) {
  213. Iterator irplugin = vplugin.iterator();
  214. while (irplugin.hasNext()) {
  215. PluginUnit pu = (PluginUnit)irplugin.next();
  216. IPluginUI ipu = pu.getUI(request, response, out);
  217. IPluginViewListThread pv = ipu.getViewListThread(boardcode);
  218. String rule = pv.render(UIListThread.POS_RULE);
  219. if (!rule.equals("") && pv.IsPluginBoard()) {
  220. %>
  221. <TABLE height=25 cellSpacing=1 cellPadding=3 width="98%" align=center class="tableborder1">
  222.   <TBODY>
  223.     <TR>
  224.       <TD class="tablebody1">
  225. <!--plugin rule--><%out.print(pu.getName(request) + ":&nbsp;" + rule + "<BR>");%>
  226.   </TD>
  227.     </TR>
  228.   </TBODY>
  229. </TABLE>
  230. <table width="100%" border="0" align="center" cellpadding="0" cellspacing="0">
  231. <tr><td height="5"></td></tr>
  232. </table>
  233. <% }
  234. }
  235. }%>
  236. <%
  237. com.redmoon.forum.person.UserMgr um = new com.redmoon.forum.person.UserMgr();
  238. if (curleaf.getChildCount()>0) {
  239. if (curleaf.getDisplayStyle()==Leaf.DISPLAY_STYLE_VERTICAL) {
  240. %>
  241.   <br>
  242.   <table bordercolor="<%=skin.getTableBorderClr()%>" cellspacing=0 cellpadding=0 width="98%" align=center border=1 class="table_normal">
  243.     <tbody>
  244.       <tr align="left">
  245.         <td height="26" colspan="4" nowrap background="<%=skinPath%>/images/bg1.gif"><span class="text_title">&nbsp; <%=boardname%> </span></td>
  246.       </tr>
  247.       <%
  248. PluginMgr pmnote = new PluginMgr();
  249.    MsgDb md = new MsgDb();
  250. LeafChildrenCacheMgr lccm = new LeafChildrenCacheMgr(boardcode);
  251. java.util.Vector v3 = lccm.getChildren();
  252. Iterator ir3 = v3.iterator();
  253. while (ir3.hasNext()) {
  254. Leaf lf = (Leaf) ir3.next();
  255. md = md.getMsgDb(lf.getAddId());
  256. %>
  257.       <tr>
  258.         <td width="49" align="center"><%if (lf.isLocked()) {%>
  259.           <img alt="<lt:Label res="res.label.forum.index" key="board_lock"/>" src="<%=skinPath%>/images/board_lock.gif">
  260.           <%}else{%>
  261.           <%if (lf.getTodayCount()>0) {%>
  262.           <img alt="<lt:Label res="res.label.forum.index" key="board_new"/>" src="<%=skinPath%>/images/board_new.gif">
  263.           <%}else{%>
  264.           <img alt="<lt:Label res="res.label.forum.index" key="board_nonew"/>" src="<%=skinPath%>/images/board_nonew.gif">
  265.           <%}%>
  266.         <%}%></td>
  267.         <td><table width="100%" height="65" border="0" cellpadding="0" cellspacing="0" >
  268.             <tr>
  269.               <td width="47%" height="23">『 <a href="<%=ForumPage.getListTopicPage(request, lf.getCode())%>"><%=lf.getName()%></a> 』
  270.                   <%
  271. Vector vplugin1 = pmnote.getAllPluginUnitOfBoard(lf.getCode());
  272. if (vplugin1.size()>0) {
  273. out.print("<font color=#aaaaaa>");
  274. Iterator irpluginnote = vplugin1.iterator();
  275. while (irpluginnote.hasNext()) {
  276. PluginUnit pu = (PluginUnit)irpluginnote.next();
  277. out.print(pu.getName(request) + "&nbsp;");
  278. }
  279. out.print("</font>");
  280. }
  281. %>
  282.               </td>
  283.               <td width="23%" rowspan="2" align="right" valign="middle"><%
  284.   String logo = StrUtil.getNullString(lf.getLogo());
  285.   if (!logo.equals("")) {
  286.   %>
  287.                   <img src="images/board_logo/<%=logo%>" align="absmiddle">&nbsp;&nbsp;
  288.                   <%}%>
  289.               </td>
  290.               <td width="30%" rowspan="2"><table width="100%" border="0" cellpadding="0" >
  291.                 <tr>
  292.                   <td><lt:Label res="res.label.forum.listtopic" key="topic"/><a href="<%=ForumPage.getShowTopicPage(request, md.getRootid())%>"><%=md.getMsgDb(md.getRootid()).getTitle()%></a></td>
  293.                 </tr>
  294.                 <tr>
  295.                   <td><lt:Label res="res.label.forum.listtopic" key="post"/>
  296.                     <%if (md.isLoaded()) {%>
  297.                       <a href="../userinfo.jsp?username=<%=StrUtil.UrlEncode(md.getName())%>"><%=um.getUser(md.getName()).getNick()%></a>
  298.                       <%}%>
  299.                   </td>
  300.                 </tr>
  301.                 <tr>
  302.                   <td><lt:Label res="res.label.forum.listtopic" key="date"/><%=DateUtil.format(md.getAddDate(), "yy-MM-dd HH:mm")%>&nbsp;<img src="images/lastpost.gif" width="11" height="10"></td>
  303.                 </tr>
  304.               </table></td>
  305.             </tr>
  306.             <tr>
  307.               <td><img src="images/readme.gif" width="10" height="10">&nbsp;<%=lf.getDescription()%> </td>
  308.             </tr>
  309.             <tr>
  310.               <td height="23" colspan="2" bgcolor="#EEEEEE">&nbsp;<lt:Label res="res.label.forum.listtopic" key="manager"/>
  311.                   <%
  312.   MsgMgr mm = new MsgMgr();
  313.   Vector managers = mm.getBoardManagers(lf.getCode());
  314.   Iterator irmgr = managers.iterator();
  315.   while (irmgr.hasNext()) {
  316.    UserDb user = (UserDb) irmgr.next();
  317.   %>
  318.                   <a href="../userinfo.jsp?username=<%=StrUtil.UrlEncode(user.getName())%>"><%=user.getName()%></a>&nbsp;
  319.                   <%}%>
  320.               </td>
  321.               <td height="23" valign="center" bgcolor="#EEEEEE">&nbsp;<img alt="<lt:Label res="res.label.forum.listtopic" key="today_post"/>" src="images/Forum_today.gif" width="25" height="10" align="absmiddle">&nbsp;&nbsp;<%=lf.getTodayCount()%>&nbsp;&nbsp;<img alt="<lt:Label res="res.label.forum.listtopic" key="topic_count"/>" src="images/Forum_topic.gif" width="25" height="10" align="absmiddle">&nbsp;&nbsp;<%=lf.getTopicCount()%>&nbsp;&nbsp;<img src="images/Forum_post.gif" alt="<lt:Label res="res.label.forum.listtopic" key="post_count"/>" width="25" height="10" align="absmiddle">&nbsp;<%=lf.getPostCount()%></td>
  322.             </tr>
  323.         </table></td>
  324.       </tr>
  325.       <%}%>
  326.     </tbody>
  327. </table>
  328.   <br>
  329. <%}else{%>
  330.   <br>
  331.   <table bordercolor="<%=skin.getTableBorderClr()%>" cellspacing=0 cellpadding=0 width="98%" align=center border=1 class="table_normal">
  332.     <tbody>
  333.       <%
  334. PluginMgr pmnote = new PluginMgr();
  335.    MsgDb md = new MsgDb();
  336. LeafChildrenCacheMgr lccm = new LeafChildrenCacheMgr(boardcode);
  337. java.util.Vector v3 = lccm.getChildren();
  338. Iterator ir3 = v3.iterator();
  339. int colCount = 4;
  340. int curCol = 0;
  341. while (ir3.hasNext()) {
  342. Leaf lf = (Leaf) ir3.next();
  343. md = md.getMsgDb(lf.getAddId());
  344. if (curCol==0)
  345. out.print("<tr>");
  346. %>
  347.         <td><table width="100%" height="65" border="0" cellpadding="0" cellspacing="0" >
  348.             <tr>
  349.               <td width="47%" height="22" align="center">『 <a href="<%=ForumPage.getListTopicPage(request, lf.getCode())%>"><%=lf.getName()%></a> 』
  350. <%
  351. Vector vplugin1 = pmnote.getAllPluginUnitOfBoard(lf.getCode());
  352. if (vplugin1.size()>0) {
  353. out.print("<font color=#aaaaaa>");
  354. Iterator irpluginnote = vplugin1.iterator();
  355. while (irpluginnote.hasNext()) {
  356. PluginUnit pu = (PluginUnit)irpluginnote.next();
  357. out.print(pu.getName(request) + "&nbsp;");
  358. }
  359. out.print("</font>");
  360. }
  361. %>              </td>
  362.             </tr>
  363.             <tr>
  364.               <td align="center" style="padding:5px">
  365.       <%
  366.   String logo = StrUtil.getNullString(lf.getLogo());
  367.   if (!logo.equals("")) {
  368.   %>
  369.                 <img src="images/board_logo/<%=logo%>" align="absmiddle" alt="<%=lf.getDescription()%>">&nbsp;&nbsp;
  370.               <%}%></td>
  371.             </tr>
  372.             <tr>
  373.               <td height="23" align="center" bgcolor="#EEEEEE">              &nbsp;<img alt="<lt:Label res="res.label.forum.listtopic" key="today_post"/>" src="images/Forum_today.gif" width="25" height="10" align="absmiddle">&nbsp;&nbsp;<%=lf.getTodayCount()%>&nbsp;&nbsp;<img alt="<lt:Label res="res.label.forum.listtopic" key="topic_count"/>" src="images/Forum_topic.gif" width="25" height="10" align="absmiddle">&nbsp;&nbsp;<%=lf.getTopicCount()%>&nbsp;&nbsp;<img src="images/Forum_post.gif" alt="<lt:Label res="res.label.forum.listtopic" key="post_count"/>" width="25" height="10" align="absmiddle">&nbsp;<%=lf.getPostCount()%></td>
  374.             </tr>
  375.         </table></td>
  376.       <%
  377.    curCol++;
  378.    if (curCol==colCount) {
  379.     out.print("</tr>");
  380. curCol = 0;
  381. }
  382.   }
  383.   int tds = colCount - curCol;
  384.   if (curCol!=0 && tds!=0) {
  385.    for (int k=0; k<tds; k++) {
  386. out.print("<td>&nbsp;</td>");
  387. }
  388. out.print("</tr>");
  389.   }
  390.   %>
  391.     </tbody>
  392. </table>
  393.   <br>
  394. <%}
  395. }%>
  396.   <TABLE cellSpacing=0 cellPadding=2 width="98%" align=center border=0>
  397.     <TBODY>
  398.       <TR> 
  399.         <TD width="50%"><%
  400. String addpage = "addtopic_new.jsp";
  401. if (curleaf.getWebeditAllowType()==Leaf.WEBEDIT_ALLOW_TYPE_REDMOON_FIRST)
  402. addpage = "addtopic_we.jsp";
  403. %>
  404. <A href="<%=addpage%>?boardcode=<%=boardcode%>&threadType=<%=threadType%>&privurl=<%=privurl%>"> 
  405.           <IMG src="<%=skinPath%>/images/post_<%=SkinUtil.getLocale(request)%>.gif" border=0 width=99 height=25 alt="<lt:Label res="res.label.forum.listtopic" key="post_btn"/>"></A>
  406.   <A href="<%=addpage%>?isvote=1&boardcode=<%=boardcode%>&threadType=<%=threadType%>&privurl=<%=privurl%>"> 
  407.           <IMG src="<%=skinPath%>/images/votenew_<%=SkinUtil.getLocale(request)%>.gif" border=0 width=99 height=25 alt="<lt:Label res="res.label.forum.listtopic" key="vote_btn"/>"></A>
  408. <%
  409. if (vplugin.size()>0) {
  410. Iterator irplugin = vplugin.iterator();
  411. while (irplugin.hasNext()) {
  412. PluginUnit pu = (PluginUnit)irplugin.next();
  413. IPluginUI ipu = pu.getUI(request, response, out);
  414. IPluginViewListThread pv = ipu.getViewListThread(boardcode);
  415. if (pv.IsPluginBoard() && pu.getType().equals(pu.TYPE_TOPIC) && !pu.getButton().equals("")) {%>
  416. <a href="<%=addpage%>?pluginCode=<%=pu.getCode()%>&boardcode=<%=StrUtil.UrlEncode(boardcode)%>&threadType=<%=threadType%>&privurl=<%=privurl%>"><img src="<%=skinPath + "/" + pu.getButton()%>_<%=SkinUtil.getLocale(request)%>.gif" border="0"></a>
  417. <%}
  418. }
  419. }
  420. %>
  421. <%
  422. Vector vplugin2 = curleaf.getAllPlugin2();
  423. Iterator irplugin2 = vplugin2.iterator();
  424. while (irplugin2.hasNext()) {
  425. com.redmoon.forum.plugin2.Plugin2Unit p2u = (com.redmoon.forum.plugin2.Plugin2Unit)irplugin2.next();
  426. %>
  427. <a href="<%=addpage%>?plugin2Code=<%=p2u.getCode()%>&boardcode=<%=StrUtil.UrlEncode(boardcode)%>&threadType=<%=threadType%>&privurl=<%=privurl%>"><img src="<%=skinPath + "/images/" + p2u.getButton()%>_<%=SkinUtil.getLocale(request)%>.gif" border="0"></a>
  428. <%}%>     </TD>
  429.         <TD align="right">
  430. <%
  431. int msgcount = 0;
  432. if (privilege.isUserLogin(request)) {
  433. %>
  434. <jsp:useBean id="Msg" scope="page" class="com.redmoon.forum.message.MessageMgr"/>
  435. <%
  436. msgcount = Msg.getNewMsgCount(request);
  437. %>
  438. <%if (msgcount>0) {%>
  439. <script language=javascript>
  440. openWin("../message/message.jsp",320,260);
  441. </script>
  442. <%
  443. }
  444. }
  445. %>
  446. <%if (msgcount>0) {%>
  447. <a href="javascript:openWin('../message/message.jsp',320,260)"><font color="#CC0000"><img src="images/brow/17.gif" border="0" align="absmiddle">&nbsp; <%=msgcount%>
  448. <lt:Label res="res.label.forum.listtopic" key="new_short_msg"/>
  449. </font></a>
  450. <%}%>&nbsp;<a href="<%=ForumPage.getListTopicPage(request, boardcode, 1)%>" title="<lt:Label res="res.label.forum.showtopic" key="tree_view"/>"><img border=0 src="images/treeview.gif"></a>&nbsp;<a href="listtopic.jsp?op=showelite&boardcode=<%=boardcode%>">
  451. <lt:Label res="res.label.forum.listtopic" key="elite"/>
  452. </a>
  453.           <SELECT onChange="if(this.options[this.selectedIndex].value!=''){location=this.options[this.selectedIndex].value;}" 
  454.       name=select2>
  455.   <OPTION selected><lt:Label res="res.label.forum.listtopic" key="manager"/></OPTION>
  456.   <OPTION>-------</OPTION>
  457.   <%
  458.   String username = privilege.getUser(request);
  459.   // 置用户所在版块
  460.   if (username!=null && !username.equals("")) {
  461.    OnlineUserDb ou = new OnlineUserDb();
  462. ou = ou.getOnlineUserDb(username);
  463. ou.setUserInBoard(boardcode);
  464.   }
  465.   
  466.   MsgMgr mm = new MsgMgr();
  467.   Vector managers = mm.getBoardManagers(boardcode);
  468.   Iterator irmgr = managers.iterator();
  469.   boolean isUserBoardManager = false;
  470.   while (irmgr.hasNext()) {
  471.    UserDb user = (UserDb) irmgr.next();
  472. if (user.getName().equals(username))
  473. isUserBoardManager = true;
  474.   %>
  475.   <OPTION value="../userinfo.jsp?username=<%=StrUtil.UrlEncode(user.getName())%>"><%=user.getNick()%></OPTION>
  476.   <%}%>
  477.   </SELECT>&nbsp; <SELECT onChange="if(this.options[this.selectedIndex].value!=''){location=this.options[this.selectedIndex].value+'&op=<%=op%>';}" 
  478.       name=seltimelimit>
  479. <OPTION value="listtopic.jsp?boardcode=<%=boardcode%>&timelimit=all" selected><lt:Label res="res.label.forum.listtopic" key="topic_all"/></OPTION>
  480. <OPTION value="listtopic.jsp?boardcode=<%=boardcode%>&timelimit=1"><lt:Label res="res.label.forum.listtopic" key="topic_one_day"/></OPTION>
  481. <OPTION value="listtopic.jsp?boardcode=<%=boardcode%>&timelimit=2"><lt:Label res="res.label.forum.listtopic" key="topic_two_day"/></OPTION>
  482. <OPTION value="listtopic.jsp?boardcode=<%=boardcode%>&timelimit=7"><lt:Label res="res.label.forum.listtopic" key="topic_week"/></OPTION>
  483. <OPTION value="listtopic.jsp?boardcode=<%=boardcode%>&timelimit=15"><lt:Label res="res.label.forum.listtopic" key="topic_half_month"/></OPTION>
  484. <OPTION value="listtopic.jsp?boardcode=<%=boardcode%>&timelimit=30"><lt:Label res="res.label.forum.listtopic" key="topic_one_month"/></OPTION>
  485. <OPTION value="listtopic.jsp?boardcode=<%=boardcode%>&timelimit=60"><lt:Label res="res.label.forum.listtopic" key="topic_two_month"/></OPTION>
  486. <OPTION value="listtopic.jsp?boardcode=<%=boardcode%>&timelimit=180"><lt:Label res="res.label.forum.listtopic" key="topic_half_year"/></OPTION>
  487. </SELECT>
  488. <script language=javascript>
  489. </script>
  490. <script language=javascript><!--
  491. seltimelimit.value = "listtopic.jsp?boardcode=<%=boardcode%>&timelimit=<%=timelimit%>"
  492. //-->
  493. </script>
  494. &nbsp;
  495. <A href="javascript:this.location.reload()" title="<lt:Label res="res.label.forum.listtopic" key="refresh"/>"><IMG src="images/refresh.gif" border=0></A>
  496.   &nbsp;<a href="rss.jsp?boardCode=<%=StrUtil.UrlEncode(boardcode)%>"><img src="../images/rss.gif" alt="rss<lt:Label res="res.label.forum.listtopic" key="subscription"/>" width="36" height="14" border="0" align="absmiddle"></a></TD>
  497.       </TR>
  498.     </TBODY>
  499. </TABLE>
  500. <table align="center" width="98%"><tr><td height="2px"></td></tr></table>
  501. <%
  502. ThreadTypeDb ttd = new ThreadTypeDb();
  503. Vector ttv = ttd.getThreadTypesOfBoard(boardcode);
  504. if (ttv.size()>0) {
  505. %>
  506. <table width="98%" border="0" align="center" cellpadding="0" cellspacing="0">
  507.   <tr>
  508.     <td height="5"></td>
  509.   </tr>
  510.   <tr><td>
  511. <div id="navDiv">
  512. <table cellpadding="0" cellspacing="1">
  513.   <tr>
  514. <%
  515. Iterator ir = ttv.iterator();
  516. String className = "";
  517. while (ir.hasNext()) {
  518. ttd = (ThreadTypeDb)ir.next();
  519. if (ttd.getId()==threadType)
  520. className = "td_hover";
  521. else
  522. className = "";
  523. String ttName = ttd.getName();
  524. if (!ttd.getColor().equals(""))
  525. ttName = "<font color='" + ttd.getColor() + "'>" + ttName + "</font>";
  526. %>
  527. <td class="<%=className%>" onMouseOver="this.className='td_hover'" onMouseOut="this.className='<%=className%>'"><span><a href="<%=ForumPage.getListTopicPage(request, boardcode, 0, 1, ttd.getId())%>"><%=ttName%></a></span></td>
  528. <%}
  529. if (threadType==ThreadTypeDb.THREAD_TYPE_NONE)
  530. className = "td_hover";
  531. else
  532. className = "";
  533. %>
  534. <td class="<%=className%>" onMouseOver="this.className='td_hover'" onMouseOut="this.className='<%=className%>'"><span><a href="<%=ForumPage.getListTopicPage(request, boardcode)%>"><lt:Label res="res.label.forum.listtopic" key="topic_all"/></a></span></td>
  535. </tr></table>
  536. </div>
  537. </td></tr></table>
  538. <%}%>
  539. <%
  540. String sql = SQLBuilder.getListtopicSql(boardcode, op, timelimit, threadType);
  541. MsgDb msgdb = new MsgDb();
  542. int total = msgdb.getThreadsCount(sql, boardcode);
  543. int pagesize = 20;
  544. ForumPaginator paginator = new ForumPaginator(request, total, pagesize);
  545. int curpage = paginator.getCPage(request);
  546. int totalpages = paginator.getTotalPages();
  547. if (totalpages==0)
  548. {
  549. curpage = 1;
  550. totalpages = 1;
  551. }
  552. long start = (curpage-1)*pagesize;
  553. long end = curpage*pagesize;
  554. ThreadBlockIterator irmsg = msgdb.getThreads(sql, boardcode, start, end);
  555. %>
  556.   <TABLE borderColor=#edeced cellSpacing=0 cellPadding=1 width="98%" align=center border=1 class="list">
  557.     <TBODY>
  558.       <TR height=25> 
  559.         <TD height="26" colSpan=3 align=middle noWrap background="<%=skinPath%>/images/bg1.gif" class="text_title">
  560. <lt:Label res="res.label.forum.listtopic" key="topis_list"/></TD>
  561.         <TD width=91 height="26" align=middle noWrap background="<%=skinPath%>/images/bg1.gif" class="text_title"><lt:Label res="res.label.forum.listtopic" key="author"/></TD>
  562.         <TD width=55 height="26" align=middle noWrap background="<%=skinPath%>/images/bg1.gif" class="text_title"><lt:Label res="res.label.forum.listtopic" key="reply"/></TD>
  563.         <TD width=55 height="26" align=middle noWrap background="<%=skinPath%>/images/bg1.gif" class="text_title"><lt:Label res="res.label.forum.listtopic" key="hit"/></TD>
  564.         <TD width=80 height="26" align=middle noWrap background="<%=skinPath%>/images/bg1.gif" class="list_title_date"><lt:Label res="res.label.forum.listtopic" key="reply_date"/></TD>
  565.       </TR>
  566.     </TBODY>
  567.   </TABLE>
  568. <%
  569. String id="",topic = "",name="",lydate="",rename="",redate="";
  570. int level=0,iselite=0,islocked=0,expression=0;
  571. int i = 0,recount=0,hit=0,type=0;
  572. // 取出论坛置顶的贴子
  573. ForumDb forum = new ForumDb();
  574. long[] topmsgs = forum.getTopMsgs();
  575. int tlen = topmsgs.length;
  576. UserDb ud = null;
  577. UserDb reUserDb = null;
  578. ThreadTypeMgr ttm = new ThreadTypeMgr();
  579. while (i<tlen) {
  580.     msgdb = msgdb.getMsgDb((int)topmsgs[i]);
  581.   i++;
  582.   id = ""+msgdb.getId();
  583.   topic = StrUtil.toHtml(msgdb.getTitle());
  584.   name = msgdb.getName();
  585.   ud = um.getUser(name);
  586.   lydate = com.redmoon.forum.ForumSkin.formatDateTime(request, msgdb.getAddDate());
  587.   recount = msgdb.getRecount();
  588.   hit = msgdb.getHit();
  589.   expression = msgdb.getExpression();
  590.   type = msgdb.getType();
  591.   iselite = msgdb.getIsElite();
  592.   islocked = msgdb.getIsLocked();
  593.   level = msgdb.getLevel();
  594.   rename = StrUtil.getNullString(msgdb.getRename());
  595.   if (!rename.equals(""))
  596.   reUserDb = um.getUser(rename);
  597.   redate = com.redmoon.forum.ForumSkin.formatDateTime(request, msgdb.getRedate());
  598.   %>
  599. <table class="list" bordercolor="<%=skin.getTableBorderClr()%>" cellspacing=0 cellpadding=1 width="98%" align=center border=1>
  600.     <tbody>
  601.       <tr> 
  602.         <td noWrap align=middle width=30 bgcolor=#f8f8f8> 
  603. <%if (recount>20){ %>
  604. <img alt="<lt:Label res="res.label.forum.listtopic" key="open_topic_hot"/>" src="<%=skinPath%>/images/f_hot.gif"> 
  605. <%}
  606.    else if (recount>0) {%>
  607. <img alt="<lt:Label res="res.label.forum.listtopic" key="open_topic_reply"/>" src="<%=skinPath%>/images/f_new.gif">
  608. <%}
  609.    else {%>
  610. <img alt="<lt:Label res="res.label.forum.listtopic" key="open_topic_no_reply"/>" src="<%=skinPath%>/images/f_norm.gif">
  611. <%}%> </td>
  612.         <td class="list_td_emote" align=middle width=17 bgcolor=#ffffff> <% String urlboardname = StrUtil.UrlEncode(boardname,"utf-8"); %> <a href="<%=ForumPage.getShowTopicPage(request, msgdb.getId())%>" target=_blank> 
  613.           <% 
  614.   if (islocked==1) { %>
  615.           <IMG height=15 alt="" src="<%=skinPath%>/images/f_locked.gif" width=17 border=0> 
  616.           <% }
  617.   else {
  618.   if (type==1) { %>
  619.           <IMG height=15 alt="" src="<%=skinPath%>/images/f_poll.gif" width=17 border=0> 
  620.           <%}else { %>
  621.           <img src="images/brow/<%=expression%>.gif" border=0> 
  622.           <%}
  623.   } %>
  624.           </a></td>
  625.         <td onMouseOver="this.style.backgroundColor='#ffffff'" 
  626.     onMouseOut="this.style.backgroundColor=''" align=left bgcolor=#f8f8f8><%
  627. if (recount==0) {
  628. %>
  629.           <img id=followImg<%=id%> title="<lt:Label res="res.label.forum.listtopic" key="extend_reply"/>" src="<%=skinPath%>/images/minus.gif" loaded="no">
  630.           <% }else { %>
  631.     <img id=followImg<%=id%> title=<lt:Label res="res.label.forum.listtopic" key="extend_reply"/> style="CURSOR: hand" 
  632.       onClick="loadThreadFollow(<%=id%>,<%=id%>,'&boardcode=<%=boardcode%>')" src="<%=skinPath%>/images/plus.gif" loaded="no">
  633.     <% } %>
  634.     <strong><lt:Label res="res.label.forum.listtopic" key="top"/></strong>
  635.     <%
  636.   String attIcon = MsgUtil.getIconImg(msgdb);
  637.   if (!attIcon.equals("")) {
  638.    out.print("<img src='../images/fileicon/" + attIcon + "'>");
  639.   }
  640.   %>
  641.     <a href="<%=ForumPage.getShowTopicPage(request, msgdb.getId())%>">
  642.     <%
  643. String color = StrUtil.getNullString(msgdb.getColor());
  644. String tp = topic;
  645. if (!color.equals(""))
  646. tp = "<font color='" + color + "'>" + tp + "</font>";
  647. if (msgdb.isBold())
  648. tp = "<B>" + tp + "</B>";
  649. %>
  650.     <%=tp%> </a>
  651.     <%if (iselite==1) { %>
  652.     <IMG src="images/topicgood.gif">
  653.     <%}%>
  654.     <%
  655. //计算共有多少页回贴
  656. int allpages = Math.round((float)recount/10+0.5f);
  657. if (allpages>1)
  658. {
  659. int pg = allpages;
  660. if (allpages>10)
  661. pg = 10;
  662.   out.print("[");
  663. for (int m=1; m<=pg; m++)
  664. {%>
  665.     <a href="<%=ForumPage.getShowTopicPage(request, msgdb.getId(), m)%>"><%=m%></a>
  666.     <%}
  667. if (allpages>10) {%>
  668. ...<a href="<%=ForumPage.getShowTopicPage(request, msgdb.getId(), allpages)%>"><%=allpages%></a>
  669. <%}
  670.    out.print("]");
  671. }%></td>
  672.         <td class="list_td" align=middle width=91 bgcolor=#ffffff> <% if (privilege.getUser(request).equals(name)) { %> <IMG height=14 src="<%=skinPath%>/images/my.gif" 
  673.             width=14> <% } %> <a href="../userinfo.jsp?username=<%=StrUtil.UrlEncode(name)%>"><%=ud.getNick()%></a> </td>
  674.         <td align=middle width=55 bgcolor=#f8f8f8><%=recount%></td>
  675.         <td align=middle width=55 bgcolor=#ffffff class="list_td"><%=hit%></td>
  676.         <td align=left width=80 bgcolor=#f8f8f8 class="list_date">&nbsp;
  677.           <%if (rename.equals("")) {%>
  678.           <%=lydate%>
  679.           <%}else{%>
  680.           <%=redate%>
  681.   &nbsp;|&nbsp;
  682.           <a href="../userinfo.jsp?username=<%=StrUtil.UrlEncode(rename,"utf-8")%>" title="<lt:Label res="res.label.forum.listtopic" key="topic_date"/><%=lydate%>"><%=reUserDb.getNick()%></a>
  683.         <%}%>        </td>
  684.       </tr>
  685.       <tr id=follow<%=id%> style="DISPLAY: none"> 
  686.         <td noWrap align=middle width=30>&nbsp;</td>
  687.         <td align=middle width=17 class="list_td_emote">&nbsp;</td>
  688.         <td align=left colspan="5"> 
  689.         <div id=followDIV<%=id%> style="WIDTH: 100%" onClick=loadThreadFollow(<%=id%>,<%=id%>,"&hit=<%=hit+1%>&boardname=<%=urlboardname%>")><lt:Label res="res.label.forum.listtopic" key="wait"/></div></td>
  690.       </tr>
  691.     </tbody>
  692. </table>
  693. <%}%>
  694. <table bordercolor=<%=skin.getTableBorderClr()%> width="98%" border="1" align="center" cellpadding="1" cellspacing="0" class="list">
  695.   <tr>
  696.     <td width="30">&nbsp;</td>
  697.     <td><strong>&nbsp;<lt:Label res="res.label.forum.listtopic" key="topic"/></strong></td>
  698.   </tr>
  699. </table>
  700. <%
  701. while (irmsg.hasNext()) {
  702.   msgdb = (MsgDb) irmsg.next(); 
  703.   i++;
  704.   id = ""+msgdb.getId();
  705.   topic = StrUtil.toHtml(msgdb.getTitle());
  706.   name = msgdb.getName();
  707.   ud = um.getUser(name);
  708.   lydate = com.redmoon.forum.ForumSkin.formatDateTime(request, msgdb.getAddDate());
  709.   recount = msgdb.getRecount();
  710.   hit = msgdb.getHit();
  711.   expression = msgdb.getExpression();
  712.   type = msgdb.getType();
  713.   iselite = msgdb.getIsElite();
  714.   islocked = msgdb.getIsLocked();
  715.   level = msgdb.getLevel();
  716.   rename = msgdb.getRename();
  717.   if (!rename.equals(""))
  718.   reUserDb = um.getUser(rename);
  719.   redate = com.redmoon.forum.ForumSkin.formatDateTime(request, msgdb.getRedate());
  720. %>
  721. <table class="list" bordercolor="<%=skin.getTableBorderClr()%>" cellspacing=0 cellpadding=1 width="98%" align=center border=1>
  722.     <tbody>
  723.       <tr> 
  724.         <td noWrap align=middle width=30 bgcolor=#f8f8f8>
  725. <% if (level==MsgDb.LEVEL_TOP_BOARD) { %>
  726. <IMG alt="" src="<%=skinPath%>/images/f_top.gif" border=0> 
  727.         <% } 
  728. else {
  729. if (recount>20){ %> <img alt="<lt:Label res="res.label.forum.listtopic" key="open_topic_hot"/>" src="<%=skinPath%>/images/f_hot.gif"> <%}
  730.    else if (recount>0) {%> <img alt="<lt:Label res="res.label.forum.listtopic" key="open_topic_reply"/>" src="<%=skinPath%>/images/f_new.gif"> <%}
  731.    else {%> <img alt="<lt:Label res="res.label.forum.listtopic" key="open_topic_no_reply"/>" src="<%=skinPath%>/images/f_norm.gif"> <%}
  732.   }%>
  733. </td>
  734.         <td class="list_td_emote" align=middle width=17 bgcolor=#ffffff> <% String urlboardname = StrUtil.UrlEncode(boardname,"utf-8"); %> <a href="<%=ForumPage.getShowTopicPage(request, msgdb.getId())%>" target=_blank> 
  735.           <% 
  736.   if (islocked==1) { %>
  737.           <IMG height=15 alt="" src="<%=skinPath%>/images/f_locked.gif" width=17 border=0> 
  738.           <% }
  739.   else {
  740.   if (type==1) { %>
  741.           <IMG height=15 alt="" src="<%=skinPath%>/images/f_poll.gif" width=17 border=0> 
  742.           <%}else { %>
  743.           <img src="images/brow/<%=expression%>.gif" border=0> 
  744.           <%}
  745.   } %>
  746.           </a></td>
  747.         <td onMouseOver="this.style.backgroundColor='#ffffff'" 
  748.     onMouseOut="this.style.backgroundColor=''" align=left bgcolor=#f8f8f8> <%
  749. if (recount==0) {
  750. %>
  751.           <img id=followImg<%=id%> title=<lt:Label res="res.label.forum.listtopic" key="no_reply"/> src="<%=skinPath%>/images/minus.gif" loaded="no">
  752.           <% }else { %>
  753.           <img id=followImg<%=id%> title=<lt:Label res="res.label.forum.listtopic" key="extend_reply"/> style="CURSOR: hand" 
  754.       onClick="loadThreadFollow(<%=id%>,<%=id%>,'&boardcode=<%=boardcode%>')" src="<%=skinPath%>/images/plus.gif" loaded="no">
  755.           <%}%>
  756.   <%
  757.   String attIcon = MsgUtil.getIconImg(msgdb);
  758.   if (!attIcon.equals("")) {
  759.    out.print("<img src='../images/fileicon/" + attIcon + "'>");
  760.   }
  761.   %>
  762. <%
  763. // plugin
  764. if (!msgdb.getPluginCode().equals("")) {
  765. PluginUnit pu = pm.getPluginUnit(msgdb.getPluginCode());
  766. out.print(pu.getName(request) + "&nbsp;");
  767. }
  768. // 子类别
  769. if (ttv.size()>0) {
  770. if (msgdb.getThreadType()!=ThreadTypeDb.THREAD_TYPE_NONE) {
  771. ttd = ttm.getThreadTypeDb(msgdb.getThreadType());
  772. out.print("<a href='" + ForumPage.getListTopicPage(request, boardcode, 0, 1, ttd.getId()) + "'>[" + ttd.getName() + "]</a>");
  773. }
  774. }
  775. %>
  776. <a href="<%=ForumPage.getShowTopicPage(request, msgdb.getId())%>"> 
  777. <%
  778. String color = StrUtil.getNullString(msgdb.getColor());
  779. String tp = topic;
  780. if (!color.equals(""))
  781. tp = "<font color='" + color + "'>" + tp + "</font>";
  782. if (msgdb.isBold())
  783. tp = "<B>" + tp + "</B>";
  784. %>
  785. <%=tp%>
  786. </a>
  787. <%if (iselite==1) { %>
  788. <IMG src="images/topicgood.gif">
  789. <%}%>
  790.   <%
  791. // 计算共有多少页回贴
  792. int allpages = Math.round((float)recount/10+0.5f);
  793. if (allpages>1) {
  794. int pg = allpages;
  795. if (allpages>10)
  796. pg = 10;
  797.   out.print("[");
  798. for (int m=1; m<=pg; m++)
  799. {%> 
  800. <a href="<%=ForumPage.getShowTopicPage(request, msgdb.getId(), m)%>"><%=m%></a> 
  801. <%}
  802. if (allpages>10) {%>
  803. ...<a href="<%=ForumPage.getShowTopicPage(request, msgdb.getId(), allpages)%>"><%=allpages%></a>
  804. <%}
  805.    out.print("]");
  806. }%> 
  807.     </td>
  808.         <td class="list_td" align=middle width=91 bgcolor=#ffffff> <% if (privilege.getUser(request).equals(name)) { %> <IMG height=14 src="<%=skinPath%>/images/my.gif" 
  809.             width=14> <% } %> <a href="../userinfo.jsp?username=<%=StrUtil.UrlEncode(name)%>"><%=ud.getNick()%></a> </td>
  810.         <td align=middle width=55 bgcolor=#f8f8f8><%=recount%></td>
  811.         <td align=middle width=55 bgcolor=#ffffff class="list_td"><%=hit%></td>
  812.         <td align=left width=80 bgcolor=#f8f8f8 class="list_date"> 
  813.   &nbsp;
  814.   <%if (rename==null || rename.equals("")) {
  815.    if (lydate!=null) {
  816. %>
  817.           <%=lydate%>
  818.           <%}
  819.   }else{%>
  820.           <%=redate%>
  821.   &nbsp;|&nbsp;
  822.           <a href="../userinfo.jsp?username=<%=StrUtil.UrlEncode(rename,"utf-8")%>" title="<lt:Label res="res.label.forum.listtopic" key="topic_date"/><%=lydate%>"><%=reUserDb.getNick()%></a>
  823.         <%}%></td>
  824.       </tr>
  825.       <tr id=follow<%=id%> style="DISPLAY: none"> 
  826.         <td noWrap align=middle width=30>&nbsp;</td>
  827.         <td align=middle width=17 class="list_td_emote">&nbsp;</td>
  828.         <td onMouseOver="this.style.backgroundColor='#ffffff'" 
  829.     onMouseOut="this.style.backgroundColor=''" align=left colspan="5"> 
  830.         <div id=followDIV<%=id%> style="WIDTH: 100%;" 
  831.       onClick=loadThreadFollow(<%=id%>,<%=id%>,"&hit=<%=hit+1%>&boardname=<%=urlboardname%>")><lt:Label res="res.label.forum.listtopic" key="wait"/></div></td>
  832.       </tr>
  833.     </tbody>
  834. </table>
  835. <%}%>
  836.   <table width="98%" border="0" cellspacing="1" cellpadding="3" align="center" class="9black">
  837.     <tr>
  838.       <td width="11%" align="right"><select name="selboard" onChange="if(this.options[this.selectedIndex].value!=''){location='listtopic.jsp?' + this.options[this.selectedIndex].value;}">
  839.         <option value="" selected><lt:Label res="res.label.forum.listtopic" key="sel_board"/></option>
  840.         <%
  841. LeafChildrenCacheMgr dlcm = new LeafChildrenCacheMgr("root");
  842. java.util.Vector vt = dlcm.getChildren();
  843. Iterator ir = vt.iterator();
  844. while (ir.hasNext()) {
  845. Leaf leaf = (Leaf) ir.next();
  846. String parentCode = leaf.getCode();
  847. if (leaf.getIsHome()) {
  848. %>
  849.         <option style="BACKGROUND-COLOR: #f8f8f8" value="">╋ <%=leaf.getName()%></option>
  850.         <%
  851. LeafChildrenCacheMgr dl = new LeafChildrenCacheMgr(parentCode);
  852. java.util.Vector v = dl.getChildren();
  853. Iterator ir1 = v.iterator();
  854. while (ir1.hasNext()) {
  855. Leaf lf = (Leaf) ir1.next();
  856. String selected = boardcode.equals(lf.getCode())?"selected":"";
  857. %>
  858.         <option value="boardcode=<%=StrUtil.UrlEncode(lf.getCode(),"utf-8")%>&boardname=<%=StrUtil.UrlEncode(lf.getName(),"utf-8")%>" <%=selected%>> ├『<%=lf.getName()%>』</option>
  859.         <%}
  860. }
  861. }%>
  862.       </select></td> 
  863.       <td width="60" height="23" align="left"> 
  864.           <%if (privilege.isManager(request, boardcode)) {%>
  865.           <a href="manager/boardRule.jsp?boardcode=<%=StrUtil.UrlEncode(boardcode)%>"><lt:Label res="res.label.forum.listtopic" key="manage_board"/></a>
  866.           <%}%>          &nbsp;</td>
  867.       <td width="74%" align="right"><%
  868. String querystr = "boardcode=" + boardcode + "&op=" + op + "&threadType=" + threadType;
  869. if (op.equals(""))
  870. out.print(paginator.getListTopicCurPageBlock(request, boardcode, 0, threadType));
  871. else
  872. out.print(paginator.getCurPageBlock(request, "listtopic.jsp?"+querystr));
  873. %></td>
  874.     </tr>
  875. </table> 
  876.   <TABLE borderColor=#cccccc cellSpacing=0 cellPadding=4 width="98%" align=center 
  877. border=1>
  878.     <TBODY>
  879.       <TR>
  880.         <TD height="26" background="<%=skinPath%>/images/bg1.gif" class="online">
  881. <span>
  882. <%
  883. OnlineInfo oli = new OnlineInfo();
  884. int boardcount = oli.getBoardCount(boardcode);
  885. int boardusercount = oli.getBoardUserCount(boardcode);
  886. int boardguestcount = boardcount - boardusercount;
  887. %>
  888. <lt:Label res="res.label.forum.listtopic" key="online"/> <%=oli.getAllCount()%> <lt:Label res="res.label.forum.listtopic" key="ren"/>&nbsp;<lt:Label res="res.label.forum.listtopic" key="cur_board"/> <%=boardcount%> <lt:Label res="res.label.forum.listtopic" key="ren"/>&nbsp;<lt:Label res="res.label.forum.listtopic" key="regist_user"/> <%=boardusercount%> <lt:Label res="res.label.forum.listtopic" key="ren"/>&nbsp;
  889. <lt:Label res="res.label.forum.listtopic" key="guest"/> <%=boardguestcount%> <lt:Label res="res.label.forum.listtopic" key="ren"/>&nbsp;<lt:Label res="res.label.forum.listtopic" key="today_post"/> <%=curleaf.getTodayCount()%> &nbsp;
  890. </span> <A title="<lt:Label res="res.label.forum.listtopic" key="show_online"/>" href="javascript:loadonline('<%=boardcode%>')"><IMG id=followImg000 style="CURSOR: hand" 
  891.       src="images/plus.gif" border=0 loaded="no">
  892. <SPAN id=advance><lt:Label res="res.label.forum.listtopic" key="show_online"/></SPAN></A></TD>
  893.       </TR>
  894.       <TR>
  895.         <TD 
  896.     style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; PADDING-TOP: 0px" 
  897.     colSpan=4><DIV id="followDIV000" name="followDIV000">
  898.             <div style="display:none; BORDER-RIGHT: black 1px solid; PADDING-RIGHT: 2px; BORDER-TOP: black 1px solid; PADDING-LEFT: 2px; PADDING-BOTTOM: 2px; MARGIN-LEFT: 18px; BORDER-LEFT: black 1px solid; WIDTH: 240px; COLOR: black; PADDING-TOP: 2px; BORDER-BOTTOM: black 1px solid; BACKGROUND-COLOR: lightyellow" 
  899.       onclick="loadonline('<%=boardcode%>')"><lt:Label res="res.label.forum.listtopic" key="wait_online"/></DIV>
  900.         </div></TD>
  901.       </TR>
  902.     </TBODY>
  903.   </TABLE>
  904.   <TABLE width="98%" border=0 align="center" cellPadding=0 cellSpacing=0>
  905.   <TBODY>
  906.   <TR>
  907.     <TD><TABLE width="100%" border=0 align="center" 
  908.       cellPadding=0 cellSpacing=4 borderColor=#111111 style="BORDER-COLLAPSE: collapse">
  909.       <TBODY>
  910.         <TR>
  911.           <TD noWrap width=200><IMG height=12 alt="" 
  912.             src="<%=skinPath%>/images/f_new.gif" width=18 border=0>&nbsp;<lt:Label res="res.label.forum.listtopic" key="topic_reply"/></TD>
  913.           <TD noWrap width=100><IMG height=12 alt="" 
  914.             src="<%=skinPath%>/images/f_hot.gif" width=18 border=0>&nbsp;<lt:Label res="res.label.forum.listtopic" key="topic_hot"/> </TD>
  915.           <TD noWrap width=100><IMG height=15 alt="" 
  916.             src="<%=skinPath%>/images/f_locked.gif" width=17 border=0>&nbsp;<lt:Label res="res.label.forum.listtopic" key="topic_lock"/></TD>
  917.           <TD noWrap width=150><IMG src="images/topicgood.gif"> <lt:Label res="res.label.forum.listtopic" key="topic_elite"/></TD>
  918.           <TD noWrap width=150><IMG height=15 alt="" src="images/top_forum.gif" width=15 border=0>&nbsp;<lt:Label res="res.label.forum.listtopic" key="topic_all_top"/></TD>
  919.         </TR>
  920.         <TR>
  921.           <TD noWrap width=200><IMG height=12 alt="" 
  922.             src="<%=skinPath%>/images/f_norm.gif" width=18 border=0>&nbsp;<lt:Label res="res.label.forum.listtopic" key="topic_no_reply"/></TD>
  923.           <TD noWrap width=100><IMG height=15 alt="" 
  924.             src="<%=skinPath%>/images/f_poll.gif" width=17 border=0>&nbsp;<lt:Label res="res.label.forum.listtopic" key="topic_vote"/></TD>
  925.           <TD noWrap width=100><IMG height=15 alt="" 
  926.             src="<%=skinPath%>/images/f_top.gif" width=15 border=0>&nbsp;<lt:Label res="res.label.forum.listtopic" key="topic_top"/></TD>
  927.           <TD noWrap width=150><IMG height=14 src="<%=skinPath%>/images/my.gif" 
  928.             width=14> <lt:Label res="res.label.forum.listtopic" key="topic_my"/></TD>
  929.           <TD noWrap width=150>&nbsp;</TD>
  930.         </TR>
  931.       </TBODY>
  932.     </TABLE></TD>
  933. </TR></TBODY></TABLE>
  934. <table width="98%" border="0" align="center" cellpadding="0" cellspacing="0">
  935.   <tr>
  936.     <td align="center">
  937. <%
  938. long pageEndTime =  System.currentTimeMillis();
  939. long t = pageEndTime - pageBeginTime;
  940. %>
  941. <lt:Label res="res.label.forum.listtopic" key="page_run"/><%=t%><lt:Label res="res.label.forum.listtopic" key="mili_second"/> </td>
  942.   </tr>
  943. </table>
  944. <jsp:include page="inc/footer.jsp" />
  945. </BODY></HTML>