]> git.ipfire.org Git - thirdparty/bugzilla.git/commitdiff
Bug 321556: Prepare Bugzilla to ship with at least 2 skins.
authorwurblzap%gmail.com <>
Wed, 18 Oct 2006 02:58:34 +0000 (02:58 +0000)
committerwurblzap%gmail.com <>
Wed, 18 Oct 2006 02:58:34 +0000 (02:58 +0000)
Patch by Marc Schumann <wurblzap@gmail.com>;
r=myk, a=justdave

47 files changed:
skins/standard/IE-fixes.css [new file with mode: 0755]
skins/standard/buglist.css
skins/standard/global.css
template/en/default/account/prefs/prefs.html.tmpl
template/en/default/admin/components/create.html.tmpl
template/en/default/admin/fieldvalues/create.html.tmpl
template/en/default/admin/groups/create.html.tmpl
template/en/default/admin/groups/list.html.tmpl
template/en/default/admin/keywords/create.html.tmpl
template/en/default/admin/milestones/create.html.tmpl
template/en/default/admin/products/edit-common.html.tmpl
template/en/default/admin/settings/edit.html.tmpl
template/en/default/admin/sudo.html.tmpl
template/en/default/admin/versions/create.html.tmpl
template/en/default/attachment/create.html.tmpl
template/en/default/attachment/diff-header.html.tmpl
template/en/default/attachment/edit.html.tmpl
template/en/default/attachment/show-multiple.html.tmpl
template/en/default/bug/activity/show.html.tmpl
template/en/default/bug/comments.html.tmpl
template/en/default/bug/create/make-template.html.tmpl
template/en/default/bug/dependency-graph.html.tmpl
template/en/default/bug/dependency-tree.html.tmpl
template/en/default/bug/edit.html.tmpl
template/en/default/bug/knob.html.tmpl
template/en/default/bug/show.html.tmpl
template/en/default/bug/summarize-time.html.tmpl
template/en/default/bug/votes/list-for-bug.html.tmpl
template/en/default/bug/votes/list-for-user.html.tmpl
template/en/default/filterexceptions.pl
template/en/default/global/choose-classification.html.tmpl
template/en/default/global/choose-product.html.tmpl
template/en/default/global/common-links.html.tmpl
template/en/default/global/footer.html.tmpl
template/en/default/global/header.html.tmpl
template/en/default/global/per-bug-queries.html.tmpl
template/en/default/global/tabs.html.tmpl
template/en/default/global/useful-links.html.tmpl
template/en/default/index.html.tmpl
template/en/default/list/quips.html.tmpl
template/en/default/list/table.html.tmpl
template/en/default/reports/chart.html.tmpl
template/en/default/reports/edit-series.html.tmpl
template/en/default/reports/report.html.tmpl
template/en/default/search/search-advanced.html.tmpl
template/en/default/search/search-specific.html.tmpl
template/en/default/search/tabs.html.tmpl

diff --git a/skins/standard/IE-fixes.css b/skins/standard/IE-fixes.css
new file mode 100755 (executable)
index 0000000..b0f3414
--- /dev/null
@@ -0,0 +1,33 @@
+/* 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.
+  *
+  * Contributor(s): Marc Schumann <wurblzap@gmail.com>
+  */
+
+#footer #useful-links li {
+    padding-bottom: 0.8ex;
+}
+
+#footer .label {
+    display: block;
+    float: left;
+    width: 8.2em;
+    padding-bottom: 0.1ex;
+}
+
+#footer #links-actions .label {
+    padding-top: 0.35em;
+}
+
+#footer .links {
+    display: inline;
+}
index 45e4937d9441cc22e00d92b48848c25f1cea7dfb..269f7427e1d4ea898edbfc9c0ebd526b6b1c3931 100644 (file)
 .bz_id_column {
 }
 
+.bz_row_odd {
+    background-color: #F7F7F7;
+    color: #000000;
+}
+
+.bz_row_even {
+    background-color: #FFFFFF;
+    color: #000000;
+}
+
 /* Style bug rows according to severity. */
 .bz_blocker { color: red; font-weight: bold; }
 .bz_critical { color: red; }
index 5111a4a4a883f69ff73b3e6e79b450f6a5526dfe..a2a25c7177618071511b368cd582e86c2fa15945 100644 (file)
   *                 Christian Reis <kiko@async.com.br>
   *                 Vitaly Harisov <vitaly@rathedg.com>
   *                 Svetlana Harisova <light@rathedg.com>
+  *                 Marc Schumann <wurblzap@gmail.com>
   */
 
-body
-{
-    color: #000;
-    background-color: #fff;
-}
+/* global (begin) */
+    body {
+        font-family: sans-serif;
+        color: #000;
+        background: #fff url("global/body-back.gif") repeat-x;
+    }
+/* global (end) */
 
 /* header (begin) */
-    #header
-    {
+    #header {
         margin-bottom: 1em;
         padding-bottom: 2px;
     }
 
-    #header form
-    {
+    #header form {
         font-size: 85%;
         display: inline;
     }
 
-    #header .links
-    {
-        font-family: sans-serif;
+    #header .btn,
+    #header .txt {
+        font-size: 80%;
+    }
+
+    #header .links {
         font-size: 85%;
         border-left: 1px solid silver;
         border-right: 1px solid silver;
@@ -52,8 +56,7 @@ body
         padding: 0.5em;
     }
 
-    #message
-    {
+    #message {
         border: 1px solid red;
 
         padding: 0.3em;
@@ -63,46 +66,45 @@ body
 /* header (end)   */
 
 /* banner (begin) */
-    #banner
-    {
+    #banner {
     }
 
 /* banner (end) */
 
 /* titles (begin) */
-    #titles
-    {
+    #titles {
         width: 100%;
         background-color: #404D6C;
         color: #fff;
-        -moz-border-radius: 5px;
-        font-family: sans-serif;
+        -moz-border-radius-topleft: 5px;
+        -moz-border-radius-topright: 5px;
         font-size: 110%;
         margin: 0;
         padding: 0.5em;
         vertical-align: bottom;
     }
 
-    #titles a
-    {
+    #titles a {
         color: #fff;
     }
 
-    #titles #title
-    {
+    #titles p {
+        margin: 0;
+        padding: 0;
+    }
+
+    #titles #title {
         font-weight: bold;
         white-space: nowrap;
     }
 
-    #titles #subtitle
-    {
+    #titles #subtitle {
         font-weight: normal;
         width: 100%;
         text-align: center;
     }
 
-    #titles #information
-    {
+    #titles #information {
         font-weight: normal;
         text-align: right;
         font-size: 90%;
@@ -112,101 +114,82 @@ body
 /* titles (end) */
 
 /* footer (begin) */
-    #footer
-    {
-        float: left;
+    #footer {
         margin-top: 5px;
         width: 100%;
-        font-family: sans-serif;
         background: #edf2f2;
         border-top: 1px solid #ddd;
         border-bottom: 1px solid #ddd;
     }
 
-    #footer form
-    {
+    #footer form {
         display: inline;
     }
 
-    #footer .btn, #footer .txt
-    {
-        font-size: 0.8em;
+    #footer .btn,
+    #footer .txt {
+        font-size: 80%;
     }
 
-    #footer #useful-links
-    {
-        padding: 0.3em;
-    }
-
-    /* hide from MSIE and NN4 */
-    [id]#footer #useful-links
-    {
-        margin: 0.3em;
+    #footer #useful-links {
         display: table;
+        padding-left: 1ex;
+        padding-right: 1ex;
     }
 
     #footer #links-actions,
     #footer #links-edit,
     #footer #links-saved,
-    #footer #links-special
-    {
+    #footer #links-special {
         display: table-row;
+        list-style-type: none;
     }
 
-    #footer .label
-    {
-        width: 8.2em;
-        display: block;
-        float: left;
-
-        vertical-align: baseline;
-
-        padding: 0.1em 0.2em;
-    }
-
-    #footer #links-actions .label
-    {
-        padding-top: 0.45em;
+    #footer .label {
+        display: table-cell;
+        white-space: nowrap;
+        vertical-align: top;
     }
 
-    /* hide from MSIE and NN4 */
-    [id]#footer .label
-    {
+    #footer .links {
         display: table-cell;
-        float: none;
-        width: auto;
-
-        padding-top: 0;
+        vertical-align: top;
     }
+/* footer (end) */
 
-    #footer .links
-    {
-        display: table-cell;
+/* link lists (begin) */
+    ul.links {
+        margin: 0;
+        padding: 0;
+        list-style-type: none;
+    }
 
-        padding: 0.1em 0.2em;
+    ul.links li {
+        display: inline;
+        white-space: nowrap;
     }
+/* link lists (end) */
 
-    /* hide from MSIE and NN4 */
-    [id]#footer .links
-    {
-        padding-top: 0;
+/* tabs (begin) */
+    .tabs td {
+        background: #eee;
+        text-align: center;
+        border-style: solid;
+        border-color: black;
+        border-width: 0px 0px 2px 0px;
+    }
         
-        vertical-align: baseline;
+    .tabs td.selected {
+        background: white;
+        border-width: 2px 2px 0px 2px;
     }
 
-    /* hide from MSIE and NN4 */
-    #footer+*
-    {
-        clear: both;
+    .tabs td.spacer {
+        background: white;
     }
-/* footer (end) */
+/* tabs (end) */
 
 /* generic (begin) */
-    body
-    {
-        background: #fff url("global/body-back.gif") repeat-x;
-    }
-
     :link {
         color: #039;
     }
@@ -222,6 +205,10 @@ body
     :link:active, :link:active {
         color: #000;
     }
+
+    .clickable_area {
+        cursor: pointer;
+    }
 /* generic (end) */
 
 div#docslinks {
@@ -235,60 +222,46 @@ div#docslinks {
     margin: 0;
 }
 
-.bz_obsolete { text-decoration: line-through; }
-.bz_inactive { text-decoration: line-through; }
+.bz_obsolete {
+    text-decoration: line-through;
+}
+.bz_inactive {
+    text-decoration: line-through;
+}
 .bz_closed,
 .bz_CLOSED td {
     text-decoration: line-through;
 }
-.bz_private { color: darkred ; background : #f3eeee ; }
-.bz_disabled { color: #a0a0a0 ; }
-
-.bz_row_odd
-{
-    background-color: #F7F7F7;
-    color: #000000;
+.bz_private {
+    color: darkred;
+    background: #f3eeee;
+}
+.bz_disabled {
+    color: #a0a0a0;
 }
 
-.bz_row_even
-{
-    background-color: #FFFFFF;
-    color: #000000;
+.bz_comment {
+    margin-bottom: 2em;
 }
 
-.bz_comment { background-color: #e0e0e0; }
-.bz_comment_hilite pre
-{
+.bz_comment_head {
+    background-color: #e0e0e0;
+}
+.bz_comment_hilite pre {
     background-color: lightgreen;
     margin: 0;
     padding: 1em 0;
 }
 
-td.tab
-{
-    background: #eee;
-    text-align: center;
-    border-style: solid;
-    border-color: black;
-    border-width: 0px 0px 2px 0px;
-}
-    
-td.tab.selected
-{
-    background: white;
-    border-width: 2px 2px 0px 2px;
-}
-
-td.tab.spacer
-{
-    background: white;
-}
-
 span.quote {
     color: #65379c;
 }
 
-table#flags th, table#flags td { vertical-align: baseline; text-align: left; }
+table#flags th,
+table#flags td {
+    vertical-align: baseline;
+    text-align: left;
+}
 
 .throw_error {
     background-color: #ff0000;
index bb33bd6e83bb6cb7cf4866fe5c0254eb1564bcbd..bdab65e429487ed4221a9f7272a16a3b151a0477 100644 (file)
@@ -39,7 +39,7 @@
 [% filtered_login = user.login FILTER html %]
 [% PROCESS global/header.html.tmpl
    title = "User Preferences"
-   h2 = filtered_login
+   subheader = filtered_login
    style_urls = ['skins/standard/admin.css']
  %]
 
   [% END %]
 [% END %]
 
-[% PROCESS global/tabs.html.tmpl %]
+[% WRAPPER global/tabs.html.tmpl
+   tabs        = tabs
+   current_tab = current_tab
+%]
 
 [% IF changes_saved %]
   <p>
   </form>
 [% END %]
 
+[% END %]
+
 [% PROCESS global/footer.html.tmpl %]
index 9b4a19bf0f1f81fa0f3f226b689836a50cde9d77..9e999839b9b6c47d49bf291e31d3344ceb3201bd 100644 (file)
   #%]
   
 [% title = BLOCK %]Add component to Product '[% product.name FILTER html %]'[% END %]
-[% h2 = BLOCK %]This page allows you to add a new component to product
+[% subheader = BLOCK %]This page allows you to add a new component to product
                 '[% product.name FILTER html %]'.[% END %]
 [% PROCESS global/header.html.tmpl
   title = title
-  h2 = h2
+  subheader = subheader
 %]
 
 <form method="post" action="editcomponents.cgi">
index 2e87af0537b0f73b1e1cf2ff36051387df6a5e95..635b63d4e5a8d8b660304b999855fee9cd9315d9 100644 (file)
   #%]
   
 [% title = BLOCK %]Add Value for the '[% field FILTER html %]' field[% END %]
-[% h2 = BLOCK %]This page allows you to add a new value for the
+[% subheader = BLOCK %]This page allows you to add a new value for the
                 '[% field FILTER html %]' field.[% END %]
 [% PROCESS global/header.html.tmpl
   title = title
-  h2 = h2
+  subheader = subheader
 %]
 
 <form method="post" action="editvalues.cgi">
index d6422f76927b67155215b0befc792b7ca097c33a..fb255304cc86d054719f0f563127b044cfc36b36 100644 (file)
@@ -28,7 +28,7 @@
 
 [% PROCESS global/header.html.tmpl
   title = "Add group"
-  h2 = "This page allows you to define a new user group."
+  subheader = "This page allows you to define a new user group."
 %]
 
 <form method="post" action="editgroups.cgi">
index ef2c7486be58610d47e8a55d9dc7585bc9b1014e..554ead7719186ac9c7ecd5fc6427e99fff415f8b 100644 (file)
@@ -34,7 +34,7 @@
 
 [% PROCESS global/header.html.tmpl
   title = "Edit Groups"
-  h2 = "This lets you edit the groups available to put users in."
+  subheader = "This lets you edit the groups available to put users in."
 %]
 
 [% edit_contentlink = "editgroups.cgi?action=changeform&amp;group=%%id%%" %]
index 45d97819e1805a1e44c19be9b8d444e3574fd6e6..9440145488c3646e7f3cbeb0da530de1b1c87b29 100755 (executable)
@@ -26,7 +26,7 @@
   
 [% PROCESS global/header.html.tmpl
   title = "Add keyword"
-  h2 = "This page allows you to add a new keyword."
+  subheader = "This page allows you to add a new keyword."
 %]
 
 <form method="post" action="editkeywords.cgi">
index edace52bfc317d104ae7412dcfeb39001d2dcbe5..a68a57bb4235f38ff1b527a440b43a12bdf2228a 100644 (file)
   #%]
   
 [% title = BLOCK %]Add Milestone to Product '[% product.name FILTER html %]'[% END %]
-[% h2 = BLOCK %]This page allows you to add a new milestone to product
+[% subheader = BLOCK %]This page allows you to add a new milestone to product
                 '[% product.name FILTER html %]'.[% END %]
 [% PROCESS global/header.html.tmpl
   title = title
-  h2 = h2
+  subheader = subheader
   onload = "document.forms['f'].milestone.focus()"
 %]
 
index afa15d73c90dc64d215a28abbe7f80abd978c523..1a1ecab3f0c4c20d7f6fe3f5819c7a9f3cff9be5 100644 (file)
 </tr>
 <tr [% IF !Param('usevotes') %]class="param_disabled" [% END %]>
   <th align="right">
-    Number of votes [% terms.abug %] in this product needs to
+    Confirmation threshold:
+  </th>
+  <td>
+    Enter the number of votes [% terms.abug %] in this product needs to
     automatically get out of the
     <a href="page.cgi?id=fields.html#status">[% status_descs.UNCONFIRMED FILTER html %]</a>
-    state:
-  </th>
-  <td><input size="5" maxlength="5" name="votestoconfirm" 
-             value="[% product.votestoconfirm FILTER html %]">
+    state.<br>
+    <input size="5" maxlength="5" name="votestoconfirm" 
+           value="[% product.votestoconfirm FILTER html %]">
   </td>
 </tr>
index 8881fc3dc84245dba8d14a43f8f82c794df50a19..08a370c6afac83edef18e5710388cbc18852e4a7 100644 (file)
@@ -55,7 +55,7 @@ page, and the Default Value will automatically apply to everyone.
         <th>Preference Text</th>
         <th>Default Value</th>
         <th>Enabled</th>
-      <tr>
+      </tr>
 
       [% FOREACH name = setting_names %]
           [% checkbox_name = name _ '-enabled' %]
index b353905450ae49234eafb6b41d475292ed717640..4b7b607e930ff55622986380eef3bb01e81a49a6 100644 (file)
@@ -48,8 +48,9 @@
     [% ELSE %]
       enter the login of 
     [% END %]
-    the <u>u</u>ser to impersonate:
+    <label for="target_login">the <u>u</u>ser to impersonate</label>:
     [% INCLUDE global/userselect.html.tmpl
+       id => "target_login"
        name => "target_login"
        value => "$target_login_default"
        accesskey => "u"
   [% END %]
   
   <p>
-    Next, please take a moment to explain why you are doing this:<br>
-    <input type="text" name="reason" size="80" maxlength="200" value="
-    [%- reason_default FILTER html %]">
+    Next, please take a moment to explain <label for="reason">why you are doing
+    this:<br>
+    <input type="text" id="reason" name="reason" size="80" maxlength="200"
+           value="[% reason_default FILTER html %]">
   </p>
   
   <p>
   
   [% IF user.authorizer.can_login %]
     <p>
-      Finally, enter your [% terms.Bugzilla %] password: 
+      Finally, enter <label for="Bugzilla_password">your [% terms.Bugzilla %]
+      password</label>:
       <input type="hidden" name="Bugzilla_login" value="
       [%- user.login FILTER html %]">
-      <input type="password" name="Bugzilla_password" maxlength="20" size="20">
+      <input type="password" id="Bugzilla_password" name="Bugzilla_password"
+             maxlength="20" size="20">
       <br>
       This is done for two reasons.  First of all, it is done to reduce 
       the chances of someone doing large amounts of damage using your 
index c421ab12b83cc57c47def4fe8340d4a1ecfcd397..5e17cd66e1999697eabbf63bc1b7400ebae82191 100644 (file)
   #%]
   
 [% title = BLOCK %]Add Version to Product '[% product.name FILTER html %]'[% END %]
-[% h2 = BLOCK %]This page allows you to add a new version to product
+[% subheader = BLOCK %]This page allows you to add a new version to product
                 '[% product.name FILTER html %]'.[% END %]
 [% PROCESS global/header.html.tmpl
   title = title
-  h2 = h2
+  subheader = subheader
 %]
 
 <form method="post" action="editversions.cgi">
index 3547f6d2eb9e5d978ea577b712271650294b54d5..fa2692d852909956502cb682c8d5995aa78344d8 100644 (file)
 
 [%# Define strings that will serve as the title and header of this page %]
 [% title = BLOCK %]Create New Attachment for [% terms.Bug %] #[% bugid %][% END %]
-[% h1 = BLOCK %]Create New Attachment for
+[% header = BLOCK %]Create New Attachment for
   [%+ "$terms.Bug $bugid" FILTER bug_link(bugid) FILTER none %][% END %]
-[% h2 = BLOCK %][% bugsummary FILTER html %][% END %]
+[% subheader = BLOCK %][% bugsummary FILTER html %][% END %]
 
 [% PROCESS global/header.html.tmpl
   title = title
-  h1 = h1
-  h2 = h2
+  header = header
+  subheader = subheader
   onload="setContentTypeDisabledState(document.entryform);"
   style_urls = [ 'skins/standard/create_attachment.css' ]
   javascript_urls = [ "js/attachment.js" ]
index 3f2eed68d7cec4920a647d6c1d91ec9d6d7307c9..97a6d0527f352922103dd2ed4063252a0ad4e0e2 100644 (file)
@@ -207,7 +207,7 @@ tbody.file pre:empty {
 [% BLOCK diffurl %][% PROCESS viewurl %]&amp;action=diff[% END %]
 
 [% IF headers %]
-  [% h1 = BLOCK %]
+  [% header = BLOCK %]
     [% IF attachid %]
       Attachment #[% attachid %]: [% description FILTER html %]
     [% ELSE %]
@@ -218,7 +218,7 @@ tbody.file pre:empty {
     [% END %]
     for <a href="show_bug.cgi?id=[% bugid %]">[% terms.bug %] #[% bugid %]</a>
   [% END %]
-  [% h2 = BLOCK %]
+  [% subheader = BLOCK %]
     [% bugsummary FILTER html %]
   [% END %]
   [% PROCESS global/header.html.tmpl %]
index b7d03a8b914d53317942eb5b41e029ce752937b3..fbd6fcfe4accf0eb2be230f3a9fd58ba21aeba19 100644 (file)
 [% title = BLOCK %]
   Attachment [% attachment.id %] Details for [% terms.Bug %] [%+ attachment.bug_id %]
 [% END %]
-[% h1 = BLOCK %]
+[% header = BLOCK %]
   Attachment [% attachment.id %] Details for
   [%+ "$terms.Bug ${attachment.bug_id}" FILTER bug_link(attachment.bug_id) FILTER none %]
 [% END %]
-[% h2 = BLOCK %][% bugsummary FILTER html %][% END %]
+[% subheader = BLOCK %][% bugsummary FILTER html %][% END %]
 
 [% PROCESS global/header.html.tmpl
   title = title
-  h1 = h1
-  h2 = h2
+  header = header
+  subheader = subheader
   style = "
     table.attachment_info th { text-align: right; vertical-align: top; }
     table.attachment_info td { text-align: left; vertical-align: top; }
     <tr>
       <td width="25%">
         <small>
-        <b>Description:</b><br>
+        <b><label for="description">Description</label>:</b><br>
           [% INCLUDE global/textarea.html.tmpl
+            id             = 'description'
             name           = 'description'
             minrows        = 3
             cols           = 25
             <input type="hidden" name="contenttypeentry"
                    value="[% attachment.contenttype FILTER html %]"><br>
         [% ELSE %]
-          <b>Filename:</b><br>
-            <input type="text" size="20" name="filename"
+          <b><label for="filename">Filename</label>:</b><br>
+            <input type="text" size="20" id="filename" name="filename"
                    value="[% attachment.filename FILTER html %]"><br>
           <b>Size:</b>
           [% IF attachment.datasize %]
             <em>deleted</em>
           [% END %]<br>
 
-          <b>MIME Type:</b><br>
-            <input type="text" size="20" name="contenttypeentry"
+          <b><label for="contenttypeentry">MIME Type</label>:</b><br>
+            <input type="text" size="20"
+                   id="contenttypeentry" name="contenttypeentry"
                    value="[% attachment.contenttype FILTER html %]"><br>
 
           <input type="checkbox" id="ispatch" name="ispatch" value="1"
         [% END %]
           <input type="checkbox" id="isobsolete" name="isobsolete" value="1"
                  [% 'checked="checked"' IF attachment.isobsolete %]>
-          <label for="isobsolete">obsolete</label><br>
+          <label for="isobsolete">obsolete</label>
           [% IF (Param("insidergroup") && user.in_group(Param("insidergroup"))) %]
-            <input type="checkbox" name="isprivate" value="1"
-                   [% " checked" IF attachment.isprivate %]> private<br><br>
-          [% ELSE %]<br>
+            <input type="checkbox" id="isprivate" name="isprivate" value="1"
+                   [% " checked" IF attachment.isprivate %]>
+            <label for="isprivate">private</label><br>
           [% END %]
+          <br>
 
         [% IF flag_types.size > 0 %]
           [% PROCESS "flag/list.html.tmpl" bug_id = attachment.bug_id
         [% END %]
 
         <div id="smallCommentFrame">
-          <b>Comment (on the [% terms.bug %]):</b><br>
+          <b><label for="comment">Comment</label> (on the
+          [%+ terms.bug %]):</b><br>
             [% INCLUDE global/textarea.html.tmpl
+              id      = 'comment'
               name    = 'comment'
               minrows = 5
               cols    = 25
index ad0dfbafd56530c0e5b0c498332f6dfce94466d8..4f4520053f0a013cbf808fbaecb367c2c32d8783 100644 (file)
 
 [% PROCESS global/variables.none.tmpl %]
 [% filtered_summary = bugsummary FILTER html %]
-[% h1 = BLOCK %]View All Attachments for
+[% header = BLOCK %]View All Attachments for
   [%+ "$terms.Bug $bugid" FILTER bug_link(bugid) FILTER none %][% END %]
 [% PROCESS global/header.html.tmpl
   title = "View All Attachments for $terms.Bug #$bugid"
-  h1 = h1
-  h2 = filtered_summary
+  header = header
+  subheader = filtered_summary
   style = "
     table.attachment_info th { text-align: right; vertical-align: top; }
     table.attachment_info td { text-align: left; vertical-align: top; }
index 91743247ae249e73f206b73cbd3c6600116ee948..2acaf3af8a7b21fbb478d47944c7ba0b469fa1fe 100644 (file)
@@ -30,8 +30,8 @@
 
 [% PROCESS global/header.html.tmpl
   title = "Changes made to $terms.bug $bug_id"
-  h1 = "Activity log"
-  h2 = "$terms.Bug <a href=\"show_bug.cgi?id=$bug_id\">$bug_id</a>"
+  header = "Activity log"
+  subheader = "$terms.Bug <a href=\"show_bug.cgi?id=$bug_id\">$bug_id</a>"
  %]
 
 <br>
index a4671d89d966cac08ecfb7a6c8acfadcbaf2034e..5add6d54f43029d115fb8ecf2b9c8f87d825cc3d 100644 (file)
   <script type="text/javascript">
   <!--
   function updateCommentPrivacy(checkbox, id) {
-    var text_elem = document.getElementById('comment_text_'+id);
+    var comment_elem = document.getElementById('comment_text_'+id).parentNode;
     if (checkbox.checked) {
-        text_elem.parentNode.className='bz_private';
-    } else {
-        text_elem.parentNode.className='';
+      if (!comment_elem.className.match('bz_private')) {
+        comment_elem.className = comment_elem.className.concat(' bz_private');
+      }
+    }
+    else {
+      comment_elem.className =
+        comment_elem.className.replace(/(\s*|^)bz_private(\s*|$)/, '$2');
     }
   }
   //-->
 
 [% BLOCK a_comment %]
   [% IF NOT comment.isprivate || isinsider %]
-    <div [% "class=\"bz_private\" " IF comment.isprivate %]
-         [% "class=\"bz_comment_hilite\" " IF marks.$count %]>
+    <div class="bz_comment[% " bz_private" IF comment.isprivate %]
+                [% " bz_comment_hilite" IF marks.$count %]">
       [% IF count == description %]
         <table>
           <tr>
-            <td align="left">
+            <th align="left">
               <b><a name="c0" href="show_bug.cgi?id=[% bug.bug_id %]#c0">
                 Description</a>:</b>&nbsp;&nbsp;
                 [% IF mode == "edit" %]
                     addReplyLink(0);
                   //--></script>
                 [% END %]
-            </td>
+            </th>
             <td align="left" width="30%">
               <b>Opened:</b> [% bug.creation_ts FILTER time %]
             </td>
           </tr>
         </table>
       [% ELSE %]
-        <br>
-        <span class="bz_comment">
-          ------- <i>Comment
+        <span class="bz_comment_head">
+          <span class="comment_rule">-------</span> <i>Comment
           <a name="c[% count %]" href="show_bug.cgi?id=[% bug.bug_id %]#c[% count %]">
             #[% count %]</a> From 
           <a href="mailto:[% comment.email FILTER html %]">
           <script type="text/javascript"><!-- 
             addReplyLink([% count %]); //--></script>
           [% END %]
-          -------
+          <span class="comment_rule">-------</span>
         </span>
       [% END %]
         
index bf1e743c0e87949fe4ce4b662afc69018c1b907e..6a7ea6a3b7ad800f674bcee2ef15122739f72102 100644 (file)
@@ -29,7 +29,7 @@
 
 [% PROCESS global/header.html.tmpl
   title = "Bookmarks are your friend"
-  h1 = "Template constructed"
+  header = "Template constructed"
 %]
 
 <p>
index 48ca456c9227132382f05a82b1408095681d5733..5c1eb8471fdc0c92c24559ca7de5bb382e8ef872 100644 (file)
 [% PROCESS global/variables.none.tmpl %]
 
 [% title = "Dependency Graph"
-   h1 = title
+   header = title
  %]
 
 [% IF NOT multiple_bugs AND NOT doall %]
   [% filtered_desc = short_desc FILTER html %]
   [% title = "$title for $terms.bug $bug_id"
-     h1 = "$h1 for $terms.bug <a href=\"show_bug.cgi?id=$bug_id\">$bug_id</a>"
-     h2 = filtered_desc
+     header = "$header for $terms.bug <a href=\"show_bug.cgi?id=$bug_id\">$bug_id</a>"
+     subheader = filtered_desc
    %]
 [% END %]
 
index b9f2cde399e086ee8fb64c151baa6be18ab37228..e01352a57c4e20ba66a76c6f53fdcfcf68b2fe30 100644 (file)
 
 [% filtered_desc = blocked_tree.$bugid.short_desc FILTER html %]
 [% PROCESS global/header.html.tmpl
-   title = "Dependency tree for $terms.Bug $bugid"
-   h1    = "Dependency tree for 
-            <a href=\"show_bug.cgi?id=$bugid\">$terms.Bug $bugid</a>"
+   title           = "Dependency tree for $terms.Bug $bugid"
+   header          = "Dependency tree for 
+                      <a href=\"show_bug.cgi?id=$bugid\">$terms.Bug $bugid</a>"
    javascript_urls = ["js/expanding-tree.js"]
-   style_urls = ["skins/standard/dependency-tree.css"]
-   h2    = filtered_desc
+   style_urls      = ["skins/standard/dependency-tree.css"]
+   subheader      = filtered_desc
 %]
 
 [% PROCESS depthControlToolbar %]
index 12fcb05c8129b84a95808e6c26d220f4f13a11b1..c829a71f4b39248431331e1908bbf9bfc8be4740 100644 (file)
 
 <hr>
 
+<div id="comments">
 [% PROCESS bug/comments.html.tmpl
    comments = bug.longdescs
    mode = "edit"
  %]
+</div>
 
 </form>
 
index 02b5bed8aba6378ffc98dda3872fd55cfc3e3cf9..8aa118adcd9ad9adc732ec1ed2c33931f4067213 100644 (file)
@@ -24,7 +24,9 @@
 
 [%# *** Knob *** %]
 
-  <br>
+<br>
+<div id="knob">
+  <div id="knob-options">
 
   [% knum = 1 %]
   [% initial_action_shown = 0 %]
       [% END %]
     [% END %]
   [% END %]
+  </div>
 
+  <div id="knob-buttons">
   <input type="submit" value="Commit" id="commit">
   <p>
     <font size="+1">
              value="[% Param("move-button-text") %]">
     [% END %]
   </p>
+  </div>
+</div>
 
 [%# Common actions %]
 
index 07b71c8fa8547365abf26651bc4b5e72d54a5d7d..8e877c8f286ff027859fb7f7ef8e721ebf14cbaf 100644 (file)
   [% filtered_desc = bug.short_desc FILTER html %]
   [% filtered_timestamp = bug.delta_ts FILTER time %]
   [% PROCESS global/header.html.tmpl
-    title = "$terms.Bug $bug.bug_id - $filtered_desc"
-    h1 = "$terms.Bug&nbsp;$bug.bug_id"
-    h2 = filtered_desc
-    h3 = "Last modified: $filtered_timestamp"
+    title = "$terms.Bug $bug.bug_id &ndash; $filtered_desc"
+    header = "$terms.Bug&nbsp;$bug.bug_id"
+    subheader = filtered_desc
+    header_addl_info = "Last modified: $filtered_timestamp"
     bodyclasses = ['bz_bug',
                    "bz_status_$bug.bug_status",
                    "bz_component_$bug.component",
index 8090aa3196753e9a344502aded69d2526b828100..535b486e7fecc6a61817065ceb1dd7ed1e8c4772 100644 (file)
 [% title = "Time Summary " %]
 [% IF do_depends %]
     [% title = title _ "for " %]
-    [% h1 = title _ "$terms.Bug $ids.0" FILTER bug_link(ids.0) FILTER none %]
+    [% header = title _ "$terms.Bug $ids.0" FILTER bug_link(ids.0) FILTER none %]
     [% title = title _ "$terms.Bug $ids.0: " %]
-    [% h1 = (h1 _ " (and $terms.bugs blocking it)") IF do_depends %]
+    [% header = (header _ " (and $terms.bugs blocking it)") IF do_depends %]
 [% ELSE %]
     [% title = title _ "($ids.size $terms.bugs selected)" %]    
-    [% h1 = title %]
+    [% header = title %]
 [% END %]
 
 [% PROCESS global/header.html.tmpl 
     title = title 
-    h1 = h1 
+    header = header 
     style_urls = ["skins/standard/summarize-time.css"]
     %]
 
index 4b4514a9007f3a111fbc360cbb79ff26ae340f61..d23205f1e8ca15667e8cddc958247b19f1d79ece 100644 (file)
@@ -30,7 +30,7 @@
 
 [% PROCESS global/header.html.tmpl
            title = "Show Votes"
-           h2 = "$terms.Bug <a href=\"show_bug.cgi?id=$bug_id\">$bug_id</a>"
+           subheader = "$terms.Bug <a href=\"show_bug.cgi?id=$bug_id\">$bug_id</a>"
  %]
 
 [% total = 0 %]
index 82d8cb658f9a7a00f27c382ee2ac15e682d65680..6a0e90ebb27a5309d0d793845f9a74eb2d96b566 100644 (file)
@@ -39,7 +39,7 @@
 [% PROCESS global/variables.none.tmpl %]
 
 [% IF !header_done %]
-  [% h2 = voting_user.login FILTER html %]
+  [% subheader = voting_user.login FILTER html %]
   [% IF canedit %]
     [% title = "Change Votes" %]
     [% IF bug_id %]
index 0c37234fffe78763705b7965d8b262032e6ac5f1..a2d4b4d2b1f34fb8fc932a88c2a16f11ad2aa016 100644 (file)
   'status.name',
 ],
 
+'search/tabs.html.tmpl' => [
+  'content',
+],
+
 'request/queue.html.tmpl' => [
   'column_headers.$group_field', 
   'column_headers.$column', 
   'style', 
   'onload',
   'title',
-  'h1',
-  'h2',
-  'h3', 
+  '" &ndash; $header" IF header',
+  'subheader',
+  'header_addl_info', 
   'message', 
 ],
 
   'size', 
 ],
 
+'global/tabs.html.tmpl' => [
+  'content', 
+],
+
 'global/common-links.html.tmpl' => [
   'email', 
 ],
index df0c379118dcfb4e034837ab1fb3a47ee710594f..1ef99d4d8daf094da301d28658f4f381f8c7ed69 100644 (file)
@@ -23,7 +23,7 @@
 
 [% IF target == "enter_bug.cgi" %]
   [% title = "Select Classification" %]
-  [% h2 = "Please select the classification." %]
+  [% subheader = "Please select the classification." %]
 [% END %]
 
 [% DEFAULT title = "Choose the classification" %]
         
 [% IF Param('showallproducts') %]
   <tr>
-    <th align="right" valign="center" height=50>
+    <th align="right">
       <a href="[% target FILTER url_quote %]?classification=__all
             [% IF cloned_bug_id %]&amp;cloned_bug_id=[% cloned_bug_id FILTER url_quote %][% END -%] 
             [%- IF format %]&amp;format=[% format FILTER url_quote %][% END %]">
       All</a>:
     </th>
 
-    <td valign="center">&nbsp;Show all products</td>
+    <td valign="top">&nbsp;Show all products</td>
   </tr>    
 [% END %]
 
 [% FOREACH class = classifications %]
   <tr>
-    <th align="right" valign="top">
+    <th align="right">
       <a href="[% target FILTER url_quote %]?classification=[% class.name FILTER url_quote -%]
             [%- IF cloned_bug_id %]&amp;cloned_bug_id=[% cloned_bug_id FILTER url_quote %][% END -%] 
             [%- IF format %]&amp;format=[% format FILTER url_quote %][% END %]">
index da47332c2b37132484c3b6f7b08fc1e21ceaa372..0d4a451b6a2dec600c3ac2d62756154529530ff2 100644 (file)
 
 [% IF target == "enter_bug.cgi" %]
   [% title = "Enter $terms.Bug" %]
-  [% h2 = BLOCK %]First, you must pick a product on which to enter [% terms.abug %]. [% END %]
+  [% subheader = BLOCK %]First, you must pick a product on which to enter [% terms.abug %]. [% END %]
 [% ELSIF target == "describecomponents.cgi" %]
   [% title = "$terms.Bugzilla Component Descriptions" %]
-  [% h2 = "Please specify the product whose components you want described." %]
+  [% subheader = "Please specify the product whose components you want described." %]
 [% END %]
 
 [% DEFAULT title = "Choose a Product" %]
index 252b895cb219bb5038a624f97ede745ac2f6e700..cfb7458e04b63513c80bb10a3fe89ab027b73be3 100644 (file)
 
 [% DEFAULT btn_id = "find" %]
 
-<div class="links">
-  <a href="./">Home</a> |
-  <a href="enter_bug.cgi">New</a> |
-  <a href="query.cgi">Search</a> |
+<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="query.cgi">Search</a></li>
 
-  <form action="buglist.cgi" method="get"
+  <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" name="quicksearch">
     <input class="btn" type="submit" value="Find" id="[% btn_id FILTER html %]">
-  </form> |
+    [%-# Work around FF bug: keep this on one line %]</form></li>
 
-  <a href="report.cgi">Reports</a>
+  <li><span class="separator">| </span><a href="report.cgi">Reports</a></li>
 
-  [% IF user.id %]
-    [% email = user.login FILTER url_quote %]
-    | <a href="request.cgi?requester=[% email %]&amp;requestee=
-               [%- email %]&amp;do_union=1&amp;group=type">My Requests</a>
-  [% ELSE %]
-    | <a href="request.cgi">Requests</a>
-  [% END %]
+  <li>
+    <span class="separator">| </span>
+    [% IF user.id %]
+      [% email = user.login FILTER url_quote %]
+      <a href="request.cgi?requester=[% email %]&amp;requestee=
+               [% email %]&amp;do_union=1&amp;group=type">My Requests</a>
+    [% ELSE %]
+      <a href="request.cgi">Requests</a>
+    [% END %]
+  [%-# Work around FF bug: keep this on one line %]</li>
 
   [% IF user.id && Param('usevotes') %]
-    | <a href="votes.cgi?action=show_user">My&nbsp;Votes</a>
+    <li><span class="separator">| </span><a href="votes.cgi?action=show_user">My&nbsp;Votes</a></li>
   [% END %]
 
   [% IF user.login %]
-    [% ' | <a href="sanitycheck.cgi">Sanity&nbsp;check</a>' IF user.groups.tweakparams %]
-    [% IF user.authorizer.can_logout %]
-      | <a href="relogin.cgi">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 %]
+    [% '<li><span class="separator">| </span><a href="sanitycheck.cgi">Sanity&nbsp;check</a></li>'
+       IF user.groups.tweakparams %]
+    <li>
+      <span class="separator">| </span>
+      [% IF user.authorizer.can_logout %]
+        <a href="relogin.cgi">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 %]
     [% IF Param('createemailregexp')
           && user.authorizer.user_can_create_account %]
-      | <a href="createaccount.cgi">New&nbsp;Account</a>
+      <li><span class="separator">| </span><a href="createaccount.cgi">New&nbsp;Account</a></li>
     [% END %]
     [% IF user.authorizer.can_login %]
-      | <a href="index.cgi?GoAheadAndLogIn=1">Log&nbsp;In</a>
+      <li><span class="separator">| </span><a href="index.cgi?GoAheadAndLogIn=1">Log&nbsp;In</a></li>
     [% END %]
   [% END %]
-</div>
+</ul>
index fc10166213074d93803ab5c13b84bb3e39ef4d81..7de84aa70d740e30ea0b5ff2d38c61e2084a1399 100644 (file)
@@ -27,6 +27,8 @@
 
 [% INCLUDE "global/help.html.tmpl" %]
 
+</div>
+
 [%# Migration note: below this point, this file corresponds to the old Param
   # 'footerhtml'
   #%]
@@ -45,3 +47,4 @@
 
 </body>
 </html>
+
index 9b9420cedcc006f9407623ff767f1ef196977a36..d629a6c23fd333678b5876c57ffb8883d26972f6 100644 (file)
@@ -25,9 +25,9 @@
 [%# INTERFACE:
   # (All the below interface elements are optional.)
   # title: string. Page title.
-  # h1: string. Main page header.
-  # h2: string. Page subheader.
-  # h3: string. Right-aligned subheader.
+  # 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.
 [% END %]
 
 [% DEFAULT
-  h2 = ""
-  h3 = ""
+  subheader = ""
+  header_addl_info = ""
   onload = ""
   style_urls = []
 %]
 
-[%# We should be able to set the default value of the h1 variable
+[%# 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 h1 to the empty string
-  # to avoid h1 inheriting the value of title, since DEFAULT
-  # mistakenly treats empty strings as undefined and gives h1 the
+  # 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 h1's default value here only if it is undefined. %]
-[% IF !h1.defined %][% h1 = title %][% END %]
+  # 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">
             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.
               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).
                   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 %]
 
                        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]-->
 
     [%# this puts the live bookmark up on firefox for the Atom feed %]
     [% IF atomlink %]
 
 <table border="0" cellspacing="0" cellpadding="0" id="titles">
 <tr>
-  <td id="title">
-    [% terms.Bugzilla %][% IF h1 %] - [% h1 %] [% END %]
-  </td>
+    <td id="title">
+      <p>[% terms.Bugzilla %]
+      [% " &ndash; $header" IF header %]</p>
+    </td>
 
-  [% IF h2 %]
+  [% IF subheader %]
     <td id="subtitle">
-      [% h2 %]
+      <p class="subheader">[% subheader %]</p>
     </td>
   [% END %]
 
-  [% IF h3 %]
+  [% IF header_addl_info %]
     <td id="information">
-      [% h3 %]
+      <p class="header_addl_info">[% header_addl_info %]</p>
     </td>
   [% END %]
 </tr>
 
 [% PROCESS "global/common-links.html.tmpl" btn_id = "find_top" %]
 
+</div>
+
+<div id="bugzilla-body">
+
 [% IF Param('announcehtml') %]
 [% Param('announcehtml') FILTER none %]
 [% END %]
 [% IF message %]
 <div id="message">[% message %]</div>
 [% END %]
-
-</div>
index 631fb85091042becb66ab4661d55d26a2c0f6487..a9b4e44dbd4e55a7b2b31c52acaa241bd549877b 100644 (file)
     [% lists_of_bugs.push(q.name) %]
   [% END %]
 
-  <div id="links-special">
-    <div class="label">&nbsp;</div>
-    <div class="links">
-      <hr>
+  <li id="links-special">
+    <div class="label"></div>
+    <ul class="links"><li class="form">
       <form id="list_of_bugs" action="buglist.cgi" method="get">
         <input type="hidden" name="cmdtype" value="doit">
         <input type="hidden" name="remtype" value="asnamed">
         [% END %]
         <span id="lob_new_query_text">
           [% " or to" IF lists_of_bugs.size %] the new saved search:
-          <input type="text" id="lob_newqueryname" name="newqueryname" size="20" maxlength="64"
+          <input class="txt" type="text" id="lob_newqueryname"
+                 size="20" maxlength="64" name="newqueryname"
                  onkeyup="manage_old_lists();">
         </span>
         <input type="submit" value="Commit" id="commit_list_of_bugs">
       </form>
-    </div>
-  </div>
+    </li></ul>
+  </li>
 [% END %]
index 6f8601b86458474f45140f4c176eaf188f7c7215..25b931de31986e60a72bf3dba5c43e2e02893d0e 100644 (file)
@@ -18,6 +18,7 @@
   #
   # Contributor(s): Gervase Markham <gerv@gerv.net>
   #                 Myk Melez <myk@mozilla.org>
+  #                 Marc Schumann <wurblzap@gmail.com>
   #%]
 
 [%# INTERFACE:
   # current_tab_name: string. name of the currently selected tab
   #%]
 
-<center>
-  <table cellspacing="0" cellpadding="10" border="0" width="100%">
+<div class="tabbed">
+  <table class="tabs" cellspacing="0" cellpadding="10" border="0" width="100%">
     <tr>
-      <td class="tab spacer">&nbsp;</td>
+      <td class="spacer">&nbsp;</td>
 
       [% FOREACH tab = tabs %]
         [% IF tab.name == current_tab_name %]
-          <td class="tab selected">[% tab.label FILTER html %]</td>
+          <td class="selected">[% tab.label FILTER html %]</td>
         [% ELSE %]
-          <td class="tab"><a href="[% tab.link FILTER html %]">[% tab.label FILTER html %]</a></td>
+          <td class="clickable_area" onClick="document.location='[% tab.link FILTER html %]'"><a href="[% tab.link FILTER html %]">[% tab.label FILTER html %]</a></td>
         [% END %]
       [% END %]
 
-       <td class="tab spacer">&nbsp;</td>
-     </tr>
-   </table>
-</center>
+      <td class="spacer">&nbsp;</td>
+    </tr>
+  </table>
+
+  <div class="tabbody">
+    [% content %]
+  </div>
+
+</div>
index e1bb2affe6e54ecdf148b439b7597a0fdd56f46b..8faed287519acd6897138c90f03fd0cde89c7700 100644 (file)
 
 [% PROCESS global/variables.none.tmpl %]
 
-<div id="useful-links">
-  <div id="links-actions">
+<ul id="useful-links">
+  <li id="links-actions">
     <div class="label">Actions:</div>
-    [% PROCESS "global/common-links.html.tmpl" btn_id = "find_bottom" %]
-  </div>
+      [% PROCESS "global/common-links.html.tmpl" btn_id = "find_bottom" %]
+  </li>
       
-    [% IF user.login %] 
-  <div id="links-edit">
-    <div class="label">Edit:</div>
-    <div class="links">
-
-        <a href="userprefs.cgi">Prefs</a>
-        [% ' | <a href="editparams.cgi">Parameters</a> ' _
-           ' | <a href="editsettings.cgi">User Preferences</a>' 
+  [% IF user.login %] 
+    <li id="links-edit">
+      <div class="label">Edit:</div>
+      <ul class="links">
+        <li><a href="userprefs.cgi">Prefs</a></li>
+        [% ' <li><span class="separator">| </span><a href="editparams.cgi">Parameters</a></li>' _
+           ' <li><span class="separator">| </span><a href="editsettings.cgi">User Preferences</a></li>'
                                                   IF user.groups.tweakparams %]
-        [% ' | <a href="editusers.cgi">Users</a>'     IF user.groups.editusers 
+        [% ' <li><span class="separator">| </span><a href="editusers.cgi">Users</a></li>'     IF user.groups.editusers
                                                   || user.can_bless %]
         [% IF Param('useclassification') && user.groups.editclassifications %]
-            [% ' | <a href="editclassifications.cgi">Classifications</a>' %]
-        [% END %] 
-        [% ' | <a href="editproducts.cgi">Products</a>' 
+            [% ' <li><span class="separator">| </span><a href="editclassifications.cgi">Classifications</a></li>' %]
+        [% END %]
+        [% ' <li><span class="separator">| </span><a href="editproducts.cgi">Products</a></li>'
                                                IF user.groups.editcomponents %]
-        [% ' | <a href="editflagtypes.cgi">Flags</a>'
+        [% ' <li><span class="separator">| </span><a href="editflagtypes.cgi">Flags</a></li>'
                                                IF user.groups.editcomponents %]
-        [% ' | <a href="editfields.cgi">Custom Fields</a>'
+        [% ' <li><span class="separator">| </span><a href="editfields.cgi">Custom Fields</a></li>'
                                                IF user.groups.admin %]
-        [% ' | <a href="editvalues.cgi">Field Values</a>'
+        [% ' <li><span class="separator">| </span><a href="editvalues.cgi">Field Values</a></li>'
                                                IF user.groups.editcomponents %]
-        [% ' | <a href="editgroups.cgi">Groups</a>' 
+        [% ' <li><span class="separator">| </span><a href="editgroups.cgi">Groups</a></li>'
                                                  IF user.groups.creategroups %]
-        [% ' | <a href="editkeywords.cgi">Keywords</a>' 
+        [% ' <li><span class="separator">| </span><a href="editkeywords.cgi">Keywords</a></li>'
                                                  IF user.groups.editkeywords %]
-        [% ' | <a href="editwhines.cgi">Whining</a>' 
+        [% ' <li><span class="separator">| </span><a href="editwhines.cgi">Whining</a></li>'
                                               IF user.groups.bz_canusewhines %]
-    </div>
-  </div>
-    [% END %]
+      </ul>
+    </li>
+  [% END %]
     
-
     [%# Saved searches %]
     
-  <div id="links-saved">
-    <div class="label">
-      [% IF user.showmybugslink OR user.queries.size %]
-        Saved&nbsp;Searches:
-      [% END %]
-    </div>
-    <div class="links">
-      [% IF user.showmybugslink %]
-        [% filtered_username = user.login FILTER url_quote %]
-        <a href="[% Param('mybugstemplate').replace('%userid%', filtered_username) %]">My&nbsp;[% terms.Bugs %]</a>
-        [% print_pipe = 1 %]
-      [% END %]
-
-      [% FOREACH q = user.queries %]
-        [% NEXT IF q.userid != user.id %]
-        [% IF q.link_in_footer %]
-          [% " | " IF print_pipe %]
-          <a href="buglist.cgi?cmdtype=dorem&amp;remaction=run&amp;namedcmd=
-                   [% q.name FILTER url_quote %]">[% q.name FILTER html FILTER no_break %]</a>
+  [% IF user.showmybugslink OR user.queries.size %]
+    <li id="links-saved">
+      <div class="label">
+          Saved Searches:
+      </div>
+      <ul class="links">
+        [% IF user.showmybugslink %]
+          [% filtered_username = user.login FILTER url_quote %]
+          <li><a href="[% Param('mybugstemplate').replace('%userid%', filtered_username) %]">My [% terms.Bugs %]</a></li>
           [% print_pipe = 1 %]
         [% END %]
-      [% END %]
 
-      [% " <br> " IF print_pipe %]
-      [% print_pipe = 0 %]
-      [% FOREACH q = user.queries %]
-        [% NEXT IF q.userid == user.id %]
-        [% IF q.link_in_footer %]
-          [% " | " IF print_pipe %]
-          <a href="buglist.cgi?cmdtype=dorem&amp;remaction=run&amp;namedcmd=
-                   [% q.name FILTER url_quote %]&amp;sharer_id=
-                   [% q.userid FILTER url_quote %]"
-             class="shared"
-             title="Shared by [% q.user.identity FILTER html %]">[% q.name FILTER html FILTER no_break %]</a>
-          [% print_pipe = 1 %]
+        [% FOREACH q = user.queries %]
+          [% NEXT IF q.userid != user.id %]
+          [% IF q.link_in_footer %]
+            <li>[% '<span class="separator">| </span>' IF print_pipe %]
+            <a href="buglist.cgi?cmdtype=runnamed&amp;namedcmd=[% q.name FILTER url_quote %]">[% q.name FILTER html %]</a></li>
+            [% print_pipe = 1 %]
+          [% END %]
+        [% END %]
+        [% new_line = print_pipe %]
+        [% print_pipe = 0 %]
+        [% FOREACH q = user.queries %]
+          [% NEXT IF q.userid == user.id %]
+          [% IF q.link_in_footer %]
+            [% IF new_line %]
+              <br>
+              [% new_line = 0 %]
+            [% END %]
+            <li>
+            [% '<span class="separator">| </span>' IF print_pipe %]
+            <a href="buglist.cgi?cmdtype=dorem&amp;remaction=run&amp;namedcmd=
+                     [% q.name FILTER url_quote %]&amp;sharer_id=
+                     [% q.userid FILTER url_quote %]"
+               class="shared"
+               title="Shared by [% q.user.identity FILTER html %]">[% q.name FILTER html FILTER no_break %]</a></li>
+            [% print_pipe = 1 %]
+          [% END %]
         [% END %]
-      [% END %]
-    </div>
-  </div>
+      </ul>
+    </li>
+  [% END %]
 
   [%# Individual bugs addition %]
 
 
   [%# Sections of links to more things users can do on this installation. %]
   [% Hook.process("end") %]
-</div>
+</ul>
index 61f724b416e9b85963ea7845d939d92a4f049d2e..9c3a88b2f651e13b4406e7d344597a165a7b3a27 100644 (file)
@@ -31,8 +31,8 @@
 
 [% PROCESS global/header.html.tmpl
    title = "$terms.Bugzilla Main Page"
-   h1 = "Main Page" 
-   h3 = "version $constants.BUGZILLA_VERSION"
+   header = "Main Page" 
+   header_addl_info = "version $constants.BUGZILLA_VERSION"
    style_urls = [ 'skins/standard/index.css' ]
    onload = 'document.forms[\'f\'].quicksearch.focus();'
 %]
index a752dce5f67d6a5e51e38cee719fedcd5346191e..32529f4cc88e4b07f215a8b4d2266a26298997e7 100644 (file)
@@ -31,7 +31,7 @@
 
 [% PROCESS global/header.html.tmpl
            title = "$terms.Bugzilla Quip System"
-           h1 = "Add your own clever headline"
+           header = "Add your own clever headline"
  %]
 
 [% IF added_quip %]
index b025cd14a8c8cc12f23d8364dc1e9e197b847407..6f88cd909a150c4ff8c89cac552c70d36c5d3726 100644 (file)
     [% tableheader %]
   [% END %]
 
-  <tr class="bz_[% bug.bug_severity FILTER css_class_quote -%]
+  <tr class="clickable_area bz_bugitem
+             bz_[% bug.bug_severity FILTER css_class_quote -%]
              bz_[% bug.priority FILTER css_class_quote -%]
              bz_[% bug.bug_status FILTER css_class_quote -%]
              [%+ "bz_$bug.resolution" FILTER css_class_quote IF bug.resolution -%]
              [%+ "bz_secure" IF bug.secure_mode -%]
              [%+ "bz_secure_mode_$bug.secure_mode" FILTER css_class_quote IF bug.secure_mode -%]
              [%+ count % 2 == 1 ? "bz_row_odd" : "bz_row_even" -%]
-             ">
+             "
+      onClick="document.location='show_bug.cgi?id=[% bug.bug_id %]'">
              
 
     [% IF dotweak %]
     </td>
     [% END %]
     <td class="first-child">
-      <a href="show_bug.cgi?id=[% bug.bug_id %]">[% bug.bug_id %]</a>
+      <a name="b[% bug.bug_id %]"
+         href="show_bug.cgi?id=[% bug.bug_id %]">[% bug.bug_id %]</a>
       <span style="display: none">[%+ '[SEC]' IF bug.secure_mode %]</span>
     </td>
 
index 8547c359211b8161813c8c5bd03050fd9c22268f..821b6b0b64f157b005979324bb48b1f6467aaf41 100644 (file)
@@ -28,7 +28,7 @@
 
 [% PROCESS global/header.html.tmpl 
   title = "Chart"
-  h3 = time2str("%Y-%m-%d %H:%M:%S", time)
+  header_addl_info = time2str("%Y-%m-%d %H:%M:%S", time)
 %]
 
 <div align="center">
index 4d3526e3cce203b4ebd09e1f71f6cf781e401863..690e24305f250dce3e2fae93bdbc7920e069b792 100644 (file)
@@ -20,7 +20,7 @@
   #%]
 
 [% title = "Edit Series" %]
-[% h2 = BLOCK %]
+[% subheader = BLOCK %]
   [% default.category FILTER html %] / 
   [%+ default.subcategory FILTER html %] /
   [%+ default.name FILTER html %]
index cf4dda8277d03bad172cb78afdcd08aa6e8136b9..5e7d74dac40a1c6ad39b494d385b394ac8577590 100644 (file)
@@ -74,7 +74,7 @@
     .t4     { background-color: #c3d3ed } /* darker blue */
     .ttotal { background-color: #cfffdf } /* light green */
   "
-  h3 = time2str("%Y-%m-%d %H:%M:%S", time)
+  header_addl_info = time2str("%Y-%m-%d %H:%M:%S", time)
 %]
 
 [% IF debug %]
index e746df09bf63adb32c53c4a5da338b86626593ac..c9cac7643daec88808dba97ea73f81f3d9c29b5c 100644 (file)
@@ -37,7 +37,7 @@ var queryform = "queryform"
 
 [% PROCESS global/header.html.tmpl
   title = "Search for $terms.bugs"
-  h1 = ""
+  header = ""
   onload = "doOnSelectProduct(0); initHelp();"
   javascript = js_data
   javascript_urls = [ "js/productform.js" ]
@@ -46,7 +46,7 @@ var queryform = "queryform"
            }"
 %]
 
-[% PROCESS search/tabs.html.tmpl %]
+[% WRAPPER search/tabs.html.tmpl %]
 
 [% button_name = "Search" %]
 
@@ -84,4 +84,6 @@ var queryform = "queryform"
 
 [% PROCESS "search/search-help.html.tmpl" IF cgi.param("help") %]
 
+[% END %]
+
 [% PROCESS global/footer.html.tmpl %]
index 8288b76e3e195045c38266ca9375e506b34e30f4..e09caca7f17091b23f504daaf81a2a3082f287f2 100644 (file)
 
 [% PROCESS global/header.html.tmpl 
   title = "Find a Specific " _ terms.Bug
-  h1 = ""
+  header = ''
 %]
 
-[% PROCESS search/tabs.html.tmpl %]
+[% WRAPPER search/tabs.html.tmpl %]
 
 <p>
 Find a specific [% terms.bug %] by entering words that describe it.  
@@ -116,5 +116,7 @@ for "crash secure SSL flash".
 </table>
 </form>
 
+[% END %]
+
 [% PROCESS global/footer.html.tmpl %]
 
index 00358cb59cb503efc0e26cd8d62c5e733aebd013..2fe05fa848787b874d8dadc2e39b0bd61f32dfa5 100644 (file)
   # This template has no interface.
   #%]
 
-[% PROCESS global/tabs.html.tmpl
+[% WRAPPER global/tabs.html.tmpl
      tabs = [ { name => 'specific', label => "Find a Specific $terms.Bug",
                 link => "query.cgi?format=specific" },
               { name => 'advanced', label => "Advanced Search",
                 link => "query.cgi?format=advanced" } ]
      current_tab_name = query_format || format || "advanced"
 %]
+
+[% content %]
+
+[% END %]