U
    e)L                     @   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                /   @   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/d0d1d2d3d4h/Z	e
jjd5 Zdd6dd"d7gd8d)d6dd	ddd9d7d:d(g
dd
d;d<gd=d>dd"d#d$d%d&ddddddddgd?d@ddddddgd?dAd6dd'dBdCdDdEgd?dFdGdHdIdJdBdKgdLdMdNdOgd=dPd-d.d/d0d1d2gd dd!gd=dQdRdSdTdUgd?dVdWdXdYdZdKdHdId[gd?gd\Zd]Zd>Zejjed^d_d`gdaZejjejjdbd_dcZejjejjddd_dcZejjejjded_dcZejjejjdfd_dcZejjejjdgd_dcZG dhd de
jjZejjejjdidjdkd_dld_dmZejjejj dndodpd_dqZ!ejjejj"drdogdsgd_dtZ#ejjejj dudvdwdldxZ$ejjejj%dyd_dzZ&ejjejj%d{d|Z'ejjejj(d}dldld_d~Z)ejjejj(dd_dldldld_dZ*ejjejj+dd_d_dldZ,ejjej-ddddZ.ee/ddld_dZ0ee/ddld_dZ1ejjejj2dddgdZ3G dd de
jj4Z4ee2ddd_dZ5ejjejj(ddldld_dZ6ejjejj%ddldd_dZ7ejjejjddld_dZ8ejjejjdiddkd_dld_dmZ9ejjejj2ddd_dZ:ejjejj2dddldZ;ejjejj<dd_dcZ=ejjejjdd_dcZ>ejjejj<dd_dcZ?ejjejjdd_dcZ@ejjejjAdd_dcZBejjejjdd_dcZCejjejjDdd_dcZEdd ZFejjejjGdeFdZHdd ZIejjejjGdeIdZJdd ZKejjejjGdeKdZLdd ZMejjejjGdeMdZNdd ZOejjejjGdeOdZPdd ZQejjejjGdeQdZRdd ZSejjejjGdeSdZTdd ZUejjejjGdeUdZVdd ZWejjejjGdeWdZXddÄ ZYejjejjGdeYdZZddƄ Z[ejjejjGde[dZ\ddɄ Z]ejjejjGde]dZ^dd̄ Z_ejjejjGde_dZ`ejejaddd_ddld_dэZbejjejjdd|Zcejej"ddgdd֍Zdejej dddldpdٍZeejej dddpd܍ZfejejgddldލZhejej(ddldZiejej(dd_dZjejej(dd_dldZkejej dddZlejjejj+ddd dZmejejgdd_d_dZnejej(ddldldZoejjejj(ddldldZpejjejj(dd_d_dldZqejjejj(dd_dldldZrejjejj(dd_d_dldZsejjejj(dd_d_dldZtejjejj(dd_d_dldZuejjejj(dd_dldldZvejjejj(dd_dldldZwejjejjDddld_dZxejjejj2ddd_dZyejjejj2dddldZzejjejj<dd|Z{ejjejj<dd|Z|ejjejj<dd|Z}ejjejj<dd|Z~d S (  	CmfPersonZPersonstructZPRSnameu    (В ОТПУСКЕ)u    (НЕ РАБОТАЕТ)
first_namesecond_name	last_namevacation_intervalon_vacationonline_statusvacation_startvacation_endemailemail_2zoomsnapchatlinkedinfacebookvkok	instagramskypeslackwhatsapp	messengervibertelegramdefault_channel
notify_smsnotify_email	notify_osphonephone_internalphone_mobilephone_2phone_assistant
ip_addressbirthdayavatar_filenametextZ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_id)VACATION_SUFFIXDOES_NOT_WORK_SUFFIXZloginprimary_roleZ_maincompanyrolesactivitycalendar)r   Zcol1Zcol2u   Контакты)r   r   u   Социальные сетиu!   Сетевые реквизитыZrg_member_ofuidgidauth_optionsu   Безопасностьu;   button:action=change_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_dateuL   button:nav=struct/Person-2FA/${id}:Настройка авторизацииu)   Настройка уведомленийu   Поля SDclient_job_nameclient_divisionZclient_departmentclient_officeZ_addonZdoes_not_workno_staff_controltime_tracker_no_controlZ	cmf_owneremployee_number)Zui_list_fieldsZui_group_fieldsu   Физ. лицаu"   Информация обо мнеTZgin_trgm)captionindexZindex_usingZEmail)rE   rF   u   Телефонu   Фамилияu   Имяu   Отчествоc                   @   s   e Zd ZdZdS )zCmfPerson.nameFN)__name__
__module____qualname__readonly rK   rK   %./modules/person/fields/cmf_person.pyr      s   u   ЧатыZCmfChatGroupZ	executorsF)rE   modelbackrefrightvisibleno_aclu   ДолжностиZCmfRoleZperson)rE   rM   rN   rO   u#   Основная должностьid)rE   modelsoptions_list_paramsZlinkableu,   Ответственный в задачахZCmfTaskZresponsible)rE   rM   rN   rP   zLinux User ID)rE   uniquezLinux Group ID)rE   u.   Не контролировать работу)rE   nullabledefaultrF   u   Сейчас в отпуске)rE   rJ   rP   rW   rV   rF   u   Статус)rE   ZvirtualrJ   rP   u   В отпуске)rE   Zstart_field_nameZend_field_nameu   Начало отпуска)rE   rP   rF   u!   Окончание отпускаuA   Официально трудоустроен в компанииZ
CmfCompanyZ
user_local)rE   rM   rT   c                   @   s   e Zd ZdZdZdS )zCmfPerson.codeFhashN)rG   rH   rI   rP   truncaterK   rK   rK   rL   code  s   rZ   u7   Вид деятельности по-умолчаниюZCmfActivity)rE   rM   rV   u)   Нарушитель распорядка)rE   rP   rW   rF   uJ   Время взятия последнего обещанного часаr   )rE   rP   rW   rQ   u#   Причина блокировки)rE   rP   rQ   ZCmfChatTopicu<   DEPRECATED Проект/Раздел по-умолчаниюZ
CmfProject)rE   rM   rQ   u   Моя папкаZ	CmfFolder)rE   rM   rP   u/   Внутренний телефон(текст)u(   Мобильный/СМС телефонu-   Резервный контакт(текст)u#   Телефон ассистентаu   IP адресu"   Дополнительный Emailu   День рожденияc                 C   s   |S NrK   selfvaluerK   rK   rL   
_zoom_cast.  s    zCmfPerson._zoom_castZZoom)rE   castc                 C   s   |S r[   rK   r\   rK   rK   rL   _snapchat_cast3  s    zCmfPerson._snapchat_castZSnapchatc                 C   s   |S r[   rK   r\   rK   rK   rL   _linkedin_cast:  s    zCmfPerson._linkedin_castZLinkedInc                 C   s   |S r[   rK   r\   rK   rK   rL   _facebook_castA  s    zCmfPerson._facebook_castZFacebookc                 C   s   |S r[   rK   r\   rK   rK   rL   _vk_castH  s    zCmfPerson._vk_castZVKc                 C   s   |S r[   rK   r\   rK   rK   rL   _ok_castM  s    zCmfPerson._ok_castu   Одноклассникиc                 C   s$   |r | ds |d}d| }|S )Nzhttps://www.instagram.com/@
startswithlstripr\   rK   rK   rL   _instagram_castT  s    
zCmfPerson._instagram_castZ	Instagramc                 C   s   |r| dsd| d }|S )Nzskype:z?chat)rh   r\   rK   rK   rL   _skype_cast_  s    zCmfPerson._skype_castZSkypec                 C   s   |S r[   rK   r\   rK   rK   rL   _slack_castg  s    zCmfPerson._slack_castZSlackc                 C   s(   |r$| ds$tdd|}d| }|S )Nzhttps://wa.me/z[^+0-9]+ )rh   resubr\   rK   rK   rL   _whatsapp_castl  s    zCmfPerson._whatsapp_castZWhatsappc                 C   s   |S r[   rK   r\   rK   rK   rL   _messenger_castu  s    zCmfPerson._messenger_castZ	Messengerc                 C   s   |S r[   rK   r\   rK   rK   rL   _viber_castz  s    zCmfPerson._viber_castZViberc                 C   s$   |r | ds |d}d| }|S )Nzhttps://t.merf   zhttps://t.me/rg   r\   rK   rK   rL   _telegram_cast  s    
zCmfPerson._telegram_castZTelegramZCmfDealu   СделкиZcontacts)rM   rE   rO   rN   rP   rQ   u'   Занимаемая должностьZCmfWhatsappZ
CmfMailboxuM   Канал для отправки сообщений по умолчанию)rS   rE   ZCmfChatTopicUnreadMessageu6   Непрочитанные сообщения чата)rM   rE   rP   rN   u   СостоянияZCmfPersonVar)rE   rM   rN   u.   Имя аватара пользователя)rE   rP   u   Уведомления по SMS)rE   rW   u!   Уведомления по emailu   Уведомления ОС)rE   rW   rV   u.   Raw данные внешней системыZCmfAuthPluginData)rE   rM   u)   Настройка авторизацииc                   C   s   t  S r[   )dictrK   rK   rK   rL   <lambda>      zCmfPerson.<lambda>zEmployee Number)rE   rF   rU   u1   Отключить контроль time trackerau   Доступ в Service Deskuv   Оповещать по email если отслеживаю или связан с задачей/документом)rE   rP   rW   rV   uD   Оповещать по email если являюсь авторомuY   Оповещать по email если являюсь владельцем объектаuN   Оповещать по email если являюсь исполнителемuB   Оповещать по email если меня упомянулиuD   Оповещать по email если вношу измененияua   Требуется смена пароля при следующем входе в системуu3   Дата последней смены пароля)rE   rP   rV   u!   Рабочий календарьZCmfCalendaru.   Должность клиента (Depricated)ZCmfClientJobu!   Должность клиентаu)   Подразделение клиентаu%   Департамент клиентаu   Офис клиентаN)rG   rH   rI   Zui_nameZ	ui_moduleZcode_prefixZorderingr2   r3   Zacl_static_self_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
CmfBackrefr6   ZCmfGenericRelationr4   Zresponsible_tasksZCmfIntr9   r:   ZCmfBoolrB   r   ZCmfJsonr   ZCmfDateRanger   ZCmfDater   r   ZCmfRelationr5   rZ   r7   Zhas_penaltyZpenalty_promise_hourZpenalty_reasonZchat_topicsZdefault_projectZhome_folderZ	CmfStr256r$   r%   r&   r'   ZCmfStr32r(   r   ZCmfDateTimer)   r_   ZCmfUrlShortr   ra   r   rb   r   rc   r   rd   r   re   r   rj   r   rk   r   rl   r   rp   r   rq   r   rr   r   rs   r   ZCmfM2MZdealsZwork_positionr   Zchat_topic_unread_messagesZ
person_varZCmfStrr*   r    r!   r"   Zauth_plugin_datar;   rD   rC   r<   r,   r-   r.   r/   r0   r1   r=   r>   r8   Z
client_jobr?   r@   Zclient_departamentrA   rK   rK   rK   rL   r      s                                        			
z
	        	                                          r   )rn   Z
cmf.fieldsZ
cmf.modelsr   Zcmf.includerw   r   r   rK   rK   rK   rL   <module>   s
   