def lesson(lesson_id, section_id): user_db = auth.current_user_db() if user_db.progress < lesson_id: return redirect(url_for('lesson', lesson_id=user_db.progress, section_id=1)) if lesson_id > 0 and not user_db.registered: flash(u'Please register with your email below to access additional Lessons.') return redirect(url_for('welcome')) if request.method == 'POST': if answers.check(request.form, lesson_id): user_db.progress = lesson_id + 1 try: user_db.put() flash(u'Congratulations! Welcome to Lesson %s.' % user_db.progress, 'success') return redirect(url_for('lesson', lesson_id=user_db.progress, section_id=1)) except: flash(u'Something went wrong.', 'info') return redirect(url_for('lesson', lesson_id=lesson_id,section_id=section_id)) lesson_db = Lesson.query(Lesson.number == lesson_id).get() section_dbs = Section.query(Section.lesson == lesson_id).order(Section.number) piece_dbs = Piece.query(Piece.lesson == lesson_id, Piece.section == section_id).order(Piece.number) graph_string = 'graphs/graph_' + str(lesson_id) + '_' + str(section_id) return render_template( 'lesson.html', html_class='lesson', lesson=lesson_db, sections=section_dbs, pieces=piece_dbs, graph=graph_string + '.html', graph_head=graph_string + '_head.html', lesson_id=lesson_id, section_id=section_id, progress=user_db.progress )
def lesson_view(): lesson_dbs = Lesson.query().order(Lesson.number) return render_template( 'lesson_view.html', html_class='lesson-view', title='Lessons', lessons=lesson_dbs, )