Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
bugzilla
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
etersoft
bugzilla
Commits
d77682e0
Commit
d77682e0
authored
Jan 16, 2014
by
Frédéric Buclin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Bug 888731: Bugzilla login field should use "placeholder" HTML5 attribute instead of JavaScript
r=dkl a=justdave
parent
bb471d07
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
21 additions
and
113 deletions
+21
-113
global.js
js/global.js
+0
-49
global.css
skins/standard/global.css
+0
-3
login-small.html.tmpl
template/en/default/account/auth/login-small.html.tmpl
+21
-61
No files found.
js/global.js
View file @
d77682e0
...
...
@@ -6,8 +6,6 @@
* defined by the Mozilla Public License, v. 2.0.
*/
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
);
...
...
@@ -54,53 +52,6 @@ function hide_forgot_form( suffix ) {
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 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
// in one of the boxes. We clear them both when you click in either box
// so that the browser's password-autocomplete can work.
function
mini_login_on_focus
(
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
);
YAHOO
.
util
.
Dom
.
removeClass
(
mini_login
,
"bz_mini_login_help"
);
if
(
mini_login
.
value
==
mini_login_constants
.
login
)
{
mini_login
.
value
=
''
;
}
YAHOO
.
util
.
Dom
.
removeClass
(
mini_password
,
'bz_default_hidden'
);
YAHOO
.
util
.
Dom
.
addClass
(
mini_dummy
,
'bz_default_hidden'
);
}
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
)
{
return
true
;
}
window
.
alert
(
mini_login_constants
.
warning
);
return
false
;
}
function
set_language
(
value
)
{
YAHOO
.
util
.
Cookie
.
set
(
'LANG'
,
value
,
{
...
...
skins/standard/global.css
View file @
d77682e0
...
...
@@ -86,9 +86,6 @@
form
.mini_login
input
.bz_remember
{
margin
:
0
;
}
.bz_mini_login_help
{
color
:
#777
;
}
/* header (end) */
...
...
template/en/default/account/auth/login-small.html.tmpl
View file @
d77682e0
...
...
@@ -25,74 +25,29 @@
onclick="return show_mini_login_form('[% qs_suffix %]')">Log In</a>
[% Hook.process('additional_methods') %]
<form action="[% login_target FILTER html %]" method="POST"
<form action="[% login_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 %]' );"
>
<input id="Bugzilla_login[% qs_suffix FILTER html %]"
class="bz_login"
name="Bugzilla_login"
title="Login"
onfocus="mini_login_on_focus('[% qs_suffix FILTER js %]')"
>
<input class="bz_password"
id="Bugzilla_password[% qs_suffix FILTER html %]"
name="Bugzilla_password"
type="password"
title="Password"
>
<input class="bz_password bz_default_hidden bz_mini_login_help" type="text"
id="Bugzilla_password_dummy[% qs_suffix %]" value="password"
title="Password"
onfocus="mini_login_on_focus('[% qs_suffix FILTER js %]')"
>
id="mini_login[% qs_suffix FILTER html %]">
<input id="Bugzilla_login[% qs_suffix FILTER html %]" required
name="Bugzilla_login" class="bz_login"
[% IF Param('emailsuffix') %]
placeholder="Login"
[% ELSE %]
type="email" placeholder="Email Address"
[% END %]>
<input class="bz_password" name="Bugzilla_password" type="password"
id="Bugzilla_password[% qs_suffix FILTER html %]" required
placeholder="Password">
[% IF Param('rememberlogin') == 'defaulton' ||
Param('rememberlogin') == 'defaultoff'
%]
Param('rememberlogin') == 'defaultoff' %]
<input type="checkbox" id="Bugzilla_remember[% qs_suffix %]"
name="Bugzilla_remember" value="on" class="bz_remember"
[%+ "checked" IF Param('rememberlogin') == "defaulton" %]>
[%+ "checked" IF Param('rememberlogin') == "defaulton" %]>
<label for="Bugzilla_remember[% qs_suffix %]">Remember</label>
[% END %]
<input type="submit" name="GoAheadAndLogIn" value="Log in"
id="log_in[% qs_suffix %]">
<script type="text/javascript">
mini_login_constants = {
"login" : "login",
"warning" : "You must set the login and password before logging in."
};
[%# We need this event to fire after autocomplete, because it does
# something different depending on whether or not there's already
# data in the login and password box.
# However, autocomplete happens at all sorts of different times in
# different browsers (before or after onDOMReady, before or after
# window.onload, in almost all combinations you can imagine).
# The only good solution I found is to time the event 200
# milliseconds after window.onload for WebKit (doing it immediately
# at onload works in Chrome but not in Safari, but I can't detect
# them separately using YUI), and right after onDOMReady in Gecko.
# The WebKit solution is also fairly guaranteed to work on any
# browser (it's just strange, since the fields only populate 200 ms
# after the page loads), so it's the default. IE doesn't even
# recognize our forms as login forms, so I made it use the Gecko
# method also (since it's nicer visually). Opera never autocompletes
# forms without user interaction, so it also uses the Gecko method.
#%]
if (YAHOO.env.ua.gecko || YAHOO.env.ua.ie || YAHOO.env.ua.opera) {
YAHOO.util.Event.onDOMReady(function() {
init_mini_login_form('[% qs_suffix FILTER html %]');
});
}
else {
YAHOO.util.Event.on(window, 'load', function () {
window.setTimeout(function() {
init_mini_login_form('[% qs_suffix FILTER html %]');
}, 200);
});
}
</script>
<a href="#" onclick="return hide_mini_login_form('[% qs_suffix %]')">[x]</a>
</form>
</li>
...
...
@@ -103,7 +58,12 @@
<form action="token.cgi" method="post" id="forgot_form[% qs_suffix %]"
class="mini_forgot bz_default_hidden">
<label for="login[% qs_suffix FILTER html %]">Login:</label>
<input type="text" name="loginname" size="20" id="login[% qs_suffix FILTER html %]">
<input name="loginname" size="20" id="login[% qs_suffix FILTER html %]" required
[% IF Param('emailsuffix') %]
placeholder="Your Login"
[% ELSE %]
type="email" placeholder="Your Email Address"
[% END %]>
<input id="forgot_button[% qs_suffix %]" value="Reset Password"
type="submit">
<input type="hidden" name="a" value="reqpw">
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment