Filter maintainer list on packages page by allowed repos
We do this elsewhere on the master keys page, so do the same thing here. Noticed-by: Johannes Löthberg <johannes@kyriasis.com> Signed-off-by: Dan McGee <dan@archlinux.org>
This commit is contained in:
parent
e12f88f1d6
commit
dca00e7aab
@ -6,6 +6,7 @@
|
||||
from django.http import HttpResponse
|
||||
from django.views.generic import ListView
|
||||
|
||||
from devel.models import UserProfile
|
||||
from main.models import Package, Arch, Repo
|
||||
from main.utils import empty_response, make_choice
|
||||
from ..models import PackageRelation
|
||||
@ -36,14 +37,16 @@ def __init__(self, *args, **kwargs):
|
||||
self.fields['arch'].choices = make_choice(
|
||||
[arch.name for arch in Arch.objects.all()])
|
||||
self.fields['q'].widget.attrs.update({"size": "30"})
|
||||
maints = User.objects.filter(is_active=True).order_by(
|
||||
|
||||
profile_ids = UserProfile.allowed_repos.through.objects.values('userprofile_id')
|
||||
people = User.objects.filter(
|
||||
is_active=True, userprofile__id__in=profile_ids).order_by(
|
||||
'first_name', 'last_name')
|
||||
self.fields['maintainer'].choices = \
|
||||
[('', 'All'), ('orphan', 'Orphan')] + \
|
||||
[(m.username, m.get_full_name()) for m in maints]
|
||||
self.fields['packager'].choices = \
|
||||
[('', 'All'), ('unknown', 'Unknown')] + \
|
||||
[(m.username, m.get_full_name()) for m in maints]
|
||||
people = [('', 'All'), ('orphan', 'Orphan')] + \
|
||||
[(p.username, p.get_full_name()) for p in people]
|
||||
|
||||
self.fields['maintainer'].choices = people
|
||||
self.fields['packager'].choices = people
|
||||
|
||||
def exact_matches(self):
|
||||
# only do exact match search if 'q' is sole parameter
|
||||
|
Loading…
Reference in New Issue
Block a user