Revision 9eafaa32 snf-astakos-app/astakos/im/views.py

b/snf-astakos-app/astakos/im/views.py
61 61

  
62 62
from astakos.im.models import (
63 63
    AstakosUser, ApprovalTerms, AstakosGroup, Resource,
64
    EmailChange, GroupKind, Membership)
64
    EmailChange, GroupKind, Membership, AstakosGroupQuota)
65 65
from astakos.im.activation_backends import get_backend, SimpleBackend
66 66
from astakos.im.util import get_context, prepare_response, set_cookie, get_query
67 67
from astakos.im.forms import (LoginForm, InvitationForm, ProfileForm,
......
70 70
                              AstakosGroupCreationForm, AstakosGroupSearchForm,
71 71
                              AstakosGroupUpdateForm, AddGroupMembersForm,
72 72
                              AstakosGroupSortForm, MembersSortForm,
73
                              TimelineForm)
73
                              TimelineForm, PickResourceForm)
74 74
from astakos.im.functions import (send_feedback, SendMailError,
75 75
                                  invite as invite_func, logout as auth_logout,
76 76
                                  activate as activate_func,
......
1031 1031
@signed_terms_required
1032 1032
@login_required
1033 1033
def resource_list(request):
1034
    return render_response(
1035
        template='im/astakosuserquota_list.html',
1036
        context_instance=get_context(request))
1034
    if request.method == 'POST':
1035
        form = PickResourceForm(request.POST)
1036
        if form.is_valid():
1037
            r = form.cleaned_data.get('resource')
1038
            if r:
1039
                groups = request.user.membership_set.only('group').filter(
1040
                    date_joined__isnull=False)
1041
                groups = [g.group_id for g in groups]
1042
                q = AstakosGroupQuota.objects.select_related().filter(
1043
                    resource=r, group__in=groups)
1044
    else:
1045
        form = PickResourceForm()
1046
        q = AstakosGroupQuota.objects.none()
1047
    return object_list(request, q,
1048
                       template_name='im/astakosuserquota_list.html',
1049
                       extra_context={'form': form})
1037 1050

  
1038 1051

  
1039 1052
def group_create_list(request):
1053
    form = PickResourceForm()
1040 1054
    return render_response(
1041 1055
        template='im/astakosgroup_create_list.html',
1042 1056
        context_instance=get_context(request),)

Also available in: Unified diff