Changeset 8439bf6 for asadb/groups


Ignore:
Timestamp:
Sep 27, 2011, 1:24:52 AM (14 years ago)
Author:
Alex Dehnert <adehnert@…>
Branches:
master, space-access, stable, stage, test-hooks
Children:
357b799
Parents:
5f09392
git-author:
Alex Dehnert <adehnert@…> (09/07/11 22:13:24)
git-committer:
Alex Dehnert <adehnert@…> (09/27/11 01:24:52)
Message:

Start the group create form

Location:
asadb/groups
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • asadb/groups/urls.py

    rfbb362a r8439bf6  
    1313    (r'^(?P<pk>\d+)/', include(group_patterns, ), ),
    1414    url(r'^$', groups.views.GroupListView.as_view(), name='list', ),
     15    url(r'^create/(?P<status>\w)?$', groups.views.create_group, name='create', ),
    1516    url(r'^search/$', groups.views.search_groups, name='search', ),
    1617    url(r'^recent_changes/$', groups.views.GroupHistoryView.as_view(), name='manage-history', ),
  • asadb/groups/views.py

    r5f09392 r8439bf6  
    188188    return render_to_response('groups/group_change_main.html', context, context_instance=RequestContext(request), )
    189189
    190 
     190def create_group(request, status=None,):
     191    if not status: status = 'active'
     192    groupstatus = get_object_or_404(groups.models.GroupStatus, slug=status)
     193   
     194    if not request.user.has_perm('groups.add_group', ):
     195        raise PermissionDenied
     196    change_restricted = False
     197
     198    msg = None
     199
     200    group = groups.models.Group()
     201    group.group_status = groupstatus
     202    group.recognition_date  = datetime.datetime.now()
     203    if request.method == 'POST': # If the form has been submitted...
     204        # A form bound to the POST data
     205        form = GroupChangeMainForm(
     206            request.POST, request.FILES,
     207            change_restricted=change_restricted,
     208            instance=group,
     209        )
     210
     211        if form.is_valid(): # All validation rules pass
     212            request_obj = form.save(commit=False)
     213            request_obj.set_updater(request.user)
     214            request_obj.save()
     215            form.save_m2m()
     216            return redirect(reverse('groups:group-detail', args=[request_obj.pk]))
     217        else:
     218            msg = "Validation failed. See below for details."
     219
     220    else:
     221        form = GroupChangeMainForm(change_restricted=change_restricted, instance=group, ) # An unbound form
     222
     223    context = {
     224        'form':  form,
     225        'msg':   msg,
     226    }
     227    return render_to_response('groups/group_create.html', context, context_instance=RequestContext(request), )
    191228
    192229##################
Note: See TracChangeset for help on using the changeset viewer.