diff options
author | Aleksandar Micovic <aleks.micovic@gmail.com> | 2011-05-31 15:26:00 -0400 |
---|---|---|
committer | Aleksandar Micovic <aleks.micovic@gmail.com> | 2011-05-31 15:26:00 -0400 |
commit | bcec749b52c287a6d361fd06bfbd833e03e5b478 (patch) | |
tree | 0e6848a7ff81d07e02ca239aa46a983a2d13853e /mediagoblin/decorators.py | |
parent | 28afb47ca82b0857aad546ef4cbf869de1ca95a5 (diff) | |
download | mediagoblin-bcec749b52c287a6d361fd06bfbd833e03e5b478.tar.lz mediagoblin-bcec749b52c287a6d361fd06bfbd833e03e5b478.tar.xz mediagoblin-bcec749b52c287a6d361fd06bfbd833e03e5b478.zip |
Fixed bug where someone who wasn't logged in was asked to verify
their emails.
Diffstat (limited to 'mediagoblin/decorators.py')
-rw-r--r-- | mediagoblin/decorators.py | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/mediagoblin/decorators.py b/mediagoblin/decorators.py index bb625667..bc12d61c 100644 --- a/mediagoblin/decorators.py +++ b/mediagoblin/decorators.py @@ -36,12 +36,13 @@ def require_active_login(controller): Require an active login from the user. """ def new_controller_func(request, *args, **kwargs): - if not request.user or not request.user.get('status') == u'active': - # TODO: Indicate to the user that they were redirected - # here because an *active* user is required. + if request.user and request.user.get('status') == u'needs_email_verification': + return exc.HTTPFound( + location = request.urlgen('mediagoblin.auth.verify_email_notice')) + elif not request.user or request.user.get('status') != u'active': return exc.HTTPFound( location="%s?next=%s" % ( - request.urlgen("mediagoblin.auth.verify_email_notice"), + request.urlgen("mediagoblin.auth.login"), request.path_info)) return controller(request, *args, **kwargs) |