Пример #1
0
def finish_questionnaire(request, runinfo, questionnaire):
    hist = RunInfoHistory()
    hist.subject = runinfo.subject
    hist.runid = runinfo.runid
    hist.completed = datetime.now()
    hist.questionnaire = questionnaire
    hist.tags = runinfo.tags
    hist.skipped = runinfo.skipped
    hist.save()

    questionnaire_done.send(sender=None, runinfo=runinfo,
                            questionnaire=questionnaire)

    redirect_url = questionnaire.redirect_url
    for x, y in (('$LANG', translation.get_language()),
                 ('$SUBJECTID', runinfo.subject.id),
                 ('$RUNID', runinfo.runid),):
        redirect_url = redirect_url.replace(x, str(y))

    if runinfo.runid in ('12345', '54321') \
            or runinfo.runid.startswith('test:'):
        runinfo.questionset = QuestionSet.objects.filter(questionnaire=questionnaire).order_by('sortid')[0]
        runinfo.save()
    else:
        runinfo.delete()
    commit()
    if redirect_url:
        return HttpResponseRedirect(redirect_url)
    return r2r("questionnaire/complete.$LANG.html", request)
Пример #2
0
def finish_questionnaire(request, runinfo, questionnaire):
    hist = RunInfoHistory()
    hist.subject = runinfo.subject
    hist.runid = runinfo.runid
    hist.completed = datetime.now()
    hist.questionnaire = questionnaire
    hist.tags = runinfo.tags
    hist.skipped = runinfo.skipped
    hist.save()

    questionnaire_done.send(sender=None,
                            runinfo=runinfo,
                            questionnaire=questionnaire)

    redirect_url = questionnaire.redirect_url
    for x, y in (
        ('$LANG', translation.get_language()),
        ('$SUBJECTID', runinfo.subject.id),
        ('$RUNID', runinfo.runid),
    ):
        redirect_url = redirect_url.replace(x, str(y))

    if runinfo.runid in ('12345', '54321') \
            or runinfo.runid.startswith('test:'):
        runinfo.questionset = QuestionSet.objects.filter(
            questionnaire=questionnaire).order_by('sortid')[0]
        runinfo.save()
    else:
        runinfo.delete()
    commit()
    if redirect_url:
        return HttpResponseRedirect(redirect_url)
    return r2r("questionnaire/complete.$LANG.html", request)
Пример #3
0
    questionset_done.send(sender=None,runinfo=runinfo,questionset=questionset)

    next = questionset.next()
    while next and not questionset_satisfies_checks(next, runinfo):
        next = next.next()
    runinfo.questionset = next
    runinfo.save()

    if next is None: # we are finished
        hist = RunInfoHistory()
        hist.subject = runinfo.subject
        hist.runid = runinfo.runid
        hist.completed = datetime.now()
        hist.save()

        questionnaire_done.send(sender=None, runinfo=runinfo,
                                questionnaire=questionnaire)

        redirect_url = questionnaire.redirect_url
        for x,y in (('$LANG', translation.get_language()),
                    ('$SUBJECTID', runinfo.subject.id),
                    ('$RUNID', runinfo.runid),):
            redirect_url = redirect_url.replace(x, str(y))

        if runinfo.runid in ('12345', '54321') \
        or runinfo.runid.startswith('test:'):
            runinfo.questionset = QuestionSet.objects.filter(questionnaire=questionnaire).order_by('sortid')[0]
            runinfo.save()
        else:
            runinfo.delete()
        transaction.commit()
        if redirect_url:
Пример #4
0
    next = questionset.next()
    while next and not questionset_satisfies_checks(next, runinfo):
        next = next.next()
    runinfo.questionset = next
    runinfo.save()

    if next is None:  # we are finished
        hist = RunInfoHistory()
        hist.subject = runinfo.subject
        hist.runid = runinfo.runid
        hist.completed = datetime.now()
        hist.save()

        questionnaire_done.send(sender=None,
                                runinfo=runinfo,
                                questionnaire=questionnaire)

        redirect_url = questionnaire.redirect_url
        for x, y in (
            ('$LANG', translation.get_language()),
            ('$SUBJECTID', runinfo.subject.id),
            ('$RUNID', runinfo.runid),
        ):
            redirect_url = redirect_url.replace(x, str(y))

        if runinfo.runid in ('12345', '54321') \
        or runinfo.runid.startswith('test:'):
            runinfo.questionset = QuestionSet.objects.filter(
                questionnaire=questionnaire).order_by('sortid')[0]
            runinfo.save()