1- from flask import render_template , redirect , request , url_for , flash
2- from flask .ext .login import (
3- login_required ,
4- login_user ,
5- logout_user ,
6- current_user
7- )
1+ from flask import flash , redirect , render_template , request , url_for
2+ from flask .ext .login import (current_user , login_required , login_user ,
3+ logout_user )
84from flask .ext .rq import get_queue
5+
96from . import account
107from .. import db
118from ..email import send_email
129from ..models import User
13- from .forms import (
14- LoginForm ,
15- RegistrationForm ,
16- CreatePasswordForm ,
17- ChangePasswordForm ,
18- ChangeEmailForm ,
19- RequestResetPasswordForm ,
20- ResetPasswordForm
21- )
10+ from .forms import (ChangeEmailForm , ChangePasswordForm , CreatePasswordForm ,
11+ LoginForm , RegistrationForm , RequestResetPasswordForm ,
12+ ResetPasswordForm )
2213
2314
2415@account .route ('/login' , methods = ['GET' , 'POST' ])
@@ -42,10 +33,11 @@ def register():
4233 """Register a new user, and send them a confirmation email."""
4334 form = RegistrationForm ()
4435 if form .validate_on_submit ():
45- user = User (first_name = form .first_name .data ,
46- last_name = form .last_name .data ,
47- email = form .email .data ,
48- password = form .password .data )
36+ user = User (
37+ first_name = form .first_name .data ,
38+ last_name = form .last_name .data ,
39+ email = form .email .data ,
40+ password = form .password .data )
4941 db .session .add (user )
5042 db .session .commit ()
5143 token = user .generate_confirmation_token ()
@@ -56,8 +48,7 @@ def register():
5648 subject = 'Confirm Your Account' ,
5749 template = 'account/email/confirm' ,
5850 user = user ,
59- confirm_link = confirm_link
60- )
51+ confirm_link = confirm_link )
6152 flash ('A confirmation link has been sent to {}.' .format (user .email ),
6253 'warning' )
6354 return redirect (url_for ('main.index' ))
@@ -90,20 +81,18 @@ def reset_password_request():
9081 user = User .query .filter_by (email = form .email .data ).first ()
9182 if user :
9283 token = user .generate_password_reset_token ()
93- reset_link = url_for ('account.reset_password' , token = token ,
94- _external = True )
84+ reset_link = url_for (
85+ 'account.reset_password' , token = token , _external = True )
9586 get_queue ().enqueue (
9687 send_email ,
9788 recipient = user .email ,
9889 subject = 'Reset Your Password' ,
9990 template = 'account/email/reset_password' ,
10091 user = user ,
10192 reset_link = reset_link ,
102- next = request .args .get ('next' )
103- )
93+ next = request .args .get ('next' ))
10494 flash ('A password reset link has been sent to {}.'
105- .format (form .email .data ),
106- 'warning' )
95+ .format (form .email .data ), 'warning' )
10796 return redirect (url_for ('account.login' ))
10897 return render_template ('account/reset_password.html' , form = form )
10998
@@ -155,8 +144,8 @@ def change_email_request():
155144 if current_user .verify_password (form .password .data ):
156145 new_email = form .email .data
157146 token = current_user .generate_email_change_token (new_email )
158- change_email_link = url_for ('account.change_email' , token = token ,
159- _external = True )
147+ change_email_link = url_for (
148+ 'account.change_email' , token = token , _external = True )
160149 get_queue ().enqueue (
161150 send_email ,
162151 recipient = new_email ,
@@ -165,8 +154,7 @@ def change_email_request():
165154 # current_user is a LocalProxy, we want the underlying user
166155 # object
167156 user = current_user ._get_current_object (),
168- change_email_link = change_email_link
169- )
157+ change_email_link = change_email_link )
170158 flash ('A confirmation link has been sent to {}.' .format (new_email ),
171159 'warning' )
172160 return redirect (url_for ('main.index' ))
@@ -199,11 +187,9 @@ def confirm_request():
199187 template = 'account/email/confirm' ,
200188 # current_user is a LocalProxy, we want the underlying user object
201189 user = current_user ._get_current_object (),
202- confirm_link = confirm_link
203- )
204- flash ('A new confirmation link has been sent to {}.' .
205- format (current_user .email ),
206- 'warning' )
190+ confirm_link = confirm_link )
191+ flash ('A new confirmation link has been sent to {}.' .format (
192+ current_user .email ), 'warning' )
207193 return redirect (url_for ('main.index' ))
208194
209195
@@ -220,8 +206,8 @@ def confirm(token):
220206 return redirect (url_for ('main.index' ))
221207
222208
223- @account .route ('/join-from-invite/<int:user_id>/<token>' ,
224- methods = ['GET' , 'POST' ])
209+ @account .route (
210+ '/join-from-invite/<int:user_id>/<token>' , methods = ['GET' , 'POST' ])
225211def join_from_invite (user_id , token ):
226212 """
227213 Confirm new user's account with provided token and prompt them to set
@@ -240,30 +226,32 @@ def join_from_invite(user_id, token):
240226 return redirect (url_for ('main.index' ))
241227
242228 if new_user .confirm_account (token ):
243- form = CreatePasswordForm ()
244- if form .validate_on_submit ():
245- new_user .password = form .password .data
246- db .session .add (new_user )
247- db .session .commit ()
248- flash ('Your password has been set. After you log in, you can '
249- 'go to the "Your Account" page to review your account '
250- 'information and settings.' , 'success' )
251- return redirect (url_for ('account.login' ))
252- return render_template ('account/join_invite.html' , form = form )
229+ form = CreatePasswordForm ()
230+ if form .validate_on_submit ():
231+ new_user .password = form .password .data
232+ db .session .add (new_user )
233+ db .session .commit ()
234+ flash ('Your password has been set. After you log in, you can '
235+ 'go to the "Your Account" page to review your account '
236+ 'information and settings.' , 'success' )
237+ return redirect (url_for ('account.login' ))
238+ return render_template ('account/join_invite.html' , form = form )
253239 else :
254240 flash ('The confirmation link is invalid or has expired. Another '
255241 'invite email with a new link has been sent to you.' , 'error' )
256242 token = new_user .generate_confirmation_token ()
257- invite_link = url_for ('account.join_from_invite' , user_id = user_id ,
258- token = token , _external = True )
243+ invite_link = url_for (
244+ 'account.join_from_invite' ,
245+ user_id = user_id ,
246+ token = token ,
247+ _external = True )
259248 get_queue ().enqueue (
260249 send_email ,
261250 recipient = new_user .email ,
262251 subject = 'You Are Invited To Join' ,
263252 template = 'account/email/invite' ,
264253 user = new_user ,
265- invite_link = invite_link
266- )
254+ invite_link = invite_link )
267255 return redirect (url_for ('main.index' ))
268256
269257
0 commit comments