sidebar.jsp
上传用户:guhaomin
上传日期:2007-06-10
资源大小:23203k
文件大小:5k
源码类别:

电子政务应用

开发平台:

Java

  1. <%
  2. /**
  3.  * $RCSfile: sidebar.jsp,v $
  4.  * $Revision: 1.3 $
  5.  * $Date: 2000/12/18 02:06:21 $
  6.  */
  7. %>
  8. <%@ page import="com.coolservlets.forum.*,
  9.                  com.coolservlets.forum.util.*,
  10.  com.coolservlets.forum.util.tree.*,
  11.  com.coolservlets.forum.util.admin.*" %>
  12. <%! ////////////////////
  13. // page variables
  14. private final String bullet = "<font color='#666666'>&#149;</font>";
  15. %>
  16. <%! ////////////////////
  17. // page methods
  18. private final String printTree( com.coolservlets.forum.util.tree.Tree tree ) {
  19. StringBuffer buf = new StringBuffer();
  20. for( int i=0; i<tree.size(); i++ ) {
  21. com.coolservlets.forum.util.tree.TreeObject treeObject = tree.getChild(i);
  22. if( treeObject.getType() == tree.NODE ) {
  23. com.coolservlets.forum.util.tree.TreeNode node 
  24. = (com.coolservlets.forum.util.tree.TreeNode)treeObject;
  25. buf.append( printNodeHTML(tree,node) );
  26. if( node.isVisible() ) {
  27. buf.append( printTree( node.getChildren() ) );
  28. }
  29. }
  30. else {
  31. com.coolservlets.forum.util.tree.TreeLeaf leaf 
  32. = (com.coolservlets.forum.util.tree.TreeLeaf)treeObject;
  33. buf.append( printLeafHTML(leaf) );
  34. }
  35. }
  36. return buf.toString();
  37. }
  38. private final String printNodeHTML( com.coolservlets.forum.util.tree.Tree tree, 
  39. com.coolservlets.forum.util.tree.TreeNode node ) 
  40. {
  41. StringBuffer buf = new StringBuffer();
  42. buf.append( "<table cellpadding='3' cellspacing='0' border='0' width='100%'><td width='1%'>" );
  43. buf.append( "<a href='sidebar.jsp?flip=" ).append(node.getId()).append("&tree=").append(tree.getName()).append("'>" );
  44. if( node.isVisible() ) {
  45. buf.append( "<img src='images/minus.gif' width='11' height='11' border='0'>" );
  46. }
  47. else {
  48. buf.append( "<img src='images/plus.gif' width='11' height='11' border='0'>" );
  49. }
  50. buf.append( "</a>" );
  51. buf.append( "</td><td width='99%' class='sidebarNode'><font size='-1'>" );
  52. String link = node.getLink();
  53. if( link != null ) {
  54. buf.append( "<a href='").append(link).append("' target='main' class='sidebarLink'>" )
  55.    .append( node.getName() ).append( "</a>" );
  56. }
  57. else {
  58. buf.append( node.getName() );
  59. }
  60. buf.append( "</font></td></table>" );
  61. return buf.toString();
  62. }
  63. private final String printLeafHTML( com.coolservlets.forum.util.tree.TreeLeaf leaf ) {
  64. StringBuffer buf = new StringBuffer();
  65. buf.append( "<table cellpadding='3' cellspacing='0' border='0' width='100%'><td width='1%'>" );
  66. buf.append( "<img src='images/blank.gif' width='11' height='11' border='0'>" );
  67. buf.append( "</td><td width='1%'>").append(bullet).append("</td><td width='98%' class='sidebarLeaf'>" );
  68. buf.append( "<a href='" ).append( leaf.getLink() ).append( "' target='main' class='sidebarLink'>" );
  69. buf.append( leaf.getName() );
  70. buf.append( "</a></td></table>" );
  71. return buf.toString();
  72. }
  73. %>
  74.  
  75. <jsp:useBean id="adminBean" scope="session"
  76.  class="com.coolservlets.forum.util.admin.AdminBean"/>
  77. <% ////////////////////////////////
  78. // Jive authorization check
  79. // check the bean for the existence of an authorization token.
  80. // Its existence proves the user is valid. If it's not found, redirect
  81. // to the login page
  82. Authorization authToken = adminBean.getAuthToken();
  83. if( authToken == null ) {
  84. response.sendRedirect( "/mainctrl/bbs/admin" );
  85. return;
  86. }
  87. %>
  88. <% //////////////////////
  89. // Get parameters
  90. // "tree" (tells which tree to display
  91. String treeName = ParamUtils.getParameter(request,"tree");
  92. // "flip" (id of node to expand/contract)
  93. int flip = ParamUtils.getIntParameter(request,"flip",-1);
  94. %>
  95. <% ///////////////////////////////////////
  96. // Get the permissions for this user:
  97. boolean isSystemAdmin = ((Boolean)session.getValue("jiveAdmin.systemAdmin")).booleanValue();
  98. boolean isForumAdmin  = ((Boolean)session.getValue("jiveAdmin.forumAdmin")).booleanValue();
  99. boolean isGroupAdmin  = ((Boolean)session.getValue("jiveAdmin.groupAdmin")).booleanValue();
  100. %>
  101. <% ///////////////////////////////////////
  102. // Figure out which tree to display
  103. com.coolservlets.forum.util.tree.Tree tree = null;
  104. // if treeName is null, try to show the system tree by default if
  105. // that user has access to see it:
  106. if( treeName == null ) {
  107. if( isSystemAdmin || isGroupAdmin ) {
  108. tree = adminBean.getTree("systemTree");
  109. }
  110. }
  111. // treeName is not null so use that variable to get the tree
  112. else {
  113. if( treeName.equals("system") && 
  114. (isSystemAdmin || isGroupAdmin) ) 
  115. {
  116. tree = adminBean.getTree("systemTree");
  117. }
  118. else if( treeName.equals("forum") && ( isSystemAdmin || isForumAdmin ) ) {
  119. tree = adminBean.getTree("forumTree");
  120. }
  121. }
  122. // Flip any nodes that need to be flipped:
  123. if( flip > -1 ) {
  124. com.coolservlets.forum.util.tree.TreeNode node 
  125. = (com.coolservlets.forum.util.tree.TreeNode)tree.getChild(flip);
  126. node.toggleVisible();
  127. }
  128. %>
  129. <html>
  130. <head>
  131. <title>工具栏</title>
  132. <link rel="stylesheet" href="style/global.css">
  133. </head>
  134. <body bgcolor="#dddddd" text="#000000" link="#0000ff" vlink="#0000ff" alink="#ff0000">
  135. <img src="images/blank.gif" width="50" height="10" border="0"><br>
  136. <% if( tree != null ) { %>
  137. <%= printTree(tree) %>
  138. <% } %>
  139. <br><br>
  140. </body>
  141. </html>