X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=portal%2Factions.py;fp=portal%2Factions.py;h=e8a4d0182cc3fc5e3983fd79e64217a4e22a32ba;hb=4fb3308193e5bd05e908105fdc2ce0c7d3007be2;hp=31e4bcb6ed1fd6345bb2bdfaf53528d9695c2e58;hpb=faa0a79d66fb03285cb8ad4ea376543822ae1636;p=myslice.git diff --git a/portal/actions.py b/portal/actions.py index 31e4bcb6..e8a4d018 100644 --- a/portal/actions.py +++ b/portal/actions.py @@ -323,9 +323,23 @@ def get_requests(authority_hrns=None): pending_slices = PendingSlice.objects.all() pending_authorities = PendingAuthority.objects.all() else: - pending_users = PendingUser.objects.filter(authority_hrn__in=authority_hrns).all() - pending_slices = PendingSlice.objects.filter(authority_hrn__in=authority_hrns).all() - pending_authorities = PendingAuthority.objects.filter(authority_hrn__in=authority_hrns).all() + pending_users = PendingUser.objects + pending_slices = PendingSlice.objects + pending_authorities = PendingAuthority.objects + from django.db.models import Q + list_user_Q = list() + list_slice_Q = list() + list_auth_Q = list() + for hrn in authority_hrns: + list_user_Q.append(Q(authority_hrn__startswith=hrn, status__iexact = 'True')) + list_slice_Q.append(Q(authority_hrn__startswith=hrn)) + list_auth_Q.append(Q(site_authority__startswith=hrn)) + print "startswith hrn = ",hrn + from operator import __or__ as OR + pending_users = pending_users.filter(reduce(OR, list_user_Q)) + pending_slices = pending_slices.filter(reduce(OR, list_slice_Q)) + pending_authorities = pending_authorities.filter(reduce(OR, list_auth_Q)) + #pending_authorities = pending_authorities.all() #filter(reduce(OR, list_Q)) return make_requests(pending_users, pending_slices, pending_authorities)