summaryrefslogtreecommitdiffstats
path: root/template
diff options
context:
space:
mode:
authormyk%mozilla.org <>2005-03-16 02:16:15 +0100
committermyk%mozilla.org <>2005-03-16 02:16:15 +0100
commite7f6dc0a5754ae6607bebfcedc1130cd12e43f5d (patch)
tree2a5a4726dcdede65098c2c692d8308e21c1521df /template
parent5d6b815d1ce8eece29e22e09781f890375f3c403 (diff)
downloadbugzilla-e7f6dc0a5754ae6607bebfcedc1130cd12e43f5d.tar.gz
bugzilla-e7f6dc0a5754ae6607bebfcedc1130cd12e43f5d.tar.xz
Fix for bug 82878: Generate RSS 1.0 version of bug lists.
Patch by Jason Remillard. r=myk a=myk
Diffstat (limited to 'template')
-rw-r--r--template/en/default/global/header.html.tmpl8
-rw-r--r--template/en/default/list/list.html.tmpl3
-rw-r--r--template/en/default/list/list.ics.tmpl8
-rw-r--r--template/en/default/list/list.rss.tmpl95
4 files changed, 110 insertions, 4 deletions
diff --git a/template/en/default/global/header.html.tmpl b/template/en/default/global/header.html.tmpl
index 3c7c6f170..90c3659fe 100644
--- a/template/en/default/global/header.html.tmpl
+++ b/template/en/default/global/header.html.tmpl
@@ -35,6 +35,7 @@
# style: string. CSS style.
# style_urls: list. List of URLs to CSS style sheets.
# message: string. A message to display to the user. May contain HTML.
+ # rsslink: rss link url, May contain HTML
#%]
[% IF message %]
@@ -99,6 +100,13 @@
[% END %]
[% END %]
+ [%# this puts the live bookmark up on firefox for the RSS feed %]
+ [% IF rsslink %]
+ <link rel="alternate"
+ type="application/rss+xml" title="RSS 1.0"
+ href="[% rsslink FILTER html %]" />
+ [% END %]
+
</head>
[%# Migration note: contents of the old Param 'bodyhtml' go in the body tag,
diff --git a/template/en/default/list/list.html.tmpl b/template/en/default/list/list.html.tmpl
index e0a5a2b93..ce42ed03a 100644
--- a/template/en/default/list/list.html.tmpl
+++ b/template/en/default/list/list.html.tmpl
@@ -48,6 +48,7 @@
[% PROCESS global/header.html.tmpl
title = title
style = style
+ rsslink = "buglist.cgi?$urlquerypart&ctype=rss"
%]
<div align="center">
@@ -150,6 +151,8 @@
<a href="buglist.cgi?
[% urlquerypart FILTER html %]&amp;ctype=csv">CSV</a> |
<a href="buglist.cgi?
+ [% urlquerypart FILTER html %]&amp;ctype=rss">RSS</a> |
+ <a href="buglist.cgi?
[% urlquerypart FILTER html %]&amp;ctype=ics">iCalendar</a> |
<a href="colchange.cgi?
[% urlquerypart FILTER html %]">Change&nbsp;Columns</a> |
diff --git a/template/en/default/list/list.ics.tmpl b/template/en/default/list/list.ics.tmpl
index 27dc1b401..6246cf755 100644
--- a/template/en/default/list/list.ics.tmpl
+++ b/template/en/default/list/list.ics.tmpl
@@ -18,7 +18,7 @@
#
# Contributor(s): William Jon McCann <mccann@jhu.edu>
#%]
-[% PROCESS global/variables.none.tmpl %]
+[% PROCESS global/variables.none.tmpl %][% USE date %]
BEGIN:VCALENDAR
CALSCALE:GREGORIAN
[%+ PROCESS ics_prodid +%]
@@ -32,7 +32,7 @@ BEGIN:VTODO
[%+ PROCESS ics_status bug_status = bug.bug_status +%]
[%+ PROCESS ics_dtstamp +%]
[% IF bug.changeddate %]
-[%+ bug.changeddate FILTER ics('LAST-MODIFIED') +%]
+[%+ date.format(bug.changedtime,"%Y%m%dT%H%M%SZ") FILTER ics('LAST-MODIFIED') +%]
[% END %]
[% IF bug.percentage_complete %]
[%+ bug.percentage_complete FILTER format('%d') FILTER ics('PERCENT-COMPLETE') +%]
@@ -66,11 +66,11 @@ END:VCALENDAR
[% END %]
[% BLOCK ics_dtstart %]
- [% bug.opendate FILTER ics('DTSTART') %]
+ [% date.format(bug.opentime,"%Y%m%dT%H%M%SZ") FILTER ics('DTSTART') %]
[% END %]
[% BLOCK ics_dtstamp %]
- [% currenttime FILTER ics('DTSTAMP') %]
+ [% date.format(date.now,"%Y%m%dT%H%M%SZ") FILTER ics('DTSTAMP') %]
[% END %]
[% BLOCK ics_status %]
diff --git a/template/en/default/list/list.rss.tmpl b/template/en/default/list/list.rss.tmpl
new file mode 100644
index 000000000..53352f225
--- /dev/null
+++ b/template/en/default/list/list.rss.tmpl
@@ -0,0 +1,95 @@
+[%# 1.0@bugzilla.org %]
+[%# The contents of this file are subject to the Mozilla Public
+ # License Version 1.1 (the "License"); you may not use this file
+ # except in compliance with the License. You may obtain a copy of
+ # the License at http://www.mozilla.org/MPL/
+ #
+ # Software distributed under the License is distributed on an "AS
+ # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
+ # implied. See the License for the specific language governing
+ # rights and limitations under the License.
+ #
+ # The Original Code is the Bugzilla Bug Tracking System.
+ #
+ # The Initial Developer of the Original Code is Netscape Communications
+ # Corporation. Portions created by Netscape are
+ # Copyright (C) 1998 Netscape Communications Corporation. All
+ # Rights Reserved.
+ #
+ # Contributor(s): Walter Hoehn <wassa@columbia.edu>
+ # John Belmonte <john@neggie.net>
+ # Jason Remillard <jremillardshop@letterboxes.org>
+ #
+ # This is a template for generating an RSS 1.0 representation of a buglist.
+ #%]
+
+[% PROCESS global/variables.none.tmpl %]
+[% USE date %]
+
+[% DEFAULT title = "$terms.Bugzilla $terms.Bugs" %]
+
+<?xml version="1.0"?>
+<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:sy="http://pur1.org/rss/1.0/modules/syndication/"
+ xmlns:dc="http://pur1.org/rss/dc/elements/1.1/"
+ xmlns="http://purl.org/rss/1.0/">
+ <channel rdf:about="[% Param('urlbase') %]buglist.cgi?
+ [%- urlquerypart.replace('ctype=rss[&]?','') FILTER xml %]" >
+
+ <title>[% title FILTER xml %]</title>
+ <description>[% "$terms.Bugzilla $terms.bug list" FILTER xml %]</description>
+
+ <link>[% Param('urlbase') %]buglist.cgi?
+ [%- urlquerypart.replace('ctype=rss[&]?','') FILTER xml -%]
+ </link>
+
+ <sy:updatePeriod>hourly</sy:updatePeriod>
+ <sy:updateFrequency>2</sy:updateFrequency>
+
+ <items>
+ <rdf:Seq>
+ [% FOREACH bug = bugs %]
+ <rdf:li rdf:resource="[% Param('urlbase') FILTER xml %]show_bug.cgi?id=[% bug.bug_id FILTER xml %]" />
+ [% END %]
+ </rdf:Seq>
+ </items>
+
+ </channel>
+
+ [% FOREACH bug = bugs %]
+ <item rdf:about="[% Param('urlbase') FILTER xml %]show_bug.cgi?id=[% bug.bug_id FILTER xml %]">
+ <title>[% bug.short_desc FILTER xml %]</title>
+ <link>[% Param('urlbase') FILTER xml %]show_bug.cgi?id=[% bug.bug_id FILTER xml %]</link>
+ <dc:creator>[% bug.reporter_realname FILTER xml %]</dc:creator>
+ <dc:date>[% date.format( format=>"%Y-%m-%dT%H:%MZ",time=>bug.opentime) FILTER xml %]</dc:date>
+ <description>
+ [%# Filter out the entire block, so that we don't need to escape the html code out %]
+ [% FILTER xml %]
+ <table>
+ <tr>
+ <th>Field</th><th>Value</th>
+ </tr><tr>
+ <td>[% columns.opendate.title FILTER none %]</td>
+ <td>[% bug.opendate FILTER none %]</td>
+ </tr><tr>
+ <td>[% columns.assigned_to_realname.title FILTER none %]</td>
+ <td>[% bug.assigned_to_realname FILTER none %]</td>
+ </tr><tr>
+ <td>[% columns.priority.title FILTER none %]</td>
+ <td>[% bug.priority FILTER none %]</td>
+ </tr><tr>
+ <td>[% columns.bug_severity.title FILTER none %] </td>
+ <td>[% bug.bug_severity FILTER none %]</td>
+ </tr><tr>
+ <td>[% columns.bug_status.title FILTER none %]</td>
+ <td>[% bug.bug_status FILTER none %]</td>
+ </tr><tr>
+ <td>[% columns.changeddate.title FILTER none %]</td>
+ <td>[% bug.changeddate FILTER none -%]</td>
+ </tr>
+ </table>
+ [% END %]
+ </description>
+ </item>
+ [% END %]
+</rdf:RDF>