forked from lix-project/hydra
Fix legacy login
This commit is contained in:
parent
9aa44fa944
commit
1db9381473
|
@ -58,19 +58,10 @@ sub logout :Local :Args(0) :ActionClass('REST::ForBrowsers') { }
|
||||||
|
|
||||||
sub logout_POST {
|
sub logout_POST {
|
||||||
my ($self, $c) = @_;
|
my ($self, $c) = @_;
|
||||||
|
$c->flash->{flashMsg} = "You are no longer signed in." if $c->user_exists();
|
||||||
$c->logout;
|
$c->logout;
|
||||||
if ($c->request->looks_like_browser) {
|
|
||||||
$c->response->redirect($c->request->referer || $c->uri_for('/'));
|
|
||||||
} else {
|
|
||||||
$self->status_no_content($c);
|
$self->status_no_content($c);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
sub logout_GET {
|
|
||||||
# Probably a better way to do this
|
|
||||||
my ($self, $c) = @_;
|
|
||||||
logout_POST($self, $c);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
sub persona_login :Path('/persona-login') Args(0) {
|
sub persona_login :Path('/persona-login') Args(0) {
|
||||||
|
@ -107,16 +98,7 @@ sub persona_login :Path('/persona-login') Args(0) {
|
||||||
$c->set_authenticated($user);
|
$c->set_authenticated($user);
|
||||||
|
|
||||||
$c->stash->{json}->{result} = "ok";
|
$c->stash->{json}->{result} = "ok";
|
||||||
$c->flash->{successMsg} = "You are now signed in as <tt>" . encode_entities($email) . "</tt>";
|
$c->flash->{successMsg} = "You are now signed in as <tt>" . encode_entities($email) . "</tt>.";
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
sub persona_logout :Path('/persona-logout') Args(0) {
|
|
||||||
my ($self, $c) = @_;
|
|
||||||
$c->stash->{json} = {};
|
|
||||||
requirePost($c);
|
|
||||||
$c->flash->{flashMsg} = "You are no longer signed in." if $c->user_exists();
|
|
||||||
$c->logout;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -102,6 +102,21 @@
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
function doLogout() {
|
||||||
|
$.post("[% c.uri_for('/logout') %]")
|
||||||
|
.done(function(data) {
|
||||||
|
window.location.reload();
|
||||||
|
})
|
||||||
|
.fail(function() { bootbox.alert("Server request failed!"); });
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
[% IF c.user_exists && c.user.password != '!' %]
|
||||||
|
<script>
|
||||||
|
$("#persona-signout").click(doLogout);
|
||||||
|
</script>
|
||||||
|
[% ELSE %]
|
||||||
<script src="https://login.persona.org/include.js"></script>
|
<script src="https://login.persona.org/include.js"></script>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
|
@ -117,13 +132,7 @@
|
||||||
})
|
})
|
||||||
.fail(function() { bootbox.alert("Server request failed!"); });
|
.fail(function() { bootbox.alert("Server request failed!"); });
|
||||||
},
|
},
|
||||||
onlogout: function() {
|
onlogout: doLogout
|
||||||
$.post("[% c.uri_for('/persona-logout') %]")
|
|
||||||
.done(function(data) {
|
|
||||||
window.location.reload();
|
|
||||||
})
|
|
||||||
.fail(function() { bootbox.alert("Server request failed!"); });
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
|
|
||||||
$("#persona-signin").click(function() {
|
$("#persona-signin").click(function() {
|
||||||
|
@ -134,6 +143,7 @@
|
||||||
navigator.id.logout();
|
navigator.id.logout();
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
|
[% END %]
|
||||||
|
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
|
|
|
@ -2,9 +2,8 @@
|
||||||
[% PROCESS common.tt %]
|
[% PROCESS common.tt %]
|
||||||
|
|
||||||
[% IF c.user_exists %]
|
[% IF c.user_exists %]
|
||||||
<p class="btn-info btn-large">
|
<p class="alert alert-info">
|
||||||
You are already logged in as <tt>[% c.user.username %]</tt>.
|
You are already signed in as <tt>[% HTML.escape(c.user.username) %]</tt>.
|
||||||
You can <a href="[% c.uri_for('/logout') %]">logout</a> here.
|
|
||||||
</p>
|
</p>
|
||||||
[% ELSE %]
|
[% ELSE %]
|
||||||
|
|
||||||
|
@ -13,7 +12,6 @@ You can <a href="[% c.uri_for('/logout') %]">logout</a> here.
|
||||||
c.uri_for('/register') %]">register</a> first.</p>
|
c.uri_for('/register') %]">register</a> first.</p>
|
||||||
-->
|
-->
|
||||||
|
|
||||||
<!--
|
|
||||||
<form class="form-horizontal" method="post" action="[% c.uri_for('/login') %]">
|
<form class="form-horizontal" method="post" action="[% c.uri_for('/login') %]">
|
||||||
|
|
||||||
<fieldset>
|
<fieldset>
|
||||||
|
@ -37,7 +35,6 @@ c.uri_for('/register') %]">register</a> first.</p>
|
||||||
</fieldset>
|
</fieldset>
|
||||||
|
|
||||||
</form>
|
</form>
|
||||||
-->
|
|
||||||
|
|
||||||
[% END %]
|
[% END %]
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue