示例#1
0
def login():
    try:
        if session['user_id']:
            return redirect("/index")
    except:
        pass
    form = LoginForm()
    if form.validate_on_submit():
        user_name = form.username.data
        password = form.password.data
        user_model = UsersModel(users_db.get_connection())
        true_pass = user_model.password_check(user_name)
        exists = user_model.exists(user_name, true_pass)
        if check_password_hash(true_pass, password) and exists[0]:
            session['username'] = user_name
            session['user_id'] = exists[1]
            session['block'] = exists[2]
            return redirect("/index")
        else:
            all_data = user_model.get_all()
            for x in all_data:
                if user_name == x[1]:
                    return render_template('login.html',
                                           title='Авторизация',
                                           form=form,
                                           alert='Неправильный пароль')
            return render_template('login.html',
                                   title='Авторизация',
                                   form=form,
                                   alert='Такой пользователь не существует')
    return render_template('login.html',
                           title='Авторизация',
                           form=form,
                           alert='')
示例#2
0
def reg():
    form = RegForm()
    if form.validate_on_submit():
        username = form.username.data
        name = form.name.data
        surname = form.surname.data
        password = form.password.data
        confirm = form.confirm.data
        password_hash = generate_password_hash(password)
        user_model = UsersModel(users_db.get_connection())

        all_data = user_model.get_all()
        for x in all_data:
            if username == x[1]:
                return render_template(
                    'reg.html',
                    title='Регистрация',
                    form=form,
                    alert='Такой пользователь уже зареестрирован')

        exists = user_model.exists(username, password_hash)
        if not exists[0] and password == confirm:
            user_model.insert(username, name, surname, password_hash)
            exists = user_model.exists(username, password_hash)
            session['username'] = username
            session['user_id'] = exists[1]
            return redirect("/index")
    return render_template('reg.html',
                           title='Регистрация',
                           form=form,
                           alert='')