diff options
author | Tim Almdal <tnalmdal@shaw.ca> | 2008-11-12 21:42:40 +0000 |
---|---|---|
committer | Tim Almdal <tnalmdal@shaw.ca> | 2008-11-12 21:42:40 +0000 |
commit | 74216a3c636673fd49e82a7c31c0c9ed1de60e7f (patch) | |
tree | a09449d8944175fc9a612bf207d350c98572de5a /themes | |
parent | 2a9f8b5bcd6de819e461583bde1641aad3055d27 (diff) |
The login processing is starting to take shape. Login_Form is gone. The html for the login form is retrieve via an ajax call when the user clicks on login. Can't login with a valid id yet, but you certainly get error messages when things are wrong :-)
Diffstat (limited to 'themes')
-rw-r--r-- | themes/default/css/screen.css | 6 | ||||
-rw-r--r-- | themes/default/js/login.js | 37 | ||||
-rw-r--r-- | themes/default/views/header.html.php | 3 |
3 files changed, 40 insertions, 6 deletions
diff --git a/themes/default/css/screen.css b/themes/default/css/screen.css index 5e37e8e9..a00ed05a 100644 --- a/themes/default/css/screen.css +++ b/themes/default/css/screen.css @@ -272,7 +272,7 @@ table.gMetadata td.toggle { } .gError { - + color: red; } .gWarning { @@ -392,8 +392,8 @@ table.gMetadata td.toggle { list-style-type: none; } -#gLoginMenu li input.text, -#gLoginMenu li input.password { +#gLoginMenu li input#gUsername, +#gLoginMenu li input#gPassword { padding: 0 0 .1em 0; width: 80px; } diff --git a/themes/default/js/login.js b/themes/default/js/login.js index a598f39a..6c017a47 100644 --- a/themes/default/js/login.js +++ b/themes/default/js/login.js @@ -1,11 +1,46 @@ +$(document).ready(function() { + $("#gLoginForm").submit(function() { + process_login(); + return false; + }); +}); + function show_login() { $("#gLoginLink").css({display: "none"}); - $("#gLoginForm").css({display: "block"}); $("#gLoginClose").css({display: "inline"}); + var url = $("#gLoginForm").attr("formSrc"); + $.get(url, null, function(data, textStatus) { + $("#gLoginForm").html(data); + $("#gLoginForm").css({display: "block"}); + }); } function close_login() { $("#gLoginLink").css({display: "inline"}); $("#gLoginForm").css({display: "none"}); + $("#gLoginForm").html(""); $("#gLoginClose").css({display: "none"}); + $("input#gUsername").val(""); + $("input#gPassword").val(""); +} + +function process_login() { + var username = $("input#gUsername").val(); + var password = $("input#gPassword").val(); + var data = 'username=' + username + '&password=' + password; + $.ajax({ + url: $("#gLogin").attr("action"), + type: "POST", + data: data, + dataType: "json", + error: function(XMLHttpRequest, textStatus, errorThrown) { + alert("textStatus: " + textStatus + "\nerrorThrown: " + errorThrown); + }, + success: function(data, textStatus) { + if (data.error_message != "") { + $("#gLoginMessage").html(data.error_message); + $("#gLoginMessage").css({display: "block"}); + } + } + }); }
\ No newline at end of file diff --git a/themes/default/views/header.html.php b/themes/default/views/header.html.php index ba16a5fb..52c3992b 100644 --- a/themes/default/views/header.html.php +++ b/themes/default/views/header.html.php @@ -16,8 +16,7 @@ <?= _("Login") ?> | <a href="javascript:close_login()">X</a> </span> <? endif; ?> - <span id="gLoginForm" class="gDisplayNone" > - <?= Login_Form::factory() ?> + <span id="gLoginForm" class="gDisplayNone" formSrc="<?= url::site("login") ?>" > </span> </div> <ul id="gSiteMenu"> |