
    f                        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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 ddl m!Z!  G d deeee      Z"e"jG                         Z$ G d de      Z%e%jG                         Z& G d de      Z'e'jG                         Z( e
ed       G d dee             Z)e)jG                         Z*y)    )login_required)get_current_site)HttpResponseRedirect)reversereverse_lazy)method_decorator)TemplateView)FormView)DisconnectForm
SignupForm)flows)SocialAccount   )app_settings)AjaxCapableProcessFormViewMixinCloseableSignupMixinRedirectAuthenticatedUserMixin)get_form_class   )get_adapterc                   l     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                 L    t        t        j                  d| j                        S )Nsignupr   r   FORMS
form_classselfs    V/var/www/cs2snipe.com/venv/lib/python3.12/site-packages/allauth/socialaccount/views.pyr   zSignupView.get_form_class!   s    l00(DOOLL    c                     t         j                  j                  |      | _        | j                  st	        t        d            S t        t        | "  |g|i |S )Naccount_login)	r   r   get_pending_signupsocialloginr   r   superr   dispatch)r   requestargskwargs	__class__s       r    r'   zSignupView.dispatch$   sO     <<::7C'(@AAZ/I$I&IIr!   c                 t    t        | j                        j                  | j                  | j                        S N)r   r(   is_open_for_signupr%   r   s    r    is_openzSignupView.is_open*   s-    4<<(;;LL$**
 	
r!   c                 J    t         t        |          }| j                  |d<   |S )Nr%   )r&   r   get_form_kwargsr%   )r   retr+   s     r    r1   zSignupView.get_form_kwargs/   s'    J57!--M
r!   c                 l    t         j                  j                  | j                  | j                  |      S r-   )r   r   signup_by_formr(   r%   )r   forms     r    
form_validzSignupView.form_valid4   s%    ||**4<<9I9I4PPr!   c                     t        t        | 
  di |}|j                  t	        t        | j                        | j                  j                               |S )N)siteaccount )	r&   r   get_context_dataupdatedictr   r(   r%   r9   )r   r*   r2   r+   s      r    r;   zSignupView.get_context_data7   sM    J6@@

%dll3((00	
 
r!   c                     t        d      S )Nsocialaccount_connections)r   r   s    r    get_authenticated_redirect_urlz)SignupView.get_authenticated_redirect_urlA   s    233r!   )__name__
__module____qualname__r   r   account_settingsTEMPLATE_EXTENSIONtemplate_namer   r'   r/   r1   r6   r;   r@   __classcell__r+   s   @r    r   r      sA     J+.>.Q.QQMMJ


Q4r!   r   c                   *    e Zd Zdej                  z   Zy)LoginCancelledViewzsocialaccount/login_cancelled.NrA   rB   rC   rD   rE   rF   r:   r!   r    rJ   rJ   H   s    (+;+N+NN r!   rJ   c                   *    e Zd Zdej                  z   Zy)LoginErrorViewz#socialaccount/authentication_error.NrK   r:   r!   r    rM   rM   Q   s    -0@0S0SS r!   rM   r'   )namec                   f     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.r?   c                 L    t        t        j                  d| j                        S )N
disconnectr   r   s    r    r   zConnectionsView.get_form_class`   s    l00,PPr!   c                 J    t         t        |          }| j                  |d<   |S )Nr(   )r&   rP   r1   r(   )r   r*   r+   s     r    r1   zConnectionsView.get_form_kwargsc   s%    =? LLyr!   c                 J    |j                          t        t        |   |      S r-   )saver&   rP   r6   )r   r5   r+   s     r    r6   zConnectionsView.form_validh   s    		_d6t<<r!   c                    g }t         j                  j                  | j                  j                        D ]I  }|j                         }|j                  |j                  |j                  |j                         d       K d|iS )N)user)idproviderrN   socialaccounts)
r   objectsfilterr(   rW   get_provider_accountappendpkrY   to_str)r   account_datar9   provider_accounts       r    get_ajax_datazConnectionsView.get_ajax_datal   s    $,,339J9J3K 	G&;;=!** ' 0 0,335	 !,//r!   )rA   rB   rC   rD   rE   rF   r   r   r   success_urlr   r1   r6   rc   rG   rH   s   @r    rP   rP   Z   s9    03C3V3VVMJ:;KQ
=0r!   rP   N)+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.socialaccount.formsr   r   allauth.socialaccount.internalr   allauth.socialaccount.modelsr   r9   r   rD   account.viewsr   r   r   utilsr    adapterr   r   as_viewr   rJ   login_cancelledrM   login_errorrP   connectionsr:   r!   r    <module>rw      s    9 ; , - 4 2 . B 0 6 6 
 #   *4"#	*4Z 
			  %,,.\  $$& .z205x 0 30> %%'r!   