summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--extensions/BMO/template/en/default/global/common-links.html.tmpl124
-rw-r--r--extensions/BMO/template/en/default/global/header.html.tmpl416
-rw-r--r--template/en/default/global/common-links.html.tmpl7
-rw-r--r--template/en/default/global/header.html.tmpl90
4 files changed, 96 insertions, 541 deletions
diff --git a/extensions/BMO/template/en/default/global/common-links.html.tmpl b/extensions/BMO/template/en/default/global/common-links.html.tmpl
deleted file mode 100644
index 4fbbb25a0..000000000
--- a/extensions/BMO/template/en/default/global/common-links.html.tmpl
+++ /dev/null
@@ -1,124 +0,0 @@
-[%# 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/
- #
- # Software distributed under the License is distributed on an "AS
- # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
- # implied. See the License for the specific language governing
- # rights and limitations under the License.
- #
- # The Original Code is the Bugzilla Bug Tracking System.
- #
- # The Initial Developer of the Original Code is Netscape Communications
- # Corporation. Portions created by Netscape are
- # Copyright (C) 1998 Netscape Communications Corporation. All
- # Rights Reserved.
- #
- # Contributor(s): Gervase Markham <gerv@gerv.net>
- # Svetlana Harisova <light@rathedg.com>
- #%]
-
-[% DEFAULT qs_suffix = "" %]
-[% USE Bugzilla %]
-
-<ul class="links">
- <li><a href="./">Home</a></li>
- <li><span class="separator">| </span><a href="enter_bug.cgi">New</a></li>
- <li><span class="separator">| </span><a href="describecomponents.cgi">Browse</a></li>
- <li><span class="separator">| </span><a href="query.cgi">Search</a></li>
-
- <li class="form">
- <span class="separator">| </span>
- <form action="buglist.cgi" method="get"
- onsubmit="if (this.quicksearch.value == '')
- { alert('Please enter one or more search terms first.');
- return false; } return true;">
- <input class="txt" type="text" id="quicksearch[% qs_suffix FILTER html %]" name="quicksearch"
- title="Quick Search" value="[% quicksearch FILTER html %]">
- <input class="btn" type="submit" value="Search"
- id="find[% qs_suffix FILTER html %]">
- [%-# Work around FF bug: keep this on one line %]</form>
- [<a href="page.cgi?id=quicksearch.html" title="Quicksearch Help">help</a>]
- </li>
-
- <li><span class="separator">| </span><a href="report.cgi">Reports</a></li>
-
- [% IF user.settings.skin.value != 'Mozilla' %]
- <li>
- [% IF Param('shutdownhtml') || Bugzilla.has_flags %]
- <span class="separator">| </span>
- [% IF user.id %]
- <a href="request.cgi?requester=[% user.login FILTER uri %]&amp;requestee=
- [% user.login FILTER uri %]&amp;do_union=1&amp;group=type&amp;action=queue">My Requests</a>
- [% ELSE %]
- <a href="request.cgi">Requests</a>
- [% END %]
- [% END %]
- [%-# Work around FF bug: keep this on one line %]</li>
- [% END %]
-
- [% Hook.process('action-links') %]
-
- [% IF user.settings.skin.value != 'Mozilla' %]
- [% IF user.login %]
- <li><span class="separator">| </span><a href="userprefs.cgi">Preferences</a></li>
- [% IF user.in_group('tweakparams') || user.in_group('editusers') || user.can_bless
- || (Param('useclassification') && user.in_group('editclassifications'))
- || user.in_group('editcomponents') || user.in_group('admin') || user.in_group('creategroups')
- || user.in_group('editkeywords') || user.in_group('bz_canusewhines')
- || user.get_products_by_permission("editcomponents").size %]
- <li><span class="separator">| </span><a href="admin.cgi">Administration</a></li>
- [% END %]
-
- [% PROCESS link_to_documentation %]
-
- <li>
- <span class="separator">| </span>
- [% IF user.authorizer.can_logout %]
- <a href="index.cgi?logout=1">Log&nbsp;out</a>
- [% ELSE %]
- Logged&nbsp;in&nbsp;as
- [% END %]
- [% IF sudoer %]
- [%+ sudoer.login FILTER html %] (<b>impersonating
- [%+ user.login FILTER html %]</b>
- <a href="relogin.cgi?action=end-sudo">end session</a>)
- [% ELSE %]
- [%+ user.login FILTER html %]
- [% END %]
- [%-# Work around FF bug: keep this on one line %]</li>
- [% ELSE %]
-
- [% PROCESS link_to_documentation %]
-
- [% IF Param('createemailregexp')
- && user.authorizer.user_can_create_account %]
- <li id="new_account_container[% qs_suffix FILTER html %]">
- <span class="separator">| </span>
- <a href="createaccount.cgi">New&nbsp;Account</a>
- </li>
- [% END %]
-
- [%# Only display one login form when we're on a LOGIN_REQUIRED page. That
- # way, we're guaranteed that the user will use the form that has
- # hidden_fields in it (the center form) instead of this one. Also, it's
- # less confusing to have one form (as opposed to three) when you're
- # required to log in.
- #%]
- [% IF user.authorizer.can_login && !Bugzilla.page_requires_login %]
- [% PROCESS "account/auth/login-small.html.tmpl" %]
- [% END %]
- [% END %]
- [% END %]
-</ul>
-
-[% Hook.process("link-row") %]
-[% BLOCK link_to_documentation %]
- [% IF doc_section && Param('docs_urlbase') %]
- <li>
- <span class="separator">| </span>
- <a href="[% docs_urlbase _ doc_section FILTER html %]" target="_blank">Help</a>
- </li>
- [% END %]
-[% END %]
diff --git a/extensions/BMO/template/en/default/global/header.html.tmpl b/extensions/BMO/template/en/default/global/header.html.tmpl
deleted file mode 100644
index 6aaac9411..000000000
--- a/extensions/BMO/template/en/default/global/header.html.tmpl
+++ /dev/null
@@ -1,416 +0,0 @@
-[%# 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/
- #
- # Software distributed under the License is distributed on an "AS
- # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
- # implied. See the License for the specific language governing
- # rights and limitations under the License.
- #
- # The Original Code is the Bugzilla Bug Tracking System.
- #
- # The Initial Developer of the Original Code is Netscape Communications
- # Corporation. Portions created by Netscape are
- # Copyright (C) 1998 Netscape Communications Corporation. All
- # Rights Reserved.
- #
- # Contributor(s): Gervase Markham <gerv@gerv.net>
- # Vaskin Kissoyan <vkissoyan@yahoo.com>
- # Vitaly Harisov <vitaly@rathedg.com>
- # Svetlana Harisova <light@rathedg.com>
- #%]
-
-[%# INTERFACE:
- # (All the below interface elements are optional.)
- # title: string. Page title.
- # header: string. Main page header.
- # subheader: string. Page subheader.
- # header_addl_info: string. Additional header information.
- # bodyclasses: array of extra CSS classes for the <body>
- # onload: string. JavaScript code to run when the page finishes loading.
- # javascript: string. Javascript to go in the header.
- # javascript_urls: list. List of URLs to Javascript.
- # style: string. CSS style.
- # style_urls: list. List of URLs to CSS style sheets.
- # message: string. A message to display to the user. May contain HTML.
- # atomlink: Atom link URL, May contain HTML
- #%]
-
-[% IF message %]
- [% PROCESS global/messages.html.tmpl %]
-[% END %]
-
-[% DEFAULT
- subheader = ""
- header_addl_info = ""
- onload = ""
- style_urls = []
- yui = []
-%]
-
-[% SET yui_css = {
- autocomplete => 1,
- calendar => 1,
- datatable => 1,
- button => 1,
-} %]
-
-[%# Note: This is simple dependency resolution--you can't have dependencies
- # that depend on each other. You have to specify all of a module's deps,
- # if that module is going to be specified in "yui".
- #%]
-[% SET yui_deps = {
- autocomplete => ['json', 'connection', 'datasource'],
- datatable => ['json', 'connection', 'datasource', 'element'],
-} %]
-
-[%# When using certain YUI modules, we need to process certain
- # extra JS templates.
- #%]
-[% SET yui_templates = {
- datatable => ['global/value-descs.js.tmpl'],
-} %]
-
-[%# These are JS URLs that are *always* on the page and come before
- # every other JS URL.
- #%]
-[% SET starting_js_urls = [
- "js/yui/yahoo-dom-event/yahoo-dom-event.js",
- "js/yui/cookie/cookie-min.js",
-] %]
-
-
-[%# We should be able to set the default value of the header variable
- # to the value of the title variable using the DEFAULT directive,
- # but that doesn't work if a caller sets header to the empty string
- # to avoid header inheriting the value of title, since DEFAULT
- # mistakenly treats empty strings as undefined and gives header the
- # value of title anyway. To get around that problem we explicitly
- # set header's default value here only if it is undefined. %]
-[% IF !header.defined %][% header = title %][% END %]
-
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html lang="en">
- <head>
- [% Hook.process("start") %]
- <title>[% title FILTER none %]</title>
-
- [% IF Param('utf8') %]
- <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
- [% END %]
-
-[%# Migration note: contents of the old Param 'headerhtml' would go here %]
-
- [% PROCESS "global/site-navigation.html.tmpl" %]
-
- [% PROCESS 'global/setting-descs.none.tmpl' %]
-
- [% SET yui = yui_resolve_deps(yui, yui_deps) %]
- [% SET css_sets = css_files(style_urls, yui, yui_css) %]
-
- [%# CSS cascade, parts 1 & 2: YUI & Standard Bugzilla stylesheet set (persistent).
- # Always present. %]
- <link href="[% 'skins/standard/global.css' FILTER mtime FILTER html %]"
- rel="alternate stylesheet"
- title="[% setting_descs.standard FILTER html %]">
- [% FOREACH style_url = css_sets.standard %]
- [% PROCESS format_css_link css_set_name = 'standard' %]
- [% END %]
-
- [%# CSS cascade, part 3: Third-party stylesheet set, per user prefs. %]
- [% FOREACH style_url = css_sets.skin %]
- [% PROCESS format_css_link css_set_name = user.settings.skin.value %]
- [% END %]
-
- [%# CSS cascade, part 4: page-specific styles. %]
- [% IF style %]
- <style type="text/css">
- [% style FILTER none %]
- </style>
- [% END %]
-
- [%# CSS cascade, part 5: Custom Bugzilla stylesheet set (persistent).
- # Always present. Site administrators may override all other style
- # definitions, including skins, using custom stylesheets.
- #%]
- [% FOREACH style_url = css_sets.custom %]
- [% PROCESS format_css_link css_set_name = 'standard' %]
- [% END %]
-
- [%# YUI Scripts %]
- [% FOREACH yui_name = yui %]
- [% starting_js_urls.push("js/yui/$yui_name/${yui_name}-min.js") %]
- [% END %]
- [% starting_js_urls.push('js/global.js') %]
-
- [% FOREACH javascript_url = starting_js_urls %]
- [% PROCESS format_js_link %]
- [% END %]
-
- <script type="text/javascript">
- <!--
- YAHOO.namespace('bugzilla');
- YAHOO.util.Event.addListener = function (el, sType, fn, obj, overrideContext) {
- if ( ("onpagehide" in window || YAHOO.env.ua.gecko) && sType === "unload") { sType = "pagehide"; };
- var capture = ((sType == "focusin" || sType == "focusout") && !YAHOO.env.ua.ie) ? true : false;
- return this._addListener(el, this._getType(sType), fn, obj, overrideContext, capture);
- };
- if ( "onpagehide" in window || YAHOO.env.ua.gecko) {
- YAHOO.util.Event._simpleRemove(window, "unload",
- YAHOO.util.Event._unload);
- }
- [%# The language selector needs javascript to set its cookie,
- # so it is hidden in HTML/CSS by the "bz_default_hidden" class.
- # If the browser can run javascript, it will then "unhide"
- # the language selector using the following code.
- #%]
- function unhide_language_selector() {
- YAHOO.util.Dom.removeClass(
- 'lang_links_container', 'bz_default_hidden'
- );
- }
- YAHOO.util.Event.onDOMReady(unhide_language_selector);
-
- [%# Make some Bugzilla information available to all scripts.
- # We don't import every parameter and constant because we
- # don't want to add a lot of uncached JS to every page.
- #%]
- var BUGZILLA = {
- param: {
- cookiepath: '[% Param('cookiepath') FILTER js %]',
- maxusermatches: [% Param('maxusermatches') FILTER js %]
- },
- constant: {
- COMMENT_COLS: [% constants.COMMENT_COLS FILTER js %]
- },
- string: {
- [%# Please keep these in alphabetical order. %]
-
- attach_desc_required:
- 'You must enter a Description for this attachment.',
- component_required:
- 'You must select a Component for this [% terms.bug %].',
- description_required:
- 'You must enter a Description for this [% terms.bug %].',
- short_desc_required:
- 'You must enter a Summary for this [% terms.bug %].',
- version_required:
- 'You must select a Version for this [% terms.bug %].'
- }
- };
-
- [% FOREACH yui_name = yui %]
- [% FOREACH yui_template = yui_templates.$yui_name %]
- [% INCLUDE $yui_template %]
- [% END %]
- [% END %]
- [% IF javascript %]
- [% javascript FILTER none %]
- [% END %]
- // -->
- </script>
-
- [% FOREACH javascript_url = javascript_urls %]
- [% PROCESS format_js_link %]
- [% END %]
-
- [%# this puts the live bookmark up on firefox for the Atom feed %]
- [% IF atomlink %]
- <link rel="alternate"
- type="application/atom+xml" title="Atom feed"
- href="[% atomlink FILTER html %]">
- [% END %]
-
- [%# Required for the 'Autodiscovery' feature in Firefox 2 and IE 7. %]
- <link rel="search" type="application/opensearchdescription+xml"
- title="[% terms.BugzillaTitle %]" href="./search_plugin.cgi">
- [% Hook.process("additional_header") %]
- </head>
-
-[%# Migration note: contents of the old Param 'bodyhtml' go in the body tag,
- # but set the onload attribute in the DEFAULT directive above.
- #%]
-
- <body onload="[% onload FILTER none %]"
- class="[% urlbase.replace('^https?://','').replace('/$','').replace('[-~@:/.]+','-') %]
- [% FOREACH class = bodyclasses %]
- [% ' ' %][% class FILTER css_class_quote %]
- [% END %] yui-skin-sam">
-
-[%# Migration note: the following file corresponds to the old Param
- # 'bannerhtml'
- #%]
-
-<div id="header">
-
-[% IF user.settings.skin.value == 'Mozilla' %]
-
- <div class="wrapper">
- <table border="0" cellspacing="0" cellpadding="0" id="titles">
- <tr>
- <td id="title">
- <a href="./" title="Home">[% terms.BugzillaTitle %]</a>
- </td>
- <td id="information"></td>
- <td id="languages">
- [% IF Bugzilla.languages.size > 1 %]
- <ul class="links">
- [% FOREACH lang = Bugzilla.languages.sort %]
- <li>[% IF NOT loop.first %]<span class="separator"> | </span>[% END %]
- [% IF lang == current_language %]
- <span class="lang_current">[% lang FILTER html FILTER upper %]</span>
- [% ELSE %]
- <a href="#" onclick="set_language('[% lang FILTER none %]');">
- [%- lang FILTER html FILTER upper %]</a>
- [% END %]
- </li>
- [% END %]
- </ul>
- [% END %]
- </td>
- <td id="login">
- [% IF user.id %]
- <ul class="links">
- <li class="dropdown">
- <span class="anchor">[% user.login FILTER html %]</span>
- <ul>
- [% IF user.showmybugslink %]
- [% filtered_username = user.login FILTER uri %]
- <li><a href="[% Param('mybugstemplate').replace('%userid%', filtered_username) %]">My [% terms.Bugs %]</a></li>
- [% END %]
- <li><a href="userprefs.cgi">Preferences</a></li>
- <li><a href="request.cgi?requester=[% user.login FILTER uri %]&amp;requestee=[% user.login FILTER uri %]&amp;do_union=1&amp;group=type&amp;action=queue">My Requests</a></li>
- [% IF user.in_group('tweakparams') || user.in_group('editusers') || user.can_bless
- || (Param('useclassification') && user.in_group('editclassifications'))
- || user.in_group('editcomponents') || user.in_group('admin') || user.in_group('creategroups')
- || user.in_group('editkeywords') || user.in_group('bz_canusewhines')
- || user.get_products_by_permission("editcomponents").size %]
- <li><a href="admin.cgi">Administration</a></li>
- [% END %]
- [% IF user.authorizer.can_logout %]
- <li><a href="index.cgi?logout=1">Log&nbsp;out</a></li>
- [% END %]
- [% IF sudoer %]
- <li>
- <a href="relogin.cgi?action=end-sudo">End sudo session impersonating [% user.login FILTER html %]</a>
- </li>
- [% END %]
- </ul>
- </li>
- </ul>
- [% ELSE %]
- <ul class="login-links">
- [% IF Param('createemailregexp')
- && user.authorizer.user_can_create_account %]
- <li id="new_account_container_top"><a href="createaccount.cgi">New&nbsp;Account</a></li>
- [% END %]
-
- [%# Only display one login form when we're on a LOGIN_REQUIRED page. That
- # way, we're guaranteed that the user will use the form that has
- # hidden_fields in it (the center form) instead of this one. Also, it's
- # less confusing to have one form (as opposed to three) when you're
- # required to log in.
- #%]
- [% IF user.authorizer.can_login && !Bugzilla.page_requires_login %]
- [% PROCESS "account/auth/login-small.html.tmpl" %]
- [% END %]
- </ul>
- [% END %]
- </td>
- <td id="tab">
- <a href="http://mozilla.org/"><img src="https://addons.cdn.mozilla.net/media/img/zamboni/mozilla-tab.png?b=4953ddb"></a>
- </td>
- </tr>
- </table>
-
- [% PROCESS "global/common-links.html.tmpl" qs_suffix = "_top" %]
-
- </div>
-
-[% ELSE %]
-
-[% INCLUDE global/banner.html.tmpl %]
-
-<table border="0" cellspacing="0" cellpadding="0" id="titles">
-<tr>
- <td id="title">
- <p>[% terms.BugzillaTitle %]
- [% " &ndash; $header" FILTER none IF header %]</p>
- </td>
-
- [% IF subheader %]
- <td id="subtitle">
- <p class="subheader">[% subheader FILTER none %]</p>
- </td>
- [% END %]
-
- [% IF header_addl_info %]
- <td id="information">
- <p class="header_addl_info">[% header_addl_info FILTER none %]</p>
- </td>
- [% END %]
-</tr>
-</table>
-
-<table id="lang_links_container" cellpadding="0" cellspacing="0"
- class="bz_default_hidden"><tr><td>
-[% IF Bugzilla.languages.size > 1 %]
- <ul class="links">
- [% FOREACH lang = Bugzilla.languages.sort %]
- <li>[% IF NOT loop.first %]<span class="separator"> | </span>[% END %]
- [% IF lang == current_language %]
- <span class="lang_current">[% lang FILTER html FILTER upper %]</span>
- [% ELSE %]
- <a href="#" onclick="set_language('[% lang FILTER none %]');">
- [%- lang FILTER html FILTER upper %]</a>
- [% END %]
- </li>
- [% END %]
- </ul>
-[% END %]
-</td></tr></table>
-
-[% PROCESS "global/common-links.html.tmpl" qs_suffix = "_top" %]
-
-[% END %]
-
-</div> [%# header %]
-
-<div id="bugzilla-body">
-
-[% IF Param('announcehtml') %]
-[% Param('announcehtml') FILTER none %]
-[% END %]
-
-[% IF message %]
-<div id="message">[% message FILTER none %]</div>
-[% END %]
-
-[% BLOCK format_css_link %]
- [% IF style_url.match('/IE-fixes\.css') %]
- <!--[if lte IE 7]>
- [%# Internet Explorer treats [if IE] HTML comments as uncommented.
- # We use it to import CSS fixes so that Bugzilla looks decent on IE 7
- # and below.
- #%]
- [% END %]
-
- [% IF css_set_name == 'standard' %]
- [% SET css_title_link = '' %]
- [% ELSE %]
- [% css_title_link = BLOCK ~%]
- title="[% setting_descs.${user.settings.skin.value} || user.settings.skin.value FILTER html %]"
- [% END %]
- [% END %]
-
- <link href="[% style_url FILTER html %]" rel="stylesheet"
- type="text/css" [% css_title_link FILTER none %]>
-
- [% '<![endif]-->' IF style_url.match('/IE-fixes\.css') %]
-[% END %]
-
-[% BLOCK format_js_link %]
- <script type="text/javascript" src="[% javascript_url FILTER mtime FILTER html %]"></script>
-[% END %]
diff --git a/template/en/default/global/common-links.html.tmpl b/template/en/default/global/common-links.html.tmpl
index ec8608eed..278364d09 100644
--- a/template/en/default/global/common-links.html.tmpl
+++ b/template/en/default/global/common-links.html.tmpl
@@ -39,10 +39,12 @@
<input class="btn" type="submit" value="Search"
id="find[% qs_suffix FILTER html %]">
[%-# Work around FF bug: keep this on one line %]</form>
- <a href="page.cgi?id=quicksearch.html" title="Quicksearch Help">[?]</a></li>
+ [<a href="page.cgi?id=quicksearch.html" title="Quicksearch Help">help</a>]
+ </li>
<li><span class="separator">| </span><a href="report.cgi">Reports</a></li>
+ [% IF user.settings.skin.value != 'Mozilla' %]
<li>
[% IF Param('shutdownhtml') || Bugzilla.has_flags %]
<span class="separator">| </span>
@@ -54,9 +56,11 @@
[% END %]
[% END %]
[%-# Work around FF bug: keep this on one line %]</li>
+ [% END %]
[% Hook.process('action-links') %]
+ [% IF user.settings.skin.value != 'Mozilla' %]
[% IF user.login %]
<li><span class="separator">| </span><a href="userprefs.cgi">Preferences</a></li>
[% IF user.in_group('tweakparams') || user.in_group('editusers') || user.can_bless
@@ -106,6 +110,7 @@
[% PROCESS "account/auth/login-small.html.tmpl" %]
[% END %]
[% END %]
+ [% END %]
</ul>
[% Hook.process("link-row") %]
diff --git a/template/en/default/global/header.html.tmpl b/template/en/default/global/header.html.tmpl
index 1abd7e8c7..48140f74c 100644
--- a/template/en/default/global/header.html.tmpl
+++ b/template/en/default/global/header.html.tmpl
@@ -235,6 +235,7 @@
<body onload="[% onload %]"
class="[% urlbase.replace('^https?://','').replace('/$','').replace('[-~@:/.]+','-') FILTER css_class_quote %]
+ skin-[% user.settings.skin.value FILTER css_class_quote %]
[% FOREACH class = bodyclasses %]
[% ' ' %][% class FILTER css_class_quote %]
[% END %] yui-skin-sam">
@@ -245,6 +246,92 @@
<div id="header">
+[% IF user.settings.skin.value == 'Mozilla' %]
+
+ <div class="wrapper">
+ <table border="0" cellspacing="0" cellpadding="0" id="titles">
+ <tr>
+ <td id="title">
+ <a href="./" title="Home">[% terms.BugzillaTitle %]</a>
+ </td>
+ <td id="information"></td>
+ <td id="languages">
+ [% IF Bugzilla.languages.size > 1 %]
+ <ul class="links">
+ [% FOREACH lang = Bugzilla.languages.sort %]
+ <li>[% IF NOT loop.first %]<span class="separator"> | </span>[% END %]
+ [% IF lang == current_language %]
+ <span class="lang_current">[% lang FILTER html FILTER upper %]</span>
+ [% ELSE %]
+ <a href="#" onclick="set_language('[% lang FILTER none %]');">
+ [%- lang FILTER html FILTER upper %]</a>
+ [% END %]
+ </li>
+ [% END %]
+ </ul>
+ [% END %]
+ </td>
+ <td id="login">
+ [% IF user.id %]
+ <ul class="links">
+ <li class="dropdown">
+ <span class="anchor">[% user.login FILTER html %]</span>
+ <ul>
+ [% IF user.showmybugslink %]
+ [% filtered_username = user.login FILTER uri %]
+ <li><a href="[% Param('mybugstemplate').replace('%userid%', filtered_username) %]">My [% terms.Bugs %]</a></li>
+ [% END %]
+ <li><a href="userprefs.cgi">Preferences</a></li>
+ <li><a href="request.cgi?requester=[% user.login FILTER uri %]&amp;requestee=[% user.login FILTER uri %]&amp;do_union=1&amp;group=type&amp;action=queue">My Requests</a></li>
+ [% IF user.in_group('tweakparams') || user.in_group('editusers') || user.can_bless
+ || (Param('useclassification') && user.in_group('editclassifications'))
+ || user.in_group('editcomponents') || user.in_group('admin') || user.in_group('creategroups')
+ || user.in_group('editkeywords') || user.in_group('bz_canusewhines')
+ || user.get_products_by_permission("editcomponents").size %]
+ <li><a href="admin.cgi">Administration</a></li>
+ [% END %]
+ [% IF user.authorizer.can_logout %]
+ <li><a href="index.cgi?logout=1">Log&nbsp;out</a></li>
+ [% END %]
+ [% IF sudoer %]
+ <li>
+ <a href="relogin.cgi?action=end-sudo">End sudo session impersonating [% user.login FILTER html %]</a>
+ </li>
+ [% END %]
+ </ul>
+ </li>
+ </ul>
+ [% ELSE %]
+ <ul class="login-links">
+ [% IF Param('createemailregexp')
+ && user.authorizer.user_can_create_account %]
+ <li id="new_account_container_top"><a href="createaccount.cgi">New&nbsp;Account</a></li>
+ [% END %]
+
+ [%# Only display one login form when we're on a LOGIN_REQUIRED page. That
+ # way, we're guaranteed that the user will use the form that has
+ # hidden_fields in it (the center form) instead of this one. Also, it's
+ # less confusing to have one form (as opposed to three) when you're
+ # required to log in.
+ #%]
+ [% IF user.authorizer.can_login && !Bugzilla.page_requires_login %]
+ [% PROCESS "account/auth/login-small.html.tmpl" %]
+ [% END %]
+ </ul>
+ [% END %]
+ </td>
+ <td id="tab">
+ <a href="http://mozilla.org/"><img src="https://addons.cdn.mozilla.net/media/img/zamboni/mozilla-tab.png?b=4953ddb"></a>
+ </td>
+ </tr>
+ </table>
+
+ [% PROCESS "global/common-links.html.tmpl" qs_suffix = "_top" %]
+
+ </div>
+
+[% ELSE %]
+
[% INCLUDE global/banner.html.tmpl %]
<table border="0" cellspacing="0" cellpadding="0" id="titles">
@@ -287,6 +374,9 @@
</td></tr></table>
[% PROCESS "global/common-links.html.tmpl" qs_suffix = "_top" %]
+
+[% END %]
+
</div> [%# header %]
<div id="bugzilla-body">