
    f                     Z    d dl mZ d dlmZ d dlmZ  G d de      Z G d de      ZegZy)	    )ProviderAccount)EdxOAuth2Adapter)OAuth2Providerc                       e Zd Zd Zy)
EdxAccountc                 n    | j                   j                  d   d   r| j                   j                  d   S y )Nprofile_image	has_imageimage_url_full)account
extra_dataselfs    g/var/www/cs2snipe.com/venv/lib/python3.12/site-packages/allauth/socialaccount/providers/edx/provider.pyget_profile_urlzEdxAccount.get_profile_url   s5    <<""?3K@<<**+;<< A    N)__name__
__module____qualname__r    r   r   r   r      s    =r   r   c                   .    e Zd ZdZdZeZeZd Z	d Z
d Zy)EdxProvideredxEdxc                     dgS )Nprofiler   r   s    r   get_default_scopezEdxProvider.get_default_scope   s
    {r   c                     t        |d         S )z)Extract uid ('id') and ensure it's a str.username)strr   datas     r   extract_uidzEdxProvider.extract_uid   s    4
#$$r   c                     t        |j                  d      |j                  d      |j                  d      |j                  d            S )Nemailr   nameuser_id)r%   r   r&   r'   )dictgetr!   s     r   extract_common_fieldsz!EdxProvider.extract_common_fields   s?    ((7#XXj)&!HHY'	
 	
r   N)r   r   r   idr&   r   account_classr   oauth2_adapter_classr   r#   r*   r   r   r   r   r      s&    	BDM+%
r   r   N)	$allauth.socialaccount.providers.baser   )allauth.socialaccount.providers.edx.viewsr   /allauth.socialaccount.providers.oauth2.providerr   r   r   provider_classesr   r   r   <module>r2      s0    @ F J= =
. 
,  = r   