diff options
Diffstat (limited to 'packages/templatetags')
-rw-r--r-- | packages/templatetags/package_extras.py | 58 |
1 files changed, 41 insertions, 17 deletions
diff --git a/packages/templatetags/package_extras.py b/packages/templatetags/package_extras.py index 3eb7578d..a8a8bd0f 100644 --- a/packages/templatetags/package_extras.py +++ b/packages/templatetags/package_extras.py @@ -73,6 +73,18 @@ def maintainer_link(user): return '' @register.simple_tag +def get_download_link(package): + parts = { + "repo": package.repo.name.lower(), + "arch": package.arch.name, + "pkgfile": package.filename + } + if parts["arch"] == "any": + parts["arch"] = "i686" + linkbase = "//repo.parabolagnulinux.org/%(repo)s/os/%(arch)s/%(pkgfile)s" + return linkbase % parts + +@register.simple_tag def packager_link(user): if user: # TODO don't hardcode @@ -84,40 +96,52 @@ def packager_link(user): ) return '' - -@register.simple_tag -def scm_link(package, operation): - parts = (package.repo.svn_root, operation, package.pkgbase) - linkbase = ( - "http://projects.archlinux.org/svntogit/%s.git/%s/trunk?" - "h=packages/%s") - return linkbase % tuple(urlquote(part) for part in parts) - @register.simple_tag def get_wiki_link(package): - url = "https://wiki.archlinux.org/index.php/Special:Search" + url = "//wiki.parabolagnulinux.org/index.php" data = { + 'title': "Special:Search", 'search': package.pkgname, } return link_encode(url, data) @register.simple_tag +def svn_arch(package): + repo = package.repo.name.lower() + return svn_link(package, "repos/%s-%s" % (repo, package.arch.name)) + +@register.simple_tag +def svn_trunk(package): + return svn_link(package, "trunk") + +@register.simple_tag def bugs_list(package): - url = "https://bugs.archlinux.org/" + url = "//bugs.parabolagnulinux.org/bugs/issue" data = { - 'project': package.repo.bugs_project, - 'string': package.pkgname, + '@action': 'search', + 'title': package.pkgname, } return link_encode(url, data) @register.simple_tag def bug_report(package): - url = "https://bugs.archlinux.org/newtask" + url = "//bugs.parabolagnulinux.org/bugs/issue" data = { - 'project': package.repo.bugs_project, - 'product_category': package.repo.bugs_category, - 'item_summary': '[%s]' % package.pkgname, + '@template': 'item', + 'keyword': 'packages', + 'title': '[%s]' % package.pkgname, } return link_encode(url, data) +@register.simple_tag +def flag_unfree(package): + url = "//bugs.parabolagnulinux.org/bugs/issue" + data = { + '@template': 'item', + 'keyword': 'packages,unfree', + 'nosy': 'dev_list', + 'priority': 'critical', + 'title': '[%s] Please put your reasons here (register first if you haven\'t)' % package.pkgname, + } + return "//bugs.parabolagnulinux.org/bugs/issue?%s" % urlencode(data) # vim: set ts=4 sw=4 et: |