diff options
author | Sean Finney <seanius@debian.org> | 2008-06-25 01:15:46 +0200 |
---|---|---|
committer | Sean Finney <seanius@debian.org> | 2008-06-25 01:15:46 +0200 |
commit | 8068846d7058be7742850e770808f33ff1f439a8 (patch) | |
tree | a63c6a6628f458917e5d0edb7726d615f0ad9a3f | |
parent | 54a7884a275b7dcf10873651f5b28886db87dd72 (diff) | |
download | patch-tracker-8068846d7058be7742850e770808f33ff1f439a8.tar.gz |
fix broken downloads from patch view page
-rwxr-xr-x | pagehandler.py | 23 | ||||
-rwxr-xr-x | patchtracker/Templates.py | 5 | ||||
-rw-r--r-- | templates/patch_view.tmpl | 6 |
3 files changed, 18 insertions, 16 deletions
diff --git a/pagehandler.py b/pagehandler.py index 7ddeac4..3f6562e 100755 --- a/pagehandler.py +++ b/pagehandler.py @@ -25,24 +25,23 @@ class CmdHandler: #print "args:",args self.cmd = args[0] if self.cmd == "patch": - patchtype,mode,pkgname,version = args[1:5] + self.patchtype,mode,pkgname,version = args[1:5] self.parsemode(mode) dh = self.make_diffhandler(pkgname,version) - if patchtype == "series": - self.patchname = args[5] + if self.patchtype == "series": + self.patchname = os.sep.join(args[5:]) self.content = dh.series().fetch(self.patchname) - elif patchtype == "debianonly": + elif self.patchtype == "debianonly": self.patchname = "debian-dir only changes" self.content = dh.debiandir() - elif patchtype == "nondebian": + elif self.patchtype == "nondebian": self.patchname = "direct (non packaging) changes" self.content = dh.nondebiandir() - elif patchtype == "misc": - patchfile = os.sep.join(args[5:]) - self.patchname = "direct changes for "+patchfile - self.content = dh.filterdiff(include=patchfile) + elif self.patchtype == "misc": + self.patchname = os.sep.join(args[5:]) + self.content = dh.filterdiff(include=self.patchname) else: - self.error("unhandled patch type '%s'"%(patchtype)) + self.error("unhandled patch type '%s'"%(self.patchtype)) self.pkgname = pkgname self.version = version elif self.cmd == "package": @@ -107,7 +106,9 @@ class CmdHandler: print self.content else: print "Content-Type: text/html\n\n" - print PatchTemplate(pkg=self.pkgname,vers=self.version,patch=self.content,name=self.patchname) + print PatchTemplate(pkg=self.pkgname,vers=self.version, + patch=self.content,name=self.patchname, + patchtype=self.patchtype) elif self.cmd == "package": print "Content-Type: text/html\n\n" print PackageVersTemplate(self.srcpkg) diff --git a/patchtracker/Templates.py b/patchtracker/Templates.py index b4c84c6..ba9764c 100755 --- a/patchtracker/Templates.py +++ b/patchtracker/Templates.py @@ -53,8 +53,9 @@ class ErrorTemplate(OurTemplate): OurTemplate.__init__(self, file=tpl, searchList={'error':msg}) class PatchTemplate(OurTemplate): - def __init__(self, pkg=None, vers=None, name=None, patch=None): + def __init__(self, pkg=None, vers=None, name=None, patch=None,patchtype=None): tpl = os.sep.join([Conf.template_dir, "patch_view.tmpl"]) - sl = {'package':pkg, 'version':vers, 'name':name, 'patch':patch} + sl = {'package':pkg, 'version':vers, 'name':name, + 'patch':patch, 'patchtype':patchtype} OurTemplate.__init__(self, file=tpl, searchList=sl) diff --git a/templates/patch_view.tmpl b/templates/patch_view.tmpl index 380bde5..f4d68e8 100644 --- a/templates/patch_view.tmpl +++ b/templates/patch_view.tmpl @@ -5,10 +5,10 @@ #from pygments.formatters import HtmlFormatter #from cgi import escape #def title -Patch information for $package / $version / $name +Patch information for $package ($version) $name #end def #def body - <h1>$package / $version / $name</h1> + <h1>$package ($version) $name</h1> <h2>Summary</h2> <div> <pre><code class="diffstat"> @@ -16,7 +16,7 @@ $escape($str($patch.diffstat)) </code></pre> </div> <div> - <a href="$conf.archive_root_url/patch/series/dl/$package/$version/$name"> + <a href="$conf.root_url/patch/$patchtype/dl/$package/$version/$name"> download this patch </a> </div> |