o
    ëË·e‡  ã                   @   sŽ   d Z ddlmZ ddlmZ ddlmZ eedi ƒ di ¡ dd¡Z	e	d	kr(d
ndZ
de
r/e	nd ZG dd„ deƒZG dd„ deƒZegZdS )z
Provider for Patreon
é    )Úsettings)ÚProviderAccount)ÚOAuth2ProviderÚSOCIALACCOUNT_PROVIDERSÚpatreonÚVERSIONÚv1Úv2TFz#https://www.patreon.com/api/oauth2/Úapic                   @   s   e Zd Zdd„ ZdS )ÚPatreonAccountc                 C   s   | j j d¡ d¡S )NÚ
attributesÚ	thumb_url)ÚaccountÚ
extra_dataÚget©Úself© r   úg/var/www/ideatree/venv/lib/python3.10/site-packages/allauth/socialaccount/providers/patreon/provider.pyÚget_avatar_url   s   zPatreonAccount.get_avatar_urlN)Ú__name__Ú
__module__Ú__qualname__r   r   r   r   r   r      s    r   c                   @   s0   e Zd ZdZdZeZdd„ Zdd„ Zdd„ Z	d	S )
ÚPatreonProviderr   ÚPatreonc                 C   s   t rg d¢S g d¢S )N)Úidentityzidentity[email]Ú	campaignszcampaigns.members)zpledges-to-meÚuserszmy-campaign)Ú
USE_API_V2r   r   r   r   Úget_default_scope   s   z!PatreonProvider.get_default_scopec                 C   s
   |  d¡S )NÚid©r   )r   Údatar   r   r   Úextract_uid(   s   
zPatreonProvider.extract_uidc                 C   s.   |d }|  d¡|  d¡|  d¡|  d¡dœS )Nr   ÚemailÚ	full_nameÚ
first_nameÚ	last_name)r$   Úfullnamer&   r'   r!   )r   r"   Údetailsr   r   r   Úextract_common_fields+   s   üz%PatreonProvider.extract_common_fieldsN)
r   r   r   r    Únamer   Úaccount_classr   r#   r*   r   r   r   r   r      s    
r   N)Ú__doc__Údjango.confr   Ú$allauth.socialaccount.providers.baser   Ú/allauth.socialaccount.providers.oauth2.providerr   Úgetattrr   ÚAPI_VERSIONr   ÚAPI_URLr   r   Úprovider_classesr   r   r   r   Ú<module>   s    
ý
