source: OpenWorkouts-current/ow/templates/signup.pt @ 1d92bf2

currentfeature/docs
Last change on this file since 1d92bf2 was 1d92bf2, checked in by borja <borja@…>, 5 years ago

(#37) Allow login using email address instead of username:

  • Use user uids as keys in the root folder for referencing user objects (instead of username)
  • Use uids for referencing users all over the place (auth, permissions, traversal urls, etc)
  • Replaced the username concept with nickname. This nickname will be used as a shortcut to access "public profile" pages for users
  • Reworked lots of basic methods in the OpenWorkouts root object (s/username/nickname, marked as properties some methods like users, emails, etc)
  • Added new add_user() and delete_user() helpers to the OpenWorkouts root object
  • Fixed bug in the dashboard redirect view, causing an endless loop if an authenticated user does not exist anymore when loading a page.
  • Lots of tests fixes, adaptations and catch up.
  • Property mode set to 100644
File size: 2.5 KB
Line 
1<html xmlns="http://www.w3.org/1999/xhtml"
2      xml:lang="en"
3      xmlns:tal="http://xml.zope.org/namespaces/tal"
4      xmlns:metal="http://xml.zope.org/namespaces/metal"
5      xmlns:i18n="http://xml.zope.org/namespaces/i18n"
6      i18n:domain="OpenWorkouts"
7      metal:use-macro="load: base_anonymous.pt"
8      tal:attributes="lang request.locale_name">
9
10  <metal:content metal:fill-slot="content">
11
12      <!-- Login -->
13
14      <div class="signup-content">
15
16        <form method="post" name="signup" action="">
17
18          <fieldset>
19            <div>
20              ${form.errorlist('email')}
21              <label for="email" i18n:translate="">Email</label>
22              <input placeholder="We need a valid email address"
23                     type="text" name="email"
24                     value="" i18n:attributes="placeholder">
25            </div>
26            <div>
27              ${form.errorlist('nickname')}
28              <label for="nickname" i18n:translate="">Nickname</label>
29              <input placeholder="Choose a cool nickname" type="text"
30                     name="nickname" value="" i18n:attributes="placeholder">
31            </div>
32            <div>
33              ${form.errorlist('firstname')}
34              <label for="firstname" i18n:translate="">First name</label>
35              <input placeholder="Your real first name here" type="text"
36                     name="firstname" value="" i18n:attributes="placeholder">
37            </div>
38            <div>
39              ${form.errorlist('lastname')}
40              <label for="lastname" i18n:translate="">Last name</label>
41              <input placeholder="Your family name here" type="text"
42                     name="lastname" value="" i18n:attributes="placeholder">
43            </div>
44            <div>
45              ${form.errorlist('password')}
46              <label for="password" i18n:translate="">Password</label>
47              <input placeholder="More than 9 characters, numbers and/or symbols"
48                     name="password"
49                     type="password" i18n:attributes="placeholder">
50            </div>
51            <div>
52              ${form.errorlist('password_confirm')}
53              <label for="password_confirm" i18n:translate="">Password (confirm)</label>
54              <input placeholder="Confirm your password" name="password_confirm"
55                     type="password" i18n:attributes="placeholder">
56            </div>
57          </fieldset>
58
59          <input class="button" type="submit" name="submit" value="Sign up!">
60
61        </form>
62
63      </div>
64
65  </metal:content>
66
67</html>
Note: See TracBrowser for help on using the repository browser.