Ë
    ûûàgÓ  ã                   ó´   — d dl Z d dlmZ d dlmZ d dlmZ d dlmZ d dl	m
Z
mZmZ d„ Z G d„ d	e
«      Z ej                  e«      Z ej                  e«      Zy)
é    N)Úcontext)Úapp_settings)Úget_adapter)ÚOAuth2Error)ÚOAuth2AdapterÚOAuth2CallbackViewÚOAuth2LoginViewc                 ó@  — 	 | j                  «       }d|vrCd}|j                  di «      j                  d«      }|rdj                  ||f«      }t        |«      ‚|S # t         j                  j                  $ r% t        dj	                  | j
                  «      «      ‚w xY w)Nz)Invalid JSON from Microsoft Graph API: {}Úidz"Error retrieving Microsoft profileÚerrorÚmessagez: )ÚjsonÚdecoderÚJSONDecodeErrorr   ÚformatÚtextÚgetÚjoin)ÚresponseÚdataÚerror_messageÚmicrosoft_error_messages       úm/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/allauth/socialaccount/providers/microsoft/views.pyÚ_check_errorsr      sž   € ð
Ø�}‰}‹ˆð �4ÑØ<ˆØ"&§(¡(¨7°BÓ"7×";Ñ";¸IÓ"FÐÙ"Ø ŸI™I }Ð6MÐ&NÓOˆMÜ˜-Ó(Ð(à€Køô �<‰<×'Ñ'ò 
ÜØ7×>Ñ>¸x¿}¹}ÓMó
ð 	
ð
ús   ‚A ÁABc                   óv   — e Zd ZdZd„ Zed„ «       Zed„ «       Zed„ «       ZdZ	ddj                  e	«      iZd	„ Zy
)ÚMicrosoftGraphOAuth2AdapterÚ	microsoftc                 ó‚  — t         j                  j                  | j                  i «      }|j                  d|j                  dd«      «      }t	        «       j                  t        j                  | j                  ¬«      }|j                  j                  d|«      }|j                  j                  dd«      }|› d|› |› �S )NÚTENANTÚtenantÚcommon©ÚproviderÚ	login_urlz!https://login.microsoftonline.comú/)	r   Ú	PROVIDERSr   Úprovider_idr   Úget_appr   ÚrequestÚsettings)ÚselfÚpathr*   r    Úappr$   s         r   Ú_build_tenant_urlz-MicrosoftGraphOAuth2Adapter._build_tenant_url#   sž   € Ü×)Ñ)×-Ñ-¨d×.>Ñ.>ÀÓCˆà—‘˜h¨¯©°X¸xÓ(HÓIˆä‹m×#Ñ#¤G§O¡O¸d×>NÑ>NÐ#ÓOˆØ—‘×!Ñ! (¨FÓ3ˆØ—L‘L×$Ñ$ [Ð2UÓVˆ	Ø�˜A˜f˜X d VÐ,Ð,ó    c                 ó$   — | j                  d«      S )Nz/oauth2/v2.0/token©r.   ©r+   s    r   Úaccess_token_urlz,MicrosoftGraphOAuth2Adapter.access_token_url-   s   € à×%Ñ%Ð&:Ó;Ð;r/   c                 ó$   — | j                  d«      S )Nz/oauth2/v2.0/authorizer1   r2   s    r   Úauthorize_urlz)MicrosoftGraphOAuth2Adapter.authorize_url1   s   € à×%Ñ%Ð&>Ó?Ð?r/   c                 óª   — t        «       j                  t        j                  | j                  ¬«      }|j
                  j                  dd«      }|› d�S )Nr"   Ú	graph_urlzhttps://graph.microsoft.comz/v1.0/me)r   r(   r   r)   r'   r*   r   )r+   r-   r7   s      r   Úprofile_urlz'MicrosoftGraphOAuth2Adapter.profile_url5   sG   € ä‹m×#Ñ#¤G§O¡O¸d×>NÑ>NÐ#ÓOˆØ—L‘L×$Ñ$ [Ð2OÓPˆ	Ø�˜HÐ%Ð%r/   )ÚbusinessPhonesÚdisplayNameÚ	givenNamer   ÚjobTitleÚmailÚmobilePhoneÚofficeLocationÚpreferredLanguageÚsurnameÚuserPrincipalNameÚmailNicknameÚcompanyNamez$selectú,c                 ó  — ddj                  |j                  «      i}t        «       j                  «       j	                  | j
                  | j                  |¬«      }t        |«      }| j                  «       j                  ||«      S )NÚAuthorizationz
Bearer {0})ÚparamsÚheaders)
r   Útokenr   Úget_requests_sessionr   r8   Úprofile_url_paramsr   Úget_providerÚsociallogin_from_response)r+   r)   r-   rJ   ÚkwargsrI   r   Ú
extra_datas           r   Úcomplete_loginz*MicrosoftGraphOAuth2Adapter.complete_loginL   sz   € Ø" L×$7Ñ$7¸¿¹Ó$DÐEˆä‹Mß!Ñ!Ó#ß‰SØ× Ñ Ø×.Ñ.Øð ó ð 	ô # 8Ó,ˆ
Ø× Ñ Ó"×<Ñ<¸WÀjÓQÐQr/   N)Ú__name__Ú
__module__Ú__qualname__r'   r.   Úpropertyr3   r5   r8   Úuser_propertiesr   rL   rQ   © r/   r   r   r       sm   „ Ø€Kò-ð ñ<ó ð<ð ñ@ó ð@ð ñ&ó ð&ð
€Oð $ S§X¡X¨oÓ%>Ð?ÐóRr/   r   )r   Úallauth.corer   Úallauth.socialaccountr   Úallauth.socialaccount.adapterr   Ú-allauth.socialaccount.providers.oauth2.clientr   Ú,allauth.socialaccount.providers.oauth2.viewsr   r   r	   r   r   Úadapter_viewÚoauth2_loginÚoauth2_callbackrW   r/   r   ú<module>r`      s[   ðÛ å  Ý .Ý 5Ý E÷ñ òô$8R -ô 8Rðv ,ˆ×+Ñ+Ð,GÓH€Ø1Ð$×1Ñ1Ð2MÓN�r/   