<?php
class report_person_training extends c_report
{
 var $title='Журнал обучения по сотруднику' ;
 var $view_by_space_filter=1 ;
 var $event_id=0 ;
 var $personal_id=0 ;
 var $rec_personal=array() ;
 var $rec_event=array() ;
 //var $allow_export_to_csv=1 ;

 function init($options=array())
 { if (!$GLOBALS['_SETTING']['modules']['event']) return ;
   if ($this->event_id) $this->rec_event=EVENTS()->get_event_by_id($this->event_id)  ;
   if ($this->personal_id) $this->rec_personal=PERSONAL()->get_personal_by_id($this->personal_id)  ;
   if ($this->filter['name'])
   { $this->rec_personal=PERSONAL()->get_personal_by_name($this->filter['name'])  ;
     $this->personal_id=$this->rec_personal['pkey'] ;
   }
   if ($this->filter['event_id'])
   { $this->rec_event=EVENTS()->get_event_by_id($this->filter['event_id'])  ;
     $this->event_id=$this->rec_event['pkey'] ;
   }
 }
 function setting($options=array())
 {   $arr_instruktions=execSQL('select pkey,obj_name from obj_site_events_schedule where clss=222 and obj_name!="" and ext like "%instruction%" order by c_data desc') ;
     ?><div id="panel_filter">
             <form id="sky-form" class="sky-form"><input type="hidden" name="filter_dir" value="<?echo _CUR_REPORT_DIR?>">
                  <fieldset>
                      <div class="row">
                          <? $this->filter_section_select('event_id','Инструктажи:',2,$arr_instruktions) ;
                             $this->filter_section_input_text('name','ФИО:',3,array('auto_complete'=>"autocomplette_personal_name")) ;
                          ?>
                        </div>
                  </fieldset>
                  <?$this->panel_buttons();?>
              </form>
       </div><br>
     <?
  }

 // шаблон - вывод ссылками без разделитея
  function HTML_report_body($options=array())
  { // список всех тем по мероприятию
    if (!$this->rec_personal['pkey']) return ;
    if (!$this->rec_event['pkey']) return ;

    $recs_themes=execSQL('select * from obj_site_events_themes where parent='.$this->event_id.' order by indx') ;
    // занятия, которые прослушал сотрудник
    $recs_lession_by_pers=execSQL('select t1.parent as lession_id,t2.time_from,t2.status,t2.account_id,t1.sign_fname 
                                   from obj_site_lession_persons t1 
                                   left join  obj_site_lession t2 on t2.pkey=t1.parent
                                   where t1.event_id='.$this->event_id.' and t1.personal_id='.$this->personal_id.' and t1.status=4') ;
    // собираем темы всех занятий, которые были успешно прочитаны сотрудникам
    // пока тут и темы неоконченных занятий
    $arr_lession_themes=array() ;
    $arr_themes=execSQL('select parent as lession_id,theme_id from obj_site_lession_themes where event_id='.$this->event_id,0,1) ;
    if (_sizeof($arr_themes)) foreach($arr_themes as $rec)  $arr_lession_themes[$rec['theme_id']][$rec['lession_id']]=1 ;
    //damp_array($arr_lession_themes,1,-1) ;

    ?><table class="basic fz_small full auto">
          <tr><th>Дата проведения урока</th><th>Кол-во часов</th><th>Пройдено на уроке</th><th>Подпись преподователя</th><th>Подпись сотрудника</th></tr>
          <?if (_sizeof($recs_themes)) foreach($recs_themes as $rec)
            {   $rec_lession=array() ;
                ?><tr>
                    <td><? if (_sizeof($arr_lession_themes[$rec['pkey']])) foreach($arr_lession_themes[$rec['pkey']] as $lession_id=>$tt)
                             if (isset($recs_lession_by_pers[$lession_id])) $rec_lession=$recs_lession_by_pers[$lession_id] ;
                           if ($rec_lession['lession_id']) echo date('d.m.Y',$rec_lession['time_from']) ;
                        ?></td>
                    <td><?echo $rec['length']/60?>
                    <td class="left"><?echo $rec['obj_name']?>
                    <td><? if ($rec_lession['account_id'])
                            { $rec_lektor=ACCOUNTS()->get_member_by_id($rec_lession['account_id']) ;
                              if($rec_lektor['signature']){?><img src="<?echo img_clone($rec_lektor['signature'],'source')?>" width="100"><?}
                            }
                    ?></td>
                    <td><?if ($rec_lession['sign_fname']) echo '<img src="'._PATH_TO_SITE.'/public/instruktions_sign/'.$rec_lession['sign_fname'].'" width=200>' ?></td>
                </tr><?
            }
        ?></table><?

    return ;



    $id=($options['id'])? 'id='.$options['id']:'' ;
    $debug=($_GET['debug'])?  $_GET['debug']:0;
    $i=1 ;
    $arr_themes_by_date=array() ;
    $recs_lession=execSQL('select t1.pkey,t1.obj_name,t1.theme_id,t2.status,t2.time_from 
                           from obj_site_lession_themes t1
                           left join  obj_site_lession t2 on t2.pkey=t1.parent
                           where t1.event_id='.$this->event_id.' 
                           having t2.status=4',0) ;
    if (_sizeof($recs_lession)) foreach($recs_lession as $rec) $arr_themes_by_date[date('d.m.Y',$rec['time_from'])][$rec['theme_id']]++ ;
    {
      //$arr_themes
    }
    if ($debug) damp_array($arr_themes_by_date,1,-1) ;


    // собираем темы всех занятий, которые были успешно прочитаны сотрудникам
    // пока тут и темы неоконченных занятий
    $arr_lession_themes=array() ;
    $arr_themes=execSQL('select parent as lession_id,theme_id from obj_site_lession_themes where event_id='.$this->event_id,0,1) ;
    if (_sizeof($arr_themes)) foreach($arr_themes as $rec)  $arr_lession_themes[$rec['lession_id']][$rec['theme_id']]=1 ;
    if ($debug) damp_array($arr_lession_themes,1,-1) ;

    // статус прослушанного занятия - 4
    $arr_pers_day_themes=array() ;
    $recs_lession_by_pers=execSQL('select personal_id,c_data,status,parent as lession_id from obj_site_lession_persons t1 where event_id='.$this->event_id.' and personal_id in ('.implode(',',array_keys($list_recs)).') and status=4',0,1) ;

    // надо посчитать сколько тем прослушал сотрудник на основании информации по посещенным занятиям
    if (_sizeof($recs_lession_by_pers)) foreach($recs_lession_by_pers as $rec)
    {   if (_sizeof($arr_lession_themes[$rec['lession_id']])) foreach($arr_lession_themes[$rec['lession_id']] as $theme_id=>$t)
            $arr_pers_day_themes[$rec['personal_id']][date('d.m.Y',$rec['c_data'])][$theme_id]++ ;
    }
    if ($debug) damp_array($arr_pers_day_themes,1,-1) ;

    ?><table class="basic fz_small full auto"<?echo $id?>>
        <tr><th rowspan="2">№</th><th rowspan="2">ФИО</th><th colspan="<?echo _sizeof($arr_themes_by_date)?>">Дата занятий</th></tr>
        <tr><?if (_sizeof($arr_themes_by_date)) foreach($arr_themes_by_date as $date=>$theme_ids) {?><th><?echo $date?></th><?}?></tr>
        <?if (_sizeof($list_recs)) foreach($list_recs as $rec)
          {   ?><tr>
                  <td><?echo $i?></td>
                  <td class="left"><?echo $rec['obj_name']?>
                  <? // $theme_ids - список тем, котоые были прочитаны в этот день  $date
                    if (_sizeof($arr_themes_by_date)) foreach($arr_themes_by_date as $date=>$theme_ids) {?><td>
                    <?  // в массиве $arr_pers_day_themes собраны темы, прослушанные сотрудником в течении дня
                        // если сотрудник в этот день прослушал все темы, что были прочитаны в этот день - ставим галочку
                        if (_sizeof($arr_pers_day_themes[$rec['pkey']][$date])==_sizeof($theme_ids)) echo '<i class="fa fa-check"></i>' ;
                    ?></td><?}?>
              </tr><?
              $i++;
          }
      ?></table><?
      //damp_array($rec) ;
  }


}

?>
