Ejemplo n.º 1
0
def display_question(id, count_view=True):
    # view counter += 1
    question_file_name = current_file_path + "/data/question.csv"
    question_list = data_manager.get_table_from_file(question_file_name,
                                                     (4, 5, 6))
    for row in question_list:
        if row[0] == id:
            title = row[4]
            message = row[5]
            if count_view:
                row[2] = str(int(row[2]) + 1)
            question_list = data_manager.get_timeform_to_stamp(question_list)
            data_manager.write_table_to_file(question_file_name, question_list,
                                             (4, 5, 6))
            break
    answer_file_name = current_file_path + "/data/answer.csv"
    answer_list = data_manager.get_table_from_file(answer_file_name, (4, 5))
    list_answers = []
    for row in answer_list:
        if row[3] == id:
            list_answers.append(row)
    return render_template('display_question.html',
                           id=id,
                           title=title,
                           message=message,
                           list_answers=list_answers)
Ejemplo n.º 2
0
def add_image(id):
    if request.method == 'POST':
        # check if the post request has the file part
        if 'file' not in request.files:
            flash('No file part')
            return redirect(request.url)
        file = request.files['file']
        # if user does not select file, browser also
        # submit a empty part without filename
        if file.filename == '':
            flash('No selected file')
            return redirect(request.url)
        if file and allowed_file(file.filename):
            filename = secure_filename(file.filename)
            file.save(os.path.join(app.config['UPLOAD_FOLDER'], filename))
            # filename-to-table
            question_file_name = current_file_path + "/data/question.csv"
            question_list = data_manager.get_table_from_file(
                question_file_name, (4, 5, 6))
            for row in question_list:
                if row[0] == id:
                    row[6] = '/images/' + filename
                    break
            # update csv
            question_list_csv_format = data_manager.get_timeform_to_stamp(
                question_list)
            # question_list_csv_format = data_manager.add_item_to_table(question_list_csv_format, request.form)
            data_manager.write_table_to_file(question_file_name,
                                             question_list_csv_format,
                                             (4, 5, 6))
            return redirect('/')
    return render_template('file_upload.html')
Ejemplo n.º 3
0
def add_new_answer():
    file_name = current_file_path + "/data/answer.csv"
    answer_list = data_manager.get_table_from_file(file_name, (4, 5))
    answer_list_csv_format = data_manager.get_timeform_to_stamp(answer_list)
    answer_list_csv_format = data_manager.add_item_to_answer_table(
        answer_list_csv_format, request.form)
    data_manager.write_table_to_file(file_name, answer_list_csv_format, (4, 5))
    return redirect('/question/' + request.form["question_id"])
Ejemplo n.º 4
0
def create_new_question():
    file_name = current_file_path + "/data/question.csv"
    question_list = data_manager.get_table_from_file(file_name, (4, 5, 6))
    question_list_csv_format = data_manager.get_timeform_to_stamp(
        question_list)
    question_list_csv_format = data_manager.add_item_to_table(
        question_list_csv_format, request.form)
    data_manager.write_table_to_file(file_name, question_list_csv_format,
                                     (4, 5, 6))
    return redirect('/')
Ejemplo n.º 5
0
def vote_answer_down():
    file_name = current_file_path + "/data/answer.csv"
    answer_list = data_manager.get_table_from_file(file_name, (4, 5))
    for row in answer_list:
        if row[0] == request.args.get('id'):
            row[2] = str(int(row[2]) - 1)
            question_id = row[3]
            break
    answer_list_csv_format = data_manager.get_timeform_to_stamp(answer_list)
    data_manager.write_table_to_file(file_name, answer_list_csv_format, (4, 5))
    return display_question(question_id, count_view=False)
Ejemplo n.º 6
0
def vote_question_down():
    file_name = current_file_path + "/data/question.csv"
    question_list = data_manager.get_table_from_file(file_name, (4, 5, 6))
    for row in question_list:
        if row[0] == request.args.get('id'):
            row[3] = str(int(row[3]) - 1)
            break
    question_list_csv_format = data_manager.get_timeform_to_stamp(
        question_list)
    data_manager.write_table_to_file(file_name, question_list_csv_format,
                                     (4, 5, 6))
    return redirect('/')
Ejemplo n.º 7
0
def delete_question(question_id):
    file_name = current_file_path + "/data/question.csv"
    question_list = data_manager.get_table_from_file(file_name, (4, 5, 6))
    question_list_csv_format = data_manager.get_timeform_to_stamp(
        question_list)
    question_list_csv_format = data_manager.delete_item_from_table(
        question_list_csv_format, question_id)
    data_manager.write_table_to_file(file_name, question_list_csv_format,
                                     (4, 5, 6))

    file_name = current_file_path + "/data/answer.csv"
    answer_list = data_manager.get_table_from_file(file_name, (4, 5))
    question_id_list = []
    for row in answer_list:
        if row[3] == question_id:
            question_id_list.append(row[0])
    answer_list_csv_format = data_manager.get_timeform_to_stamp(answer_list)
    for question_id_to_delete in question_id_list:
        answer_list_csv_format = data_manager.delete_item_from_table(
            answer_list_csv_format, question_id_to_delete)
    data_manager.write_table_to_file(file_name, answer_list_csv_format, (4, 5))
    return redirect('/')