a
    Qx_H                     @   sX   d dl Z d dlmZ d dlmZmZ d dlmZmZ d dl	m
Z
 ddlmZ dd	 ZdS )
    N)ImproperlyConfigured)app_settings	providers)complete_social_loginrender_authentication_error)SocialLogin   )PersonaProviderc              
   C   s   | j dd}tjtji }|dd }|d u r:tdtd||d}z6|	  |
 }|d dkrt| tjd	|id
W S W n: ttjfy } zt| tj|dW  Y d }~S d }~0 0 tjtj| | |}t| |_t| |S )N	assertion ZAUDIENCEznNo Persona audience configured. Please add an AUDIENCE item to the SOCIALACCOUNT_PROVIDERS['persona'] setting.z)https://verifier.login.persona.org/verify)r
   audiencestatusZokayresponse)provider_idZextra_context)r   	exception)ZPOSTgetr   Z	PROVIDERSr	   idr   requestspostZraise_for_statusjsonr   
ValueErrorZRequestExceptionr   registryZby_idZsociallogin_from_responser   Zstate_from_requeststater   )requestr
   settingsr   Zresp
extra_dataeZlogin r   e/var/www/html/Ranjet/env/lib/python3.9/site-packages/allauth/socialaccount/providers/persona/views.pypersona_login   s>    r   )r   Zdjango.core.exceptionsr   Zallauth.socialaccountr   r   Zallauth.socialaccount.helpersr   r   Zallauth.socialaccount.modelsr   Zproviderr	   r   r   r   r   r   <module>   s   