a
    $äê`F  ã                   @   s\   d dl Z d dlmZ 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 )é    N)Úapp_settings)ÚKeycloakProvider)ÚOAuth2AdapterÚOAuth2CallbackViewÚOAuth2LoginViewc                   @   s   e Zd ZejZdZej 	ei ¡Z
d e
 	d¡e
 	d¡¡Zd e¡Ze
 	d¡Zedu r^e
 	d¡Zd ee
 	d¡¡Zd e¡Zd	 e¡Zd
d„ ZdS )ÚKeycloakOAuth2AdapterTz{0}/realms/{1}ZKEYCLOAK_URLZKEYCLOAK_REALMz {0}/protocol/openid-connect/authZKEYCLOAK_URL_ALTNz!{0}/protocol/openid-connect/tokenz${0}/protocol/openid-connect/userinfoc                 C   sN   t j| jddt|ƒ id}| ¡  | ¡ }|d |d< |d= |  ¡  ||¡S )NZAuthorizationzBearer )ÚheadersÚsubÚid)ÚrequestsÚpostÚprofile_urlÚstrZraise_for_statusÚjsonÚget_providerZsociallogin_from_response)ÚselfÚrequestZappÚtokenÚresponseÚ
extra_data© r   úf/var/www/html/Ranjet/env/lib/python3.9/site-packages/allauth/socialaccount/providers/keycloak/views.pyÚcomplete_login    s    ÿz$KeycloakOAuth2Adapter.complete_login)Ú__name__Ú
__module__Ú__qualname__r   r
   Zprovider_idZsupports_stater   Z	PROVIDERSÚgetÚsettingsÚformatZprovider_base_urlZauthorize_urlZ	other_urlZserver_base_urlZaccess_token_urlr   r   r   r   r   r   r      s   ÿ




r   )r   Zallauth.socialaccountr   Z1allauth.socialaccount.providers.keycloak.providerr   Z,allauth.socialaccount.providers.oauth2.viewsr   r   r   r   Zadapter_viewZoauth2_loginZoauth2_callbackr   r   r   r   Ú<module>   s   
