paul@0 | 1 | <!-- dollarId: user.item,v 1.7 2002/08/16 04:29:04 richard Exp dollar--> |
paul@0 | 2 | <tal:doc metal:use-macro="templates/page/macros/icing" |
paul@0 | 3 | define="edit_ok context/is_edit_ok" |
paul@0 | 4 | > |
paul@0 | 5 | <title metal:fill-slot="head_title"> |
paul@0 | 6 | <tal:if condition="context/id" i18n:translate="" |
paul@0 | 7 | >User <tal:x content="context/id" i18n:name="id" |
paul@0 | 8 | />: <tal:x content="context/username" i18n:name="title" |
paul@0 | 9 | /> - <tal:x content="config/TRACKER_NAME" i18n:name="tracker" |
paul@0 | 10 | /></tal:if> |
paul@0 | 11 | <tal:if condition="not:context/id" i18n:translate="" |
paul@0 | 12 | >New User - <span tal:replace="config/TRACKER_NAME" i18n:name="tracker" |
paul@0 | 13 | /></tal:if> |
paul@0 | 14 | </title> |
paul@0 | 15 | <metal:slot fill-slot="more-javascript"> |
paul@0 | 16 | <script metal:use-macro="templates/page/macros/user_utils"></script> |
paul@0 | 17 | <script type="text/javascript" src="@@file/help_controls.js"></script> |
paul@0 | 18 | </metal:slot> |
paul@0 | 19 | <tal:block metal:fill-slot="body_title" |
paul@0 | 20 | define="edit_ok context/is_edit_ok"> |
paul@0 | 21 | <span tal:condition="python: not (context.id or edit_ok)" |
paul@0 | 22 | tal:omit-tag="python:1" i18n:translate="">New User</span> |
paul@0 | 23 | <span tal:condition="python: not context.id and edit_ok" |
paul@0 | 24 | tal:omit-tag="python:1" i18n:translate="">New User Editing</span> |
paul@0 | 25 | <span tal:condition="python: context.id and not edit_ok" |
paul@0 | 26 | tal:omit-tag="python:1" i18n:translate="">User<tal:x |
paul@0 | 27 | replace="context/id" i18n:name="id" /></span> |
paul@0 | 28 | <span tal:condition="python: context.id and edit_ok" |
paul@0 | 29 | tal:omit-tag="python:1" i18n:translate="">User<tal:x |
paul@0 | 30 | replace="context/id" i18n:name="id" /> Editing</span> |
paul@0 | 31 | </tal:block> |
paul@0 | 32 | |
paul@0 | 33 | <td class="content" metal:fill-slot="content"> |
paul@0 | 34 | |
paul@0 | 35 | <p tal:condition="python:not (context.is_view_ok() |
paul@0 | 36 | or request.user.hasRole('Anonymous'))" i18n:translate=""> |
paul@0 | 37 | You are not allowed to view this page.</p> |
paul@0 | 38 | |
paul@0 | 39 | <p tal:condition="python:not context.is_view_ok() |
paul@0 | 40 | and request.user.hasRole('Anonymous')" i18n:translate=""> |
paul@0 | 41 | Please login with your username and password.</p> |
paul@0 | 42 | |
paul@0 | 43 | <div tal:condition="context/is_view_ok"> |
paul@0 | 44 | |
paul@0 | 45 | <form method="POST" |
paul@0 | 46 | name="itemSynopsis" |
paul@0 | 47 | tal:define="required python:'username address'.split()" |
paul@0 | 48 | enctype="multipart/form-data" |
paul@0 | 49 | tal:attributes="action context/designator; |
paul@0 | 50 | onSubmit python:'return checkRequiredFields(\'%s\')'%'\', \''.join(required); |
paul@0 | 51 | "> |
paul@0 | 52 | <table class="form" tal:define=" |
paul@0 | 53 | th_label templates/page/macros/th_label; |
paul@0 | 54 | src_input templates/page/macros/user_src_input; |
paul@0 | 55 | normal_input templates/page/macros/user_normal_input; |
paul@0 | 56 | pw_input templates/page/macros/user_pw_input; |
paul@0 | 57 | confirm_input templates/page/macros/user_confirm_input; |
paul@0 | 58 | edit_ok context/is_edit_ok; |
paul@0 | 59 | "> |
paul@0 | 60 | <tr tal:define="name string:realname; label string:Name; value context/realname; edit_ok edit_ok"> |
paul@0 | 61 | <th metal:use-macro="th_label">Name</th> |
paul@0 | 62 | <td><input name="realname" metal:use-macro="src_input"></td> |
paul@0 | 63 | </tr> |
paul@0 | 64 | <tr tal:define="name string:username; label string:Login Name; value context/username"> |
paul@0 | 65 | <th metal:use-macro="th_label">Login Name</th> |
paul@0 | 66 | <td><input metal:use-macro="src_input"></td> |
paul@0 | 67 | </tr> |
paul@0 | 68 | <tal:if condition="edit_ok"> |
paul@0 | 69 | <tr tal:define="name string:password; label string:Login Password"> |
paul@0 | 70 | <th metal:use-macro="th_label">Login Password</th> |
paul@0 | 71 | <td><input metal:use-macro="pw_input" type="password"></td> |
paul@0 | 72 | </tr> |
paul@0 | 73 | <tr tal:define="name string:password; label string:Confirm Password"> |
paul@0 | 74 | <th metal:use-macro="th_label">Confirm Password</th> |
paul@0 | 75 | <td><input metal:use-macro="confirm_input" type="password"></td> |
paul@0 | 76 | </tr> |
paul@0 | 77 | </tal:if> |
paul@0 | 78 | <tal:if condition="python:request.user.hasPermission('Web Roles')"> |
paul@0 | 79 | <tr tal:define="name string:roles; label string:Roles;"> |
paul@0 | 80 | <th><label for="roles" i18n:translate="">Roles</label></th> |
paul@0 | 81 | <td tal:define="gips context/id"> |
paul@0 | 82 | <tal:subif condition=gips define="value context/roles"> |
paul@0 | 83 | <input metal:use-macro="normal_input"> |
paul@0 | 84 | </tal:subif> |
paul@0 | 85 | <tal:subif condition="not:gips" define="value db/config/NEW_WEB_USER_ROLES"> |
paul@0 | 86 | <input metal:use-macro="normal_input"> |
paul@0 | 87 | </tal:subif> |
paul@0 | 88 | <tal:block i18n:translate="">(to give the user more than one role, |
paul@0 | 89 | enter a comma,separated,list)</tal:block> |
paul@0 | 90 | </td> |
paul@0 | 91 | </tr> |
paul@0 | 92 | </tal:if> |
paul@0 | 93 | |
paul@0 | 94 | <tr tal:define="name string:phone; label string:Phone; value context/phone"> |
paul@0 | 95 | <th metal:use-macro="th_label">Phone</th> |
paul@0 | 96 | <td><input name="phone" metal:use-macro="normal_input"></td> |
paul@0 | 97 | </tr> |
paul@0 | 98 | |
paul@0 | 99 | <tr tal:define="name string:organisation; label string:Organisation; value context/organisation"> |
paul@0 | 100 | <th metal:use-macro="th_label">Organisation</th> |
paul@0 | 101 | <td><input name="organisation" metal:use-macro="normal_input"></td> |
paul@0 | 102 | </tr> |
paul@0 | 103 | |
paul@0 | 104 | <tr tal:condition="python:edit_ok or context.timezone" |
paul@0 | 105 | tal:define="name string:timezone; label string:Timezone; value context/timezone"> |
paul@0 | 106 | <th metal:use-macro="th_label">Timezone</th> |
paul@0 | 107 | <td><input name="timezone" metal:use-macro="normal_input"> |
paul@0 | 108 | <tal:block tal:condition="edit_ok" i18n:translate="">(this is a numeric hour offset, the default is |
paul@0 | 109 | <span tal:replace="db/config/DEFAULT_TIMEZONE" i18n:name="zone" |
paul@0 | 110 | />)</tal:block> |
paul@0 | 111 | </td> |
paul@0 | 112 | </tr> |
paul@0 | 113 | |
paul@0 | 114 | <tr tal:define="name string:address; label string:E-mail address; value context/address"> |
paul@0 | 115 | <th metal:use-macro="th_label">E-mail address</th> |
paul@0 | 116 | <td tal:define="mailto python:context.address.field(id='address'); |
paul@0 | 117 | mklink python:mailto and not edit_ok"> |
paul@0 | 118 | <a href="mailto:calvin@the-z.org" |
paul@0 | 119 | tal:attributes="href string:mailto:$value" |
paul@0 | 120 | tal:content="value" |
paul@0 | 121 | tal:condition="python:mklink">calvin@the-z.org</a> |
paul@0 | 122 | <tal:if condition=edit_ok> |
paul@0 | 123 | <input metal:use-macro="src_input" value="calvin@the-z.org"> |
paul@0 | 124 | </tal:if> |
paul@0 | 125 | |
paul@0 | 126 | </td> |
paul@0 | 127 | </tr> |
paul@0 | 128 | |
paul@0 | 129 | <tr> |
paul@0 | 130 | <th><label for="alternate_addresses" i18n:translate="">Alternate E-mail addresses<br>One address per line</label></th> |
paul@0 | 131 | <td> |
paul@0 | 132 | <textarea rows=5 cols=40 tal:replace="structure context/alternate_addresses/multiline">nobody@nowhere.org |
paul@0 | 133 | anybody@everywhere.net |
paul@0 | 134 | (alternate_addresses) |
paul@0 | 135 | </textarea> |
paul@0 | 136 | </td> |
paul@0 | 137 | </tr> |
paul@0 | 138 | |
paul@0 | 139 | <tr tal:condition="edit_ok"> |
paul@0 | 140 | <td> |
paul@0 | 141 | |
paul@0 | 142 | <input type="hidden" name="@template" value="item"> |
paul@0 | 143 | <input type="hidden" name="@required" value="username,address" |
paul@0 | 144 | tal:attributes="value python:','.join(required)"> |
paul@0 | 145 | </td> |
paul@0 | 146 | <td><input type="submit" value="save" tal:replace="structure context/submit"><!--submit button here--> |
paul@0 | 147 | <input type=reset> |
paul@0 | 148 | </td> |
paul@0 | 149 | </tr> |
paul@0 | 150 | </table> |
paul@0 | 151 | </form> |
paul@0 | 152 | |
paul@0 | 153 | <tal:block tal:condition="not:context/id" i18n:translate=""> |
paul@0 | 154 | <table class="form"> |
paul@0 | 155 | <tr> |
paul@0 | 156 | <td>Note: </td> |
paul@0 | 157 | <th class="required">highlighted</th> |
paul@0 | 158 | <td> fields are required.</td> |
paul@0 | 159 | </tr> |
paul@0 | 160 | </table> |
paul@0 | 161 | </tal:block> |
paul@0 | 162 | |
paul@0 | 163 | <tal:block tal:condition="context/id" tal:replace="structure context/history" /> |
paul@0 | 164 | |
paul@0 | 165 | </div> |
paul@0 | 166 | |
paul@0 | 167 | </td> |
paul@0 | 168 | |
paul@0 | 169 | </tal:doc> |