<?php
if($this->session->userdata('is_logged_in')===FALSE){
            redirect('login');
}

// $idperkara=$this->encrypt->decode(base64_decode($enc));
// $idperkara = intval($idperkara);
// if(!is_numeric($idperkara) OR !intval($idperkara)>0){
//     show_404();
//     exit();
// }
foreach ($template->result() as $template)
{
    $filename=$template->kdtemplate;
    $namafile=str_replace(" ","",$template->namatemplate);
}

$url = base_url("resources/template/putusan/pidana_umum/".$filename.".rtf");
$Template = file_get_contents($url);

#data utama perkara
foreach ($jenis_perkara->result() as $row)
{
    $Template = str_replace('#jenisperkara#',''.$row->nama.'',$Template);
}

$nomorperkara = '';
$nomorsurat = '';
$tanggalsurat = '';
$tanggal_pendaftaran='';

foreach ($data_perkara->result() as $row) 
{
    	$nomorperkara = $row->nomor_perkara;
    	$nomorsurat = $row->nomor_surat;
    	$tanggalsurat=$this->tanggalhelper->convertDate($row->tanggal_surat);
        $tanggal_pendaftaran=$this->tanggalhelper->convertDate($row->tanggal_pendaftaran);
        $dakwaan = strip_tags($row->dakwaan);
}

    if(empty($nomorperkara)){
    	$nomorperkara = '........';
    }
    if(empty($nomorsurat)){
    	$nomorsurat = '........';
    }
    if(empty($tanggalsurat)){
    	$tanggalsurat = '........';
    }
    if(empty($tanggal_pendaftaran)){
    	$tanggal_pendaftaran = '........';
    }
    if(empty($dakwaan)){
    	$dakwaan = '... Isi Dakwaan Disini .....';
    }
    $Template = str_replace('#perkara.nomor_perkara#',''.$nomorperkara.'',$Template);
    $Template = str_replace('#tgl_surat#',''.$tanggalsurat.'',$Template);
    $Template = str_replace('#tgl_pendaftaran#',''.$tanggal_pendaftaran.'',$Template);
    $Template = str_replace('#dakwaan_lengkap#',''.$dakwaan.'',$Template);


#Data Pengadilan
$namapn = '';
$namaketuapn = '';
$alamatpn = '';

foreach ($data_pengadilan->result() as $row) 
{
    $namapn = str_replace('Pengadilan Negeri ','',$row->NamaPN);
    $namapn = str_replace('PENGADILAN NEGERI ','',$row->NamaPN);
    $namaketuapn = $this->templatehelper->standradnaming($row->KetuaPNNama);
    $alamatpn = str_replace('Pengadilan Negeri ','',$row->NamaPN);
}

if(empty($namapn)){
    $namapn = '........';
}
if(empty($namaketuapn)){
    $namaketuapn = '........';
}
if(empty($alamatpn)){
    $alamatpn = '........';
}


#========== Data Panitera
if (!empty($data_panitera)){
    foreach ($data_panitera->result() as $row){
        $nama_pp = $row->panitera_nama;
    }
}else{
    $nama_pp = 'Nama Panitera Pengganti';
}

#========= Data Hakim
$penetapan = '';
$hakim_anggotas = '';
$daftar_majelis = '';
$majelis = true;
$i=1;$j=1;
$hakim_ketua='';
$tgl_penetapan_hakim='';

foreach ($data_hakim->result() as $row) 
{
    $tgl_penetapan_hakim = $this->templatehelper->convertKeTglIndo($row->tanggal_penetapan);
    $nomor_penetapan_majelis = ($row->nomor_sk_penetapan=='')? '..........' : $row->nomor_sk_penetapan;
    if($row->jabatan_hakim_id==1)
    {
        $penetapan .='kami, '.$this->templatehelper->standradnaming($row->nama_gelar).", sebagai ".$row->jabatan_hakim_nama." ";
        $hakim_ketua = $this->templatehelper->standradnaming($row->nama_gelar);
        $daftar_majelis .= $this->templatehelper->standradnaming($row->nama_gelar).' \tab  Hakim Ketua;\\par ';
    }
    elseif($row->jabatan_hakim_id==2)
    {
        if ($i === count($data_hakim->result()))
        {
            $penetapan .= 'dan ';
            $hakim_anggotas .= $this->templatehelper->standradnaming($row->nama_gelar).'';
        }
        else
        {
            $penetapan .= ", ";
            if ($j==1 && $i>1)
            {
                $hakim_anggotas .= $this->templatehelper->standradnaming($row->nama_gelar).'\tab '.$hakim_ketua.'\\par \\par \\par ';
            }
            else
            {
                $hakim_anggotas .= $this->templatehelper->standradnaming($row->nama_gelar).'\\par \\par \\par ';
            }
            
        }
        $penetapan .=$this->templatehelper->standradnaming($row->nama_gelar).' ';
        $daftar_majelis .= $this->templatehelper->standradnaming($row->nama_gelar).' \tab  Hakim Anggota;\\par ';
        $j++;
    }
    elseif($row->jabatan_hakim_id==3)
    {
        $majelis = false;
        $penetapan .=$this->templatehelper->standradnaming($row->nama_gelar).", sebagai Hakim,";
        $daftar_majelis .= $this->templatehelper->standradnaming($row->nama_gelar).' \tab Hakim;\\par ';
        $hakim_ketua = $this->templatehelper->standradnaming($row->nama_gelar);
    }
    $i++;
}
$daftar_majelis .= $this->templatehelper->standradnaming($nama_pp).' \tab  Panitera Pengganti;';

if ((count($data_hakim->result()))>"1"){
    $kalimat_penutup ='Demikianlah diputuskan dalam sidang permusyawaratan Majelis Hakim Pengadilan Negeri #nama_pn#, pada hari #hari_putusan#, tanggal #tgl_putusan#, oleh #majelis#, yang diucapkan dalam sidang terbuka untuk umum pada hari .......... tanggal .......... oleh Hakim Ketua dengan didampingi para Hakim Anggota tersebut, dibantu oleh #nama_pp#, Panitera Pengganti pada Pengadilan Negeri #nama_pn#, serta dihadiri oleh #nama_pu#, Penuntut Umum  dan #pendampingan_pengacara#, Pembimbing Kemasyarakatan, orangtua / wali / orangtua asuh* #terdakwa/paraterdakwa#';
    $Template = str_replace('#penutup_majelis#',$kalimat_penutup,$Template);
    $Template = str_replace('#majelis#',$penetapan.'masing-masing sebagai Hakim Anggota',$Template);
    $Template = str_replace('#hakim/majelishakim#','Majelis Hakim',$Template);
    $Template = str_replace('#header_hakim_anggotas#','Hakim Anggota,\tab Hakim Ketua,',$Template);
    $Template = str_replace('#hakim_anggotas#',$hakim_anggotas,$Template);
    $Template = str_replace('#nama_pp_td#','Panitera Pengganti,\\par \\par \\par '.$nama_pp.' \\par ',$Template);
}else{
    $kalimat_penutup = 'Demikianlah diputuskan pada hari #hari_putusan#, tanggal #tgl_putusan#, oleh #hakim_ketua#, sebagai Hakim pada Pengadilan Negeri #nama_pn#, dan diucapkan dalam sidang terbuka untuk umum pada hari dan tanggal itu juga, dengan dibantu oleh #nama_pp#, Panitera Pengganti pada Pengadilan Negeri #nama_pn#, serta dihadiri oleh #nama_pu#, Penuntut Umum  dan #pendampingan_pengacara#, Pembimbing Kemasyarakatan, orangtua / wali / orangtua asuh* #terdakwa/paraterdakwa#';
    $Template = str_replace('#penutup_majelis#',$kalimat_penutup,$Template);
    $Template = str_replace('#majelis#',$penetapan,$Template);
    $Template = str_replace('#hakim/majelishakim#','Hakim',$Template);
    $Template = str_replace('#header_hakim_anggotas#','Panitera Pengganti,\tab Hakim,',$Template);
    $Template = str_replace('#hakim_anggotas#',$nama_pp.'\tab '.$hakim_ketua,$Template);
    $Template = str_replace('#nama_pp_td#','',$Template);
}
$Template = str_replace('#hakim_ketua#',$hakim_ketua,$Template);
$Template = str_replace('#nama_pp#',''.$nama_pp.'',$Template);
$Template = str_replace('#nama_pn#',''.$this->templatehelper->standradnaming($namapn).'',$Template);
$Template = str_replace('#alamat_pn#',''.$alamatpn.'',$Template);


# Data Penetapan Majelis/pp/jurta
$tglpenetapansidang='';
foreach ($data_penetapan->result() as $row) 
{
    $tglpenetapansidang = $this->templatehelper->convertKeTglIndo($row->penetapan_hari_sidang);    
    $tgl_penetapan_majelis=$this->templatehelper->convertKeTglIndo($row->penetapan_majelis_hakim);
    $nosk_penetapan_majelis=$row->nomor_sk_penetapan_majelis_hakim;

    if (empty($nosk_penetapan_majelis))
    {
        $nosk_penetapan_majelis='...........';
    }
}

if(empty($tglpenetapansidang)){
    $tglpenetapansidang = '...........';
}
$Template = str_replace('#tglpenetapan#',''.$tglpenetapansidang.'',$Template);

#Data Penuntut #
if (!empty($data_penuntut)){
    foreach ($data_penuntut->result() as $row){
        $Template = str_replace('#nama_pu#',''.$this->templatehelper->standradnaming($row->nama).'',$Template);
    }
}

# Data terdakwa
$numbering = true;
if(count($data_terdakwa->result())>1)
{
	for ($i=0; $i < count($data_terdakwa->result()); $i++) 
    { 
		$text = 'terdakwa'.($i+1);
		if($i==count($data_terdakwa->result())-1)
        {
			$Template = str_replace('#loopingterdakwa#','\b#'.$text.'#\b0',$Template);
		}
        else
        {
			$Template = str_replace('#loopingterdakwa#','\b#'.$text.'#\b0\\par'.PHP_EOL.'#loopingterdakwa#',$Template);
		}
		
	}	
}
else
{
	$numbering = false;
	$Template = str_replace('#loopingterdakwa#','#terdakwa#',$Template);
}

$counter = 1;
$pengacara = '';
$pihak2 = '';
$arr_terdakwa = array();
if (!empty($data_terdakwa))
{   
    foreach ($data_terdakwa->result() as $row)
    {
        $arr_terdakwa[]=$row->pihak_id;
        if ($data_terdakwa->num_rows==1) {
            $terdakwa = '\b0\\par ';
        }else{
            $terdakwa = '\b Terdakwa '.$counter.'\b0\\par ';
        }
        $pihak2 = $terdakwa;
        $pihak2 .= '1. \tab Nama lengkap \tab : '.$row->nama.'\\par ';
        $pihak2 .= '2. \tab Tempat lahir \tab : '.$row->tempat_lahir.'\\par ';
        $pihak2 .= '3. \tab Umur/Tanggal lahir \tab : '.$this->tanggalhelper->getSelisihTahun($row->tanggal_lahir,date('Y-m-d')).'/'.$this->templatehelper->convertKeTglIndo($row->tanggal_lahir).'\\par ';
        $row->jenis_kelamin = $row->jenis_kelamin == 'P' ? 'Perempuan': 'Laki-laki';
        $pihak2 .= '4. \tab Jenis kelamin \tab : '.$row->jenis_kelamin.'\\par ';
        $pihak2 .= '5. \tab Kebangsaan \tab : '.$row->warga_negara.'\\par ';
        $pihak2 .= '6. \tab Tempat tinggal \tab : '.$row->alamat.'\\par ';
        $pihak2 .= '7. \tab Agama \tab : '.$row->agama_nama.'\\par ';
        $pihak2 .= '8. \tab Pekerjaan \tab : '.$row->pekerjaan.'\\par \\par ';
        
        //$pihak2 .= 'Terdakwa '.$row['nama'].' #status_thnan# oleh: \\par ';
        $temp = '';
        $datapenahanan =array();

       
        /* looping penahanan */
        
        $counterpenahanan = 1;
        $status_penahanan = '';
            foreach ($data_penahanan->result() as $datapenahanan)
            {
                if (($datapenahanan->status_penahanan=="Ditahan") and ($datapenahanan->pihak_id == $row->pihak_id))
                {
                    $temp = strtolower($datapenahanan->status_penahanan).' dalam '.$datapenahanan->jenis_tahanan;
                    if ($status_penahanan != $datapenahanan->status_penahanan || $status_penahanan ==='')
                    {
                        $pihak2 .= 'Terdakwa '.$row->nama.' '.$temp.' oleh: \\par ';
                    }
                    $oleh=str_replace(' penuntut umum', ' Penuntut', $datapenahanan->oleh);
                    $oleh=str_replace('Penuntut', 'Penuntut Umum', $datapenahanan->oleh);
                    $oleh=str_replace(' PU', ' Penuntut Umum', $datapenahanan->oleh);
                    $oleh=str_replace(' PN', ' Pengadilan Negeri', $datapenahanan->oleh);
                    $oleh=str_replace(' pengadilan negeri', ' Pengadilan Negeri', $datapenahanan->oleh);
                    $oleh=str_replace(' pn', ' Pengadilan Negeri', $datapenahanan->oleh);
                    $oleh=str_replace(' Pn', ' Pengadilan Negeri', $datapenahanan->oleh);
                    $oleh=str_replace(' PT', ' Pengadilan Tinggi ', $datapenahanan->oleh);
                    $oleh=str_replace(' Pengadilan tinggi', ' Pengadilan Tinggi ', $datapenahanan->oleh);
                    $pihak2 .= strval($counterpenahanan).'. \tab '.$oleh.' sejak tanggal '.$this->templatehelper->convertKeTglIndo($datapenahanan->sejak).' sampai dengan tanggal '.$this->templatehelper->convertKeTglIndo($datapenahanan->sampai).' \\par ';
                    $status_penahanan = $datapenahanan->status_penahanan;
                    $counterpenahanan ++;
                }
                else
                {
                    $pihak2 .= ' Tidak ada Penahanan ';
                }
            }
        /* end of looping penahanan */

       	if($numbering==true)
        {
        		$Template = str_replace('#terdakwa'.$counter.'#',$pihak2,$Template);
                $Template = str_replace('#terdakwa/paraterdakwa#','Para Terdakwa',$Template);
                $Template = str_replace('#terdakwa/paraterdakwa2#','PARA TERDAKWA',$Template);
        }
        else
        {
        	   $Template = str_replace('#terdakwa#',$pihak2,$Template);
       		   $Template = str_replace('#terdakwa/paraterdakwa#','Terdakwa',$Template);
        }
        $counter++;
    }
}

# Data pengacara
//if (!empty($data_pengacarapihak2))
if (count($data_pengacarapihak2->result())>"0")
{
    $id_pengacara = '';
    $sembarang ='';
    $ada_pengacara = '';
    $all_parties = array();
    foreach ($data_pengacarapihak2->result() as $row)
    {
        $parties = explode(',', $row->pihak_id);
     
        $nama_terdakwa = '#terdakwa/paraterdakwa#';
        $nama_terdakwa_sendiri = '#terdakwa/paraterdakwa#';
     
        foreach($parties as $val)
        {
            $all_parties[]=$val;

            foreach($data_pihak->result() as $datapihak)
            {
                if ($datapihak->id == $val)
                {
                    if ($nama_terdakwa == '#terdakwa/paraterdakwa#')
                    {
                        $nama_terdakwa = $datapihak->nama;
                    }
                    else
                    {
                        $nama_terdakwa .= ', '.$datapihak->nama;
                    }
                }
            }

            $ada_pengacara =  ' didampingi Penasihat Hukum '.$this->templatehelper->standradnaming($row->nama).', beralamat di '.$row->alamat.' berdasarkan Surat Kuasa Khusus/Penetapan Nomor  \highlight7#mohon-di isi nomor#\highlight0, tanggal \highlight7#mohon-di isi tanggal#\highlight0';
        }

        /*foreach ($arr_terdakwa as $val)
        {
            if(in_array($val, $all_parties))
            {
                
            }
            else
            {
                if ($nama_terdakwa_sendiri == '#terdakwa/paraterdakwa#')
                {
                    $nama_terdakwa_sendiri = $val->nama;
                }
                else
                {
                    $nama_terdakwa_sendiri .= ', '.$val->nama;
                }
            }
            $i++;
        }*/
        if ($sembarang=='')
        {
            //$sembarang = $nama_terdakwa.' didampingi Penasihat Hukum '.standradnaming($row['nama']).', beralamat di '.$row['alamat'].' berdasarkan Surat Kuasa Khusus/Penetapan Nomor  \highlight7#mohon-di isi nomor#\highlight0, tanggal \highlight7#mohon-di isi tanggal#\highlight0 ';
            $sembarang = $nama_terdakwa.$ada_pengacara;
        }
        else
        {
            //$sembarang .= ', sedangkan '.$nama_terdakwa.' didampingi Penasihat Hukum '.standradnaming($row['nama']).', beralamat di '.$row['alamat'].' berdasarkan Surat Kuasa Khusus/Penetapan Nomor  \highlight7#mohon-di isi nomor#\highlight0, tanggal \highlight7#mohon-di isi tanggal#\highlight0 ';
            $sembarang .= ', sedangkan '.$nama_terdakwa.$ada_pengacara;
        }
        
        $id_pengacara=$row->id;
    }

    if ($nama_terdakwa_sendiri != '#terdakwa/paraterdakwa#')
    {
        $sembarang .= ', sedangkan '.$nama_terdakwa_sendiri.' menghadap sendiri';
    }
    $Template = str_replace('#pendampingan_pengacara#',$sembarang,$Template);
}
else
{
    $Template = str_replace('#pendampingan_pengacara#','#terdakwa/paraterdakwa# menghadap sendiri',$Template);
}


if($numbering==true)
{
    $Template = str_replace('#terdakwa/paraterdakwa#','Para Terdakwa',$Template);
    $Template = str_replace('#terdakwa/paraterdakwa2#','PARA TERDAKWA',$Template);
}else{
    $Template = str_replace('#terdakwa/paraterdakwa#','Terdakwa',$Template);
}
#end of data terdakwa

#jadwal sidang#
$tgl_sidangs='';$i=1;
if (!empty($data_jadwal_sidang)){
    foreach ($data_jadwal_sidang->result() as $row){
        if ($i==count($data_jadwal_sidang->result())){
            $tgl_sidangs .= ', dan ';
        }else if($i!=1){
            $tgl_sidangs .= ', ';
        }
        $tgl_sidangs.= 'tanggal '.$this->templatehelper->convertKeTglIndo($row->tanggal_sidang);
        $i++;
    }
}else{
    $tgl_sidangs = '#isi jadwal sidang#';
}
$Template = str_replace('#tanggal_sidangs#',''.$tgl_sidangs.'',$Template);
#end of jadwal sidang#

# Data Putusan
foreach ($data_putusan->result() as $dataputusan)
{
    $amar_putusan=strip_tags($dataputusan->amar_putusan);
    $tgl_putusan=$this->templatehelper->convertKeTglIndo($dataputusan->tanggal_putusan);
    $hari_putusan=$this->templatehelper->getHari($tgl_putusan);
}

if (empty($tgl_putusan)){ $tgl_putusan="#isi dulu tanggal putusan di aplikasi#"; $hari_putusan="#isi dulu tanggal putusan di aplikasi#";}
if (empty($amar_putusan)){ $amar_putusan="#isi dulu amar putusan di aplikasi#"; }

$Template = str_replace('#tanggal_penetapan_majelis#',''.$tgl_penetapan_majelis.'',$Template);
$Template = str_replace('#perkara.nomor_penetapan#',''.$nosk_penetapan_majelis.'',$Template);

$Template = str_replace('#hari_putusan#',''.$hari_putusan.'',$Template);
$Template = str_replace('#tgl_putusan#',''.$tgl_putusan.'',$Template);
$Template = str_replace('#amar_putusan#',''.$amar_putusan.'',$Template);

//$Template = str_replace('#amar_putusan_sela#',''.$amar_putusan_sela.'',$Template);
//$Template = str_replace('#tanggal_putusan_sela#',''.$tanggal_putusan_sela.'',$Template);

header("Content-Type: application/vnd.ms-word");
header("Expires: 0");
header("Cache-Control:  must-revalidate, post-check=0, pre-check=0");
header("Content-disposition: attachment; filename=\"".$namafile."-".$nomorperkara.".rtf\"");
header("Content-length: ".strlen($Template));
print $Template;
exit;
?>
