Mercurial > public > mercurial-scm > hg
comparison mercurial/hgweb/hgwebdir_mod.py @ 30749:e38e7ea21987
hgweb: use archivespecs for links on repo index page too
Moving archivespecs to the module level allows using it from other modules
(such as hgwebdir_mod), and keeping a reference to it in requestcontext allows
current code to just work.
author | Anton Shestakov <av6@dwimlabs.net> |
---|---|
date | Tue, 10 Jan 2017 23:41:58 +0800 |
parents | f1c9fafcbf46 |
children | d7bf7d2bd5ab |
comparison
equal
deleted
inserted
replaced
30748:319914d57b9e | 30749:e38e7ea21987 |
---|---|
295 def makeindex(self, req, tmpl, subdir=""): | 295 def makeindex(self, req, tmpl, subdir=""): |
296 | 296 |
297 def archivelist(ui, nodeid, url): | 297 def archivelist(ui, nodeid, url): |
298 allowed = ui.configlist("web", "allow_archive", untrusted=True) | 298 allowed = ui.configlist("web", "allow_archive", untrusted=True) |
299 archives = [] | 299 archives = [] |
300 for i in [('zip', '.zip'), ('gz', '.tar.gz'), ('bz2', '.tar.bz2')]: | 300 for typ, spec in hgweb_mod.archivespecs.iteritems(): |
301 if i[0] in allowed or ui.configbool("web", "allow" + i[0], | 301 if typ in allowed or ui.configbool("web", "allow" + typ, |
302 untrusted=True): | 302 untrusted=True): |
303 archives.append({"type" : i[0], "extension": i[1], | 303 archives.append({"type" : typ, "extension": spec[2], |
304 "node": nodeid, "url": url}) | 304 "node": nodeid, "url": url}) |
305 return archives | 305 return archives |
306 | 306 |
307 def rawentries(subdir="", **map): | 307 def rawentries(subdir="", **map): |
308 | 308 |