o
    ˷e                     @   sB   d dl mZ d dlmZ G dd deZG dd deZegZdS )    )ProviderAccount)OAuth2Providerc                       s   e Zd Z fddZ  ZS )CernAccountc                    s   t t|  }| jjd|S )Nname)superr   to_straccount
extra_dataget)selfdflt	__class__ d/var/www/ideatree/venv/lib/python3.10/site-packages/allauth/socialaccount/providers/cern/provider.pyr      s   zCernAccount.to_str)__name__
__module____qualname__r   __classcell__r   r   r   r   r      s    r   c                       s8   e Zd ZdZdZeZ fddZdd Zdd Z	  Z
S )	CernProvidercernCernc                    s   t t| ||}d|d< |S )Nz	read:userscope)r   r   get_auth_params)r   requestactiondatar   r   r   r      s   zCernProvider.get_auth_paramsc                 C   s   t |dS )Nid)strr
   r   r   r   r   r   extract_uid   s   zCernProvider.extract_uidc                 C   s0   t |d|d|d|d|ddS )Nemailusername
first_name	last_namer   )r!   r"   r#   r$   r   )dictr
   r   r   r   r   extract_common_fields   s   z"CernProvider.extract_common_fields)r   r   r   r   r   r   account_classr   r    r&   r   r   r   r   r   r      s    r   N)$allauth.socialaccount.providers.baser   /allauth.socialaccount.providers.oauth2.providerr   r   r   provider_classesr   r   r   r   <module>   s
    
