From 2a47497a4e749198a44c93a35b12afc647a5516f Mon Sep 17 00:00:00 2001 From: =?utf8?q?Mat=C3=ADas=20Aguirre?= Date: Fri, 27 May 2011 17:32:50 -0300 Subject: [PATCH] Send orkut scope on each request, check email value properly. Closes gh-77 --- social_auth/backends/contrib/orkut.py | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/social_auth/backends/contrib/orkut.py b/social_auth/backends/contrib/orkut.py index ebd3021..9b06698 100644 --- a/social_auth/backends/contrib/orkut.py +++ b/social_auth/backends/contrib/orkut.py @@ -33,8 +33,13 @@ class OrkutBackend(OAuthBackend): def get_user_details(self, response): """Return user details from Orkut account""" + try: + emails = response['emails'][0]['value'] + except (KeyError, IndexError): + emails = '' + return {USERNAME: response['displayName'], - 'email': response['emails'][0]['value'], + 'email': emails, 'fullname': response['displayName'], 'first_name': response['name']['givenName'], 'last_name': response['name']['familyName']} @@ -65,6 +70,12 @@ class OrkutAuth(BaseGoogleOAuth): except (ValueError, KeyError): return None + def oauth_request(self, token, url, extra_params=None): + extra_params = extra_params or {} + scope = ORKUT_SCOPE + getattr(settings, 'ORKUT_EXTRA_SCOPE', []) + extra_params['scope'] = ' '.join(scope) + return super(OrkutAuth, self).oauth_request(token, url, extra_params) + # Backend definition BACKENDS = { -- 2.39.5