예제 #1
0
def createproblem():
    user = current_user.username
    form = CreateProblem()
    if form.validate_on_submit():
        Quiz.create_problem(form.quiz_id.data, form.statement.data,
                            form.op_1.data, form.op_2.data, form.op_3.data,
                            form.op_4.data, form.ans.data, form.positive.data,
                            form.negative.data)
        flash('problem created successfully')
        return redirect(url_for('index'))
    return render_template('createProblem.html',
                           title='Create Problem',
                           form=form)
예제 #2
0
def getproblems():
    faculty_id = Faculty.get_faculty_id(current_user.email)[1]
    quizes = Quiz.get_faculty_quiz(faculty_id)
    form = GetProblems()
    form.quiz_id.choices = [(i + 1, quizes[i]) for i in range(len(quizes))]
    if form.validate_on_submit():
        if True:  #check if quiz id is valid
            problems = Quiz.get_problems(form.quiz_id.data)
            return render_template('problemsList.html',
                                   title='Hme',
                                   quiz_id=form.quiz_id.data,
                                   problems=problems)
        else:
            flash('Invalid Quiz id')
    return render_template('getProblems.html', title='Get Problems', form=form)
예제 #3
0
def enterquiz():

    quizes = Quiz.get_all_quiz()
    student_quizzes = []
    for quiz in quizes:
        if Quiz.is_student_in_quiz(current_user.user_id, quiz[0]):
            student_quizzes.append(quiz)

    form = GetProblems()
    form.quiz_id.choices = [(str(quiz[0]), quiz[3])
                            for quiz in student_quizzes]

    if form.validate_on_submit():
        return redirect(url_for('quizformget', quiz_id=form.quiz_id.data))

    return render_template('getProblems.html', title='Enter Quiz', form=form)
예제 #4
0
def quizform(quiz_id):
    problems = Quiz.get_problems(quiz_id)
    form = QuizForm()
    #if form.validate_on_submit():
    #print(form)
    return render_template('quiz.html',
                           title='Quiz',
                           form=form,
                           problems=problems)
예제 #5
0
def quizformpost(quiz_id):

    if not Quiz.quiz_status(quiz_id)[0]:
        flash(Quiz.quiz_status(quiz_id)[1])
        return redirect(url_for('index'))

    d = request.form.to_dict()
    response_list = [(int(pid), d[pid]) for pid in d]

    student_id = current_user.user_id
    submission_status = Quiz.insert_response(quiz_id, student_id,
                                             response_list)

    if (submission_status == True):
        flash("Successfully submitted your responses")
        return redirect('/')
    else:
        flash("Sorry could not submit your responses")
        return redirect(url_for('quizform', quiz_id=quiz_id))
예제 #6
0
def generateresult():

    faculty_id = Faculty.get_faculty_id(current_user.email)[1]
    quizes = Quiz.get_faculty_quiz(faculty_id)
    print(quizes)

    form = GetResult()
    form.quiz_id.choices = [(str(quiz['qid']), quiz['qname'])
                            for quiz in quizes]

    if form.validate_on_submit():
        results = Quiz.generate_mark_list(form.quiz_id.data)
        print(results)
        return render_template('results.html',
                               title='Results for quiz ' + form.quiz_id.data,
                               form=form,
                               results=results,
                               quiz_id=form.quiz_id.data)

    return render_template('getResult.html', title='Select Quiz', form=form)
예제 #7
0
def quizformget(quiz_id):

    student_id = current_user.user_id
    if not Quiz.is_student_in_quiz(student_id, quiz_id):
        flash('Sorry you have not enrolled for this Quiz!!')
        return redirect(url_for('enterquiz'))

    if not Quiz.quiz_status(quiz_id)[0]:
        flash(Quiz.quiz_status(quiz_id)[1])
        return redirect(url_for('enterquiz'))

    if Quiz.quiz_attempted(quiz_id, student_id):
        flash('You have already attempted the quiz')
        return redirect(url_for('index'))

    problems = (Quiz.get_problems(quiz_id))
    return render_template('quiz.html',
                           title='Quiz' + quiz_id,
                           problems=problems,
                           quiz_id=quiz_id)
예제 #8
0
def getproblems():

    faculty_id = Faculty.get_faculty_id(current_user.email)[1]
    quizes = Quiz.get_faculty_quiz(faculty_id)

    form = GetProblems()
    form.quiz_id.choices = [(str(quiz['qid']), "{}: {}".format(quiz['cid'], quiz['qname']))\
     for quiz in quizes]

    if form.validate_on_submit():
        # print(Quiz.generate_mark_list(1))
        quiz_id = form.quiz_id.data
        problems = Quiz.get_problems(quiz_id)
        print(Quiz.get_problems(quiz_id))
        return render_template('problemsList.html',
                               title='Problems of Quiz' + quiz_id,
                               quiz_id=quiz_id,
                               problems=problems)

    return render_template('getProblems.html', title='Get Problems', form=form)
예제 #9
0
def createproblem():

    faculty_id = Faculty.get_faculty_id(current_user.email)[1]
    quizes = Quiz.get_faculty_quiz(faculty_id)

    form = CreateProblem()
    form.quiz_id.choices = [(str(quiz['qid']), "{}: {}".format(quiz['cid'], quiz['qname']))\
     for quiz in quizes]

    if form.validate_on_submit():
        Quiz.create_problem(form.quiz_id.data, form.statement.data,
                            form.op_1.data, form.op_2.data, form.op_3.data,
                            form.op_4.data, form.ans.data, form.positive.data,
                            form.negative.data)
        flash('problem created successfully')
        return redirect(url_for('index'))

    return render_template('createProblem.html',
                           title='Create Problem',
                           form=form)
예제 #10
0
def createquiz():

    faculty_id = Faculty.get_faculty_id(current_user.email)[1]
    courses = Faculty.get_faculty_course(faculty_id)

    form = CreateQuiz()
    form.course.choices = [(course['cid'], course['cid'])
                           for course in courses]

    if form.validate_on_submit():
        a, b, c, d, e, f = map(int, form.start_time.data.split())
        start_time = datetime.datetime(a, b, c, d, e, f).timestamp()
        a, b, c, d, e, f = map(int, form.end_time.data.split())
        end_time = datetime.datetime(a, b, c, d, e, f).timestamp()
        Quiz.create_quiz(faculty_id, form.course.data, form.quiz_name.data,
                         start_time, end_time)
        flash('Quiz created successfully')
        return redirect(url_for('index'))

    return render_template('createQuiz.html', title='Create Quiz', form=form)
예제 #11
0
def createquiz():
    faculty_id = Faculty.get_faculty_id(current_user.email)[1]
    courses = Faculty.get_faculty_course(faculty_id)
    form = CreateQuiz()
    form.course.choices = [(i + 1, courses[i]) for i in range(len(courses))]
    if form.validate_on_submit():
        #course = Course.get_all_course()[0][0]
        if (False):  #validate course name
            flash('__ is not a valid course name')
        else:
            print(
                Quiz.create_quiz(faculty_id, form.course.data,
                                 form.quiz_name.data, form.start_time.data,
                                 form.end_time.data))
            flash('quiz created successfully')
            return redirect(url_for('index'))
    return render_template('createQuiz.html', title='Create Quiz', form=form)
예제 #12
0
# Course.create_course('CS F212', 'DBMS', 1)
# Course.create_course('PHY F111', 'PHYSICS', 4)

# Quiz.create_quiz(3, 'CS F211', 'Graph', time.time(), time.time() + 600)
# Quiz.create_quiz(1, 'CS F212', 'SQL Queries', time.time(), time.time() + 600)
# Quiz.create_quiz(1, 'CS F212', 'SQL Queries 2', time.time(), time.time() + 600)

# print(Quiz.create_problem(1, 'Number of edges in a tree%s', 'n', 'n - 1', 'n + 1', '2n', 'B', 3, 1))
# print(Quiz.create_problem(1, 'Number of edges in a single cycle%s', 'n', 'n - 1', 'n + 1', '2n', 'A', 3, 1))
# print(Quiz.create_problem(1, 'Number of edges in a single node graph%s', 'n', '0', 'n + 1', '2n', 'B', 3, 1))

# A = [
#     (1, 'A'),
#     (2, 'A'),
#     (3, 'B'),
# ]

# print(Quiz.insert_response(1, '2017A7PS1398H', A))

# print(Course.insert_student_in_course('2017A7PS1398H', 'CS F211'))
# print(Course.insert_student_in_course('2017A7PS0277H', 'CS F212'))

# print(Course.insert_faculty_in_course(3, 'CS F211'))
# print(Course.insert_faculty_in_course(1, 'CS F212'))

# print(Quiz.generate_mark_list(1))

# print(get_logs())

print(Quiz.quiz_attempted(1, '2017A7PS1398H'))