diff options
author | Luke Shumaker <LukeShu@sbcglobal.net> | 2013-04-21 02:22:44 -0400 |
---|---|---|
committer | Luke Shumaker <LukeShu@sbcglobal.net> | 2013-04-21 02:22:44 -0400 |
commit | 03fa7e4f27bdb39a8f8f5ed91a87d18bf8357b47 (patch) | |
tree | c67eafcbda55706f18400b3115a2b8a5be318394 /visualize/views.py | |
parent | 91c451821ce7000cbc268cec8427d208a6cedd7e (diff) | |
parent | b8ee7b1ee281b45b245fb454228b8ad847c56200 (diff) |
Merge branch 'archweb' into archweb-generic2
Conflicts:
devel/views.py
feeds.py
public/views.py
settings.py
sitestatic/archweb.js
templates/base.html
templates/devel/profile.html
templates/mirrors/status.html
templates/news/view.html
templates/packages/flaghelp.html
templates/packages/opensearch.xml
templates/public/download.html
templates/public/feeds.html
templates/public/index.html
templates/registration/login.html
templates/releng/results.html
templates/todolists/public_list.html
Diffstat (limited to 'visualize/views.py')
-rw-r--r-- | visualize/views.py | 69 |
1 files changed, 14 insertions, 55 deletions
diff --git a/visualize/views.py b/visualize/views.py index afc5429d..9c537c20 100644 --- a/visualize/views.py +++ b/visualize/views.py @@ -1,17 +1,16 @@ -from datetime import datetime +import json -from django.contrib.auth.models import User -from django.db.models import Count, Sum, Q +from django.db.models import Count, Sum from django.http import HttpResponse -from django.utils import simplejson +from django.shortcuts import render from django.views.decorators.cache import cache_page -from django.views.generic.simple import direct_to_template from main.models import Package, Arch, Repo -from devel.models import MasterKey, PGPSignature + def index(request): - return direct_to_template(request, 'visualize/index.html', {}) + return render(request, 'visualize/index.html') + def arch_repo_data(): qs = Package.objects.select_related().values( @@ -34,8 +33,8 @@ def arch_repo_data(): # now transform these results into two mappings: one ordered (repo, arch), # and one ordered (arch, repo). - arch_groups = dict((a, build_map(a, a, None)) for a in arches) - repo_groups = dict((r, build_map(r, None, r)) for r in repos) + arch_groups = {a: build_map(a, a, None) for a in arches} + repo_groups = {r: build_map(r, None, r) for r in repos} for row in qs: arch = row['arch__name'] repo = row['repo__name'] @@ -58,58 +57,18 @@ def arch_repo_data(): } return data + @cache_page(1800) def by_arch(request): data = arch_repo_data() - to_json = simplejson.dumps(data['by_arch'], ensure_ascii=False) - return HttpResponse(to_json, mimetype='application/json') + to_json = json.dumps(data['by_arch'], ensure_ascii=False) + return HttpResponse(to_json, content_type='application/json') + @cache_page(1800) def by_repo(request): data = arch_repo_data() - to_json = simplejson.dumps(data['by_repo'], ensure_ascii=False) - return HttpResponse(to_json, mimetype='application/json') - - -@cache_page(1800) -def pgp_keys(request): - node_list = [] - - users = User.objects.filter(is_active=True).select_related('userprofile') - node_list.extend({ - 'name': dev.get_full_name(), - 'key': dev.userprofile.pgp_key, - 'group': 'dev' - } for dev in users.filter(groups__name='Developers')) - node_list.extend({ - 'name': tu.get_full_name(), - 'key': tu.userprofile.pgp_key, - 'group': 'tu' - } for tu in users.filter(groups__name='Trusted Users').exclude( - groups__name='Developers')) - - master_keys = MasterKey.objects.select_related('owner').filter( - revoked__isnull=True) - node_list.extend({ - 'name': 'Master Key (%s)' % key.owner.get_full_name(), - 'key': key.pgp_key, - 'group': 'master' - } for key in master_keys) - - node_list.append({ - 'name': 'CA Cert Signing Authority', - 'key': 'A31D4F81EF4EBD07B456FA04D2BB0D0165D0FD58', - 'group': 'cacert', - }) - - not_expired = Q(expires__gt=datetime.utcnow) | Q(expires__isnull=True) - signatures = PGPSignature.objects.filter(not_expired, valid=True) - edge_list = [{ 'signee': sig.signee, 'signer': sig.signer } - for sig in signatures] - - data = { 'nodes': node_list, 'edges': edge_list } - - to_json = simplejson.dumps(data, ensure_ascii=False) - return HttpResponse(to_json, mimetype='application/json') + to_json = json.dumps(data['by_repo'], ensure_ascii=False) + return HttpResponse(to_json, content_type='application/json') # vim: set ts=4 sw=4 et: |