Exemplo n.º 1
0
def all_question():
    allowed_order_options = ["title", "submission_time", "message"]
    order_by = request.args.get('order')
    if order_by in allowed_order_options:
        questions = data_manager.get_questions(order_by)
    else:
        questions = data_manager.get_questions(2)

    return render_template("list_questions.html", questions=questions)
Exemplo n.º 2
0
def list():
    questions = data_manager.get_questions()
    return render_template('list.html', questions=questions)

    # @app.route("/search/<filtered_questions>")
    # def search_result(filtered_questions):
    return render_template('index.html', filtered_questions=filtered_questions)
Exemplo n.º 3
0
def new_id():
    questions = data_manager.get_questions()
    current_id = 0
    for question in questions:
        if int(question['id']) > current_id:
            current_id = int(question['id'])
    return current_id + 1
Exemplo n.º 4
0
def route_list():
    questions = data_manager.get_questions()
    if request.method == 'GET':
        return render_template('list.html', questions=reversed(questions))

    elif request.method == 'POST':
        user_input_username = request.form['user_input_username']
        user_input_password = request.form['user_input_password']
        user_database_password = data_manager.get_password(user_input_username)

        for dict in user_database_password:
            for key, value in dict.items():
                if pwhashing.verify_password(user_input_password, value):

                    session['user_id'] = data_manager.get_user_id_and_name(
                        user_input_username)
                    is_logged_in = "true"
                    message = "Hi " + user_input_username + "!"
                    return render_template('list.html',
                                           questions=reversed(questions),
                                           is_logged_in=is_logged_in,
                                           message=message,
                                           user_id_and_name=session['user_id'])

                else:
                    message = "Invalid username or password!"
                    is_logged_in = "false"
                    return render_template('list.html',
                                           questions=reversed(questions),
                                           is_logged_in=is_logged_in,
                                           message=message)
Exemplo n.º 5
0
def profile(user_id):
    stored_questions = data_manager.get_questions()
    user_name = data_manager.get_user_name(user_id)
    return render_template('user_profile.html',
                           questions=stored_questions,
                           user_id=user_id,
                           user_name=user_name)
Exemplo n.º 6
0
def delete_question(question_id):
    questions = data_manager.get_questions()
    if data_manager.validation(questions, question_id):
        if request.method == "POST":
            data_manager.delete_question(question_id)
            return redirect(url_for('route_list'))
    else:
        return redirect(url_for('route_main'))
Exemplo n.º 7
0
def vote_system_plus(id):
    all_answers = data_manager.get_questions()
    for answer in all_answers:
        if id == answer['id']:
            answer['vote_number'] = int(answer['vote_number']) + 1
            connection.write_file(all_answers,
                                  'ask-mate-python/sample_data/question.csv')
    return redirect('/list')
Exemplo n.º 8
0
def list_all_questions():
    questions = data_manager.get_questions()
    if request.args.get('order') is not None:
        questions = data_manager.sort_questions(request.args.get('sort'),
                                                request.args.get('order'),
                                                questions)

    return render_template('list.html', questions=questions, link=False)
Exemplo n.º 9
0
def route_question_id(question_id):
    stored_questions = data_manager.get_questions()
    stored_answers = data_manager.get_answers()
    stored_comments = data_manager.get_comments()

    return render_template('questiondetails.html',
                           questions=stored_questions,
                           answers=stored_answers,
                           id=question_id,
                           comments=stored_comments)
Exemplo n.º 10
0
def add_question():
    if request.method == 'POST':
        user_id = data_manager.get_user_id_by_username(session['username'])
        new_question = dict(request.form)
        file_to_upload = request.files['image_file']
        new_question['image'] = save_file(file_to_upload)
        data_manager.add_question(new_question, user_id)
        return redirect('/list')
    questions = data_manager.get_questions()
    return render_template('add-question.html', questions=questions)
Exemplo n.º 11
0
def main_page():
    questions = data_manager.get_questions(5)
    response = make_response(
        render_template("index.html",
                        user_id=SESSION_ID,
                        username=SESSION_USERNAME,
                        headers=headers,
                        questions=questions,
                        story_keys=story_keys))
    return response
Exemplo n.º 12
0
def route_list():
    stored_questions = data_manager.get_questions()
    if request.method == "GET":
        order = request.args.get('order_by')
        direction = request.args.get('direction')
        if order == None:
            order = 'submission_time'
            direction = 'desc'
        stored_questions = data_manager.get_latest5_questions(order, direction)
    return render_template('list.html', questions=stored_questions, title="Welcome!")\
Exemplo n.º 13
0
def route_list():
    questions = data_manager.get_questions()
    type = 'list_all'
    if request.method == 'POST':
        search = request.form['search']
        search_results = data_manager.get_question_by_search(search)
        return render_template('search_result.html',
                               search=search,
                               results=search_results,
                               questions=questions)
    return render_template('list.html', questions=questions, type=type)
Exemplo n.º 14
0
def questions_generator(index):
    que_index = 0
    ans_index = 1
    hint_index = 2
    questions_list = data_manager.get_questions("questions.txt")
    if index > 3:
        index = 0
    qa_list = [
        questions_list[index][que_index], questions_list[index][ans_index],
        questions_list[index][hint_index]
    ]
    return qa_list
Exemplo n.º 15
0
def show_list_of_questions():
    list_of_questions = data_manager.get_questions()
    titles = ['ID', 'Submission Time', 'View Number', 'Vote Number', 'Title']
    if 'username' in session:
        return render_template('list.html',
                               list_of_questions=list_of_questions,
                               titles=titles,
                               username=session["username"])
    else:
        return render_template('list.html',
                               list_of_questions=list_of_questions,
                               titles=titles)
Exemplo n.º 16
0
def question_page():
    questions = data_manager.get_questions(None)
    if len(request.args) != 0:
        questions = data_manager.get_questions_by_order(
            request.args.get("order_by"), request.args.get("order_direction"))
    response = make_response(
        render_template("question_list.html",
                        username=SESSION_USERNAME,
                        headers=headers,
                        questions=questions,
                        story_keys=story_keys))
    return response
Exemplo n.º 17
0
def list_all_questions():
    sort_by = ''
    direction = ''
    if request.method == "POST":
        sort_by = request.form.get('sort')
        direction = request.form.get('direction')
        data = data_manager.sort_questions(sort_by, direction)
    else:
        data = data_manager.get_questions()

    return render_template('all_questions.html',
                           questions=data,
                           sort_by=sort_by,
                           direction=direction,
                           searching=True)
Exemplo n.º 18
0
def edit_question(question_id):
    questions = data_manager.get_questions()
    if data_manager.validation(questions, question_id):
        if request.method == "POST":
            new_message = request.form['message']
            new_title = request.form['title']
            data_manager.get_update_question(question_id, new_message,
                                             new_title)
            return redirect(f'/question/{question_id}')

        return render_template('edit_question.html',
                               questions=questions,
                               question_id=question_id)

    return redirect(url_for('route_main'))
Exemplo n.º 19
0
def profile_question(user_id, type):
    try:
        get_user_id = data_manager.get_user_id_by_username(session['username'])
    except KeyError:
        return redirect(url_for('route_main'))

    if get_user_id == user_id:
        if type == "question":
            some_data = data_manager.get_questions()
        elif type == "answer":
            some_data = data_manager.get_answers_for_user()
        elif type == "comment":
            some_data = data_manager.get_comment_for_user()
        user_name = data_manager.get_user_name(user_id)
        return render_template('user_profile.html',
                               datas=some_data,
                               user_id=user_id,
                               user_name=user_name)
    else:
        return redirect(url_for('route_main'))
Exemplo n.º 20
0
def add():
    data = datetime.now()
    data = str(data)
    if request.method == 'POST':
        new_question = {
            'id': uuid.uuid4(),
            'submission_time': data,
            'view_number': 0,
            'vote_number': 0,
            'title': request.form['title'],
            'message': request.form["message"],
            'image': None
        }

    else:
        return render_template('add.html')

    new_data = data_manager.get_questions()
    new_data.append(new_question)
    connection.write_file(new_data, 'ask-mate-python/sample_data/question.csv')
    print('NoError')
    return redirect('/list')
Exemplo n.º 21
0
def get_all_questions():
    return data_manager.get_questions()
Exemplo n.º 22
0
def list_of_questions():
    questions = data_manager.get_questions()
    return render_template('list.html', questions=questions)
Exemplo n.º 23
0
def home_page():
    all_questions = data_manager.get_questions()

    return render_template('home.html', questions=all_questions)
Exemplo n.º 24
0
def questions_list_sorted(option):
    questions = data_manager.get_questions(option)
    return render_template('list.html', questions=questions, latest=False)
Exemplo n.º 25
0
def route_index():
    user_questions = data_manager.get_questions()

    return render_template('main_page.html', user_questions=user_questions)
Exemplo n.º 26
0
def get_question_list():
    order_by = request.args.get('order_by')
    order = request.args.get('order_direction')
    all_questions = data_manager.get_questions(order_by, order)
    return render_template("list.html", all_data_reversed=all_questions)
Exemplo n.º 27
0
def route_sorted_list_of_questions():
    criteria = request.args.get('criteria', 'submission_time')
    direction = request.args.get('direction', 'DESC')
    questions = data_manager.get_questions(criteria, direction, None)
    return render_template("list.html", list_of_questions=questions)
Exemplo n.º 28
0
def route_list_of_latest_questions():
    questions = data_manager.get_questions('submission_time', 'DESC', 5)
    return render_template("home.html", list_of_questions=questions)
Exemplo n.º 29
0
def display_list_of_questions():
    list_of_questions = data_manager.get_questions()
    return render_template('list.html', questions=list_of_questions)
Exemplo n.º 30
0
def route_list_ordered(order_key, order_direction):
    questions = data_manager.get_questions()
    return render_template('list.html',
                           questions=questions,
                           order_key=order_key,
                           order_direction=order_direction)