
    g                         d dl m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j                  j                  e	       y	)
    )	providers)ProviderAccount)CleverOAuth2Adapter)OAuth2Providerc                       e Zd Zd Zd Zy)CleverAccountc                      y )N selfs    l/var/www/django_project/virt/lib/python3.12/site-packages/allauth/socialaccount/providers/clever/provider.pyget_avatar_urlzCleverAccount.get_avatar_url   s        c                 N    | j                   j                  j                  di       S )Ndata)account
extra_datagetr   s    r   get_user_datazCleverAccount.get_user_data   s    ||&&**6266r   N)__name__
__module____qualname__r   r   r
   r   r   r   r      s    7r   r   c                   4    e Zd ZdZdZeZeZd Z	d Z
d Zd Zy)CleverProvidercleverCleverc                     |d   d   S )Nr   idr
   r   r   s     r   extract_uidzCleverProvider.extract_uid   s    F|D!!r   c                 z    t        |j                  di       j                  di       j                               d   S )Nr   rolesr   )listr   keysr   s     r   get_user_typezCleverProvider.get_user_type   s3    DHHVR(,,Wb9>>@A!DDr   c           	         t        |j                  di       j                  di       j                  dd       |j                  di       j                  di       j                  dd       |j                  di       j                  di       j                  | j                  |      i       j                  di       j                  dd       |j                  di       j                  dd       	      S )
Nr   namefirstlastr"   credentialsdistrict_usernameemail)
first_name	last_nameusernamer,   )dictr   r%   r   s     r   extract_common_fieldsz$CleverProvider.extract_common_fields   s    xx+//;??Nhhvr*..vr:>>vtLXXfb)S"S##D)2.S#S$d+((62&**7D9	
 		
r   c                 
    g dS )N)
zread:district_adminszread:districtszread:resourceszread:school_adminszread:schoolszread:sectionszread:student_contactszread:studentszread:teacherszread:user_idr
   r   s    r   get_default_scopez CleverProvider.get_default_scope(   s    
 	
r   N)r   r   r   r   r'   r   account_classr   oauth2_adapter_classr    r%   r1   r3   r
   r   r   r   r      s,    	BD!M."E


r   r   N)allauth.socialaccountr   $allauth.socialaccount.providers.baser   ,allauth.socialaccount.providers.clever.viewsr   /allauth.socialaccount.providers.oauth2.providerr   r   r   registryregisterr
   r   r   <module>r<      s@    + @ L J7O 7$
^ $
N 
    N +r   