diff options
-rw-r--r-- | js/global.js | 61 | ||||
-rw-r--r-- | template/en/default/account/auth/login-small.html.tmpl | 25 | ||||
-rw-r--r-- | template/en/default/global/common-links.html.tmpl | 5 |
3 files changed, 81 insertions, 10 deletions
diff --git a/js/global.js b/js/global.js index de3d7915d..77e40d4c8 100644 --- a/js/global.js +++ b/js/global.js @@ -1,4 +1,4 @@ -/* The contents of this file are subject to the Mozilla Public +/* The contents of this file are subject to the Mozilla Public * License Version 1.1 (the "License"); you may not use this file * except in compliance with the License. You may obtain a copy of * the License at http://www.mozilla.org/MPL/ @@ -10,25 +10,76 @@ * * The Original Code is the Bugzilla Bug Tracking System. * -* Contributor(s): Guy Pyrzak <guy.pyrzak@gmail.com> +* Contributor(s): +* Guy Pyrzak <guy.pyrzak@gmail.com> +* Max Kanat-Alexander <mkanat@bugzilla.org> * */ var mini_login_constants; +function show_mini_login_form( suffix ) { + var login_link = document.getElementById('login_link' + suffix); + var login_form = document.getElementById('mini_login' + suffix); + var account_container = document.getElementById('new_account_container' + + suffix); + + YAHOO.util.Dom.addClass(login_link, 'bz_default_hidden'); + YAHOO.util.Dom.removeClass(login_form, 'bz_default_hidden'); + YAHOO.util.Dom.addClass(account_container, 'bz_default_hidden'); + return false; +} + +function hide_mini_login_form( suffix ) { + var login_link = document.getElementById('login_link' + suffix); + var login_form = document.getElementById('mini_login' + suffix); + var account_container = document.getElementById('new_account_container' + + suffix); + + YAHOO.util.Dom.removeClass(login_link, 'bz_default_hidden'); + YAHOO.util.Dom.addClass(login_form, 'bz_default_hidden'); + YAHOO.util.Dom.removeClass(account_container, 'bz_default_hidden'); + return false; +} + +function show_forgot_form( suffix ) { + var forgot_link = document.getElementById('forgot_link' + suffix); + var forgot_form = document.getElementById('forgot_form' + suffix); + var login_container = document.getElementById('mini_login_container' + + suffix); + YAHOO.util.Dom.addClass(forgot_link, 'bz_default_hidden'); + YAHOO.util.Dom.removeClass(forgot_form, 'bz_default_hidden'); + YAHOO.util.Dom.addClass(login_container, 'bz_default_hidden'); + return false; +} + +function hide_forgot_form( suffix ) { + var forgot_link = document.getElementById('forgot_link' + suffix); + var forgot_form = document.getElementById('forgot_form' + suffix); + var login_container = document.getElementById('mini_login_container' + + suffix); + YAHOO.util.Dom.removeClass(forgot_link, 'bz_default_hidden'); + YAHOO.util.Dom.addClass(forgot_form, 'bz_default_hidden'); + YAHOO.util.Dom.removeClass(login_container, 'bz_default_hidden'); + return false; +} + function init_mini_login_form( suffix ) { var mini_login = document.getElementById('Bugzilla_login' + suffix ); var mini_password = document.getElementById('Bugzilla_password' + suffix ); var mini_dummy = document.getElementById( 'Bugzilla_password_dummy' + suffix); // If the login and password are blank when the page loads, we display - // "login" and "password" in the boxes + // "login" and "password" in the boxes by default. if (mini_login.value == "" && mini_password.value == "") { mini_login.value = mini_login_constants.login; YAHOO.util.Dom.addClass(mini_login, "bz_mini_login_help"); YAHOO.util.Dom.addClass(mini_password, 'bz_default_hidden'); YAHOO.util.Dom.removeClass(mini_dummy, 'bz_default_hidden'); } + else { + show_mini_login_form(suffix); + } } // Clear the words "login" and "password" from the form when you click @@ -51,8 +102,8 @@ function mini_login_on_focus( suffix ) { function check_mini_login_fields( suffix ) { var mini_login = document.getElementById('Bugzilla_login' + suffix ); var mini_password = document.getElementById('Bugzilla_password' + suffix ); - if( ( mini_login.value != "" && mini_password.value != "" ) && - mini_login.value != mini_login_constants.login) + if( (mini_login.value != "" && mini_password.value != "") + && mini_login.value != mini_login_constants.login ) { return true; } diff --git a/template/en/default/account/auth/login-small.html.tmpl b/template/en/default/account/auth/login-small.html.tmpl index 19dbf8db9..dd55a72bd 100644 --- a/template/en/default/account/auth/login-small.html.tmpl +++ b/template/en/default/account/auth/login-small.html.tmpl @@ -35,12 +35,15 @@ [% target = Param("urlbase") _ target %] [% END %] -<li> - <form action="[% target FILTER html %]" method="POST" class="mini_login" +<li id="mini_login_container[% qs_suffix %]"> + <span class="separator">| </span> + <a id="login_link[% qs_suffix %]" href="?GoAheadAndLogIn=1" + onclick="return show_mini_login_form('[% qs_suffix %]')">Log In</a> + <form action="[% target FILTER html %]" method="POST" + class="mini_login bz_default_hidden" id="mini_login[% qs_suffix FILTER html %]" onsubmit="return check_mini_login_fields( '[% qs_suffix FILTER html %]' );" > - <span class="separator">| </span> <input id="Bugzilla_login[% qs_suffix FILTER html %]" class="bz_login" name="Bugzilla_login" @@ -103,6 +106,20 @@ }, 200); }); } - </script> + </script> + <a href="#" onclick="return hide_mini_login_form('[% qs_suffix %]')">[x]</a> + </form> +</li> +<li id="forgot_container[% qs_suffix %]"> + <span class="separator">| </span> + <a id="forgot_link[% qs_suffix %]" href="?GoAheadAndLogIn=1#forgot" + onclick="return show_forgot_form('[% qs_suffix %]')">Forgot Password</a> + <form action="token.cgi" method="post" id="forgot_form[% qs_suffix %]" + class="mini_forgot bz_default_hidden"> + <label>Login: <input type="text" name="loginname" size="20"></label> + <input id="forgot_button[% qs_suffix %]" value="Reset Password" + type="submit"> + <input type="hidden" name="a" value="reqpw"> + <a href="#" onclick="return hide_forgot_form('[% qs_suffix %]')">[x]</a> </form> </li> diff --git a/template/en/default/global/common-links.html.tmpl b/template/en/default/global/common-links.html.tmpl index 5c4e9d9a5..fa5b0b03a 100644 --- a/template/en/default/global/common-links.html.tmpl +++ b/template/en/default/global/common-links.html.tmpl @@ -86,7 +86,10 @@ [% IF Param('createemailregexp') && user.authorizer.user_can_create_account %] - <li><span class="separator">| </span><a href="createaccount.cgi">New Account</a></li> + <li id="new_account_container[% qs_suffix FILTER html %]"> + <span class="separator">| </span> + <a href="createaccount.cgi">New Account</a> + </li> [% END %] [% IF user.authorizer.can_login %] |