Esempio n. 1
0
def user_module_list():
    """ Default user page: displays list of modules in progress,
	completed, or scheduled. """

    active_modules = db.get_module_info()
    active_module_ids = [x['MODULE_ID'] for x in active_modules]
    modules_completed = db.modules_completed_by_user(g.username)
    modules_completed = [x for x in modules_completed if x in active_module_ids]
    modules_started = db.get_modules_started_by_user(g.username)
    modules_started = [x for x in modules_started if x in active_module_ids]
    last_viewed_slide = db.get_last_viewed_slide_by_user(g.username)
    modules_in_progress = [x for x in modules_started if x not in modules_completed]
    num_active_modules = len(active_modules)
    num_complete = len(modules_completed)
    num_started = len(modules_started)
    num_in_progress = len(modules_in_progress)
    num_scheduled = num_active_modules - num_complete - num_in_progress
    
    if g.username not in g.admins:
	return render_template('user_module_list.html', 
		pagetitle = g.appname + " - My Modules",
		subtitle = "My Modules", 
		user_id = g.username, name = g.user,
		active_modules = active_modules, 
		modules_completed = modules_completed,
		modules_started = modules_started,
		modules_in_progress = modules_in_progress,
		num_active_modules = num_active_modules,
                num_complete = num_complete,
		num_started = num_started,
		num_in_progress = num_in_progress,
		num_scheduled = num_scheduled,
		last_viewed_slide = last_viewed_slide, is_admin = False)
    return redirect(url_for('admin_dashboard'))
Esempio n. 2
0
def user_grade_list():
    """ displays grades to the user for all the modules they have completed. """

    modules = db.get_module_info()
    grades = completed_module_ids = db.modules_completed_by_user(g.username)
    completed_modules = []
    for module in modules:
	if module['MODULE_ID'] in completed_module_ids:
	    number_of_questions = db.get_total_number_of_questions(module['NAME'])
	    correct_answers = db.get_number_of_correct_answers(g.username, module['NAME'])
	    module['GRADE'] = int(correct_answers / float(number_of_questions) * 100)
	    completed_modules.append(module)
    if g.username not in g.admins:
	return render_template('user_gradebook.html', 
		pagetitle = g.appname + " - My Grades",
		subtitle = "My Grades", 
		name = g.user,
		completed_modules = completed_modules,
		is_admin = False)
    return redirect(url_for('admin_dashboard'))