o
    &zh                     @   sN   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 )	    )ProviderAccount)OAuth2Provider)StravaOAuth2Adapterc                   @   s   e Zd Zdd Zdd ZdS )StravaAccountc                 C   s    | j jd}|rd|S d S )Nidz"https://www.strava.com/athletes/{})account
extra_datagetformat)selfr    r   j/var/www/html/kangema/venv/lib/python3.10/site-packages/allauth/socialaccount/providers/strava/provider.pyget_profile_url   s   
zStravaAccount.get_profile_urlc                 C   s"   | j jd}|r|dkr|S d S )Nprofilezavatar/athlete/large.png)r   r   r	   )r   avatarr   r   r   get_avatar_url   s   zStravaAccount.get_avatar_urlN)__name__
__module____qualname__r   r   r   r   r   r   r      s    r   c                       s<   e Zd ZdZdZeZeZdd Z	 fddZ
dd Z  ZS )	StravaProviderstravaStravac                 C   s   t |d S )Nr   )str)r   datar   r   r   extract_uid   s   zStravaProvider.extract_uidc                    sd   t t| |}|d}|d}ddd ||fD }|j|d|d||| d |S )	N	firstnamelastname c                 s   s    | ]}|r|V  qd S )Nr   ).0partr   r   r   	<genexpr>!   s    z7StravaProvider.extract_common_fields.<locals>.<genexpr>usernameemail)r!   r"   
first_name	last_namename)superr   extract_common_fieldsr	   joinupdatestrip)r   r   extra_commonr   r   r%   	__class__r   r   r'      s   

z$StravaProvider.extract_common_fieldsc                 C   s   dgS )Nzread,activity:readr   )r   r   r   r   get_default_scope+   s   z StravaProvider.get_default_scope)r   r   r   r   r%   r   account_classr   oauth2_adapter_classr   r'   r.   __classcell__r   r   r,   r   r      s    r   N)	$allauth.socialaccount.providers.baser   /allauth.socialaccount.providers.oauth2.providerr   ,allauth.socialaccount.providers.strava.viewsr   r   r   provider_classesr   r   r   r   <module>   s    
