
    Uњh5                     j    S SK Jr  S SKJr  S SKJr  S SKJrJr   " S S\5      r	 " S S\5      r
\
/rg	)
    )HttpResponseRedirect)reverse)	urlencode)ProviderProviderAccountc                       \ rS rSrSrg)TelegramAccount    N)__name__
__module____qualname____firstlineno____static_attributes__r       lD:\Anime\Ugyen\janka_web_project\venv\Lib\site-packages\allauth/socialaccount/providers/telegram/provider.pyr	   r	      s    r   r	   c                   F    \ rS rSrSrSr\rSrS r	S r
S rS rSS
 jrSrg	)TelegramProvider   telegramTelegramTc                 L    [        S5      nU(       a  US-   [        U5      -   nU$ )Ntelegram_login?)r   r   )selfrequestkwargsurls       r   get_login_urlTelegramProvider.get_login_url   s(    &')i//C
r   c                     [        US   5      $ )Nid)str)r   datas     r   extract_uidTelegramProvider.extract_uid   s    4:r   c                    0 nUR                  S5      (       a  UR                  S5      US'   UR                  S5      (       a  UR                  S5      US'   UR                  S5      (       a  UR                  S5      US'   U$ )N
first_name	last_nameusername)get)r   r$   rets      r   extract_common_fields&TelegramProvider.extract_common_fields   sq    88L!! $ 6C88K  #xx4C88J"hhz2C
O
r   c                     SnU R                  5       nSU;   a!  UR                  S5      R                  SU5      nU R                  R                  R                  SU5      nU$ )N   AUTH_PARAMSauth_date_validity)get_settingsr+   appsettings)r   r2   r5   s      r   get_auth_date_validity'TelegramProvider.get_auth_date_validity%   si    $$&H$!)m!<!@!@$&8" "XX..22 "4
 "!r   Nc           	         U R                   " XX440 UD6nUR                  [        S5      S-   [        SU05      -   5      nS[        UR                  S5      U R                  R
                  SSUS.5      -   n[        U5      $ )	Ntelegram_callbackr   statez https://oauth.telegram.org/auth?/write0)originbot_idrequest_accessembed	return_to)stash_redirect_statebuild_absolute_urir   r   r4   	client_idr   )	r   r   processnext_urlr$   r   r:   rB   r   s	            r   redirectTelegramProvider.redirect1   s    ))'HUfU..'(3.GU;K1LL
	 19!44S9((,,")&4
 
 $C((r   r   )NN)r   r   r   r   r"   namer	   account_classsupports_redirectr   r%   r-   r6   rH   r   r   r   r   r   r      s0    	BD#M
")r   r   N)django.httpr   django.urlsr   django.utils.httpr   $allauth.socialaccount.providers.baser   r   r	   r   provider_classesr   r   r   <module>rR      s5    ,  ' J	o 	3)x 3)l %% r   