def post(self, request): """Log the user out.""" auth.logout(request) return JSONResponse({ 'redirect': _get_next(self.request) or self.redirect_url })
def http_method_not_allowed(self, *args, **kwargs): response = JSONResponse({'error': 'Method not allowed.'}, status=405) allowed_methods = [ m.upper() for m in self.http_method_names if hasattr(self, m) ] response['Allow'] = ', '.join(allowed_methods) return response
def login_failure(self, msg=''): if not msg: msg = ('Login failed. Please make sure that you are ' 'an accepted Rep or a vouched Mozillian ' 'and you use your Bugzilla email to login.') messages.warning(self.request, msg) return JSONResponse({'redirect': self.failure_url})
def login_success(self): """Send to new-user-view if new user, otherwise send on their way""" response = super(FjordVerify, self).login_success() # If this user has never logged in before, send them to our # super secret "Welcome!" page. try: self.user.profile return response except Profile.DoesNotExist: url = reverse('new-user-view') redirect_to = self.request.REQUEST.get('next') # Do not accept redirect URLs pointing to a different host. if redirect_to: netloc = urlparse.urlparse(redirect_to).netloc if netloc and netloc != self.request.get_host(): redirect_to = None if redirect_to: url = url + '?next=' + redirect_to return JSONResponse({ 'email': self.user.email, 'redirect': url, })
def login_success(self): """Log the user into the site.""" auth.login(self.request, self.user) return JSONResponse({ 'email': self.user.email, 'redirect': self.success_url })
def login_failure(self, error=None): """ Different to make it not yield a 403 error. """ if error: logger.error(error) return JSONResponse({'redirect': self.failure_url})
def login_failure(self, error=None): """ Redirect the user to a login-failed page. :param error: If login failed due to an error raised during verification, this will be the BrowserIDException instance that was raised. """ if error: logger.error(error) return JSONResponse({'redirect': self.failure_url}, status=403)
def test_status(self): response = JSONResponse({'blah': 'foo', 'bar': 7}, status=404) self.assert_json_equals(response.content, {'blah': 'foo', 'bar': 7}) eq_(response.status_code, 404)
def login_failure(self): if self.add_email: return JSONResponse({ 'redirect': self.failure_url }) return super(BrowserIDVerify, self).login_failure()
def login_success(self): if self.add_email: return JSONResponse({ 'redirect': self.success_url }) return super(BrowserIDVerify, self).login_success()
def login_failure(self): """ Redirect the user to a login-failed page. By default a 403 is returned. """ return JSONResponse({'redirect': self.failure_url}, status=403)
def login_failure(self, error=None): if self.change_email: return JSONResponse({'redirect': self.failure_url}) return super(BrowserIDVerify, self).login_failure(error)