diff options
author | Thomas Bächler <thomas@archlinux.org> | 2009-10-17 23:47:09 +0200 |
---|---|---|
committer | Thomas Bächler <thomas@archlinux.org> | 2009-10-17 23:47:09 +0200 |
commit | 71d79f133b8b656f93573569f65a9eab052f0d3f (patch) | |
tree | 7ad06409d3c7c1c7f52dfe8ad6bacf89e90cb03d /main/models.py | |
parent | bcda0ab66b9722ae15c10645aa44bb1099d79a93 (diff) |
Port archweb_pub commit 1f96c7a1182ef75279c18986b708e683f89dd690 to archweb_dev. This is the original commit message by Dan:
"Make package SVN links always work
This should clean up the links for all varieties of things- different arches
(including any), different repos (community and community-testing), and
split packages. All of the logic is in one place now and any further changes
should be made to the method on the package object."
Diffstat (limited to 'main/models.py')
-rw-r--r-- | main/models.py | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/main/models.py b/main/models.py index f68e501e..3ab2c368 100644 --- a/main/models.py +++ b/main/models.py @@ -256,6 +256,20 @@ class Package(models.Model): self.deps_cache = deps return deps + def get_svn_link(self): + linkbase = "http://repos.archlinux.org/viewvc.cgi/%s/repos/%s-%s/%s" + if self.pkgbase: + dirname = self.pkgbase + else: + dirname = self.pkgname + repo = self.repo.name.lower() + if repo.startswith('community'): + rootopt = '?root=community' + else: + rootopt = '?root=packages' + return linkbase % (dirname, repo, self.arch.name, rootopt) + + class Signoff(models.Model): pkg = models.ForeignKey(Package) pkgver = models.CharField(max_length=255) |