U
    Zcc                     @   sP   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	 G dd deZ
d	S )
    )	parse_qsl)reverse)	urlencode)Provider   )generate_code_challengec                   @   s8   e Zd ZdZdd Zdd Zdd Zdd	 Zd
d ZdS )OAuth2ProviderFc                 K   s&   t | jd }|r"|d t| }|S )NZ_login?)r   idr   )selfrequestkwargsurl r   s/var/www/html/crackeverytest/cet_env/lib/python3.8/site-packages/allauth/socialaccount/providers/oauth2/provider.pyget_login_url   s    zOAuth2Provider.get_login_urlc                 C   s$   |   }|d| jr t }|S i S )NZOAUTH_PKCE_ENABLED)get_settingsgetpkce_enabled_defaultr   )r   settingsZpkce_code_paramsr   r   r   get_pkce_params   s
    zOAuth2Provider.get_pkce_paramsc                 C   s@   |   }t|di }|jdd }|r<|tt| |S )NZAUTH_PARAMSZauth_params)r   dictr   GETupdater   )r   r   actionr   retZdynamic_auth_paramsr   r   r   get_auth_params   s    zOAuth2Provider.get_auth_paramsc                 C   sB   |   }t|d|  }|jdd }|r>||d |S )NZSCOPEscope,)r   listr   get_default_scoper   extendsplit)r   r   r   r   Zdynamic_scoper   r   r   	get_scope#   s    zOAuth2Provider.get_scopec                 C   s   g S )Nr   )r   r   r   r   r    +   s    z OAuth2Provider.get_default_scopeN)	__name__
__module____qualname__r   r   r   r   r#   r    r   r   r   r   r      s   r   N)urllib.parser   Zdjango.urlsr   Zdjango.utils.httpr   Z$allauth.socialaccount.providers.baser   utilsr   r   r   r   r   r   <module>   s
   