diff options
Diffstat (limited to 'patchtracker')
-rwxr-xr-x | patchtracker/Templates.py | 26 |
1 files changed, 24 insertions, 2 deletions
diff --git a/patchtracker/Templates.py b/patchtracker/Templates.py index 4445ef1..e6982f0 100755 --- a/patchtracker/Templates.py +++ b/patchtracker/Templates.py @@ -8,12 +8,15 @@ import errno class OurTemplate(Template): def __init__(self, file, searchList=None): - ourSearchList={"conf":Conf} + ourSearchList={"conf":Conf, "crumbs":[], "link":self.link} if searchList: for k,v in searchList.iteritems(): ourSearchList[k]=v Template.__init__(self, file=file, searchList=ourSearchList) + def link(self, where, name): + return str("<a href=\"%s\">%s</a>"%(where,name)) + class PackageVersTemplate(OurTemplate): def __init__(self, srcpkg): @@ -25,6 +28,10 @@ class PackageVersTemplate(OurTemplate): sl['diffhandler'] = DiffGzHandler(dfile) else: sl['diffhandler'] = None + sl['crumbs'] = [("","Debian patch-tracker"), + ("package/"+srcpkg.name,srcpkg.name), + ("package/"+srcpkg.name+"/"+srcpkg.version, + srcpkg.name+"/"+srcpkg.version)] OurTemplate.__init__(self, file=tpl, searchList=sl) class FrontPageTemplate(OurTemplate): @@ -41,8 +48,11 @@ class LetterTocTemplate(OurTemplate): for name,packagelist in collection.iteritems(): for d in packagelist.iterkeys(): self.dists[d] = True + sl = {} + sl['crumbs'] = [("","Debian patch-tracker"), + ("index/"+letter,"index for "+letter)] tpl = os.sep.join([Conf.template_dir, "letter_toc.tmpl"]) - OurTemplate.__init__(self, file=tpl) + OurTemplate.__init__(self, file=tpl, searchList=sl) class SearchResultsTemplate(OurTemplate): def __init__(self, search, collection): @@ -68,5 +78,17 @@ class PatchTemplate(OurTemplate): tpl = os.sep.join([Conf.template_dir, "patch_view.tmpl"]) sl = {'package':pkg, 'version':vers, 'name':name, 'patch':patch, 'patchtype':patchtype} + sl['crumbs'] = [("","Debian patch-tracker"), + ("package/"+pkg,pkg), + ("package/"+pkg+"/"+vers, pkg+"/"+vers)] + if patchtype == "debianonly": + sl['crumbs'].append( ("patch/%s/view/%s/%s"%(patchtype,pkg,vers), + "./debian-dir only patch") ) + elif patchtype == "series": + sl['crumbs'].append(("patch/%s/view/%s/%s/%s"%(patchtype,pkg,vers,name), + "series patch "+name) ) + elif patchtype == "misc": + sl['crumbs'].append(("patch/%s/view/%s/%s/%s"%(patchtype,pkg,vers,name), + "direct patch of "+name) ) OurTemplate.__init__(self, file=tpl, searchList=sl) |