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

电子政务应用

开发平台:

Java

  1. <%
  2. /**
  3.  * $RCSfile: editUser.jsp,v $
  4.  * $Revision: 1.3 $
  5.  * $Date: 2000/12/18 02:06:21 $
  6.  */
  7. %>
  8. <%@ page import="java.util.*,
  9.                  java.net.*,
  10.                  com.coolservlets.forum.*,
  11.                  com.coolservlets.forum.util.*,
  12.  com.coolservlets.forum.util.admin.*"
  13. errorPage="error.jsp"
  14. %>
  15. <jsp:useBean id="adminBean" scope="session"
  16.  class="com.coolservlets.forum.util.admin.AdminBean"/>
  17. <% ////////////////////////////////
  18. // Jive authorization check
  19. // check the bean for the existence of an authorization token.
  20. // Its existence proves the user is valid. If it's not found, redirect
  21. // to the login page
  22. Authorization authToken = adminBean.getAuthToken();
  23. if( authToken == null ) {
  24. response.sendRedirect( "/mainctrl/bbs/admin" );
  25. return;
  26. }
  27. %>
  28.  
  29. <% ////////////////////
  30. // Security check
  31. // make sure the user is authorized to administer users:
  32. ForumFactory forumFactory = ForumFactory.getInstance(authToken);
  33. boolean isSystemAdmin = ((Boolean)session.getValue("jiveAdmin.systemAdmin")).booleanValue();
  34. // redirect to error page if we're not a user admin or a system admin
  35. if( !isSystemAdmin ) {
  36. throw new UnauthorizedException("对不起,您不允许修改用户资料。");
  37. }
  38. %>
  39. <% ///////////////////////
  40. // get parameters
  41. boolean saveChanges = ParamUtils.getBooleanParameter(request,"saveChanges");
  42. String username = ParamUtils.getParameter(request,"user");
  43. String name = ParamUtils.getParameter(request,"name",true);
  44. String email = ParamUtils.getParameter(request,"email");
  45. boolean nameVisible = ParamUtils.getBooleanParameter(request,"nameVisible");
  46. boolean emailVisible = ParamUtils.getBooleanParameter(request,"emailVisible");
  47. %>
  48. <% ////////////////
  49. // create a profile manager
  50. ProfileManager manager = forumFactory.getProfileManager();
  51. %>
  52. <% /////////////////
  53. // check for errors
  54. boolean errorEmail = (email==null);
  55. boolean errors = (errorEmail);
  56. %>
  57. <% //////////////////
  58. // save user changes if necessary
  59. if( !errors && saveChanges ) {
  60. User user = manager.getUser(username);
  61. if( name != null ) {
  62. user.setName(name);
  63. }
  64. if( email != null ) {
  65. user.setEmail(email);
  66. }
  67. user.setEmailVisible( emailVisible );
  68. user.setNameVisible( nameVisible );
  69. // redirect to user main page
  70. response.sendRedirect(
  71. response.encodeRedirectURL("users.jsp?msg=修改成功")
  72. );
  73. return;
  74. }
  75. %>
  76. <% //////////////////////
  77. // user properties
  78. User user = manager.getUser(username);
  79. int userID = user.getID();
  80. name = user.getName();
  81. email = user.getEmail();
  82. boolean isEmailVisible = user.isEmailVisible();
  83. boolean isNameVisible = user.isNameVisible();
  84. Enumeration userProperties = user.propertyNames();
  85. %>
  86. <html>
  87. <head>
  88. <title></title>
  89. <link rel="stylesheet" href="style/global.css">
  90. </head>
  91. <body background="images/shadowBack.gif" bgcolor="#ffffff" text="#000000" link="#0000ff" vlink="#800080" alink="#ff0000">
  92. <% ///////////////////////
  93. // pageTitleInfo variable (used by include/pageTitle.jsp)
  94. String[] pageTitleInfo = { "用户", "修改用户资料" };
  95. %>
  96. <% ///////////////////
  97. // pageTitle include
  98. %><%@ include file="include/pageTitle.jsp" %>
  99. <p>
  100. <form action="editUser.jsp">
  101. <input type="hidden" name="saveChanges" value="true">
  102. <input type="hidden" name="user" value="<%= username %>">
  103. <p>
  104. 用户<b><%= username %></b>的属性
  105. <p>
  106. <table bgcolor="#666666" cellpadding="0" cellspacing="0" border="0" width="80%" align="center">
  107. <td>
  108. <table bgcolor="#666666" cellpadding="3" cellspacing="1" border="0" width="100%">
  109. <tr bgcolor="#ffffff">
  110. <td>用户ID:</td>
  111. <td colspan="2"><%= userID %></td>
  112. </tr>
  113. <tr bgcolor="#ffffff">
  114. <td>用户名:</td>
  115. <td colspan="2"><%= username %></td>
  116. </tr>
  117. <tr bgcolor="#ffffff">
  118. <td>姓名:</td>
  119. <td colspan="2">
  120. <input type="text" name="name" value="<%= (name!=null)?name:"" %>">
  121. </td>
  122. </tr>
  123. <tr bgcolor="#ffffff">
  124. <td>在论坛中姓名可见</td>
  125. <td>
  126. <input type="radio" name="nameVisible" value="true" id="rb01"<%= isNameVisible?" checked":"" %>>
  127. <label for="rb01">是</label>
  128. </td>
  129. <td>
  130. <input type="radio" name="nameVisible" value="false" id="rb02"<%= !isNameVisible?" checked":"" %>>
  131. <label for="rb02">否</label>
  132. </td>
  133. </tr>
  134. <tr bgcolor="#ffffff">
  135. <td>Email:</td>
  136. <td colspan="2">
  137. <input type="text" name="email" value="<%= (email!=null)?email:"" %>">
  138. </td>
  139. </tr>
  140. <tr bgcolor="#ffffff">
  141. <td>在论坛中Email可见</td>
  142. <td>
  143. <input type="radio" name="emailVisible" value="true" id="rb03"<%= isEmailVisible?" checked":"" %>>
  144. <label for="rb03">是</label>
  145. </td>
  146. <td>
  147. <input type="radio" name="emailVisible" value="false" id="rb04"<%= !isEmailVisible?" checked":"" %>>
  148. <label for="rb04">否</label>
  149. </td>
  150. </tr>
  151. </table>
  152. </td>
  153. </table>
  154. <p>
  155. 扩展属性
  156. <p>
  157. <table bgcolor="#666666" cellpadding="0" cellspacing="0" border="0" width="80%" align="center">
  158. <td>
  159. <table bgcolor="#666666" cellpadding="3" cellspacing="1" border="0" width="100%">
  160. <% if( !userProperties.hasMoreElements() ) { %>
  161. <tr bgcolor="#ffffff">
  162. <td align="center"><i>没有设置扩展属性</i></td>
  163. </tr>
  164. <% } %>
  165. <% while( userProperties.hasMoreElements() ) {
  166. String propName = (String)userProperties.nextElement();
  167. String propValue = user.getProperty(propName);
  168. %>
  169. <tr bgcolor="#ffffff">
  170. <td><%= propName %></td>
  171. <td><input type="text" size="30" maxlength="100" value="<%= propValue %>"></td>
  172. </tr>
  173. <% } %>
  174. </table></td></table>
  175. <p>
  176. <center>
  177. <input type="submit" value="保存修改">
  178. </center>
  179. </form>
  180. </body>
  181. </html>