diff options
author | Dan McGee <dan@archlinux.org> | 2014-11-07 09:27:56 -0600 |
---|---|---|
committer | Dan McGee <dan@archlinux.org> | 2014-11-07 09:27:56 -0600 |
commit | cd22bfd73b184888df13b194ecdf6e482b36c3fc (patch) | |
tree | b906e8ac5f48071e9814da36cb7d0a9ff521ce55 /main/templatetags/pgp.py | |
parent | 9b5eb6ab383dcd090cdbf88a250ecdfd407c3beb (diff) |
Master signing keys page improvements
* Don't show non-packagers
* Don't hardcode group names in view code
* Reduce number of database queries for all of the cross-signature
developer name lookups
Signed-off-by: Dan McGee <dan@archlinux.org>
Diffstat (limited to 'main/templatetags/pgp.py')
-rw-r--r-- | main/templatetags/pgp.py | 19 |
1 files changed, 6 insertions, 13 deletions
diff --git a/main/templatetags/pgp.py b/main/templatetags/pgp.py index 2417f688..455e8f9c 100644 --- a/main/templatetags/pgp.py +++ b/main/templatetags/pgp.py @@ -44,21 +44,14 @@ def pgp_key_link(key_id, link_text=None): return '<a href="%s" title="PGP key search for %s">%s</a>' % values -@cache_function(1741) -def name_for_key(normalized): - try: - matching_key = DeveloperKey.objects.select_related( - 'owner').get(key=normalized, owner_id__isnull=False) - return matching_key.owner.get_full_name() - except DeveloperKey.DoesNotExist: - return None - - @register.simple_tag -def user_pgp_key_link(key_id): +def user_pgp_key_link(dev_keys, key_id): normalized = key_id[-16:] - name = name_for_key(normalized) - return pgp_key_link(key_id, name) + found = dev_keys.get(normalized, None) + if found: + return pgp_key_link(key_id, found.owner.get_full_name()) + else: + return pgp_key_link(key_id, None) @register.filter(needs_autoescape=True) |