11"""Routes for user authentication."""
2- from flask import Blueprint
3- from flask import current_app as app
4- from flask import flash , redirect , render_template , request , url_for
2+ from flask import Blueprint , flash , redirect , render_template , request , url_for
53from flask_login import current_user , login_user
64
7- from . import login_manager
8- from .assets import compile_auth_assets
9- from .forms import LoginForm , SignupForm
10- from .models import User , db
5+ from flask_session_tutorial import login_manager
6+ from flask_session_tutorial .forms import LoginForm , SignupForm
7+ from flask_session_tutorial .models import User , db
118
129# Blueprint Configuration
13- auth_bp = Blueprint (
14- "auth_bp" , __name__ , template_folder = "templates" , static_folder = "static"
15- )
10+ auth = Blueprint ("auth" , __name__ , template_folder = "templates" , static_folder = "static" )
1611
1712
18- @auth_bp .route ("/signup" , methods = ["GET" , "POST" ])
13+ @auth .route ("/signup" , methods = ["GET" , "POST" ])
1914def signup ():
2015 """
2116 Sign-up form to create new user accounts.
@@ -26,15 +21,13 @@ def signup():
2621 if form .validate_on_submit ():
2722 existing_user = User .query .filter_by (email = form .email .data ).first ()
2823 if existing_user is None :
29- user = User (
30- name = form .name .data , email = form .email .data , website = form .website .data
31- )
24+ user = User (name = form .name .data , email = form .email .data , website = form .website .data )
3225 user .set_password (form .password .data )
3326 db .session .add (user )
3427 db .session .commit () # Create new user
3528 login_user (user ) # Log in as newly created user
3629 print (user )
37- return redirect (url_for ("main_bp .dashboard" ))
30+ return redirect (url_for ("main .dashboard" ))
3831 flash ("A user already exists with that email address." )
3932 return render_template (
4033 "signup.jinja2" ,
@@ -45,27 +38,25 @@ def signup():
4538 )
4639
4740
48- @auth_bp .route ("/login" , methods = ["GET" , "POST" ])
41+ @auth .route ("/login" , methods = ["GET" , "POST" ])
4942def login ():
5043 """
5144 Log-in page for registered users.
5245 GET: Serve Log-in page.
5346 POST: Validate form and redirect user to dashboard.
5447 """
5548 if current_user .is_authenticated :
56- return redirect (url_for ("main_bp .dashboard" )) # Bypass if user is logged in
49+ return redirect (url_for ("main .dashboard" )) # Bypass if user is logged in
5750
5851 form = LoginForm ()
5952 if form .validate_on_submit ():
60- user = User .query .filter_by (
61- email = form .email .data
62- ).first () # Validate Login Attempt
53+ user = User .query .filter_by (email = form .email .data ).first () # Validate Login Attempt
6354 if user and user .check_password (password = form .password .data ):
6455 login_user (user )
6556 next_page = request .args .get ("next" )
66- return redirect (next_page or url_for ("main_bp .dashboard" ))
57+ return redirect (next_page or url_for ("main .dashboard" ))
6758 flash ("Invalid username/password combination" )
68- return redirect (url_for ("auth_bp .login" ))
59+ return redirect (url_for ("auth .login" ))
6960 return render_template (
7061 "login.jinja2" ,
7162 form = form ,
@@ -87,4 +78,4 @@ def load_user(user_id):
8778def unauthorized ():
8879 """Redirect unauthorized users to Login page."""
8980 flash ("You must be logged in to view that page." )
90- return redirect (url_for ("auth_bp .login" ))
81+ return redirect (url_for ("auth .login" ))
0 commit comments