chiark / gitweb /
Never use the value attribute of <button> to encode anything we care
[disorder] / templates / login.html
index 9119a5f8a316c327a6dc0c0b75b4b2b090c4871d..21c7ddf05e947970591fb087258495005af06354 100644 (file)
@@ -24,18 +24,21 @@ USA
   <title>@label:login.title@</title>
  </head>
  <body>
-@include{@label{menu}@}@
+@include{topbar}@
    <h1 class=title>@label:login.title@</h1>
 
    @if{@ne{@label:error@}{error}@}{
    @#{error reporting from some earlier operation}@
-   <!-- TODO make error string visually intrusive, also error.html -->
-   <p>@label{error.@label:error@}@</p>
+   <div class=error>
+     <p class=error>@label{error.@label:error@}@</p>
+   </div>
    }@
 
-   @if{@ne{@label:registered@}{registered}@}{
-   @#{registration succeeded}@
-   <p>@label:login.registered@</p>
+   @if{@ne{@label:status@}{status}@}{
+   @#{some action succeeded}@
+   <div class=loginstatus>
+     <p class=loginstatus>@label{login.@label:status@}@</p>
+   </div>
    }@
 
    @if{@eq{@user@}{guest}@}{
@@ -50,27 +53,31 @@ USA
        <tr>
          <td>@label:login.username@</td>
          <td>
-           <input class=username name=username type=text value="@arg:username@" size=32>
+           <input class=username name=username type=text size=32
+                 value="@arg:username@">
          </td>
        </tr>
        <tr>
          <td>@label:login.password@</td>
-         <td><input class=password name=password type=password value=""
-                    size=32></td>
          <td>
-           <button class=login name=action type=submit value=login>
+           <input class=password name=password type=password value=""
+                  size=32>
+         </td>
+       </tr>
+       <tr>
+         <td>
+           <button class=login name=button type=submit>
              @label:login.login@
            </button>
          </td>
        </tr>
      </table>
+     <input name=action type=hidden value=login>
      <input name=nonce type=hidden value="@nonce@">
      <input name=back type=hidden value="@arg:back@">
    </form>
 
-   <!-- TODO disable registration button if guest doesn't have
-   register right -->
-
+   @right{register}{
    <h2>New Users</h2>
 
    <p>If you do not have a login enter a username, a password and your
@@ -84,75 +91,106 @@ USA
        <tr>
          <td>@label:login.username@</td>
          <td>
-           <input class=username name=username type=text value="" size=32>
+           <input class=username name=username type=text size=32
+                 value="">
          </td>
+         <td class=extra>@label:login.registerusernameextra@</td>
        </tr>
        <tr>
          <td>@label:login.email@</td>
          <td>
-           <input class=email name=email type=text value="" size=32>
+           <input class=email name=email type=text size=32
+                  value="">
          </td>
+         <td class=extra>@label:login.registeremailextra@</td>
        </tr>
        <tr>
-         <td>@label:login.password@</td>
-         <td><input class=password name=changepassword type=password value=""
-                    size=32></td>
+         <td>@label:login.password1@</td>
          <td>
-           <button class=register name=action type=submit value=register>
-             @label:login.login@
+           <input class=password name=password1 type=password size=32
+                 value="">
+         </td>
+         <td class=extra>@label:login.registerpassword1extra@</td>
+       </tr>
+       <tr>
+         <td>@label:login.password2@</td>
+         <td>
+           <input class=password name=password2 type=password size=32
+                 value="">
+         </td>
+         <td class=extra>@label:login.registerpassword2extra@</td>
+       </tr>
+       <tr>
+         <td>
+           <button class=register name=button>
+             @label:login.register@
            </button>
          </td>
        </tr>
      </table>
+     <input name=action type=hidden value=register>
      <input name=nonce type=hidden value="@nonce@">
-   </form>
+   </form>}@
    }{
    @#{not the guest user, allow change of details and logout}@
 
    <h2>Logged in as @user@</h2>
 
-   <p>TODO none of this stuff works yet</p>
+   <form class=logout action="@url@" method=POST
+         enctype="multipart/form-data" accept-charset=utf-8>
+     <div class=logout>
+       <button class=logout name=submit type=submit>
+         @label:login.logout@
+       </button>
+     </div>
+     <input name=action type=hidden value=logout>
+     <input name=nonce type=hidden value="@nonce@">
+   </form>
 
    <p>Use this form to change your email address and/or password.</p>
 
-   <form class=register action="@url@" method=POST
+   <form class=edituser action="@url@" method=POST
          enctype="multipart/form-data" accept-charset=utf-8>
      <table class=edituser>
        <tr>
          <td>@label:login.email@</td>
          <td>
-           <input class=email name=email type=text value="TODO" size=32>
+           <input class=email name=email type=text size=32
+                 value="@userinfo:email@">
          </td>
+         <td class=extra>@label:login.edituseremailextra@</td>
+       </tr>
+       <tr>
+         <td>@label:login.newpassword@</td>
+         <td>
+           <input class=password name=changepassword1 type=password size=32
+                 value="">
+         </td>
+         <td class=extra>@label:login.edituserpassword1extra@</td>
+       </tr>
+       <tr>
+         <td>@label:login.newpassword@</td>
+         <td>
+           <input class=password name=changepassword2 type=password size=32
+                 value="">
+         </td>
+         <td class=extra>@label:login.edituserpassword2extra@</td>
        </tr>
        <tr>
-         <td>@label:login.password@</td>
-         <td><input class=password name=password type=password value=""
-                    size=32></td>
          <td>
-           <button class=edituser name=action type=submit value=edituser>
+           <button class=edituser name=submit type=submit>
              @label:login.edituser@
            </button>
          </td>
        </tr>
      </table>
-     <input name=nonce type=hidden value="@nonce@">
-   </form>
-
-   <p>Use this button to log out @user@.</p>
-
-   <form class=register action="@url@" method=POST
-         enctype="multipart/form-data" accept-charset=utf-8>
-     <div class=logout>
-       <button class=logout name=action type=submit value=logout>
-         @label:login.logout@
-       </button>
-     </div>
+     <input name=action type=hidden value=edituser>
      <input name=nonce type=hidden value="@nonce@">
    </form>
 
    }@
 
-@include{@label{menu}@end}@
+@include{topbarend}@
  </body>
 </html>
 @@