Files
GNX-mailEnterprise/venv/lib/python3.12/site-packages/allauth/socialaccount/providers/edx/provider.py
Iliyan Angelov c67067a2a4 Mail
2025-09-14 23:24:25 +03:00

33 lines
889 B
Python

from allauth.socialaccount.providers.base import ProviderAccount
from allauth.socialaccount.providers.oauth2.provider import OAuth2Provider
class EdxAccount(ProviderAccount):
def get_profile_url(self):
if self.account.extra_data["profile_image"]["has_image"]:
return self.account.extra_data["image_url_full"]
class EdxProvider(OAuth2Provider):
id = "edx"
name = "Edx"
account_class = EdxAccount
def get_default_scope(self):
return ["profile"]
def extract_uid(self, data):
"""Extract uid ('id') and ensure it's a str."""
return str(data["username"])
def extract_common_fields(self, data):
return dict(
email=data.get("email"),
username=data.get("username"),
name=data.get("name"),
user_id=data.get("user_id"),
)
provider_classes = [EdxProvider]