diff options
author | Matthew Somerville <matthew@mysociety.org> | 2011-06-29 10:46:34 +0100 |
---|---|---|
committer | Matthew Somerville <matthew@mysociety.org> | 2011-06-29 22:40:21 +0100 |
commit | ba55bd341e99c674619ac6295526038b5770fe3e (patch) | |
tree | d6b7287a854fbe6454b33dd08e6bd96bb13e436c | |
parent | d6d8dc4e0080e3184751cf381bbd14581c970c62 (diff) |
Get cookie expiry to work, and correct IDs on checkboxes.
-rw-r--r-- | perllib/Catalyst/Plugin/Session/State/Cookie.pm | 2 | ||||
-rw-r--r-- | perllib/FixMyStreet/App/Controller/Auth.pm | 6 | ||||
-rw-r--r-- | t/app/controller/auth.t | 8 | ||||
-rw-r--r-- | templates/web/default/auth/general.html | 2 | ||||
-rw-r--r-- | templates/web/default/report/display.html | 2 | ||||
-rw-r--r-- | templates/web/default/report/new/fill_in_details.html | 2 |
6 files changed, 13 insertions, 9 deletions
diff --git a/perllib/Catalyst/Plugin/Session/State/Cookie.pm b/perllib/Catalyst/Plugin/Session/State/Cookie.pm index 7ffc77f1f..c4b61123b 100644 --- a/perllib/Catalyst/Plugin/Session/State/Cookie.pm +++ b/perllib/Catalyst/Plugin/Session/State/Cookie.pm @@ -127,6 +127,8 @@ sub set_session_cookie_expire { else { delete $c->session->{__cookie_expires}; } + # Force the cookie to be regenerated + $c->set_session_id( $c->sessionid ); return 1; } diff --git a/perllib/FixMyStreet/App/Controller/Auth.pm b/perllib/FixMyStreet/App/Controller/Auth.pm index 8aed746ec..ebb3510d0 100644 --- a/perllib/FixMyStreet/App/Controller/Auth.pm +++ b/perllib/FixMyStreet/App/Controller/Auth.pm @@ -71,7 +71,11 @@ sub sign_in : Private { return 1; } - $c->stash->{sign_in_error} = 1; + $c->stash( + sign_in_error => 1, + email => $email, + remember_me => $remember_me, + ); return; } diff --git a/t/app/controller/auth.t b/t/app/controller/auth.t index 1a16457f9..fef45ac90 100644 --- a/t/app/controller/auth.t +++ b/t/app/controller/auth.t @@ -197,12 +197,10 @@ foreach my $remember_me ( '1', '0' ) { ); is $mech->uri->path, '/my', "redirected to correct page"; - # check that the cookie has no expiry set my $expiry = $mech->session_cookie_expiry; - is( $expiry, 0, "no expiry time" ); - #$remember_me - # ? cmp_ok( $expiry, '>', 86400, "long expiry time" ) - # : is( $expiry, 0, "no expiry time" ); + $remember_me + ? cmp_ok( $expiry, '>', 86400, "long expiry time" ) + : is( $expiry, 0, "no expiry time" ); # logout $mech->log_out_ok; diff --git a/templates/web/default/auth/general.html b/templates/web/default/auth/general.html index ffc85b3dc..5f9a09199 100644 --- a/templates/web/default/auth/general.html +++ b/templates/web/default/auth/general.html @@ -39,7 +39,7 @@ </p> <p> - <input type="checkbox" name="remember_me" value='1'[% ' checked' IF remember_me %]> + <input type="checkbox" id="remember_me" name="remember_me" value='1'[% ' checked' IF remember_me %]> <label class="n" for="remember_me"> [% loc('Keep me signed in on this computer') %] </label> diff --git a/templates/web/default/report/display.html b/templates/web/default/report/display.html index 7dcb92288..4948f8808 100644 --- a/templates/web/default/report/display.html +++ b/templates/web/default/report/display.html @@ -144,7 +144,7 @@ </p> <p> - <input type="checkbox" name="remember_me" value='1'[% ' checked' IF remember_me %]> + <input type="checkbox" id="remember_me" name="remember_me" value='1'[% ' checked' IF remember_me %]> <label class="n" for="remember_me"> [% loc('Keep me signed in on this computer') %] </label> diff --git a/templates/web/default/report/new/fill_in_details.html b/templates/web/default/report/new/fill_in_details.html index 68443770d..32d4a733b 100644 --- a/templates/web/default/report/new/fill_in_details.html +++ b/templates/web/default/report/new/fill_in_details.html @@ -159,7 +159,7 @@ </p> <p> - <input type="checkbox" name="remember_me" value='1'[% ' checked' IF remember_me %]> + <input type="checkbox" id="remember_me" name="remember_me" value='1'[% ' checked' IF remember_me %]> <label class="n" for="remember_me"> [% loc('Keep me signed in on this computer') %] </label> |