Skip to content

Commit 577a3a8

Browse files
committed
Enable ‘next’ redirection after registration.
1 parent 7b474ef commit 577a3a8

File tree

3 files changed

+9
-5
lines changed

3 files changed

+9
-5
lines changed

flask_security/forms.py

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -244,8 +244,12 @@ class ConfirmRegisterForm(Form, RegisterFormMixin,
244244
pass
245245

246246

247-
class RegisterForm(ConfirmRegisterForm, PasswordConfirmFormMixin):
248-
pass
247+
class RegisterForm(ConfirmRegisterForm, PasswordConfirmFormMixin,
248+
NextFormMixin):
249+
def __init__(self, *args, **kwargs):
250+
super(RegisterForm, self).__init__(*args, **kwargs)
251+
if not self.next.data:
252+
self.next.data = request.args.get('next', '')
249253

250254

251255
class ResetPasswordForm(Form, NewPasswordFormMixin, PasswordConfirmFormMixin):

flask_security/utils.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -234,8 +234,8 @@ def get_post_login_redirect(declared=None):
234234
return get_post_action_redirect('SECURITY_POST_LOGIN_VIEW', declared)
235235

236236

237-
def get_post_register_redirect():
238-
return get_post_action_redirect('SECURITY_POST_REGISTER_VIEW')
237+
def get_post_register_redirect(declared=None):
238+
return get_post_action_redirect('SECURITY_POST_REGISTER_VIEW', declared)
239239

240240

241241
def find_redirect(key):

flask_security/views.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -122,7 +122,7 @@ def register():
122122
login_user(user)
123123

124124
if not request.json:
125-
return redirect(get_post_register_redirect())
125+
return redirect(get_post_register_redirect(form.next.data))
126126
return _render_json(form, include_auth_token=True)
127127

128128
if request.json:

0 commit comments

Comments
 (0)