
    bEf                     h    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                   B    e Zd ZdZej        j        d             Zd ZdS )SyncAccountsViewz/sync_accountsc                 $   	 t                               t          j                  }|                    d          s|                     |          S t          t          j        |d                   }|                    dg           }|                    di           } ||i |}t          
                    |          S # t          $ rG}t                              |           |                     dt          |                    cY d}~S d}~ww xY w)uB   
        Прокси вызова методов CmfAuth
        methodargskwargsi  N)jsonloadsrequestdatagetold_syncgetattrmodelsCmfAuthcmfutil
dumps_json	Exceptionlogging	exception_errorstr)selfr   r	   method_argsmethod_kwargsresultes          %./modules/auth/views/sync_accounts.pypostzSyncAccountsView.post   s    
	,::gl++D88H%% +}}T***V^T(^<<F((62..K HHXr22MV[:M::F%%f--- 	, 	, 	,a   ;;sCFF++++++++	,s%   AB> A-B> >
D<D
D
Dc           	         |d         }	 |d         D ]}t          |d                                                   }t          j                            |          }|s$t          d                    ||                     p|j        j        ri |_        g |j        |<   |d         rLt          d                    ||                     |j        |= d|j        _	        |
                                 |d	         D ]b}||j        |         v rt          d
                    |||                     |j        |                             |           d|j        _	        ct                              d|            t                              d|j                    |
                                 t                              d|j                    n'# t          $ r}t!          |           Y d}~dS d}~ww xY wt!                       dS )u[   
        Старая синхронизация для совместимости
        org_namepersonslogin)r&   uM   SYNC_ACCOUNTS Не найден акк {} (о запросу от eva-app {})cmf_deleteduF   SYNC_ACCOUNTS Пользователь {} удален из eva-app {}Trg_member_ofuX   SYNC_ACCOUNTS Добавляем пользователю {} права {} в eva-app {}zperson_dict=zuser.groups=zuser.scope=NzAccounts sync failzAccounts sync successfully)r   lowerr   r   r   printformatgroupsis_null
is_changedsaveappendgdebugscoper   r   )r   r   r$   person_dictr&   user
group_namer    s           r!   r   zSyncAccountsView.old_sync    sU    
# 	(#I 4 4K0117799~)))66 ippqv  yA  B  B  C  C  C;& %"$DK(*H%}- biijoqyzz{{{H--1DK*IIKKK"-n"= 2 2J!T[%::: ryyz  BL  NV  W  WX X XK)00<<<-1DK**4{445554t{44555		2dj22333394:  	( 	( 	(!''''''	( 	++s   GG 
G: G55G:N)	__name__
__module____qualname____url__cmfviewsactionr"   r        r!   r   r   
   sG        GY, , ,$', ', ', ', ',r?   r   )shlex	cmf.viewsr;   cmf.data_providers.baser   cmf.includemodules.auth.views.responser   r<   BaseViewr   r>   r?   r!   <module>rF      s         1 1 1 1 1 1     5 5 5 5 5 5=, =, =, =, =,sy)= =, =, =, =, =,r?   