o
    Lf                     @   s`   d dl mZ d dlmZ d dlmZmZmZ ddlm	Z	 G dd deZ
ee
Zee
ZdS )	    )app_settings)get_adapter)OAuth2AdapterOAuth2CallbackViewOAuth2LoginView   )TrainingPeaksProviderc                   @   s^   e Zd ZejZdd Zdd Zedd Z	edd Z
ed	d
 Zedd ZdZdd ZdS )TrainingPeaksOAuth2Adapterc                 C   s   t j| ji S )zProvider settings)r   	PROVIDERSgetprovider_idself r   t/var/www/html/humari/django-venv/lib/python3.10/site-packages/allauth/socialaccount/providers/trainingpeaks/views.pyget_settings      z'TrainingPeaksOAuth2Adapter.get_settingsc                 C   s   |   }|drdS dS )z,Return hostname depending on sandbox settingUSE_PRODUCTIONztrainingpeaks.comzsandbox.trainingpeaks.com)r   r   )r   settingsr   r   r   get_hostname   s   
z'TrainingPeaksOAuth2Adapter.get_hostnamec                 C      d|    d S )Nhttps://oauth.z/oauth/tokenr   r   r   r   r   access_token_url   r   z+TrainingPeaksOAuth2Adapter.access_token_urlc                 C   r   )Nr   z/OAuth/Authorizer   r   r   r   r   authorize_url   r   z(TrainingPeaksOAuth2Adapter.authorize_urlc                 C   r   )Nhttps://api.z/v1/athlete/profiler   r   r   r   r   profile_url#   r   z&TrainingPeaksOAuth2Adapter.profile_urlc                 C   s   d|    S )zReturn https://api.hostname.tldr   r   r   r   r   r   api_hostname'   s   z'TrainingPeaksOAuth2Adapter.api_hostname c                 K   sF   dd |ji}t  j| j|d}|  | }|  	||S )NAuthorizationz
Bearer {0})headers)
formattokenr   get_requests_sessionr   r   raise_for_statusjsonget_providersociallogin_from_response)r   requestappr"   kwargsr    response
extra_datar   r   r   complete_login0   s   z)TrainingPeaksOAuth2Adapter.complete_loginN)__name__
__module____qualname__r   idr   r   r   propertyr   r   r   r   scope_delimiterr-   r   r   r   r   r	      s    



r	   N)allauth.socialaccountr   allauth.socialaccount.adapterr   ,allauth.socialaccount.providers.oauth2.viewsr   r   r   providerr   r	   adapter_viewoauth2_loginoauth2_callbackr   r   r   r   <module>   s    
.