
    )Jf                         d dl mc m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e	          Z ej        e          Z e
j        e          ZdS )	    N)app_settings)get_adapter)OAuth2AdapterOAuth2CallbackViewOAuth2LoginView   )NextCloudProviderc                      e Zd Zej        Zej                            ei           Z	e	                    dd          Z
d                    e
          Zd                    e
          Zd                    e
          Zd Zd ZdS )	NextCloudAdapterSERVERzhttps://nextcloud.example.orgz{0}/apps/oauth2/api/v1/tokenz{0}/apps/oauth2/authorizez{0}/ocs/v1.php/cloud/users/c                     |                      ||d         d                   }|                                                     ||          S )Nresponseuser_id)get_user_infoget_providersociallogin_from_response)selfrequestapptokenkwargs
extra_datas         r/home/alex/cs2snipeproduction/venv/lib/python3.11/site-packages/allauth/socialaccount/providers/nextcloud/views.pycomplete_loginzNextCloudAdapter.complete_login   sC    ''vj/A)/LMM
  ""<<WjQQQ    c                 L   dd                     |          i}t                                                                          | j        |z   |          }|                                 t          j        |j        	                                          d         }d |D             S )NAuthorizationz
Bearer {0})headersr   c                 Z    i | ](}|j         	|j        |j                                         )S )N)texttagstrip).0ds     r   
<dictcomp>z2NextCloudAdapter.get_user_info.<locals>.<dictcomp>#   s-    JJJ!qv7Iqv||~~7I7I7Ir   )
formatr   get_requests_sessiongetprofile_urlraise_for_statusET
fromstringcontentdecode)r   r   r   r   respdatas         r   r   zNextCloudAdapter.get_user_info   s    "L$7$7$>$>?MM!!##S!G+WS== 	
 	}T\002233A6JJtJJJJr   N)__name__
__module____qualname__r	   idprovider_idr   	PROVIDERSr(   settingsserverr&   access_token_urlauthorize_urlr)   r   r    r   r   r   r      s        #&K%))+r::H\\($CDDF5<<VDD/66v>>M/66v>>KR R R	K 	K 	K 	K 	Kr   r   )xml.etree.ElementTreeetreeElementTreer+   allauth.socialaccountr   allauth.socialaccount.adapterr   ,allauth.socialaccount.providers.oauth2.viewsr   r   r   providerr	   r   adapter_viewoauth2_loginoauth2_callbackr;   r   r   <module>rF      s    " " " " " " " " " . . . . . . 5 5 5 5 5 5          ( ' ' ' ' 'K K K K K} K K K0 ,+,<==1$12BCCr   