[%# 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 = [] %] [%# 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> <head> <title>[% title %]</title> [%# Migration note: contents of the old Param 'headerhtml' would go here %] [% PROCESS "global/site-navigation.html.tmpl" %] [% PROCESS 'global/setting-descs.none.tmpl' %] [%# Set up the skin CSS cascade: # 1. Standard Bugzilla stylesheet set (persistent) # 2. Standard Bugzilla stylesheet set (selectable) # 3. All third-party "skin" stylesheet sets (selectable) # 4. Page-specific styles # 5. Custom Bugzilla stylesheet set (persistent) # "Selectable" skin file sets may be either preferred or alternate. # Exactly one is preferred, determined by the "skin" user preference. #%] [% IF user.settings.skin.value != 'standard' %] [% user_skin = user.settings.skin.value %] [% END %] [% style_urls.unshift('skins/standard/global.css') %] [%# CSS cascade, part 1: Standard Bugzilla stylesheet set (persistent). # Always present. #%] [% FOREACH style_url = style_urls %] <link href="[% style_url FILTER html %]" rel="stylesheet" type="text/css"> [% END %] <!--[if IE]> [%# Internet Explorer treats [if IE] HTML comments as uncommented. # Use it to import CSS fixes so that Bugzilla looks decent on IE, too. #%] <link href="skins/standard/IE-fixes.css" rel="stylesheet" type="text/css"> <![endif]--> [%# CSS cascade, part 2: Standard Bugzilla stylesheet set (selectable) # Present if skin selection is enabled. #%] [% IF user.settings.skin.is_enabled %] [% FOREACH style_url = style_urls %] <link href="[% style_url FILTER html %]" rel="[% 'alternate ' IF user_skin %]stylesheet" title="[% setting_descs.standard FILTER html %]" type="text/css"> [% END %] <!--[if IE]> [%# Internet Explorer treats [if IE] HTML comments as uncommented. # Use it to import CSS fixes so that Bugzilla looks decent on IE, # too. #%] <link href="skins/standard/IE-fixes.css" rel="[% 'alternate ' IF user_skin %]stylesheet" title="[% setting_descs.standard FILTER html %]" type="text/css"> <![endif]--> [% END %] [%# CSS cascade, part 3: Third-party stylesheet set (selectable). # All third-party skins are present if skin selection is enabled. # The admin-selected skin is always present. #%] [% FOREACH contrib_skin = user.settings.skin.legal_values %] [% NEXT IF contrib_skin == 'standard' %] [% NEXT UNLESS contrib_skin == user_skin OR user.settings.skin.is_enabled %] [% contrib_skin = contrib_skin FILTER url_quote %] [% IF contrib_skin.match('\.css$') %] [%# 1st skin variant: single-file stylesheet %] <link href="[% "skins/contrib/$contrib_skin" %]" rel="[% 'alternate ' UNLESS contrib_skin == user_skin %]stylesheet" title="[% contrib_skin FILTER html %]" type="text/css"> [% ELSE %] [%# 2nd skin variant: stylesheet set %] [% FOREACH style_url = style_urls %] [% IF style_url.match('^skins/standard/') %] <link href="[% style_url.replace('^skins/standard/', "skins/contrib/$contrib_skin/") %]" rel="[% 'alternate ' UNLESS contrib_skin == user_skin %]stylesheet" title="[% contrib_skin FILTER html %]" type="text/css"> [% END %] [% END %] <!--[if IE]> [%# Internet Explorer treats [if IE] HTML comments as uncommented. # Use it to import CSS fixes so that Bugzilla looks decent on IE, # too. #%] <link href="skins/contrib/[% contrib_skin FILTER html %]/IE-fixes.css" rel="[% 'alternate ' UNLESS contrib_skin == user_skin %]stylesheet" title="[% contrib_skin FILTER html %]" type="text/css"> <![endif]--> [% END %] [% END %] [%# CSS cascade, part 4: page-specific styles. #%] [% IF style %] <style type="text/css"> [% style %] </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 = style_urls %] [% IF style_url.match('^skins/standard/') %] <link href="[% style_url.replace('^skins/standard/', "skins/custom/") FILTER html %]" rel="stylesheet" type="text/css"> [% END %] [% END %] <!--[if IE]> [%# Internet Explorer treats [if IE] HTML comments as uncommented. # Use it to import CSS fixes so that Bugzilla looks decent on IE, too. #%] <link href="skins/custom/IE-fixes.css" rel="stylesheet" type="text/css"> <![endif]--> [% IF javascript %] <script type="text/javascript"> [% javascript %] </script> [% END %] [% IF javascript_urls %] [% FOREACH javascript_url = javascript_urls %] <script src="[% javascript_url FILTER html %]" type="text/javascript"></script> [% END %] [% IF javascript_urls.grep('yui/').size %] <script type="text/javascript"> YAHOO.namespace('bugzilla'); </script> [% END %] [% 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.Bugzilla %]" href="./search_plugin.cgi"> <link rel="shortcut icon" href="images/favicon.ico" > [% 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 %]" class="[% urlbase.replace('^https?://','').replace('/$','').replace('[-~@:/.]+','-') %] [% FOREACH class = bodyclasses %] [% ' ' %][% class FILTER css_class_quote %] [% END %]"> [%# Migration note: the following file corresponds to the old Param # 'bannerhtml' #%] <div id="header"> [% INCLUDE global/banner.html.tmpl %] <table border="0" cellspacing="0" cellpadding="0" id="titles"> <tr> <td id="title"> <p>[% terms.Bugzilla %] [% " – $header" IF header %]</p> </td> [% IF subheader %] <td id="subtitle"> <p class="subheader">[% subheader %]</p> </td> [% END %] [% IF header_addl_info %] <td id="information"> <p class="header_addl_info">[% header_addl_info %]</p> </td> [% END %] </tr> </table> [% PROCESS "global/common-links.html.tmpl" qs_suffix = "_top" %] </div> <div id="bugzilla-body"> [% IF Param('announcehtml') %] [% Param('announcehtml') FILTER none %] [% END %] [% IF message %] <div id="message">[% message %]</div> [% END %]