U
    -h)\                     @   sF   d dl Z d dlT d dlmZ d dlT d dlmZ G dd dejZdS )    N)*)
cmf_person)fieldsc                C   @   s
  e Zd ZdZdZdZdgZdZdZdddd	d
dddddddddddddddddddddd d!d"d#d$d%d&d'd(d)d*d+d,d-d.d/d0d1d2d3d4d5d6d7d8d9d:d;d<d=d>d?d@dAdBdCdDdEdFdGdHhCZ	ddd	dd*d)d(dIdJddd d!d"d#d$d%d&dddddddKdLdMdNddddddOd'd
ddPdQdRdSdTdUdVdWdXdYdZh0Z
d[hZejjd\ Zdd.dddgd]d
d.dddd	dddd'g
d)d*dd2gd^d_ddddddddddddd!d gd`dad"d#d$d%d&dgd`dbd.ddOdcdddedfgd`dgdhdidjdkdldmdcdngdodpdqdrdsdtgd^dudvdwdxdydzgd`d{dRdSdTdUdVdWgdMdLdNgd^d|dEdFdGdHgd`d}d1d~d[dd9d4dndkdldg
d`g	dZdZd_ZejjedddgdZejjejjdddZejjejjdddZejjejjdddZejjejjdddZejjejjdddZG dd dejjZejjejj dddddddZ!ejjejj"dddddZ#ejjejj$ddgd4gddZ%ejjejj"dddddZ&ejjejj'dddZ(ejjejj'ddZ)ejjejj*dddddZ+ejjejj*dddddddZ,ejjejj-dddddZ.ejjej/ddIdJdZ0ee1ddddZ2ee1ddddZ3ejjejj4dddAgdZ5G dd dejj6Z6ee4ddddZ7ejjejj*dddddZ8ejjejj'dddddZ9ejjejjddddZ:ejjejj dddddddZ;ejjejj4dddddZ<ejjejj4ddddZ=ejjejj>dddZ?ejjejjdddZ@ejjejj>dddZAejjejjdddZBejjejjCdddZDejjejjdddZEejjejjFddddɍZGdd˄ ZHejjejjIdeHd͍ZJddτ ZKejjejjIdeKd͍ZLdd҄ ZMejjejjIdeMd͍ZNddՄ ZOejjejjIdeOd͍ZPdd؄ ZQejjejjIdeQd͍ZRddۄ ZSejjejjIdeSd͍ZTddބ ZUejjejjIdeUd͍ZVdd ZWejjejjIdeWd͍ZXdd ZYejjejjIdeYd͍ZZdd Z[ejjejjIde[d͍Z\dd Z]ejjejjIde]d͍Z^dd Z_ejjejjIde_d͍Z`dd ZaejjejjIdead͍ZbejejcdddddddZdejjejjddZeejej$ddgddZfejej"dddddZgejej"dddd ZhejejidddZjejej*dddZkejej*dddZlejej*ddddZmejej"dd	d
Znejjejj-ddd dZoejejiddddZpejej*ddddZqejjejj*ddddZrejjejj*dddddZsejjejj*dddddZtejjejj*dddddZuejjejj*dddddZvejjejj*dddddZwejjejj*dddddZxejjejj*dddddZyejjejjFddddZzejjejj4ddddZ{ejjejj4ddddZ|ejjejj>d dZ}ejjejj>d!dZ~ejjejj>d"dZejjejj>d#dZejjejj*d$dddZejjejjFd%dddd&Zejej d'dgd(ddd)Zejej*d*ddd+Zejej*d,dd-Zejej*d.dd-Zejej*d/dd-Zejej*d0dd-Zejej*d1dd-Zejej*d2dd-Zejej*d3dd-Zd4S (5  	CmfPersonZPersonstructZPRSnameu    (В ОТПУСКЕ)u    (НЕ РАБОТАЕТ)
first_name	last_namesecond_nameavatar_filenametextZext_idcodeprimary_rolerolescompanywork_positionactivityemailemail_2phonephone_mobilephone_internalphone_2phone_assistantskypewhatsapptelegramviber	messengerslackzoomsnapchatlinkedinfacebookvkok	instagrambirthdayonline_statuson_vacationvacation_intervalZcmf_deletedsystemZordernoZloginZ
is_supportZis_adminZdoes_not_workcalendarZcmf_created_atidparentZ	parent_idZprojectZ
project_idZ	cmf_ownerZcmf_owner_idZcommentsZperm_parent_ownerZperm_parent_owner_idZperm_inherit_acl_idZperm_effective_acl_idZ%perm_security_level_allowed_ids_cacheZ
user_localZdeleted_loginZ	old_loginZperm_parent_idclient_job_nameclient_divisionclient_departmentclient_officevacation_startvacation_enddefault_channel
notify_smsnotify_email	notify_os
ip_addressZwebhook_token_hashZapi_token_hashemail_if_spectatoremail_if_authoremail_if_owneremail_if_responsibleemail_if_mentionsemail_if_self_changesZ
two_factorZtwo_factor_idZattachmentsno_staff_control_today)VACATION_SUFFIXDOES_NOT_WORK_SUFFIXZ_main)r   Zcol1Zcol2u   Контакты)r   r   u   Социальные сетиu!   Сетевые реквизитыZrg_member_ofuidgidauth_optionsu   Безопасностьu%   button:action=ssh_keys:SSH ключиu;   button:action=change_password:Изменить парольuA   button:rpc=CmfPerson.reset_password:Сбросить парольuQ   button:rpc=CmfPerson.generate_api_token:Сгенерировать API токенuY   button:rpc=CmfPerson.generate_webhook_token:Сгенерировать Webhook токенservicedesk_allowuG   link:/?popup=1&obj=${id}&uiModule=aclStruct:Настройки правztwo_factor.two_factor_optpassword_must_changepassword_changed_dateauth_inactive_blockuL   button:nav=struct/Person-2FA/${id}:Настройка авторизацииuO   button:rpc=CmfPerson.unblock:Снять временную блокировкуu   Лицензииlic_evaprojectlic_evawikilic_evaservicedesk
lic_evagitlic_evatestu)   Настройка уведомленийu   Поля SDZ_addonno_staff_controltime_tracker_no_controlemployee_number)Zui_list_fieldsZui_group_fieldsu   Физ. лицаu"   Информация обо мнеTZgin_trgm)captionindexZindex_usingZEmail)rR   rS   u   Телефонu   Фамилияu   Имяu   Отчествоc                   @   s   e Zd ZdZdS )zCmfPerson.nameFN)__name__
__module____qualname__readonly rX   rX   %./modules/person/fields/cmf_person.pyr     s   u   ЧатыZCmfChatGroupZ	executorsF)rR   modelbackrefrightvisibleno_aclu   ДолжностиZCmfRoleZperson)rR   rZ   r[   r\   u#   Основная должность)rR   modelsoptions_list_paramsZlinkableu,   Ответственный в задачахZCmfTaskZresponsible)rR   rZ   r[   r]   zLinux User ID)rR   uniquezLinux Group ID)rR   u.   Не контролировать работу)rR   nullabledefaultrS   u   Сейчас в отпуске)rR   rW   r]   rc   rb   rS   u   Статус)rR   ZvirtualrW   r]   u   В отпуске)rR   Zstart_field_nameZend_field_nameu   Начало отпуска)rR   r]   rS   u!   Окончание отпускаuA   Официально трудоустроен в компанииZ
CmfCompany)rR   rZ   r`   c                   @   s   e Zd ZdZdZdS )zCmfPerson.codeFhashN)rT   rU   rV   r]   truncaterX   rX   rX   rY   r   `  s   u7   Вид деятельности по-умолчаниюZCmfActivity)rR   rZ   rb   u)   Нарушитель распорядка)rR   r]   rc   rS   uJ   Время взятия последнего обещанного часаr   )rR   r]   rc   r^   u#   Причина блокировки)rR   r]   r^   ZCmfChatTopicu<   DEPRECATED Проект/Раздел по-умолчаниюZ
CmfProject)rR   rZ   r^   r]   u   Моя папкаZ	CmfFolder)rR   rZ   r]   u/   Внутренний телефон(текст)u(   Мобильный/СМС телефонu-   Резервный контакт(текст)u#   Телефон ассистентаu   IP адресu"   Дополнительный Emailu   День рожденияZCmfBirthday)rR   ZwidgetrS   c                 C   s   |S NrX   selfvaluerX   rX   rY   
_zoom_cast  s    zCmfPerson._zoom_castZZoom)rR   castc                 C   s   |S rf   rX   rg   rX   rX   rY   _snapchat_cast  s    zCmfPerson._snapchat_castZSnapchatc                 C   s   |S rf   rX   rg   rX   rX   rY   _linkedin_cast  s    zCmfPerson._linkedin_castZLinkedInc                 C   s   |S rf   rX   rg   rX   rX   rY   _facebook_cast  s    zCmfPerson._facebook_castZFacebookc                 C   s   |S rf   rX   rg   rX   rX   rY   _vk_cast  s    zCmfPerson._vk_castZVKc                 C   s   |S rf   rX   rg   rX   rX   rY   _ok_cast  s    zCmfPerson._ok_castu   Одноклассникиc                 C   s$   |r | ds |d}d| }|S )Nzhttps://www.instagram.com/@
startswithlstriprg   rX   rX   rY   _instagram_cast  s    
zCmfPerson._instagram_castZ	Instagramc                 C   s   |r| dsd| d }|S )Nzskype:z?chat)rs   rg   rX   rX   rY   _skype_cast  s    zCmfPerson._skype_castZSkypec                 C   s   |S rf   rX   rg   rX   rX   rY   _slack_cast  s    zCmfPerson._slack_castZSlackc                 C   s(   |r$| ds$tdd|}d| }|S )Nzhttps://wa.me/z[^+0-9]+ )rs   resubrg   rX   rX   rY   _whatsapp_cast  s    zCmfPerson._whatsapp_castZWhatsappc                 C   s   |S rf   rX   rg   rX   rX   rY   _messenger_cast  s    zCmfPerson._messenger_castZ	Messengerc                 C   s   |S rf   rX   rg   rX   rX   rY   _viber_cast  s    zCmfPerson._viber_castZViberc                 C   s$   |r | ds |d}d| }|S )Nzhttps://t.merq   zhttps://t.me/rr   rg   rX   rX   rY   _telegram_cast  s    
zCmfPerson._telegram_castZTelegramZCmfDealu   СделкиZcontacts)rZ   rR   r\   r[   r]   r^   u'   Занимаемая должностьZCmfWhatsappZ
CmfMailboxuM   Канал для отправки сообщений по умолчанию)r_   rR   ZCmfChatTopicUnreadMessageu6   Непрочитанные сообщения чата)rZ   rR   r]   r[   u   СостоянияZCmfPersonVar)rR   rZ   r[   u.   Имя аватара пользователя)rR   r]   u   Уведомления по SMS)rR   rc   u!   Уведомления по emailu   Уведомления ОС)rR   rc   rb   u.   Raw данные внешней системыZCmfAuthPluginData)rR   rZ   u)   Настройка авторизацииc                   C   s   t  S rf   )dictrX   rX   rX   rY   <lambda>      zCmfPerson.<lambda>zEmployee Number)rR   rS   ra   u1   Отключить контроль time trackerau   Доступ в Service Deskuv   Оповещать по email если отслеживаю или связан с задачей/документом)rR   r]   rc   rb   uD   Оповещать по email если являюсь авторомuY   Оповещать по email если являюсь владельцем объектаuN   Оповещать по email если являюсь исполнителемuB   Оповещать по email если меня упомянулиuD   Оповещать по email если вношу измененияua   Требуется смена пароля при следующем входе в системуu3   Дата последней смены пароля)rR   r]   rb   u!   Рабочий календарьZCmfCalendaru.   Должность клиента (Depricated)ZCmfClientJobu!   Должность клиентаu)   Подразделение клиентаu%   Департамент клиентаu   Офис клиентаuF   Разблокировать рабочее место на 1 деньuE   Рабочее место заблокировано системой)rR   r]   rb   rW   u,   Блокирующие deadline задачиZstaff_control_blocked_persons)rR   r_   r[   leftrW   u6   Заблокирован за неактивность)rR   rb   rc   u   Лицензия Project)rR   rW   u   Лицензия Wikiu   Лицензия ServiceDesku   Лицензия Gitu   Лицензия Testu   Лицензия EvaCI/CDu   Лицензия EvaRMSN)rT   rU   rV   Zui_nameZ	ui_moduleZcode_prefixZorderingrA   rB   Zacl_static_public_fieldsZacl_static_self_write_fieldsZacl_static_user_write_fieldsr   r   Zui_meta_skipZui_formZverbose_nameZverbose_name_pluralcmfr   ZFieldZ	CmfMarkupr   ZCmfEmailr   ZCmfPhoner   ZCmfStr64r	   r   r
   r   ZCmfGenericM2MZchat_groupsZ
CmfBackrefr   ZCmfGenericRelationr   Zresponsible_tasksZCmfIntrC   rD   ZCmfBoolrO   r)   ZCmfJsonr(   ZCmfDateRanger*   ZCmfDater3   r4   ZCmfRelationr   r   r   Zhas_penaltyZpenalty_promise_hourZpenalty_reasonZchat_topicsZdefault_projectZhome_folderZ	CmfStr256r   r   r   r   ZCmfStr32r9   r   ZCmfDateTimer'   rj   ZCmfUrlShortr    rl   r!   rm   r"   rn   r#   ro   r$   rp   r%   ru   r&   rv   r   rw   r   r{   r   r|   r   r}   r   r~   r   ZCmfM2MZdealsr   r5   Zchat_topic_unread_messagesZ
person_varZCmfStrr   r6   r7   r8   Zauth_plugin_datarE   rQ   rP   rF   r:   r;   r<   r=   r>   r?   rG   rH   r,   Z
client_jobr/   r0   r1   r2   r@   Zstaff_control_blocked_dateZstaff_control_blocked_tasksrI   rJ   rK   rL   rM   rN   Zlic_evacicdZ
lic_evarmsrX   rX   rX   rY   r      s           H                                      		
 
	        	                                           
	r   )ry   Z
cmf.fieldsZ
cmf.modelsr   Zcmf.includer   r   r   rX   rX   rX   rY   <module>   s
   