Changeset 25275 for main/trunk
- Timestamp:
- 2012-03-23T16:32:03+13:00 (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
main/trunk/greenstone3/web/interfaces/oran/transform/pages/authen.xsl
r25123 r25275 7 7 extension-element-prefixes="java util" 8 8 exclude-result-prefixes="java util"> 9 10 9 10 <!-- use the 'main' layout --> 11 11 <xsl:import href="layouts/main.xsl"/> 12 12 <xsl:output method="html"/> 13 13 14 14 <!-- set page title --> 15 <xsl:template name="pageTitle"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.authentication')"/></xsl:template> 15 <xsl:template name="pageTitle"> 16 <xsl:choose> 17 <xsl:when test="/page/pageResponse/authenticationNode/service/@operation = 'AddUser'"> 18 <xsl:text>Add a new user</xsl:text> 19 </xsl:when> 20 <xsl:when test="/page/pageResponse/authenticationNode/service/@operation = 'Register'"> 21 <xsl:text>Register</xsl:text> 22 </xsl:when> 23 <xsl:when test="/page/pageResponse/authenticationNode/service/@operation = 'EditUser'"> 24 <xsl:text>Edit user</xsl:text> 25 </xsl:when> 26 <xsl:when test="/page/pageResponse/authenticationNode/service/@operation = 'AccountSettings'"> 27 <xsl:text>Account settings</xsl:text> 28 </xsl:when> 29 <xsl:otherwise> 30 <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.authentication')"/> 31 </xsl:otherwise> 32 </xsl:choose> 33 </xsl:template> 16 34 17 35 <!-- set page breadcrumbs --> 18 36 <xsl:template name="breadcrumbs"> 19 <gslib:siteLink/><gslib:rightArrow/> 37 <gslib:siteLink/><gslib:rightArrow/><a href="{$library_name}/admin/ListUsers"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.authentication')"/></a> 20 38 </xsl:template> 39 40 <xsl:template match="/page"> 41 <xsl:if test="/page/pageResponse/error"> 42 <div id="gs_error" class="ui-state-error ui-corner-all"> 43 <span class="ui-icon ui-icon-alert" style="float: left;"><xsl:text> </xsl:text></span><xsl:value-of select="/page/pageResponse/error"/> 44 </div> 45 <br/> 46 </xsl:if> 47 <div id="main"> 48 <xsl:choose> 49 <!-- ********** --> 50 <!-- LOGIN PAGE --> 51 <!-- ********** --> 52 <xsl:when test="/page/pageResponse/authenticationNode/service/@operation = 'Login'"> 53 <form method="POST" action="{$library_name}/admin/{/page/pageRequest/paramList/param[@name = 's1.authpage']/@value}"> 54 <table id="loginTable"> 55 <tr><td>Username: </td><td><input type="text" name="username"/></td></tr> 56 <tr><td>Password: </td><td><input type="password" name="password"/></td></tr> 57 <tr><td><input type="submit" value="Login"/></td><td><xsl:text> </xsl:text></td></tr> 58 </table> 59 </form> 60 </xsl:when> 21 61 22 <xsl:template match="/page"> 23 <xsl:call-template name="addGroup" /> 24 <xsl:variable name="authen_service" select="/page/pageRequest/paramList/param[@name='s']/@value"/> 25 <xsl:variable name="sub_action" select="/page/pageRequest/@subaction"/> 26 <xsl:variable name="asn_param" select ="/page/pageRequest/paramList/param[@name='s1.asn']/@value"/> 27 <xsl:variable name="uan" select ="/page/pageRequest/paramList/param[@name='s1.uan']/@value"/> 28 <xsl:variable name="pro_action" select ="/page/pageResponse/authenticationNode/service/@aup"/> 29 <xsl:variable name="au_node" select ="/page/pageResponse/authenticationNode"/> 30 <xsl:variable name="asn" select ="/page/pageResponse/authenticationNode/service/@asn"/> 31 <xsl:variable name="info" select ="/page/pageResponse/authenticationNode/service/@info"/> 32 <xsl:variable name="err" select ="/page/pageResponse/authenticationNode/service/@err"/> 33 <xsl:variable name="rt" select="/page/pageRequest/paramList/param[@name='rt']/@value"/> 34 <xsl:variable name="un_s" select="/page/pageResponse/authenticationNode/service/@un"/> 35 <xsl:variable name="pw_s" select="/page/pageResponse/authenticationNode/service/@pw"/> 62 <!-- *************** --> 63 <!-- LIST USERS PAGE --> 64 <!-- *************** --> 65 <xsl:when test="/page/pageResponse/authenticationNode/service/@operation = 'ListUsers'"> 66 <table id="userListTable"> 67 <tr class="ui-widget-header"> 68 <td colspan="7"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.list_of_current_users_title')"/></td> 69 </tr> 70 <tr class="ui-state-default"> 71 <td><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.username')"/></td> 72 <td><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.account_status')"/></td> 73 <td><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.groups')"/></td> 74 <td><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.comment')"/></td> 75 <td><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.email')"/></td> 76 <td><xsl:text> </xsl:text></td> 77 <td><xsl:text> </xsl:text></td> 78 </tr> 79 <xsl:for-each select="/page/pageResponse/authenticationNode/service/userNodeList/userNode"> 80 <tr class="ui-widget-content"> 81 <td><xsl:value-of select="@username"/></td> 82 <td> 83 <xsl:choose> 84 <xsl:when test="@status = 'true'"> 85 <xsl:text>enabled</xsl:text> 86 </xsl:when> 87 <xsl:otherwise> 88 <xsl:text>disabled</xsl:text> 89 </xsl:otherwise> 90 </xsl:choose> 91 </td> 92 <td><xsl:value-of select='util:replace(@groups, ",", " ")'/></td> 93 <td><xsl:value-of select="@comment"/></td> 94 <td><xsl:value-of select="@email"/></td> 95 <td><a href="{$library_name}/admin/EditUser?s1.username={@username}"><button>Edit</button></a></td> 96 <td><a href="{$library_name}/admin/PerformDeleteUser?s1.username={@username}"><button>Delete</button></a></td> 97 </tr> 98 </xsl:for-each> 99 </table> 100 <div id="auth_navbar"> 101 <!-- Add User link--> 102 <span class="ui-state-default ui-corner-all"> 103 <a href="{$library_name}/admin/AddUser"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.add_a_new_user')"/></a> 104 </span> 105 </div> 106 </xsl:when> 36 107 37 <div id="navbar"> 38 <table style="margin:auto;"><tr> 39 40 <!--list users--> 41 <td style="padding-left:2em; padding-right:2em;"> 108 <!-- ********************************* --> 109 <!-- EDIT USER / ACCOUNT SETTINGS PAGE --> 110 <!-- ********************************* --> 111 <xsl:when test="/page/pageResponse/authenticationNode/service/@operation = 'EditUser' or /page/pageResponse/authenticationNode/service/@operation = 'AccountSettings'"> 112 <form method="POST"> 113 <xsl:attribute name="action"> 114 <xsl:choose> 115 <xsl:when test="/page/pageResponse/authenticationNode/service/@operation = 'EditUser'"> 116 <xsl:value-of select="$library_name"/><xsl:text>/admin/PerformEdit</xsl:text> 117 </xsl:when> 118 <xsl:when test="/page/pageResponse/authenticationNode/service/@operation = 'AccountSettings'"> 119 <xsl:value-of select="$library_name"/><xsl:text>/admin/PerformAccEdit</xsl:text> 120 </xsl:when> 121 </xsl:choose> 122 </xsl:attribute> 123 <input type="hidden" name="s1.prevUsername" value="{/page/pageResponse/authenticationNode/service/userNodeList/userNode/@username}"/> 124 <table> 125 <tr> 126 <td><xsl:text>Username: </xsl:text></td> 127 <td> 128 <input type="text" name="s1.newUsername" value="{/page/pageResponse/authenticationNode/service/userNodeList/userNode/@username}"/> 129 </td> 130 </tr> 131 <xsl:choose> 132 <xsl:when test="/page/pageResponse/authenticationNode/service/@operation = 'EditUser'"> 133 <tr> 134 <td id="passwordLabelCell"> 135 <button id="changePasswordButton">Change Password...</button> 136 <script type="text/javascript"> 137 <xsl:text disable-output-escaping="yes"> 138 var changePasswordButton = document.getElementById("changePasswordButton"); 139 changePasswordButton.onclick = function() 140 { 141 changePasswordButton.parentNode.removeChild(changePasswordButton); 142 143 var passwordLabel = document.createTextNode("Password: "); 144 document.getElementById("passwordLabelCell").appendChild(passwordLabel); 145 146 var passwordInput = document.createElement("INPUT"); 147 passwordInput.setAttribute("name", "s1.password"); 148 passwordInput.setAttribute("type", "password"); 149 document.getElementById("passwordInputCell").appendChild(passwordInput); 150 } 151 </xsl:text> 152 </script> 153 </td> 154 <td id="passwordInputCell"> 155 <xsl:text> </xsl:text> 156 </td> 157 </tr> 158 </xsl:when> 159 <xsl:when test="/page/pageResponse/authenticationNode/service/@operation = 'AccountSettings'"> 160 <tr> 161 <td><button id="changePasswordButton">Change Password...</button></td> 162 <script type="text/javascript"> 163 <xsl:text disable-output-escaping="yes"> 164 var changePasswordButton = document.getElementById("changePasswordButton"); 165 changePasswordButton.onclick = function() 166 { 167 changePasswordButton.parentNode.removeChild(changePasswordButton); 168 169 var names = ["s1.oldPassword", "s1.newPassword", ""]; 170 var ids = ["oldPassword", "passwordOne", "passwordTwo"]; 171 var labels = ["Old password: ", "New password: ", "Retype new password: "]; 172 var parents = ["oldPassword", "password", "retypePassword"]; 173 174 for(var i = 0; i < names.length; i++) 175 { 176 $("#" + parents[i] + "LabelCell").append(labels[i]); 177 178 var input = $("<input>"); 179 input.attr("name", names[i]); 180 input.attr("type", "password"); 181 input.attr("id", ids[i]); 182 183 $("#" + parents[i] + "InputCell").append(input); 184 } 185 } 186 </xsl:text> 187 </script> 188 </tr> 189 <tr> 190 <td id="oldPasswordLabelCell"><xsl:text> </xsl:text></td> 191 <td id="oldPasswordInputCell"><xsl:text> </xsl:text></td> 192 </tr> 193 <tr> 194 <td id="passwordLabelCell"><xsl:text> </xsl:text></td> 195 <td id="passwordInputCell"><xsl:text> </xsl:text></td> 196 </tr> 197 <tr> 198 <td id="retypePasswordLabelCell"><xsl:text> </xsl:text></td> 199 <td id="retypePasswordInputCell"><xsl:text> </xsl:text></td> 200 </tr> 201 </xsl:when> 202 </xsl:choose> 203 <tr> 204 <td><xsl:text>Email address: </xsl:text></td> 205 <td> 206 <input type="text" name="s1.newEmail" value="{/page/pageResponse/authenticationNode/service/userNodeList/userNode/@email}"/> 207 </td> 208 </tr> 209 <xsl:if test="/page/pageResponse/authenticationNode/service/@operation = 'EditUser'"> 210 <tr> 211 <td><xsl:text>Groups: </xsl:text></td> 212 <td> 213 <input id="groupsInput" size="50" type="text" name="s1.groups" value="{/page/pageResponse/authenticationNode/service/userNodeList/userNode/@groups}"/> 214 </td> 215 <td> 216 <select id="groupSelector"> 217 <option>administrator</option> 218 <option>all-collections-editor</option> 219 <option>personal-collections-editor</option> 220 </select> 221 </td> 222 <td> 223 <button id="addGroupButton">Add Group</button> 224 <script type="text/javascript"> 225 <xsl:text disable-output-escaping="yes"> 226 var addGroupButton = document.getElementById("addGroupButton"); 227 addGroupButton.onclick = function() 228 { 229 var groupsInput = document.getElementById("groupsInput"); 230 var groupSelector = document.getElementById("groupSelector"); 231 var options = groupSelector.getElementsByTagName("OPTION"); 232 var selectedGroup = options[groupSelector.selectedIndex].innerHTML; 233 var currentValue = groupsInput.value; 234 235 if(currentValue && currentValue.search(/\w/) != -1) 236 { 237 groupsInput.value = currentValue + "," + selectedGroup; 238 } 239 else 240 { 241 groupsInput.value = selectedGroup; 242 } 243 return false; 244 } 245 </xsl:text> 246 </script> 247 </td> 248 </tr> 249 <tr> 250 <td><xsl:text>Comment: </xsl:text></td> 251 <td> 252 <textarea name="s1.comment" style="width:100%;"><xsl:value-of select="/page/pageResponse/authenticationNode/service/userNodeList/userNode/@comment"/></textarea> 253 </td> 254 </tr> 255 <tr> 256 <td><xsl:text>Status: </xsl:text></td> 257 <td> 258 <input type="radio" name="s1.status" value="true"> 259 <xsl:if test="/page/pageResponse/authenticationNode/service/userNodeList/userNode/@status = 'true'"> 260 <xsl:attribute name="checked">true</xsl:attribute> 261 </xsl:if> 262 </input> 263 <xsl:text>Enabled </xsl:text> 264 265 <input type="radio" name="s1.status" value="false"> 266 <xsl:if test="/page/pageResponse/authenticationNode/service/userNodeList/userNode/@status = 'false'"> 267 <xsl:attribute name="checked">true</xsl:attribute> 268 </xsl:if> 269 </input> 270 <xsl:text>Disabled </xsl:text> 271 </td> 272 </tr> 273 </xsl:if> 274 <tr> 275 <td> 276 <input id="submitButton" type="submit" value="Submit"/> 277 <xsl:if test="/page/pageResponse/authenticationNode/service/@operation = 'AccountSettings'"> 278 <script type="text/javascript"> 279 <xsl:text disable-output-escaping="yes"> 280 $("#submitButton").click(function() 281 { 282 var passwordOne = $("#passwordOne"); 283 var passwordTwo = $("#passwordTwo"); 284 285 if(passwordOne.val() != passwordTwo.val()) 286 { 287 alert("The passwords you have entered do not match"); 288 return false; 289 } 290 else 291 { 292 return true; 293 } 294 }); 295 </xsl:text> 296 </script> 297 </xsl:if> 298 </td> 299 </tr> 300 <tr> 301 <td style="font-size:0.6em;"><a href="{$library_name}/admin/PerformResetPassword?s1.username={/page/pageResponse/authenticationNode/service/userNodeList/userNode/@username}"><br/>Reset Password...</a></td> 302 </tr> 303 </table> 304 </form> 305 </xsl:when> 306 307 <!-- ************************ --> 308 <!-- ADD USER / REGISTER PAGE --> 309 <!-- ************************ --> 310 <xsl:when test="/page/pageResponse/authenticationNode/service/@operation = 'AddUser' or /page/pageResponse/authenticationNode/service/@operation = 'Register'"> 311 <form method="POST"> 312 <xsl:attribute name="action"> 313 <xsl:choose> 314 <xsl:when test="/page/pageResponse/authenticationNode/service/@operation = 'AddUser'"> 315 <xsl:value-of select="$library_name"/><xsl:text>/admin/PerformAdd</xsl:text> 316 </xsl:when> 317 <xsl:when test="/page/pageResponse/authenticationNode/service/@operation = 'Register'"> 318 <xsl:value-of select="$library_name"/><xsl:text>/admin/PerformRegister</xsl:text> 319 </xsl:when> 320 </xsl:choose> 321 </xsl:attribute> 322 <table> 323 <tr> 324 <td><xsl:text>Username: </xsl:text></td> 325 <td> 326 <input type="text" name="s1.username"/> 327 </td> 328 </tr> 329 <tr> 330 <td><xsl:text>Password: </xsl:text></td> 331 <td> 332 <input id="passwordOne" type="password" name="s1.password"/> 333 </td> 334 </tr> 335 <tr> 336 <td><xsl:text>Retype password: </xsl:text></td> 337 <td> 338 <input id="passwordTwo" type="password"/> 339 </td> 340 </tr> 341 <tr> 342 <td><xsl:text>Email address: </xsl:text></td> 343 <td> 344 <input type="text" name="s1.email"/> 345 </td> 346 </tr> 347 <xsl:if test="/page/pageResponse/authenticationNode/service/@operation = 'AddUser'"> 348 <tr> 349 <td><xsl:text>Groups: </xsl:text></td> 350 <td> 351 <input id="groupsInput" size="50" type="text" name="s1.groups"/> 352 </td> 353 <td> 354 <select id="groupSelector"> 355 <option>administrator</option> 356 <option>all-collections-editor</option> 357 <option>personal-collections-editor</option> 358 </select> 359 </td> 360 <td> 361 <button id="addGroupButton">Add Group</button> 362 <script type="text/javascript"> 363 <xsl:text disable-output-escaping="yes"> 364 var addGroupButton = document.getElementById("addGroupButton"); 365 addGroupButton.onclick = function() 366 { 367 var groupsInput = document.getElementById("groupsInput"); 368 var groupSelector = document.getElementById("groupSelector"); 369 var options = groupSelector.getElementsByTagName("OPTION"); 370 var selectedGroup = options[groupSelector.selectedIndex].innerHTML; 371 var currentValue = groupsInput.getAttribute("value"); 372 373 if(currentValue && currentValue.search(/\w/) != -1) 374 { 375 groupsInput.setAttribute("value", currentValue + "," + selectedGroup); 376 } 377 else 378 { 379 groupsInput.setAttribute("value", selectedGroup); 380 } 381 return false; 382 } 383 </xsl:text> 384 </script> 385 </td> 386 </tr> 387 <tr> 388 <td><xsl:text>Comment: </xsl:text></td> 389 <td> 390 <textarea name="s1.comment" style="width:100%;"><xsl:text> </xsl:text></textarea> 391 </td> 392 </tr> 393 <tr> 394 <td><xsl:text>Status: </xsl:text></td> 395 <td> 396 <input type="radio" name="s1.status" value="true" checked="true"/><xsl:text>Enabled </xsl:text> 397 <input type="radio" name="s1.status" value="false"/><xsl:text>Disabled </xsl:text> 398 </td> 399 </tr> 400 </xsl:if> 401 <xsl:if test="/page/pageResponse/authenticationNode/service/@operation = 'Register'"> 402 <tr> 403 <td colspan="2"> 404 <xsl:value-of disable-output-escaping="yes" select="util:reCAPTCHAimage()"/> 405 </td> 406 <script type="text/javascript"> 407 <xsl:text disable-output-escaping="yes"> 408 function changeParams() 409 { 410 $("#recaptcha_challenge_field").attr("name", "s1.recaptcha_challenge_field"); 411 $("#recaptcha_response_field").attr("name", "s1.recaptcha_response_field"); 412 } 413 $(window).load(changeParams()); 414 </xsl:text> 415 </script> 416 </tr> 417 </xsl:if> 418 <tr> 419 <td> 420 <input id="submitButton" type="submit" value="Submit"/> 421 <script type="text/javascript"> 422 <xsl:text disable-output-escaping="yes"> 423 $("#submitButton").click(function() 424 { 425 var passwordOne = $("#passwordOne"); 426 var passwordTwo = $("#passwordTwo"); 427 428 if(passwordOne.val() != passwordTwo.val()) 429 { 430 alert("The passwords you have entered do not match"); 431 return false; 432 } 433 else 434 { 435 return true; 436 } 437 }); 438 </xsl:text> 439 </script> 440 </td> 441 </tr> 442 </table> 443 </form> 444 </xsl:when> 445 446 <!-- ********************** --> 447 <!-- REGISTER RESPONSE PAGE --> 448 <!-- ********************** --> 449 <xsl:when test="/page/pageResponse/authenticationNode/service/@operation = 'PerformRegister'"> 42 450 <xsl:choose> 43 <xsl:when test=" $asn!='' and $asn!='0' and $un_s!=''">44 < a href="{$library_name}?a=g&rt=r&sa=authen&s=Authentication&s1.aup=ListUsers&s1.asn={$asn}&s1.uan=1&s1.un={$un_s}&s1.pw="><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.list_users')"/></a>451 <xsl:when test="/page/pageResponse/error"> 452 <xsl:text>Error: Failed to add user</xsl:text> 45 453 </xsl:when> 46 454 <xsl:otherwise> 47 <a href="{$library_name}?a=g&rt=r&sa=authen&s=Authentication&s1.asn=&s1.aup=Login"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.list_users')"/></a> 455 <xsl:text>User added successfully</xsl:text> 456 <meta http-equiv="refresh" content="2; url={/page/pageRequest/@baseURL}{$library_name}"/> 48 457 </xsl:otherwise> 49 458 </xsl:choose> 50 </td> 51 52 <!--add a new user--> 53 <td style="padding-left:2em; padding-right:2em;"> 54 <xsl:choose> 55 <xsl:when test="$asn!='' and $asn!='0' and $un_s!=''"> 56 <a href="{$library_name}?a=g&rt=r&sa=authen&s=Authentication&s1.aup=AddUser&s1.asn={$asn}&s1.uan=1&s1.un={$un_s}&s1.pw=&s1.umun=&s1.umpw=&s1.umgp=&s1.umas=&s1.umc="><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.add_a_new_user')"/></a> 57 </xsl:when> 58 <xsl:otherwise> 59 <a href="{$library_name}?a=g&rt=r&sa=authen&s=Authentication&s1.asn=&s1.aup=Login"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.add_a_new_user')"/></a> 60 </xsl:otherwise> 61 </xsl:choose> 62 </td> 63 64 <!-- change password--> 65 <td style="padding-left:2em; padding-right:2em;"> 66 <xsl:choose> 67 <xsl:when test="$asn!='' and $asn!='0' and $un_s!=''"> 68 <a href="{$library_name}?a=g&rt=r&sa=authen&s=Authentication&s1.aup=ModifyPassword&s1.asn={$asn}&s1.uan=1&s1.un={$un_s}&s1.pw=&s1.umpw1=&s1.umpw2=&s1.umpw="><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.change_password')"/></a> 69 </xsl:when> 70 <xsl:otherwise> 71 <a href="{$library_name}?a=g&rt=r&sa=authen&s=Authentication&s1.asn=&s1.aup=Login"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.change_password')"/></a> 72 </xsl:otherwise> 73 </xsl:choose> 74 </td> 75 76 <td style="padding-left:2em; padding-right:2em;"> 77 <xsl:choose> 78 <xsl:when test="$un_s!='' and $asn!='' and $asn!='0'"> 79 <a href="{$library_name}?a=g&rt=r&sa=authen&s=Authentication&s1.asn=&s1.aup=Login&s1.un=&s1.pw="><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.logout')"/></a> 80 </xsl:when> 81 <xsl:otherwise> 82 <a href="{$library_name}?a=g&rt=r&sa=authen&s=Authentication&s1.asn=&s1.aup=Login"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.login')"/></a> 83 </xsl:otherwise> 84 </xsl:choose> 85 </td> 86 </tr></table> 87 </div> 88 89 <table style="text-align:left; width:100%;"> 90 <tr> 91 <td> 92 <div id="content" style="text-align:center"> 93 94 <!-- login --> 95 <xsl:if test="$pro_action='Login'"> 96 <xsl:choose> 97 <xsl:when test="$asn!='' and $asn!='0'"> 98 <p style="text-align:left;"> <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.login_successfully')"/></p> 99 </xsl:when> 100 <xsl:otherwise> 101 <p style="text-align:left;"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.login_descibe_line_3')"/><br/></p> 102 <xsl:if test="$err='un-pw-err'"> 103 <p style="text-align:left; color:red;"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.wrong_password_warning')"/></p> 104 </xsl:if> 105 <xsl:if test="$err='no-permission' and $info='Login'"> 106 <p style="text-align:left; color:red;"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.no_permission')"/></p> 107 </xsl:if> 108 <xsl:if test="$err='as-false'"> 109 <p style="text-align:left; color:red;"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.account_status_false')"/></p> 110 </xsl:if> 111 <xsl:call-template name="login"> 112 <xsl:with-param name="sub_action" select="$sub_action"/> 113 <xsl:with-param name="authen_service" select="$authen_service"/> 114 <xsl:with-param name="pro_action" select="$pro_action"/> 115 </xsl:call-template> 116 </xsl:otherwise> 117 </xsl:choose> 118 </xsl:if> 119 120 <!-- list users--> 121 <xsl:if test="$pro_action='ListUsers'"> 122 <xsl:if test="$asn='1' and $info='all-un'"> 123 <xsl:call-template name="listusers"/> 124 </xsl:if> 125 126 <xsl:if test="$info='Login'"> 127 <p style="text-align:left;"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.login_descibe_line_2')"/><br/></p> 128 <xsl:if test="$err='no-permission' and $info='Login'"> 129 <p style="text-align:left; color:red;"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.no_permission')"/></p> 130 </xsl:if> 131 </xsl:if> 132 </xsl:if> 133 134 <!-- add a new user--> 135 <xsl:if test="$pro_action='AddUser'"> 136 <xsl:if test="$err!='' and $err!='no-permission' and $err!='un-exist' and $err!='un-err' and $err!='pw-err'"> 137 <p style="text-align:left; color:red;"><xsl:value-of select="$err" /></p> 138 </xsl:if> 139 140 <xsl:if test="$asn!='1'"> 141 <p style="text-align:left;"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.login_descibe_line_2')"/><br/></p> 142 <xsl:if test="$err='no-permission'"> 143 <p style="text-align:left; color:red;"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.no_permission')"/></p> 144 </xsl:if> 145 </xsl:if> 146 147 <xsl:if test="count(/page/pageResponse/authenticationNode/service/userNodeList) = 1"> 148 <xsl:call-template name="listusers" /> 149 </xsl:if> 150 151 <xsl:if test="$info='adduser_interface'"> 152 <h2 style="text-align:left;"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.add_a_new_user_title')"/></h2> 153 <xsl:if test="$err='pw-err'"> 154 <p style="text-align:left; color:red;"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.password_err')"/></p> 155 </xsl:if> 156 <xsl:if test="$err='un-err'"> 157 <p style="text-align:left; color:red;"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.unsername_err')"/></p> 158 </xsl:if> 159 <xsl:if test="$err='un-exist'"> 160 <p style="text-align:left; color:red;"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.user_has_existed')"/></p> 161 </xsl:if> 162 <xsl:call-template name="edituser" > 163 <xsl:with-param name="sub_action" select="$sub_action"/> 164 <xsl:with-param name="authen_service" select="$authen_service"/> 165 <xsl:with-param name="pro_action" select="$pro_action"/> 166 <xsl:with-param name="umun_s" /> 167 <xsl:with-param name="umpw_s" /> 168 <xsl:with-param name="umas_s" /> 169 <xsl:with-param name="umgp_s" /> 170 <xsl:with-param name="umc_s" /> 171 <xsl:with-param name="oumun_s" /> 172 <xsl:with-param name="un_s" select="$un_s"/> 173 <xsl:with-param name="pw_s" select="$pw_s"/> 174 <xsl:with-param name="asn" select="$asn"/> 175 </xsl:call-template> 176 </xsl:if> 177 </xsl:if> 178 179 <!-- modify the passwrod of a user--> 180 <xsl:if test="$pro_action='ModifyPassword'"> 181 <xsl:if test="$err!='' and $err!='umpw1-err' and $err!='umpw2-err' and $err!='pw-umpw-nm-err' and $err!='umpw-null-err' and $err!='umpw1-umpw2-nm-err' and $err!='umpw1-umpw2-null-err'"> 182 <p style="text-align:left; color:red;"><xsl:value-of select="$err" /></p> 183 </xsl:if> 184 185 <xsl:if test="$err=''"> 186 <h2 style="text-align:left;"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.change_password_title')"/></h2> 187 <p style="text-align:left;"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.change_password_successed_content')"/></p> 188 </xsl:if> 189 190 <xsl:if test="$asn!='0' and $info='modify_interface'"> 191 <h2 style="text-align:left;"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.change_password_title')"/></h2> 192 <p style="text-align:left; color:gray;"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.change_password_describe_line_1')"/></p> 193 194 <xsl:if test="$err='umpw1-err'"> 195 <p style="text-align:left; color:red;"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.new_password_invalid')"/></p> 196 </xsl:if> 197 <xsl:if test="$err='umpw2-err'"> 198 <p style="text-align:left; color:red;"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.retyped_password_invalid')"/></p> 199 </xsl:if> 200 <xsl:if test="$err='pw-umpw-nm-err' or $err='umpw-null-err'"> 201 <p style="text-align:left; color:red;"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.old_password_warning')"/></p> 202 </xsl:if> 203 <xsl:if test="$err='umpw1-umpw2-nm-err'"> 204 <p style="text-align:left; color:red;"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.two_password_not_match')"/></p> 205 </xsl:if> 206 <xsl:if test="$err='umpw1-umpw2-null-err'"> 207 <p style="text-align:left; color:red;"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.password_empty_warning')"/></p> 208 </xsl:if> 209 210 <xsl:call-template name="modifypassword"> 211 <xsl:with-param name="sub_action" select="$sub_action"/> 212 <xsl:with-param name="authen_service" select="$authen_service"/> 213 <xsl:with-param name="pro_action" select="$pro_action"/> 214 <xsl:with-param name="un_s" select="$un_s"/> 215 <xsl:with-param name="pw_s" select="$pw_s"/> 216 <xsl:with-param name="asn" select="$asn"/> 217 </xsl:call-template> 218 </xsl:if> 219 </xsl:if> 220 221 <!-- delete a user --> 222 <xsl:if test="$pro_action='DeleteUser'"> 223 <xsl:if test="$err!=''"> 224 <p style="text-align:left; color:red;"><xsl:value-of select="$err" /></p> 225 </xsl:if> 226 227 <xsl:if test="$info='confirm'"> 228 <xsl:call-template name="deleteuser"> 229 <xsl:with-param name="sub_action" select="$sub_action"/> 230 <xsl:with-param name="authen_service" select="$authen_service"/> 231 <xsl:with-param name="pro_action" select="$pro_action"/> 232 <xsl:with-param name="un_s" select="$un_s"/> 233 <xsl:with-param name="umun_s" select="/page/pageResponse/authenticationNode/service/@umun"/> 234 <xsl:with-param name="asn" select="$asn"/> 235 </xsl:call-template> 236 </xsl:if> 237 <xsl:if test="count(/page/pageResponse/authenticationNode/service/userNodeList) = 1"> 238 <xsl:call-template name="listusers"/> 239 </xsl:if> 240 </xsl:if> 241 242 <!-- edit the user's info --> 243 <xsl:if test="$pro_action='EditUser'"> 244 <xsl:if test="$err!='' and $err!='umpw-err' and $err!='umun-err' and $err!='ini-umpw-err' and $err!='un-exist'"> 245 <p style="text-align:left; color:red;"><xsl:value-of select="$err" /></p> 246 </xsl:if> 247 248 <xsl:if test="$info='edituser-interface'"> 249 <h2 style="text-align:left;"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.edit_user_information')"/></h2> 250 <xsl:if test="$err='umpw-err'"> 251 <p style="text-align:left; color:red;"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.password_err')"/></p> 252 </xsl:if> 253 <xsl:if test="$err='umun-err'"> 254 <p style="text-align:left; color:red;"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.unsername_err')"/></p> 255 </xsl:if> 256 <xsl:if test="$err='ini-umpw-err'"> 257 <p style="text-align:left; color:red;"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.password_initial')"/></p> 258 </xsl:if> 259 <xsl:if test="$err='un-exist'"> 260 <p style="text-align:left; color:red;"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.user_has_existed')"/></p> 261 </xsl:if> 262 <xsl:call-template name="edituser" > 263 <xsl:with-param name="sub_action" select="$sub_action"/> 264 <xsl:with-param name="authen_service" select="$authen_service"/> 265 <xsl:with-param name="pro_action" select="$pro_action"/> 266 <xsl:with-param name="umun_s" select="/page/pageResponse/authenticationNode/service/@umun"/> 267 <xsl:with-param name="umpw_s" select="/page/pageResponse/authenticationNode/service/@umpw"/> 268 <xsl:with-param name="umas_s" select="/page/pageResponse/authenticationNode/service/@umas"/> 269 <xsl:with-param name="umgp_s" select="/page/pageResponse/authenticationNode/service/@umgp"/> 270 <xsl:with-param name="umc_s" select="/page/pageResponse/authenticationNode/service/@umc"/> 271 <xsl:with-param name="oumun_s" select="/page/pageResponse/authenticationNode/service/@oumun"/> 272 <xsl:with-param name="un_s" select="$un_s"/> 273 <xsl:with-param name="pw_s" select="$pw_s"/> 274 <xsl:with-param name="asn" select="$asn"/> 275 </xsl:call-template> 276 </xsl:if> 277 <xsl:if test="$info='all-un'"> 278 <xsl:if test="count(/page/pageResponse/authenticationNode/service/userNodeList) = 1"> 279 <xsl:call-template name="listusers" /> 280 </xsl:if> 281 </xsl:if> 282 </xsl:if> 283 </div> 284 </td> 285 </tr> 286 </table> 287 </xsl:template> 288 289 <!--template name="login"--> 290 <xsl:template name="login"> 291 <xsl:param name="sub_action"/> 292 <xsl:param name="authen_service"/> 293 <xsl:param name="pro_action"/> 294 <div> 295 <form id="LoginForm" method="post" action="{$library_name}"> 296 <input type='hidden' name='a' value='g'/> 297 <input type='hidden' name='sa' value='{$sub_action}'/> 298 <input type='hidden' name='s' value='{$authen_service}'/> 299 <input type='hidden' name='rt' value='r'/> 300 <input type='hidden' name='s1.asn' value='0'/> 301 <input type='hidden' name='s1.uan' value='1'/> 302 <input type='hidden' name='s1.aup' value='{$pro_action}'/> 303 <input type='hidden' name='s1.umpw1' value=''/> 304 <input type='hidden' name='s1.umpw2' value=''/> 305 <input type='hidden' name='s1.umc' value=''/> 306 <input type='hidden' name='s1.umgp' value=''/> 307 <input type='hidden' name='s1.umun' value=''/> 308 <input type='hidden' name='s1.umpw' value=''/> 309 <input type='hidden' name='s1.umas' value=''/> 310 311 <table style="text-align:center;"> 312 <tr> 313 <td><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.username')"/></td><td><input type="string" name="s1.un" size="10" value=""/></td><td></td> 314 </tr> 315 <tr> 316 <td><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.password')"/></td><td><input type="password" name="s1.pw" size="10" value=""/></td><td> 317 <input type="submit" value="submit"></input></td> 318 </tr> 319 </table> 320 </form> 459 </xsl:when> 460 461 <xsl:otherwise> 462 <xsl:text>Page not found.</xsl:text> 463 </xsl:otherwise> 464 </xsl:choose> 321 465 </div> 322 466 </xsl:template> 323 324 <!--template name="listusers"-->325 <xsl:template name="listusers" >326 <h2 style="text-align:left;"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.list_of_current_users_title')"/></h2>327 328 <table id='mainTable' style="text-align:left;" border="0" cellspacing="1" cellpadding="3" width="100%" >329 <tr>330 <th bgcolor="#d0d0d0"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.username')"/></th>331 <th bgcolor="#d0d0d0"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.account_status')"/></th>332 <th bgcolor="#d0d0d0"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.groups')"/></th>333 <th bgcolor="#d0d0d0"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.comment')"/></th>334 <th bgcolor="#d0d0d0"></th>335 </tr>336 <xsl:for-each select="/page/pageResponse/authenticationNode/service/userNodeList/userNode">337 <script type="text/javascript">338 <xsl:text disable-output-escaping="yes">339 var username="</xsl:text><xsl:value-of select="@umun"/><xsl:text disable-output-escaping="yes">";340 </xsl:text>341 </script>342 <tr>343 <td bgcolor="#eeeeee"><xsl:value-of select="@umun"/></td>344 <td id="status{@umun}" bgcolor="#eeeeee">345 <script type="text/javascript">346 <xsl:text disable-output-escaping="yes">347 var status="</xsl:text><xsl:value-of select="@umas"/><xsl:text disable-output-escaping="yes">";348 if (status=="true"){349 document.getElementById("status"+username).innerHTML="enabled";350 }351 if (status=="false"){352 document.getElementById("status"+username).innerHTML="disabled";353 }354 </xsl:text>355 </script>356 </td>357 <td id="group{@umun}" bgcolor="#eeeeee">358 <script type="text/javascript">359 <xsl:text disable-output-escaping="yes">360 var groups="</xsl:text><xsl:value-of select="@umgp"/><xsl:text disable-output-escaping="yes">";361 var split_groups= groups.split(",");362 var new_groups="";363 for (j=0; j < split_groups.length ; j++){364 new_groups+=split_groups[j]+" <br /> ";365 }366 document.getElementById('group'+username).innerHTML=new_groups;367 </xsl:text>368 </script>369 </td>370 <td bgcolor="#eeeeee"><xsl:value-of select="@umc"/></td>371 <td bgcolor="#eeeeee">372 <form name="ListUsersForm" method="post" action="{$library_name}">373 <input type='hidden' name='a' value='g'/>374 <input type='hidden' name='sa' value='authen'/>375 <input type='hidden' name='s' value='Authentication'/>376 <input type='hidden' name='rt' value='r'/>377 <input type='hidden' name='s1.asn' value='1'/>378 <input type='hidden' name='s1.uan' value='1'/>379 380 <input type='hidden'><xsl:attribute name="name">s1.oumun</xsl:attribute><xsl:attribute name="value"><xsl:value-of select="@umun"/></xsl:attribute></input>381 <input type='hidden'><xsl:attribute name="name">s1.umun</xsl:attribute><xsl:attribute name="value"><xsl:value-of select="@umun"/></xsl:attribute></input>382 <input type='hidden' name='s1.cm' value=''/>383 384 <input type="submit"><xsl:attribute name="name">s1.aup</xsl:attribute><xsl:attribute name="value">EditUser</xsl:attribute></input>385 <input type="submit"><xsl:attribute name="name">s1.aup</xsl:attribute><xsl:attribute name="value">DeleteUser</xsl:attribute></input>386 </form>387 </td>388 </tr>389 </xsl:for-each>390 </table>391 </xsl:template>392 393 <!--template name="modifypassword"-->394 <xsl:template name="modifypassword" >395 <xsl:param name="sub_action"/>396 <xsl:param name="authen_service"/>397 <xsl:param name="pro_action"/>398 <xsl:param name="un_s"/>399 <xsl:param name="pw_s"/>400 <xsl:param name="asn"/>401 <div>402 <form id="modifyForm" method="post" action="{$library_name}">403 <input type='hidden' name='a' value='g'/>404 <input type='hidden' name='sa' value='{$sub_action}'/>405 <input type='hidden' name='s' value='{$authen_service}'/>406 <input type='hidden' name='rt' value='r'/>407 <input type='hidden' name='s1.un' value='{$un_s}'/>408 <input type='hidden' name='s1.pw' value='{$pw_s}'/>409 <input type='hidden' name='s1.asn' value='{$asn}'/>410 <input type='hidden' name='s1.uan' value='1'/>411 <input type='hidden' name='s1.aup' value='{$pro_action}'/>412 467 413 <table style="text-align:center;"><tr><td style="text-align:right;"> 414 <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.old_password')"/></td><td><input type="password" name="s1.umpw" size="10" value=""/></td></tr> 415 <tr> 416 <td style="text-align:right;"> 417 <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.new_password')"/></td><td><input type="password" name="s1.umpw1" size="10" value=""/></td></tr> 418 <tr><td style="text-align:right;"> 419 <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.retype_new_password')"/></td><td><input type="password" name="s1.umpw2" size="10" value=""/></td></tr> 420 <tr><td></td><td> 421 <input type="submit" value="submit"></input></td> 422 </tr> 423 </table> 424 </form> 425 </div> 426 </xsl:template> 427 428 <!--template name="deleteuser"--> 429 <xsl:template name="deleteuser"> 430 <xsl:param name="sub_action"/> 431 <xsl:param name="authen_service"/> 432 <xsl:param name="pro_action"/> 433 <xsl:param name="un_s"/> 434 <xsl:param name="umun_s"/> 435 <xsl:param name="asn"/> 436 <div> 437 <form id="deleteForm" method="post" action="{$library_name}"> 438 <input type='hidden' name='a' value='g'/> 439 <input type='hidden' name='sa' value='{$sub_action}'/> 440 <input type='hidden' name='s' value='{$authen_service}'/> 441 <input type='hidden' name='rt' value='r'/> 442 <input type='hidden' name='s1.aup' value='{$pro_action}'/> 443 <input type='hidden' name='s1.asn' value='{$asn}'/> 444 <input type='hidden' name='s1.uan' value='1'/> 445 <input type='hidden' name='s1.umun' value='{$umun_s}'/> 446 <p style="color:red;"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.do_you_really_want_to_permanently_remove_user')"/> <xsl:value-of select="$umun_s"/>" ?</p> 447 <input type="submit" value="yes"><xsl:attribute name="name">s1.cm</xsl:attribute></input> 448 <input type="submit" value="no"><xsl:attribute name="name">s1.cm</xsl:attribute></input> 449 </form> 450 </div> 451 </xsl:template> 452 453 <!--template name="edituser"--> 454 <xsl:template name="edituser"> 455 <xsl:param name="sub_action"/> 456 <xsl:param name="authen_service"/> 457 <xsl:param name="pro_action"/> 458 <xsl:param name="un_s"/> 459 <xsl:param name="pw_s"/> 460 <xsl:param name="umun_s"/> 461 <xsl:param name="umpw_s"/> 462 <xsl:param name="umas_s"/> 463 <xsl:param name="umgp_s"/> 464 <xsl:param name="umc_s"/> 465 <xsl:param name="oumun_s"/> 466 <xsl:param name="asn"/> 467 <form id="editForm" method="post" action="{$library_name}"> 468 <input type='hidden' name='a' value='g'/> 469 <input type='hidden' name='sa' value='{$sub_action}'/> 470 <input type='hidden' name='s' value='{$authen_service}'/> 471 <input type='hidden' name='rt' value='r'/> 472 <input type='hidden' name='s1.asn' value='{$asn}'/> 473 <input type='hidden' name='s1.uan' value='1'/> 474 <input type='hidden' name='s1.aup' value='{$pro_action}'/> 475 <input type='hidden' name='s1.un' value='{$un_s}'/> 476 <input type='hidden' name='s1.pw' value='{$pw_s}'/> 477 478 <table style="text-align:left;"> 479 <tr> 480 <td><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.username')"/></td> 481 <td><input type="text" name="s1.umun" size="15" value="{$umun_s}"/></td> 482 <td style="color:gray;"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.username_describe')"/></td> 483 </tr> 484 <tr> 485 <td><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.password')"/></td> 486 <td><input type="password" name="s1.umpw" size="15" value="{$umpw_s}"/></td> 487 <td style="color:gray;"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.password_describe')"/></td> 488 </tr> 489 <tr> 490 <td><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.account_status')"/></td> 491 <td> 492 <select name="s1.umas"> 493 <xsl:if test="$umas_s=''"> 494 <option value="true" selected="selected"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.enabled')"/></option> 495 <option value="false"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.disabled')"/></option> 496 </xsl:if> 497 <xsl:if test="$umas_s='true'"> 498 <option value="true" selected="selected"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.enabled')"/></option> 499 <option value="false"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.disabled')"/></option> 500 </xsl:if> 501 <xsl:if test="$umas_s='false'"> 502 <option value="true"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.enabled')"/></option> 503 <option value="false" selected="selected"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.disabled')"/></option> 504 </xsl:if> 505 </select> 506 </td> 507 <td></td> 508 </tr> 509 <tr> 510 <td><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.groups')"/></td> 511 <td><input type="text" id="group" name="s1.umgp" size="70" value="{$umgp_s}"/></td> 512 <td style="color:gray;"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.groups_describe')"/></td> 513 </tr> 514 <tr> 515 <td></td> 516 <td style="text-align:right;"> 517 <select id="groups" size="0"> 518 <script type="text/javascript"> 519 <xsl:text disable-output-escaping="yes"> 520 var group_arr=Array("administrator","all-collections-editor","personal-collections-editor"); 521 var group_string=document.getElementById("group").value; 522 var split_group_string=group_string.split(","); 523 var find=0; 524 for (i=0; i < group_arr.length; i++){ 525 find=0; 526 for (j=0; j < group_arr.length; j++){ 527 if (split_group_string[j]==group_arr[i]){ 528 find=1; 529 } 530 } 531 if (find==0){ 532 op = document.createElement('option'); 533 op.innerHTML = group_arr[i]; 534 op.setAttribute("value", group_arr[i]); 535 document.getElementById("groups").appendChild(op); 536 } 537 } 538 </xsl:text> 539 </script> 540 </select> 541 </td> 542 <td><input type="button" name="addGroupButton" value="add" onClick="addGroup('groups')"/></td> 543 </tr> 544 <tr> 545 <td></td> 546 <td style="text-align:right;"> 547 <select id="collects" size="0"> 548 <xsl:for-each select="/page/pageResponse/collectionList/collection"> 549 <script type="text/javascript"> 550 <xsl:text disable-output-escaping="yes"> 551 var group="</xsl:text><xsl:value-of select="@name"/>-collection-editor<xsl:text disable-output-escaping="yes">"; 552 var group_string=document.getElementById("group").value; 553 var split_group_string=group_string.split(","); 554 var find=0; 555 for (i=0; i < split_group_string.length; i++){ 556 if (split_group_string[i]==group){ 557 find=1; 558 } 559 } 560 if (find==0){ 561 op = document.createElement('option'); 562 op.innerHTML = group; 563 op.setAttribute("value", group); 564 document.getElementById("collects").appendChild(op); 565 } 566 </xsl:text> 567 </script> 568 </xsl:for-each> 569 </select> 570 </td> 571 <td><input type="button" name="addGroupButton" value="add" onClick="addGroup('collects')"/></td> 572 </tr> 573 <tr> 574 <td><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'authen.comment')"/></td> 575 <td colspan="2"> 576 <div> 577 <textarea cols="40" rows="5" name="s1.umc"> 578 <xsl:value-of select="$umc_s"/> 579 </textarea> 580 </div> 581 </td> 582 </tr> 583 <tr> 584 <td></td> 585 <td> 586 <input type="submit" value="submit"><xsl:attribute name="name">s1.cm</xsl:attribute></input> 587 <xsl:if test="$pro_action!='AddUser'"> 588 <input type="submit" value="cancel"><xsl:attribute name="name">s1.cm</xsl:attribute></input> 589 </xsl:if> 590 </td> 591 <td></td> 592 </tr> 593 </table> 594 <input type='hidden' name='s1.oumun' value='{$oumun_s}'/> 595 </form> 596 </xsl:template> 597 598 <!-- addGroup() javascript --> 599 <xsl:template name="addGroup"> 600 <script type="text/javascript"> 601 <xsl:text disable-output-escaping="yes"> 602 function addGroup(g){ 603 var itemSelected; 604 var splitGroup; 605 var groupExit; 606 607 if (document.getElementById("editForm")!=null){ 608 //itemSelected=document.getElementById("editForm").groups.options.selectedIndex; 609 itemSelected=document.getElementById(g).options.selectedIndex; 610 if (document.getElementById(g).options[itemSelected].text!=""){ 611 if (document.getElementById("group").value==""){ 612 document.getElementById("group").value=document.getElementById("group").value+document.getElementById(g).options[itemSelected].text; 613 }else{ 614 splitGroup=document.getElementById("group").value.split(","); 615 for (var i=0; i < splitGroup.length; i++){ 616 if (splitGroup[i]==document.getElementById(g).options[itemSelected].text){ 617 alert(document.getElementById(g).options[itemSelected].text + " has been added."); 618 groupExit=1; 619 break; 620 } 621 } 622 if (groupExit!=1) { 623 document.getElementById("group").value=document.getElementById("group").value+","+document.getElementById(g).options[itemSelected].text; 624 } 625 } 626 document.getElementById(g).options[itemSelected]=new Option("",itemSelected); 627 } 628 } 629 } 630 </xsl:text> 631 </script> 632 </xsl:template> 633 634 </xsl:stylesheet> 635 468 </xsl:stylesheet>
Note:
See TracChangeset
for help on using the changeset viewer.