Changeset 72ad8d8 in osmose-frontend


Ignore:
Timestamp:
Mar 18, 2014 10:08:57 PM (6 years ago)
Author:
Frédéric Rodrigo <fred.rodrigo@…>
Branches:
master
Children:
31616e3
Parents:
0d3e15d
git-author:
Frédéric Rodrigo <fred.rodrigo@…> (05/03/2014 23:22:45)
git-committer:
Frédéric Rodrigo <fred.rodrigo@…> (18/03/2014 22:08:57)
Message:

Improve OAuth on get user info and make url generic

Files:
4 edited

Legend:

Unmodified
Added
Removed
  • osmose.py

    rd2d7241 r72ad8d8  
    6060 
    6161@route('/login') 
    62 def translation(lang, name=None): 
     62def login(lang, name=None): 
     63    if request.session.has_key('user'): 
     64        del request.session['user'] # logout 
    6365    (url, oauth_tokens) = oauth.fetch_request_token() 
    6466    request.session['oauth_tokens'] = oauth_tokens 
     
    6971    try: 
    7072        oauth_tokens = request.session['oauth_tokens'] 
    71         oauth_tokens = oauth.fetch_access_token(oauth_tokens, request) 
     73        oauth_tokens = oauth.fetch_access_token(request.session['oauth_tokens'], request) 
    7274        request.session['oauth_tokens'] = oauth_tokens 
    73         user_request = oauth.get(oauth_tokens, 'http://api.openstreetmap.org/api/0.6/user/details') 
    74         if user_request: 
    75             request.session['user'] = xmldict.xml_to_dict(user_request) 
     75        try: 
     76            user_request = oauth.get(oauth_tokens, utils.remote_url + 'api/0.6/user/details') 
     77            if user_request: 
     78                request.session['user'] = xmldict.xml_to_dict(user_request) 
     79        except: 
     80            pass 
     81        if not request.session.has_key('user'): 
     82            request.session['user'] = {'user': {'osm': {'user': {'@display_name': '[user name]'}}}} 
    7683    except: 
    7784        pass 
  • tools/assets.py

    r1c3085e r72ad8d8  
    55 
    66environment = Environment('static', '') 
    7 #environment.debug = True 
     7environment.debug = True 
    88 
    99css_map_bundle = Bundle( 
  • tools/oauth.py

    rd2d7241 r72ad8d8  
    77################################################################################ 
    88 
    9 oauth_client_key = "lVhUDUfU4LL52nWRBNqO2JpdmQdwRIDZ2iMdVp8s" 
    10 oauth_client_secret = "ATIOP1AbYcQRvXbWYD2JWs4EZDG1GBT2Z4eK5E5a" 
    11 oauth_request_token = "http://www.openstreetmap.org/oauth/request_token" 
    12 oauth_access_token = "http://www.openstreetmap.org/oauth/access_token" 
    13 oauth_authorize = "http://www.openstreetmap.org/oauth/authorize" 
     9oauth_client_key = "zGtBQ4zQfaWqy0G3HtRua2d00gvIcSfS4iHHwH2s" 
     10oauth_client_secret = "2KOQG8eUVvcHcTGV5I12XsseRuaeBW0vcmRTTuli" 
     11oauth_server = "http://www.openstreetmap.org/oauth/" 
    1412 
    1513################################################################################ 
     14 
     15oauth_request_token = oauth_server + "request_token" 
     16oauth_access_token = oauth_server + "access_token" 
     17oauth_authorize = oauth_server + "authorize" 
     18 
    1619 
    1720oauth = OAuth1Service( 
     
    3134    return (session.access_token, session.access_token_secret) 
    3235 
    33 def get(oauth_tokens, url): 
    34     session = OAuth1Session(oauth_client_key, 
     36def _session(oauth_tokens): 
     37    return OAuth1Session(oauth_client_key, 
    3538        oauth_client_secret, 
    3639        access_token=oauth_tokens[0], 
    3740        access_token_secret=oauth_tokens[1]) 
    3841 
    39     resp = session.get(url) 
     42def get(oauth_tokens, url): 
     43    resp = _session(oauth_tokens,).get(url) 
    4044    if resp and resp.status_code == requests.codes.ok: 
    4145        return resp.text 
     46    else: 
     47        raise Exception(resp.status_code) 
     48 
     49def put(oauth_tokens, url, data=None): 
     50    headers = {'content-type': 'text/xml'} 
     51    resp = _session(oauth_tokens).put(url, data=data, headers=headers) 
     52    print resp 
     53    if resp and resp.status_code == requests.codes.ok: 
     54        return resp.text 
     55    else: 
     56        raise Exception(resp.status_code) 
     57 
     58def post(oauth_tokens, url, data): 
     59    headers = {'content-type': 'text/xml'} 
     60    resp = _session(oauth_tokens).post(url, data=data, headers=headers) 
     61    print resp 
     62    if resp and resp.status_code == requests.codes.ok: 
     63        return resp.text 
     64    else: 
     65        raise Exception(resp.status_code) 
  • tools/utils.py

    r0d3e15d r72ad8d8  
    1414website           = "osmose.openstreetmap.fr" 
    1515 
     16remote_url        = "http://api.openstreetmap.org/" 
    1617remote_url_read   = "http://api.openstreetmap.fr/" 
    1718remote_url_write  = "http://api.openstreetmap.org/" 
Note: See TracChangeset for help on using the changeset viewer.