Ejemplo n.º 1
0
def add_content_object(request, group, current_app='plus_groups', **kwargs):
    form_args = request.POST.copy()
    form_args['current_app'] = current_app
    form = AddContentForm(form_args)
    if form.is_valid():
        title = form.cleaned_data['title']
        type_string = form.cleaned_data['type_string']
        create = getattr(group, "create_" + type_string)
        title = form.cleaned_data['title']
        name = form.cleaned_data['name']
        cls = ContentType.objects.get(model=form.cleaned_data['type_string'].lower()).model_class()
        try:
            #if a stub exists, use it
            obj = cls.objects.plus_get(request.user, name=form.cleaned_data['name'], in_agent=group.get_ref(), stub=True)
        except cls.DoesNotExist:
            obj = create(request.user, title=title, name=name, in_agent=group.get_ref(), stub=True)
            obj.save()

        #can't do a normal redirect via ajax call, so tell the js to redirect for us

        return HttpResponse('redirect:' + reverse(current_app + ':edit_' + type_string, args=[group.id, obj.name]))
        
        #redirect to the edit page
        #return HttpResponseRedirect(reverse('edit_' + type_string, args=[group.id, obj.name]))
    
    return add_content_form(request, group.id, form)
Ejemplo n.º 2
0
def add_content_object(request, group, current_app='plus_groups', **kwargs):
    form = AddContentForm(request.POST)
    if form.is_valid():
        title = form.cleaned_data['title']
        type_string = form.cleaned_data['type_string']
        create = getattr(group, "create_" + type_string)
        title = form.cleaned_data['title']
        name = form.cleaned_data['name']

        obj = create(request.user, title=title, name=name, in_agent=group.get_ref(), stub=True)
        obj.save()

        #can't do a normal redirect via ajax call, so tell the js to redirect for us

        return HttpResponse('redirect:' + reverse(current_app + ':edit_' + type_string, args=[group.id, obj.name]))
        
        #redirect to the edit page
        #return HttpResponseRedirect(reverse('edit_' + type_string, args=[group.id, obj.name]))
    
    return add_content_form(request, group.id, form)