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

class PrintDaftarLaporanRegistrasiMhsBaru extends HtmlResponse{
   function TemplateModule() {
      $this->SetTemplateBasedir($this->mrConfig->mApplication['docroot'].'module/laporan_registrasi_mhs_baru/template');
      $this->SetTemplateFile('print_laporan_registrasi.html');
   }
   
   function TemplateBase() {
      $this->SetTemplateBasedir(GTFWConfiguration::GetValue('application', 'docroot') . 'main/template/');
      $this->SetTemplateFile('document-print-rekapitulasi-mhs-baru.html');
      $this->SetTemplateFile('layout-common-print.html');
   }
   function ProcessRequest(){
      $lapObj= new AppLaporanRegistrasMhsBaru();
      
      $periode = $_SESSION['periode'];
      $jenjang = $_SESSION['jenjang'];
      $jalur   = $_SESSION['jalur'];
      $tanggal = $_SESSION['tanggal'];

      
      if($periode=='all'){
         $periode='';
      }
      
      if($jenjang=='all'){
         $jenjang='';
      }      
      
      if($jalur=='all'){
         $jalur='';
      }
      
      if($tanggal=='all'){
         $tanggal='';
      }
      

      $dataLaporanRegistrasi = $lapObj->GetRekapMhsBaru($periode,$jalur,$tanggal,$jenjang);
      $return['dataLaporanRegistrasi'] = $dataLaporanRegistrasi;
      $return['tanggal'] = $tanggal;
      return $return;
   }
   
   function ParseTemplate($data=NULL){
      $tanggalInd =IndonesianDate($data['tanggal'],'YYYY-MM-DD');
      $tanggal =empty($tanggalInd)?'Semua':$tanggalInd;
      $dataLaporanRegistrasi = $data['dataLaporanRegistrasi'];
            $this->mrTemplate->AddVar('content', 'TANGGAL', $tanggal);
      if (empty($dataLaporanRegistrasi)) {
         $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($dataLaporanRegistrasi);$i++){
            if($fakKode!=$dataLaporanRegistrasi[$i]['fak_kode']){
               $dataLaporan[$no]['fak_nama']=$dataLaporanRegistrasi[$i]['fak_nama'];
               $no++;
             $j=0;
            }
            $dataProdi[$no-1][$j]['prodi_kode']= $dataLaporanRegistrasi[$i]['prodi_kode'];
            $dataProdi[$no-1][$j]['prodi_nama']= $dataLaporanRegistrasi[$i]['prodi_nama'];
            $dataProdi[$no-1][$j]['jml_jk_lk']= $dataLaporanRegistrasi[$i]['jml_lk'];
            $dataProdi[$no-1][$j]['jml_jk_pr']= $dataLaporanRegistrasi[$i]['jml_pr'];
            $dataProdi[$no-1][$j]['jml_jk_na']= $dataLaporanRegistrasi[$i]['jml_na'];
            $dataProdi[$no-1][$j]['jml_mhs']=($dataLaporanRegistrasi[$i]['jml_lk']+$dataLaporanRegistrasi[$i]['jml_pr']+$dataLaporanRegistrasi[$i]['jml_na']);
            $dataLaporan[$no-1]['jml_lk']+=$dataLaporanRegistrasi[$i]['jml_lk'];
            $dataLaporan[$no-1]['jml_pr']+=$dataLaporanRegistrasi[$i]['jml_pr'];
            $dataLaporan[$no-1]['jml_na']+=$dataLaporanRegistrasi[$i]['jml_na'];
            $dataLaporan[$no-1]['jml_tot']+=$dataProdi[$no-1][$j]['jml_mhs'];
            $totalPr+=$dataLaporanRegistrasi[$i]['jml_pr'];
            $totalLk+=$dataLaporanRegistrasi[$i]['jml_lk'];
            $totalNA+=$dataLaporanRegistrasi[$i]['jml_na'];

            $j++;
            $fakKode=$dataLaporanRegistrasi[$i]['fak_kode'];
         }

         for($i=0;$i<sizeof($dataLaporan);$i++){
            $this->mrTemplate->clearTemplate('data_prodi_item');
            for($j=0;$j<sizeof($dataProdi[$i]);$j++){
               $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_PR',$totalPr); 
         $this->mrTemplate->AddVar('content', 'TOTAL_LK',$totalLk); 
         $this->mrTemplate->AddVar('content', 'TOTAL_NA',$totalNA);
         $this->mrTemplate->AddVar('content', 'TOTAL_MHS',$totalPr+$totalLk+$totalNA);
      }
   }
}
?>