a
    ‹Qx_|  ã                   @   sZ   d dl mZ d dlmZ 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 )
é    )Úunicode_literals)ÚEmailAddress)ÚProviderAccount)ÚOAuth2Providerc                       s   e Zd Z‡ fdd„Z‡  ZS )ÚYahooAccountc                    sB   d  | jj dd¡| jj dd¡¡}| ¡ dkr4|S tt| ƒ ¡ S )Nz{0} {1}Ú
given_nameÚ Úfamily_name)ÚformatZaccountÚ
extra_dataÚgetÚstripÚsuperr   Úto_str)ÚselfÚname©Ú	__class__© úf/var/www/html/Ranjet/env/lib/python3.9/site-packages/allauth/socialaccount/providers/yahoo/provider.pyr   	   s    þzYahooAccount.to_str)Ú__name__Ú
__module__Ú__qualname__r   Ú__classcell__r   r   r   r   r      s   r   c                   @   s<   e Zd ZedƒZdZeZdd„ Zdd„ Z	dd„ Z
d	d
„ ZdS )ÚYahooProviderZyahooZYahooc                 C   s   ddgS )zk
        Doc on scopes available at
        https://developer.yahoo.com/oauth2/guide/yahoo_scopes/
        ZprofileÚemailr   )r   r   r   r   Úget_default_scope   s    zYahooProvider.get_default_scopec                 C   s   |d S )NÚsubr   ©r   Údatar   r   r   Úextract_uid   s    zYahooProvider.extract_uidc                 C   s   t |d |d |d dS )Nr   r	   r   )r   Ú	last_nameZ
first_name)Údictr   r   r   r   Úextract_common_fields"   s
    ýz#YahooProvider.extract_common_fieldsc                 C   s4   g }|  d¡}|r0|  d¡r0| t|ddd¡ |S )Nr   Zemail_verifiedT)r   ZverifiedZprimary)r   Úappendr   )r   r   Úretr   r   r   r   Úextract_email_addresses)   s
    
z%YahooProvider.extract_email_addressesN)r   r   r   ÚstrÚidr   r   Zaccount_classr   r    r#   r&   r   r   r   r   r      s   r   N)Ú
__future__r   Zallauth.socialaccount.modelsr   Z$allauth.socialaccount.providers.baser   Z/allauth.socialaccount.providers.oauth2.providerr   r   r   Zprovider_classesr   r   r   r   Ú<module>   s   