]> git.parisson.com Git - django-social-auth.git/commitdiff
Foursquare support
authorDuccio C <bedspax@gmail.com>
Thu, 19 May 2011 11:39:54 +0000 (13:39 +0200)
committerDuccio C <bedspax@gmail.com>
Thu, 19 May 2011 11:39:54 +0000 (13:39 +0200)
social_auth/backends/contrib/foursquare.py [new file with mode: 0755]
social_auth/backends/foursquare.py [deleted file]

diff --git a/social_auth/backends/contrib/foursquare.py b/social_auth/backends/contrib/foursquare.py
new file mode 100755 (executable)
index 0000000..9743ff8
--- /dev/null
@@ -0,0 +1,54 @@
+import urllib
+
+from django.utils import simplejson
+
+from social_auth.backends import BaseOAuth2, OAuthBackend, USERNAME
+
+
+FOURSQUARE_SERVER = 'foursquare.com'
+FOURSQUARE_AUTHORIZATION_URL = 'https://foursquare.com/oauth2/authenticate'
+FOURSQUARE_ACCESS_TOKEN_URL = 'https://foursquare.com/oauth2/access_token'
+FOURSQUARE_CHECK_AUTH = 'https://api.foursquare.com/v2/users/self'
+
+
+class FoursquareBackend(OAuthBackend):
+    name = 'foursquare'
+
+    def get_user_id(self, details, response):
+        return response['response']['user']['id']
+
+    def get_user_details(self, response):
+        """Return user details from Foursquare account"""
+        firstName = response['response']['user']['firstName']
+        lastName = response['response']['user']['lastName']
+        email = response['response']['user']['contact']['email']
+
+        return {USERNAME: firstName + ' ' + lastName,
+                'first_name': firstName,
+                'last_name': lastName,
+                'email': email}
+
+
+class FoursquareAuth(BaseOAuth2):
+    """Foursquare OAuth mechanism"""
+    AUTHORIZATION_URL = FOURSQUARE_AUTHORIZATION_URL
+    ACCESS_TOKEN_URL = FOURSQUARE_ACCESS_TOKEN_URL
+    SERVER_URL = FOURSQUARE_SERVER
+    AUTH_BACKEND = FoursquareBackend
+    SETTINGS_KEY_NAME = 'FOURSQUARE_CONSUMER_KEY'
+    SETTINGS_SECRET_NAME = 'FOURSQUARE_CONSUMER_SECRET'
+
+    def user_data(self, access_token):
+        """Loads user data from service"""
+        params = {'oauth_token': access_token,}
+        url = FOURSQUARE_CHECK_AUTH + '?' + urllib.urlencode(params)
+        try:
+            return simplejson.load(urllib.urlopen(url))
+        except ValueError:
+            return None
+
+
+# Backend definition
+BACKENDS = {
+    'foursquare': FoursquareAuth,
+}
\ No newline at end of file
diff --git a/social_auth/backends/foursquare.py b/social_auth/backends/foursquare.py
deleted file mode 100755 (executable)
index 9743ff8..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
-import urllib
-
-from django.utils import simplejson
-
-from social_auth.backends import BaseOAuth2, OAuthBackend, USERNAME
-
-
-FOURSQUARE_SERVER = 'foursquare.com'
-FOURSQUARE_AUTHORIZATION_URL = 'https://foursquare.com/oauth2/authenticate'
-FOURSQUARE_ACCESS_TOKEN_URL = 'https://foursquare.com/oauth2/access_token'
-FOURSQUARE_CHECK_AUTH = 'https://api.foursquare.com/v2/users/self'
-
-
-class FoursquareBackend(OAuthBackend):
-    name = 'foursquare'
-
-    def get_user_id(self, details, response):
-        return response['response']['user']['id']
-
-    def get_user_details(self, response):
-        """Return user details from Foursquare account"""
-        firstName = response['response']['user']['firstName']
-        lastName = response['response']['user']['lastName']
-        email = response['response']['user']['contact']['email']
-
-        return {USERNAME: firstName + ' ' + lastName,
-                'first_name': firstName,
-                'last_name': lastName,
-                'email': email}
-
-
-class FoursquareAuth(BaseOAuth2):
-    """Foursquare OAuth mechanism"""
-    AUTHORIZATION_URL = FOURSQUARE_AUTHORIZATION_URL
-    ACCESS_TOKEN_URL = FOURSQUARE_ACCESS_TOKEN_URL
-    SERVER_URL = FOURSQUARE_SERVER
-    AUTH_BACKEND = FoursquareBackend
-    SETTINGS_KEY_NAME = 'FOURSQUARE_CONSUMER_KEY'
-    SETTINGS_SECRET_NAME = 'FOURSQUARE_CONSUMER_SECRET'
-
-    def user_data(self, access_token):
-        """Loads user data from service"""
-        params = {'oauth_token': access_token,}
-        url = FOURSQUARE_CHECK_AUTH + '?' + urllib.urlencode(params)
-        try:
-            return simplejson.load(urllib.urlopen(url))
-        except ValueError:
-            return None
-
-
-# Backend definition
-BACKENDS = {
-    'foursquare': FoursquareAuth,
-}
\ No newline at end of file