<?php
defined('BASEPATH') OR exit('No direct script access allowed');

class Service extends CI_Controller{
    public function __construct(){
        parent::__construct();
        $this->load->model("mgeneral");
        //$this->load->library("Funciones");
    }
    public function pdf_boleta($data_ide,$anio,$ugel_ide,$semilla){
        $sem="s3mB0let4";
        if($semilla!=md5($sem."*".$data_ide."*".$anio."*".$ugel_ide)){
            echo "ACCESO INDEBIDO";
            return;
        }
        $config=$this->mgeneral->get_data("*","ugel",array("ugel_ide = $ugel_ide"));
        $tabla="data_".$ugel_ide."_".$anio;
        $boletas=$this->mgeneral->get_boleta_pdf($data_ide,$tabla);
        $borde=0;
        $this->load->library('Pdf');
        $pdf = new pdf('P', 'mm', 'A4', true, 'UTF-8', false);        
        $pdf->setFooterData($tc = array(0, 0, 0), $lc = array(0, 0, 0));
        $pdf->setHeaderFont(Array('', '', 10));
        $pdf->setFooterFont(Array('', '', 10));
        $pdf->SetMargins(20,5,1,1);
        $pdf->SetHeaderMargin(PDF_MARGIN_HEADER);
        $pdf->SetFooterMargin(14);
        $pdf->SetAutoPageBreak(TRUE, 14);
        $pdf->setImageScale(PDF_IMAGE_SCALE_RATIO);
        $pdf->setFontSubsetting(true);
        $pdf->setPrintHeader(false);
        $pdf->setPrintFooter(true);
        
        $pdf->AddPage('P');
        $pdf->SetFillColor(255,255,255);
        $pdf->SetFont('Courier', 'BU', 15, '', true);
        //$pdf->Cell(0,5,"BOLETA DE PAGO",$borde, 1, 'C');
        $pdf->SetFont('Courier', '', 10, '', true);
        $li=explode("\n",$boletas[0]->data_boleta);
        
        $pdf->SetAlpha(0.15);
        $largo=80;
        $izq=(180-$largo)/2+$largo/4;
        $file=site_url("img/".$config[0]->ugel_logo);
        $pdf->Image($file, $izq, 30, $largo, 0, 'JPG', '', '', false, 300, '', false, false, 0, 'C', false, false);
        $pdf->SetAlpha(1);
        $cont=0;
        $flag=false;
        if(count($boletas)==0){
            $pdf->AddPage('P');
            $pdf->SetFont('Courier', '', 10, '', true);
            $pdf->Cell(0,0,"Operacion indebida",$borde, 1, 'C');
            if (ob_get_contents()) ob_end_clean();
            else if (ob_get_length()) ob_end_clean();
            $nombre_archivo = utf8_decode("indebido.pdf");
            $pdf->Output($nombre_archivo, 'I');
            return;
        }
        for($i=0;$i<count($li);$i++){
            $li[$i]=$li[$i]." ";
        }
        foreach($li as $tli){
            $pdf->Cell(0,2.8,$tli, $border=0,1,'L',false,'',$stretch=0,$ignore_min_height=true, $calign='T',$valign='M');
            if(trim($tli)!=""){
                $flag=true;
            }
            if($cont==0)
                $a=$tli;
            if($cont==1)
                $b=$tli;
            if($cont==3)
                $c=$tli;
            if($flag==true)
                $cont++;
        }
        $pdf->Cell(0,2.8,"OFICINA DE REMUNERACIONES Y PENSIONES", $border=0,1,'L',false,'',$stretch=0,$ignore_min_height=true, $calign='T',$valign='M');
                
        //$pdf->MultiCell(0,0,$reg->data_detalle,$borde,'L',false,1,'','',true);
        $file=site_url("img/".$config[0]->ugel_sello);
        $pdf->Image($file, 150, 145, $largo=25, 0, 'JPG', '', '', false, 300, '', false, false, 0, 'C', false, false);
        /*if(file_exists("./img/sello_blanco.jpg")){
            $file=site_url("img/sello_blanco.jpg");
            $pdf->Image($file, 150, 145, $largo=25, 0, 'JPG', '', '', false, 300, '', false, false, 0, 'C', false, false);
        }*/
        /////////////////////////////////////////////////////////////////////////////////////
        $mes="1111";
        /////////////////////////////////////////////////////////////////////////////////////
        $user1=$this->session->userdata("usua_user");
        $url=site_url("service/pdf_boleta/$data_ide/$anio/$ugel_ide/".md5($sem."*".$data_ide."*".$anio."*".$ugel_ide));
        $estilo2 = array( 
            'border' => true, //colocará un borde 
            'padding'=>'auto',  //distancia entre borde y texto automatica 
            'hpadding' => 'auto', //distancia entre borde y texto automatica 
            'vpadding' => 'auto', //distancia entre borde y texto automatica 
            'fgcolor' => array(0,0,0), ///color de barras y texto 
            'bgcolor' =>array(255,255,255),  //color de fondo admitiria false para no asignar color 
            'text' => true, // incluye texto debajo de los codigod de barras 
            'position'=>'N', //podria ser centrado, izquierda o derecha 
            'module_width' => 2, // width of a single module in points 
            'module_height' => 2 // height of a single module in points 
        );
        $pdf->SetFont('Helvetica', '', 8, '', true);
        $pdf->write2DBarcode($url, 'QRCODE,L', 20, 240, 30, 30, $estilo2, 'L',false);
        $pdf->MultiCell(0,0,substr($a,0,50),$borde=false,'L',false,1,'55','245',true);
        $pdf->MultiCell(0,0,substr($b,0,50),$borde=false,'L',false,1,'55','250',true);
        $pdf->MultiCell(0,0,substr($c,0,50),$borde=false,'L',false,1,'55','255',true);
        $pdf->MultiCell(0,0,"USUARIO: ".$this->session->userdata("usua_user"),$borde=false,'L',false,1,'55','260',true);
        $pdf->MultiCell(0,0,"VISITE: ",$borde=false,'L',false,1,'55','265',true);
        $pdf->SetFont('Helvetica', '', 8, '', true);
        $pdf->MultiCell(0,0,$url,$borde=false,'L',false,1,'20','272',true);
        if (ob_get_contents()) ob_end_clean();
        else if (ob_get_length()) ob_end_clean();
        $mes=11;
        $nombre_archivo = utf8_decode("boleta".$anio.$mes.".pdf");
        $pdf->Output($nombre_archivo, 'I');
    }
}