Thanks, I added it!

On Sunday, January 4, 2015 11:44:19 PM UTC+1, Michele Comitini wrote:
>
> Very nice! just one detail to make it easier for the ones that do not have 
> apt-get...
>
> sudo apt-get install python-oauth2
>
> can be replaced with:
>
> pip install --user python-oauth2
>
> making it portable to any environment where web2py works
>
> 2015-01-03 13:44 GMT+01:00 Falko Delarue <[email protected] 
> <javascript:>>:
>
>> This is how you login to your web2py app with Tubmblr 
>>
>> Register a Tubmblr app (you will of course need a Tubmblr account)
>>
>> https://www.tumblr.com/oauth/register
>>
>> and configure later at 
>>
>> https://www.tumblr.com/settings/apps
>>
>> get the consumer key and secret
>>
>> install the oauth2 lib (instructions only for ubuntu)
>>
>> sudo apt-get install python-oauth2
>>
>> download the pytumblr lib from (Download ZIP in right menu)
>>
>> https://github.com/tumblr/pytumblr
>>
>> extract only the pytumblr folder to yourapp/modules
>>
>> edit yourapp/modules/pytumblr/__init__.py and add dot "." in front of the 
>> helpers and request import like this
>>
>> from .helpers import validate_params, validate_blogname
>> from .request import TumblrRequest
>>
>> add the following code to your db.py 
>>
>> consumer_key = 'XXXXXXX'
>> consumer_secret = 'XXXXXX'
>>
>> request_token_url = 'http://www.tumblr.com/oauth/request_token'
>> authorize_url = 'http://www.tumblr.com/oauth/authorize'
>> access_token_url = 'http://www.tumblr.com/oauth/access_token'
>>
>> from gluon.contrib.login_methods.oauth10a_account import OAuthAccount
>> import pytumblr
>>
>> class TumblrOAuth(OAuthAccount):
>>     """OAuth for Tumblr"""
>>     def get_user(self):
>>         if not self.accessToken():
>>             return None
>>
>>         client = pytumblr.TumblrRestClient(
>>             consumer_key,
>>             consumer_secret,
>>             self.accessToken().key,
>>             self.accessToken().secret,
>>         )
>>
>>         info = client.info()
>>         if info and ('user' in info):
>>             return dict(
>>                 first_name=info['user']['name'],
>>                 registration_id='tumblr:%s' % info['user']['name'],
>>             )
>>
>> auth.settings.login_form = TumblrOAuth(globals(), consumer_key, 
>> consumer_secret, authorize_url, request_token_url, access_token_url)
>>
>> Replace the consumer key and secret with yours! Tumblr does not provide 
>> first or last name or an id thats why only the crude info in the return. I 
>> do not really need to create proper users so this is enough for me, you can 
>> improve on that. Also this approach will let you log in only with Tumblr, 
>> you will have to figure our the rest, this is only a basic tutorial.
>>
>> Did I miss anything? Did you like that? Write a comment!
>>
>>  -- 
>> Resources:
>> - http://web2py.com
>> - http://web2py.com/book (Documentation)
>> - http://github.com/web2py/web2py (Source code)
>> - https://code.google.com/p/web2py/issues/list (Report Issues)
>> --- 
>> You received this message because you are subscribed to the Google Groups 
>> "web2py-users" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to [email protected] <javascript:>.
>> For more options, visit https://groups.google.com/d/optout.
>>
>
>

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
"web2py-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to