a
    ‹Qx_¥  ã                   @   sx   d dl Z 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G d	d
„ d
eƒZe e¡Ze e¡ZdS )é    N)ÚQUERY_EMAIL)ÚOAuth)ÚOAuthAdapterÚOAuthCallbackViewÚOAuthLoginViewé   )ÚTwitterProviderc                   @   s,   e Zd ZdZdZered neZdd„ ZdS )Ú
TwitterAPIz'
    Verifying twitter credentials
    z;https://api.twitter.com/1.1/account/verify_credentials.jsonz?include_email=truec                 C   s   t  |  | j¡¡}|S ©N)ÚjsonÚloadsÚqueryÚurl)ÚselfÚuser© r   úe/var/www/html/Ranjet/env/lib/python3.9/site-packages/allauth/socialaccount/providers/twitter/views.pyÚget_user_info   s    zTwitterAPI.get_user_infoN)Ú__name__Ú
__module__Ú__qualname__Ú__doc__Z	_base_urlr   r   r   r   r   r   r   r	      s   r	   c                   @   s&   e Zd ZejZdZdZdZdd„ Z	dS )ÚTwitterOAuthAdapterz+https://api.twitter.com/oauth/request_tokenz*https://api.twitter.com/oauth/access_tokenz*https://api.twitter.com/oauth/authenticatec                 C   s,   t ||j|j| jƒ}| ¡ }|  ¡  ||¡S r
   )r	   Z	client_idZsecretÚrequest_token_urlr   Úget_providerZsociallogin_from_response)r   ÚrequestZappÚtokenÚresponseZclientÚ
extra_datar   r   r   Úcomplete_login#   s    z"TwitterOAuthAdapter.complete_loginN)
r   r   r   r   ÚidZprovider_idr   Zaccess_token_urlZauthorize_urlr   r   r   r   r   r      s
   r   )r   Z"allauth.socialaccount.app_settingsr   Z,allauth.socialaccount.providers.oauth.clientr   Z+allauth.socialaccount.providers.oauth.viewsr   r   r   Zproviderr   r	   r   Zadapter_viewZoauth_loginZoauth_callbackr   r   r   r   Ú<module>   s   
