Changeset 4281
- Timestamp:
- 11/12/07 12:10:11 (1 year ago)
- Files:
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/nuxleus/Scripts/openid/gateway/openidgateway/__init__.py
r4256 r4281 24 24 import pkg_resources 25 25 26 from Cookie import SimpleCookie 27 28 # Thanks to WebOb source code :p 29 def make_cookie_header(key, value='', expires=-1): 30 cookies = SimpleCookie() 31 cookies[key] = value 32 for var_name, var_value in [('max-age', max_age), ('path', path), 33 ('domain', domain), ('version', 1), 34 ('domain', 'http://dev.amp.fm'), 35 (path, '/'), ('max-age', 1296000)]: # two weeks 36 cookies[key][var_name] = str(var_value) 37 if expires != -1: 38 cookies[key]['expires'] = expires 39 header_value = cookies[key].output(header='').lstrip() 40 return ('Set-Cookie', header_value)) 41 26 42 class OpenIdGateway(object): 27 43 … … 127 143 info = consumer.complete(req.GET) 128 144 145 cookies = [] 129 146 if info.status == 'success': 130 147 req.cookies['openid'] = req.params['identity'] 131 148 guid = req.cookies.get('guid', str(uuid.uuid1())) 149 headers.append(make_cookie_header('openid.session', guid, expires=0)) 150 headers.append(make_cookie_header('openid', req.params['identity'])) 132 151 params['status'] = 'complete' 133 152 params['return_location'] = sess[self.ekey]['return_location'] 134 153 params['message'] = 'Logged in as %s' % req.params['identity'] 135 154 elif info.status == 'failure': 155 # Sylvain: I explicitely remove any existing cookie in case of a failure 156 headers.append(make_cookie_header('openid.session', expires=0)) 157 headers.append(make_cookie_header('openid', expires=0)) 136 158 params['status']= 'failure' 137 159 if info.identity_url:
