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   )OktaProviderc                   @   sb   e Zd ZejZejei Z	e	dZ
edd Zedd Zedd Zedd	 Zd
d ZdS )OktaOAuth2AdapterOKTA_BASE_URLc                 C      d | jS )Nzhttps://{}/oauth2/v1/tokenformatokta_base_urlself r   k/var/www/html/humari/django-venv/lib/python3.10/site-packages/allauth/socialaccount/providers/okta/views.pyaccess_token_url      z"OktaOAuth2Adapter.access_token_urlc                 C   r   )Nzhttps://{}/oauth2/v1/authorizer   r   r   r   r   authorize_url   r   zOktaOAuth2Adapter.authorize_urlc                 C   r   )Nzhttps://{}/oauth2/v1/userinfor   r   r   r   r   userinfo_url   r   zOktaOAuth2Adapter.userinfo_urlc                 C   s   dS )NPOSTr   r   r   r   r   access_token_method   s   z%OktaOAuth2Adapter.access_token_methodc                 K   sF   t   j| jdd|jid}|  | }|  	||}|S )z
        Get the user info from userinfo endpoint and return a
        A populated instance of the `SocialLogin` model (unsaved)

        :param request:
        :param app:
        :param token:
        :param kwargs:
        :return:
        Authorizationz	Bearer {})headers)
r   get_requests_sessiongetr   r   tokenraise_for_statusjsonget_providersociallogin_from_response)r   requestappr   kwargsresp
extra_dataloginr   r   r   complete_login"   s   	z OktaOAuth2Adapter.complete_loginN)__name__
__module____qualname__r   idprovider_idr   	PROVIDERSr   settingsr   propertyr   r   r   r   r(   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    
1