Fix l10n support for javascript generated text
[deb/packages.git] / templates / html / show.tmpl
1 [% PROCESS 'config/archive_layout.tmpl' %]
2 [% PROCESS 'config/mirrors.tmpl' %]
3 [%- known_vcs = [ [ 'cvs', 'CVS', 'cvs' ],
4                 [ 'svn', 'Subversion', 'subversion' ],
5                 [ 'bzr', 'bzr', 'bzr' ],
6                 [ 'darcs', 'Darcs', 'darcs' ],
7                 [ 'arch', 'arch', 'tla' ],
8                 [ 'git', 'Git', 'git-core' ],
9                 [ 'hg', 'Hg', 'mercurial' ], ];
10    vcs_link = page.get_newest("vcs-browser");
11 -%]
12 [%- suite_name = suite;
13     SET suite_name = suite_name _ ' (' _ suite_aliases.$suite _ ')' IF suite_aliases.$suite;
14     nav_arr = [ { prefix=>g('Distribution:'), title=>g('Overview over this suite'), url=>make_url('/','','source',''), name=>suite_name }, ];
15     nav_arr.push( { title =>g('Source packages'), url=>make_url('/'), name=>g('Source') } ) IF is_source;
16     nav_arr.push( { prefix=>g('Section:'), title=>g('All packages in this section'), url=>make_url("$subsection/"), name=>subsection } );
17     nav_arr.push( { prefix=>g('Package:'), name=>pkg } ); -%]
18 [% desclang = 'en';
19    SET desclang = lang IF desc.$lang.long %]
20 [%- PROCESS 'html/head.tmpl'
21    title_tag = is_source ? g('Details of source package %s in %s', pkg, suite)
22                          : g('Details of package %s in %s', pkg, suite)
23    description = desc.$desclang.short
24    keywords = "$suite, $archive, $section, $subsection, $version"
25    print_search_field = 'packages'
26    search_field_values = { 
27                           searchon => is_source ? 'sourcenames' : 'names',
28                          }
29   navigation = nav_arr
30 -%]
31 <!-- show.tmpl -->
32 [% PROCESS 'html/menu.inc' %]
33 [% FOREACH s IN suites %]
34    [% '<div id="pothers">' IF loop.first %]
35    [%- IF s == suite -%]
36      [% PROCESS menuitem name=s url='' %]
37    [%- ELSE -%]
38      [% PROCESS menuitem name=s url=make_url(pkg,'','suite',s) %]
39    [%- END -%]
40    [%- '</div>' IF loop.last -%]
41 [% END %]
42
43 [% IF src %]
44 <div id="psource">
45 [% PROCESS menuitem prefix=g('Source:') title=g('Source package building this package') url=make_url(src.pkg,'','source','source') name=src.pkg %]
46 </div>
47 [% END %]
48
49 [%- PROCESS 'html/messages.tmpl' -%]
50
51 [% IF is_virtual %]
52 <h1>[% g('Virtual Package: %s', pkg) %]
53 [% ELSIF is_source %]
54 <h1>[% g('Source Package: %s (%s)', pkg, version) %]
55 [% ELSE %]
56 <h1>[% g('Package: %s (%s)', pkg, versions.short) %]
57 [% END %]
58 [%- PROCESS marker text=archive IF archive && archive != main_archive %]
59 [%- PROCESS marker text=section IF section && section != main_section %]
60 [%- PROCESS marker text=g('essential') IF page.get_newest('essential') == 'yes' %]</h1>
61
62 [% UNLESS is_virtual %]
63 <div id="pmoreinfo">
64 <h2>[% g('Links for %s', pkg) %]</h2>
65 <h3>[% g('Debian Resources:') %]</h3>
66 <ul>
67 <li><a href="[% (is_source ? src_bugs_url : bugs_url) _ pkg %]">[% g('Bug Reports') %]</a></li>
68
69 [% IF src.pkg -%]
70 <li><a href="[% pts_url _ src.pkg %]">[% g('Developer Information (PTS)') %]</a></li>
71 [% ELSIF is_source %]
72 <li><a href="[% pts_url _ pkg %]">[% g('Developer Information (PTS)') %]</a></li>
73 [%- END %]
74
75 [% IF files && (!archive or archive == main_archive or archive == 'security') %]
76 <li><a href="[% changelogs_url _ files.changelog.path %]">[% g('%s Changelog', organisation) %]</a></li>
77 <li><a href="[% changelogs_url _ files.copyright.path %]">[% g('Copyright File') %]</a></li>
78 [% END %]
79
80 [% IF vcs_link %]
81 <li><a href="[% vcs_link %]" class="pvcslink">[% g('Debian Source Repository') %]</a>
82 [%- FOREACH vcs IN known_vcs;
83         vcs_id = vcs.0; vcs_name = vcs.1; vcs_pkg = vcs.2;
84         vcs_info = page.get_newest("vcs-$vcs_id");
85         SET vcs_info = page.get_newest("x-vcs-$vcs_id") UNLESS vcs_info;
86    IF vcs_info %]
87  (<a href="[% vcs_info %]" class="pvcslink">[% vcs_name %]</a>)
88 [% END %]
89 </li>
90 [% END; END %]
91
92 </ul>
93
94 [% IF src %]
95   <p>[% g('Download Source Package <a href="%s">%s</a>:', src.url, src.pkg) %]
96   [% FOREACH src.downloads %]
97     [% '<ul>' IF loop.first %]
98     <li><a href="[% server _ path %]">[[% name %]]</a></li>
99     [% '</ul>' IF loop.last %]
100   [% END %]
101   [% IF src.downloads.size == 0 %]
102   [% g('Not found') %]
103   [% END %]
104 [% END %]
105
106 [% IF maintainers.size == 1 -%]
107   <h3>[% g('Maintainer:') %]</h3>
108 [%- ELSE -%]
109   <h3>[% g('Maintainers:') %]</h3>
110 [%- END %]
111 [%- FOREACH maintainers;
112   mailarchiveurl = '';
113   IF (matches = mail.match('^(.*)@lists\.debian\.org$'));
114         mailarchiveurl = 'http://lists.debian.org/' _ matches.0 _ '/';
115   ELSIF (matches = mail.match('^(.*)@lists\.alioth\.debian\.org$'));
116         mailarchiveurl = 'http://lists.alioth.debian.org/pipermail/' _ matches.0 _ '/';
117   END -%]
118   [%- '<ul>' IF loop.first -%]
119         <li><a href="mailto:[% mail %]">[% name | html %]</a>
120         (<a href="[% ddpo_url _ mail %]" title="[% g("An overview over the maintainer's packages and uploads") %]">[% g('QA Page') %]</a>
121         [%- IF mailarchiveurl %], <a href="[% mailarchiveurl %]" title="[% g('Archive of the Maintainer Mailinglist') %]">[% g('Mail Archive') %]</a>[% END %])
122         </li>
123   [%- '</ul>' IF loop.last -%]
124 [%- END -%]
125
126 [% url = page.get_newest('url');
127    SET url = page.get_newest('homepage') IF page.get_newest('homepage');
128    IF url %]
129 <h3>[% g('External Resources:') %]</h3>
130 <ul>
131 <li><a href="[% url | uri %]">[% g('Homepage') %]</a> [[% extract_host(url) | html %]]</li>
132 </ul>
133 [% END %]
134
135 [% FOREACH sim IN similar %]
136         [% IF loop.first %]
137         <h3>[% g('Similar packages:') %]</h3>
138         <ul>
139         [% END %]
140         <li><a href="/[% sim %]">[% sim %]</a></li>
141         [% '</ul>' IF loop.last %]
142 [% END %]
143
144 </div> <!-- end pmoreinfo -->
145 [% END %]
146
147 [% IF suite == "experimental" || subsection == "debian-installer" %]
148 <div class="pconstantnag">
149 [% IF suite == "experimental" %]
150 [% changelog_link = 'changelog';
151    changelog_link = "$changelogs_url$files.changelog.path" %] 
152 <h2>[% g('Experimental package') %]</h2>
153 <p>[% g('Warning: This package is from the <strong>experimental</strong> distribution. That means it is likely unstable or buggy, and it may even cause data loss. Please be sure to consult the <a href="%s">changelog</a> and other possible documentation before using it.',
154         changelog_link) %]</p>
155 [% END %]
156 [% IF subsection == "debian-installer" %]
157 <h2>[% g('debian-installer udeb package') %]</h2>
158 <p>[% g('Warning: This package is intended for the use in building <a href="http://www.debian.org/devel/debian-installer">debian-installer</a> images only. Do not install it on a normal %s system.',
159         organisation ) %]</p>
160 [% END %]
161 </div>
162 [% END %]
163
164 <div id="ptablist">
165 </div>
166
167 [% IF desc %]
168 <div id="pdesctab">
169 <div id="pdesc">
170 [% UNLESS is_virtual %]
171         [% IF desc.$desclang.short %]
172         <h2>[% desc.$desclang.short %]</h2>
173         <p>[% desc.$desclang.long %]
174         [% END %]
175 [% ELSE %]
176         <p>[% g('This is a <em>virtual package</em>. See the <a href="%s">Debian policy</a> for a <a href="%sch-binary.html#s-virtual_pkg">definition of virtual packages</a>.',
177                 policy_url, policy_url) %]</p>
178 [% END %]
179 </div> <!-- end pdesc -->
180
181 [% FOREACH tag IN tags %]
182   [% IF loop.first -%]
183     <div id="ptags"><p>
184     <a href="[% tags_url %]edit.html?pkg=[% pkg | uri %]">[% g('Tags') %]</a>:
185   [%- END %]
186   [% facet = tag.0; lfacet = "$facet-$lang"; 
187      facet_name = debtags_voc.$lfacet;
188      SET facet_name = debtags_voc.$facet UNLESS facet_name;
189      tag_id = "$tag.0::$tag.1"; ltag = "$tag_id-$lang";
190      tag_name = debtags_voc.$ltag;
191      SET tag_name = debtags_voc.$tag_id UNLESS tag_name;
192    %]
193   [% facet_name _ ': ' UNLESS old_facet && facet == old_facet %]
194   [% IF tag_name %]
195    <a href="/about/debtags#[% string2id(tag_id) %]">[% tag_name | html %]</a>[% ', ' UNLESS loop.last %]
196   [% ELSE %]
197   [% tag_id %][% ', ' UNLESS loop.last %]
198   [% END %]
199   [% old_facet = facet %]
200   [% IF loop.last -%]
201     </p>
202     </div> <!-- end ptags -->
203   [%- END %]
204 [% END %]
205
206 [% FOREACH p IN providers %]
207   [% IF loop.first %]<div id="pdeps"><h2>[% g('Packages providing %s', pkg) %]</h2><dl>[% END %]
208     <dt>[% IF p.available %]<a href="[% make_url(p.name,'','source','') %]">[% p.name %]</a>[% ELSE; p.name; END %]</dt>
209     <dd>[% IF p.trans_desc.$lang; p.trans_desc.$lang | html; ELSE; p.desc | html; END %]</dd>
210   [% '</dl></div>' IF loop.last %]
211 [% END %]
212 </div> <!-- pdesctab -->
213 [% END %]
214
215 [% FOREACH b IN binaries %]
216   [% IF loop.first %]<div id="pbinaries">[% g('The following binary packages are built from this source package:') %]<dl>[% END %]
217     <dt>[% IF b.available %]<a href="[% make_url(b.name,'','source','') %]">[% b.name %]</a>[% ELSE; b.name; END %]</dt>
218     <dd>[% IF b.trans_desc.$lang; b.trans_desc.$lang | html; ELSE; b.desc | html; END %]</dd>
219   [% '</dl></div>' IF loop.last %]
220 [% END %]
221
222 [% FOREACH relations %]
223   [% IF loop.first -%]
224     <div id="pdeps">
225     <h2>[% g('Other Packages Related to %s', pkg) %]</h2>
226
227     <table id="pdeplegend" class="visual" summary="[% g('legend') %]"><tr>
228     [% IF is_source %]
229     <td><ul class="uladep"><li>[% g('build-depends') %]</li></ul></td>
230     <td><ul class="ulidep"><li>[% g('build-depends-indep') %]</li></ul></td>
231     [% ELSE %]
232     <td><ul class="uldep"><li>[% g('depends') %]</li></ul></td>
233     <td><ul class="ulrec"><li>[% g('recommends') %]</li></ul></td>
234     <td><ul class="ulsug"><li>[% g('suggests') %]</li></ul></td>
235     [% END %]
236     </tr></table>
237   [%- END %]
238
239   <ul class="ul[% id %]">
240   [% FOREACH terms %]
241     [% '<li>' UNLESS is_old_pkgs %]
242     [% FOREACH alternatives %]
243       [% '<dl>' IF loop.first %]
244       <dt>[% IF loop.first %]<span class="nonvisual">[% id %]:</span>[% ELSE %][% g('or ') %][% END %]
245         [% IF suite %]<a href="[% make_url(name,'','suite',suite,'source','') %]">[% name %]</a>[% ELSE %][% name %][% END %]
246         [% ' (' _ version _ ')' IF version %]
247         [% ' [' _ arch_str _ ']' IF arch_str %]</dt>
248       [%- IF !is_old_pkgs -%]
249         <dd>[% IF trans_desc.$lang; trans_desc.$lang | html; ELSE; desc | html; END -%]
250         [%- IF providers.pkgs.size > 0 -%]
251           [% IF providers.also;
252                 '<br>' _ g('also a virtual package provided by');
253              ELSE;
254                 g('virtual package provided by');
255              END; %]
256           [% js_id = name %]
257             <span id="js_[% js_id %]" class="p_js_elem"></span> <span id="html_[% js_id %]">[% FOREACH provider IN providers.pkgs.sort %]<a href="[% make_url(provider,'','suite',suite,'source','') %]">[% provider %]</a>[% ', ' UNLESS loop.last %][% END %]</span>
258         [% IF providers.pkgs.size > 10 %]
259         <script type="text/javascript">init_toggle_elem("[% js_id %]","[% g('show %u providing packages', providers.pkgs.size) %]", "[% g('hide %u providing packages', providers.pkgs.size) %]")</script>
260         [% END %]
261         [% END %]
262         </dd>
263       [% END %]
264       [% '</dl>' IF loop.last %]
265     [% END %]
266   [% END %]
267   </ul>
268
269   [% IF loop.last -%]
270     </div> <!-- end pdeps -->
271   [%- END %]
272 [% END %]
273
274 [% FOREACH d IN downloads %]
275   [% IF loop.first -%]
276     <div id="pdownload">
277     <h2>[% g('Download %s', pkg) %]</h2>
278     
279     <table summary="[% g('The download table links to the download of the package and a file overview. In addition it gives information about the package size and the installed size.') %]">
280     <caption class="hidecss">[% g('Download for all available architectures') %]</caption>
281     <tr><th>[% g('Architecture') %]</th>
282         [% '<th>'_ g('Version') _'</th>' IF versions.multiple %]
283         <th>[% g('Package Size') %]</th>
284         <th>[% g('Installed Size') %]</th>
285         <th>[% g('Files') %]</th>
286     </tr>
287   [%- END %]
288
289 <tr>
290 [% download_url = pkg _ '/download'
291    filelist_url = pkg _ '/filelist' %]
292 <th><a href="[% make_url(download_url,'','arch',d.arch) %]">[% d.arch %]</a>
293 [%- SET a = d.archive; IF mirrors.$a.unofficial_port  %] <strong>[% g('(unofficial port)') %]</strong>[% END %]</th>
294 [% vnorm = d.version.replace( '\+b\d+$', '' ); vlatest = version.replace( '\+b\d+$', '' );
295    vup = vnorm.replace( '-[^-]+$', '' ); vuplatest = vlatest.replace( '-[^-]+$', '' );
296    IF vnorm == vlatest;
297         version_class = 'vcurrent';
298    ELSIF vup == vuplatest;
299         version_class = 'volder';
300    ELSE;
301         version_class = 'vold';
302    END %]
303 [% "<td class='$version_class'>$d.version</td>" IF versions.multiple %]
304 <td class="size">[% g('%s&nbsp;kB', num.format_number(d.pkgsize,1)) %]</td><td class="size">[% g('%s&nbsp;kB', d.instsize) %]</td>
305 <td>
306 [% IF d.contents_avail %]
307   [<a href="[% make_url(filelist_url,'','arch',d.arch) %]">[% g('list of files') %]</a>]
308 [% ELSE %]
309   [% g('no current information') %]
310 [% END %]
311 </td>
312 </tr>
313
314   [% IF loop.last -%]
315     </table>
316
317     </div> <!-- end pdownload -->
318   [%- END %]
319 [% END %]
320
321 [% FOREACH srcfiles %]
322   [% IF loop.first -%]
323     <div id="pdownload">
324     <h2>Download [% pkg %]</h2>
325     
326     <table summary="[% g('Download information for the files of this source package') %]">
327     <tr><th>[% g('File') %]</th><th>[% g('Size (in kB)') %]</th><th>[% g('MD5 checksum') %]</th></tr>
328   [%- END %]
329
330 <tr>
331 <td><a href="[% server _ path %]">[% filename %]</a></td>
332 <td>[% g('%s&nbsp;kB', num.format_number(size,1)) %]</td>
333 <td class="md5sum">[% md5sum %]</td>
334 </tr>
335
336   [% IF loop.last -%]
337     </table>
338
339 [% FOREACH vcs IN known_vcs;
340         vcs_id = vcs.0; vcs_name = vcs.1; vcs_pkg = vcs.2;
341         vcs_info = page.get_newest("vcs-$vcs_id");
342         SET vcs_info = page.get_newest("x-vcs-$vcs_id") UNLESS vcs_info;
343         IF vcs_info; %]
344 <dl>
345 <dt>[% g('Debian Package Source Repository (<acronym title="Version Control System">VCS</acronym>: <a href="%s">%s</a>)',
346         make_url(vcs_pkg,'','source',''), vcs_name ) %]</dt>
347 <dd><a href="[% vcs_info %]" class="pvcslink">[% vcs_info %]</a></dd>
348 [% IF vcs_link %]
349 <dt>[% g('Debian Package Source Repository (Browsable)') %]</dt><dd><a href="[% vcs_link %]" class="pvcslink">[% vcs_link %]</a></dd>
350 [% END %]
351 </dl>
352 [% END; END %]
353
354     </div> <!-- end pdownload -->
355   [%- END %]
356 [% END %]
357
358 [%# <script type="text/javascript">init_tab_list("ptablist")</script> %]
359
360 [%- PROCESS 'html/foot.tmpl' -%]