Esempio n. 1
0
def gerund(level=None):
    options = ['about', 'for', 'on', 'to', 'of', 'up']
    if level == None:
        return render_template('gerund/gerund.html')
    else:
        if request.method == 'GET':
            if allowed_in_level(level, calculate_score(session['username'])):
                if level != "A2":
                    questions = OpenQuestion.query.filter_by(
                        category='Gerund').filter_by(level=level).all()
                    return render_template('gerund/' + level + '.html',
                                           level=level,
                                           questions=questions)
                else:
                    questions = MultiQuestion.query.filter_by(
                        category='Gerund').filter_by(level=level).all()
                    return render_template('gerund/' + level + '.html',
                                           level=level,
                                           questions=questions,
                                           options=options)
            else:
                return render_template('gerund/locked.html')
        if request.method == 'POST':
            update_user_results(session['username'],
                                correct_answers_in_post(request.form),
                                incorrect_answers_in_post(request.form))
            return render_template('gerund/gerund.html')
        else:
            return render_template('gerund/gerund.html')
    return render_template('gerund/gerund.html')
Esempio n. 2
0
def nouns(level=None):
    options = ['to', 'in', 'at', 'have', 'about', 'are', 'got', 'for']
    if level == None:
        return render_template('nouns/nouns.html')
    else:
        if request.method == 'GET':
            if allowed_in_level(level, calculate_score(session['username'])):
                if level != "B1":
                    questions = OpenQuestion.query.filter_by(
                        category='Nouns').filter_by(level=level).all()
                    return render_template('nouns/' + level + '.html',
                                           level=level,
                                           questions=questions)
                else:
                    questions = MultiQuestion.query.filter_by(
                        category='Nouns').filter_by(level=level).all()
                    return render_template('nouns/' + level + '.html',
                                           level=level,
                                           questions=questions,
                                           options=options)
            else:
                return render_template('nouns/locked.html')
        if request.method == 'POST':
            update_user_results(session['username'],
                                correct_answers_in_post(request.form),
                                incorrect_answers_in_post(request.form))
            return render_template('nouns/nouns.html')
        else:
            return render_template('nouns/nouns.html')
    return render_template('nouns/nouns.html')
 def test_update_user_results(self):
     update_user_results('Test_A', 5, 5)
     self.assertEqual(
         6,
         db.session.query(User).filter_by(
             username='******').first().amountCorrect)
     self.assertEqual(
         5,
         db.session.query(User).filter_by(
             username='******').first().amountIncorrect)
Esempio n. 4
0
def adverbs(level=None):
    if level == None:
        return render_template('adverbs/adverbs.html')
    else:
        if request.method == 'GET':
            if allowed_in_level(level, calculate_score(session['username'])):
                open_questions = OpenQuestion.query.filter_by(
                    category='Adverbs').filter_by(level=level).all()
                return render_template('adverbs/' + level + '.html',
                                       level=level,
                                       questions=open_questions)
            else:
                return render_template('adverbs/locked.html')
        if request.method == 'POST':
            update_user_results(session['username'],
                                correct_answers_in_post(request.form),
                                incorrect_answers_in_post(request.form))
            return render_template('adverbs/adverbs.html')
        else:
            return render_template('adverbs/adverbs.html')