[1084] | 1 | <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" |
---|
| 2 | xmlns:tal="http://xml.zope.org/namespaces/tal" |
---|
| 3 | xmlns:metal="http://xml.zope.org/namespaces/metal" |
---|
| 4 | xmlns:i18n="http://xml.zope.org/namespaces/i18n" |
---|
| 5 | lang="en" |
---|
| 6 | metal:use-macro="here/main_template/macros/master" |
---|
| 7 | i18n:domain="plone"> |
---|
| 8 | |
---|
| 9 | <head> |
---|
| 10 | <metal:block fill-slot="top_slot" |
---|
| 11 | tal:define="dummy python:request.set('disable_border',1)" /> |
---|
| 12 | <metal:block fill-slot="column_one_slot" /> |
---|
| 13 | <metal:block fill-slot="column_two_slot" /> |
---|
| 14 | </head> |
---|
| 15 | |
---|
| 16 | <body> |
---|
| 17 | |
---|
| 18 | <div metal:fill-slot="main" |
---|
| 19 | tal:define="errors options/state/getErrors; |
---|
| 20 | mailhost context/MailHost/smtp_host|nothing; |
---|
| 21 | mailfrom context/email_from_address|nothing; |
---|
| 22 | site_properties context/portal_properties/site_properties; |
---|
| 23 | allowEnterPassword not:utool/getPortalObject/validate_email|nothing; |
---|
| 24 | mailpw site_properties/validate_email; |
---|
| 25 | mailconfigured python:allowEnterPassword or (mailhost and mailfrom)"> |
---|
| 26 | |
---|
| 27 | <h1 class="documentFirstHeading" |
---|
| 28 | i18n:translate="heading_registration_form">Registration Form</h1> |
---|
| 29 | |
---|
| 30 | |
---|
| 31 | <div tal:condition="not:mailconfigured"> |
---|
| 32 | <p i18n:translate="no_join_without_configured_mail"> |
---|
| 33 | This site has not configured its email settings. Until email has |
---|
| 34 | been configured it is not possible to create an account. |
---|
| 35 | </p> |
---|
| 36 | </div> |
---|
| 37 | <form action="" |
---|
| 38 | class="enableAutoFocus enableUnloadProtection" |
---|
| 39 | method="post" |
---|
| 40 | tal:condition="mailconfigured" |
---|
| 41 | tal:define="allowEnterPassword site_properties/validate_email|nothing;" |
---|
| 42 | tal:attributes="action template_id" > |
---|
| 43 | |
---|
| 44 | <fieldset> |
---|
| 45 | |
---|
| 46 | <legend i18n:translate="legend_personal_details"> |
---|
| 47 | Personal Details |
---|
| 48 | </legend> |
---|
| 49 | |
---|
| 50 | <input type="hidden" name="came_from" value="" |
---|
| 51 | tal:condition="request/came_from|nothing" |
---|
| 52 | tal:attributes="value request/came_from" /> |
---|
| 53 | <input type="hidden" name="last_visit:date" value="ZopeTime" |
---|
| 54 | tal:attributes="value here/ZopeTime" /> |
---|
| 55 | <input type="hidden" name="prev_visit:date" value="ZopeTime" |
---|
| 56 | tal:attributes="value here/ZopeTime" /> |
---|
| 57 | <input type="hidden" name="came_from_prefs" value="" |
---|
| 58 | tal:attributes="value request/came_from_prefs|nothing" /> |
---|
| 59 | |
---|
| 60 | <div class="row" |
---|
| 61 | tal:define="error errors/fullname| nothing; |
---|
| 62 | fullname request/fullname | nothing;" |
---|
| 63 | tal:attributes="class python:test(error, 'field error', 'field')"> |
---|
| 64 | |
---|
| 65 | <label for="fullname" |
---|
| 66 | i18n:translate="label_full_name">Full Name</label> |
---|
| 67 | |
---|
| 68 | <div class="formHelp" i18n:translate="help_full_name_creation"> |
---|
| 69 | Enter full name, eg. John Smith. |
---|
| 70 | </div> |
---|
| 71 | |
---|
| 72 | <div tal:content="error">Validation error output</div> |
---|
| 73 | |
---|
| 74 | <input type="text" |
---|
| 75 | name="fullname" |
---|
| 76 | id="fullname" |
---|
| 77 | size="30" |
---|
| 78 | value="fullname" |
---|
| 79 | tal:attributes="value fullname;" |
---|
| 80 | /> |
---|
| 81 | |
---|
| 82 | </div> |
---|
| 83 | |
---|
| 84 | <div class="field" |
---|
| 85 | tal:define="error errors/username| nothing; |
---|
| 86 | username request/username | nothing;" |
---|
| 87 | tal:attributes="class python:test(error, 'field error', 'field')"> |
---|
| 88 | |
---|
| 89 | <label for="username" |
---|
| 90 | i18n:translate="label_user_name">User Name</label> |
---|
| 91 | |
---|
| 92 | <span class="fieldRequired" title="Required" |
---|
| 93 | i18n:attributes="title title_required;" |
---|
| 94 | i18n:translate="label_required">(Required)</span> |
---|
| 95 | |
---|
| 96 | <div i18n:translate="help_user_name_creation_casesensitive" |
---|
| 97 | class="formHelp"> |
---|
| 98 | Enter a user name, usually something like |
---|
| 99 | 'jsmith'. No spaces or special characters. |
---|
| 100 | Usernames and passwords are case sensitive, |
---|
| 101 | make sure the caps lock key is not enabled. |
---|
| 102 | This is the name used to log in. |
---|
| 103 | </div> |
---|
| 104 | |
---|
| 105 | <div tal:content="error">Validation error output</div> |
---|
| 106 | |
---|
| 107 | <input type="text" |
---|
| 108 | name="username" |
---|
| 109 | id="username" |
---|
| 110 | size="30" |
---|
| 111 | value="username" |
---|
| 112 | tal:attributes="value username;" |
---|
| 113 | /> |
---|
| 114 | </div> |
---|
| 115 | |
---|
| 116 | <div class="field" |
---|
| 117 | tal:define="error errors/email | nothing; |
---|
| 118 | email request/email | nothing;" |
---|
| 119 | tal:attributes="class python:test(error, 'field error', 'field')"> |
---|
| 120 | |
---|
| 121 | <label for="email" |
---|
| 122 | i18n:translate="label_email">E-mail</label> |
---|
| 123 | |
---|
| 124 | <span class="fieldRequired" title="Required" |
---|
| 125 | i18n:attributes="title title_required;" |
---|
| 126 | i18n:translate="label_required">(Required)</span> |
---|
| 127 | |
---|
| 128 | <div class="formHelp" i18n:translate="help_email_creation"> |
---|
| 129 | Enter an email address. This is necessary in case the password |
---|
| 130 | is lost. We respect your privacy, and will not give the address |
---|
| 131 | away to any third parties or expose it anywhere. |
---|
| 132 | </div> |
---|
| 133 | |
---|
| 134 | <div tal:content="error">Validation error output</div> |
---|
| 135 | |
---|
| 136 | <input type="text" |
---|
| 137 | name="email" |
---|
| 138 | id="email" |
---|
| 139 | size="30" |
---|
| 140 | tal:attributes="value email;" |
---|
| 141 | /> |
---|
| 142 | </div> |
---|
| 143 | |
---|
| 144 | |
---|
| 145 | <div class="field" |
---|
| 146 | tal:condition="not: allowEnterPassword" |
---|
| 147 | tal:define="error errors/password | nothing; |
---|
| 148 | password request/password | nothing;" |
---|
| 149 | tal:attributes="class python:test(error, 'field error', 'field')"> |
---|
| 150 | |
---|
| 151 | <label for="password" |
---|
| 152 | i18n:translate="label_password">Password</label> |
---|
| 153 | |
---|
| 154 | <span class="fieldRequired" title="Required" |
---|
| 155 | i18n:attributes="title title_required;" |
---|
| 156 | i18n:translate="label_required">(Required)</span> |
---|
| 157 | |
---|
| 158 | <div class="formHelp" i18n:translate="help_password_creation"> |
---|
| 159 | Minimum 5 characters. |
---|
| 160 | </div> |
---|
| 161 | |
---|
| 162 | <div tal:content="error">Validation error output</div> |
---|
| 163 | |
---|
| 164 | <input type="password" |
---|
| 165 | name="password" |
---|
| 166 | id="password" |
---|
| 167 | size="10" |
---|
| 168 | value="" |
---|
| 169 | /> |
---|
| 170 | </div> |
---|
| 171 | |
---|
| 172 | <div class="field" |
---|
| 173 | tal:condition="not: allowEnterPassword" |
---|
| 174 | tal:define="error errors/password_confirm | nothing; |
---|
| 175 | password_confirm request/password_confirm | nothing;" |
---|
| 176 | tal:attributes="class python:test(error, 'field error', 'field')"> |
---|
| 177 | |
---|
| 178 | |
---|
| 179 | <label for="password_confirm" |
---|
| 180 | i18n:translate="label_confirm_password">Confirm password</label> |
---|
| 181 | |
---|
| 182 | <span class="fieldRequired" title="Required" |
---|
| 183 | i18n:attributes="title title_required;" |
---|
| 184 | i18n:translate="label_required">(Required)</span> |
---|
| 185 | |
---|
| 186 | <div class="formHelp" i18n:translate="help_confirm_password"> |
---|
| 187 | Re-enter the password. Make sure the passwords are identical. |
---|
| 188 | </div> |
---|
| 189 | |
---|
| 190 | <div tal:content="error">Validation error output</div> |
---|
| 191 | |
---|
| 192 | <input type="password" |
---|
| 193 | name="password_confirm" |
---|
| 194 | id="password_confirm" |
---|
| 195 | size="10" |
---|
| 196 | value="" |
---|
| 197 | /> |
---|
| 198 | </div> |
---|
| 199 | |
---|
| 200 | <div class="field" |
---|
| 201 | tal:condition="not: allowEnterPassword" |
---|
| 202 | tal:define="mail_me request/mail_me|nothing"> |
---|
| 203 | |
---|
| 204 | <input type="checkbox" |
---|
| 205 | class="noborder" |
---|
| 206 | name="mail_me" |
---|
| 207 | size="30" |
---|
| 208 | id="cb_mailme" |
---|
| 209 | tal:attributes="checked python:test(mail_me, 'checked', None);" |
---|
| 210 | /> |
---|
| 211 | <label for="cb_mailme" i18n:translate="label_mail_password">Send a mail with the password</label> |
---|
| 212 | </div> |
---|
| 213 | |
---|
| 214 | <div class="field" |
---|
| 215 | tal:condition="allowEnterPassword"> |
---|
| 216 | |
---|
| 217 | <div class="formHelp" i18n:translate="label_password_change_mail"> |
---|
| 218 | A URL will be generated and e-mailed to you; follow the link |
---|
| 219 | to reach a page where you can change your password and |
---|
| 220 | complete the registration process. |
---|
| 221 | </div> |
---|
| 222 | </div> |
---|
| 223 | <div metal:use-macro="here/captcha_widget/macros/captcha"></div> |
---|
| 224 | <div class="formControls"> |
---|
| 225 | <input class="context" |
---|
| 226 | type="submit" |
---|
| 227 | name="form.button.Register" |
---|
| 228 | value="Register" |
---|
| 229 | i18n:attributes="value label_register;" /> |
---|
| 230 | </div> |
---|
| 231 | |
---|
| 232 | </fieldset> |
---|
| 233 | |
---|
| 234 | <input type="hidden" name="form.submitted" value="1" /> |
---|
| 235 | |
---|
| 236 | <input tal:replace="structure context/@@authenticator/authenticator|nothing" /> |
---|
| 237 | |
---|
| 238 | </form> |
---|
| 239 | </div> |
---|
| 240 | |
---|
| 241 | </body> |
---|
| 242 | </html> |
---|