Tidy up login reporting.
authorrjk@greenend.org.uk <>
Mon, 31 Dec 2007 09:54:21 +0000 (09:54 +0000)
committerrjk@greenend.org.uk <>
Mon, 31 Dec 2007 09:54:21 +0000 (09:54 +0000)
The various login-page actions now set the label 'status' to their
result and this is used to pick the right label for the response text.

The interpretation of 'back' is fixed too.

server/dcgi.c
templates/login.html
templates/options.labels

index d54160e..27c77b1 100644 (file)
@@ -477,7 +477,8 @@ static void act_login(cgi_sink *output,
   }
   /* We have a new cookie */
   header_cookie(output->sink);
-  if((back = cgi_get("back")) && back)
+  cgi_set_option("status", "loginok");
+  if((back = cgi_get("back")) && *back)
     /* Redirect back to somewhere or other */
     redirect(output->sink);
   else
@@ -492,6 +493,7 @@ static void act_logout(cgi_sink *output,
   /* Reconnect as guest */
   disorder_cgi_login(ds, output);
   /* Back to the login page */
+  cgi_set_option("status", "logoutok");
   expand_template(ds, output, "login");
 }
 
@@ -545,7 +547,7 @@ static void act_register(cgi_sink *output,
   sendmail("", config->mail_sender, email, "Welcome to DisOrder",
           encoding, content_type, text); /* TODO error checking  */
   /* We'll go back to the login page with a suitable message */
-  cgi_set_option("registered", "registeredok");
+  cgi_set_option("status", "registered");
   expand_template(ds, output, "login");
 }
 
@@ -561,7 +563,7 @@ static void act_confirm(cgi_sink *output,
     cgi_set_option("error", "badconfirm");
     expand_template(ds, output, "login");
   }
-  cgi_set_option("confirmed", "confirmedok");
+  cgi_set_option("status", "confirmed");
   expand_template(ds, output, "login");
 }
 
index 8f366bb..65f1939 100644 (file)
@@ -33,12 +33,12 @@ USA
    <p>@label{error.@label:error@}@</p>
    }@
 
-   @if{@ne{@label:registered@}{registered}@}{
-   @#{registration succeeded}@
-   <p>@label:login.registered@</p>
+   @if{@ne{@label:status@}{status}@}{
+   @#{some action succeeded}@
+   <p class=loginstatus>@label{login.@label:status@}@</p>
    }@
 
-  <!-- TODO report success of confirmation -->
+  <p>User: @user@</p>
 
    @if{@eq{@user@}{guest}@}{
    @#{guest user, allow login and registration}@
@@ -101,7 +101,7 @@ USA
                     size=32></td>
          <td>
            <button class=register name=action type=submit value=register>
-             @label:login.login@
+             @label:login.register@
            </button>
          </td>
        </tr>
index 249d6ae..b62a918 100644 (file)
@@ -144,7 +144,12 @@ label      login.email             "Email address"
 label  login.login             "Login"
 label  login.register          "Register"
 label  login.edituser          "Change Details"
-label  login.lougout           "Logout"
+label  login.logout            "Logout"
+
+label  login.loginok           "Logged in OK"
+label  login.logoutok          "Logged out OK"
+label  login.registered        "Registered your new login"
+label  login.confirmed         "Confirmed your new login"
 
 # <TITLE> for account page
 label  account.title           "DisOrder User Details"