aboutsummaryrefslogtreecommitdiff
path: root/app/views/auth.py
blob: 6ae6ef9ebee3dd1e7bb4f2a4c54947320b28232e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
from app import app, db, models, login_manager
from app.forms.app_forms import UserSignUp, UserLogIn 
from flask import render_template, flash,url_for, redirect
from app.misc_func import flash_errors
import flask_login


@app.route("/signup", methods=['GET', 'POST'])
def register_user():
    form = UserSignUp()
    if form.validate_on_submit():
        user = models.User(
            first_name=form.first_name.data,
            last_name=form.last_name.data,
            email=form.email.data,
            confirmation=False,
            password=form.password.data,
            )
        db.session.add(user)
        db.session.commit() 
    flash_errors(form)
    return render_template("auth/signup.html",form=form)

@app.route("/login", methods=['GET', 'POST'])
def signin_user():
    form = UserLogIn()
    if form.validate_on_submit():
        user = models.User.query.filter_by(email=form.email.data).first()
        if user is not None:
            if user.check_password(form.password.data):
                flask_login.login_user(user)
                return redirect(url_for("user_dashboard"))
    flash_errors(form)
    return render_template("auth/signin.html",form=form) 

@flask_login.login_required
@app.route("/dashboard")
def user_dashboard():
    return render_template("dashboard.html",user=flask_login.current_user)