Example #1
0
def create_feedback(request, model, object_id, template_name):

    decision = get_object_or_404(model, id = object_id)
    
    if request.method == "POST":
        if request.POST.get('submit', None) == "Cancel":
            return HttpResponseRedirect(reverse('publicweb_item_detail', args=[unicode(decision.id)]))
        else:
            form = FeedbackForm(request.POST)
            if form.is_valid():
                feedback = form.save(commit=False)
                feedback.decision = decision
                feedback.author = request.user
                feedback.save()
                return HttpResponseRedirect(reverse('publicweb_item_detail', args=[unicode(decision.id)]))
        
        data = dict(form=form)
        context = RequestContext(request, data)
        return render_to_response(template_name, context)

    else:
        form = FeedbackForm()
        
    data = dict(form=form)
    context = RequestContext(request, data)
    return render_to_response(template_name, context)
Example #2
0
def update_feedback(request, model, object_id, template_name):

    feedback = get_object_or_404(model, id = object_id)

    if request.method == "POST":
        if request.POST.get('submit', None) == "Cancel":
            return HttpResponseRedirect(feedback.get_parent_url())
        else:
            form = FeedbackForm(request.POST, instance=feedback)
            if form.is_valid():
                form.save()
                return HttpResponseRedirect(feedback.get_parent_url())
        
        data = dict(form=form)
        context = RequestContext(request, data)
        return render_to_response(template_name, context)

    else:
        form = FeedbackForm(instance=feedback)
        
    data = dict(form=form)
    context = RequestContext(request, data)
    return render_to_response(template_name, context)