
    )Jf                     R   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
 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 d
dlmZ d
dlmZmZmZ d
dlmZ ddlmZm Z  ddl!mZ ddl"m#Z#m$Z$ ddl%m&Z&m'Z'  G d deeee          Z(e()                                Z* G d de          Z+e+)                                Z, G d de          Z-e-)                                Z. e edd           d           G d dee                      Z/ ee/)                                          Z0d S )!    )messages)login_required)get_current_site)HttpResponseRedirect)reversereverse_lazy)method_decorator)TemplateView)FormView)reauthentication_required   )app_settings)get_adapter)AjaxCapableProcessFormViewMixinCloseableSignupMixinRedirectAuthenticatedUserMixin)get_form_class   )r   helpers)DisconnectForm
SignupForm)SocialAccountSocialLoginc                   b     e Zd ZeZdej        z   Zd Z fdZ	d Z
 fdZd Z fdZd Z xZS )	
SignupViewzsocialaccount/signup.c                 B    t          t          j        d| j                  S )Nsignupr   r   FORMS
form_classselfs    ^/home/alex/cs2snipeproduction/venv/lib/python3.11/site-packages/allauth/socialaccount/views.pyr   zSignupView.get_form_class#   s    l0(DOLLL    c                 
   d | _         |j                            d          }|rt          j        |          | _         | j         st          t          d                    S  t          t          |           j	        |g|R i |S )Nsocialaccount_socialloginaccount_login)
socialloginsessiongetr   deserializer   r   superr   dispatch)r"   requestargskwargsdata	__class__s        r#   r-   zSignupView.dispatch&   s    ""#>?? 	=*6t<<D 	B'(@(@AAA/uZ&&/I$III&IIIr$   c                 f    t          | j                                      | j        | j                  S N)r   r.   is_open_for_signupr(   r!   s    r#   is_openzSignupView.is_open/   s.    4<((;;L$*
 
 	
r$   c                 j    t          t          |                                           }| j        |d<   |S )Nr(   )r,   r   get_form_kwargsr(   )r"   retr2   s     r#   r8   zSignupView.get_form_kwargs4   s0    J%%5577!-M
r$   c                     | j         j                            dd            |                    | j                   \  }}|st	          j        | j         | j                  }|S )Nr&   )r.   r)   poptry_saver   complete_social_signupr(   )r"   formuserresps       r#   
form_validzSignupView.form_valid9   sZ      !<dCCC]]4<00
d 	R1$,@PQQDr$   c                      t          t          |           j        di |}|                    t	          t          | j                  | j        j                             |S )N)siteaccount )	r,   r   get_context_dataupdatedictr   r.   r(   rD   )r"   r0   r9   r2   s      r#   rF   zSignupView.get_context_data@   sj    6eJ%%6@@@@

%dl33(0  	
 	
 	
 
r$   c                 *    t          t                    S r4   )r   connectionsr!   s    r#   get_authenticated_redirect_urlz)SignupView.get_authenticated_redirect_urlJ   s    {###r$   )__name__
__module____qualname__r   r    account_settingsTEMPLATE_EXTENSIONtemplate_namer   r-   r6   r8   rA   rF   rK   __classcell__r2   s   @r#   r   r      s         J+.>.QQMM M MJ J J J J
 
 

    
      $ $ $ $ $ $ $r$   r   c                   "    e Zd Zdej        z   ZdS )LoginCancelledViewzsocialaccount/login_cancelled.NrL   rM   rN   rO   rP   rQ   rE   r$   r#   rU   rU   Q   s        (+;+NN MMr$   rU   c                   "    e Zd Zdej        z   ZdS )LoginErrorViewz#socialaccount/authentication_error.NrV   rE   r$   r#   rX   rX   Z   s        -0@0SS MMr$   rX   Tc                     t           j        S r4   )rO   REAUTHENTICATION_REQUIRED)r.   s    r#   <lambda>r[   f   s
     0 J r$   )	allow_getenabledr-   )namec                   b     e Zd Zdej        z   ZeZ ed          Z	d Z
 fdZ fdZd Z xZS )ConnectionsViewzsocialaccount/connections.socialaccount_connectionsc                 B    t          t          j        d| j                  S )N
disconnectr   r!   s    r#   r   zConnectionsView.get_form_classo   s    l0,PPPr$   c                 j    t          t          |                                           }| j        |d<   |S )Nr.   )r,   r`   r8   r.   )r"   r0   r2   s     r#   r8   zConnectionsView.get_form_kwargsr   s/    --==?? Lyr$   c                     t                                          | j        t          j        d           |                                 t          t          |                               |          S )Nz/socialaccount/messages/account_disconnected.txt)	get_account_adapteradd_messager.   r   INFOsaver,   r`   rA   )r"   r>   r2   s     r#   rA   zConnectionsView.form_validw   s[    ))LM=	
 	
 	

 			_d++66t<<<r$   c                     g }t           j                            | j        j                  D ]K}|                                }|                    |j        |j        |	                                d           Ld|iS )N)r?   )idproviderr^   socialaccounts)
r   objectsfilterr.   r?   get_provider_accountappendpkrl   to_str)r"   account_datarD   provider_accounts       r#   get_ajax_datazConnectionsView.get_ajax_data   s    $,339J3KK 	 	G&;;==!* ' 0,3355     !,//r$   )rL   rM   rN   rO   rP   rQ   r   r    r   success_urlr   r8   rA   rv   rR   rS   s   @r#   r`   r`   c   s         13C3VVMJ,:;;KQ Q Q    
= = = = =0 0 0 0 0 0 0r$   r`   N)1django.contribr   django.contrib.auth.decoratorsr   django.contrib.sites.shortcutsr   django.httpr   django.urlsr   r   django.utils.decoratorsr	   django.views.generic.baser
   django.views.generic.editr   allauth.account.decoratorsr   rD   r   rO   account.adapterr   rf   account.viewsr   r   r   utilsr    r   adapterformsr   r   modelsr   r   r   as_viewr   rU   login_cancelledrX   login_errorr`   rJ   rE   r$   r#   <module>r      s   # # # # # # 9 9 9 9 9 9 ; ; ; ; ; ; , , , , , , - - - - - - - - 4 4 4 4 4 4 2 2 2 2 2 2 . . . . . . @ @ @ @ @ @ 6 6 6 6 6 6 @ @ @ @ @ @         
 # " " " " " # # # # # # # #             - - - - - - - - . . . . . . . .1$ 1$ 1$ 1$ 1$"#	1$ 1$ 1$h 
				        %,,..    \    $$&& JJ   
  !0 !0 !0 !0 !05x !0 !0 !0H n_446677r$   