From: Eevee Date: Mon, 26 Jul 2010 05:45:46 +0000 (-0700) Subject: Handle a cancel response from OpenID. X-Git-Tag: veekun-promotions/2010080801~1 X-Git-Url: http://git.veekun.com/zzz-spline-users.git/commitdiff_plain/78dc97e385de57c42e211ff414e4dfefb135323b?hp=f6f1754bc74e5719684835bcb78017fe37942f1a Handle a cancel response from OpenID. --- diff --git a/splinext/users/controllers/accounts.py b/splinext/users/controllers/accounts.py index a4c1b71..c70ad6d 100644 --- a/splinext/users/controllers/accounts.py +++ b/splinext/users/controllers/accounts.py @@ -1,5 +1,5 @@ import logging -from openid.consumer.consumer import Consumer +from openid.consumer.consumer import Consumer, SUCCESS, CANCEL from openid.extensions.sreg import SRegRequest, SRegResponse from openid.store.filestore import FileOpenIDStore from openid.yadis.discover import DiscoveryFailure @@ -69,7 +69,11 @@ class AccountsController(BaseController): return_url = url(host=host, controller='accounts', action='login_finish') res = cons.complete(request.params, return_url) - if res.status != 'success': + if res.status == CANCEL: + # I guess.. just.. back to the homepage? + h.flash(u"""Login canceled.""", icon='user-silhouette') + redirect_to(url('/')) + elif res.status != SUCCESS: return 'Error! %s' % res.message try: