<?php // этот модуль необходимо делать тольео для крупных проектов, для небольшых описание пунктов меню и файлов меню лучше делать в init.php
$__functions['init'][]      ='_aspmo_admin_vars' ;
$__functions['boot_admin'][] ='_aspmo_admin_boot' ;
//$__functions['alert'][]   ='_aspmo_admin_alert' ;
$__functions['install'][]	='_aspmo_install_modul' ;



function _aspmo_admin_vars() //
{   //$_SESSION['menu_admin_site']['Модули'][]=array('name'=>'Проекты','href'=>'editor_aspmo.php') ;
    //$_SESSION['menu_admin_site']['Модули'][]=array('name'=>'Счета на оплату','href'=>'editor_chet.php') ;

	//----------------------------------------------------------------------------------------------------------------------
	// описание пунктов верхнего меню админа сайта
	//-----------------------------------------------------------------------------------------------------------------------


	//----------------------------------------------------------------------------------------------------------------------
	// описание функций вывода полей объектов класса
	//-----------------------------------------------------------------------------------------------------------------------
    $_SESSION['descr_clss'][1]['fields']['doc_name']=array('type'=>'varchar(32)') ;

    $_SESSION['descr_clss'][20]['fields']['ext_info']=array('type'=>'serialize') ;
    $_SESSION['descr_clss'][20]['fields']['uid']=array('type'=>'varchar(32)') ;

    //-----------------------------------------------------------------------------------------------------

    //-----------------------------------------------------------------------------------------------------
    $_SESSION['descr_clss'][203]=array() ;
    $_SESSION['descr_clss'][203]['name']='Медицинский терминал' ;
    $_SESSION['descr_clss'][203]['parent']=200 ;
    $_SESSION['descr_clss'][203]['parent_to']=array(201,1) ;
    $_SESSION['descr_clss'][203]['child_to']=array(206) ;

    $_SESSION['descr_clss'][203]['fields']['id']=array('type'=>'int(11)') ;
    $_SESSION['descr_clss'][203]['fields']['video']=array('type'=>'int(1)','default'=>0) ;
    $_SESSION['descr_clss'][203]['fields']['tonometer']=array('type'=>'int(1)','default'=>0) ;
    $_SESSION['descr_clss'][203]['fields']['thermometer']=array('type'=>'int(1)','default'=>0) ;
    $_SESSION['descr_clss'][203]['fields']['alcotester']=array('type'=>'int(1)','default'=>0) ;
    $_SESSION['descr_clss'][203]['fields']['pupilometer']=array('type'=>'int(1)','default'=>0) ;
    $_SESSION['descr_clss'][203]['fields']['terminal_type']=array('type'=>'varchar(2)','default'=>'mt') ;
    $_SESSION['descr_clss'][203]['fields']['status']=array('type'=>'int(11)','default'=>0) ;
    $_SESSION['descr_clss'][203]['fields']['profil']=array('type'=>'indx_select','array'=>'IL_term_prof') ;
    $_SESSION['descr_clss'][203]['fields']['VS_IP']=array('type'=>'varchar(20)') ;
    $_SESSION['descr_clss'][203]['fields']['stream_name_1']=array('type'=>'varchar(32)') ;
    $_SESSION['descr_clss'][203]['fields']['stream_name_2']=array('type'=>'varchar(32)') ;
    $_SESSION['descr_clss'][203]['fields']['vers']=array('type'=>'varchar(32)') ;
    $_SESSION['descr_clss'][203]['fields']['assigned_version']=array('type'=>'varchar(32)') ;
	$_SESSION['descr_clss'][203]['fields']['zone_id']=array('type'=>'int(11)') ;
	$_SESSION['descr_clss'][203]['fields']['ext_info']=array('type'=>'serialize') ;
	$_SESSION['descr_clss'][203]['fields']['devices']=array('type'=>'serialize') ;


    // поля, используемые только для виртуальных терминалов
    $_SESSION['descr_clss'][203]['fields']['virt']=array('type'=>'int(1)','default'=>0) ;
    $_SESSION['descr_clss'][203]['fields']['virt_status']=array('type'=>'int(11)') ;
    $_SESSION['descr_clss'][203]['fields']['virt_time']=array('type'=>'timedata') ;

    $_SESSION['descr_clss'][203]['index']['id']='id' ;

    $_SESSION['descr_clss'][203]['index']['clss']='clss' ;

    $_SESSION['descr_clss'][203]['options']['create_by_list_default_name']='ip' ;

    //$_SESSION['descr_clss'][203]['fields']['owner']=array('type'=>'int(11)') ;
    //$_SESSION['descr_clss'][203]['list']=$_SESSION['descr_clss'][200]['list'] ;
    $_SESSION['descr_clss'][203]['list']['field']['enabled']=array('title'=>'статус') ;
    $_SESSION['descr_clss'][203]['list']['field']['id']=array('title'=>'id') ;
    $_SESSION['descr_clss'][203]['list']['field']['obj_name']=array('title'=>'Название') ;
    $_SESSION['descr_clss'][203]['list']['field']['ip']=array('title'=>'IP') ;
    $_SESSION['descr_clss'][203]['list']['field']['profil']=array('title'=>'Профиль') ;
    $_SESSION['descr_clss'][203]['list']['field']['terminal_type']=array('title'=>'terminal_type') ;
    $_SESSION['descr_clss'][203]['list']['field']['status']=array('title'=>'status') ;
    $_SESSION['descr_clss'][203]['list']['field']['video']=array('title'=>'video') ;
    $_SESSION['descr_clss'][203]['list']['field']['tonometer']=array('title'=>'tonometer') ;
    $_SESSION['descr_clss'][203]['list']['field']['thermometer']=array('title'=>'thermometer') ;
    $_SESSION['descr_clss'][203]['list']['field']['alcotester']=array('title'=>'alcotester') ;
    $_SESSION['descr_clss'][203]['list']['field']['pupilometer']=array('title'=>'pupilometer') ;
    $_SESSION['descr_clss'][203]['list']['field']['VS_IP']=array('title'=>'IP видеосервера') ;
    $_SESSION['descr_clss'][203]['list']['field']['stream_name_1']=array('title'=>'stream 1') ;
    $_SESSION['descr_clss'][203]['list']['field']['stream_name_2']=array('title'=>'stream 2') ;

    $_SESSION['descr_clss'][203]['list']['field']['reboot']=array('title'=>'Reboot') ; // флаг что при следующей загрузке была перегазгужена сессия

    //$_SESSION['descr_clss'][203]['list']['field']['owner']=array('title'=>'Владелец') ;
    $_SESSION['descr_clss'][203]['list']['options']=array('no_icon_edit'=>1);


    $_SESSION['descr_clss'][203]['details']=$_SESSION['descr_clss'][200]['list'] ;


    $_SESSION['descr_clss'][206]['fields']['last_mo_event']=array('type'=>'int(11)') ;

    //-----------------------------------------------------------------------------------------------------
    /*
    $_SESSION['descr_clss'][204]['name']='РМ охраны' ;
    $_SESSION['descr_clss'][204]['parent']=200 ;
    $_SESSION['descr_clss'][204]['parent_to']=array(202) ;
    $_SESSION['descr_clss'][204]['list']=$_SESSION['descr_clss'][200]['list'] ;
    $_SESSION['descr_clss'][204]['details']=$_SESSION['descr_clss'][200]['list'] ;
    */
    //-----------------------------------------------------------------------------------------------------


    //-----------------------------------------------------------------------------------------------------

    $_SESSION['descr_clss'][242]=array() ;
    $_SESSION['descr_clss'][242]['name']='Пост печати' ;
    $_SESSION['descr_clss'][242]['parent']=0 ;
    $_SESSION['descr_clss'][242]['parent_to']=array(201,1) ;
    $_SESSION['descr_clss'][242]['child_to']=array(206) ;

    $_SESSION['descr_clss'][242]['fields']['obj_name']=array('type'=>'varchar(64)') ;
    $_SESSION['descr_clss'][242]['fields']['id']=array('type'=>'int(11)') ;
    $_SESSION['descr_clss'][242]['fields']['ip']=array('type'=>'varchar(21)') ;
    $_SESSION['descr_clss'][242]['fields']['printer']=array('type'=>'int(1)','default'=>0) ;
    $_SESSION['descr_clss'][242]['fields']['terminal_type']=array('type'=>'varchar(2)','default'=>'mt') ;  // нельзя чтобы отличалось от класса 203
    $_SESSION['descr_clss'][242]['fields']['status']=array('type'=>'int(11)','default'=>0) ;
    $_SESSION['descr_clss'][242]['fields']['VS_IP']=array('type'=>'varchar(20)') ;
    $_SESSION['descr_clss'][242]['fields']['stream_name_1']=array('type'=>'varchar(32)') ;
    $_SESSION['descr_clss'][242]['fields']['stream_name_2']=array('type'=>'varchar(32)') ;
    $_SESSION['descr_clss'][242]['fields']['vers']=array('type'=>'varchar(32)') ;
    $_SESSION['descr_clss'][242]['fields']['assigned_version']=array('type'=>'varchar(32)') ;
    // поля, используемые только для виртуальных терминалов
    $_SESSION['descr_clss'][242]['fields']['virt']=array('type'=>'int(1)','default'=>0) ;
    $_SESSION['descr_clss'][242]['fields']['virt_status']=array('type'=>'int(11)') ;
    $_SESSION['descr_clss'][242]['fields']['virt_time']=array('type'=>'timedata') ;
    $_SESSION['descr_clss'][242]['fields']['ext_info']=array('type'=>'serialize') ;

    $_SESSION['descr_clss'][242]['list']['field']['id']=array('title'=>'id') ;
    $_SESSION['descr_clss'][242]['list']['field']['obj_name']=array('title'=>'Название') ;
    $_SESSION['descr_clss'][242]['list']['field']['ip']=array('title'=>'IP') ;
    $_SESSION['descr_clss'][242]['list']['field']['terminal_type']=array('title'=>'terminal_type') ;
    $_SESSION['descr_clss'][242]['list']['field']['status']=array('title'=>'status') ;
    $_SESSION['descr_clss'][242]['list']['field']['printer']=array('title'=>'printer') ;
    $_SESSION['descr_clss'][242]['list']['field']['VS_IP']=array('title'=>'IP видеосервера') ;
    $_SESSION['descr_clss'][242]['list']['field']['stream_name_1']=array('title'=>'stream 1') ;
    $_SESSION['descr_clss'][242]['list']['field']['stream_name_2']=array('title'=>'stream 2') ;


    //$_SESSION['descr_clss'][242]['list']['field']['owner']=array('title'=>'Владелец') ;
    $_SESSION['descr_clss'][242]['details']=$_SESSION['descr_clss'][200]['list'] ;


    //-----------------------------------------------------------------------------------------------------
    $_SESSION['descr_clss'][250]['name']='Сессия медосмотра' ;
    $_SESSION['descr_clss'][250]['parent']=0 ;
    $_SESSION['descr_clss'][250]['no_show_in_tree']=0 ; // не показывать объекты класса в дереве
    $_SESSION['descr_clss'][250]['fields']['c_data']=array('type'=>'timedata','data_format'=>'d.m.y G:i') ; // время начала сенса
    $_SESSION['descr_clss'][250]['fields']['c_data_m']=array('type'=>'timedata','data_format'=>'d.m.y G:i') ; // дата для группировки по 1 минутe
    $_SESSION['descr_clss'][250]['fields']['c_data_h']=array('type'=>'timedata','data_format'=>'d.m.y G:i') ; // дата для группировки по 1 часу
    $_SESSION['descr_clss'][250]['fields']['c_data_d']=array('type'=>'timedata','data_format'=>'d.m.y G:i') ; // дата для группировки по дню
    $_SESSION['descr_clss'][250]['fields']['e_data']=array('type'=>'timedata','data_format'=>'d.m.y G:i') ; // время окончания сенса
    $_SESSION['descr_clss'][250]['fields']['group_id']=array('type'=>'int(11)') ; // код рабочей группы
    $_SESSION['descr_clss'][250]['fields']['terminal_id']=array('type'=>'varchar(32)') ; // код задействовоанного контроллера
    $_SESSION['descr_clss'][250]['fields']['terminal_pkey']=array('type'=>'int(11)') ; // код задействовоанного контроллера
    $_SESSION['descr_clss'][250]['fields']['creator_id']=array('type'=>'int(11)') ; // код аккаунта, создавшего данный МО (терминал, врач или фельдшер)
    $_SESSION['descr_clss'][250]['fields']['member_id']=array('type'=>'int(11)') ; // код работника
    $_SESSION['descr_clss'][250]['fields']['doctor_id']=array('type'=>'int(11)') ; // код дежурного врача
    $_SESSION['descr_clss'][250]['fields']['error']=array('type'=>'int(1)','default'=>0) ; // 0 - допуск к МО есть, 1 - недопуск к МО по причини клиента, 2 - недопуск к МО - не удалось опознпть
    $_SESSION['descr_clss'][250]['fields']['error_reason']=array('type'=>'varchar(255)') ; // причина аннулирования допуска
    $_SESSION['descr_clss'][250]['fields']['status']=array('type'=>'indx_select','array'=>'ARR_status_sess','index'=>'status') ; // этап медосмотра  1 - осмотр начат, 2 - осмотр завершен без ошибок, 3 - осмотр завершен с ошибками
    $_SESSION['descr_clss'][250]['fields']['message_terminal']=array('type'=>'varchar(32)') ;
    $_SESSION['descr_clss'][250]['fields']['terminal_comment']=array('type'=>'varchar(255)') ;
    //$_SESSION['descr_clss'][250]['fields']['message_esmo']=array('type'=>'varchar(32)') ;

    $_SESSION['descr_clss'][250]['fields']['model']=array('type'=>'indx_select','array'=>'ARR_model_osmotr','default'=>0) ; // модель медосмотра
    $_SESSION['descr_clss'][250]['fields']['mo_type']=array('type'=>'indx_select','array'=>'ARR_mo_type') ; // модель медосмотра
    //$_SESSION['descr_clss'][250]['fields']['session_id']=array('type'=>'int(11)','default'=>'0') ; // ID сессии МО
    $_SESSION['descr_clss'][250]['fields']['mo1_id']=array('type'=>'int(11)') ; // id первичного МО
    $_SESSION['descr_clss'][250]['fields']['dopusk']=array('type'=>'int(11)','array'=>'ARR_status_dopusk','default'=>0) ; // допуск 1-есть 2-нет 0-человек уклонился от получения допуска . Допуск не назначается автоматически, а производиться фельдшером или врачем
    $_SESSION['descr_clss'][250]['fields']['dopusk_user_id']=array('type'=>'int(11)') ; // кто задал допуск
    $_SESSION['descr_clss'][250]['fields']['dopusk_time']=array('type'=>'timedata','data_format'=>'d.m.y G:i') ; // время допуска
    $_SESSION['descr_clss'][250]['fields']['dopusk_time_end']=array('type'=>'timedata','data_format'=>'d.m.y G:i') ; // время окончания допуска
    $_SESSION['descr_clss'][250]['fields']['hand_check_user_id']=array('type'=>'int(11)') ; // кто задал допуск

    $_SESSION['descr_clss'][250]['fields']['tonometer']='int(1)' ;       // делать проверку давления
    $_SESSION['descr_clss'][250]['fields']['thermometer']='int(1)' ;     // делать проверку температуры
    $_SESSION['descr_clss'][250]['fields']['pupilometer']='int(1)' ;     // делать тест ЦНС
    $_SESSION['descr_clss'][250]['fields']['pulsometer']='int(1)' ;      // делать проверку пульса
    $_SESSION['descr_clss'][250]['fields']['alcotester']='int(1)' ;      // делать проверку алкоголя
    $_SESSION['descr_clss'][250]['fields']['vcheck']='int(1)' ;          // делать проверку внимания

    $_SESSION['descr_clss'][250]['fields']['systolic']='int(11)' ;       // значение давления
    $_SESSION['descr_clss'][250]['fields']['diastolic']='int(11)' ;      // значение давления
    $_SESSION['descr_clss'][250]['fields']['temperature']='float(10,2)' ;// значение температуры
    $_SESSION['descr_clss'][250]['fields']['pulse']='int(11)' ;          // значение пульса
    $_SESSION['descr_clss'][250]['fields']['alko']='int(1)' ;            // наличие алкоголя
    $_SESSION['descr_clss'][250]['fields']['alko_value']='float(10,2)' ; // величина алкоголя
    $_SESSION['descr_clss'][250]['fields']['narko']='varchar(128)' ;     // результат проверки нарко - текст
    $_SESSION['descr_clss'][250]['fields']['pp_id']='int(11)' ;     // id записи в таблице популометрии
    $_SESSION['descr_clss'][250]['fields']['v_time']='int(11)' ;        // проверка внимания - затраченное время
    $_SESSION['descr_clss'][250]['fields']['v_errors']='int(11)' ;       // проверка внимания - число ошибок
    $_SESSION['descr_clss'][250]['fields']['v_ball']='int(11)' ;       // проверка внимания - число баллов

    $_SESSION['descr_clss'][250]['fields']['res_s']=array('type'=>'int(11)','default'=>0) ;  // результат оценки давления
    $_SESSION['descr_clss'][250]['fields']['res_d']=array('type'=>'int(11)','default'=>0) ;  // результат оценки давления
    $_SESSION['descr_clss'][250]['fields']['res_t']=array('type'=>'int(11)','default'=>0) ;  // результат оценки температуры
    $_SESSION['descr_clss'][250]['fields']['res_p']=array('type'=>'int(11)','default'=>0) ;  // результат оценки пульса
    $_SESSION['descr_clss'][250]['fields']['res_a']=array('type'=>'int(11)','default'=>0) ;  // результат оценки алкоголя
    $_SESSION['descr_clss'][250]['fields']['res_n']=array('type'=>'int(11)','default'=>0) ;  // результат оценки пупилометрии
    $_SESSION['descr_clss'][250]['fields']['res_v']=array('type'=>'int(11)','default'=>0) ;  // результат оценки пупилометрии

    $_SESSION['descr_clss'][250]['fields']['comment']='text' ;  // комментарий к автоматической оценке результатов оценки сотрудника. Более сюда ничего не писать!
    $_SESSION['descr_clss'][250]['fields']['question']='int(1)' ;        // жалобы
    $_SESSION['descr_clss'][250]['fields']['question_comment']='text' ; // содержание жалоб
    $_SESSION['descr_clss'][250]['fields']['doctor_comment']='text' ; // Комментарий врача
    $_SESSION['descr_clss'][250]['fields']['simptoms']='int(11)' ; // комментарии Признаки заболевания и пониженной работоспособности
    $_SESSION['descr_clss'][250]['fields']['reason']=array('type'=>'varchar(32)','default'=>'') ; // тип ошибки
    $_SESSION['descr_clss'][250]['fields']['equipment']=array('type'=>'varchar(255)','default'=>'') ; // оборудование с ошибкой
    $_SESSION['descr_clss'][250]['fields']['video']=array('type'=>'varchar(255)','default'=>'') ; // имя файла видео
    $_SESSION['descr_clss'][250]['fields']['tk']=array('type'=>'int(11)','default'=>0) ; // тип контроля 0 - предрейсовый, 1 - послерейсовый контроль, 2 - межрейсовый контроль
    $_SESSION['descr_clss'][250]['fields']['report_id']=array('type'=>'int(11)','default'=>0) ; // код отчета, в котором подписан данный МО
    $_SESSION['descr_clss'][250]['fields']['napravlenie_id']=array('type'=>'int(11)','default'=>0) ; // код направления по данному МО
    $_SESSION['descr_clss'][250]['fields']['DTW_source']=array('type'=>'text') ; // оцифровка экранной подписи
    $_SESSION['descr_clss'][250]['fields']['DTW_res']=array('type'=>'int(11)','default'=>0) ; // результат проверки экранной подписи
	// эти поля надо перенести в obj_site_mo_session_DTW
    $_SESSION['descr_clss'][250]['fields']['DTW_sign_result']=array('type'=>'float(10,5)','default'=>0) ; // результат проверки экранной подписи
    $_SESSION['descr_clss'][250]['fields']['signature_DTW_mp_Cost']=array('type'=>'float(10,5)','default'=>0) ; // результат проверки экранной подписи
    $_SESSION['descr_clss'][250]['fields']['signature_DTW_mp_Sum']=array('type'=>'float(10,3)','default'=>0) ; // результат проверки экранной подписи
    $_SESSION['descr_clss'][250]['fields']['signature_DTW_mp_Transform']=array('type'=>'float(10,3)','default'=>0) ; // результат проверки экранной подписи
    $_SESSION['descr_clss'][250]['fields']['signature_DTW_mp_StepCount']=array('type'=>'int(11)','default'=>0) ; // результат проверки экранной подписи

    $_SESSION['descr_clss'][250]['fields']['ball_s']=array('type'=>'int(11)','default'=>0) ; // оценка давления в баллах
    $_SESSION['descr_clss'][250]['fields']['ball_d']=array('type'=>'int(11)','default'=>0) ; // оценка давления в баллах
    $_SESSION['descr_clss'][250]['fields']['event_send']=array('type'=>'int(11)','default'=>0,'index'=>'event_send') ; // дата время отправки уведомления в СПГТ

    //$_SESSION['descr_clss'][250]['fields']['pass_auth']=array('type'=>'varchar(32)') ; // пропуск на основании которого был пройден МО
    //$_SESSION['descr_clss'][250]['fields']['pass_dev']=array('type'=>'varchar(3)') ; // тип пропуска

    //$_SESSION['descr_clss'][250]['fields']['org_id']=array('type'=>'int(11)') ; // организация сотрудника
    //$_SESSION['descr_clss'][250]['fields']['otdel_id']=array('type'=>'int(11)') ; // подразделение сотрудника



    $_SESSION['descr_clss'][250]['child_to']=array(1) ;
    $_SESSION['descr_clss'][250]['parent_to']=array(3) ;
    $_SESSION['descr_clss'][250]['no_show_in_tree']=0 ; // не показывать объекты класса в дереве
    $_SESSION['descr_clss'][250]['icons']=_PATH_TO_BASED_CLSS_IMG.'/98.png' ;
    $_SESSION['descr_clss'][250]['index']['c_data']='c_data' ;
    $_SESSION['descr_clss'][250]['index']['group_id']='group_id' ;
    $_SESSION['descr_clss'][250]['index']['terminal_id']='terminal_id' ;
    $_SESSION['descr_clss'][250]['index']['doctor_id']='doctor_id' ;
    $_SESSION['descr_clss'][250]['index']['dopusk_user_id']='dopusk_user_id' ;
    $_SESSION['descr_clss'][250]['index']['hand_check_user_id']='hand_check_user_id' ;
    $_SESSION['descr_clss'][250]['index']['member_id']='member_id' ;
    $_SESSION['descr_clss'][250]['index']['model']='model' ;
    $_SESSION['descr_clss'][250]['index']['dopusk']='dopusk' ;
    $_SESSION['descr_clss'][250]['index']['status']='status' ;
    $_SESSION['descr_clss'][250]['index']['res_a']='res_a' ;
    $_SESSION['descr_clss'][250]['index']['c_data_m']='c_data_m' ;
    $_SESSION['descr_clss'][250]['index']['c_data_d']='c_data_d' ;
    $_SESSION['descr_clss'][250]['index']['c_data_h']='c_data_h' ;
    //$_SESSION['descr_clss'][250]['index']['tk']='tk' ; // индекс мешает
    $_SESSION['descr_clss'][250]['index']['systolic']='systolic' ;
    $_SESSION['descr_clss'][250]['index']['event_send']='event_send' ;
    $_SESSION['descr_clss'][250]['index']['composite_mo_session']='member_id,dopusk,dopusk_time_end,tk';

    $_SESSION['descr_clss'][250]['list']['field']['pkey']			=array('title'=>'ID') ;
    $_SESSION['descr_clss'][250]['list']['field']['с_data']			=array('title'=>'Время начала сенса','td_class'=>'left') ;
    $_SESSION['descr_clss'][250]['list']['field']['e_data']			=array('title'=>'Время окончания сенса','td_class'=>'left') ;
    $_SESSION['descr_clss'][250]['list']['field']['terminal_id']		    =array('title'=>'Интерфейс','td_class'=>'left') ;
    $_SESSION['descr_clss'][250]['list']['field']['member_id']	    =array('title'=>'Работник','td_class'=>'left') ;
    $_SESSION['descr_clss'][250]['list']['field']['doctor_id']	    =array('title'=>'Доктор','td_class'=>'left') ;
    $_SESSION['descr_clss'][250]['details']=$_SESSION['descr_clss'][250]['list'] ;

    //-----------------------------------------------------------------------------------------------------
    $_SESSION['descr_clss'][252]['name']='Критерии МО' ;
    $_SESSION['descr_clss'][252]['parent']=20 ;
    $_SESSION['descr_clss'][252]['fields']=array('obj_name'=>'varchar(255)') ;
    $_SESSION['descr_clss'][252]['fields']['time_from']=array('type'=>'timedata','data_format'=>'d.m.y') ;
    $_SESSION['descr_clss'][252]['fields']['time_to']=array('type'=>'timedata','data_format'=>'d.m.y') ;
    $_SESSION['descr_clss'][252]['fields']['working']=array('type'=>'indx_select','array'=>'IL_works') ;
    $_SESSION['descr_clss'][252]['fields']['group_id']=array('type'=>'indx_select','array'=>'IL_groups') ;
    $_SESSION['descr_clss'][252]['fields']['age_min']='int(11)' ;
    $_SESSION['descr_clss'][252]['fields']['age_max']='int(11)' ;
    $_SESSION['descr_clss'][252]['fields']['s']='int(1)' ;
    $_SESSION['descr_clss'][252]['fields']['d']='int(1)' ;
    $_SESSION['descr_clss'][252]['fields']['t']='int(1)' ;
    $_SESSION['descr_clss'][252]['fields']['p']='int(1)' ;
    $_SESSION['descr_clss'][252]['fields']['a']='int(1)' ;
    $_SESSION['descr_clss'][252]['fields']['n']='int(1)' ;
    $_SESSION['descr_clss'][252]['fields']['v']='int(1)' ;
    $_SESSION['descr_clss'][252]['fields']['method']='int(11)' ;
    $_SESSION['descr_clss'][252]['fields']['esmo_groups']='varchar(256)' ;
    $_SESSION['descr_clss'][252]['fields']['s_min']='int(11)' ;
    $_SESSION['descr_clss'][252]['fields']['s_max']='int(11)' ;
    $_SESSION['descr_clss'][252]['fields']['d_min']='int(11)' ;
    $_SESSION['descr_clss'][252]['fields']['d_max']='int(11)' ;
    $_SESSION['descr_clss'][252]['fields']['t_min']='float(10,2)' ;
    $_SESSION['descr_clss'][252]['fields']['t_max']='float(10,2)' ;
    $_SESSION['descr_clss'][252]['fields']['p_min']='int(11)' ;
    $_SESSION['descr_clss'][252]['fields']['p_max']='int(11)' ;
    $_SESSION['descr_clss'][252]['fields']['settings']=array('type'=>'serialize') ;


    $_SESSION['descr_clss'][252]['child_to']=array(21) ;
    $_SESSION['descr_clss'][252]['parent_to']=array() ;
    $_SESSION['descr_clss'][252]['no_show_in_tree']=0 ; // не показывать объекты класса в дереве
    $_SESSION['descr_clss'][252]['icons']=_PATH_TO_BASED_CLSS_IMG.'/98.png' ;
    $_SESSION['descr_clss'][252]['list']['field']['id']		        	=array('title'=>'Код.') ;
    $_SESSION['descr_clss'][252]['list']['field']['enabled']			=array('title'=>'Сост.') ;
    $_SESSION['descr_clss'][252]['list']['field']['obj_name']			=array('title'=>'Название','td_class'=>'left') ;
    $_SESSION['descr_clss'][252]['list']['field']['time_from']          =array('title'=>'Дата от') ;
    $_SESSION['descr_clss'][252]['list']['field']['time_to']            =array('title'=>'Дата до') ;
    $_SESSION['descr_clss'][252]['list']['field']['working']            =array('title'=>'Должность') ;
    $_SESSION['descr_clss'][252]['list']['field']['age_min']			=array('title'=>'Возраст от','td_class'=>'left') ;
    $_SESSION['descr_clss'][252]['list']['field']['age_max']			=array('title'=>'Возраст до','td_class'=>'left') ;
    $_SESSION['descr_clss'][252]['list']['field']['s']			        =array('title'=>'Измерение давления систолического') ;
    $_SESSION['descr_clss'][252]['list']['field']['s_min']			    =array('title'=>'Давление систолическое мин','td_class'=>'left') ;
    $_SESSION['descr_clss'][252]['list']['field']['s_max']			    =array('title'=>'Давление систолическое макс','td_class'=>'left') ;
    $_SESSION['descr_clss'][252]['list']['field']['d']			        =array('title'=>'Измерение давления диастолического') ;
    $_SESSION['descr_clss'][252]['list']['field']['d_min']			    =array('title'=>'Давление диастолическое мин','td_class'=>'left') ;
    $_SESSION['descr_clss'][252]['list']['field']['d_max']			    =array('title'=>'Давление диастолическое макс','td_class'=>'left') ;
    $_SESSION['descr_clss'][252]['list']['field']['t']			        =array('title'=>'Измерение температуры') ;
    $_SESSION['descr_clss'][252]['list']['field']['t_min']			    =array('title'=>'Температура мин','td_class'=>'left') ;
    $_SESSION['descr_clss'][252]['list']['field']['t_max']			    =array('title'=>'Температура макс','td_class'=>'left') ;
    $_SESSION['descr_clss'][252]['list']['field']['p']			        =array('title'=>'Измерение пульса') ;
    $_SESSION['descr_clss'][252]['list']['field']['p_min']			    =array('title'=>'Пульс мин','td_class'=>'left') ;
    $_SESSION['descr_clss'][252]['list']['field']['p_max']			    =array('title'=>'Пульс макс','td_class'=>'left') ;
    $_SESSION['descr_clss'][252]['list']['field']['a']			        =array('title'=>'Алкотест','td_class'=>'left') ;
    $_SESSION['descr_clss'][252]['list']['field']['n']			        =array('title'=>'ЦНС','td_class'=>'left') ;
    $_SESSION['descr_clss'][252]['details']=$_SESSION['descr_clss'][252]['list'] ;

    $_SESSION['descr_clss'][254]['name']='Группа по болезни' ;
        $_SESSION['descr_clss'][254]['parent']=20 ;
        $_SESSION['descr_clss'][254]['fields']=array('obj_name'=>'varchar(255)') ;
        $_SESSION['descr_clss'][254]['fields']['s']='int(1)' ;
        $_SESSION['descr_clss'][254]['fields']['d']='int(1)' ;
        $_SESSION['descr_clss'][254]['fields']['t']='int(1)' ;
        $_SESSION['descr_clss'][254]['fields']['p']='int(1)' ;
        $_SESSION['descr_clss'][254]['fields']['a']='int(1)' ;
        $_SESSION['descr_clss'][254]['fields']['n']='int(1)' ;
        $_SESSION['descr_clss'][254]['fields']['s_min']='int(11)' ;
        $_SESSION['descr_clss'][254]['fields']['s_max']='int(11)' ;
        $_SESSION['descr_clss'][254]['fields']['d_min']='int(11)' ;
        $_SESSION['descr_clss'][254]['fields']['d_max']='int(11)' ;
        $_SESSION['descr_clss'][254]['fields']['t_min']='float(10,2)' ;
        $_SESSION['descr_clss'][254]['fields']['t_max']='float(10,2)' ;
        $_SESSION['descr_clss'][254]['fields']['p_min']='int(11)' ;
        $_SESSION['descr_clss'][254]['fields']['p_max']='int(11)' ;
        $_SESSION['descr_clss'][254]['fields']['gr_sss']=array('type'=>'int(1)','default'=>0);




    //-----------------------------------------------------------------------------------------------------
    $_SESSION['descr_clss'][257]['name']='Профиль терминала' ;
    $_SESSION['descr_clss'][257]['parent']=20 ;
    $_SESSION['descr_clss'][257]['fields']['video']=array('type'=>'int(1)') ;
    $_SESSION['descr_clss'][257]['fields']['tonometer']=array('type'=>'int(1)') ;
    $_SESSION['descr_clss'][257]['fields']['thermometer']=array('type'=>'int(1)') ;
    $_SESSION['descr_clss'][257]['fields']['alcotester']=array('type'=>'int(1)') ;
    $_SESSION['descr_clss'][257]['fields']['pupilometer']=array('type'=>'int(1)') ;

    $_SESSION['descr_clss'][257]['list']['field']['id']		        	=array('title'=>'Код.') ;
    $_SESSION['descr_clss'][257]['list']['field']['enabled']			=array('title'=>'Сост.') ;
    $_SESSION['descr_clss'][257]['list']['field']['obj_name']			=array('title'=>'Название','td_class'=>'left') ;
    $_SESSION['descr_clss'][257]['list']['field']['video']              =array('title'=>'Видео') ;
    $_SESSION['descr_clss'][257]['list']['field']['tonometer']          =array('title'=>'Тонометр') ;
    $_SESSION['descr_clss'][257]['list']['field']['thermometer']        =array('title'=>'Термометр') ;
    $_SESSION['descr_clss'][257]['list']['field']['alcotester']         =array('title'=>'Алкотестер') ;
    $_SESSION['descr_clss'][257]['list']['field']['pupilometer']         =array('title'=>'Пупилометр') ;


    $_SESSION['descr_clss'][258]['name']='Тип оборудования на терминале' ;
    $_SESSION['descr_clss'][258]['parent']=20 ;

    $_SESSION['descr_clss'][258]['fields']['code']=array('type'=>'varchar(32)') ;

    $_SESSION['descr_clss'][258]['list']['field']['id']		        	=array('title'=>'id.') ;
    $_SESSION['descr_clss'][258]['list']['field']['enabled']			=array('title'=>'Сост.') ;
    $_SESSION['descr_clss'][258]['list']['field']['obj_name']			=array('title'=>'Название','td_class'=>'left') ; // название устройтва, Алкотестер
    $_SESSION['descr_clss'][258]['list']['field']['code']               =array('title'=>'Код устройства') ; // alcotester

    $_SESSION['descr_clss'][290]['name']='Камеры Trassir' ;
    $_SESSION['descr_clss'][290]['parent']=0 ;
    $_SESSION['descr_clss'][290]['fields']['guid']=array('type'=>'varchar(40)','index'=>'guid') ; // guid канала
    $_SESSION['descr_clss'][290]['fields']['obj_name']=array('type'=>'varchar(80)','index'=>'obj_name') ; // имя канала
    $_SESSION['descr_clss'][290]['fields']['data']='serialize' ; // группа

    $_SESSION['descr_clss'][291]['name']='Привязка камер Trassir к терминалам' ;
    $_SESSION['descr_clss'][291]['parent']=0 ;
    $_SESSION['descr_clss'][291]['fields']['terminal_id']=array('type'=>'int(11)','index'=>'terminal_id') ; //
    $_SESSION['descr_clss'][291]['fields']['camera_trassir_id']=array('type'=>'int(11)','index'=>'camera_trassir_id') ; //
    $_SESSION['descr_clss'][291]['fields']['group_id']=array('type'=>'int(11)','index'=>'group_id') ; //
    $_SESSION['descr_clss'][291]['fields']['hand_check_group_id']=array('type'=>'int(11)','index'=>'hand_check_group_id') ; //

    $_SESSION['descr_clss'][293]['name']='История изменений устройства';
    $_SESSION['descr_clss'][293]['parent']=0 ;
    $_SESSION['descr_clss'][293]['fields']['terminal_pkey']=array('type'=>'int(11)','index'=>'terminal_pkey') ;
    $_SESSION['descr_clss'][293]['fields']['terminal_id']=array('type'=>'int(11)','index'=>'terminal_id') ;
    $_SESSION['descr_clss'][293]['fields']['vers']=array('type'=>'varchar(32)') ;
    $_SESSION['descr_clss'][293]['fields']['rec_source']=array('type'=>'varchar(32)') ;

    $_SESSION['descr_clss'][294]['name']='Расписание МО для рабочей группы';
    $_SESSION['descr_clss'][294]['parent']=0 ;
    $_SESSION['descr_clss'][294]['fields']['work_group_id']=array('type'=>'int(11)','index'=>'work_group_id') ;
    $_SESSION['descr_clss'][294]['fields']['personal_group_id']=array('type'=>'int(11)','index'=>'personal_group_id') ;
    $_SESSION['descr_clss'][294]['fields']['time_from']=array('type'=>'varchar(5)') ;
    $_SESSION['descr_clss'][294]['fields']['time_to']=array('type'=>'varchar(5)') ;
    $_SESSION['descr_clss'][294]['fields']['days']=array('type'=>'varchar(7)') ;
    $_SESSION['descr_clss'][294]['fields']['action']=array('type'=>'int(1)') ; // 1 - разрешено МО, 0 - запрещено МО

    $_SESSION['descr_clss'][307]['name']='Медицинская организация' ;
   	$_SESSION['descr_clss'][307]['parent']=1 ;
   	$_SESSION['descr_clss'][307]['fields']['obj_name']=array('type'=>'varchar(255)') ;
   	$_SESSION['descr_clss'][307]['fields']['full_name']=array('type'=>'varchar(256)') ;
   	$_SESSION['descr_clss'][307]['fields']['email']=array('type'=>'varchar(128)') ;
   	$_SESSION['descr_clss'][307]['fields']['phone']=array('type'=>'varchar(32)') ;
   	$_SESSION['descr_clss'][307]['fields']['phone2']=array('type'=>'varchar(32)') ;
   	$_SESSION['descr_clss'][307]['fields']['inn']=array('type'=>'varchar(16)') ;
   	$_SESSION['descr_clss'][307]['fields']['kpp']=array('type'=>'varchar(16)') ;
   	$_SESSION['descr_clss'][307]['fields']['ogrn']=array('type'=>'varchar(13)') ;
   	$_SESSION['descr_clss'][307]['fields']['okpo']=array('type'=>'varchar(13)') ;
   	$_SESSION['descr_clss'][307]['fields']['okato']=array('type'=>'varchar(13)') ;
   	$_SESSION['descr_clss'][307]['fields']['oktmo']=array('type'=>'varchar(13)') ;
   	$_SESSION['descr_clss'][307]['fields']['okogu']=array('type'=>'varchar(13)') ;
   	$_SESSION['descr_clss'][307]['fields']['okfs']=array('type'=>'varchar(13)') ;
   	$_SESSION['descr_clss'][307]['fields']['okved']=array('type'=>'varchar(13)') ;
   	$_SESSION['descr_clss'][307]['fields']['okveds']=array('type'=>'varchar(13)') ;
   	$_SESSION['descr_clss'][307]['fields']['adres1']=array('type'=>'varchar(255)') ;
   	$_SESSION['descr_clss'][307]['fields']['adres2']=array('type'=>'varchar(255)') ;
   	$_SESSION['descr_clss'][307]['fields']['uid']=array('type'=>'varchar(32)') ;
   	$_SESSION['descr_clss'][307]['fields']['uid_1c']=array('type'=>'varchar(32)') ;
   	$_SESSION['descr_clss'][307]['fields']['license_number']=array('type'=>'varchar(32)') ;
   	$_SESSION['descr_clss'][307]['fields']['license_seria']=array('type'=>'varchar(32)') ;
   	$_SESSION['descr_clss'][307]['fields']['license_data_from']=array('type'=>'int(11)') ;
   	$_SESSION['descr_clss'][307]['fields']['license_data_to']=array('type'=>'int(11)') ;
   	// данные по директору медорганизации
   	$_SESSION['descr_clss'][307]['fields']['director_uid']=array('type'=>'varchar(32)') ;
   	$_SESSION['descr_clss'][307]['fields']['director_name']=array('type'=>'varchar(255)') ;
   	$_SESSION['descr_clss'][307]['fields']['director_inn']=array('type'=>'varchar(16)') ;
   	$_SESSION['descr_clss'][307]['fields']['director_snils']=array('type'=>'varchar(16)') ;
   	$_SESSION['descr_clss'][307]['fields']['director_job_title']=array('type'=>'varchar(255)') ;
   	$_SESSION['descr_clss'][307]['fields']['director_date_birth']=array('type'=>'varchar(255)') ;
   	$_SESSION['descr_clss'][307]['fields']['director_gender']=array('type'=>'int(11)') ;
   	$_SESSION['descr_clss'][307]['fields']['director_email']=array('type'=>'varchar(128)') ;
   	$_SESSION['descr_clss'][307]['fields']['director_phone']=array('type'=>'varchar(32)') ;

    if (file_exists(_DIR_EXT.'/aspmo_accessControl/accessControlBase.php')) include_once(_DIR_EXT.'/aspmo_accessControl/accessControlBase.php') ;   // классы 350-358
    if (file_exists(_DIR_EXT.'/aspmo_rmt/i_mrt_admin.php')) include_once(_DIR_EXT.'/aspmo_rmt/i_mrt_admin.php') ; // класс 360



}

function _aspmo_admin_boot($options)
{
  create_system_modul_obj('aspmo') ;
}


function _aspmo_install_modul($DOT_root)
{

	SETUP()->reg_rol(2,'Фельдшер','/cab/rmv/[cur_smena]/',array('use_auch_as_smena'=>1, 'smena_monopole_mode'=>1, 'report_template'=>'report_mo_smena')) ;
	SETUP()->reg_rol(20,'Суперчитатель','/cab/reports/') ;
	SETUP()->reg_rol(21,'Мед. руководитель','/cab/esmo_master/') ;

    check_exists_dir('/public/auth_photo') ;
    check_exists_dir('/public/mo_pp') ;
    check_exists_dir('/public/mo_photo') ;
    check_exists_dir('/public/mo_sign') ;
    check_exists_dir('/public/mo_sign_image') ;
    check_exists_dir('/temp/monitor') ;

    SETUP()->reg_report('МО - отчеты','aspmo_reports/report_itog2.php') ;         //
    SETUP()->reg_report('МО - отчеты','aspmo_reports/report_itog3.php') ;         //
    SETUP()->reg_report('МО - отчеты','aspmo_reports/report_itog4.php') ;         //
    SETUP()->reg_report('МО - отчеты','aspmo_reports/report_itog5.php') ;         //
    SETUP()->reg_report('МО - отчеты','aspmo_reports/report_itog6.php') ;         //
    //SETUP()->reg_report('МО - отчеты','aspmo_reports/report_itog7.php') ;         //
    SETUP()->reg_report('МО - отчеты','aspmo_reports/report_health.php') ;         //
    SETUP()->reg_report('МО - отчеты','aspmo_reports/report_count_mo.php') ;         //
    SETUP()->reg_report('МО - отчеты','esmo_setting/report_personals_to_medic_group.php') ;         //

    SETUP()->reg_report('МО - журналы','aspmo_reports/report_mo_sess.php') ;         //
    SETUP()->reg_report('МО - журналы','aspmo_reports/report_mo_sess2.php') ;         //
    SETUP()->reg_report('МО - журналы','aspmo_reports/report_mo3.php') ;         //
    SETUP()->reg_report('МО - журналы','aspmo_reports/report_mo_small.php') ;         //
    SETUP()->reg_report('МО - журналы','aspmo_reports/report_mo_smena.php') ;         //
    SETUP()->reg_report('МО - журналы','aspmo_reports/report_mo_result.php') ;         //
    SETUP()->reg_report('МО - журналы','aspmo_reports/report_mo_before_shift.php') ;         //
    SETUP()->reg_report('МО - журналы','aspmo_reports/report_mo_after_shift.php') ;         //
    SETUP()->reg_report('МО - журналы','aspmo_reports/report_shift.php') ;         //

    SETUP()->reg_report('Служебные отчеты','aspmo_reports/report_reason.php') ;         //
    SETUP()->reg_report('Служебные отчеты','aspmo_reports/report_mo_sess_tech.php') ;
    SETUP()->reg_report('МО - журналы','aspmo_rmv/report_mo_rmv_speed.php') ;         //
    SETUP()->reg_report('МО - отчеты','aspmo_reports/report_alcotester_error.php') ;

    SETUP()->reg_report('МО - отчеты','aspmo_reports/report_mo_tk.php') ;         //
    SETUP()->reg_report('МО - отчеты','aspmo_reports/report_persons_without_mo.php') ;         //

    REPORTS()->reg_doc('МО','esmo/doc_napravlenie.php','Направление по АГ') ;         //
    REPORTS()->reg_doc('МО','esmo/doc_protokol_trezvosti.php','Протокол контроля трезвости') ;         //
    REPORTS()->reg_doc('МО','esmo/doc_napravlenie_narko.php','Протокол нарко') ;         //
    REPORTS()->reg_doc('МО','esmo/doc_spravka.php','Справка') ;         //

	SETUP()->reg_report('Служебные отчеты','esmo/report_esmo_config.php') ;         //
    SETUP()->reg_report('Служебные отчеты','aspmo_setting/report_work_groups.php') ;         //

    // терминалы
    $pattern=array() ;
    $pattern['table_title']		        = 	'Устройства ЭСМО' ;
    $pattern['use_clss']		        = 	'203,242' ;
    $pattern['table_name']				= 	'obj_site_device' ;
    $pattern['table_clss']				= 	101 ;
    $pattern['table_parent']			= 	$DOT_root;
    $id_DOT_mo=create_table_by_pattern($pattern) ;


    // сеансы медосмотра
    $pattern=array() ;
    $pattern['table_title']		        = 	'Сеансы медосмотра' ;
    $pattern['use_clss']		        = 	'250' ;
    $pattern['table_name']				= 	'obj_site_mo_session' ;
    $pattern['table_clss']				= 	101 ;
    $pattern['table_parent']			= 	$DOT_root;
    $id_DOT_mo=create_table_by_pattern($pattern) ;

    // сеансы медосмотра
    $pattern=array() ;
    $pattern['table_title']		        = 	'Сеансы медосмотра - оперативная таблица МО' ;
    $pattern['use_clss']		        = 	'250' ;
    $pattern['table_name']				= 	'obj_site_mo_session_now' ;
    $pattern['table_clss']				= 	101 ;
    $pattern['table_parent']			= 	$DOT_root;
    //$pattern['table_engine']		    = 	'MyISAM'; - MyISAM не работает на кластере без параметра pxc_strict_mode=DISABLED
    if (SETUP_LEVEL('db_tables')) $pattern['auto_increment']=execSQL_value('select max(pkey) from obj_site_mo_session')+1;
    $id_DOT_mo=create_table_by_pattern($pattern) ;

    $pattern=array() ;
    $pattern['table_title']		        = 	'Камеры Trassir' ;
    $pattern['use_clss']		        = 	'290' ;
    $pattern['table_name']				= 	'obj_site_trassir_channels' ;
    $pattern['table_clss']				= 	101 ;
    $pattern['table_parent']			= 	$DOT_root;
    create_table_by_pattern($pattern) ;

    $pattern=array() ;
    $pattern['table_title']		        = 	'Привязка камер Trassir к терминалам' ;
    $pattern['use_clss']		        = 	'291' ;
    $pattern['table_name']				= 	'obj_site_trassir_camera_terminal' ;
    $pattern['table_clss']				= 	101 ;
    $pattern['table_parent']			= 	$DOT_root;
    create_table_by_pattern($pattern) ;

    $pattern=array() ;
    $pattern['table_title']		        = 	'История изменений терминала' ;
    $pattern['use_clss']		        = 	'293' ;
    $pattern['table_name']				= 	'device_history' ;
    $pattern['table_clss']				= 	101 ;
    $pattern['table_parent']			= 	$DOT_root;
    create_table_by_pattern($pattern) ;

    $pattern=array() ;
    $pattern['table_title']		        = 	'Расписание МО для рабочих групп' ;
    $pattern['use_clss']		        = 	'294' ;
    $pattern['table_name']				= 	'mo_schedule' ;
    $pattern['table_clss']				= 	101 ;
    $pattern['table_parent']			= 	$DOT_root;
    create_table_by_pattern($pattern) ;

    $pattern=array();
    $pattern['table_title']='Справочник мед.организаций';
    $pattern['use_clss']='307';
    $pattern['table_name']='catalog_med_orgs';
    $pattern['table_clss']=101;
    $pattern['table_parent']=$DOT_root;
    create_table_by_pattern($pattern);

    //$id_sect=SETUP_add_section_to_site_list('Группы персонала') ;
    $id_list=SETUP_add_list_to_site_list(1,'Должности компании','works') ;
    $id_list=SETUP_add_list_to_site_list(1,'Критерии МО','dg') ;
    SETUP_add_rec_to_site_list($id_list,252,array('id'=>1,'obj_name'=>'Общее правило','age_min'=>18,'age_max'=>65,'s_min'=>100,'s_max'=>139,'d_min'=>60,'d_max'=>89,'t_min'=>26,'t_max'=>39,'p_min'=>50,'p_max'=>100,'s'=>1,'d'=>1,'p'=>1,'t'=>1,'a'=>1)) ;

    $id_list=SETUP_add_list_to_site_list(1,'Роли ACPMO','roll') ;
    //$id_list=SETUP_add_list_to_site_list(1,'Число смен','smena_count') ;
    $id_list=SETUP_add_list_to_site_list(1,'Профили терминалов','term_prof') ;
	SETUP()->SETUP_add_rec_to_site_list($id_list,257,array('obj_name'=>'Полная комплектация','indx'=>1,'id'=>1,'url_name'=>'polnaya-komplektatsiya','video'=>'1','tonometer'=>'1','thermometer'=>'1','alcotester'=>'1','pupilometer'=>'1'),array('setup_mode'=>'SETUP_FIRST')) ;
	SETUP()->SETUP_add_rec_to_site_list($id_list,257,array('obj_name'=>'Без термометра','indx'=>2,'id'=>2,'url_name'=>'bez-termometra','video'=>'1','tonometer'=>'1','thermometer'=>'0','alcotester'=>'1','pupilometer'=>'1'),array('setup_mode'=>'SETUP_FIRST')) ;
	SETUP()->SETUP_add_rec_to_site_list($id_list,257,array('obj_name'=>'Без алкотестера','indx'=>3,'id'=>3,'url_name'=>'bez-alkotestera','video'=>'1','tonometer'=>'1','thermometer'=>'0','alcotester'=>'0','pupilometer'=>'1'),array('setup_mode'=>'SETUP_FIRST')) ;
	SETUP()->SETUP_add_rec_to_site_list($id_list,257,array('obj_name'=>'Без термометра и тонометра','indx'=>4,'id'=>4,'url_name'=>'bez-termometra-i-tonometra','video'=>'1','tonometer'=>'0','thermometer'=>'0','alcotester'=>'1','pupilometer'=>'1'),array('setup_mode'=>'SETUP_FIRST')) ;
	SETUP()->SETUP_add_rec_to_site_list($id_list,257,array('obj_name'=>'Без Алкотестера и термометра','indx'=>5,'id'=>5,'url_name'=>'bez-alkotestera-i-termometra','video'=>'1','tonometer'=>'1','thermometer'=>'0','alcotester'=>'0','pupilometer'=>'0'),array('setup_mode'=>'SETUP_FIRST')) ;
	SETUP()->SETUP_add_rec_to_site_list($id_list,257,array('obj_name'=>'Алкотестер, давление, пупилометр, видео','indx'=>6,'id'=>6,'url_name'=>'alkotester-davlenie-pupilometr-video','video'=>'1','tonometer'=>'1','thermometer'=>'0','alcotester'=>'1','pupilometer'=>'1'),array('setup_mode'=>'SETUP_FIRST')) ;
	SETUP()->SETUP_add_rec_to_site_list($id_list,257,array('obj_name'=>'Давление, видео, алкотестер','indx'=>7,'id'=>7,'url_name'=>'davlenie-video-alkotester','video'=>'1','tonometer'=>'1','thermometer'=>'0','alcotester'=>'1','pupilometer'=>'0'),array('setup_mode'=>'SETUP_FIRST')) ;
	SETUP()->SETUP_add_rec_to_site_list($id_list,257,array('obj_name'=>'Алкотестер','indx'=>8,'id'=>8,'url_name'=>'alkotester','video'=>'1','tonometer'=>'0','thermometer'=>'1','alcotester'=>'1','pupilometer'=>'1'),array('setup_mode'=>'SETUP_FIRST')) ;
	SETUP()->SETUP_add_rec_to_site_list($id_list,257,array('obj_name'=>'Без пупилометра','indx'=>9,'id'=>9,'url_name'=>'bez-pupilometra','video'=>'1','tonometer'=>'1','thermometer'=>'1','alcotester'=>'1','pupilometer'=>'0'),array('setup_mode'=>'SETUP_FIRST')) ;
	SETUP()->SETUP_add_rec_to_site_list($id_list,257,array('obj_name'=>'Только пупиллометр ','indx'=>10,'id'=>10,'url_name'=>'tolko-pupillometr','video'=>'1','tonometer'=>'0','thermometer'=>'1','alcotester'=>'0','pupilometer'=>'1'),array('setup_mode'=>'SETUP_FIRST')) ;
	SETUP()->SETUP_add_rec_to_site_list($id_list,257,array('obj_name'=>'Мобильный терминал','indx'=>11,'id'=>11,'url_name'=>'mobilnyy-terminal','video'=>'1','tonometer'=>'1','thermometer'=>'1','alcotester'=>'1','pupilometer'=>'0'),array('setup_mode'=>'SETUP_FIRST')) ;
	SETUP()->SETUP_add_rec_to_site_list($id_list,257,array('obj_name'=>'Настольный','indx'=>12,'id'=>12,'url_name'=>'nastonyy','video'=>'1','tonometer'=>'1','thermometer'=>'1','alcotester'=>'1','pupilometer'=>'0'),array('setup_mode'=>'SETUP_FIRST')) ;
    $id_list=SETUP_add_list_to_site_list(1,'Группы по болезни','group_medic') ;
    SETUP_add_rec_to_site_list($id_list,254,array('id'=>1,'obj_name'=>'ГБ1-АГ1','s_min'=>90,'s_max'=>159,'d_min'=>50,'d_max'=>99,'s'=>1,'d'=>1)) ;
    SETUP_add_rec_to_site_list($id_list,254,array('id'=>2,'obj_name'=>'ГБ1-АГ2','s_min'=>90,'s_max'=>159,'d_min'=>50,'d_max'=>99,'s'=>1,'d'=>1)) ;
    SETUP_add_rec_to_site_list($id_list,254,array('id'=>3,'obj_name'=>'ГБ1-АГ3','s_min'=>90,'s_max'=>159,'d_min'=>50,'d_max'=>99,'s'=>1,'d'=>1)) ;
    SETUP_add_rec_to_site_list($id_list,254,array('id'=>4,'obj_name'=>'ГБ2-АГ1','s_min'=>90,'s_max'=>159,'d_min'=>50,'d_max'=>99,'s'=>1,'d'=>1)) ;
    SETUP_add_rec_to_site_list($id_list,254,array('id'=>5,'obj_name'=>'ГБ2-АГ2','s_min'=>90,'s_max'=>159,'d_min'=>50,'d_max'=>99,'s'=>1,'d'=>1)) ;
    SETUP_add_rec_to_site_list($id_list,254,array('id'=>6,'obj_name'=>'ГБ2-АГ3','s_min'=>90,'s_max'=>159,'d_min'=>50,'d_max'=>99,'s'=>1,'d'=>1)) ;
    SETUP_add_rec_to_site_list($id_list,254,array('id'=>7,'obj_name'=>'ГБ3-АГ1','s_min'=>90,'s_max'=>159,'d_min'=>50,'d_max'=>99,'s'=>1,'d'=>1)) ;
    SETUP_add_rec_to_site_list($id_list,254,array('id'=>8,'obj_name'=>'ГБ3-АГ2','s_min'=>90,'s_max'=>159,'d_min'=>50,'d_max'=>99,'s'=>1,'d'=>1)) ;
    SETUP_add_rec_to_site_list($id_list,254,array('id'=>9,'obj_name'=>'ГБ3-АГ3','s_min'=>90,'s_max'=>159,'d_min'=>50,'d_max'=>99,'s'=>1,'d'=>1)) ;
    SETUP_add_rec_to_site_list($id_list,254,array('id'=>10,'obj_name'=>'Тахикардия','p_min'=>60,'p_max'=>110,'p'=>1)) ;
    SETUP_add_rec_to_site_list($id_list,254,array('id'=>11,'obj_name'=>'Брадикардия','p_min'=>48,'p_max'=>95,'p'=>1)) ;
    SETUP_add_rec_to_site_list($id_list,254,array('id'=>12,'obj_name'=>'Гипотония','s_min'=>86,'s_max'=>139,'d_min'=>50,'d_max'=>89,'s'=>1,'d'=>1)) ;

    $id_list=SETUP_add_list_to_site_list(1,'Группы здоровья','group_health') ;
    SETUP_add_rec_to_site_list($id_list,254,array('id'=>1,'obj_name'=>'I')) ;
    SETUP_add_rec_to_site_list($id_list,254,array('id'=>2,'obj_name'=>'II')) ;
    SETUP_add_rec_to_site_list($id_list,254,array('id'=>3,'obj_name'=>'IIIA')) ;
    SETUP_add_rec_to_site_list($id_list,254,array('id'=>4,'obj_name'=>'IIIB')) ;
    SETUP_add_rec_to_site_list($id_list,254,array('id'=>5,'obj_name'=>'IVA')) ;
    SETUP_add_rec_to_site_list($id_list,254,array('id'=>6,'obj_name'=>'IVB')) ;
    SETUP_add_rec_to_site_list($id_list,254,array('id'=>7,'obj_name'=>'V')) ;

    $id_list=SETUP_add_list_to_site_list(1,'Признаки ЗиПР','diagnoz') ;
	SETUP_add_rec_to_site_list($id_list,20,array('id'=>1,'obj_name'=>'Плохое самочувствие')) ;
    SETUP_add_rec_to_site_list($id_list,20,array('id'=>2,'obj_name'=>'Головная боль')) ;
    SETUP_add_rec_to_site_list($id_list,20,array('id'=>3,'obj_name'=>'Тошнота')) ;

    SETUP()->append_ini_value('esmo','term_auth_by_id',0) ; // авторизовать терминал по ID терминала (а не по IP)

    $id_sect=SETUP_add_section_to_site_setting('Настройки медицинских осмотров') ;
    SETUP_add_rec_to_site_setting($id_sect,"Число попыток автоматического прохождения МО",2,'LS_setting_auto_mo_count') ;
    SETUP_add_rec_to_site_setting($id_sect,"Интервал между попытками прохождения МО, мин",20,'LS_setting_auto_mo_interval',array('human'=>'min')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Использовать оперативную таблицу МО",0,'LS_mo_now_enabled',array('el'=>'checkbox','hidden'=>1)) ;
    SETUP_add_rec_to_site_setting($id_sect,"Глубина оперативной таблицы МО, час",24,'LS_setting_mo_now_len',array('human'=>'hour')) ;

    SETUP_add_rec_to_site_setting($id_sect,"Проверять максимальное число сессий МО с запретом доступа",0,'LS_setting_max_DD_check',array('el'=>'checkbox')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Максимальное число сессий МО с запретом доступа",2,'LS_setting_max_DD_count') ;
    SETUP_add_rec_to_site_setting($id_sect,"Время, за который проверяется число число сессий МО с запретом доступа, час",12,'LS_setting_max_DD_count_hour') ;
    // старая переменная  - LS_setting_auto_mo_checked заменяем на новую LS_mo_session_lenght, но она должна наследовать значение старой переменной
    //SETUP_add_rec_to_site_setting($id_sect,"Время, за который проверяется число попыток неудачного прохождения МО, час",20,'LS_setting_auto_mo_checked') ;
    $LS_setting_mo_session_lenght=($GLOBALS['LS_setting_auto_mo_checked'])? $GLOBALS['LS_setting_auto_mo_checked']:2 ;
    SETUP_add_rec_to_site_setting($id_sect,"Длительность сессии МО, час",$LS_setting_mo_session_lenght,'LS_mo_session_lenght',array('human'=>'hour')) ;   // новая переменная
    SETUP_add_rec_to_site_setting($id_sect,"Проверять доступ к МО по расписанию группы",0,'LS_mo_check_group_schedule',array('el'=>'checkbox')) ;   // новая переменная


    SETUP_add_rec_to_site_setting($id_sect,"Выдавать подробную инфорамцию о причине непрохождения МО",0,'LS_setting_mo_failed_mess_detailed',array('el'=>'checkbox')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Таймаут для выведенного сообщения на терминале,  сек",5,'LS_setting_term_mess_view',array('human'=>'sec')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Таймаут для прохождения МО в секундах",180,'LS_setting_mo_timeout',array('human'=>'sec')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Таймаут ожидания ответа терминала",20,'LS_esmo_terminal_timeout',array('human'=>'sec')) ;
    //SETUP_add_rec_to_site_setting($id_sect,"Порт терминала",8080,'LS_setting_term_port',array('hidden'=>1)) ; // пока скрываем, потом на удаление
    // если текущая настройка по порту терминала отсутствует в ini.yaml - добавляем её туда с текущим значением  LS_setting_term_port
	if ($GLOBALS['install_options']['vars'] and !_TERMINAL_PORT) ENGINE()->update_IS_setting(array('esmo'=>array('terminal_port'=>($GLOBALS['LS_setting_term_port'])? $GLOBALS['LS_setting_term_port']:8080))) ;

    SETUP_add_rec_to_site_setting($id_sect,"Автодопуск успешно прошедших осмотр",1,'LS_setting_auto_dopuck',array('el'=>'checkbox')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Автозапрет не прошедших осмотр",0,'LS_setting_auto_nedopusk',array('el'=>'checkbox')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Название системы для терминала",'ЭСМО','LS_setting_system_name') ;
    SETUP_add_rec_to_site_setting($id_sect,"Время, за которое проверяется прошлая смена, ч.",1,'LS_setting_smena_after',array('human'=>'hour')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Вести видеозапись сеанса МО",1,'LS_setting_save_video',array('el'=>'checkbox')) ;
	SETUP_add_rec_to_site_setting($id_sect,"URL архива видео",'','LS_url_video_arhive') ;

    SETUP_add_rec_to_site_setting($id_sect,"Время действия медицинского допуска, час.",3,'LS_setting_auto_mo_allow_interval',array('human'=>'hour')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Время действия медицинского недопуска, час.",12,'LS_setting_auto_mo_denited_interval',array('human'=>'hour')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Сообщение при недопуске","Запрет допуска по непрохождению МО",'LS_setting_auto_mo_denited_message') ;
    SETUP_add_rec_to_site_setting($id_sect,"Время действия недопуска при алкоголе, час.",12,'LS_setting_auto_mo_denited_alco_interval',array('human'=>'hour')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Сообщение при недопуске по алкоголю","Запрет допуска по алкоголю",'LS_setting_auto_mo_denited_alco_message') ;

    SETUP_add_rec_to_site_setting($id_sect,"Статус МО, если сотрудник уклонился от прохождения МО",3,'LS_setting_uklonist_status',array('el'=>'select','array'=>'ARR_status_uklonist','descr'=>'Сотрудник считается уклонившимся от прохождения МО, если после первого неуспешного МО на терминале не прибыл для повторного прохождения МО2 на терминале или РМВ')) ;
    // дубликат LS_mo_check_access_go_doctor_by_DA
    //SETUP_add_rec_to_site_setting($id_sect,"Разрешить проходить МО при наличии действующего 'ДОПУСК РАЗРЕШЕН'",1,'LS_allow_mo_at_dopusk_1') ;

    SETUP_add_rec_to_site_setting($id_sect,"Направлять к доктору при наличии алкоголя в предыдущем МО",1,'LS_mo_check_access_go_doctor_by_AL',array('el'=>'checkbox')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Направлять к доктору, если результаты предыдущего МО были аннулированы",1,'LS_mo_check_access_go_doctor_by_AN',array('el'=>'checkbox')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Направлять к доктору, если  в предыдущем МО были жалобы на здоровье",1,'LS_mo_check_access_go_doctor_by_NR',array('el'=>'checkbox')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Направлять к доктору при двух неудачных попытках пройти МО на терминале",1,'LS_mo_check_access_go_doctor_by_EE',array('el'=>'checkbox')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Направлять к доктору при двух непрохождениях МО на терминале",1,'LS_mo_check_access_go_doctor_by_FF',array('el'=>'checkbox')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Запрет прохождения МО при наличии действующего разрешения допуска",1,'LS_mo_check_access_go_doctor_by_DA',array('el'=>'checkbox')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Запрет прохождения МО при наличии действующего запрета допуска",1,'LS_mo_check_access_go_doctor_by_DD',array('el'=>'checkbox')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Запрет прохождения МО при завершении уведомлений с блокировкой по МО",1,'LS_check_access_by_mess',array('el'=>'checkbox')) ;

    SETUP_add_rec_to_site_setting($id_sect,"Показывать кнопку ручной проверки в любом случае",0,'LS_mo_hand_check_always',array('el'=>'checkbox')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Показывать кнопку ручной проверки при давлении после",2,'LS_mo_hand_check_by_sd',array('el'=>'select','array'=>'ARR_mo_hand_check_by_mo')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Показывать кнопку ручной проверки при пульсе после",2,'LS_mo_hand_check_by_p',array('el'=>'select','array'=>'ARR_mo_hand_check_by_mo')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Показывать кнопку ручной проверки при температуре после",2,'LS_mo_hand_check_by_t',array('el'=>'select','array'=>'ARR_mo_hand_check_by_mo')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Показывать кнопку ручной проверки при алкоголе после",1,'LS_mo_hand_check_by_a',array('el'=>'select','array'=>'ARR_mo_hand_check_by_mo')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Показывать кнопку ручной проверки при ПП после",1,'LS_mo_hand_check_by_pp',array('el'=>'select','array'=>'ARR_mo_hand_check_by_mo')) ;

    SETUP_add_rec_to_site_setting($id_sect,"Возможность задания давления при ручной проверке",1,'LS_mo_hand_check_set_sd',array('el'=>'checkbox')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Возможность задания пульса при ручной проверке",1,'LS_mo_hand_check_set_p',array('el'=>'checkbox')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Возможность задания температуры при ручной проверке",1,'LS_mo_hand_check_set_t',array('el'=>'checkbox')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Возможность задания алкоголя при ручной проверке",1,'LS_mo_hand_check_set_a',array('el'=>'checkbox')) ;

    SETUP_add_rec_to_site_setting($id_sect,"Время допуска до начала смены, мин.",30,'LS_setting_smena_before_in',array('human'=>'min')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Время выпуска после окончания смены, мин.",30,'LS_setting_smena_after_out',array('human'=>'min')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Показывать в мониторинге только допуски к медосмотрам",1,'LS_setting_monitor_view_only_success',array('el'=>'checkbox')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Показывать в карточке МО только успешные допуски к МО",1,'LS_setting_mo_pers_view_only_success',array('el'=>'checkbox')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Не вносить в МО доктора по умолчанию",0,'LS_mo_no_use_def_doctor',array('el'=>'checkbox')) ;
    SETUP_add_rec_to_site_setting($id_sect,'Показывать в мониторинге МО до начала смены, час',0,'LS_monitor_view_before_hour',array('human'=>'hour')) ;
    SETUP_add_rec_to_site_setting($id_sect,'Зеркальное изображение с web-камеры',1,'LS_web_camemera_zerkalo',array('el'=>'checkbox')) ;
    SETUP_add_rec_to_site_setting($id_sect,'Отправлять на терминал изображение QR-кода',1,'LS_send_qrcode_img_to_term',array('el'=>'checkbox')) ;
    SETUP_add_rec_to_site_setting($id_sect,'Отправлять на терминал фото сотрудника',0,'LS_send_photo_person_to_term',array('el'=>'checkbox')) ;
	SETUP_add_rec_to_site_setting($id_sect,"Учитывать результат распознавания сотрудника по фото при оценке МО",0,'LS_mo_auth_by_photo',array('el'=>'checkbox')) ;
    SETUP_add_rec_to_site_setting($id_sect,'Скрывать фамилию сотрудника на терминале',0,'LS_hide_lastname_on_term',array('el'=>'checkbox')) ;
    SETUP_add_rec_to_site_setting($id_sect,'Отправлять терминал в перезагрузку при ошибке оборудование',1,'LS_term_send_reboot_by_dev_error',array('el'=>'checkbox')) ;
    SETUP_add_rec_to_site_setting($id_sect,'Число перезагрузок терминала при ошибке оборудования',1,'LS_term_cnt_reboot_by_dev_error',array('update_current_value'=>1)) ;
    SETUP_add_rec_to_site_setting($id_sect,"Не показывать температуру в виде числа",0,'LS_view_temp_value_as_text',array('el'=>'checkbox')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Показывать промили с алкотестара",1,'LS_view_alcotest_value',array('el'=>'checkbox')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Доктор по умолчанию",0,'LS_default_doctor_id') ;
    SETUP_add_rec_to_site_setting($id_sect,"Комментарий доктора к МО по умолчанию",'','LS_default_doctor_comment') ;
    SETUP_add_rec_to_site_setting($id_sect,"Время увеличения timeout при наличии оповещений персоналу при МО, сек",'10','LS_timeout_on_mess_correction',array('human'=>'sec')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Выбор типа осмотра на терминале",'0','LS_select_exam_type',array('el'=>'select','array'=>'ARR_terminal_tk_select')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Типы МО, направляемых к фельдшеру",'0,2','LS_mo_doctor_use_tk',array('el'=>'multiselect','array'=>'ARR_mo_tk_type')) ;
	SETUP_add_rec_to_site_setting($id_sect,"Срок хранения фото МО, дней",7,'LS_mo_photo_storage_time') ;
    SETUP_add_rec_to_site_setting($id_sect,"Срок хранения цифровых слепков подписей МО, дней",7,'LS_mo_dsign_storage_time') ;
    SETUP_add_rec_to_site_setting($id_sect,"Срок хранения изображений подписей МО, дней",30,'LS_mo_sign_storage_time') ;
    SETUP_add_rec_to_site_setting($id_sect,"Контроль прохождения МО на втором терминале",0,'LS_mo_check_mo_term_dubl',array('el'=>'checkbox')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Учитывать критерии МО для давления и пульса при послесменном/послерейсовом осмотре",0,'LS_mo_apply_esmo_rules_aftershift_ME',array('el'=>'checkbox')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Время считывания пропуска, миллисекунды",1000,'LS_mo_pass_reading_time',array('human'=>'msec','descr'=>'Задержка считывания введенного пропуска в ручной проверке РМВ и КТ')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Разрешать повторный МО при 'Не удалось произвести измерение' на алкотестере",0,'LS_esmo_equipmentError_alcotester_ignore',array('el'=>'checkbox')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Разрешать в любом случае менять тип медосмотра при ручной проверке фельдшером",0,'LS_always_allow_change_tk',array('el'=>'checkbox')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Критерии осмотра, при равно количестве баллов применяется более новое правило, а не первое",0,'LS_mo_rules_score_more_or_equal',array('el'=>'checkbox')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Включить изменение журнала МО за смену по приказу 266н",0,'LS_mo_apply_order_266n',array('el'=>'checkbox','descr'=>'Приказ Министерства здравоохранения Российской Федерации от 30.05.2023 № 266н "Об утверждении Порядка и периодичности проведения предсменных, предрейсовых, послесменных‚ послерейсовых медицинских осмотров, медицинских осмотров в течение рабочего дня (смены) и перечня включаемых в них исследований"'));
   	SETUP_add_rec_to_site_setting($id_sect,"Включить изменения МО по приказу 75н",0,'LS_mo_apply_order_75n',array('el'=>'checkbox'));


    $id_sect=SETUP_add_section_to_site_setting('Приветствие на терминале') ;
    SETUP_add_rec_to_site_setting($id_sect,"Активировать приветствие",1,'LS_hello_enabled',array('el'=>'checkbox')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Утро",'5-12','LS_hello_morning_int',array()) ;
    SETUP_add_rec_to_site_setting($id_sect,"День",'12-16','LS_hello_day_int',array()) ;
    SETUP_add_rec_to_site_setting($id_sect,"Вечер",'18-24','LS_hello_evening_int',array()) ;
    SETUP_add_rec_to_site_setting($id_sect,"Ночь",'24-5','LS_hello_night_int',array()) ;
    SETUP_add_rec_to_site_setting($id_sect,"Приветствие утро",'Доброе утро','LS_hello_morning_text',array()) ;
    SETUP_add_rec_to_site_setting($id_sect,"Приветствие день",'Добрый день','LS_hello_day_text',array()) ;
    SETUP_add_rec_to_site_setting($id_sect,"Приветствие вечер",'Добрый вечер','LS_hello_evening_text',array()) ;
    SETUP_add_rec_to_site_setting($id_sect,"Приветствие ночь",'Здравствуйте','LS_hello_night_text',array()) ;
    SETUP_add_rec_to_site_setting($id_sect,"Пожелание предсменное",'Хорошей смены','LS_goodbye_text1',array()) ;
    SETUP_add_rec_to_site_setting($id_sect,"Пожелание послесменное",'Хорошего отдыха','LS_goodbye_text2',array()) ;


    $id_sect=SETUP_add_section_to_site_setting('Набор проверок в системе') ;
    SETUP_add_rec_to_site_setting($id_sect,"Измерение давления",1,'LS_check_sd',array('el'=>'checkbox')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Измерение пульса",1,'LS_check_p',array('el'=>'checkbox')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Измерение температуры",1,'LS_check_t',array('el'=>'checkbox')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Алкотест",1,'LS_check_a',array('el'=>'checkbox')) ;
    SETUP_add_rec_to_site_setting($id_sect,"ЦНС",1,'LS_check_n',array('el'=>'checkbox')) ;
    SETUP_add_rec_to_site_setting($id_sect,"ТКТ",0,'LS_check_v',array('el'=>'checkbox')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Проводить проверку при отсутствующем термометре",0,'LS_ignore_term_t_disabled',array('el'=>'checkbox')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Проводить проверку при отсутствующем пупилометре",0,'LS_ignore_term_pp_disabled',array('el'=>'checkbox')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Контроль термометра,",0,'LS_esmo_check_thermometr_error',array('el'=>'checkbox')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Минимальная температура с термометра","36.4",'LS_min_termometr_value') ;
    SETUP_add_rec_to_site_setting($id_sect,"Максимальная температура с термометра","37",'LS_max_termometr_value') ;
    // нигде не используется
    //SETUP_add_rec_to_site_setting($id_sect,"Запрет ручного ввода данных медосмотра",0,'LS_ban_mo_hand_check',array('el'=>'checkbox')) ;

	$id_sect=SETUP_add_section_to_site_setting('Отладка МО') ;
    SETUP_add_rec_to_site_setting($id_sect,"Логгирование этапов МО",0,'LS_mo_logging_full',array('el'=>'checkbox')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Логгирование терминалов",0,'LS_term_logging_full',array('el'=>'checkbox')) ;
	SETUP_add_rec_to_site_setting($id_sect,"Логгирование обмена с терминалом",0,'LS_trace_term',array('el'=>'checkbox')) ;
	SETUP_add_rec_to_site_setting($id_sect,"Логгирование показа кнопки Допустить",0,'LS_mo_log_button_dopusk',array('el'=>'checkbox')) ;
	// перенесено в m_egine_admin
    //SETUP_add_rec_to_site_setting($id_sect,"Использовать сертификат при обращении к терминалу",0,'LS_use_sertificat_to_req_term',array('el'=>'checkbox')) ;

    $id_sect=SETUP_add_section_to_site_setting('Оповещение') ;
    SETUP_add_rec_to_site_setting($id_sect,"Оповещать о запрете допуска по алкоголю",0,'LS_mo_notife_alco',array('el'=>'checkbox')) ;
    SETUP_add_rec_to_site_setting($id_sect,"email для оповещения по алкоголю",'','LS_mo_notife_alco_email') ;
	SETUP_add_rec_to_site_setting($id_sect,"Название организации, проводящей МО,",'ООО "КВАЗАР"','LS_mo_org_name') ;

    $id_sect=SETUP_add_section_to_site_setting('РМВ') ;
    SETUP_add_rec_to_site_setting($id_sect,"Сокращенный формат РМВ",'','LS_doctor_workspace_shortcut',array('el'=>'checkbox','descr'=>'Фильтр "Пропуск" с автоматическим считыванием пропуска по заданной длине')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Сокращенный формат РМВ: при поиске по номеру пропуска выводить только МО за последние n-часов времени действия допуска",'','LS_doctor_workspace_shortcut_allow_interval',array('el'=>'checkbox','descr'=>'Если опция выключена будут отображены МО за текущую сессию фельдшера')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Длина пропуска для автоматического считывания в сокращенном формате РМВ и при печати талона (/ticket/)",8,'LS_ticket_pass_number_length') ;
    SETUP_add_rec_to_site_setting($id_sect,"Использовать альтернативный цвет для послесменного/послерейсового осмотра",0,'LS_alternative_color_for_postshift_medexam',array('el'=>'checkbox')) ;
    SETUP_add_rec_to_site_setting($id_sect,"РМВ - фильтр ФИО сотрудника искать в МО за последние n-часов",24,'LS_doctor_workspace_name_filter_hour_before',array('human'=>'hour')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Название головной организации",'','LS_main_org_name',array('descr'=>'Название организации, которое будет показано в заголовке отчета за смену')) ;

    $id_sect=SETUP_add_section_to_site_setting('Печать талона');
   	SETUP_add_rec_to_site_setting($id_sect,"Тип принтера на терминале для печати талона:",0,'LS_terminal_ticket_printer_type',array('el'=>'select','array'=>'ESMO/arr_terminal_printer_type'));
   	SETUP_add_rec_to_site_setting($id_sect,"Отправлять на терминал чек о прохождениии МО",0,'LS_mo_success_send_ticket_to_term',array('el'=>'checkbox'));
   	SETUP_add_rec_to_site_setting($id_sect,"Отправлять на терминал чек о прохождениии МО при наличии допуска",0,'LS_mo_success_send_ticket_to_term_DD',array('el'=>'checkbox'));
   	SETUP_add_rec_to_site_setting($id_sect,"Отправлять на терминал чек о прохождениии МО только для заданных типов МО",'0,1,2,3,4,5','LS_mo_success_send_ticket_to_term_mo_type',array('el'=>'multiselect','array'=>'ESMO/ARR_mo_tk_type'));
   	SETUP_add_rec_to_site_setting($id_sect,"Текст талона на терминале по результатам прохождения МО (предсменный)","Прошел предсменный осмотр, к исполнению трудовых обязанностей допущен",'LS_term_ticket_text_tk0',array('el'=>'textarea'));
   	SETUP_add_rec_to_site_setting($id_sect,"Текст талона на терминале по результатам прохождения МО (послесменный)","Прошел послесменный осмотр",'LS_term_ticket_text_tk1',array('el'=>'textarea'));
   	SETUP_add_rec_to_site_setting($id_sect,"Текст талона на терминале по результатам прохождения МО (межсменный)","Прошел межсменный осмотр",'LS_term_ticket_text_tk2',array('el'=>'textarea'));
   	SETUP_add_rec_to_site_setting($id_sect,"Печатать название организации сотрудника на талоне",1,'LS_terminal_ticket_org_name',array('el'=>'checkbox','descr'=>'Если настройка выключена, будет использовано название организации, проводящей МО, из настройки LS_mo_org_name' ));
   	SETUP_add_rec_to_site_setting($id_sect,"Лицензия на проведение МО, номер","",'LS_terminal_ticket_license_number',array('descr'=>'Пример: ЛО-77-01-019896' ));
   	SETUP_add_rec_to_site_setting($id_sect,"Лицензия на проведение МО, дата выдачи - срок действия","",'LS_terminal_ticket_license_date',array('descr'=>'Пример: 07.05.2020, бессрочно' ));

	$id_sect=SETUP_add_section_to_site_setting('Пост печати') ;
	SETUP_add_rec_to_site_setting($id_sect,"Печатать послесменные МО",0,'LS_post_print_tk_1',array('el'=>'checkbox')) ;
	SETUP_add_rec_to_site_setting($id_sect,"Текст талона по результатам прохождения МО (предсменный)","<div style='line-height:1.2em;font-size:14px;'>Медицинский осмотр пройден<br>{mo/personal_name}<br>{mo/_data}<br>{mo/_doctor_name}<div style='font-size:10px'>ЭЦП:{doctor/certificate/SerialNumber}</div></div>",'LS_mo_ticket_text',array('el'=>'textarea','shieldHTMLChar'=>1)) ;
	SETUP_add_rec_to_site_setting($id_sect,"Текст талона по результатам прохождения МО (послесменный)","<div style='line-height:1.2em;font-size:14px;'>Послесменный осмотр пройден<br>{mo/personal_name}<br>{mo/_data}<br>{mo/_doctor_name}<div style='font-size:10px'>ЭЦП:{doctor/certificate/SerialNumber}</div></div>",'LS_mo_ticket_text_tk1',array('el'=>'textarea','shieldHTMLChar'=>1)) ;


    $id_sect=SETUP_add_section_to_site_setting('Trassir') ;
    SETUP_add_rec_to_site_setting($id_sect,"Использовать видеонаблюдение Trassir:",0,'LS_trassir_enable',array('el'=>'checkbox')) ;
    SETUP_add_rec_to_site_setting($id_sect,"URL к Trassir Gateway:",'http://localhost:9999','LS_trassir_url') ;
    SETUP_add_rec_to_site_setting($id_sect,"Разбор инцидентов - время от начала МО, сек",'15','LS_trassir_time_before_ME',array('human'=>'sec')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Разбор инцидентов - время после МО, сек",'10','LS_trassir_time_after_ME',array('human'=>'sec')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Разбор инцидентов - РМВ время от начала МО, сек",'30','LS_trassir_time_before_hand_ME',array('human'=>'sec')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Разбор инцидентов - РМВ время после МО, сек",'10','LS_trassir_time_after_hand_ME',array('human'=>'sec')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Сдвиг часового пояса, часов",'3','LS_trassir_time_offset',array('human'=>'hour')) ;

    $id_sect=SETUP_add_section_to_site_setting('Выгрузка инструктажей (JSON)') ;
    SETUP_add_rec_to_site_setting($id_sect,"Токен доступа к сервису «Сотрудники, запланированные на инструктаж»",'','LS_esmo_magnit_planned_instruction_access_token',array('descr'=>'Секрет для URL /services/esmo_magnit_instruction/personals_planned_instruction/. Передавайте Authorization: Bearer и токен или параметр access_token. Пустое значение — проверка токена отключена.')) ;
    SETUP_add_rec_to_site_setting($id_sect,"Максимум строк в одном ответе этого сервиса",'10000','LS_esmo_magnit_planned_instruction_max_rows_per_response',array('descr'=>'Верхняя граница параметра limit (число записей items за один запрос). По умолчанию 10000.')) ;

    $id_sect=SETUP_add_section_to_site_setting('Документы к МО') ;
    SETUP_add_rec_to_site_setting($id_sect,"Модели МО после которых можно создать документы к МО",'5,6,7,8,9,10','LS_mo_model_create_docs',array('el'=>'multiselect','array'=>'ARR_model_osmotr','descr'=>'Должна быть выбрана хотя бы одна модель')) ;
    SETUP_add_rec_to_site_setting($id_sect,'Тип документа "Направление в поликлинику по АГ"',0,'LS_doc_napravlenie_type',array('el'=>'select','array'=>'ARR_doc_napravlenie_type')) ;
    SETUP_add_rec_to_site_setting($id_sect,'Тип документа "Направление в наркодиспансер"',0,'LS_doc_napravlenie_narko_type',array('el'=>'select','array'=>'ARR_doc_napravlenie_narko_type')) ;
    SETUP_add_rec_to_site_setting($id_sect,'Тип документа "Справка"',0,'LS_doc_spravka_type',array('el'=>'select','array'=>'ARR_doc_spravka_type')) ;
    SETUP_add_rec_to_site_setting($id_sect,'Тип документа "Протокол контроля трезвости"',0,'LS_doc_protokol_trezvosti_type',array('el'=>'select','array'=>'ARR_doc_protokol_trezvosti_type')) ;
    SETUP_add_rec_to_site_setting($id_sect,'Отображать ЭЦП в документе',1,'LS_doc_view_EDS',array('el'=>'checkbox')) ;
    SETUP_add_rec_to_site_setting($id_sect,'Использовать подпись аккаунта в документе',1,'LS_doc_view_signature',array('el'=>'checkbox')) ;

    $id_sect=SETUP_add_section_to_site_setting('Мониторинг') ;
    SETUP_add_rec_to_site_setting($id_sect,'Отображать дату рождения сотрудника в строке МО',0,'LS_mo_session_tr_display_birthdate',array('el'=>'checkbox')) ;
    SETUP_add_rec_to_site_setting($id_sect,'Отображать слово "автоматически" в графе "Допуск" есмо МО пройден на терминале',0,'LS_mo_print_automatically',array('el'=>'checkbox')) ;

	SETUP()->reg_cron('Обновление статусов уклонистов','ESMO/update_uklonist_status','*/2 * * * *',array('enabled'=>1)) ;
	SETUP()->reg_cron('Удаление старых фото МО сотрудников','ESMO/clear_mo_old_images','0 3 * * *',array('enabled'=>1)) ;
	SETUP()->reg_cron('Перенос данных МО из оперативной таблицы','ESMO/copy_mo_from_now','*/5 * * * *',array('enabled'=>0)) ;

	SETUP()->reg_event_lister('examination_result','ESMO','on_event_examination_result') ;         //
	SETUP()->reg_event_lister('fixed_hand_check_allow','ESMO','on_event_examination_result') ;         //
	SETUP()->reg_event_lister('fixed_hand_check_denited','ESMO','on_event_examination_result') ;         //
	SETUP()->reg_event_lister('mo_dopusk_allow','ESMO','on_event_examination_result') ;         //
	SETUP()->reg_event_lister('hand_check_clear','ESMO','on_event_examination_result') ;         //

    // создавем вьюверы
    $sql='create view view_mo_session as
                select  t1.*,
                        (t1.e_data-t1.c_data) as mo_dlit,
                        t2.pkey as personal_id,
                        t2.obj_name as member_name,
                        t2.obj_name as personal_name,
                        t2.uid as member_uid,
                        t2.tab_number as member_tabnumber,
                        t2.client_id as member_client_id,
                        t2.dr as member_dr,
                        t2.age as personal_age,
                        t2.pol as member_pol,
                        t2.demo_access as member_demo_access,
                        t2.driving as member_driving,
                        t2.group_id as personal_group_id,
                        t2.parent as member_parent,
                        t2.parent as personal_parent,
                        t2.parent1 as personal_parent1,
                        t2.parent2 as personal_parent2,
                        t2.parent3 as personal_parent3,
                        t2.parent4 as personal_parent4,
                        t2.parent5 as personal_parent5,
                        t2.parent6 as personal_parent6,
                        t2.parent7 as personal_parent7,
                        t2.parent8 as personal_parent8,
                        t2.parent9 as personal_parent9,
                        t2.enabled as member_enabled,
                        t2.enabled as personal_enabled,
                        t2.working,
                        t2.age,
                        t2.propusk,
                        t2.sign_id,
                        t2.intro_level,
                        t2.danger as personal_danger_work,
                        t2._image_name as member_img,
                        t2._image_name as personal_img,
                        t3.pkey as _otdel_id,
                        t3.obj_name as _otdel_name,
                        t4.pkey as _ord_id,
                        t4.pkey as _org_id,
                        t4.obj_name as _org_name,
                        t5.obj_name as terminal_name,
                        t5.virt as terminal_virt,
                        t5.stream_name_1 as _term_cam_1,
                        t_grp.obj_name as group_name,
                        t_grp.pkey as term_group_id
                from obj_site_mo_session t1
                left join obj_site_personals t2 on t2.pkey=t1.member_id
                left join obj_site_personals t3 on t3.pkey=t2.parent3
                left join obj_site_personals t4 on t4.pkey=t2.parent2
                left join obj_site_account t5 on t5.id=t1.terminal_id and t5.clss=203
                left join obj_site_account t_grp on t_grp.pkey=t5.parent
                where not t2.pkey is null
                
                ' ;
    // TODO убрано ограничение по member_id из вьювера так как в этом случае не видно МО с неправильной авторизацией
    create_viewer('view_mo_session',$sql) ;

 // создавем вьюверы
    $sql='create view view_mo_session_now as
                select  t1.*,
                        (t1.e_data-t1.c_data) as mo_dlit,
                        t2.pkey as personal_id,
                        t2.obj_name as member_name,
                        t2.obj_name as personal_name,
                        t2.uid as member_uid,
                        t2.tab_number as member_tabnumber,
                        t2.client_id as member_client_id,
                        t2.dr as member_dr,
                        t2.age as personal_age,
                        t2.pol as member_pol,
                        t2.demo_access as member_demo_access,
                        t2.driving as member_driving,
                        t2.group_id as personal_group_id,
                        t2.parent as member_parent,
                        t2.parent as personal_parent,
                        t2.parent1 as personal_parent1,
                        t2.parent2 as personal_parent2,
                        t2.parent3 as personal_parent3,
                        t2.parent4 as personal_parent4,
                        t2.parent5 as personal_parent5,
                        t2.parent6 as personal_parent6,
                        t2.parent7 as personal_parent7,
                        t2.parent8 as personal_parent8,
                        t2.parent9 as personal_parent9,
                        t2.enabled as member_enabled,
                        t2.enabled as personal_enabled,
                        t2.working,
                        t2.age,
                        t2.propusk,
                        t2.sign_id,
                        t2.intro_level,
                        t2._image_name as member_img,
                        t2._image_name as personal_img,
                        t3.pkey as _otdel_id,
                        t3.obj_name as _otdel_name,
                        t4.pkey as _ord_id,
                        t4.pkey as _org_id,
                        t4.obj_name as _org_name,
                        t5.obj_name as terminal_name,
                        t5.virt as terminal_virt,
                        t5.stream_name_1 as _term_cam_1,
                        t_grp.obj_name as group_name
                from obj_site_mo_session_now t1
                left join obj_site_personals t2 on t2.pkey=t1.member_id
                left join obj_site_personals t3 on t3.pkey=t2.parent3
                left join obj_site_personals t4 on t4.pkey=t2.parent2
                left join obj_site_account t5 on t5.id=t1.terminal_id and t5.clss=203
                left join obj_site_account t_grp on t_grp.pkey=t5.parent' ;
    // TODO убрано ограничение по member_id из вьювера так как в этом случае не видно МО с неправильной авторизацией
    create_viewer('view_mo_session_now',$sql) ;

       $sql='create view view_mo_session22 AS 
          select t1.*,
                t2.pkey AS personal_id,
                t2.obj_name AS member_name,
                t2.obj_name AS personal_name,
                t2.uid AS member_uid,
                t2.client_id AS member_client_id,
                t2.dr AS member_dr,
                t2.age AS personal_age,
                t2.pol AS member_pol,
                t2.demo_access AS member_demo_access,
                t2.driving AS member_driving,
                t2.parent AS member_parent,
                t2.parent AS personal_parent,
                t2.parent1 AS personal_parent1,
                t2.parent2 AS personal_parent2,
                t2.parent3 AS personal_parent3,
                t2.parent4 AS personal_parent4,
                t2.parent5 AS personal_parent5,
                t2.parent6 AS personal_parent6,
                t2.parent7 AS personal_parent7,
                t2.parent8 AS personal_parent8,
                t2.parent9 AS personal_parent9,
                t2.enabled AS member_enabled,
                t2.enabled AS personal_enabled,
                t2.working AS working,
                t2.age AS age,
                t2.propusk AS propusk,
                t2.sign_id AS sign_id,
                t2._image_name AS member_img,
                t2._image_name AS personal_img,
                t3.pkey AS _otdel_id,
                t3.obj_name AS _otdel_name,
                t4.pkey AS _ord_id,
                t4.pkey AS _org_id,
                t4.obj_name AS _org_name,
                t5.obj_name AS terminal_name,
                t5.stream_name_1 AS _term_cam_1,
                t_grp.obj_name AS group_name
                from  obj_site_mo_session t1 
                left join obj_site_personals t2 on t2.pkey = t1.member_id 
                left join obj_site_personals t3 on t3.pkey = t2.parent and t3.clss = 208 
                left join obj_site_personals t4 on t4.pkey = t3.parent and t4.clss = 207 
                left join obj_site_account t5 on t5.id = t1.terminal_id and t5.clss = 203 
                left join obj_site_account t_grp on t_grp.pkey = t5.parent' ;
    create_viewer('view_mo_session22',$sql) ;


    // создавем вьюверы
    $sql='create view view_personal_mo as
                select  t1.*,
                        (select count(pkey) from obj_site_mo_session t_mo where t_mo.member_id=t1.pkey and t_mo.model>0) as cnt_mo,
                        (select min(c_data) from obj_site_mo_session t_mo where t_mo.member_id=t1.pkey and t_mo.model>0) as first_mo,
                        (select max(c_data) from obj_site_mo_session t_mo where t_mo.member_id=t1.pkey and t_mo.model>0) as last_mo
                from view_personals t1
                ' ;
    create_viewer('view_personal_mo',$sql) ;

    $sql='create view view_personals_select_alco as
                select  *
               from view_personals
               where pkey in (select distinct(member_id) from obj_site_mo_session where dopusk=2 and res_a=2) and enabled=1
                ' ;
    create_viewer('view_personals_select_alco',$sql) ;

    if (!_sizeof($GLOBALS['install_options']) or $GLOBALS['install_options']['viewers'])
    { if (_sizeof(_IL('IL_group_medic')->recs))  foreach(_IL('IL_group_medic')->recs as $rec_group)  ESMO()->group_medic_change($rec_group['id']) ;

    $sql='create view view_personals_medic_group as
            select  *
            from view_personals
            where clss=211 and pkey in (select o_id from obj_site_link where p_clss=254) 
            ' ;
      create_viewer('view_personals_medic_group',$sql) ;
    }


}




?>
