diff options
author | Luke Shumaker <LukeShu@sbcglobal.net> | 2013-04-21 02:23:40 -0400 |
---|---|---|
committer | Luke Shumaker <LukeShu@sbcglobal.net> | 2013-04-21 02:23:40 -0400 |
commit | 8ff271216f421594970631eec1ba156a8a35e561 (patch) | |
tree | e56af4f242621c0e0a20a30d9fe881edbc307feb /packages/views/display.py | |
parent | 03fa7e4f27bdb39a8f8f5ed91a87d18bf8357b47 (diff) | |
parent | bb18fa3323a0494a2774ea61911572b089d04b6d (diff) |
Merge branch 'archweb' into archweb-generic2
Diffstat (limited to 'packages/views/display.py')
-rw-r--r-- | packages/views/display.py | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/packages/views/display.py b/packages/views/display.py index fcf8fdea..021c7ed8 100644 --- a/packages/views/display.py +++ b/packages/views/display.py @@ -7,6 +7,7 @@ from django.shortcuts import get_object_or_404, redirect, render from django.utils.timezone import now from main.models import Package, PackageFile, Arch, Repo +from main.utils import empty_response from mirrors.utils import get_mirror_url_for_download from ..models import Update from ..utils import get_group_info, PackageJSONEncoder @@ -55,6 +56,8 @@ def recently_removed_package(request, name, repo, arch, cutoff=CUTOFF): try: update = match.latest() elsewhere = update.elsewhere() + if len(elsewhere) == 0: + elsewhere = update.replacements() if len(elsewhere) == 1: return redirect(elsewhere[0]) context = { @@ -124,6 +127,8 @@ def details(request, name='', repo='', arch=''): pkg = Package.objects.select_related( 'arch', 'repo', 'packager').get(pkgname=name, repo=repo_obj, arch=arch_obj) + if request.method == 'HEAD': + return empty_response() return render(request, 'packages/details.html', {'pkg': pkg}) except Package.DoesNotExist: # attempt a variety of fallback options before 404ing @@ -223,8 +228,6 @@ def download(request, name, repo, arch): if pkg.arch.agnostic: # grab the first non-any arch to fake the download path arch = Arch.objects.exclude(agnostic=True)[0].name - values = { - } url = '{host}{repo}/os/{arch}/{filename}'.format(host=url.url, repo=pkg.repo.name.lower(), arch=arch, filename=pkg.filename) return redirect(url) |