o
    &zh}                     @   sH   d dl mZ d dlmZmZmZ G dd deZeeZeeZ	dS )    )get_adapter)OAuth2AdapterOAuth2CallbackViewOAuth2LoginViewc                   @   s8   e Zd ZdZdZdZdZdZdZdZ	dd	 Z
d
d ZdS )QuickBooksOAuth2Adapter
quickbooksz9https://oauth.platform.intuit.com/oauth2/v1/tokens/bearerz+https://appcenter.intuit.com/connect/oauth2zGhttps://sandbox-accounts.platform.intuit.com/v1/openid_connect/userinfoz?https://accounts.platform.intuit.com/v1/openid_connect/userinfoGETPOSTc                 K   s2   |j d}| |}|r||d< |  ||S )NrealmId)r   getget_user_infoget_providersociallogin_from_response)selfrequestapptokenkwargsrealm_id
extra_data r   k/var/www/html/kangema/venv/lib/python3.10/site-packages/allauth/socialaccount/providers/quickbooks/views.pycomplete_login   s
   
z&QuickBooksOAuth2Adapter.complete_loginc                 C   s^   d|j  }d|dd}|   dd}|r| jn| j}t  j||d}|  |	 S )NzBearer zapplication/json)AcceptAuthorizationacceptSANDBOXF)headers)
r   r   get_settingsr   profile_testprofile_urlr   get_requests_sessionraise_for_statusjson)r   r   auth_headerr   
is_sandboxurlrespr   r   r   r      s   
z%QuickBooksOAuth2Adapter.get_user_infoN)__name__
__module____qualname__provider_idaccess_token_urlauthorize_urlr   r    profile_url_methodaccess_token_methodr   r   r   r   r   r   r   	   s    r   N)
allauth.socialaccount.adapterr   ,allauth.socialaccount.providers.oauth2.viewsr   r   r   r   adapter_viewoauth2_loginoauth2_callbackr   r   r   r   <module>   s
    
 