
    1*)iK                     p    d dl Z d dlZd dlZd dlmZ d dlT d dlm	Z	  G d dej
        j        e	          ZdS )    N)commit_all_ds)*)ResponseMixinc                   R    e Zd ZdZej        j        d             Zed             Z	dS )
InviteViewz/invitec                    t           j        d         }t          j                            |g d          }|s$|                     ddt          d                    S |                                rH|                    d           t                       |                     ddt          d	                     	 t                                          5  |                    d           d
d
d
           n# 1 swxY w Y   t                              |          }|j        rt          j                    |j        k    rd                    t"          j                            t)          |j        j                            t"          j                            t)          |          d                    }t/          t          |                    }nt/          t          |                    }|                     ||          S # t2          $ rU}t4                              t)          |                     |                     d|t          d                    cY d
}~S d
}~ww xY w)ua    Сюда переходят люди по ссылке из письма-приглашения h)scopereset_password_expirespassword_expires_must_changelogin)reset_password_hashfieldsi  znot authz/auth/signin?invite=failT)resetz/auth/signin?invite=expiredNzF/auth/profile?action=change_password&login={login}&next_url={next_url} )safe)r   next_url)requestvaluesmodelsCmfAuthget_errorredirectreset_pass_is_expiredreset_pass_set_datar   cmfutildisable_aclr   _choose_endpointr   timeformaturllibparsequotestrr   valuemake_response_ok	Exceptionloggingwarning)selfr   authendpointchange_password_urlresponsees          ./modules/auth/views/invite.pyr   zInviteView.get   sr    &nS1~!! 3___ " 
 
  	W;;sJ9T0U0UVVV%%'' 	S$$4$000OOOKKZ2P)Q)QRRR	N$$&& 5 5((t(4445 5 5 5 5 5 5 5 5 5 5 5 5 5 5!22488H0 =TY[[4Cd5d5d&n&u&u ,,,S1A-B-BCC#\//HB/GG 'v ' '# )2E)F)FGG((););<<88Hd+++ 	N 	N 	NOOCFF###;;sAx0K'L'LMMMMMMMM	NsD   9H C5)H 5C99H <C9=DH 
I"A
II"I"c                    | j         j        s| j         j        sdS d| j         j        vr=d| j         j        v r.t          j                            | j         j                            d          d                   rt          j        rdt          j        z   dz   S | j         j                            d          d         t          j        z   dk    rdS | j         j                            d          d         t          j        k    r+d| j         j                            d          d         z   dz   S d| j         j                            d          d         z   t          j        z   dz   S dS )	uI  
        Выбираем куда отправить приглашённого:
        - Список CRM, если их несколько
        - Адрес CRM, если она единственная в scope
        - Описание профиля (нет scope, полуневозможный случай)
        z/auth/profile :r   zhttps:///z'corp.noytech.comrumowsl10.ee.win.int.knz https://rumowsl10.ee.win.int.kn/)r
   is_nullr&   configAUTH_SESSION_COOKIE_DOMAIN
startswithsplitIS_BOX_VERSION)r-   s    r2   r   zInviteView._choose_endpoint-   sL    : 	iTZ%5 	i"?
(((SDJ4D-D-D0;;DJ<L<R<RSV<W<WXY<Z[[ L`f`u L!F$EEKKz%%c**1-0QQU~~~99z%%c**1-1RRR!DJ$4$:$:3$?$?$BBSHH
 0 6 6s ; ;A >>Abbehhhs    N)
__name__
__module____qualname____url__cmfviewsactionr   staticmethodr    r=   r2   r   r   
   sV        GYN N N>   \  r=   r   )r    urllib.parser"   	cmf.viewsrB   cmf.data_providers.baser   cmf.includemodules.auth.views.responser   rC   BaseViewr   rF   r=   r2   <module>rM      s             1 1 1 1 1 1     5 5 5 5 5 5: : : : :#] : : : : :r=   