o
    ˷e                     @   s\   d dl 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 )    N)md5)OAuth2AdapterOAuth2CallbackViewOAuth2LoginView   )MailRuProviderc                   @   s&   e Zd ZejZdZdZdZdd Z	dS )MailRuOAuth2Adapterz#https://connect.mail.ru/oauth/tokenz'https://connect.mail.ru/oauth/authorizez#http://www.appsmail.ru/platform/apic           	         s   |d d }d|j d|d t fdd D }td||j d	  d
< tj| j	 d}|
 d }|  ||S )Nresponsex_mailru_vidzusers.getInfo1)methodapp_idsecureuidsc                    s   g | ]
}|d   |  qS )= ).0itemdatar   c/var/www/ideatree/venv/lib/python3.10/site-packages/allauth/socialaccount/providers/mailru/views.py
<listcomp>   s    z6MailRuOAuth2Adapter.complete_login.<locals>.<listcomp> zutf-8sig)paramsr   )	client_idsortedr   joinsecretencode	hexdigestrequestsgetprofile_urljsonget_providersociallogin_from_response)	selfrequestapptokenkwargsuid
param_listr	   
extra_datar   r   r   complete_login   s   z"MailRuOAuth2Adapter.complete_loginN)
__name__
__module____qualname__r   idprovider_idaccess_token_urlauthorize_urlr#   r/   r   r   r   r   r      s    r   )r!   hashlibr   ,allauth.socialaccount.providers.oauth2.viewsr   r   r   providerr   r   adapter_viewoauth2_loginoauth2_callbackr   r   r   r   <module>   s    
