Example #1
0
def problemUpdate(request, pk, test_key=-1, template_name='problem_form.html'):
    problem = get_object_or_404(Problem, pk=pk)
    form = ProblemForm(request.POST or None, instance=problem)
    if form.is_valid():
        problem = form.save()
        problem.measuredheight = measureHeight(problem, request)
        problem.save()
        if test_key < 0:
            return redirect('problem_list')
        else:
            return redirect('test_problem_list',test_key)
    return render(request, template_name, {'form':form, 'usescript':not problem.autogenerated})
Example #2
0
def problemCreate(request, test_key=-1, template_name='problem_form.html'):
    test = None
    if test_key >= 0:
        test = get_object_or_404(Test, pk=test_key)
    form = ProblemForm(request.POST or None)
    if form.is_valid():
        problem = form.save()
        problem.measuredheight = measureHeight(problem, request)
        problem.save()
        if test_key < 0:
            return redirect('problem_list')
        else:
            pit = ProblemInTest(test=test, problem=problem, customspacing=0, customscore=problem.score)
            pit.save()
            return redirect('test_problem_list',test_key)
    return render(request, template_name, {'form':form})