コード例 #1
0
def add_a_question():
    if request.method == "POST":
        new_data = request.form.to_dict()
        new_data['submission_time'] = datetime.now().isoformat(
            timespec='seconds')
        submission_time = new_data['submission_time']
        view_nr = new_data['view_number']
        vote_nr = new_data['vote_number']
        title = new_data['title']
        message = new_data['message']
        image = new_data['image']
        user_name = session['username']

        user_id = data_manager.get_user_id(user_name)

        question_id_dict = data_manager.add_question(submission_time, view_nr,
                                                     vote_nr, title, message,
                                                     image, user_id['user_id'])
        question_id = question_id_dict[0]['id']

        return redirect(url_for('display_question', question_id=question_id))

    return render_template("add_a_question.html",
                           submission_time='default',
                           view_nr='0',
                           vote_nr='5')
コード例 #2
0
def login():
    user_data = request.get_json()
    if data_manager.check_login(user_data):
        session['username'] = user_data['username']
        user_id = data_manager.get_user_id(user_data['username'])
        return jsonify(username=session["username"], user_id=user_id)
    else:
        return jsonify(error="error")
コード例 #3
0
def question_page(question_id):
    question = data_manager.get_question_details(question_id)
    if 'user_name' in session:
        user_id = data_manager.get_user_id(session['user_name'])[0]['id']
        return render_template("question.html",
                               question=question,
                               email=session['user_name'],
                               user_id=user_id)
    return render_template("question.html", question=question)
コード例 #4
0
ファイル: main.py プロジェクト: cskata/proman-javascript
def login():
    user_data = request.get_json()
    if data_manager.check_login(user_data):
        session['username'] = user_data['username']
        user_id = data_manager.get_user_id(user_data['username'])
        session['user_id'] = user_id
        return jsonify(state="loggedIn")
    else:
        return jsonify(error="error")
コード例 #5
0
def save_user_vote():
    if request.method == 'POST':
        planet_id = request.form.get('planet-id')
        planet_name = request.form.get('planet-name')
        username = session['username']
        user_id = data_manager.get_user_id(username)['id']
        data_manager.add_to_planet_votes(planet_id, planet_name, user_id)
        return redirect(url_for('show_planets'))
    else:
        return redirect(url_for('show_planets'))
コード例 #6
0
def list_route():
    questions = sorted(data_manager.get_question_data(),
                       key=lambda key: key['submission_time'],
                       reverse=True)
    try:
        user_id = data_manager.get_user_id(session['username'])
    except KeyError:
        user_id = ''
    return render_template('all_questions.html',
                           questions=questions,
                           user_id=user_id)
コード例 #7
0
def search():
    try:
        userid = data_manager.get_user_id(session['username'])
    except KeyError:
        userid = ''
    search = '%' + request.args.get('search') + '%'
    questions = data_manager.search(search)
    return render_template('main.html',
                           questions=questions,
                           search=search,
                           user_id=userid)
コード例 #8
0
ファイル: server.py プロジェクト: LaszloNagy85/ask-mate-WT
def route_login():
    if request.method == 'POST':
        if data_manager.check_user_validity(request.form['user_name'], request.form['password']):
            session['username'] = request.form['user_name']
            session['user_id'] = data_manager.get_user_id(request.form['user_name'])
            return redirect(url_for('route_list'))
        else:
            error_message = "Invalid user name or password"
            return render_template('error.html', error_message=error_message)

    return render_template('register-login.html', html_data='Login')
コード例 #9
0
def show_list():
    questions = data_manager.get_list(
        request.args.get('order_by', default='submission_time'),
        request.args.get('order_direction', default='desc'))
    if 'user_name' in session:
        user_id = data_manager.get_user_id(session['user_name'])[0]['id']
        return render_template("list.html",
                               questions=questions,
                               email=session['user_name'],
                               user_id=user_id)
    return render_template("list.html", questions=questions)
コード例 #10
0
def add_form():
    """if request.method == 'POST':
        # we update how many times it has been edited
        saved_data['edit_count'] = saved_data.get('edit_count', 0) + 1"""
    if request.method == 'POST':
        new_q_id = data_manager.add_question(
            request.form['title'], request.form['message'],
            data_manager.get_user_id(session['user_name'])[0]['id'])
        return redirect(url_for('question_page', question_id=new_q_id))
    if 'user_name' in session:
        return render_template("add-question.html", email=session['user_name'])
    return redirect(url_for('login'))
コード例 #11
0
def add_question_comment(question_id: int):
    if request.method == 'POST':
        user_comment = request.form.get('comment')
        now_time = datetime.now()
        try:
            userid = data_manager.get_user_id(session['username'])
        except KeyError:
            userid = None
        data_manager.add_comment_to_question(question_id, user_comment,
                                             now_time, userid)
        return redirect(f'/question/{question_id}')
    return render_template('add_comment_question.html',
                           question_id=question_id)
コード例 #12
0
def add_a_comment_to_question(question_id):
    if request.method == 'POST':
        message_data = request.form.to_dict()
        message = message_data['message']

        user_name = session['username']

        user_id = data_manager.get_user_id(user_name)
        data_manager.add_comment_to_question(question_id, message,
                                             user_id['user_id'])
        return redirect(url_for('display_question', question_id=question_id))
    return render_template('add_a_comment_to_question.html',
                           question_id=question_id)
コード例 #13
0
def add_answer_comment(answer_id: int, question_id: int):
    if request.method == 'POST':
        user_comment = request.form.get('comment')
        now_time = datetime.now()
        try:
            user_id = data_manager.get_user_id(session['username'])
        except:
            user_id = ''
        data_manager.add_comment_to_answer(answer_id, user_comment, now_time,
                                           user_id)
        return redirect(f'/question/{question_id}')
    return render_template('add_comment_answer.html',
                           answer_id=answer_id,
                           question_id=question_id)
コード例 #14
0
def add_answer(question_id: int):
    if request.method == 'POST':
        message = request.form.get('message')
        image = request.form.get('picture')
        submission_time = datetime.now()
        vote_number = 0
        try:
            userid = data_manager.get_user_id(session['username'])
        except KeyError:
            userid = None
        data_manager.add_answer(submission_time, vote_number, question_id,
                                message, image, userid)
        return redirect(f'/question/{question_id}')

    return render_template('add_answer.html', question_id=question_id)
コード例 #15
0
def add_an_answer(question_id):
    if request.method == 'POST':
        answer_data = request.form.to_dict()
        message = answer_data['message']
        submission_data = datetime.now().isoformat(timespec='seconds')
        username = session['username']
        user_id = data_manager.get_user_id(username)
        data_manager.add_answer(question_id, message, submission_data,
                                user_id['user_id'])
        return redirect(url_for('display_question', question_id=question_id))

    return render_template('add_answer.html',
                           question_id=question_id,
                           submission_time='default',
                           vote_nr='5')
コード例 #16
0
ファイル: server.py プロジェクト: balintsimon/ask-mate-python
def login():
    if request.method == 'GET':
        return render_template('login.html')
    session.pop('user', None)
    hashed_password = data_manager.get_user_password(
        request.form.get('username'))
    check_password = util.verify_password(
        request.form.get('password'),
        hashed_password['password'] if hashed_password else None)
    if hashed_password is None or check_password is False:
        return render_template('login.html', error=True)
    session['user'] = request.form.get('username')
    session['user_id'] = data_manager.get_user_id(session['user'])

    return redirect(url_for('index'))
コード例 #17
0
def login():
    if 'id' in session:
        return redirect(url_for('route_main'))
    if request.method == 'POST':
        req = request.form
        try:
            if not util.verify_password(req['password'], data_manager.get_password(req['username'])[0]['password']):
                flash('Incorrect password or username!')
                return redirect(request.url)
            else:
                session['id'] = data_manager.get_user_id(req['username'])[0]['id']
                session['username'] = req['username']
                return redirect(url_for('route_main'))
        except IndexError:
            flash('Incorrect Username!')
            return redirect(request.url)
    return render_template('login.html')
コード例 #18
0
def boards():
    ''' this is a one-pager which shows all the boards and cards '''
    if "username" in session:
        username = session["username"]
        board_ids = data_manager.get_board_ids(username)
        user_id = data_manager.get_user_id(username)
        boards = json.dumps(data_manager.get_boards(username))
        cards = json.dumps(data_manager.get_cards(board_ids))
        statuses = json.dumps(data_handler.get_statuses()["statuses"])
        return render_template("boards.html",
                               username=username,
                               user_id=user_id,
                               boards=boards,
                               cards=cards,
                               statuses=statuses)
    else:
        return render_template("boards.html")
コード例 #19
0
def add_question():
    if request.method == 'POST':
        message = request.form.get("message")
        title = request.form.get('title')
        image = request.form.get('image')
        view_number = 0
        vote_number = 0
        submission_time = datetime.now()
        try:
            user_id = data_manager.get_user_id(session['username'])
        except KeyError:
            user_id = ''
        question_id = data_manager.add_question(message, title, image,
                                                view_number, vote_number,
                                                submission_time,
                                                user_id)[0]['id']
        return redirect(f'/question/{question_id}')
    return render_template('add_question.html')
コード例 #20
0
def user_login():
    if request.method == "POST":
        input_username = request.form['username']
        input_password = request.form['password']
        stored_password = data_manager.get_hashed_password(input_username)
        if stored_password is None:
            return redirect(url_for('user_login'))
        isPasswordVerified = utility.verify_password(
            input_password, stored_password['password'])
        if isPasswordVerified:
            session['username'] = input_username
            session['id'] = data_manager.get_user_id(input_username)['id']
            return render_template('index.html', username=input_username)
        else:
            return redirect(url_for('user_login'))

    else:
        return render_template('login.html')
コード例 #21
0
def route_selected_question(question_id: int):
    question = data_manager.get_question_data(question_id)
    answers = data_manager.get_answer_data(question_id)
    question_comments = data_manager.get_question_comment(question_id)
    answer_ids = data_manager.get_answer_ids(question_id)
    answer_comments = {}
    try:
        user_id = data_manager.get_user_id(session['username'])
    except KeyError:
        user_id = ''
    for a_id in answer_ids:
        for i in a_id:
            answer_comments[a_id[i]] = data_manager.get_answer_comment(a_id[i])
    return render_template('question.html',
                           question=question,
                           question_id=question_id,
                           answers=answers,
                           question_comments=question_comments,
                           answer_comments=answer_comments,
                           user_id=user_id)
コード例 #22
0
def registration():
    if request.method == 'POST':
        req = request.form
        hashed_password = util.hash_password(req['password'])
        if data_manager.check_user_data('username', req['username']) is True:
            flash('This username is already taken!')
            return redirect(request.url)
        elif data_manager.check_user_data('email_address', req['email']) is True:
            flash('This email address is already taken!')
            return redirect(request.url)
        elif len(req['password']) < 7:
            flash('Too short password! (Min. 7 character.)')
            return redirect(request.url)
        elif not util.verify_password(req['password_again'], hashed_password):
            flash('The passwords are different!')
            return redirect(request.url)
        else:
            list_of_data = [req['username'], req['email'], util.hash_password(req['password'])]
            data_manager.add_new_user(list_of_data)
            session['id'] = data_manager.get_user_id(req['username'])[0]['id']
            session['username'] = req['username']
            return redirect(url_for('route_main'))
    return render_template('registration.html')
コード例 #23
0
def get_user_id(dict):
    login = dict['email']
    return data_manager.get_user_id(login)[0]['users_id']
コード例 #24
0
ファイル: logic.py プロジェクト: pKraszewska/ApiWArs
def vote(vote_input):
    planet_name = vote_input['planet_name']
    planet_id = vote_input['planet_id']
    user_id = data_manager.get_user_id()
    submission_time = datetime.now().strftime("%Y-%m-%d %H:%M:%S")
    data_manager.save_vote(planet_name, planet_id, submission_time, user_id)