View | Details | Raw Unified | Return to bug 55383
Collapse All | Expand All

(-)build.xml (+7 lines)
Lines 210-215 Link Here
210
  <tstamp>
210
  <tstamp>
211
    <format property="year" pattern="yyyy" locale="en"/>
211
    <format property="year" pattern="yyyy" locale="en"/>
212
    <format property="today" pattern="MMM d yyyy" locale="en"/>
212
    <format property="today" pattern="MMM d yyyy" locale="en"/>
213
    <format property="today-iso-8601" pattern="yyyy-MM-dd" locale="en"/>
213
    <format property="tstamp" pattern="hh:mm:ss"/>
214
    <format property="tstamp" pattern="hh:mm:ss"/>
214
  </tstamp>
215
  </tstamp>
215
  <filterset id="version.filters">
216
  <filterset id="version.filters">
Lines 845-850 Link Here
845
      <param name="relative-path" expression="."/>
846
      <param name="relative-path" expression="."/>
846
      <param name="version" expression="${version}"/>
847
      <param name="version" expression="${version}"/>
847
      <param name="build-date" expression="${today}"/>
848
      <param name="build-date" expression="${today}"/>
849
      <param name="build-date-iso-8601" expression="${today-iso-8601}"/>
848
      <param name="year" expression="${year}"/>
850
      <param name="year" expression="${year}"/>
849
    </xslt>
851
    </xslt>
850
    <xslt basedir="webapps/docs/appdev"
852
    <xslt basedir="webapps/docs/appdev"
Lines 859-864 Link Here
859
      <param name="relative-path" expression=".."/>
861
      <param name="relative-path" expression=".."/>
860
      <param name="version" expression="${version}"/>
862
      <param name="version" expression="${version}"/>
861
      <param name="build-date" expression="${today}"/>
863
      <param name="build-date" expression="${today}"/>
864
      <param name="build-date-iso-8601" expression="${today-iso-8601}"/>
862
      <param name="year" expression="${year}"/>
865
      <param name="year" expression="${year}"/>
863
    </xslt>
866
    </xslt>
864
    <xslt basedir="webapps/docs/funcspecs"
867
    <xslt basedir="webapps/docs/funcspecs"
Lines 873-878 Link Here
873
      <param name="relative-path" expression=".."/>
876
      <param name="relative-path" expression=".."/>
874
      <param name="version" expression="${version}"/>
877
      <param name="version" expression="${version}"/>
875
      <param name="build-date" expression="${today}"/>
878
      <param name="build-date" expression="${today}"/>
879
      <param name="build-date-iso-8601" expression="${today-iso-8601}"/>
876
      <param name="year" expression="${year}"/>
880
      <param name="year" expression="${year}"/>
877
    </xslt>
881
    </xslt>
878
    <xslt basedir="webapps/docs/config"
882
    <xslt basedir="webapps/docs/config"
Lines 887-892 Link Here
887
      <param name="relative-path" expression=".."/>
891
      <param name="relative-path" expression=".."/>
888
      <param name="version" expression="${version}"/>
892
      <param name="version" expression="${version}"/>
889
      <param name="build-date" expression="${today}"/>
893
      <param name="build-date" expression="${today}"/>
894
      <param name="build-date-iso-8601" expression="${today-iso-8601}"/>
890
      <param name="year" expression="${year}"/>
895
      <param name="year" expression="${year}"/>
891
    </xslt>
896
    </xslt>
892
    <xslt basedir="webapps/docs/architecture"
897
    <xslt basedir="webapps/docs/architecture"
Lines 901-906 Link Here
901
      <param name="relative-path" expression=".."/>
906
      <param name="relative-path" expression=".."/>
902
      <param name="version" expression="${version}"/>
907
      <param name="version" expression="${version}"/>
903
      <param name="build-date" expression="${today}"/>
908
      <param name="build-date" expression="${today}"/>
909
      <param name="build-date-iso-8601" expression="${today-iso-8601}"/>
904
      <param name="year" expression="${year}"/>
910
      <param name="year" expression="${year}"/>
905
    </xslt>
911
    </xslt>
906
912
Lines 916-921 Link Here
916
      <param name="relative-path" expression=".."/>
922
      <param name="relative-path" expression=".."/>
917
      <param name="version" expression="${version}"/>
923
      <param name="version" expression="${version}"/>
918
      <param name="build-date" expression="${today}"/>
924
      <param name="build-date" expression="${today}"/>
925
      <param name="build-date-iso-8601" expression="${today-iso-8601}"/>
919
      <param name="year" expression="${year}"/>
926
      <param name="year" expression="${year}"/>
920
    </xslt>
927
    </xslt>
921
  </target>
928
  </target>
(-)webapps/docs/images/docs-stylesheet.css (+265 lines)
Line 0 Link Here
1
@charset "utf-8";
2
/*
3
  Licensed to the Apache Software Foundation (ASF) under one or more
4
  contributor license agreements.  See the NOTICE file distributed with
5
  this work for additional information regarding copyright ownership.
6
  The ASF licenses this file to You under the Apache License, Version 2.0
7
  (the "License"); you may not use this file except in compliance with
8
  the License.  You may obtain a copy of the License at
9
10
      http://www.apache.org/licenses/LICENSE-2.0
11
12
  Unless required by applicable law or agreed to in writing, software
13
  distributed under the License is distributed on an "AS IS" BASIS,
14
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
  See the License for the specific language governing permissions and
16
  limitations under the License.
17
*/
18
19
20
/* General style */
21
22
body {
23
  margin: 0;
24
}
25
26
body, input {
27
  font-family: 'Lucida Sans Unicode', Arial, Helvetica, sans-serif;
28
  font-size: 10.5pt;
29
}
30
31
code, pre {
32
  font-family: Consolas, monospace;
33
}
34
35
img {
36
  border: 0;
37
}
38
39
table {
40
  border-collapse: collapse;
41
}
42
43
main {
44
  /* Remove this once all IEs support <main> element */
45
  display: block;
46
}
47
48
49
/* Layout */
50
51
#wrapper {
52
  min-width: 400px;
53
}
54
55
#header {
56
  box-shadow: 0 0 7px #aaa;
57
  border-bottom: 1px solid #bbb;
58
}
59
60
#header > div {
61
  padding-left: 15px;
62
  padding-right: 15px;
63
  
64
  background: linear-gradient(to bottom, #ffffff -10%, #F8F3E4 100%);
65
  position: relative;
66
}
67
68
#header .logo {
69
  float: left;
70
  padding-top: 10px;
71
  min-width: 190px;
72
}
73
74
#header .logo  img{
75
  /* To avoid that the Font Descender being added to the parent div's height */
76
  vertical-align: middle;
77
}
78
79
#header .asfLogo {
80
  float: right;
81
  position: relative;
82
  top: 8px;
83
}
84
85
#header h1 {
86
  margin-top: 0.6em;
87
  margin-bottom: 0;
88
}
89
90
#header .versionInfo {
91
  font-size: 13pt;
92
  margin-bottom: 1em;
93
}
94
95
#middle {
96
97
  display: table;
98
  table-layout: fixed;
99
  margin: 0;
100
  
101
  width: 100%;
102
  
103
  
104
}
105
#middle > div { display: table-row; }
106
#middle > div > div { display: table-cell; vertical-align: top; }
107
108
109
110
#mainLeft {
111
  width: 190px;
112
}
113
114
#mainLeft > div {
115
  margin-top: -1px; /* to overwrite border of element above */
116
  padding-left: 16px;
117
  padding-right: 14px;
118
  padding-top: 6px;
119
  padding-bottom: 15px;
120
  background-color: #F8F3E4;
121
  border-right: 1px solid #bbb;
122
  border-bottom: 1px solid #bbb;
123
  font-size: 10pt;
124
  border-bottom-right-radius: 20px;
125
  box-shadow: 0 0 5px #aaa;
126
}
127
128
#mainLeft h2 {
129
  margin-bottom: 0.2em;
130
  font-size: 1.2em;
131
}
132
133
#mainLeft ul {
134
  padding: 0;
135
  margin: 0;
136
  list-style-type: none;
137
}
138
139
#mainLeft ul a {
140
  text-indent: -0.6em;
141
  padding-left: 1.4em;
142
  display: block;
143
  text-decoration: none;
144
  color: #444;
145
}
146
#mainLeft ul a:hover {
147
  color: #000;
148
  background-color: #D1c9b9;
149
}
150
151
#mainRight {
152
  padding-left: 14px;
153
  padding-right: 20px;
154
  
155
}
156
157
#footer {
158
  margin-top: 30px;
159
  padding-top: 20px;
160
  padding-bottom: 20px;
161
  padding-left: 20px;
162
  padding-right: 20px;
163
  border-top: 1px solid #ccc;
164
  color: #444;
165
  text-align: center;
166
  /* font-style: italic; */
167
  font-size: 9pt;
168
}
169
170
171
/* Content */
172
173
#content div.text {
174
  padding-left: 1em;
175
  padding-left: 1em;
176
}
177
178
#content h3, #content h4, #content h5, #content h6 {
179
  padding-left: 5px;
180
  padding-right: 5px;
181
  background-color: #eaeaea;
182
  border: 1px solid #ccc;
183
  border-radius: 4px;
184
}
185
186
#content h4, #content h5, #content h6 {
187
  background-color: #f6f6f6;
188
}
189
190
code {
191
  background-color: rgb(224,255,255);
192
  padding: 0 0.1em;
193
}
194
195
div.codeBox pre code, code.attributeName, code.propertyName {
196
  background-color: transparent;
197
}
198
div.codeBox {
199
  overflow: auto;
200
  /* TODO: Maybe add margin-top and margin-bottom like with <p> */
201
}
202
div.codeBox pre {
203
  margin: 0;
204
  padding: 4px;
205
  border: 1px solid #999;
206
  border-radius: 5px;
207
  background-color: #eff8ff;
208
  display: table; /* To prevent <pre>s from taking the complete available width. */
209
  /*
210
  When it is officially supported, use the following CSS instead of display: table
211
  to prevent big <pre>s from exceeding the browser window:
212
  max-width: available;
213
  width: min-content;
214
  */
215
}
216
217
div.codeBox pre.wrap {
218
  white-space: pre-wrap;
219
}
220
221
222
table.defaultTable th {
223
  background-color: #88b;
224
  color: #fff;
225
}
226
227
table.detail-table th {
228
  background-color: #039acc;
229
  color: #fff;
230
}
231
table.detail-table td {
232
  background-color: #DAF2FA;
233
}
234
235
table.defaultTable th, table.defaultTable td, table.detail-table th, table.detail-table td {
236
  border: 1px solid #777;
237
  padding: 5px;
238
  text-align: left;
239
}
240
241
242
p.notice {
243
  border: 1px solid rgb(255, 0, 0);
244
  background-color: rgb(238, 238, 238);
245
  color: rgb(0, 51, 102);
246
  padding: 0.5em;
247
  margin: 1em 2em 1em 1em;
248
}
249
250
251
/* Changelog-Styles */
252
253
ul.changelog {
254
  padding-left: 1em;
255
  list-style-type: none;
256
}
257
258
ul.changelog  li{
259
  padding-top: 5px;
260
  padding-bottom: 5px;
261
}
262
263
ul.changelog img {
264
  vertical-align: middle
265
}
(-)webapps/docs/tomcat-docs.xsl (-410 / +258 lines)
Lines 1-4 Link Here
1
<?xml version="1.0" encoding="ISO-8859-1"?>
1
<?xml version="1.0" encoding="UTF-8"?>
2
<!--
2
<!--
3
  Licensed to the Apache Software Foundation (ASF) under one or more
3
  Licensed to the Apache Software Foundation (ASF) under one or more
4
  contributor license agreements.  See the NOTICE file distributed with
4
  contributor license agreements.  See the NOTICE file distributed with
Lines 20-66 Link Here
20
<!-- $Id$ -->
20
<!-- $Id$ -->
21
21
22
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
22
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
23
  version="1.0">
23
  version="3.0">
24
24
25
25
26
  <!-- Output method -->
26
  <!-- Output method -->
27
  <xsl:output method="html"
27
  <xsl:output method="html"
28
            encoding="iso-8859-1"
28
              html-version="5.0"
29
              indent="no"/>
29
              encoding="UTF-8"
30
              indent="no"
31
              doctype-system="about:legacy-compat"/>
30
32
31
33
32
  <!-- Defined parameters (overrideable) -->
34
  <!-- Defined parameters (overrideable) -->
33
  <xsl:param    name="home-name"        select="'The Tomcat Project'"/>
35
  <xsl:param    name="home-name"           select="'The Tomcat Project'"/>
34
  <xsl:param    name="home-href"        select="'http://tomcat.apache.org/'"/>
36
  <xsl:param    name="home-href"           select="'http://tomcat.apache.org/'"/>
35
  <xsl:param    name="home-logo"        select="'/images/tomcat.gif'"/>
37
  <xsl:param    name="home-logo"           select="'/images/tomcat-new.png'"/>
36
  <xsl:param    name="printer-logo"     select="'/images/printer.gif'"/>
38
  <xsl:param    name="home-stylesheet"     select="'/images/docs-stylesheet.css'"/>
37
  <xsl:param    name="apache-logo"      select="'/images/asf-logo.gif'"/>
39
  <xsl:param    name="apache-logo"         select="'/images/asf-logo.gif'"/>
38
  <xsl:param    name="subdir"           select="''"/>
40
  <xsl:param    name="subdir"              select="''"/>
39
  <xsl:param    name="relative-path"    select="'.'"/>
41
  <xsl:param    name="relative-path"       select="'.'"/>
40
  <xsl:param    name="version"          select="'8.0.x'"/>
42
  <xsl:param    name="version"             select="'8.0.x'"/>
41
  <xsl:param    name="majorversion"     select="'8.0'"/>
43
  <xsl:param    name="majorversion"        select="'8.0'"/>
42
  <xsl:param    name="build-date"       select="'MMM d yyyy'"/>
44
  <xsl:param    name="build-date"          select="'MMM d yyyy'"/>
43
  <xsl:param    name="year"             select="'yyyy'"/>
45
  <xsl:param    name="build-date-iso-8601" select="'yyyy-dd-MM'"/>
44
  <xsl:param    name="void-image"       select="'/images/void.gif'"/>
46
  <xsl:param    name="year"                select="'yyyy'"/>
45
  <xsl:param    name="project-menu"     select="'menu'"/>
47
  <xsl:param    name="buglink"             select="'http://issues.apache.org/bugzilla/show_bug.cgi?id='"/>
46
  <xsl:param    name="standalone"       select="''"/>
48
  <xsl:param    name="revlink"             select="'http://svn.apache.org/viewvc?view=rev&amp;rev='"/>
47
  <xsl:param    name="buglink"          select="'http://issues.apache.org/bugzilla/show_bug.cgi?id='"/>
49
  <xsl:param    name="sitedir"             select="''"/>
48
  <xsl:param    name="revlink"          select="'http://svn.apache.org/viewvc?view=rev&amp;rev='"/>
50
  <xsl:param    name="filename"            select="'-'"/>
49
  <xsl:param    name="sitedir"          select="''"/>
50
  <xsl:param    name="filename"         select="'-'"/>
51
51
52
  <!-- Defined variables (non-overrideable) -->
52
  <!-- Defined variables (non-overrideable) -->
53
  <xsl:variable name="body-bg"          select="'#ffffff'"/>
54
  <xsl:variable name="body-fg"          select="'#000000'"/>
55
  <xsl:variable name="body-link"        select="'#525D76'"/>
56
  <xsl:variable name="banner-bg"        select="'#525D76'"/>
57
  <xsl:variable name="banner-fg"        select="'#ffffff'"/>
58
  <xsl:variable name="sub-banner-bg"    select="'#828DA6'"/>
59
  <xsl:variable name="sub-banner-fg"    select="'#ffffff'"/>
60
  <xsl:variable name="source-color"     select="'#023264'"/>
61
  <xsl:variable name="attributes-color" select="'#023264'"/>
62
  <xsl:variable name="table-th-bg"      select="'#039acc'"/>
63
  <xsl:variable name="table-td-bg"      select="'#a0ddf0'"/>
64
  <xsl:variable name="commentslink">/<xsl:value-of select="$sitedir"/>comments.html</xsl:variable>
53
  <xsl:variable name="commentslink">/<xsl:value-of select="$sitedir"/>comments.html</xsl:variable>
65
54
66
  <!-- Process an entire document into an HTML page -->
55
  <!-- Process an entire document into an HTML page -->
Lines 67-256 Link Here
67
  <xsl:template match="document">
56
  <xsl:template match="document">
68
  <xsl:variable name="project"
57
  <xsl:variable name="project"
69
              select="document('project.xml')/project"/>
58
              select="document('project.xml')/project"/>
70
    <html>
59
<html lang="en">
71
    <head>
60
<head>
72
    <title><xsl:value-of select="project/title"/> (<xsl:value-of select="$version"/>) - <xsl:value-of select="properties/title"/></title>
61
  <!-- Note: XLST seems to always output a 
73
    <xsl:for-each select="properties/author">
62
       <META http-equiv="Content-Type" content="text/html; charset=UTF-8">
74
      <xsl:variable name="name">
63
       when method="html",
75
        <xsl:value-of select="."/>
64
       therefore we can't use
76
      </xsl:variable>
65
       <meta charset="UTF-8"/>.
77
      <!--
66
67
       In XHTML, this is not needed as the encoding will be
68
       specified in the XML declaration.
69
  -->
70
71
  <xsl:variable name="css-src">
72
    <xsl:value-of select="$relative-path"/><xsl:value-of select="$home-stylesheet"/>
73
  </xsl:variable>
74
  <link href="{$css-src}" rel="stylesheet" type="text/css"/>
75
  <style type="text/css" media="print"><![CDATA[
76
    .noPrint { display: none; }
77
    #middle > div > div#mainLeft { display: none; }
78
    a { color: inherit; text-decoration: none; }
79
  ]]></style>
80
81
  <title><xsl:value-of select="project/title"/> (<xsl:value-of select="$version"/>) - <xsl:value-of select="properties/title"/></title>
82
  <xsl:for-each select="properties/author">
83
    <xsl:variable name="name">
84
      <xsl:value-of select="."/>
85
    </xsl:variable>
86
    <!--
78
      <xsl:variable name="email">
87
      <xsl:variable name="email">
79
        <xsl:value-of select="@email"/>
88
        <xsl:value-of select="@email"/>
80
      </xsl:variable>
89
      </xsl:variable>
81
       -->
90
    -->
82
      <meta name="author" content="{$name}"/>
91
    <meta name="author" content="{$name}"/>
83
      <!-- Don't publish e-mail addresses
92
    <!-- Don't publish e-mail addresses
84
      <meta name="email" content="{$email}"/>
93
    <meta name="email" content="{$email}"/>
85
       -->
94
    -->
86
    </xsl:for-each>
95
  </xsl:for-each>
87
        <style type="text/css" media="print">
88
            .noPrint {display: none;}
89
            td#mainBody {width: 100%;}
90
        </style>
91
        <style type="text/css">
92
            code {background-color:rgb(224,255,255);padding:0 0.1em;}
93
            code.attributeName, code.propertyName {background-color:transparent;}
94
        </style>
95
        <style type="text/css">
96
            .wrapped-source code { display: block; background-color: transparent; }
97
            .wrapped-source div { margin: 0 0 0 1.25em; }
98
            .wrapped-source p { margin: 0 0 0 1.25em; text-indent: -1.25em; }
99
        </style>
100
        <style type="text/css">
101
            p.notice {
102
                border: 1px solid rgb(255, 0, 0);
103
                background-color: rgb(238, 238, 238);
104
                color: rgb(0, 51, 102);
105
                padding: 0.5em;
106
                margin: 1em 2em 1em 1em;
107
            }
108
        </style>
109
    </head>
110
96
111
    <body bgcolor="{$body-bg}" text="{$body-fg}" link="{$body-link}"
97
  <!-- Script for ASF Comments System. -->
112
          alink="{$body-link}" vlink="{$body-link}">
98
  <!-- 
99
    Use data-* attributes for retrieval of XSLT-generated data
100
    in JavaScript.
101
    Use this approach rather than directly inserting text
102
    in a JS string literal as that would cause
103
    problems when the string contains special characters
104
    like ", ', \n etc.
105
  -->
106
  <xsl:variable name="comments-identifier">
107
    <xsl:value-of select="$sitedir"/><xsl:value-of select="$subdir"/><xsl:value-of select="substring($filename,1,string-length($filename)-4)"/>
108
  </xsl:variable>
109
  <script type="application/javascript"
110
      data-comments-identifier="{$comments-identifier}"><![CDATA[
111
    "use strict"; // Enable strict mode
113
112
114
    <table border="0" width="100%" cellspacing="0">
113
    (function() {
114
      var thisScript = document.currentScript;
115
      if (!thisScript) { // Workaround for IE <= 11
116
        var scripts = document.getElementsByTagName("script");
117
        thisScript = scripts[scripts.length - 1];
118
      }
119
      document.addEventListener("DOMContentLoaded", (function() {
120
        var commentsDiv = document.getElementById("comments_thread");
121
        var commentsShortname = "tomcat";
122
        var commentsIdentifier = "http://tomcat.apache.org/" +
123
          thisScript.getAttribute("data-comments-identifier") + ".html";
115
124
116
      <xsl:comment>PAGE HEADER</xsl:comment>
125
        (function(w, d) {
117
      <tr>
126
          if (w.location.hostname.toLowerCase() == "tomcat.apache.org") {
118
        <td>
127
            commentsDiv.appendChild(d.createTextNode("Loading comments…"));
128
            var s = d.createElement("script");
129
            s.type = "application/javascript";
130
            s.async = true;
131
            s.src = "https://comments.apache.org/show_comments.lua?site=" +
132
              encodeURIComponent(commentsShortname) +
133
              "&page=" + encodeURIComponent(commentsIdentifier);
134
            d.head.appendChild(s);
135
          } else {
136
            commentsDiv.appendChild(d.createTextNode("Comments are disabled for this page at the moment."));
137
          }
138
        })(window, document);
139
      }), false);
140
    })();
141
  ]]></script>
142
  </head>
143
144
  <body>
145
  <div id="wrapper">
146
  <!-- Header -->
147
  <header id="header">
148
    <div>
149
      <div>
119
        <xsl:if test="project/logo">
150
        <xsl:if test="project/logo">
120
          <xsl:variable name="alt">
121
            <xsl:value-of select="project/logo"/>
122
          </xsl:variable>
123
          <xsl:variable name="home">
124
            <xsl:value-of select="project/@href"/>
125
          </xsl:variable>
126
          <xsl:variable name="src">
151
          <xsl:variable name="src">
127
            <xsl:value-of select="$relative-path"/><xsl:value-of select="project/logo/@href"/>
152
            <xsl:value-of select="$relative-path"/><xsl:value-of select="$home-logo"/>
128
          </xsl:variable>
153
          </xsl:variable>
129
154
          <div class="logo noPrint">
130
          <xsl:comment>PROJECT LOGO</xsl:comment>
155
            <a href="{project/@href}"><img alt="Tomcat Home" src="{$src}"/></a>
131
          <a href="{$home}">
156
          </div>
132
            <img src="{$src}" align="right" alt="{$alt}" border="0"/>
133
          </a>
134
        </xsl:if>
157
        </xsl:if>
135
        </td>
136
        <td>
137
          <h1><font face="arial,helvetica,sanserif"><xsl:value-of select="$project/title"/></font></h1>
138
          <font face="arial,helvetica,sanserif">Version <xsl:value-of select="$version"/>, <xsl:value-of select="$build-date"/></font>
139
        </td>
140
        <td>
141
          <xsl:comment>APACHE LOGO</xsl:comment>
142
          <xsl:variable name="src">
143
            <xsl:value-of select="$relative-path"/><xsl:value-of select="$apache-logo"/>
144
          </xsl:variable>
145
          <a href="http://www.apache.org/">
146
            <img src="{$src}" align="right" alt="Apache Logo" border="0"/>
147
          </a>
148
        </td>
149
      </tr>
150
    </table>
151
158
152
    <table border="0" width="100%" cellspacing="4">
159
        <div style="height: 1px;"/>
160
        <div class="asfLogo"><a href="http://www.apache.org/" target="_blank"><img src="http://www.apache.org/images/feather.png" alt="The Apache Software Foundation" style="width: 266px; height: 83px;"/></a></div>
161
        <h1><xsl:value-of select="$project/title"/></h1>
162
        <div class="versionInfo">
163
          Version <xsl:value-of select="$version"/>,
164
          <time datetime="{$build-date-iso-8601}"><xsl:value-of select="$build-date"/></time>
165
        </div>
166
        <div style="height: 1px;"/>
167
        <div style="clear: left;"/>
168
      </div>
169
    </div>
170
  </header>
153
171
154
      <xsl:comment>HEADER SEPARATOR</xsl:comment>
172
  <div id="middle">
155
      <tr>
173
    <div>
156
        <td colspan="2">
174
      <div id="mainLeft" class="noprint">
157
          <hr noshade="noshade" size="1"/>
175
        <div>
158
        </td>
176
          <!-- Navigation -->
159
      </tr>
177
          <nav>
178
            <xsl:apply-templates select="project/body/menu"/>
179
          </nav>
180
        </div>
181
      </div>
182
      <div id="mainRight">
183
        <div id="content">
184
          <!-- Main Part -->
185
          <main>
186
            <h2><xsl:value-of select="properties/title"/></h2>
187
            <xsl:apply-templates select="body/section"/>
160
188
161
      <tr>
189
            <!-- Comments Section -->
190
            <xsl:if test="not(properties/no-comments)">
191
              <div class="noprint">
192
                <h3 id="comments_section">
193
                  Comments
194
                </h3>
162
195
163
        <xsl:comment>LEFT SIDE NAVIGATION</xsl:comment>
196
                <div class="text">
164
        <td width="20%" valign="top" nowrap="nowrap" class="noPrint">
197
                  <p class="notice">
165
          <xsl:apply-templates select="project/body/menu"/>
198
                    <strong>Notice: </strong>This comments section collects your suggestions
166
        </td>
199
                    on improving documentation for Apache Tomcat.<br/><br/>
200
                    If you have trouble and need help, read
201
                    <a href="http://tomcat.apache.org/findhelp.html">Find Help</a> page
202
                    and ask your question on the tomcat-users
203
                    <a href="http://tomcat.apache.org/lists.html">mailing list</a>.
204
                    Do not ask such questions here. This is not a Q&amp;A section.<br/><br/>
205
                    The Apache Comments System is explained <a href="{$commentslink}">here</a>.
206
                    Comments may be removed by our moderators if they are either
207
                    implemented or considered invalid/off-topic.
208
                  </p>
209
                  <div id="comments_thread"/>
210
                </div>
211
              </div>
212
            </xsl:if>
167
213
168
        <xsl:comment>RIGHT SIDE MAIN BODY</xsl:comment>
214
          </main>
169
        <td width="80%" valign="top" align="left" id="mainBody">
215
        </div>
170
          <h1><xsl:value-of select="properties/title"/></h1>
216
      </div>
171
          <xsl:apply-templates select="body/section"/>
217
    </div>
172
        </td>
218
  </div>
173
219
174
      </tr>
220
  <!-- Footer -->
221
  <footer id="footer">
222
    Copyright © 1999-<xsl:value-of select="$year"/>, The Apache Software Foundation
223
  </footer>
224
</div>
225
</body>
226
</html>
175
227
176
      <xsl:if test="not(properties/no-comments)">
177
      <tr class="noPrint">
178
228
179
        <td width="20%" valign="top" nowrap="nowrap" class="noPrint">
180
        </td>
181
        <td width="80%" valign="top" align="left">
182
          <table border="0" cellspacing="0" cellpadding="2">
183
            <!-- Comment heading -->
184
            <tr><td bgcolor="{$banner-bg}">
185
                <font color="{$banner-fg}" face="arial,helvetica.sanserif">
186
                <a name="comments_section" id="comments_section"><strong>Comments</strong></a></font>
187
              </td>
188
            </tr>
189
            <!-- Comment body -->
190
            <tr><td>
191
            <blockquote>
192
            <p class="notice">
193
              <strong>Notice: </strong>This comments section collects your suggestions
194
              on improving documentation for Apache Tomcat.<br/><br/>
195
              If you have trouble and need help, read
196
              <a href="http://tomcat.apache.org/findhelp.html">Find Help</a> page
197
              and ask your question on the tomcat-users
198
              <a href="http://tomcat.apache.org/lists.html">mailing list</a>.
199
              Do not ask such questions here. This is not a Q&amp;A section.<br/><br/>
200
              The Apache Comments System is explained <a href="{$commentslink}">here</a>.
201
              Comments may be removed by our moderators if they are either
202
              implemented or considered invalid/off-topic.</p>
203
              <script type="text/javascript">
204
              <xsl:text disable-output-escaping="yes"><![CDATA[<!--//--><![CDATA[//><!--
205
              var comments_shortname = 'tomcat';
206
              var comments_identifier = 'http://tomcat.apache.org/]]></xsl:text><xsl:value-of select="$sitedir"/><xsl:value-of select="$subdir"/><xsl:value-of select="substring($filename,1,string-length($filename)-4)"/><xsl:text disable-output-escaping="yes"><![CDATA[.html';
207
              (function(w, d) {
208
                  if (w.location.hostname.toLowerCase() == "tomcat.apache.org") {
209
                      d.write('<div id="comments_thread"><\/div>');
210
                      var s = d.createElement('script');
211
                      s.type = 'text/javascript';
212
                      s.async = true;
213
                      s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
214
                      (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
215
                  }
216
                  else {
217
                      d.write('<div id="comments_thread"><strong>Comments are disabled for this page at the moment.<\/strong><\/div>');
218
                  }
219
              })(window, document);
220
              //--><!]]]]>></xsl:text></script>
221
            </blockquote></td></tr>
222
          </table>
223
        </td>
224
      </tr>
225
      </xsl:if>
226
227
      <xsl:comment>FOOTER SEPARATOR</xsl:comment>
228
      <tr>
229
        <td colspan="2">
230
          <hr noshade="noshade" size="1"/>
231
        </td>
232
      </tr>
233
234
      <xsl:comment>PAGE FOOTER</xsl:comment>
235
      <tr><td colspan="2">
236
        <div align="center"><font color="{$body-link}" size="-1"><em>
237
        Copyright &#169; 1999-<xsl:value-of select="$year"/>, Apache Software Foundation
238
        </em></font></div>
239
      </td></tr>
240
241
    </table>
242
    </body>
243
    </html>
244
245
  </xsl:template>
229
  </xsl:template>
246
230
247
231
248
  <!-- Process a menu for the navigation bar -->
232
  <!-- Process a menu for the navigation bar -->
249
  <xsl:template match="menu">
233
  <xsl:template match="menu">
250
    <p><strong><xsl:value-of select="@name"/></strong></p>
234
  <div>
235
    <h2><strong><xsl:value-of select="@name"/></strong></h2>
251
    <ul>
236
    <ul>
252
      <xsl:apply-templates select="item"/>
237
      <xsl:apply-templates select="item"/>
253
    </ul>
238
    </ul>
239
  </div>
254
  </xsl:template>
240
  </xsl:template>
255
241
256
242
Lines 265-271 Link Here
265
251
266
  <!-- Process a documentation section -->
252
  <!-- Process a documentation section -->
267
  <xsl:template match="section">
253
  <xsl:template match="section">
268
    <xsl:variable name="name">
254
    <xsl:variable name="name2">
269
      <xsl:choose>
255
      <xsl:choose>
270
        <xsl:when test="@anchor">
256
        <xsl:when test="@anchor">
271
          <xsl:value-of select="@anchor" />
257
          <xsl:value-of select="@anchor" />
Lines 275-314 Link Here
275
        </xsl:otherwise>
261
        </xsl:otherwise>
276
      </xsl:choose>
262
      </xsl:choose>
277
    </xsl:variable>
263
    </xsl:variable>
278
    <xsl:variable name="name2">
264
    <xsl:variable name="name">
279
      <xsl:value-of select="translate($name, ' #', '__')"/>
265
      <xsl:value-of select="translate($name2, ' #', '__')"/>
280
    </xsl:variable>
266
    </xsl:variable>
281
    <table border="0" cellspacing="0" cellpadding="2">
267
282
      <!-- Section heading -->
268
283
      <tr><td bgcolor="{$banner-bg}">
269
    <!-- Section heading -->
284
          <font color="{$banner-fg}" face="arial,helvetica.sanserif">
270
    <h3 id="{$name}">
285
          <xsl:if test="$name != $name2"><a name="{$name}"><xsl:comment>()</xsl:comment></a></xsl:if>
286
          <a name="{$name2}">
287
          <strong><xsl:value-of select="@name"/></strong></a></font>
288
        </td>
289
      <xsl:if test="@rtext">
271
      <xsl:if test="@rtext">
290
        <!-- Additional right-aligned text cell in section heading. It is used by changelog.xml -->
272
        <!-- Additional right-aligned text cell in section heading. It is used by changelog.xml -->
291
        <td align="right" bgcolor="{$banner-bg}">
273
        <span style="float: right;">
292
          <font color="{$banner-fg}" face="arial,helvetica.sanserif">
274
          <xsl:value-of select="@rtext"/>
293
          <strong><xsl:value-of select="@rtext"/></strong></font>
275
        </span><xsl:text>&#x20;</xsl:text> <!-- Ensure a space follows after </span> -->
294
        </td>
295
      </xsl:if>
276
      </xsl:if>
296
      </tr>
277
      <xsl:value-of select="@name"/>
297
      <!-- Section body -->
278
    </h3>
298
      <tr><td>
279
    <!-- Section body -->
299
      <xsl:if test="@rtext">
280
    <div class="text">
300
          <xsl:attribute name="colspan">2</xsl:attribute>
281
      <xsl:apply-templates/>
301
      </xsl:if>
282
    </div>
302
      <blockquote>
283
303
        <xsl:apply-templates/>
304
      </blockquote></td></tr>
305
    </table>
306
  </xsl:template>
284
  </xsl:template>
307
285
308
286
309
  <!-- Process a documentation subsection -->
287
  <!-- Process a documentation subsection -->
310
  <xsl:template match="subsection">
288
  <xsl:template match="subsection">
311
    <xsl:variable name="name">
289
    <xsl:variable name="name2">
312
      <xsl:choose>
290
      <xsl:choose>
313
        <xsl:when test="@anchor">
291
        <xsl:when test="@anchor">
314
          <xsl:value-of select="@anchor" />
292
          <xsl:value-of select="@anchor" />
Lines 323-344 Link Here
323
        </xsl:otherwise>
301
        </xsl:otherwise>
324
      </xsl:choose>
302
      </xsl:choose>
325
    </xsl:variable>
303
    </xsl:variable>
326
    <xsl:variable name="name2">
304
    <xsl:variable name="name">
327
      <xsl:value-of select="translate($name, ' #', '__')"/>
305
      <xsl:value-of select="translate($name2, ' #', '__')"/>
328
    </xsl:variable>
306
    </xsl:variable>
329
    <table border="0" cellspacing="0" cellpadding="2">
307
308
    <div class="subsection">
330
      <!-- Subsection heading -->
309
      <!-- Subsection heading -->
331
      <tr><td bgcolor="{$sub-banner-bg}">
310
      <h4 id="{$name}">
332
          <font color="{$sub-banner-fg}" face="arial,helvetica.sanserif">
311
        <xsl:value-of select="@name"/>
333
          <xsl:if test="$name != $name2"><a name="{$name}"><xsl:comment>()</xsl:comment></a></xsl:if>
312
      </h4>
334
          <a name="{$name2}">
335
          <strong><xsl:value-of select="@name"/></strong></a></font>
336
      </td></tr>
337
      <!-- Subsection body -->
313
      <!-- Subsection body -->
338
      <tr><td><blockquote>
314
      <div class="text">
339
        <xsl:apply-templates/>
315
        <xsl:apply-templates/>
340
      </blockquote></td></tr>
316
      </div>
341
    </table>
317
    </div>
318
342
  </xsl:template>
319
  </xsl:template>
343
320
344
321
Lines 348-354 Link Here
348
  </xsl:template>
325
  </xsl:template>
349
326
350
  <xsl:template mode="toc" match="section|subsection">
327
  <xsl:template mode="toc" match="section|subsection">
351
    <xsl:variable name="name">
328
    <xsl:variable name="name2">
352
      <xsl:choose>
329
      <xsl:choose>
353
        <xsl:when test="@anchor">
330
        <xsl:when test="@anchor">
354
          <xsl:value-of select="@anchor" />
331
          <xsl:value-of select="@anchor" />
Lines 363-372 Link Here
363
        </xsl:otherwise>
340
        </xsl:otherwise>
364
      </xsl:choose>
341
      </xsl:choose>
365
    </xsl:variable>
342
    </xsl:variable>
366
    <xsl:variable name="name2">
343
    <xsl:variable name="name">
367
      <xsl:value-of select="translate($name, ' #', '__')"/>
344
      <xsl:value-of select="translate($name2, ' #', '__')"/>
368
    </xsl:variable>
345
    </xsl:variable>
369
    <li><a href="#{$name2}"><xsl:value-of select="@name"/></a>
346
    <li><a href="#{$name}"><xsl:value-of select="@name"/></a>
370
    <xsl:if test="subsection">
347
    <xsl:if test="subsection">
371
      <ol><xsl:apply-templates mode="toc" select="subsection"/></ol>
348
      <ol><xsl:apply-templates mode="toc" select="subsection"/></ol>
372
    </xsl:if>
349
    </xsl:if>
Lines 376-434 Link Here
376
353
377
  <!-- Process a source code example -->
354
  <!-- Process a source code example -->
378
  <xsl:template match="source">
355
  <xsl:template match="source">
379
    <xsl:variable name="void">
356
  <div class="codeBox">
380
      <xsl:value-of select="$relative-path"/><xsl:value-of select="$void-image"/>
357
    <pre>
381
    </xsl:variable>
358
      <xsl:if test="@wrapped='true'">
382
    <div align="left">
359
        <xsl:attribute name="class">wrap</xsl:attribute>
383
      <table cellspacing="4" cellpadding="0" border="0">
360
      </xsl:if>
384
        <tr>
361
      <code><xsl:apply-templates/></code>
385
          <td bgcolor="{$source-color}" width="1" height="1">
362
    </pre>
386
            <img src="{$void}" alt="" width="1" height="1" vspace="0" hspace="0" border="0"/>
363
  </div>
387
          </td>
388
          <td bgcolor="{$source-color}" height="1">
389
            <img src="{$void}" alt="" width="1" height="1" vspace="0" hspace="0" border="0"/>
390
          </td>
391
          <td bgcolor="{$source-color}" width="1" height="1">
392
            <img src="{$void}" alt="" width="1" height="1" vspace="0" hspace="0" border="0"/>
393
          </td>
394
        </tr>
395
        <tr>
396
          <td bgcolor="{$source-color}" width="1">
397
            <img src="{$void}" alt="" width="1" height="1" vspace="0" hspace="0" border="0"/>
398
          </td>
399
    <xsl:choose>
400
      <xsl:when test="@wrapped='true'">
401
          <td bgcolor="#ffffff" height="1">
402
            <div class="wrapped-source">
403
            <code>
404
              <xsl:apply-templates />
405
            </code>
406
            </div>
407
          </td>
408
      </xsl:when>
409
      <xsl:otherwise>
410
          <td bgcolor="#ffffff" height="1"><pre>
411
            <xsl:value-of select="."/>
412
          </pre></td>
413
      </xsl:otherwise>
414
    </xsl:choose>
415
          <td bgcolor="{$source-color}" width="1">
416
            <img src="{$void}" alt="" width="1" height="1" vspace="0" hspace="0" border="0"/>
417
          </td>
418
        </tr>
419
        <tr>
420
          <td bgcolor="{$source-color}" width="1" height="1">
421
            <img src="{$void}" alt="" width="1" height="1" vspace="0" hspace="0" border="0"/>
422
          </td>
423
          <td bgcolor="{$source-color}" height="1">
424
            <img src="{$void}" alt="" width="1" height="1" vspace="0" hspace="0" border="0"/>
425
          </td>
426
          <td bgcolor="{$source-color}" width="1" height="1">
427
            <img src="{$void}" alt="" width="1" height="1" vspace="0" hspace="0" border="0"/>
428
          </td>
429
        </tr>
430
      </table>
431
    </div>
432
  </xsl:template>
364
  </xsl:template>
433
365
434
366
Lines 446-463 Link Here
446
378
447
  <!-- Process an attributes list with nested attribute elements -->
379
  <!-- Process an attributes list with nested attribute elements -->
448
  <xsl:template match="attributes">
380
  <xsl:template match="attributes">
449
    <table border="1" cellpadding="5">
381
    <table class="defaultTable">
450
      <tr>
382
      <tr>
451
        <th width="15%" bgcolor="{$attributes-color}">
383
        <th style="width: 15%;">
452
          <font color="#ffffff">Attribute</font>
384
          Attribute
453
        </th>
385
        </th>
454
        <th width="85%" bgcolor="{$attributes-color}">
386
        <th style="width: 85%;">
455
          <font color="#ffffff">Description</font>
387
          Description
456
        </th>
388
        </th>
457
      </tr>
389
      </tr>
458
      <xsl:for-each select="attribute">
390
      <xsl:for-each select="attribute">
459
        <tr>
391
        <tr>
460
          <td align="left" valign="center">
392
          <td>
461
            <xsl:if test="@required = 'true'">
393
            <xsl:if test="@required = 'true'">
462
              <strong><code class="attributeName"><xsl:value-of select="@name"/></code></strong>
394
              <strong><code class="attributeName"><xsl:value-of select="@name"/></code></strong>
463
            </xsl:if>
395
            </xsl:if>
Lines 465-471 Link Here
465
              <code class="attributeName"><xsl:value-of select="@name"/></code>
397
              <code class="attributeName"><xsl:value-of select="@name"/></code>
466
            </xsl:if>
398
            </xsl:if>
467
          </td>
399
          </td>
468
          <td align="left" valign="center">
400
          <td>
469
            <xsl:apply-templates/>
401
            <xsl:apply-templates/>
470
          </td>
402
          </td>
471
        </tr>
403
        </tr>
Lines 475-495 Link Here
475
407
476
  <!-- Process a properties list with nested property elements -->
408
  <!-- Process a properties list with nested property elements -->
477
  <xsl:template match="properties">
409
  <xsl:template match="properties">
478
    <table border="1" cellpadding="5">
410
    <table class="defaultTable">
479
      <tr>
411
      <tr>
480
        <th width="15%" bgcolor="{$attributes-color}">
412
        <th style="width: 15%;">
481
          <font color="#ffffff">Property</font>
413
          Property
482
        </th>
414
        </th>
483
        <th width="85%" bgcolor="{$attributes-color}">
415
        <th style="width: 85%;">
484
          <font color="#ffffff">Description</font>
416
          Description
485
        </th>
417
        </th>
486
      </tr>
418
      </tr>
487
      <xsl:for-each select="property">
419
      <xsl:for-each select="property">
488
        <tr>
420
        <tr>
489
          <td align="left" valign="center">
421
          <td>
490
            <code class="propertyName"><xsl:value-of select="@name"/></code>
422
            <code class="propertyName"><xsl:value-of select="@name"/></code>
491
          </td>
423
          </td>
492
          <td align="left" valign="center">
424
          <td>
493
            <xsl:apply-templates/>
425
            <xsl:apply-templates/>
494
          </td>
426
          </td>
495
        </tr>
427
        </tr>
Lines 497-613 Link Here
497
    </table>
429
    </table>
498
  </xsl:template>
430
  </xsl:template>
499
431
500
  <!-- Fix relative links in printer friendly versions of the docs -->
501
  <xsl:template match="a">
502
    <xsl:variable name="href" select="@href"/>
503
    <xsl:choose>
504
      <xsl:when test="$standalone = 'standalone'">
505
        <xsl:apply-templates/>
506
      </xsl:when>
507
      <xsl:when test="$project-menu != 'menu' and starts-with(@href,'../')">
508
        <a href="../{$href}"><xsl:apply-templates/></a>
509
      </xsl:when>
510
      <xsl:when test="$project-menu != 'menu' and starts-with(@href,'./') and contains(substring(@href,3),'/')">
511
        <a href=".{$href}"><xsl:apply-templates/></a>
512
      </xsl:when>
513
      <xsl:when test="$project-menu != 'menu' and not(contains(@href,'//')) and not(starts-with(@href,'/')) and not(starts-with(@href,'#')) and contains(@href,'/')">
514
        <a href="../{$href}"><xsl:apply-templates/></a>
515
      </xsl:when>
516
      <xsl:when test="$href != ''">
517
        <a href="{$href}"><xsl:apply-templates/></a>
518
      </xsl:when>
519
      <xsl:otherwise>
520
        <xsl:variable name="name" select="@name"/>
521
        <a name="{$name}"><xsl:apply-templates/></a>
522
      </xsl:otherwise>
523
    </xsl:choose>
524
  </xsl:template>
525
526
  <!-- Changelog related tags -->
432
  <!-- Changelog related tags -->
527
  <xsl:template match="changelog">
433
  <xsl:template match="changelog">
528
    <table border="0" cellpadding="2" cellspacing="2">
434
    <ul class="changelog">
529
      <xsl:apply-templates/>
435
      <xsl:apply-templates/>
530
    </table>
436
    </ul>
531
  </xsl:template>
437
  </xsl:template>
532
438
533
  <xsl:template match="changelog/add">
439
  <xsl:template match="changelog/add">
534
    <tr>
440
    <xsl:variable name="src"><xsl:value-of select="$relative-path"/>/images/add.gif</xsl:variable>
535
      <xsl:variable name="src"><xsl:value-of select="$relative-path"/>/images/add.gif</xsl:variable>
441
    <li>
536
      <td><img alt="add" class="icon" src="{$src}"/></td>
442
    <img alt="Add: " class="icon" src="{$src}"/><xsl:apply-templates/>
537
      <td><xsl:apply-templates/></td>
443
  </li>
538
    </tr>
539
  </xsl:template>
444
  </xsl:template>
540
445
541
  <xsl:template match="changelog/update">
446
  <xsl:template match="changelog/update">
542
    <tr>
447
    <xsl:variable name="src"><xsl:value-of select="$relative-path"/>/images/update.gif</xsl:variable>
543
      <xsl:variable name="src"><xsl:value-of select="$relative-path"/>/images/update.gif</xsl:variable>
448
    <li>
544
      <td><img alt="update" class="icon" src="{$src}"/></td>
449
    <img alt="Update: " class="icon" src="{$src}"/><xsl:apply-templates/>
545
      <td><xsl:apply-templates/></td>
450
  </li>
546
    </tr>
547
  </xsl:template>
451
  </xsl:template>
548
452
549
  <xsl:template match="changelog/design">
453
  <xsl:template match="changelog/design">
550
    <tr>
454
    <xsl:variable name="src"><xsl:value-of select="$relative-path"/>/images/design.gif</xsl:variable>
551
      <xsl:variable name="src"><xsl:value-of select="$relative-path"/>/images/design.gif</xsl:variable>
455
    <li>
552
      <td><img alt="design" class="icon" src="{$src}"/></td>
456
    <img alt="Design: " class="icon" src="{$src}"/><xsl:apply-templates/>
553
      <td><xsl:apply-templates/></td>
457
  </li>
554
    </tr>
555
  </xsl:template>
458
  </xsl:template>
556
459
557
  <xsl:template match="changelog/docs">
460
  <xsl:template match="changelog/docs">
558
    <tr>
461
    <xsl:variable name="src"><xsl:value-of select="$relative-path"/>/images/docs.gif</xsl:variable>
559
      <xsl:variable name="src"><xsl:value-of select="$relative-path"/>/images/docs.gif</xsl:variable>
462
    <li>
560
      <td><img alt="docs" class="icon" src="{$src}"/></td>
463
    <img alt="Docs: " class="icon" src="{$src}"/><xsl:apply-templates/>
561
      <td><xsl:apply-templates/></td>
464
  </li>
562
    </tr>
563
  </xsl:template>
465
  </xsl:template>
564
466
565
  <xsl:template match="changelog/fix">
467
  <xsl:template match="changelog/fix">
566
    <tr>
468
    <xsl:variable name="src"><xsl:value-of select="$relative-path"/>/images/fix.gif</xsl:variable>
567
      <xsl:variable name="src"><xsl:value-of select="$relative-path"/>/images/fix.gif</xsl:variable>
469
    <li>
568
      <td><img alt="fix" class="icon" src="{$src}"/></td>
470
    <img alt="Fix: " class="icon" src="{$src}"/><xsl:apply-templates/>
569
      <td><xsl:apply-templates/></td>
471
  </li>
570
    </tr>
571
  </xsl:template>
472
  </xsl:template>
572
473
573
  <xsl:template match="changelog/scode">
474
  <xsl:template match="changelog/scode">
574
    <tr>
475
    <xsl:variable name="src"><xsl:value-of select="$relative-path"/>/images/code.gif</xsl:variable>
575
      <xsl:variable name="src"><xsl:value-of select="$relative-path"/>/images/code.gif</xsl:variable>
476
    <li>
576
      <td><img alt="code" class="icon" src="{$src}"/></td>
477
    <img alt="Code: " class="icon" src="{$src}"/><xsl:apply-templates/>
577
      <td><xsl:apply-templates/></td>
478
  </li>
578
    </tr>
579
  </xsl:template>
479
  </xsl:template>
580
480
581
  <!-- Process an attributes list with nested attribute elements -->
582
  <xsl:template match="status">
583
    <table border="1" cellpadding="5">
584
      <tr>
585
        <th width="15%" bgcolor="{$attributes-color}">
586
          <font color="#ffffff">Priority</font>
587
        </th>
588
        <th width="50%" bgcolor="{$attributes-color}">
589
          <font color="#ffffff">Action Item</font>
590
        </th>
591
        <th width="25%" bgcolor="{$attributes-color}">
592
          <font color="#ffffff">Volunteers</font>
593
        </th>
594
        <xsl:for-each select="item">
595
        <tr>
596
          <td align="left" valign="center">
597
            <xsl:value-of select="@priority"/>
598
          </td>
599
          <td align="left" valign="center">
600
            <xsl:apply-templates/>
601
          </td>
602
          <td align="left" valign="center">
603
            <xsl:value-of select="@owner"/>
604
          </td>
605
        </tr>
606
        </xsl:for-each>
607
      </tr>
608
    </table>
609
  </xsl:template>
610
611
  <!-- Link to a bug report -->
481
  <!-- Link to a bug report -->
612
  <xsl:template match="bug">
482
  <xsl:template match="bug">
613
      <xsl:variable name="link"><xsl:value-of select="$buglink"/><xsl:value-of select="text()"/></xsl:variable>
483
      <xsl:variable name="link"><xsl:value-of select="$buglink"/><xsl:value-of select="text()"/></xsl:variable>
Lines 620-647 Link Here
620
      <a href="{$link}">r<xsl:apply-templates/></a>
490
      <a href="{$link}">r<xsl:apply-templates/></a>
621
  </xsl:template>
491
  </xsl:template>
622
492
623
  <!-- specially process td tags ala site.vsl -->
624
  <xsl:template match="table[@class='detail-table']/tr/td">
625
    <td bgcolor="{$table-td-bg}" valign="top" align="left">
626
        <xsl:if test="@colspan"><xsl:attribute name="colspan"><xsl:value-of select="@colspan"/></xsl:attribute></xsl:if>
627
        <xsl:if test="@rowspan"><xsl:attribute name="rowspan"><xsl:value-of select="@rowspan"/></xsl:attribute></xsl:if>
628
        <font color="#000000" size="-1" face="arial,helvetica,sanserif">
629
            <xsl:apply-templates/>
630
        </font>
631
    </td>
632
  </xsl:template>
633
634
  <!-- handle th ala site.vsl -->
635
  <xsl:template match="table[@class='detail-table']/tr/th">
636
    <td bgcolor="{$table-th-bg}" valign="top">
637
        <xsl:if test="@colspan"><xsl:attribute name="colspan"><xsl:value-of select="@colspan"/></xsl:attribute></xsl:if>
638
        <xsl:if test="@rowspan"><xsl:attribute name="rowspan"><xsl:value-of select="@rowspan"/></xsl:attribute></xsl:if>
639
        <font color="#000000" size="-1" face="arial,helvetica,sanserif">
640
            <xsl:apply-templates />
641
        </font>
642
    </td>
643
  </xsl:template>
644
645
  <!-- Process everything else by just passing it through -->
493
  <!-- Process everything else by just passing it through -->
646
  <xsl:template match="*|@*">
494
  <xsl:template match="*|@*">
647
    <xsl:copy>
495
    <xsl:copy>

Return to bug 55383