2
LiveJournal OpenId backend, docs at:
3
https://python-social-auth.readthedocs.io/en/latest/backends/livejournal.html
5
from six.moves.urllib_parse import urlsplit
7
from .open_id import OpenIdAuth
8
from ..exceptions import AuthMissingParameter
11
class LiveJournalOpenId(OpenIdAuth):
12
"""LiveJournal OpenID authentication backend"""
15
def get_user_details(self, response):
16
"""Generate username from identity url"""
17
values = super(LiveJournalOpenId, self).get_user_details(response)
18
values['username'] = values.get('username') or \
19
urlsplit(response.identity_url)\
20
.netloc.split('.', 1)[0]
24
"""Returns LiveJournal authentication URL"""
25
if not self.data.get('openid_lj_user'):
26
raise AuthMissingParameter(self, 'openid_lj_user')
27
return 'http://{0}.livejournal.com'.format(self.data['openid_lj_user'])