<?php
require_once GTFWConfiguration::GetValue( 'application', 'docroot') . 'module/laporan_jml_mhs_baru_asal_sekolah/business/AppLaporanJmlMhsBaruAsalSekolah.class.php';
require_once GTFWConfiguration::GetValue( 'application', 'docroot') . 'main/function/date.php';

class ViewLaporanJmlMhsBaruAsalSekolah extends HtmlResponse{
   function TemplateModule() {
      $this->SetTemplateBasedir(GTFWConfiguration::GetValue( 'application', 'docroot').'module/laporan_jml_mhs_baru_asal_sekolah/template');
      $this->SetTemplateFile('view_laporan_jml_mhs_baru_asal_sekolah.html');
   }
   
   function ProcessRequest() {
      $lapObj = new AppLaporanJmlMhsBaruAsalSekolah();
      
      $msg = Messenger::Instance()->Receive(__FILE__);
      $return['Pesan'] = $msg[0][1];
      $return['css'] = $msg[0][2];

       if((isset($_POST['btncari']))) {
          if((isset($_POST['btncari']))) {
            $tahunMasuk=$_POST['tahun_masuk'];
            $semsMasuk=$_POST['sems_masuk'];
            $jenjang=$_POST['jenjang'];
            $jalurMasuk=$_POST['jalur_masuk'];

         }elseif(isset($_GET['cari'])){
         
            $tahunMasuk = Dispatcher::Instance()->Decrypt($_GET['tahun_masuk']);
            $semsMasuk = Dispatcher::Instance()->Decrypt($_GET['sems_masuk']);
            $jenjang=Dispatcher::Instance()->Decrypt($_GET['jenjang']);
            $jalurMasuk=Dispatcher::Instance()->Decrypt($_GET['jalur_masuk']);
           
         }else{
            $tahunMasuk="";
            $semsMasuk="";
            $jenjang="";
            $jalurMasuk="";

         }
         
         $_SESSION['tahunMasuk']=$tahunMasuk->Raw();
         $_SESSION['semsMasuk']=$semsMasuk->Raw();
         $_SESSION['jenjang']=$jenjang->Raw();
         $_SESSION['jalurMasuk']=$jalurMasuk->Raw();
      }
      $thnMasuk=$lapObj->GetTahunPeriodeAktif();
      $semesterMasuk=$lapObj->GetPeriodeAktif();
      //print_r($thnMasuk);
      if($tahunMasuk=='all'){
         $tahunMasuk='';
      }
      if($semsMasuk=='all'){
         $semsMasuk='';
      }

      if($jenjang=='all'){
         $jenjang='';
      }  
      
      if($jalurMasuk=='all'){
         $jalurMasuk='';
      }      
      
      $dataTahun=$lapObj->GetTahunMasuk();
      $dataSemester=$lapObj->GetSemesterMasuk();
      $dataJenjangAkademik = $lapObj->GetJenjangAkademik();
      $dataJalurMasuk = $lapObj->GetJalurMasuk();
      $dataLaporanJmlMhsBaru = $lapObj->GetRekapMhsBaru($tahunMasuk,$semsMasuk,$jalur,$jenjang);

      Messenger::Instance()->SendToComponent('combobox', 'Combobox', 'view', 'html', 'tahun_masuk',
            array('tahun_masuk',$dataTahun,$tahunMasuk,'true',''), Messenger::CurrentRequest);     

      Messenger::Instance()->SendToComponent('combobox', 'Combobox', 'view', 'html', 'sems_masuk',
            array('sems_masuk',$dataSemester,$semsMasuk,'true',''), Messenger::CurrentRequest);
            
      Messenger::Instance()->SendToComponent('combobox', 'Combobox', 'view', 'html', 'jenjang',
         array('jenjang',$dataJenjangAkademik,$jenjang,'true',''), Messenger::CurrentRequest);

      Messenger::Instance()->SendToComponent('combobox', 'Combobox', 'view', 'html', 'jalur',
            array('jalur',$dataJalurMasuk,$jalur,'true',''), Messenger::CurrentRequest);
      
      $return['pesan'] = $msg[0][1];
      $return['css'] = $msg[0][2];    
      $return['tahunMasuk'] = $thnMasuk;
      $return['semesterMasuk'] = $semesterMasuk;
      $return['dataLaporanJmlMhsBaru'] = $dataLaporanJmlMhsBaru;
      return $return;
   }

   function ParseTemplate($data = NULL) {
      $dataLaporanJmlMhsBaru = $data['dataLaporanJmlMhsBaru'];
      $tahunMasuk=$data['tahunMasuk'];
      $semesterMasuk=$data['semesterMasuk'];
      
      $this->mrTemplate->AddVar('content', 'URL_SEARCH', 
         Dispatcher::Instance()->GetUrl('laporan_jml_mhs_baru_asal_sekolah', 'laporanJmlMhsBaruAsalSekolah', 'view', 'html'));
      $this->mrTemplate->AddVar('content', 'URL_EXCEL', 
         Dispatcher::Instance()->GetUrl('laporan_jml_mhs_baru_asal_sekolah', 'excelLaporanJmlMhsBaruAsalSekolah', 'view', 'xls')
         .'&periode='.$periode.'&jenjang='.$jenjang.'&jalur='.$jalur.'&tanggal='.$tanggal);
      $this->mrTemplate->AddVar('content', 'URL_PRINT', 
         Dispatcher::Instance()->GetUrl('laporan_jml_mhs_baru_asal_sekolah', 'daftarLaporanJmlMhsBaruAsalSekolah', 'print', 'html'));

//print($semesterMasuk);
      $periode=$tahunMasuk;
      $periode2=$tahunMasuk+1;
      $this->mrTemplate->AddVar('content', 'PERIODE',$semesterMasuk.' '.$periode.'/'.$periode2);
      
      if($data['pesan']) {
         $this->mrTemplate->SetAttribute('warning_box', 'visibility', 'visible');
         $this->mrTemplate->AddVar('warning_box', 'ISI_PESAN', $data['pesan']);
         $this->mrTemplate->AddVar('warning_box', 'CLASS_PESAN', $data['css']);
      }
      
      if (empty($dataLaporanJmlMhsBaru)) {
         $this->mrTemplate->AddVar('data_laporan_registrasi', 'LAPORAN_EMPTY', 'YES');
      } else {
         $this->mrTemplate->AddVar('data_laporan_registrasi', 'LAPORAN_EMPTY', 'NO');
         $no=0;
         $fakKode='';
         for($i=0;$i<sizeOf($dataLaporanJmlMhsBaru);$i++){
            if($fakKode!=$dataLaporanJmlMhsBaru[$i]['fak_kode']){
               $dataLaporan[$no]['fak_nama']=$dataLaporanJmlMhsBaru[$i]['fak_nama'];
               $no++;
             $j=0;
            }
            $dataProdi[$no-1][$j]['no'] = $j+1;
            $dataProdi[$no-1][$j]['prodi_kode']= $dataLaporanJmlMhsBaru[$i]['prodi_kode'];
            $dataProdi[$no-1][$j]['prodi_nama']= $dataLaporanJmlMhsBaru[$i]['prodi_nama'];
            $dataProdi[$no-1][$j]['jml_skl_agama']= $dataLaporanJmlMhsBaru[$i]['jml_skl_agama'];
            $dataProdi[$no-1][$j]['jml_skl_non_agama']= $dataLaporanJmlMhsBaru[$i]['jml_skl_non_agama'];
            $dataProdi[$no-1][$j]['jml_skl_na']= $dataLaporanJmlMhsBaru[$i]['jml_skl_na'];
            $dataProdi[$no-1][$j]['jml_mhs']= $dataLaporanJmlMhsBaru[$i]['jml_mhs'];
            $dataLaporan[$no-1]['jml_agama']+=$dataLaporanJmlMhsBaru[$i]['jml_skl_agama'];
            $dataLaporan[$no-1]['jml_non_agama']+=$dataLaporanJmlMhsBaru[$i]['jml_skl_non_agama'];
            $dataLaporan[$no-1]['jml_na']+=$dataLaporanJmlMhsBaru[$i]['jml_skl_na'];
            $dataLaporan[$no-1]['jml_tot']+=$dataLaporanJmlMhsBaru[$i]['jml_mhs'];
            $totalAgama+=$dataLaporanJmlMhsBaru[$i]['jml_skl_agama'];
            $totalNonAgama+=$dataLaporanJmlMhsBaru[$i]['jml_skl_non_agama'];
            $totalN_A+=$dataLaporanJmlMhsBaru[$i]['jml_skl_na'];
            $totalMhs+=$dataLaporanJmlMhsBaru[$i]['jml_mhs'];
            $j++;
            $fakKode=$dataLaporanJmlMhsBaru[$i]['fak_kode'];
         }

         for($i=0;$i<sizeof($dataLaporan);$i++){
            $this->mrTemplate->clearTemplate('data_prodi_item');
            for($j=0;$j<sizeof($dataProdi[$i]);$j++){
               if ($j % 2 != 0)  $dataProdi[$i][$j]['class_name'] = '';
               else $dataProdi[$i][$j]['class_name'] = 'table-common-even';
               $this->mrTemplate->AddVars('data_prodi_item', $dataProdi[$i][$j], 'P_');
               $this->mrTemplate->parseTemplate('data_prodi_item', 'a');
           }
            $this->mrTemplate->AddVars('data_laporan_registrasi_item', $dataLaporan[$i], '');
            $this->mrTemplate->parseTemplate('data_laporan_registrasi_item', 'a'); 
         }
         $this->mrTemplate->AddVar('content', 'TOTAL_NA',$totalNonAgama); 
         $this->mrTemplate->AddVar('content', 'TOTAL_A',$totalAgama);
         $this->mrTemplate->AddVar('content', 'TOTAL_N_A',$totalN_A);
         $this->mrTemplate->AddVar('content', 'TOTAL_MHS',$totalMhs); 
      }
   }
}
?>