a
    ‹Qx_à  ã                   @   sd   d dl mZ d dlmZ d dlmZmZ d dlmZ G dd„ deƒZ	G dd„ deƒZ
ej e
¡ d	S )
é    )ÚEmailAddress)Ú	providers)Ú
AuthActionÚProviderAccount)ÚOAuth2Providerc                       s,   e Zd Zdd„ Zdd„ Z‡ fdd„Z‡  ZS )ÚSalesforceAccountc                 C   s   | j j d¡S )NÚlink©ÚaccountÚ
extra_dataÚget©Úself© r   úk/var/www/html/Ranjet/env/lib/python3.9/site-packages/allauth/socialaccount/providers/salesforce/provider.pyÚget_profile_url   s    z!SalesforceAccount.get_profile_urlc                 C   s   | j j d¡S )NZpicturer	   r   r   r   r   Úget_avatar_url   s    z SalesforceAccount.get_avatar_urlc                    s   t t| ƒ ¡ }| jj d|¡S )NÚname)Úsuperr   Úto_strr
   r   r   )r   Zdflt©Ú	__class__r   r   r      s    zSalesforceAccount.to_str)Ú__name__Ú
__module__Ú__qualname__r   r   r   Ú__classcell__r   r   r   r   r      s   r   c                       sL   e Zd ZdZdZdZeZdd„ Z‡ fdd„Z	dd	„ Z
d
d„ Zdd„ Z‡  ZS )ÚSalesforceProviderZ
salesforceZ
Salesforcez*allauth.socialaccount.providers.salesforcec                 C   s   ddgS )NÚidZopenidr   r   r   r   r   Úget_default_scope   s    z$SalesforceProvider.get_default_scopec                    s(   t t| ƒ ||¡}|tjkr$d|d< |S )NÚforceZapproval_prompt)r   r   Úget_auth_paramsr   ZREAUTHENTICATE)r   ÚrequestÚactionÚretr   r   r   r       s    
z"SalesforceProvider.get_auth_paramsc                 C   s   t |d ƒS )NZuser_id)Ústr©r   Údatar   r   r   Úextract_uid"   s    zSalesforceProvider.extract_uidc                 C   s(   t | d¡| d¡| d¡| d¡dS )NÚemailZfamily_nameZ
given_nameZpreferred_username)r(   Ú	last_nameZ
first_nameÚusername)Údictr   r%   r   r   r   Úextract_common_fields%   s    üz(SalesforceProvider.extract_common_fieldsc                 C   s    t | d¡d| d¡d}|gS )Nr(   TZemail_verified)r(   ZprimaryZverified)r   r   )r   r&   r(   r   r   r   Úextract_email_addresses-   s    ýz*SalesforceProvider.extract_email_addresses)r   r   r   r   r   Úpackager   Zaccount_classr   r    r'   r,   r-   r   r   r   r   r   r      s   r   N)Zallauth.account.modelsr   Zallauth.socialaccountr   Z$allauth.socialaccount.providers.baser   r   Z/allauth.socialaccount.providers.oauth2.providerr   r   r   ÚregistryÚregisterr   r   r   r   Ú<module>   s   $