diff options
3 files changed, 62 insertions, 103 deletions
diff --git a/extensions/BrowserID/template/en/default/hook/account/auth/login-additional_methods.html.tmpl b/extensions/BrowserID/template/en/default/hook/account/auth/login-additional_methods.html.tmpl index 57f7da8ce..c79e1204e 100644 --- a/extensions/BrowserID/template/en/default/hook/account/auth/login-additional_methods.html.tmpl +++ b/extensions/BrowserID/template/en/default/hook/account/auth/login-additional_methods.html.tmpl @@ -1,51 +1,5 @@ [% IF Param('user_info_class').split(',').contains('BrowserID') && Param('browserid_includejs_url') %] - -[% USE Bugzilla %] -[% cgi = Bugzilla.cgi %] - -<script src="[% Param('browserid_includejs_url') %]" type="text/javascript"></script> - -<script type="text/javascript"> -function createHidden(name, value, form) { - var field = document.createElement('input'); - field.type = 'hidden'; - field.name = name; - field.value = value;; - form.appendChild(field); -} - -function browserid_sign_in() { - navigator.id.getVerifiedEmail(function(assertion) { - if (assertion) { - // This code will be invoked once the user has successfully - // selected an email address they control to sign in with. - var form = document.createElement('form'); - form.action = '[% target FILTER js %]'; - form.method = 'POST'; - form.style.display = 'none'; - - createHidden('token', '[% issue_hash_token(['login']) FILTER js %]', form); - createHidden('Bugzilla_remember', 'on', form); - createHidden('browserid_assertion', assertion, form); - - [% FOREACH field = cgi.param() %] - [% NEXT IF field.search("^(Bugzilla_(login|password|restrictlogin)|token|browserid_assertion)$") %] - [% FOREACH mvalue = cgi.param(field).slice(0) %] - createHidden('[% field FILTER js %]', - '[% mvalue FILTER html_linebreak FILTER js %]', - form); - [% END %] - [% END %] - - document.body.appendChild(form); - form.submit(); - return true; - } - }); -} -</script> - <p> Or, log in with BrowserID: <img src="extensions/BrowserID/web/sign_in_orange.png" onclick="browserid_sign_in()"> diff --git a/extensions/BrowserID/template/en/default/hook/account/auth/login-small-additional_methods.html.tmpl b/extensions/BrowserID/template/en/default/hook/account/auth/login-small-additional_methods.html.tmpl index b1c186493..2c2f98205 100644 --- a/extensions/BrowserID/template/en/default/hook/account/auth/login-small-additional_methods.html.tmpl +++ b/extensions/BrowserID/template/en/default/hook/account/auth/login-small-additional_methods.html.tmpl @@ -1,60 +1,4 @@ [% IF Param('user_info_class').split(',').contains('BrowserID') && Param('browserid_includejs_url') %] -<script src="[% Param('browserid_includejs_url') %]" type="text/javascript"></script> - -[%# Note this code is a tiny bit different from the other copy; the name of - # the variable containing the login url is 'login_target' rather than - # 'target' #%] - -<script type="text/javascript"> -function createHidden(name, value, form) { - var field = document.createElement('input'); - field.type = 'hidden'; - field.name = name; - field.value = value;; - form.appendChild(field); -} - -function browserid_sign_in() { - navigator.id.getVerifiedEmail(function(assertion) { - if (assertion) { - // This code will be invoked once the user has successfully - // selected an email address they control to sign in with. - var form = document.createElement('form'); - form.action = '[% login_target FILTER js %]'; - form.method = 'POST'; - form.style.display = 'none'; - - createHidden('token', '[% issue_hash_token(['login']) FILTER js %]', form); - createHidden('Bugzilla_remember', 'on', form); - createHidden('browserid_assertion', assertion, form); - - [% FOREACH field = cgi.param() %] - [% NEXT IF field.search("^(Bugzilla_(login|password|restrictlogin)|token|browserid_assertion)$") %] - [% FOREACH mvalue = cgi.param(field).slice(0) %] - createHidden('[% field FILTER js %]', - '[% mvalue FILTER html_linebreak FILTER js %]', - form); - [% END %] - [% END %] - - document.body.appendChild(form); - form.submit(); - return true; - } - }); -} -YAHOO.util.Event.addListener('login_link[% qs_suffix FILTER js %]','click', function () { - var login_link = YAHOO.util.Dom.get('browserid_mini_login[% qs_suffix FILTER js %]'); - YAHOO.util.Dom.removeClass(login_link, 'bz_default_hidden'); -}); -YAHOO.util.Event.addListener('hide_mini_login[% qs_suffix FILTER js %]','click', function () { - var login_link = YAHOO.util.Dom.get('browserid_mini_login[% qs_suffix FILTER js %]'); - YAHOO.util.Dom.addClass(login_link, 'bz_default_hidden'); -}); -</script> - -<span id="browserid_mini_login[% qs_suffix FILTER html %]" class="bz_default_hidden"> - <img src="extensions/BrowserID/web/sign_in_orange.png" onclick="browserid_sign_in()" style="margin-bottom: -8px"> or -</span> +<img src="extensions/BrowserID/web/sign_in_orange.png" onclick="browserid_sign_in()" style="margin-bottom: -8px"> or [% END %] diff --git a/extensions/BrowserID/template/en/default/hook/global/header-additional_header.html.tmpl b/extensions/BrowserID/template/en/default/hook/global/header-additional_header.html.tmpl new file mode 100644 index 000000000..2292edf7f --- /dev/null +++ b/extensions/BrowserID/template/en/default/hook/global/header-additional_header.html.tmpl @@ -0,0 +1,61 @@ +[%# This Source Code Form is subject to the terms of the Mozilla Public + # License, v. 2.0. If a copy of the MPL was not distributed with this + # file, You can obtain one at http://mozilla.org/MPL/2.0/. + # + # This Source Code Form is "Incompatible With Secondary Licenses", as + # defined by the Mozilla Public License, v. 2.0. + #%] + +[% RETURN IF user.login + || !Param('browserid_includejs_url') + || !Param('user_info_class').split(',').contains('BrowserID') %] + +[% USE Bugzilla %] +[% cgi = Bugzilla.cgi %] + +[% login_target = cgi.url("-relative" => 1, "-query" => 1) %] +[% IF !login_target OR login_target.match("^token.cgi") %] + [% login_target = "index.cgi" %] +[% END %] + +[% login_target = urlbase _ login_target %] + +<script src="[% Param('browserid_includejs_url') %]" type="text/javascript"></script> + +<script type="text/javascript"> +function createHidden(name, value, form) { + var field = document.createElement('input'); + field.type = 'hidden'; + field.name = name; + field.value = value;; + form.appendChild(field); +} + +function browserid_sign_in() { + navigator.id.get(function(assertion) { + if (assertion) { + // This code will be invoked once the user has successfully + // selected an email address they control to sign in with. + var form = document.createElement('form'); + form.action = '[% login_target FILTER js %]'; + form.method = 'POST'; + form.style.display = 'none'; + + createHidden('token', '[% issue_hash_token(['login']) FILTER js %]', form); + createHidden('Bugzilla_remember', 'on', form); + createHidden('browserid_assertion', assertion, form); + + [% FOREACH field = cgi.param() %] + [% NEXT IF field.search("^(Bugzilla_(login|password|restrictlogin)|token|browserid_assertion)$") %] + [% FOREACH mvalue = cgi.param(field).slice(0) %] + createHidden('[% field FILTER js %]', '[% mvalue FILTER html_linebreak FILTER js %]', form); + [% END %] + [% END %] + + document.body.appendChild(form); + form.submit(); + return true; + } + }); +} +</script> |