datatracker/ietf/wgchairs/views.py
Emilio A. Sánchez López 34cbc464cb Manage delegates views. See #557
- Legacy-Id: 2690
2010-11-29 09:15:52 +00:00

39 lines
1.7 KiB
Python

from ietf.idtracker.models import IETFWG
from django.shortcuts import get_object_or_404, render_to_response
from django.template import RequestContext
from django.http import HttpResponseForbidden
from ietf.wgchairs.forms import RemoveDelegateForm, add_form_factory
from ietf.wgchairs.accounts import can_manage_delegates_in_group
def manage_delegates(request, acronym):
wg = get_object_or_404(IETFWG, group_acronym__acronym=acronym, group_type=1)
user = request.user
if not can_manage_delegates_in_group(user, wg):
return HttpResponseForbidden('You have no permission to access this view')
delegates = wg.wgdelegate_set.all()
add_form = add_form_factory(request, wg, user)
if request.method == 'POST':
if request.POST.get('remove', None):
form = RemoveDelegateForm(wg=wg, data=request.POST.copy())
if form.is_valid():
form.save()
elif add_form.is_valid():
add_form.save()
add_form = add_form.get_next_form()
return render_to_response('wgchairs/manage_delegates.html',
{'wg': wg,
'delegates': delegates,
'selected': 'manage_delegates',
'can_add': delegates.count() < 3,
'add_form': add_form,
},
RequestContext(request))
def manage_workflow(request, acronym):
wg = get_object_or_404(IETFWG, group_acronym__acronym=acronym, group_type=1)
concluded = (wg.status_id != 1)
return render_to_response('wginfo/wg_charter.html', {'wg': wg, 'concluded': concluded, 'selected': 'manage_workflow'}, RequestContext(request))