<?php

/**
 * co_pdf_ep actions.
 *
 * @package    contratacion
 * @subpackage co_pdf_ep
 * @author     Your name here
 * @version    SVN: $Id: actions.class.php 23810 2009-11-12 11:07:44Z Kris.Wallsmith $
 */
require_once 'HTMLPurifier.auto.php';
require 'HTMLPurifier.autoload.php';

class co_pdf_epActions extends sfActions {

    /**
     * Executes index action
     *
     * @param sfRequest $request A request object
     */
    public function executePdf(sfWebRequest $request) {

        //Revisar que sea post
        //$this->forward404Unless($request->isMethod('post'));
        //Guardar los parametros del request en el log
        $this->logMessage("---BEGIN Logging request");
        foreach ($request->getPostParameters() as $key => $value) {
            $this->logMessage("request[$key] = $value");
        }
        $this->logMessage("--------------------------------------------------* Ip: " . $_SERVER['REMOTE_ADDR']);
        foreach ($request->getGetParameters() as $key => $value) {
            $this->logMessage("request[$key] = $value");
        }
        $this->logMessage("---END Logging request");

        //Obtenemos la entidad
        /*
         * (SGC-1, ANM-2, SGR-3, CYC-4, COL-5, INCI-6, LOCAL-7)
         */
        $array = sfYaml::load(dirname(__FILE__) . '/../../../../api/config/app-gwt.yml');
        $int = 0;
        foreach ($array as $routeName => $routeData) {
            //echo $routeName . "\n";
            if ('entidad_cliente' == $routeName) {
                foreach ($routeData as $key => $value) {
                    //echo $value . "\n";
                    if ($key == 'value') {
                        $entidadCliente = $value;
                    }
                }
            }
            $int++;
        }

        $id_estudios_previos = $request['id_estudios_previos'];
        
        $config = HTMLPurifier_Config::createDefault();
        //$purifier = new HTMLPurifier($config);
        //Establecemos el encabezado por entidad
        switch ($entidadCliente) {
            CASE "8":
                $config->set('CSS.AllowedProperties', array());
                $config->set( 'HTML.ForbiddenElements', array('font') );
                $purifier = new HTMLPurifier($config);
                /*$pdf = new CDPDF('P', 'mm', 'letter');
                $pdf->SetFont('Times', 'B', 10);
                $pdf->SetFillColor(255);
                $pdf->SetTextColor(0);
                $pdf->setTipo(9);*/
                $ruta_tmp = getcwd() . "/uploads/tmp/";
                $pdf = new Wkhtmltopdf(array('path' => $ruta_tmp));
                $tipo = "9";
                break;
            CASE "2":
                $config->set('CSS.AllowedProperties', array());
                $config->set( 'HTML.ForbiddenElements', array('font') );
                $purifier = new HTMLPurifier($config);
                $pdf = new CDPDF6('P', 'mm', 'letter');
                $pdf->SetFont('Times', 'B', 10);
                $pdf->SetFillColor(255);
                $pdf->SetTextColor(0);
                $pdf->setTipo(11);
                break;
            default:
                $purifier = new HTMLPurifier($config);
                $pdf = new CDPDF('P', 'mm', 'letter');
                $pdf->SetFont('Times', 'B', 10);
                $pdf->SetFillColor(255);
                $pdf->SetTextColor(0);
                $pdf->setTipo(1);
                break;
        }

        

        $consul = Doctrine_Manager::getInstance()->connection();

        // Header

        if ($entidadCliente == "1") {

            //Obtenemos la fecha de generacion del contrato para identificar si se aplica el formtato a usar a partir del 1ero de julio del 2019
            $formato20190701 = 1;
            $pdf->setTipo(7);
            $sql = "select tab0.fecha_contrato
from co_contrato tab0
LEFT JOIN co_seleccion_ep tab1 ON tab1.id_seleccion_ep = tab0.id_seleccion_ep
LEFT JOIN co_estudios_previos tab2 ON tab2.id_estudios_previos = tab1.id_estudios_previos 
where tab2.id_estudios_previos =" . $id_estudios_previos;
            $st = $consul->execute($sql);
            $detalle = $st->fetchAll();
            if (count($detalle) > 0) {
                $fecha = $detalle[0]['FECHA_CONTRATO'];
                if (true) {
                    if (strtotime($fecha) < strtotime('2019-07-01')) {
                        $formato20190701 = 0;
                        $pdf->setTipo(1);
                    }
                }
            }
        }

        /**
         * Incidente #2204 <-> Se agrega cant_sgr y tag_nue( 1 -> nuevo, 0 -> anterior), para conocer si es de texto anterior a 2016 - 2016012
         * Se modifica, para tener encuenta la  tabla co_seleccion_ep 
         *      Si fechacierre no es vacia y tiene seleccion ep, valida fecha inicio, coloca año de fecha inicio y nuevo texto
         *      Si fechacierre no es vacia y no tiene seleccion ep, coloca año actual y nuevo texto
         *      Si fechacierre es vacio, coloca año actual y nuevo texto
         * - 20160112
         * Se agrega area del supervisor desde nomina - 20171212
         */
        $sql = "select

tab0.id_estudios_previos,
tab0.version,
case 
when tab0.fecha_cierre is not null and (select count(ep.id_seleccion_ep) from co_seleccion_ep ep where ep.estado = 1 and ep.id_estudios_previos = tab0.id_estudios_previos) >= 1 
--and to_char((select min(ep.fecha_inicio) from co_seleccion_ep ep where ep.estado = 1 and ep.id_estudios_previos = tab0.id_estudios_previos), 'yyyy') >= 2015 
then to_char((select min(ep.fecha_inicio) from co_seleccion_ep ep where ep.estado = 1 and ep.id_estudios_previos = tab0.id_estudios_previos), 'yyyy')
else to_char(sysdate, 'YYYY') end as anho_actual_texto,
to_char(sysdate, 'YYYY') as anho_actual,
tab0.fecha_cierre,
(select min(ep.fecha_inicio) from co_seleccion_ep ep where ep.estado = 1 and ep.id_estudios_previos = tab0.id_estudios_previos) as fecha_seleccion_ep,
--case when tab0.fecha_cierre is null or to_char(tab0.fecha_cierre, 'YYYY') >= '2016' or to_char(tab0.fecha_creacion, 'YYYY') >= '2016' then 1 else 0 end as tag_nue,
case 
when tab0.fecha_cierre is not null and (select count(ep.id_seleccion_ep) from co_seleccion_ep ep where ep.estado = 1 and ep.id_estudios_previos = tab0.id_estudios_previos) >= 1 
and to_char((select min(ep.fecha_inicio) from co_seleccion_ep ep where ep.estado = 1 and ep.id_estudios_previos = tab0.id_estudios_previos), 'yyyy') >= 2016 then 1 
when tab0.fecha_cierre is not null and (select count(ep.id_seleccion_ep) from co_seleccion_ep ep where ep.estado = 1 and ep.id_estudios_previos = tab0.id_estudios_previos) = 0 then 1
when tab0.fecha_cierre is null then 1 
else 0 end as tag_nue,

(select count(co_proyecto_ep.id_proyecto_ep) from co_proyecto_ep where tab0.id_estudios_previos = co_proyecto_ep.id_estudios_previos and co_proyecto_ep.sgr = 1) as cant_sgr,

( select tab.vigencia_inicial || ' - ' || tab.vigencia_final from doble_anualidad@PNG_SGR tab where tab0.id_anhos between tab.vigencia_inicial and tab.vigencia_final and rownum <= 1) as text_vigencia,
( select tab.vigencia_inicial || ' - ' || tab.vigencia_final from doble_anualidad@PNG_SGR tab where to_char(sysdate, 'YYYY') between tab.vigencia_inicial and tab.vigencia_final and rownum <= 1) as text_actual_vigencia,

tab0.id_anhos,

to_char(tab0.fecha_creacion,'yyyy-mm-dd') AS FECHA_CREA,
to_char(tab0.FECHA_CIERRE,'yyyy-mm-dd') AS FECHA_CIERRE_TEXT,
tab0.proceso AS PROCESO,tab1.aplica_proceso as aplica_proceso,
tab2.descripcion as area, tab0.valor as valor_total, tab3.razon_soc as supervisor,tab1.descripcion as modal, tab0.id_area,

tab3.num_doc as num_doc_supervisor,
upper(nvl(area.descripcion,tab2.descripcion)) as area_supervisor

from co_estudios_previos_v tab0

join co_modalidad_sel tab1 ON tab1.id_modalidad_sel = tab0.id_modalidad_sel
left join area tab2 ON tab2.id_area = tab0.id_area
left join interceros_v tab3 ON tab3.id_mae_ter = tab0.id_supervisor

left join no_estado_func_v estfunc
on estfunc.num_doc = tab3.num_doc
and estfunc.id_anhos = extract(year from tab0.fecha_creacion)
and estfunc.id_meses = extract(month from tab0.fecha_creacion)

left join no_periodo_v per
on per.id_periodo = estfunc.periodo

left join area area
ON area.id_area = estfunc.id_ea

where 
tab0.id_estudios_previos = " . $id_estudios_previos . "
and nvl(per.id_tipo_periodo,1) = 1 ";

        $st = $consul->execute($sql);
        $datos_gen = $st->fetchAll();

        //Incidente #7947, la vigencia_ep para el cambio de texto por nuevas normas - 20180109
        $modal = $datos_gen[0]['MODAL'];
        $version = $datos_gen[0]['VERSION'];
        $vigencia_ep = $vigencia = $datos_gen[0]['ID_ANHOS'];
        $anho_actual_texto = $datos_gen[0]['ANHO_ACTUAL_TEXTO'];
        $text_vigencia = $datos_gen[0]['TEXT_VIGENCIA'];
        $cant_sgr = $datos_gen[0]['CANT_SGR'];
        $tag_nue = $datos_gen[0]['TAG_NUE'];
        $area_supervisor = $datos_gen[0]['AREA_SUPERVISOR'];

        if ($modal == "PRESTACIÓN DE SERVICIOS PROFESIONALES Y DE APOYO A LA GESTIÓN") {
            switch ($entidadCliente) {
                CASE "8":
                    $titulo = $modal;
                    /*$pdf->setTitulo($modal);
                    $pdf->AddPage();
                    $pdf->SetFont('Times', '', 10);*/
                    $pdf->setTitle($titulo);
                    $html = '<table style="border-collapse: collapse;border:1px solid;margin:0;padding:0">';
                    $sql = <<<EOD
                select 
tab2.campo_ep.id_campo_ep as id_campo_ep,
tab2.campo_ep.codigo as codigo,
tab2.campo_ep.descripcion AS descripcion,                     
tab2.campo_ep.estado as estado,
tab2.campo_ep.tipo_campo as tipo_campo,
case when tab7.valor is null then tab2.default_value else tab7.valor end as valor,  
tab2.campo_ep.fase_ep.orden as HOJA,
tab2.orden
from co_estudios_previos tab0
join co_modalidad_sel tab1 on tab0.id_modalidad_sel=tab1.id_modalidad_sel
left join co_campo_modalidad tab2 on tab1.id_modalidad_sel=tab2.id_modalidad_sel
left join co_detalle_ep tab7 on tab0.id_estudios_previos=tab7.id_estudios_previos and tab2.campo_ep.id_campo_ep=tab7.id_campo_ep
left join co_campo_obliga tab8 ON tab8.id_modalidad_sel = tab0.id_modalidad_sel and tab8.id_campo_ep = tab2.campo_ep.id_campo_ep    
where
1=1  
and tab0.ID_ESTUDIOS_PREVIOS = $id_estudios_previos
order by tab2.campo_ep.fase_ep.orden,tab2.orden  
EOD;
                    $st = $consul->execute($sql);
                    $records = $st->fetchAll();
                    foreach ($records as $rec) {
                        $codigo = $rec['CODIGO'];
                        $tit = $rec['DESCRIPCION'];
                        $valor = $rec['VALOR'];
                        $valor = $this->htmlClear($purifier->purify($valor));
                        $html .= <<<EOD
                    <tr>
                    <td colspan="2" style="text-align:left;width:100%"><b>$tit</b></td>
                    </tr>
EOD;
                        //if(strtoupper($codigo) != 'TITULO'){/
                        if (stristr(strtoupper($codigo), 'TITULO') === FALSE) {
                            $html .= <<<EOD
                        <tr>
                        <td colspan="2" style="text-align:justify;width:100%">$valor</td>
                        </tr>
EOD;
                        }
                    }
                    //SE ESTABLECE SECCION REA DE ORIGEN LUEGO DE TODOS LOS CAMPOS Y ANTES DE LAS FIRMAS TICKET 15089
                    $html .= <<<EOD
                    <tr>
                    <td colspan="2" style="text-align:left;width:100%"><b>AREA DE ORIGEN</b></td>
                    </tr>
                    <tr>
                    <td colspan="2" style="text-align:justify;width:100%"><br/></td>
                    </tr>
EOD;
                    /* $html.= '<tr>';
                      $html.= '<td colspan="2" style="text-align:justify;width:100%">';
                      $html.= '<br/>';
                      $html.= '<br/>';
                      //Mostramos firmas configuradas para el Estudio previo en la tabla co_firma_ep
                      $html.= 'Nombre: __________________________';
                      $html.= '<br/>';
                      $html.= 'Cargo: __________________________';
                      $html.= '</td>';
                      $html.= '</tr>'; */
                    $sql = "select tab0.*,tab1.num_doc, tab1.razon_soc AS NOMBRE
                   from co_firma_ep tab0 
                   join interceros_v tab1 ON tab1.id_mae_ter = tab0.id_mae_ter
                   where tab0.descripcion is null and tab0.id_estudios_previos=" . $id_estudios_previos;
                    $st = $consul->execute($sql);
                    $firmas = $st->fetchAll();
                    $html .= '<tr>';
                    $html .= '<td colspan="2" style="text-align:justify;width:100%">';
                    $html .= '<table><tr>';
                    $i = 1;
                    foreach ($firmas as $firmas) {
                        $html .= '<br/>';
                        $html .= '<br/>';
                        $html .= '<td>_____________________________________<br/>' . $firmas['NOMBRE'] . '<br/>' . $firmas['CARGO'] . '<br/></td>';

                        if ($i % 2 == 0) {
                            $html .= '</tr><br/><br/><tr>';
                        }
                        $i++;
                    }

                    $html .= '</tr></table><br/>';
                    $html .= '</td>';
                    $html .= '</tr>';
                    $html .= '</table>';
                    break;
                CASE "2":
                    $titulo = $modal;
                    $pdf->setTitulo($modal);
                    $pdf->setVersion($version);
                    $pdf->AddPage();
                    $pdf->SetFont('Times', '', 10);
                    $html = '<table border="1" cellpadding="2">';
                    $sql = <<<EOD
                select 
tab1.introductorio,
tab2.campo_ep.id_campo_ep as id_campo_ep,
tab2.campo_ep.codigo as codigo,
tab2.campo_ep.descripcion AS descripcion,                     
tab2.campo_ep.estado as estado,
tab2.campo_ep.tipo_campo as tipo_campo,
case when tab7.valor is null then tab2.default_value else tab7.valor end as valor,  
tab2.campo_ep.fase_ep.orden as HOJA,
tab2.orden
from co_estudios_previos tab0
join co_modalidad_sel tab1 on tab0.id_modalidad_sel=tab1.id_modalidad_sel
left join co_campo_modalidad tab2 on tab1.id_modalidad_sel=tab2.id_modalidad_sel
left join co_detalle_ep tab7 on tab0.id_estudios_previos=tab7.id_estudios_previos and tab2.campo_ep.id_campo_ep=tab7.id_campo_ep
left join co_campo_obliga tab8 ON tab8.id_modalidad_sel = tab0.id_modalidad_sel and tab8.id_campo_ep = tab2.campo_ep.id_campo_ep    
where
1=1  
and tab0.ID_ESTUDIOS_PREVIOS = $id_estudios_previos
order by tab2.campo_ep.fase_ep.orden,tab2.orden  
EOD;
                    $st = $consul->execute($sql);
                    $records = $st->fetchAll();
                    //Agregamos el texto introductorio para la modalidad si existe
                    $valor = $records[0]['introductorio'];
                    if (!empty($valor)) {
                        $valor = $this->htmlClear($purifier->purify($valor));
                        $html .= <<<EOD
                    <tr>
                    <td colspan="2" style="text-align:justify;width:100%">$valor</td>
                    </tr>
EOD;
                    }
                    //Fin texto introductorio
                    foreach ($records as $rec) {
                        $codigo = $rec['CODIGO'];
                        $tit = $rec['DESCRIPCION'];
                        $valor = $rec['VALOR'];
                        $valor = $this->htmlClear($purifier->purify($valor));
                        $html .= <<<EOD
                    <tr>
                    <td colspan="2" style="text-align:left;width:100%"><b>$tit</b></td>
                    </tr>
EOD;
                        //if(strtoupper($codigo) != 'TITULO'){
                        if (stristr(strtoupper($codigo), 'TITULO') === FALSE) {
                            $html .= <<<EOD
                        <tr>
                        <td colspan="2" style="text-align:justify;width:100%">$valor</td>
                        </tr>
EOD;
                        }
                    }

                    $sql = "select tab0.*,tab1.num_doc, tab1.razon_soc AS NOMBRE
                   from co_firma_ep tab0 
                   join interceros_v tab1 ON tab1.id_mae_ter = tab0.id_mae_ter
                   where tab0.descripcion is null and tab0.id_estudios_previos=" . $id_estudios_previos;
                    $st = $consul->execute($sql);
                    $firmas = $st->fetchAll();
                    $html .= '<tr>';
                    $html .= '<td colspan="2" style="text-align:justify;width:100%">';
                    $html .= '<table>';
                    $i = 1;
                    foreach ($firmas as $firmas) {
                        $html .= '<tr>';
                        $html .= '<br/>';
                        $html .= '<br/>';
                        $html .= '<td>_____________________________________<br/>' . $firmas['NOMBRE'] . '<br/>' . $firmas['CARGO'] . '<br/></td>';
                        $html .= '<br/>';
                        $html .= '<br/>';
                        $html .= '</tr>';
                        /*if ($i % 2 == 0) {
                            $html .= '</tr><br/><br/><tr>';
                        }*/
                        $i++;
                    }

                    $html .= '</table><br/>';
                    $html .= '</td>';
                    $html .= '</tr>';
                    $html .= '</table>';
                    break;
                default:
                    $titulo = "JUSTIFICACIÓN PARA LA CELEBRACIÓN DE CONTRATOS DE PRESTACIÓN DE SERVICIOS CON PERSONAS NATURALES";
                    $pdf->setTitulo("JUSTIFICACIÓN PARA LA CELEBRACIÓN DE CONTRATOS DE PRESTACIÓN DE SERVICIOS CON PERSONAS NATURALES");
                    $pdf->AddPage();
                    $pdf->SetFont('Times', '', 10);
                    $html = '<table border="1" cellpadding="2">';
                    if ($formato20190701 == 1) {
                        $html .= '<tr>';
                        $html .= '<td style="text-align:center;">';
                        //$html .= 'DOCUMENTO Y ESTUDIOS PREVIOS';
                        $html .= $titulo;
                        $html .= '</td>';
                        $html .= '</tr>';
                    }
                    //1 CIUDAD Y FECHA

                    $sql = "select tab7.valor
                    from co_detalle_ep tab7
                    join co_campo_ep tab1 ON tab1.id_campo_ep = tab7.id_campo_ep
                    where
                    1=1
                    AND tab7.id_estudios_previos=" . $id_estudios_previos . " and tab1.codigo = 'ciudad_fecha'
                    ";
                    $st = $consul->execute($sql);
                    $detalle = $st->fetchAll();

                    $ciudad = $detalle[0]['VALOR'];

                    $html .= '<tr>
                    <td style="text-align:left;width:50%"><b>Ciudad y Fecha:</b></td>
                    <td style="text-align:left;width:50%">' . $ciudad . '</td>
                    </tr>';
                    //2 NOMBRE CARGO

                    $sql = "select tab7.valor
                    from co_detalle_ep tab7
                    join co_campo_ep tab1 ON tab1.id_campo_ep = tab7.id_campo_ep
                    where
                    1=1
                    AND tab7.id_estudios_previos=" . $id_estudios_previos . " and tab1.codigo = 'solicitante'
                    ";
                    $st = $consul->execute($sql);
                    $detalle = $st->fetchAll();

                    $solicitante = $detalle[0]['VALOR'];

                    $literal_d = '';
                    /*
                      Se modifica, para tener encuenta la  tabla co_seleccion_ep
                     *      Si fechacierre no es vacia y tiene seleccion ep, valida fecha inicio, coloca año de fecha inicio y nuevo texto
                     *      Si fechacierre no es vacia y no tiene seleccion ep, coloca año actual y nuevo texto
                     *      Si fechacierre es vacio, coloca año actual y nuevo texto
                     * - 20160112 
                     */
                    if ($tag_nue == 1) {
                        $vigencia = $anho_actual_texto;
                        if ($cant_sgr >= 1) {
                            //$literal_d = 'Presupuesto de Gastos SGR para la bianualidad ' . $text_vigencia . ', en';
                            $literal_d = 'Presupuesto de Gastos SGR para la bianualidad ' . $text_vigencia . ''; // Incidente #10478 - 20181115
                        } else {
                            //$literal_d = 'Presupuesto de Gastos para la vigencia ' . $vigencia . ', en';
                            $literal_d = 'Presupuesto de Gastos para la vigencia actual'; // Incidente #10478 - 20181115
                        }
                    } else {
                        $vigencia = $vigencia;
                        $literal_d = 'Plan Operativo';
                    }

                    // Incidente #10478 - 20181115
                    //<td style="text-align:justify;width:100%";colspan="2">El jefe del Area solicitante certifica que la adquisicion del bien y/o servicio se encuentra incluida en el ' . $literal_d . ' y el Plan Anual de Adquisiciones y no hay existencia en el almacen del Servicio Geologico Colombiano y por lo anterior es necesaria la contratación.</td>
                    $html .= '

		<tr>
		<td style="text-align:left;width:50%"><b>Nombre y cargo del solicitante:</b></td>
		<td style="text-align:left;width:50%">' . $solicitante . '</td>
		</tr>
		<tr>
		<td style="text-align:justify;width:100%";colspan="2">El ordenador del gasto del área solicitante certifica que el objeto cuya contratación se requiere, se encuentra incluido en el ' . $literal_d . ' y en el plan anual de adquisiciones, del mismo modo certifica, que validado con el grupo de Talento Humano de la entidad, no existe personal de planta para realizar las actividades u obligaciones derivadas y/o el personal existente no es suficiente.</td>
		</tr>';
                    //3 NECESIDAD

                    $sql = "select tab7.valor
                from co_detalle_ep tab7
		join co_campo_ep tab1 ON tab1.id_campo_ep = tab7.id_campo_ep
                where
                1=1
                AND tab7.id_estudios_previos=" . $id_estudios_previos . " and tab1.codigo = 'necesidad_area'
                ";
                    $st = $consul->execute($sql);
                    $detalle = $st->fetchAll();

                    $necesidad = $detalle[0]['VALOR'];

                    $html .= '

		<tr>
		<td colspan="2" style="text-align:left;width:100%"><b>DESCRIPCIÓN DE LA NECESIDAD QUE LA ENTIDAD PRETENDE SATISFACER CON LA CONTRATACIÓN</b></td>
		</tr>

		<tr>
		<td colspan="2" style="text-align:justify;width:100%">' . $this->htmlClear($purifier->purify($necesidad)) . '</td>
		</tr>';

                    //4 OBJETO

                    $sql = "select tab7.valor
                from co_detalle_ep tab7
		join co_campo_ep tab1 ON tab1.id_campo_ep = tab7.id_campo_ep
                where
                1=1
                AND tab7.id_estudios_previos=" . $id_estudios_previos . " and tab1.codigo = 'objeto'
                ";
                    $st = $consul->execute($sql);
                    $detalle = $st->fetchAll();

                    $objeto = $detalle[0]['VALOR'];

                    $html .= '

		<tr>
		<td colspan="2" style="text-align:justify;width:100%"><b>OBJETO DEL CONTRATO</b></td>
		</tr>

		<tr>
		<td colspan="2" style="text-align:justify;width:100%">' . $this->htmlClear($purifier->purify($objeto)) . '</td>
		</tr>';

                    //5 OBLIGACIONES DEL CONTRATISTA

                    $sql = "select tab7.valor
                from co_detalle_ep tab7
		join co_campo_ep tab1 ON tab1.id_campo_ep = tab7.id_campo_ep
                where
                1=1
                AND tab7.id_estudios_previos=" . $id_estudios_previos . " and tab1.codigo = 'obliga_contratista'
                ";
                    $st = $consul->execute($sql);
                    $detalle = $st->fetchAll();

                    $obliga_contratista = $detalle[0]['VALOR'];

                    $html .= '

		<tr>
		<td colspan="2" style="text-align:left;width:100%"><b>OBLIGACIONES DEL CONTRATISTA</b></td>
		</tr>

		<tr>
		<td colspan="2" style="text-align:justify;width:100%">' . $this->htmlClear($purifier->purify($obliga_contratista)) . '</td>
		</tr>';

                    //6 FUNDAMENTOS DE LA MODALIDAD

                    $sql = "select tab7.valor
                from co_detalle_ep tab7
		join co_campo_ep tab1 ON tab1.id_campo_ep = tab7.id_campo_ep
                where
                1=1
                AND tab7.id_estudios_previos=" . $id_estudios_previos . " and tab1.codigo = 'justificacion_modali'
                ";
                    $st = $consul->execute($sql);
                    $detalle = $st->fetchAll();

                    $justificacion_modali = $detalle[0]['VALOR'];

                    $html .= '

		<tr>
		<td colspan="2" style="text-align:center;width:100%"><b>B: FUNDAMENTOS JURÍDICOS QUE SOPORTAN LA MODALIDAD DE SELECCIÓN</b></td>
		</tr>';

                    ///6 FUNDAMENTOS DE LA MODALIDAD

                    $sql = "select tab7.valor
                from co_detalle_ep tab7
		join co_campo_ep tab1 ON tab1.id_campo_ep = tab7.id_campo_ep
                where
                1=1
                AND tab7.id_estudios_previos=" . $id_estudios_previos . " and tab1.codigo = 'jefe'
                ";
                    $st = $consul->execute($sql);
                    $detalle = $st->fetchAll();

                    $jefe = $detalle[0]['VALOR'];

                    if ($vigencia_ep >= 2018) {
                        $testo_b = "artículo 2.2.1.2.1.4.9. del Decreto 1082 de 2015";
                        $testo_b2 = "citado artículo";
                    } else {
                        $testo_b = "artículo 81 del Decreto 1510 de 2013";
                        $testo_b2 = "artículo 81 del Decreto 1510 de 2013";
                    }

                    $html .= '

		<tr>
		<td colspan="2" style="text-align:justify;width:100%"><b>' . $jefe . '</b> para dar cumplimiento a lo dispuesto en el ' . $testo_b . ', señala:</td>
		</tr>

		<tr>
		<td colspan="2" style="text-align:justify;width:100%">Que la presente contratación se rige por lo establecido en el ' . $testo_b . '.<br/>Que analizada la documentación presentada por la persona a contratar, se pudo verificar cada uno de los datos suministrados, lo que permitió establecer que posee las calidades indicadas e idoneidad con relación al objeto del contrato.<br/>Que en consecuencia, haciendo uso de la facultad prevista en el ' . $testo_b2 . ', en lo relacionado con la idoneidad y experiencia para la contratación de prestación de servicios profesionales y apoyo a la gestión, se solicita la contratación a que se refiere el presente documento.</td>
		</tr>

		<tr>
		<td colspan="2" style="text-align:center;width:100%"><b>C. INFORMACIÓN DEL CONTRATO</b></td>
		</tr>';

                    //7. CONTRATISTA 

                    $sql = "select tab7.valor
                from co_detalle_ep tab7
		join co_campo_ep tab1 ON tab1.id_campo_ep = tab7.id_campo_ep
                where
                1=1
                AND tab7.id_estudios_previos=" . $id_estudios_previos . " and tab1.codigo = 'nombre_contra'
                ";
                    $st = $consul->execute($sql);
                    $detalle = $st->fetchAll();

                    $nombre_contra = $detalle[0]['VALOR'];

                    //8. PROFESION 

                    $sql = "select tab7.valor
                from co_detalle_ep tab7
		join co_campo_ep tab1 ON tab1.id_campo_ep = tab7.id_campo_ep
                where
                1=1
                AND tab7.id_estudios_previos=" . $id_estudios_previos . " and tab1.codigo = 'profesion'
                ";
                    $st = $consul->execute($sql);
                    $detalle = $st->fetchAll();

                    $profesion = $detalle[0]['VALOR'];

                    //9. IDENTIFICACION 

                    $sql = "select tab7.valor
                from co_detalle_ep tab7
		join co_campo_ep tab1 ON tab1.id_campo_ep = tab7.id_campo_ep
                where
                1=1
                AND tab7.id_estudios_previos=" . $id_estudios_previos . " and tab1.codigo = 'num_iden'
                ";
                    $st = $consul->execute($sql);
                    $detalle = $st->fetchAll();

                    $num_iden = $detalle[0]['VALOR'];

                    //10. EXPEDIDA EN 

                    $sql = "select tab7.valor
                from co_detalle_ep tab7
		join co_campo_ep tab1 ON tab1.id_campo_ep = tab7.id_campo_ep
                where
                1=1
                AND tab7.id_estudios_previos=" . $id_estudios_previos . " and tab1.codigo = 'expedida'
                ";
                    $st = $consul->execute($sql);
                    $detalle = $st->fetchAll();

                    $expedida = $detalle[0]['VALOR'];

                    $html .= '

		<tr>
		<td style="text-align:left;width:50%">Que por la anterior justificación, se hace necesario contratar a: ' . $nombre_contra . '</td>
		<td style="text-align:left;width:50%"><b>Profesión o actividad: </b>' . $profesion . '</td>
		</tr>

		<tr>
		<td style="text-align:left;width:50%"><b>Identificado con</b> CC. ' . $num_iden . '</td>
		<td style="text-align:left;width:50%"><b>Expedida en: </b>' . $expedida . '</td>
		</tr>';

                    //11. PLAZO

                    $sql = "select tab7.valor
                from co_detalle_ep tab7
		join co_campo_ep tab1 ON tab1.id_campo_ep = tab7.id_campo_ep
                where
                1=1
                AND tab7.id_estudios_previos=" . $id_estudios_previos . " and tab1.codigo = 'plazo'
                ";
                    $st = $consul->execute($sql);
                    $detalle = $st->fetchAll();

                    $plazo = $detalle[0]['VALOR'];

                    //12. 	VALOR

                    $sql = "select numero_a_texto(tab0.valor)||' PESOS M/CTE' VALOR_LETRAS, tab0.valor
                from co_estudios_previos tab0
		where tab0.id_estudios_previos=" . $id_estudios_previos;
                    $st = $consul->execute($sql);
                    $detalle = $st->fetchAll();

                    $valor = $detalle[0]['VALOR'];
                    $valor_letras = $detalle[0]['VALOR_LETRAS'];


                    $html .= '

		<tr>
		<td style="text-align:left;width:50%"><b>Plazo: </b>' . $this->htmlClear($purifier->purify($plazo)) . '</td>
		<td style="text-align:left;width:50%"><b>Valor del contrato: </b>' . $valor_letras . ' (' . number_format($valor) . ')</td>
		</tr>';

                    //13. FORMA DE PAGO

                    $sql = "select tab7.valor
                from co_detalle_ep tab7
		join co_campo_ep tab1 ON tab1.id_campo_ep = tab7.id_campo_ep
                where
                1=1
                AND tab7.id_estudios_previos=" . $id_estudios_previos . " and tab1.codigo = 'forma_pago'
                ";
                    $st = $consul->execute($sql);
                    $detalle = $st->fetchAll();

                    $forma_pago = $detalle[0]['VALOR'];

                    $html .= '

		<tr>
		<td style="text-align:left;width:50%"><b>Forma de Pago</b></td>
		<td style="text-align:left;width:50%">' . $this->htmlClear($purifier->purify($forma_pago)) . '</td>
		</tr>';

                    //14. SEDE

                    $sql = "select tab7.valor
                from co_detalle_ep tab7
		join co_campo_ep tab1 ON tab1.id_campo_ep = tab7.id_campo_ep
                where
                1=1
                AND tab7.id_estudios_previos=" . $id_estudios_previos . " and tab1.codigo = 'sede'
                ";
                    $st = $consul->execute($sql);
                    $detalle = $st->fetchAll();

                    $sede = $detalle[0]['VALOR'];

                    $html .= '

		<tr>
		<td style="text-align:left;width:50%"><b>Sede donde se prestará el servicio:</b></td>
		<td style="text-align:left;width:50%">' . $sede . '</td>
		</tr>

		<tr>
		<td colspan="2" style="text-align:justify;width:100%">Es necesario que el contratista tenga desplazamientos fuera de la sede habitual de prestación del servicio?<br/> <br/>SI   __ NO ___ <br/> <br/>El SERVICIO GEOLÓGICO COLOMBIANO pagará los gastos de desplazamiento correspondientes según la equivalencia establecida para los viáticos de los funcionarios.<br/><br/>El SERVICIO GEOLÓGICO COLOMBIANO proveerá los elementos necesarios para la prestación del servicio en campo y oficina.</td>
		</tr>';

                    $modal = $datos_gen[0]['MODAL'];

                    //15. NOMBRE Y CARGO DEL SUPERVISOR

                    $supervisor = $datos_gen[0]['SUPERVISOR'];


                    $sql = "select tab7.valor
                from co_detalle_ep tab7
		join co_campo_ep tab1 ON tab1.id_campo_ep = tab7.id_campo_ep
                where
                1=1
                AND tab7.id_estudios_previos=" . $id_estudios_previos . " and tab1.codigo = 'cargo_supervisor'
                ";
                    $st = $consul->execute($sql);
                    $detalle = $st->fetchAll();

                    $cargo_supervisor = $detalle[0]['VALOR'];

                    $html .= '

		<tr>
		<td style="text-align:left;width:50%"><b>NOMBRE Y CARGO DEL SUPERVISOR</b></td>
		<td style="text-align:left;width:50%">' . $supervisor . ' ' . $cargo_supervisor . ' </td>
		</tr>';

                    //16. RIESGOS

                    $sql = "select tab7.valor
                from co_detalle_ep tab7
		join co_campo_ep tab1 ON tab1.id_campo_ep = tab7.id_campo_ep
                where
                1=1
                AND tab7.id_estudios_previos=" . $id_estudios_previos . " and tab1.codigo = 'riesgo'
                ";
                    $st = $consul->execute($sql);
                    $detalle = $st->fetchAll();

                    $riesgo = $detalle[0]['VALOR'];

                    $html .= '

		<tr>
		<td colspan="2" style="text-align:left;width:100%"><b>SOPORTE PARA TIPIFICAR, ESTIMAR Y ASIGNAR LOS RIESGOS PREVISIBLES</b></td>
		</tr>

		<tr>
		<td colspan="2" style="text-align:justify;width:100%">' . $this->htmlClear($purifier->purify($riesgo)) . '</td>
		</tr>';

                    //17. GARANTIAS

                    $sql = "select tab7.valor
                from co_detalle_ep tab7
		join co_campo_ep tab1 ON tab1.id_campo_ep = tab7.id_campo_ep
                where
                1=1
                AND tab7.id_estudios_previos=" . $id_estudios_previos . " and tab1.codigo = 'garantia'
                ";
                    $st = $consul->execute($sql);
                    $detalle = $st->fetchAll();

                    $garantia = $detalle[0]['VALOR'];

                    $html .= '

		<tr>
		<td colspan="2" style="text-align:left;width:100%"><b>ANALISIS QUE SUSTENTA LA EXIGENCIA DE LAS GARANTIAS</b></td>
		</tr>

		<tr>
		<td colspan="2" style="text-align:justify;width:100%">' . $this->htmlClear($purifier->purify($garantia)) . '</td>
		</tr>

		<tr>
		<td colspan="2" style="text-align:center;width:100%">
		<br/><br/><br/><br/>_________________________________________<br/>
		JEFE DE ÁREA, DIRECTOR TÉCNICO O COORDINADOR DEL GRUPO SOLICITANTE
		<br/><br/><br/><br/>_________________________________________<br/>
		Vo. Bo. JEFE DE ÁREA O DIRECTOR TÉCNICO

		</td>

		</tr>	
		<tr>
		<td colspan="2" style="text-align:center;width:100%"><b>D: INFORMACIÓN SOBRE INSUFICIENCIA DE PERSONAL DE PLANTA</b></td>
		</tr>';

                    //18. TALENTO HUMANO

                    $sql = "select tab7.valor
                from co_detalle_ep tab7
		join co_campo_ep tab1 ON tab1.id_campo_ep = tab7.id_campo_ep
                where
                1=1
                AND tab7.id_estudios_previos=" . $id_estudios_previos . " and tab1.codigo = 'coordina_talento'
                ";
                    $st = $consul->execute($sql);
                    $detalle = $st->fetchAll();

                    $coordina_talento = $detalle[0]['VALOR'];

                    //Se cambia por co_proyectos_all_v, ya que esta vista tiene todos los proyectos y discrimina si es sgr o no - 20160108
                    $sql = "select 
tab1.codigo||' '||tab1.descripcion AS CPO,
tab0.*,
tab1.sgr as sgr_all_v
from co_proyecto_ep tab0
left join co_proyectos_all_v tab1 ON tab1.id = tab0.id_cpo and tab1.sgr = tab0.sgr
where tab0.id_estudios_previos = " . $id_estudios_previos;
                    $st = $consul->execute($sql);
                    $datos_cpo = $st->fetchAll();
                    $proyecto = "";
                    foreach ($datos_cpo as $datos_cpo) {

                        $proyectos .= $datos_cpo['CPO'] . '<br/>';
                    }

                    /**
                     * SOLICITUD MODIFICACION TEXTO ESTUDIOS PREVIOS 
                     * En los Estudios Previos de Contratacion, se debe condicionar parte del texto del literal D: INFORMACIÓN SOBRE INSUFICIENCIA DE PERSONAL DE PLANTA, asi:

                      Reemplazar la parte que dice:

                      que, de acuerdo con el Plan Operativo aprobado para la vigencia , en


                      Si tiene un proyecto relacionado del SGR,:
                      que, de acuerdo con el Presupuesto de Gastos aprobado para la bianualidad 2015 - 2016,  en

                      Si no es el SGR
                      que, de acuerdo con el Presupuesto de Gastos aprobado para la vigencia 2016 , en
                     * 
                     * - 20160108
                     */
                    //$literal_d = 'que, de acuerdo con el Plan Operativo aprobado para la vigencia ' . $vigencia . ', en';
                    $literal_d = '';
                    /*
                      Se modifica, para tener encuenta la  tabla co_seleccion_ep
                     *      Si fechacierre no es vacia y tiene seleccion ep, valida fecha inicio, coloca año de fecha inicio y nuevo texto
                     *      Si fechacierre no es vacia y no tiene seleccion ep, coloca año actual y nuevo texto
                     *      Si fechacierre es vacio, coloca año actual y nuevo texto
                     * - 20160112 
                     */
                    if ($tag_nue == 1) {
                        $vigencia = $anho_actual_texto;
                        if ($cant_sgr >= 1) {
                            $literal_d = 'que, de acuerdo con el Presupuesto de Gastos SGR aprobado para la bianualidad ' . $text_vigencia . ', en';
                        } else {
                            $literal_d = 'que, de acuerdo con el Presupuesto de Gastos aprobado para la vigencia ' . $vigencia . ', en';
                        }
                    } else {
                        $vigencia = $vigencia;
                        $literal_d = 'que, de acuerdo con el Plan Operativo aprobado para la vigencia ' . $vigencia . ', en';
                    }


                    $html .= '

		<tr>
		<td style="text-align:left;width:100%">' . strtoupper($coordina_talento) . '</td>
		</tr>

		<tr>
		<td colspan="2" style="text-align:justify;width:100%">Manifiesta ' . $literal_d . ' relación con las necesidades de personal identificadas y autorizadas por los respectivos Jefes de Dependencia, y atendiendo la solicitud de ' . $jefe . ' , se revisó que la fecha no existe personal disponible y suficiente para ejecutar las actividades requeridas por el Proyecto ' . $proyectos . '.<br/><br/><br/>
		
		<br/><br/><p style="text-align:center"><b>_________________________________________<br/>COORDINADOR(A) GRUPO DE TALENTO HUMANO</b></p>
		 </td>
		</tr>';

                    //19. ORDENADOR

                    $sql = "select tab7.valor
                from co_detalle_ep tab7
		join co_campo_ep tab1 ON tab1.id_campo_ep = tab7.id_campo_ep
                where
                1=1
                AND tab7.id_estudios_previos=" . $id_estudios_previos . " and tab1.codigo = 'ordenador'
                ";
                    $st = $consul->execute($sql);
                    $detalle = $st->fetchAll();

                    $ordenador = $detalle[0]['VALOR'];

                    //<td colspan="2" style="text-align:justify;width:100%">De conformidad con lo previsto en la Resolución 337 del 23 de diciembre de 2013, certifica, teniendo en cuenta la información contenida en el literal D del presente documento, que la Entidad no cuenta con el personal suficiente para completar el equipo de trabajo del Proyecto ' . $proyectos . '.<br/>De acuerdo con lo previsto en el artículo 81 del Decreto 1510 de 2013, para efectuar la presente contratación no es necesaria la obtención de varias ofertas.<br/><br/><br/>
                    $html .= '
		<tr>
		<td colspan="2" style="text-align:center;width:100%"><b>E: CERTIFICACIÓN SOBRE INSUFICIENCIA DE PERSONAL DE PLANTA</b></td>
		</tr>

		

		<tr>
		<td style="text-align:left;width:100%">' . strtoupper($ordenador) . '</td>
		</tr>
		

		<tr>
		<td colspan="2" style="text-align:justify;width:100%">De conformidad con lo previsto en la Resolución 337 del 23 de diciembre de 2013, certifica, teniendo en cuenta la información contenida en el literal D del presente documento, que la Entidad no cuenta con el personal suficiente para completar el equipo de trabajo del Proyecto ' . $proyectos . '.<br/>De acuerdo con lo previsto en el articulo 2.2.1.2.1.4.9 del Decreto 1082 de 2015, para efectuar la presente contratación no es necesaria la obtención de varias ofertas.<br/><br/><br/>
		
		<br/><br/><p style="text-align:center"><b>_________________________________________<br/>ORDENADOR(A) DEL GASTO</b></p>
		 </td>

		
		</tr>';


                    $html .= '</table>';
                    break;
            }
        } else {
            switch ($entidadCliente) {
                CASE "8":
                    $titulo = $modal;
                    /*$pdf->setTitulo($modal);
                    $pdf->AddPage();
                    $pdf->SetFont('Times', '', 10);*/
                    $pdf->setTitle($titulo);
                    $html = '<table style="border-collapse: collapse;border:1px solid;margin:0;padding:0">';
                    $sql = <<<EOD
                select 
tab2.campo_ep.id_campo_ep as id_campo_ep,
tab2.campo_ep.codigo as codigo,
tab2.campo_ep.descripcion AS descripcion,                     
tab2.campo_ep.estado as estado,
tab2.campo_ep.tipo_campo as tipo_campo,
case when tab7.valor is null then tab2.default_value else tab7.valor end as valor,  
tab2.campo_ep.fase_ep.orden as HOJA,
tab2.orden
from co_estudios_previos tab0
join co_modalidad_sel tab1 on tab0.id_modalidad_sel=tab1.id_modalidad_sel
left join co_campo_modalidad tab2 on tab1.id_modalidad_sel=tab2.id_modalidad_sel
left join co_detalle_ep tab7 on tab0.id_estudios_previos=tab7.id_estudios_previos and tab2.campo_ep.id_campo_ep=tab7.id_campo_ep
left join co_campo_obliga tab8 ON tab8.id_modalidad_sel = tab0.id_modalidad_sel and tab8.id_campo_ep = tab2.campo_ep.id_campo_ep    
where
1=1  
and tab0.ID_ESTUDIOS_PREVIOS =$id_estudios_previos
order by tab2.campo_ep.fase_ep.orden,tab2.orden  
EOD;
                    $st = $consul->execute($sql);
                    $records = $st->fetchAll();
                    foreach ($records as $rec) {
                        $codigo = $rec['CODIGO'];
                        $tit = $rec['DESCRIPCION'];
                        $valor = $rec['VALOR'];
                        $valor = $this->htmlClear($purifier->purify($valor));
                        $html .= <<<EOD
                    <tr>
                    <td colspan="2" style="text-align:left;width:100%"><b>$tit</b></td>
                    </tr>
EOD;
                        //if(strtoupper($codigo) != 'TITULO'){
                        if (stristr(strtoupper($codigo), 'TITULO') === FALSE) {
                            $html .= <<<EOD
                        <tr>
                        <td colspan="2" style="text-align:justify;width:100%">$valor</td>
                        </tr>
EOD;
                        }
                    }
                    //SE ESTABLECE SECCION REA DE ORIGEN LUEGO DE TODOS LOS CAMPOS Y ANTES DE LAS FIRMAS TICKET 15089
                    $html .= <<<EOD
                    <tr>
                    <td colspan="2" style="text-align:left;width:100%"><b>AREA DE ORIGEN</b></td>
                    </tr>
                    <tr>
                    <td colspan="2" style="text-align:justify;width:100%"><br/></td>
                    </tr>
EOD;
                    /* $html.= '<tr>';
                      $html.= '<td colspan="2" style="text-align:justify;width:100%">';
                      $html.= '<br/>';
                      $html.= '<br/>';
                      $html.= 'Nombre: __________________________';
                      $html.= '<br/>';
                      $html.= 'Cargo: __________________________';
                      $html.= '</td>';
                      $html.= '</tr>'; */
                    $html .= '<tr>';
                    $html .= '<td colspan="2" style="text-align:justify;width:100%">';
                    $sql = "select tab0.*,tab1.num_doc, tab1.razon_soc AS NOMBRE
                   from co_firma_ep tab0 
                   join interceros_v tab1 ON tab1.id_mae_ter = tab0.id_mae_ter
                   where tab0.descripcion is null and tab0.id_estudios_previos=" . $id_estudios_previos;
                    $st = $consul->execute($sql);
                    $firmas = $st->fetchAll();

                    $html .= '<table><tr>';
                    $i = 1;
                    foreach ($firmas as $firmas) {
                        $html .= '<br/>';
                        $html .= '<br/>';
                        $html .= '<td>_____________________________________<br/>' . $firmas['NOMBRE'] . '<br/>' . $firmas['CARGO'] . '<br/></td>';

                        if ($i % 2 == 0) {
                            $html .= '</tr><br/><br/><tr>';
                        }
                        $i++;
                    }

                    $html .= '</tr></table><br/>';
                    $html .= '</td>';
                    $html .= '</tr>';
                    $html .= '</table>';
                    break;
                CASE "2":
                    $titulo = $modal;
                    $pdf->setTitulo($modal);
                    $pdf->setVersion($version);
                    $pdf->AddPage();
                    $pdf->SetFont('Times', '', 10);
                    
                    $html = '<table border="1" cellpadding="2">';
                    $sql = <<<EOD
                select 
tab1.introductorio,
tab2.campo_ep.id_campo_ep as id_campo_ep,
tab2.campo_ep.codigo as codigo,
tab2.campo_ep.descripcion AS descripcion,                     
tab2.campo_ep.estado as estado,
tab2.campo_ep.tipo_campo as tipo_campo,
case when tab7.valor is null then tab2.default_value else tab7.valor end as valor,  
tab2.campo_ep.fase_ep.orden as HOJA,
tab2.orden
from co_estudios_previos tab0
join co_modalidad_sel tab1 on tab0.id_modalidad_sel=tab1.id_modalidad_sel
left join co_campo_modalidad tab2 on tab1.id_modalidad_sel=tab2.id_modalidad_sel
left join co_detalle_ep tab7 on tab0.id_estudios_previos=tab7.id_estudios_previos and tab2.campo_ep.id_campo_ep=tab7.id_campo_ep
left join co_campo_obliga tab8 ON tab8.id_modalidad_sel = tab0.id_modalidad_sel and tab8.id_campo_ep = tab2.campo_ep.id_campo_ep    
where
1=1  
and tab0.ID_ESTUDIOS_PREVIOS = $id_estudios_previos
order by tab2.campo_ep.fase_ep.orden,tab2.orden  
EOD;
                    $st = $consul->execute($sql);
                    $records = $st->fetchAll();
                    //Agregamos el texto introductorio para la modalidad si existe
                    $valor = $records[0]['introductorio'];
                    if (!empty($valor)) {
                        $valor = $this->htmlClear($purifier->purify($valor));
                        $html .= <<<EOD
                    <tr>
                    <td colspan="2" style="text-align:justify;width:100%">$valor</td>
                    </tr>
EOD;
                    }
                    //Fin texto introductorio
                    foreach ($records as $rec) {
                        $codigo = $rec['CODIGO'];
                        $tit = $rec['DESCRIPCION'];
                        $valor = $rec['VALOR'];
                        $valor = $this->htmlClear($purifier->purify($valor));
                        $html .= <<<EOD
                    <tr>
                    <td colspan="2" style="text-align:left;width:100%"><b>$tit</b></td>
                    </tr>
EOD;
                        //if(strtoupper($codigo) != 'TITULO'){
                        if (stristr(strtoupper($codigo), 'TITULO') === FALSE) {
                            $html .= <<<EOD
                        <tr>
                        <td colspan="2" style="text-align:justify;width:100%">$valor</td>
                        </tr>
EOD;
                        }
                    }

                    $sql = "select tab0.*,tab1.num_doc, tab1.razon_soc AS NOMBRE
                   from co_firma_ep tab0 
                   join interceros_v tab1 ON tab1.id_mae_ter = tab0.id_mae_ter
                   where tab0.descripcion is null and tab0.id_estudios_previos=" . $id_estudios_previos;
                    $st = $consul->execute($sql);
                    $firmas = $st->fetchAll();
                    $html .= '<tr>';
                    $html .= '<td colspan="2" style="text-align:justify;width:100%">';
                    $html .= '<table>';
                    $i = 1;
                    foreach ($firmas as $firmas) {
                        $html .= '<tr>';
                        $html .= '<br/>';
                        $html .= '<br/>';
                        $html .= '<td>_____________________________________<br/>' . $firmas['NOMBRE'] . '<br/>' . $firmas['CARGO'] . '<br/></td>';
                        $html .= '<br/>';
                        $html .= '<br/>';
                        $html .= '</tr>';
                        /*if ($i % 2 == 0) {
                            $html .= '</tr><br/><br/><tr>';
                        }*/
                        $i++;
                    }

                    $html .= '</table><br/>';
                    $html .= '</td>';
                    $html .= '</tr>';
                    $html .= '</table>';
                    break;
                default:
                    $titulo = "DOCUMENTOS Y ESTUDIOS PREVIOS";
                    $pdf->setTitulo("DOCUMENTOS Y ESTUDIOS PREVIOS");
                    $pdf->AddPage();
                    $pdf->SetFont('Times', '', 10);
                    
                    $sql = "select tab1.codigo||' '||tab1.descripcion AS CPO
                    from co_proyecto_ep tab0
                    left join co_proyectos_v tab1 ON tab1.id = tab0.id_cpo
                    where tab0.id_estudios_previos = " . $id_estudios_previos;
                    $st = $consul->execute($sql);
                    $datos_cpo = $st->fetchAll();

                    $sql = "select distinct 'No. '||tab1.cdp||' del '||to_char(tab1.fecha,'dd-mm-yyyy') AS CDP
                    from co_cdps_ep tab0
                    left join co_cdps_v tab1 ON tab1.cdp = tab0.id_cdp
                    where tab0.id_estudios_previos =" . $id_estudios_previos;
                    $st = $consul->execute($sql);
                    $datos_cdp = $st->fetchAll();

                    $fecha_creacion = $datos_gen[0]['FECHA_CREA'];
                    $fecha_cierre_text = $datos_gen[0]['FECHA_CIERRE_TEXT'];
                    $proceso = $datos_gen[0]['PROCESO'];
                    $aplica_proceso = $datos_gen[0]['APLICA_PROCESO'];
                    $area = $datos_gen[0]['AREA'];
                    $id_area = $datos_gen[0]['ID_AREA'];
                    $supervisor = $datos_gen[0]['SUPERVISOR'];
                    $valor = $datos_gen[0]['VALOR_TOTAL'];

                    //Cambio por fecha cierre - 20171024
                    $html = '<table border="1" cellpadding="4">';
                    if ($formato20190701 == 1) {
                        $html .= '<tr>';
                        $html .= '<td style="text-align:center;">';
                        //$html .= 'DOCUMENTO Y ESTUDIOS PREVIOS';
                        $html .= $titulo;
                        $html .= '</td>';
                        $html .= '</tr>';
                    }
                    $html .= '<tr>';
                    $html .= '<td style="width:50%"><b>Ciudad y Fecha</b></td><td style="width:50%">Bogotá, ' . $fecha_cierre_text . '</td>';
                    $html .= '</tr>';
                    $html .= '<tr>';
                    if ($aplica_proceso == 1) {
                        $html .= '<td style="width:50%"><b>Número Proceso</b></td><td style="width:50%">' . $proceso . '</td>';
                    } else {
                        $html .= '<td style="width:50%"><b>Número de Estudio Previo</b></td><td style="width:50%">' . $proceso . '</td>';
                    }
                    $html .= '</tr>';


                    //solo activos de campo modalidad
                    $sql = "select 
                    tab2.campo_ep.tipo_captura.descripcion as descripcion_captura,
                    tab2.campo_ep.id_campo_ep as id_campo_ep,
                    tab2.campo_ep.codigo as codigo,
                    tab2.campo_ep.descripcion as descripcion,
                    tab2.campo_ep.estado as estado,
                    tab2.campo_ep.tipo_campo as tipo_campo,
                    tab2.campo_ep.tamano_campo as tamano_campo,
                    tab2.campo_ep.obligatorio as obligatorio,
                    tab2.campo_ep.aplica_relacion as aplica_relacion,
                    tab2.campo_ep.tipo_captura.descripcion as descripcion_captura,
                    tab2.campo_ep.tabla_cc.cc as nombre_cc,
                    tab2.campo_ep.tabla_cc.tabla as tabla_cc,    
                    case when lower(tab8.descripcion)=lower(tab1.descripcion) then tab1.descripcion 
                    else  tab8.descripcion||' '||tab1.descripcion end AS des_modalidad,
                    tab1.fundamentos_juridicos,
                    tab8.descripcion as tipo,
                    tab2.campo_ep.tabla_cc.campo_mostrar AS CAMPO_MOSTRAR,
                    tab2.campo_ep.tabla_cc.id_campo_buscar AS CAMPO_BUSCAR,                
                    tab7.valor, tab7.id_detalle_ep
                    from co_estudios_previos tab0
                    left join co_modalidad_sel tab1 on tab0.id_modalidad_sel=tab1.id_modalidad_sel
                    left join co_campo_modalidad tab2 on tab1.id_modalidad_sel=tab2.id_modalidad_sel  
                    left join co_detalle_ep tab7 on tab0.id_estudios_previos=tab7.id_estudios_previos and tab2.campo_ep.id_campo_ep=tab7.id_campo_ep
                    left join co_tipo_proceso tab8 ON tab8.id_tipo_proceso = tab1.id_tipo_proceso
                    where
                    1=1
                    AND tab0.id_estudios_previos=" . $id_estudios_previos . "
                    and tab2.estado = 1     
                    order by tab2.orden";
                    $st = $consul->execute($sql);
                    $detalle = $st->fetchAll();

                    $modalidad = $detalle[0]['DES_MODALIDAD'];
                    $tipo_proceso = $detalle[0]['TIPO'];

                    $html .= '<tr>';
                    $html .= '<td style="width:50%"><b>TIPO DE PROCESO</b></td><td style="width:50%">' . $modalidad . '</td>';
                    $html .= '</tr>';
                    $html .= '<tr>';
                    $html .= '<td style="width:50%"><b>Area:</b></td><td style="width:50%">' . $area . '</td>';
                    $html .= '</tr>';
                    $html .= '<tr>';
                    $html .= '<td style="width:50%"><b>Valor Total:</b></td><td style="width:50%">' . number_format($valor, 2) . '</td>';
                    $html .= '</tr>';
                    $html .= '<tr>';
                    $html .= '<td style="width:50%"><b>Proyecto</b></td><td style="width:50%">';
                    foreach ($datos_cpo as $datos_cpo) {

                        $html .= $datos_cpo['CPO'] . '<br/>';
                    }
                    $html .= '</td></tr>';

                    if (count($datos_cdp) > 0) {
                        $html .= '<tr><td style="width:50%"><b>Certificado de Disponibilidad Presupuestal</b></td><td style="width:50%">';
                        foreach ($datos_cdp as $datos_cdp) {

                            $html .= $datos_cdp['CDP'] . '<br/>';
                        }
                        $html .= '</td></tr>';
                    }
                    $html .= '</table>';


                    $html .= '<p style="text-align:justify">El jefe del Area solicitante certifica que la adquisicion del bien y/o servicio se encuentra incluida en el Plan Operativo y el Plan Anual de Adquisiciones y no hay existencia en el almacen del Servicio Geologico Colombiano y por lo anterior es necesaria la contratacion.</p>';
                    if ($tipo_proceso == 'Mínima Cuantía') {

                        //4 OBJETO

                        $sql = "select tab7.valor
                    from co_detalle_ep tab7
                    join co_campo_ep tab1 ON tab1.id_campo_ep = tab7.id_campo_ep
                    where
                    1=1
                    AND tab7.id_estudios_previos=" . $id_estudios_previos . " and tab1.codigo = 'objeto'
                    ";
                        $st = $consul->execute($sql);
                        $deta = $st->fetchAll();

                        $objeto = $deta[0]['VALOR'];

                        //Incidente #2345, cambio de texto para los nuevos estudios previos 2016 - 20160127
                        //Se purifica el html para el objeto - 20160524
                        if ($tag_nue == 1) {
                            $html .= '<p style="text-align:justify">En cumplimiento de lo establecido en el Artículo 2.2.1.2.1.5.1 del Decreto 1082 / 2015, el Área ' . $area . ' elabora el presente documento y estudios previos para contratar:  ' . $this->htmlClear($purifier->purify($objeto)) . '</p>';
                        } else {
                            $html .= '<p style="text-align:justify">En cumplimiento de lo establecido en el Artículo 84 del Decreto 1510 de 2013, el Área ' . $area . ' elabora el presente documento y estudios previos para contratar:  ' . $this->htmlClear($purifier->purify($objeto)) . '</p>';
                        }
                    } else {

                        if ($modal == "ARRENDAMIENTO DE BIENES INMUEBLES") {

                            //20190521 se actualiza el texto de este apartado a partir de la fecha 20190521
                            if (strtotime($fecha_creacion) < strtotime('2019-05-21')) {
                                $html .= '<p>En cumplimiento de lo establecido en el Artículo 28 del Decreto 1510 de 2013, el Área ' . $area . ' elabora el presente documento y estudios previos</p>';
                            } else {
                                $html .= '<p>En cumplimiento de lo establecido en el Artículo 2.2.1.1.2.1.1 del decreto 1082 de 2015, el Área ' . $area . ' elabora el presente documento y estudios previos</p>';
                            }
                        } else {


                            $sql = "select case when tab0.id_nivel = 1 then tab0.descripcion else (select descripcion from area where id_area = tab0.id_dependencia) end AS DIRECCION 
                            from area tab0
                            where tab0.id_area = " . $id_area;
                            $st = $consul->execute($sql);
                            $areas = $st->fetchAll();
                            $area = $areas[0]['DIRECCION'];

                            //Incidente #10200 - 20181010
                            if ($tag_nue == 1 && $modal == "CONVENIOS INTERADMINISTRATIVOS") {

                                $html .= '<p style="text-align:justify">De conformidad con lo establecido en el artículo 2.2.1.1.2.1.1 del Decreto 1082 de 2015, la ' . $area . ' (esto creo que varía según la Dirección que lo elabore) , emite los presentes estudios y documentos previos, que soportan la elaboración de los documentos del proceso de selección y el contrato.<br/><br/>En atención a la previsión del artículo 25, numeral 12 de la Ley 80 de 1993, modificado por el artículo 87 de la Ley 1474 de 2011, en concordancia con el artículo 2.2.1.1.2.1.1 del Decreto 1082 de 2015, los estudios y documentos previos estarán a disposición del público durante el desarrollo del Proceso de Contratación y contienen los elementos mínimos exigidos en las normas aplicables.</p>';
                            } else if ($tag_nue == 1 && $tipo_proceso == 'Contratación Directa') {// Incidente #10378 - 20181030
                                if ($vigencia_ep >= 2018) {
                                    $testo_b = "artículo 2.2.1.1.2.1.1. del Decreto 1082 de 2015";
                                    $testo_b2 = "citado artículo";
                                } else {
                                    $testo_b = "artículo 20 del Decreto 1510 de 2013";
                                    $testo_b2 = "artículo 20 del Decreto 1510 de 2013";
                                }
                                $html .= '<p style="text-align:justify">De conformidad con lo establecido en el ' . $testo_b . ', la ' . $area . ' , con apoyo del Grupo de Contratos y Convenios, emite los presentes estudios y documentos previos, que soportan la elaboración de los documentos del proceso de selección y el contrato.<br/><br/>En atención a la previsión del artículo 25, numeral 12 de la Ley 80 de 1993, modificado por el artículo 87 de la Ley 1474 de 2011, en concordancia con el ' . $testo_b . ', los estudios y documentos previos estarán a disposición del público durante el desarrollo del Proceso de Contratación y contienen los elementos mínimos exigidos en las normas aplicables.</p>';
                            } else {

                                $html .= '<p style="text-align:justify">De conformidad con lo establecido en el artículo 20 del Decreto 1510 de 2013, la ' . $area . ' , con apoyo del Grupo de Contratos y Convenios, emite los presentes estudios y documentos previos, que soportan la elaboración de los documentos del proceso de selección y el contrato, con el fin de permitir a los proponentes valorar adecuadamente el alcance de lo requerido por el SGC y la distribución de riesgos propuesta.<br/><br/>En atención a la previsión del artículo 25, numeral 12 de la Ley 80 de 1993, modificado por el artículo 87 de la Ley 1474 de 2011, en concordancia con el artículo 20 del Decreto 1510 de 2013, los estudios y documentos previos estarán a disposición del público durante el desarrollo del Proceso de Contratación y contienen los elementos mínimos exigidos en las normas aplicables.</p>';
                            }
                        }
                    }

                    $html .= '<table border="1" cellpadding="4">';
                    foreach ($detalle as $detalle) {

                        $aplica_relacion = $detalle['APLICA_RELACION'];

                        if ($aplica_relacion == 1) {

                            $tabla = $detalle['TABLA_CC'];
                            $campo = $detalle['CAMPO_MOSTRAR'];
                            $campo_buscar = $detalle['CAMPO_BUSCAR'];
                            $valor = $detalle['VALOR'];

                            if ($valor != "") {

                                $sql = "select " . $campo . " from " . $tabla . " where " . $campo_buscar . "= " . $valor;
                                $st = $consul->execute($sql);
                                $datos = $st->fetchAll();

                                $valor_mostrar = $datos[0]['CAMPO'];
                                $titulo = $detalle['DESCRIPCION'];
                            } else {
                                $titulo = $detalle['DESCRIPCION'];
                                $valor_mostrar = "";
                            }
                            $html .= '<tr>';
                            $html .= '<td style="width:30%"><b>' . $titulo . '</b></td><td style="width:70%">' . $valor_mostrar . '</td>';
                            $html .= '</tr>';
                        } else {

                            $tipo = $detalle['DESCRIPCION_CAPTURA'];
                            $titulo = $detalle['DESCRIPCION'];
                            $codigo = $detalle['CODIGO'];
                            $valor = $detalle['VALOR'];

                            if ($tipo != "ArchivoItem") {

                                if ($tipo == "RichTextItem") {


                                    $html .= '<tr>';
                                    $html .= '<td style="width:100%" colspan="2"><b>' . $titulo . '</b></td>';
                                    $html .= '</tr>';
                                    $html .= '<tr>';
                                    $html .= '<td style="width:100%;text-align:justify" colspan="2">' . $this->htmlClear($purifier->purify($valor)) . '</td>';
                                    $html .= '</tr>';
                                } else {

                                    if ($codigo != "garantias" && $codigo != "fundamentos" && $codigo != "requisitos" && $codigo != "documentos") {
                                        $html .= '<tr>';
                                        $html .= '<td style="width:30%"td><b>' . $titulo . '</b></td><td style="width:70%">' . $valor . '</td>';
                                        $html .= '</tr>';
                                    } else {


                                        if ($codigo == "fundamentos") {

                                            $fundamentos_jur = $detalle['FUNDAMENTOS_JURIDICOS'];

                                            $html .= '<tr>';
                                            $html .= '<td style="width:30%"><b>' . $titulo . '</b></td><td style="width:70%;text-align:justify">' . $this->htmlClear($purifier->purify($fundamentos_jur)) . '</td>';
                                            $html .= '</tr>';
                                        } else if ($codigo == "garantias") {

                                            $sql = "select case when tab1.id_garantia_ep IS NULL then '' else 'X' end AS MARCA, tab0.modalidad, tab1.porcentaje, tab1.valor AS VIGENCIA_AMPARO
                                            from co_garantia tab0
                                            join co_garantia_ep tab1 ON tab1.id_garantia = tab0.id_garantia and tab1.id_estudios_previos=" . $id_estudios_previos;
                                            $st = $consul->execute($sql);
                                            $garantias = $st->fetchAll();

                                            if (count($garantias) > 0) {

                                                $html .= '<tr>';
                                                $html .= '<td style="width:30%"><b>' . $titulo . '</b></td>';
                                                $html .= '<td style="width:70%">
                                            <table border="1" style="width:100%">
                                            <tr>
                                            <td colspan="4" style="width:100%;text-align:justify">
                                            Para garantizar a la entidad el cumplimiento de todos y cada una de las obligaciones contractuales y considerando los posibles riesgos que se pueden presentar con ocasión del contrato, el contratista deberá constituir a su costa y a favor del Instituto, póliza única que ampare los siguientes riesgos</td></tr>';

                                                $html .= '<tr>
                                            <td style="width:20%;text-align:center">MARQUE CON UNA X</td>
                                            <td style="width:30%;text-align:center">MODALIDAD</td>
                                            <td style="width:20%;text-align:center">PORCENTAJE</td>
                                            <td style="width:30%;text-align:center">VIGENCIA DE AMPAROS</td>
                                            </tr>';



                                                foreach ($garantias as $garantias) {

                                                    $html .= '<tr>
                                            <td style="width:20%;text-align:center"><b>' . $garantias['MARCA'] . '</b></td>
                                            <td style="width:30%;text-align:center">' . $garantias['MODALIDAD'] . '</td>
                                            <td style="width:20%;text-align:center">' . $garantias['PORCENTAJE'] . '</td>
                                            <td style="width:30%;text-align:center">' . $garantias['VIGENCIA_AMPARO'] . '</td>
                                            </tr>';
                                                }

                                                //Incidente #2345, cambio de texto para los nuevos estudios previos 2016 - 20160127
                                                if ($tag_nue == 1) {
                                                    $html .= '<tr>
                                            <td colspan="4" style="width:100%;text-align:justify"><br/>  En  caso  de  que  se  requiera,  y  con  el  fin  de  amparar  los  perjuicios  de  naturaleza  contractual  derivados  del
    incumplimiento del contrato que pueda surgir para la administración por las actuaciones, hechos u omisiones del
    contratista, este deberá presentar las garantías requeridas de conformidad con el Decreto 1082 de 2015, articulo
    2.2.1.2.3.1.2. y concordantes, dentro de los dos (2) días hábiles siguientes a la fecha de la comunicación de la
    carta  de  aceptación  de  su  oferta.  En  caso  de  no  otorgarse  ni  presentarse  la  garantía  requerida  en  el  término
    establecido, dada la necesidad de dar inicio a la ejecución contractual la Entidad podrá retractar su aceptación y
    proceder a aceptar la oferta del oferente ubicado en el segundo lugar del orden de elegibilidad.</td></tr>';
                                                }

                                                $html .= '</table></td>';

                                                $html .= '</tr>';
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                    if ($tipo_proceso == 'Mínima Cuantía') {

                        $html .= '<tr>';
                        //Incidente #2345, cambio de texto para los nuevos estudios previos 2016 - 20160127
                        if ($tag_nue == 1) {
                            $html .= '<td style="width:100%;text-align:justify"><b>FUNDAMENTOS JURÍDICOS QUE SUSTENTAN LA MODALIDAD </b> <br/><br/> Se acoge la modalidad de contratación de Mínima Cuantía teniendo en cuenta que el presupuesto oficial asignado no para la contratación no excede del 10% de la menor cuantía de la Entidad de acuerdo con lo estipulado en el artículo 2.2.1.2.1.5.2. del Decreto 1082 de 2015.</td></tr>';
                        } else {
                            $html .= '<td style="width:100%;text-align:justify"><b>FUNDAMENTOS JURÍDICOS QUE SUSTENTAN LA MODALIDAD </b> <br/><br/> Se acoge la modalidad de contratación de Mínima Cuantía teniendo en cuenta que el presupuesto oficial asignado no excede el 10% de la Menor Cuantía de la entidad, la modalidad de selección que se adopta es la Mínima Cuantía, de conformidad con lo dispuesto en el Articulo 2 de la Ley 1150 de 2007 y el Capítulo V del Decreto 1510 de 2013.</td></tr>';
                        }
                    }


                    /**
                     * Incidente #7412, area del supervisor, solo para si son funcionarios - 20171212
                     */
                    $html .= '<tr>';
                    $html .= '<td style="width:100%;text-align:justify"><b>INTERVENTOR O SUPERVISOR: </b> El supervisor o interventor para el presente contrato sera ' . $supervisor . '  del grupo ' . $area_supervisor . ' quien hara seguimiento y control del cumplimiento de las obligaciones contractuales a cargo del contratista, y recibira a satisfaccion el Objeto contratado, de acuerdo con lo establecido en el Manual de Interventoria y Supervision del Servicio Geológico Colombiano.</td></tr>';



                    $sql = "SELECT tab0.*, tab2.descripcion as tipoevaluador

    from co_comite_evaluador tab0
    join co_seleccion_ep tab1 ON tab1.id_seleccion_ep = tab0.id_seleccion_ep and tab1.id_estudios_previos = " . $id_estudios_previos . "
    left join co_tipo_evaluador tab2 ON tab2.id_tipo_evaluador = tab0.id_tipo_evaluador";
                    $st = $consul->execute($sql);
                    $comite = $st->fetchAll();

                    if (count($comite) > 0) {

                        $html .= '<tr>';
                        $html .= '<td style="width:100%;text-align:justify"><b>DESIGNACIÓN DEL COMITE EVALUADOR</b> De conformidad con el Artículo 27 del Decreto 1510 de 2013, el Comité Evaluador para el presente proceso de Selección es el siguiente:<br/><br/>';

                        foreach ($comite as $comite) {

                            $html .= '<b>Evaluador ' . ucfirst($comite['TIPOEVALUADOR']) . ': </b>' . $comite['NOMBRE_RAZON_EVALUADOR'] . '<br/>';
                        }

                        $html .= '</td></tr>';
                    }



                    $html .= '<tr>';
                    $html .= '<td style="width:100%"><b>DOCUMENTOS ANEXOS</b> Para efectos de trámite anexo los siguientes documentos:</td></tr>';

                    $sql = "select tab0.descripcion
                                            from co_documento_ep tab1 
                                            left join co_docum_modalidad tab2 ON tab2.id_docum_modalidad = tab1.id_docum_modalidad
                                            left join co_tipo_documento tab0 ON tab0.id_tipo_documento = tab2.id_tipo_documento
                                            where tab1.id_estudios_previos=" . $id_estudios_previos;
                    $st = $consul->execute($sql);
                    $documentos = $st->fetchAll();


                    foreach ($documentos as $documentos) {

                        $html .= '<tr><td style="width:90%;text-align:left">' . $documentos['DESCRIPCION'] . '</td><td style="width:10%;text-align:center"><b>X</b></td></tr>';
                    }




                    $html .= '</table><br/><br/>';

                    $html .= '<p>NOTA: El documento de estudios previos deberá presentarse debidamente suscrito por el RESPONSABLE DEL AREA CORRESPONDIENTE, CON EL VISTO BUENO DEL ORDENADOR DEL GASTO, junto con los documentos que soporten los estudios realizados.</p><br/><br/>';

                    /**
                     *   Para la firma si la descripción o tipo es vacía coloca la firma en dos lineas y si no coloca una sola linea.

                      Dos Lineas:
                      _____________________________________
                      ARANGO OSORIO FABIO
                      COORDINADOR SERVICIOS ADMINISTRATIVOS

                      Una linea:
                      ELABORO: ESTEFANÍA INSIGNARES CASTAÑEDA - CONTRATISTA
                     */
                    $sql = "select tab0.*,tab1.num_doc, tab1.razon_soc AS NOMBRE
                   from co_firma_ep tab0 
                   join interceros_v tab1 ON tab1.id_mae_ter = tab0.id_mae_ter
                   where tab0.descripcion is null and tab0.id_estudios_previos=" . $id_estudios_previos;
                    $st = $consul->execute($sql);
                    $firmas = $st->fetchAll();

                    $html .= '<table><tr>';
                    $i = 1;
                    foreach ($firmas as $firmas) {
                        //$html.= '<br/>';
                        //$html.= '<br/>';
                        $html .= '<td>_____________________________________<br/>' . $firmas['NOMBRE'] . '<br/>' . $firmas['CARGO'] . '<br/></td>';

                        if ($i % 2 == 0) {
                            $html .= '</tr><br/><br/><tr>';
                        }
                        $i++;
                    }

                    $html .= '</tr></table><br/>';


                    //ACTUALIZACIÓN 13/04/2015, se modifica el formato para que las firmas no se salgan de la hoja.
                    $sql = "select tab0.*,tab1.num_doc, tab1.razon_soc AS NOMBRE
                   from co_firma_ep tab0 
                   join interceros_v tab1 ON tab1.id_mae_ter = tab0.id_mae_ter
                   where tab0.descripcion is not null and tab0.id_estudios_previos=" . $id_estudios_previos;
                    $st = $consul->execute($sql);
                    $firmas = $st->fetchAll();
                    foreach ($firmas as $firmas) {
                        //$html.= '<br/>';
                        //$html.= '<br/>';
                        $html .= '<p>' . $firmas['DESCRIPCION'] . ': ' . $firmas['NOMBRE'] . ' - ' . $firmas['CARGO'] . '</p>';
                    }
                    break;
            }



            //echo $html;
            //die();
        }
        
        if($entidadCliente == "8"){
            try {
                //echo(getcwd() . "/uploads/tmp/");
                //$ruta_tmp = getcwd() . "/uploads/tmp/";
                //$wkhtmltopdf = new Wkhtmltopdf(array('path' => $ruta_tmp));
                //$wkhtmltopdf->setTitle("Prueba");
                //$wkhtmltopdf->setHtml($html);
                //$html = "esto es una prueba";
                $pdf->setHeaderSpacing("5");
                $pdf->setHeaderHtml("https://erp.comisiondelaverdad.co/contratacion/web/html.php/header_footer/header?tipo=$tipo&titulo=$titulo");
                $pdf->setFooterHtml("https://erp.comisiondelaverdad.co/contratacion/web/html.php/header_footer/footer?tipo=$tipo&titulo=$titulo");
                $pdf->setHtmlUtf8($html);
                $pdf->output(Wkhtmltopdf::MODE_DOWNLOAD, "file.pdf");
                //$wkhtmltopdf->output(Wkhtmltopdf::MODE_EMBEDDED, "file.pdf");
            } catch (Exception $e) {
                echo $e->getMessage();
            }           
        }else{
            $pdf->writeHTML($html, true, false, true, false, '');

            $pdf->Output("estudios_previos.pdf", "D");
        }

        die();
    }

    public function executePdf_borrador(sfWebRequest $request) {

        //Revisar que sea post
        //$this->forward404Unless($request->isMethod('post'));
        //Guardar los parametros del request en el log
        $this->logMessage("---BEGIN Logging request");
        foreach ($request->getPostParameters() as $key => $value) {
            $this->logMessage("request[$key] = $value");
        }
        $this->logMessage("--------------------------------------------------* Ip: " . $_SERVER['REMOTE_ADDR']);
        foreach ($request->getGetParameters() as $key => $value) {
            $this->logMessage("request[$key] = $value");
        }
        $this->logMessage("---END Logging request");
        //Obtenemos la entidad
        /*
         * (SGC-1, ANM-2, SGR-3, CYC-4, COL-5, INCI-6, LOCAL-7)
         */
        $array = sfYaml::load(dirname(__FILE__) . '/../../../../api/config/app-gwt.yml');
        $int = 0;
        foreach ($array as $routeName => $routeData) {
            //echo $routeName . "\n";
            if ('entidad_cliente' == $routeName) {
                foreach ($routeData as $key => $value) {
                    //echo $value . "\n";
                    if ($key == 'value') {
                        $entidadCliente = $value;
                    }
                }
            }
            $int++;
        }

        $id_estudios_previos = $request['id_estudios_previos'];
        $guardar = $request['save'];
        // Se instancia el purificador
        $config = HTMLPurifier_Config::createDefault();
        //$purifier = new HTMLPurifier($config);

        
        switch ($entidadCliente) {
            CASE "8":
                $config->set('CSS.AllowedProperties', array());
                $config->set( 'HTML.ForbiddenElements', array('font') );
                $purifier = new HTMLPurifier($config);
                /*$pdf = new CDPDF('P', 'mm', 'letter');
                $pdf->SetFont('Times', 'B', 8);
                $pdf->SetFillColor(255);
                $pdf->SetTextColor(0);
                $pdf->setTipo(10);*/
                //20200204 Llamado a nueva libreria Wkhtmltopdf
                $ruta_tmp = getcwd() . "/uploads/tmp/";
                $pdf = new Wkhtmltopdf(array('path' => $ruta_tmp));
                $tipo = "10";
                break;
            CASE "2":
                $config->set('CSS.AllowedProperties', array());
                $config->set( 'HTML.ForbiddenElements', array('font') );
                $purifier = new HTMLPurifier($config);
                $pdf = new CDPDF6('P', 'mm', 'letter');
                $pdf->SetFont('Times', 'B', 8);
                $pdf->SetFillColor(255);
                $pdf->SetTextColor(0);
                $pdf->setTipo(12);
                $pdf->SetFont('Times', '', 10);
                break;
            default:
                $purifier = new HTMLPurifier($config);
                $pdf = new CDPDF('P', 'mm', 'letter');
                $pdf->SetFont('Times', 'B', 8);
                $pdf->SetFillColor(255);
                $pdf->SetTextColor(0);
                $pdf->setTipo(8);
                $pdf->SetFont('Times', '', 10);
                break;
        }

        $consul = Doctrine_Manager::getInstance()->connection();
        if ($entidadCliente == "1") {
            //Obtenemos la fecha de generacion del contrato para identificar si se aplica el formtato a usar a partir del 1ero de julio del 2019
            $formato20190701 = 1;
            $pdf->setTipo(8);
            $sql = "select tab0.fecha_contrato
    from co_contrato tab0
    LEFT JOIN co_seleccion_ep tab1 ON tab1.id_seleccion_ep = tab0.id_seleccion_ep
    LEFT JOIN co_estudios_previos tab2 ON tab2.id_estudios_previos = tab1.id_estudios_previos 
    where tab2.id_estudios_previos =" . $id_estudios_previos;
            $st = $consul->execute($sql);
            $detalle = $st->fetchAll();
            if (count($detalle) > 0) {
                $fecha = $detalle[0]['FECHA_CONTRATO'];
                if (true) {
                    if (strtotime($fecha) < strtotime('2019-07-01')) {
                        $formato20190701 = 0;
                        $pdf->setTipo(2);
                    }
                }
            }
            //$pdf->AddPage();
        }

        // Header
        //$pdf->AddPage();
        //$pdf->SetFont('Times', '', 10);

        /**
         * Incidente #2204 <-> Se agrega cant_sgr y tag_nue( 1 -> nuevo, 0 -> anterior), para conocer si es de texto anterior a 2016 - 2016012
         * Se modifica, para tener encuenta la  tabla co_seleccion_ep 
         *      Si fechacierre no es vacia y tiene seleccion ep, valida fecha inicio, coloca año de fecha inicio y nuevo texto
         *      Si fechacierre no es vacia y no tiene seleccion ep, coloca año actual y nuevo texto
         *      Si fechacierre es vacio, coloca año actual y nuevo texto
         * - 20160112
         * Se agrega area del supervisor desde nomina - 20171212
         */
        $sql = "select

tab0.id_estudios_previos,
tab0.version,
case 
when tab0.fecha_cierre is not null and (select count(ep.id_seleccion_ep) from co_seleccion_ep ep where ep.estado = 1 and ep.id_estudios_previos = tab0.id_estudios_previos) >= 1 
--and to_char((select min(ep.fecha_inicio) from co_seleccion_ep ep where ep.estado = 1 and ep.id_estudios_previos = tab0.id_estudios_previos), 'yyyy') >= 2015 
then to_char((select min(ep.fecha_inicio) from co_seleccion_ep ep where ep.estado = 1 and ep.id_estudios_previos = tab0.id_estudios_previos), 'yyyy')
else to_char(sysdate, 'YYYY') end as anho_actual_texto,
to_char(sysdate, 'YYYY') as anho_actual,
tab0.fecha_cierre,
(select min(ep.fecha_inicio) from co_seleccion_ep ep where ep.estado = 1 and ep.id_estudios_previos = tab0.id_estudios_previos) as fecha_seleccion_ep,
--case when tab0.fecha_cierre is null or to_char(tab0.fecha_cierre, 'YYYY') >= '2016' or to_char(tab0.fecha_creacion, 'YYYY') >= '2016' then 1 else 0 end as tag_nue,
case 
when tab0.fecha_cierre is not null and (select count(ep.id_seleccion_ep) from co_seleccion_ep ep where ep.estado = 1 and ep.id_estudios_previos = tab0.id_estudios_previos) >= 1 
and to_char((select min(ep.fecha_inicio) from co_seleccion_ep ep where ep.estado = 1 and ep.id_estudios_previos = tab0.id_estudios_previos), 'yyyy') >= 2016 then 1 
when tab0.fecha_cierre is not null and (select count(ep.id_seleccion_ep) from co_seleccion_ep ep where ep.estado = 1 and ep.id_estudios_previos = tab0.id_estudios_previos) = 0 then 1
when tab0.fecha_cierre is null then 1 
else 0 end as tag_nue,

(select count(co_proyecto_ep.id_proyecto_ep) from co_proyecto_ep where tab0.id_estudios_previos = co_proyecto_ep.id_estudios_previos and co_proyecto_ep.sgr = 1) as cant_sgr,



tab0.id_anhos,

to_char(tab0.fecha_creacion,'yyyy-mm-dd') AS FECHA_CREA,
to_char(tab0.FECHA_CIERRE,'yyyy-mm-dd') AS FECHA_CIERRE_TEXT,
tab0.proceso AS PROCESO,tab1.aplica_proceso as aplica_proceso,
tab2.descripcion as area, tab0.valor as valor_total, tab3.razon_soc as supervisor,tab1.descripcion as modal, tab0.id_area,

tab3.num_doc as num_doc_supervisor,
upper(nvl(area.descripcion,tab2.descripcion)) as area_supervisor

from co_estudios_previos_v tab0

join co_modalidad_sel tab1 ON tab1.id_modalidad_sel = tab0.id_modalidad_sel
left join area tab2 ON tab2.id_area = tab0.id_area
left join interceros_v tab3 ON tab3.id_mae_ter = tab0.id_supervisor

left join no_estado_func_v estfunc
on estfunc.num_doc = tab3.num_doc
and estfunc.id_anhos = extract(year from tab0.fecha_creacion)
and estfunc.id_meses = extract(month from tab0.fecha_creacion)

left join no_periodo_v per
on per.id_periodo = estfunc.periodo

left join area area
ON area.id_area = estfunc.id_ea

where 
tab0.id_estudios_previos = " . $id_estudios_previos . "
and nvl(per.id_tipo_periodo,1) = 1 ";

        $st = $consul->execute($sql);
        $datos_gen = $st->fetchAll();

        //Incidente #7947, la vigencia_ep para el cambio de texto por nuevas normas - 20180109
        $modal = $datos_gen[0]['MODAL'];
        $version = $datos_gen[0]['VERSION'];
        $vigencia_ep = $vigencia = $datos_gen[0]['ID_ANHOS'];
        $anho_actual_texto = $datos_gen[0]['ANHO_ACTUAL_TEXTO'];
        $text_vigencia = $datos_gen[0]['TEXT_VIGENCIA'];
        $cant_sgr = $datos_gen[0]['CANT_SGR'];
        $tag_nue = $datos_gen[0]['TAG_NUE'];
        $area_supervisor = $datos_gen[0]['AREA_SUPERVISOR'];

        if ($modal == "PRESTACIÓN DE SERVICIOS PROFESIONALES Y DE APOYO A LA GESTIÓN") {
            switch ($entidadCliente) {
                CASE "8":
                    $titulo = $modal;
                    /*$pdf->setTitulo($modal);
                    $pdf->AddPage();
                    $pdf->SetFont('Times', '', 10);*/
                    $pdf->setTitle($titulo);
                    $html = '<table style="border-collapse: collapse;border:1px solid;margin:0;padding:0">';
                    $sql = <<<EOD
                select 
tab2.campo_ep.id_campo_ep as id_campo_ep,
tab2.campo_ep.codigo as codigo,
tab2.campo_ep.descripcion AS descripcion,                     
tab2.campo_ep.estado as estado,
tab2.campo_ep.tipo_campo as tipo_campo,
case when tab7.valor is null then tab2.default_value else tab7.valor end as valor,  
tab2.campo_ep.fase_ep.orden as HOJA,
tab2.orden
from co_estudios_previos tab0
join co_modalidad_sel tab1 on tab0.id_modalidad_sel=tab1.id_modalidad_sel
left join co_campo_modalidad tab2 on tab1.id_modalidad_sel=tab2.id_modalidad_sel
left join co_detalle_ep tab7 on tab0.id_estudios_previos=tab7.id_estudios_previos and tab2.campo_ep.id_campo_ep=tab7.id_campo_ep
left join co_campo_obliga tab8 ON tab8.id_modalidad_sel = tab0.id_modalidad_sel and tab8.id_campo_ep = tab2.campo_ep.id_campo_ep    
where
1=1  
and tab0.ID_ESTUDIOS_PREVIOS =$id_estudios_previos
order by tab2.campo_ep.fase_ep.orden,tab2.orden  
EOD;
                    $st = $consul->execute($sql);
                    $records = $st->fetchAll();
                    foreach ($records as $rec) {
                        $codigo = $rec['CODIGO'];
                        $tit = $rec['DESCRIPCION'];
                        $valor = $rec['VALOR'];
                        $valor = $this->htmlClear($purifier->purify($valor));
                        $html .= <<<EOD
                    <tr>
                    <td colspan="2" style="text-align:left;width:100%"><b>$tit</b></td>
                    </tr>
EOD;
                        //if(strtoupper($codigo) != 'TITULO'){
                        if (stristr(strtoupper($codigo), 'TITULO') === FALSE) {
                            $html .= <<<EOD
                        <tr>
                        <td colspan="2" style="text-align:justify;width:100%">$valor</td>
                        </tr>
EOD;
                        }
                    }
                    //SE ESTABLECE SECCION REA DE ORIGEN LUEGO DE TODOS LOS CAMPOS Y ANTES DE LAS FIRMAS TICKET 15089
                    $html .= <<<EOD
                    <tr>
                    <td colspan="2" style="text-align:left;width:100%"><b>AREA DE ORIGEN</b></td>
                    </tr>
                    <tr>
                    <td colspan="2" style="text-align:justify;width:100%"><br/></td>
                    </tr>
EOD;
                    /* $html.= '<tr>';
                      $html.= '<td colspan="2" style="text-align:justify;width:100%">';
                      $html.= '<br/>';
                      $html.= '<br/>';
                      //Mostramos firmas configuradas para el Estudio previo en la tabla co_firma_ep
                      $html.= 'Nombre: __________________________';
                      $html.= '<br/>';
                      $html.= 'Cargo: __________________________';
                      $html.= '</td>';
                      $html.= '</tr>'; */
                    $sql = "select tab0.*,tab1.num_doc, tab1.razon_soc AS NOMBRE
                   from co_firma_ep tab0 
                   join interceros_v tab1 ON tab1.id_mae_ter = tab0.id_mae_ter
                   where tab0.descripcion is null and tab0.id_estudios_previos=" . $id_estudios_previos;
                    $st = $consul->execute($sql);
                    $firmas = $st->fetchAll();
                    $html .= '<tr>';
                    $html .= '<td colspan="2" style="text-align:justify;width:100%">';
                    $html .= '<table><tr>';
                    $i = 1;
                    foreach ($firmas as $firmas) {
                        $html .= '<br/>';
                        $html .= '<br/>';
                        $html .= '<td>_____________________________________<br/>' . $firmas['NOMBRE'] . '<br/>' . $firmas['CARGO'] . '<br/></td>';

                        if ($i % 2 == 0) {
                            $html .= '</tr><br/><br/><tr>';
                        }
                        $i++;
                    }

                    $html .= '</tr></table><br/>';
                    $html .= '</td>';
                    $html .= '</tr>';
                    $html .= '</table>';
                    break;
                CASE "2":
                    $titulo = $modal;
                    $pdf->setTitulo($modal);
                    $pdf->setVersion($version);
                    $pdf->AddPage();
                    $pdf->SetFont('Times', '', 10);
                    $html = '<table border="1" cellpadding="2">';
                    $sql = <<<EOD
                select 
tab1.introductorio,
tab2.campo_ep.id_campo_ep as id_campo_ep,
tab2.campo_ep.codigo as codigo,
tab2.campo_ep.descripcion AS descripcion,                     
tab2.campo_ep.estado as estado,
tab2.campo_ep.tipo_campo as tipo_campo,
case when tab7.valor is null then tab2.default_value else tab7.valor end as valor,  
tab2.campo_ep.fase_ep.orden as HOJA,
tab2.orden
from co_estudios_previos tab0
join co_modalidad_sel tab1 on tab0.id_modalidad_sel=tab1.id_modalidad_sel
left join co_campo_modalidad tab2 on tab1.id_modalidad_sel=tab2.id_modalidad_sel
left join co_detalle_ep tab7 on tab0.id_estudios_previos=tab7.id_estudios_previos and tab2.campo_ep.id_campo_ep=tab7.id_campo_ep
left join co_campo_obliga tab8 ON tab8.id_modalidad_sel = tab0.id_modalidad_sel and tab8.id_campo_ep = tab2.campo_ep.id_campo_ep    
where
1=1  
and tab0.ID_ESTUDIOS_PREVIOS = $id_estudios_previos
order by tab2.campo_ep.fase_ep.orden,tab2.orden  
EOD;
                    $st = $consul->execute($sql);
                    $records = $st->fetchAll();
                    //Agregamos el texto introductorio para la modalidad si existe
                    $valor = $records[0]['introductorio'];
                    if (!empty($valor)) {
                        $valor = $this->htmlClear($purifier->purify($valor));
                        $html .= <<<EOD
                    <tr>
                    <td colspan="2" style="text-align:justify;width:100%">$valor</td>
                    </tr>
EOD;
                    }
                    //Fin texto introductorio
                    foreach ($records as $rec) {
                        $codigo = $rec['CODIGO'];
                        $tit = $rec['DESCRIPCION'];
                        $valor = $rec['VALOR'];
                        $valor = $this->htmlClear($purifier->purify($valor));
                        $html .= <<<EOD
                    <tr>
                    <td colspan="2" style="text-align:left;width:100%"><b>$tit</b></td>
                    </tr>
EOD;
                        //if(strtoupper($codigo) != 'TITULO'){
                        if (stristr(strtoupper($codigo), 'TITULO') === FALSE) {
                            $html .= <<<EOD
                        <tr>
                        <td colspan="2" style="text-align:justify;width:100%">$valor</td>
                        </tr>
EOD;
                        }
                    }

                    $sql = "select tab0.*,tab1.num_doc, tab1.razon_soc AS NOMBRE
                   from co_firma_ep tab0 
                   join interceros_v tab1 ON tab1.id_mae_ter = tab0.id_mae_ter
                   where tab0.descripcion is null and tab0.id_estudios_previos=" . $id_estudios_previos;
                    $st = $consul->execute($sql);
                    $firmas = $st->fetchAll();
                    $html .= '<tr>';
                    $html .= '<td colspan="2" style="text-align:justify;width:100%">';
                    $html .= '<table>';
                    $i = 1;
                    foreach ($firmas as $firmas) {
                        $html .= '<tr>';
                        $html .= '<br/>';
                        $html .= '<br/>';
                        $html .= '<td>_____________________________________<br/>' . $firmas['NOMBRE'] . '<br/>' . $firmas['CARGO'] . '<br/></td>';
                        $html .= '<br/>';
                        $html .= '<br/>';
                        $html .= '</tr>';
                        /*if ($i % 2 == 0) {
                            $html .= '</tr><br/><br/><tr>';
                        }*/
                        $i++;
                    }

                    $html .= '</table><br/>';
                    $html .= '</td>';
                    $html .= '</tr>';
                    $html .= '</table>';
                    break;
                default:
                    $titulo = "JUSTIFICACIÓN PARA LA CELEBRACIÓN DE CONTRATOS DE PRESTACIÓN DE SERVICIOS CON PERSONAS NATURALES";
                    $pdf->setTitulo("JUSTIFICACIÓN PARA LA CELEBRACIÓN DE CONTRATOS DE PRESTACIÓN DE SERVICIOS CON PERSONAS NATURALES");
                    $pdf->AddPage();


                    $html = '<table border="1" cellpadding="2">';

                    if ($formato20190701 == 1) {
                        $html .= '<tr>';
                        $html .= '<td style="text-align:center;">';
                        //$html .= 'DOCUMENTO Y ESTUDIOS PREVIOS';
                        $html .= $titulo;
                        $html .= '</td>';
                        $html .= '</tr>';
                    }

                    //1 CIUDAD Y FECHA

                    $sql = "select tab7.valor
                    from co_detalle_ep tab7
                    join co_campo_ep tab1 ON tab1.id_campo_ep = tab7.id_campo_ep
                    where
                    1=1
                    AND tab7.id_estudios_previos=" . $id_estudios_previos . " and tab1.codigo = 'ciudad_fecha'
                    ";
                    $st = $consul->execute($sql);
                    $detalle = $st->fetchAll();

                    $ciudad = $detalle[0]['VALOR'];

                    $html .= '<tr>
                    <td style="text-align:left;width:50%"><b>Ciudad y Fecha:</b></td>
                    <td style="text-align:left;width:50%">' . $ciudad . '</td>
                    </tr>';

                    //2 NOMBRE CARGO

                    $sql = "select tab7.valor
                    from co_detalle_ep tab7
                    join co_campo_ep tab1 ON tab1.id_campo_ep = tab7.id_campo_ep
                    where
                    1=1
                    AND tab7.id_estudios_previos=" . $id_estudios_previos . " and tab1.codigo = 'solicitante'
                    ";
                    $st = $consul->execute($sql);
                    $detalle = $st->fetchAll();

                    $solicitante = $detalle[0]['VALOR'];

                    $literal_d = '';
                    /*
                      Se modifica, para tener encuenta la  tabla co_seleccion_ep
                     *      Si fechacierre no es vacia y tiene seleccion ep, valida fecha inicio, coloca año de fecha inicio y nuevo texto
                     *      Si fechacierre no es vacia y no tiene seleccion ep, coloca año actual y nuevo texto
                     *      Si fechacierre es vacio, coloca año actual y nuevo texto
                     * - 20160112 
                     */
                    if ($tag_nue == 1) {
                        $vigencia = $anho_actual_texto;
                        if ($cant_sgr >= 1) {
                            //$literal_d = 'Presupuesto de Gastos SGR para la bianualidad ' . $text_vigencia . ', en';
                            $literal_d = 'Presupuesto de Gastos SGR para la bianualidad ' . $text_vigencia . ''; // Incidente #10478 - 20181115
                        } else {
                            //$literal_d = 'Presupuesto de Gastos para la vigencia ' . $vigencia . ', en';
                            $literal_d = 'Presupuesto de Gastos para la vigencia actual'; // Incidente #10478 - 20181115
                        }
                    } else {
                        $vigencia = $vigencia;
                        $literal_d = 'Plan Operativo';
                    }

                    // Incidente #10478 - 20181115
                    //<td style="text-align:justify;width:100%";colspan="2">El jefe del Area solicitante certifica que la adquisicion del bien y/o servicio se encuentra incluida en el ' . $literal_d . ' y el Plan Anual de Adquisiciones y no hay existencia en el almacen del Servicio Geologico Colombiano y por lo anterior es necesaria la contratación.</td>
                    $html .= '

                    <tr>
                    <td style="text-align:left;width:50%"><b>Nombre y cargo del solicitante:</b></td>
                    <td style="text-align:left;width:50%">' . $solicitante . '</td>
                    </tr>
                    <tr>
                    <td style="text-align:justify;width:100%";colspan="2">El ordenador del gasto del área solicitante certifica que el objeto cuya contratación se requiere, se encuentra incluido en el ' . $literal_d . ' y en el plan anual de adquisiciones, del mismo modo certifica, que validado con el grupo de Talento Humano de la entidad, no existe personal de planta para realizar las actividades u obligaciones derivadas y/o el personal existente no es suficiente.</td>
                    </tr>';

                    //3 NECESIDAD

                    $sql = "select tab7.valor
                    from co_detalle_ep tab7
                    join co_campo_ep tab1 ON tab1.id_campo_ep = tab7.id_campo_ep
                    where
                    1=1
                    AND tab7.id_estudios_previos=" . $id_estudios_previos . " and tab1.codigo = 'necesidad_area'
                    ";
                    $st = $consul->execute($sql);
                    $detalle = $st->fetchAll();

                    $necesidad = $detalle[0]['VALOR'];

                    $html .= '

                    <tr>
                    <td colspan="2" style="text-align:left;width:100%"><b>DESCRIPCIÓN DE LA NECESIDAD QUE LA ENTIDAD PRETENDE SATISFACER CON LA CONTRATACIÓN</b></td>
                    </tr>

                    <tr>
                    <td colspan="2" style="text-align:justify;width:100%">' . $this->htmlClear($purifier->purify($necesidad)) . '</td>
                    </tr>';

                    //4 OBJETO

                    $sql = "select tab7.valor
                    from co_detalle_ep tab7
                    join co_campo_ep tab1 ON tab1.id_campo_ep = tab7.id_campo_ep
                    where
                    1=1
                    AND tab7.id_estudios_previos=" . $id_estudios_previos . " and tab1.codigo = 'objeto'
                    ";
                    $st = $consul->execute($sql);
                    $detalle = $st->fetchAll();

                    $objeto = $detalle[0]['VALOR'];

                    $html .= '

                    <tr>
                    <td colspan="2" style="text-align:justify;width:100%"><b>OBJETO DEL CONTRATO</b></td>
                    </tr>

                    <tr>
                    <td colspan="2" style="text-align:justify;width:100%">' . $this->htmlClear($purifier->purify($objeto)) . '</td>
                    </tr>';

                    //5 OBLIGACIONES DEL CONTRATISTA

                    $sql = "select tab7.valor
                    from co_detalle_ep tab7
                    join co_campo_ep tab1 ON tab1.id_campo_ep = tab7.id_campo_ep
                    where
                    1=1
                    AND tab7.id_estudios_previos=" . $id_estudios_previos . " and tab1.codigo = 'obliga_contratista'
                    ";
                    $st = $consul->execute($sql);
                    $detalle = $st->fetchAll();

                    $obliga_contratista = $detalle[0]['VALOR'];

                    $html .= '

                    <tr>
                    <td colspan="2" style="text-align:left;width:100%"><b>OBLIGACIONES DEL CONTRATISTA</b></td>
                    </tr>

                    <tr>
                    <td colspan="2" style="text-align:justify;width:100%">' . $this->htmlClear($purifier->purify($obliga_contratista)) . '</td>
                    </tr>';

                    //6 FUNDAMENTOS DE LA MODALIDAD

                    $sql = "select tab7.valor
                    from co_detalle_ep tab7
                    join co_campo_ep tab1 ON tab1.id_campo_ep = tab7.id_campo_ep
                    where
                    1=1
                    AND tab7.id_estudios_previos=" . $id_estudios_previos . " and tab1.codigo = 'justificacion_modali'
                    ";
                    $st = $consul->execute($sql);
                    $detalle = $st->fetchAll();

                    $justificacion_modali = $detalle[0]['VALOR'];

                    $html .= '

                    <tr>
                    <td colspan="2" style="text-align:center;width:100%"><b>B: FUNDAMENTOS JURÍDICOS QUE SOPORTAN LA MODALIDAD DE SELECCIÓN</b></td>
                    </tr>';

                    //6 FUNDAMENTOS DE LA MODALIDAD

                    $sql = "select tab7.valor
                    from co_detalle_ep tab7
                    join co_campo_ep tab1 ON tab1.id_campo_ep = tab7.id_campo_ep
                    where
                    1=1
                    AND tab7.id_estudios_previos=" . $id_estudios_previos . " and tab1.codigo = 'jefe'
                    ";
                    $st = $consul->execute($sql);
                    $detalle = $st->fetchAll();

                    $jefe = $detalle[0]['VALOR'];

                    if ($vigencia_ep >= 2018) {
                        $testo_b = "artículo 2.2.1.2.1.4.9. del Decreto 1082 de 2015";
                        $testo_b2 = "citado artículo";
                    } else {
                        $testo_b = "artículo 81 del Decreto 1510 de 2013";
                        $testo_b2 = "artículo 81 del Decreto 1510 de 2013";
                    }

                    $html .= '

                    <tr>
                    <td colspan="2" style="text-align:justify;width:100%"><b>' . $jefe . '</b>, para dar cumplimiento a lo dispuesto en el ' . $testo_b . ', señala:</td>
                    </tr>

                    <tr>
                    <td colspan="2" style="text-align:justify;width:100%">Que la presente contratación se rige por lo establecido en el ' . $testo_b . '.<br/>Que analizada la documentación presentada por la persona a contratar, se pudo verificar cada uno de los datos suministrados, lo que permitió establecer que posee las calidades indicadas e idoneidad con relación al objeto del contrato.<br/>Que en consecuencia, haciendo uso de la facultad prevista en el ' . $testo_b2 . ', en lo relacionado con la idoneidad y experiencia para la contratación de prestación de servicios profesionales y apoyo a la gestión, se solicita la contratación a que se refiere el presente documento.</td>
                    </tr>

                    <tr>
                    <td colspan="2" style="text-align:center;width:100%"><b>C. INFORMACIÓN DEL CONTRATO</b></td>
                    </tr>';

                    //7. CONTRATISTA 

                    $sql = "select tab7.valor
                    from co_detalle_ep tab7
                    join co_campo_ep tab1 ON tab1.id_campo_ep = tab7.id_campo_ep
                    where
                    1=1
                    AND tab7.id_estudios_previos=" . $id_estudios_previos . " and tab1.codigo = 'nombre_contra'
                    ";
                    $st = $consul->execute($sql);
                    $detalle = $st->fetchAll();

                    $nombre_contra = $detalle[0]['VALOR'];

                    //8. PROFESION 

                    $sql = "select tab7.valor
                    from co_detalle_ep tab7
                    join co_campo_ep tab1 ON tab1.id_campo_ep = tab7.id_campo_ep
                    where
                    1=1
                    AND tab7.id_estudios_previos=" . $id_estudios_previos . " and tab1.codigo = 'profesion'
                    ";
                    $st = $consul->execute($sql);
                    $detalle = $st->fetchAll();

                    $profesion = $detalle[0]['VALOR'];

                    //9. IDENTIFICACION 

                    $sql = "select tab7.valor
                    from co_detalle_ep tab7
                    join co_campo_ep tab1 ON tab1.id_campo_ep = tab7.id_campo_ep
                    where
                    1=1
                    AND tab7.id_estudios_previos=" . $id_estudios_previos . " and tab1.codigo = 'num_iden'
                    ";
                    $st = $consul->execute($sql);
                    $detalle = $st->fetchAll();

                    $num_iden = $detalle[0]['VALOR'];

                    //10. EXPEDIDA EN 

                    $sql = "select tab7.valor
                    from co_detalle_ep tab7
                    join co_campo_ep tab1 ON tab1.id_campo_ep = tab7.id_campo_ep
                    where
                    1=1
                    AND tab7.id_estudios_previos=" . $id_estudios_previos . " and tab1.codigo = 'expedida'
                    ";
                    $st = $consul->execute($sql);
                    $detalle = $st->fetchAll();

                    $expedida = $detalle[0]['VALOR'];

                    $html .= '

                    <tr>
                    <td style="text-align:left;width:50%">Que por la anterior justificación, se hace necesario contratar a: ' . $nombre_contra . '</td>
                    <td style="text-align:left;width:50%"><b>Profesión o actividad: </b>' . $profesion . '</td>
                    </tr>

                    <tr>
                    <td style="text-align:left;width:50%"><b>Identificado con</b> CC. ' . $num_iden . '</td>
                    <td style="text-align:left;width:50%"><b>Expedida en: </b>' . $expedida . '</td>
                    </tr>';

                    //11. PLAZO

                    $sql = "select tab7.valor
                    from co_detalle_ep tab7
                    join co_campo_ep tab1 ON tab1.id_campo_ep = tab7.id_campo_ep
                    where
                    1=1
                    AND tab7.id_estudios_previos=" . $id_estudios_previos . " and tab1.codigo = 'plazo'
                    ";
                    $st = $consul->execute($sql);
                    $detalle = $st->fetchAll();

                    $plazo = $detalle[0]['VALOR'];

                    //12. 	VALOR

                    $sql = "select numero_a_texto(tab0.valor)||' PESOS M/CTE' VALOR_LETRAS, tab0.valor
                    from co_estudios_previos tab0
                    where tab0.id_estudios_previos=" . $id_estudios_previos;
                    $st = $consul->execute($sql);
                    $detalle = $st->fetchAll();

                    $valor = $detalle[0]['VALOR'];
                    $valor_letras = $detalle[0]['VALOR_LETRAS'];


                    $html .= '

                    <tr>
                    <td style="text-align:left;width:50%"><b>Plazo: </b>' . $this->htmlClear($purifier->purify($plazo)) . '</td>
                    <td style="text-align:left;width:50%"><b>Valor del contrato: </b>' . $valor_letras . ' (' . number_format($valor) . ')</td>
                    </tr>';

                    //13. FORMA DE PAGO

                    $sql = "select tab7.valor
                    from co_detalle_ep tab7
                    join co_campo_ep tab1 ON tab1.id_campo_ep = tab7.id_campo_ep
                    where
                    1=1
                    AND tab7.id_estudios_previos=" . $id_estudios_previos . " and tab1.codigo = 'forma_pago'
                    ";
                    $st = $consul->execute($sql);
                    $detalle = $st->fetchAll();

                    $forma_pago = $detalle[0]['VALOR'];

                    $html .= '

                    <tr>
                    <td style="text-align:left;width:50%"><b>Forma de Pago</b></td>
                    <td style="text-align:left;width:50%">' . $this->htmlClear($purifier->purify($forma_pago)) . '</td>
                    </tr>';

                    //14. SEDE

                    $sql = "select tab7.valor
                    from co_detalle_ep tab7
                    join co_campo_ep tab1 ON tab1.id_campo_ep = tab7.id_campo_ep
                    where
                    1=1
                    AND tab7.id_estudios_previos=" . $id_estudios_previos . " and tab1.codigo = 'sede'
                    ";
                    $st = $consul->execute($sql);
                    $detalle = $st->fetchAll();

                    $sede = $detalle[0]['VALOR'];

                    $html .= '

                    <tr>
                    <td style="text-align:left;width:50%"><b>Sede donde se prestará el servicio:</b></td>
                    <td style="text-align:left;width:50%">' . $sede . '</td>
                    </tr>

                    <tr>
                    <td colspan="2" style="text-align:justify;width:100%">Es necesario que el contratista tenga desplazamientos fuera de la sede habitual de prestación del servicio?<br/> <br/>SI   __ NO ___ <br/> <br/>El SERVICIO GEOLÓGICO COLOMBIANO pagará los gastos de desplazamiento correspondientes según la equivalencia establecida para los viáticos de los funcionarios.<br/><br/>El SERVICIO GEOLÓGICO COLOMBIANO proveerá los elementos necesarios para la prestación del servicio en campo y oficina.</td>
                    </tr>';

                    $modal = $datos_gen[0]['MODAL'];

                    //15. NOMBRE Y CARGO DEL SUPERVISOR

                    $supervisor = $datos_gen[0]['SUPERVISOR'];


                    $sql = "select tab7.valor
                    from co_detalle_ep tab7
                    join co_campo_ep tab1 ON tab1.id_campo_ep = tab7.id_campo_ep
                    where
                    1=1
                    AND tab7.id_estudios_previos=" . $id_estudios_previos . " and tab1.codigo = 'cargo_supervisor'
                    ";
                    $st = $consul->execute($sql);
                    $detalle = $st->fetchAll();

                    $cargo_supervisor = $detalle[0]['VALOR'];

                    $html .= '

                    <tr>
                    <td style="text-align:left;width:50%"><b>NOMBRE Y CARGO DEL SUPERVISOR</b></td>
                    <td style="text-align:left;width:50%">' . $supervisor . ' ' . $cargo_supervisor . ' </td>
                    </tr>';

                    //16. RIESGOS

                    $sql = "select tab7.valor
                    from co_detalle_ep tab7
                    join co_campo_ep tab1 ON tab1.id_campo_ep = tab7.id_campo_ep
                    where
                    1=1
                    AND tab7.id_estudios_previos=" . $id_estudios_previos . " and tab1.codigo = 'riesgo'
                    ";
                    $st = $consul->execute($sql);
                    $detalle = $st->fetchAll();

                    $riesgo = $detalle[0]['VALOR'];

                    $html .= '

                    <tr>
                    <td colspan="2" style="text-align:left;width:100%"><b>SOPORTE PARA TIPIFICAR, ESTIMAR Y ASIGNAR LOS RIESGOS PREVISIBLES</b></td>
                    </tr>

                    <tr>
                    <td colspan="2" style="text-align:justify;width:100%">' . $this->htmlClear($purifier->purify($riesgo)) . '</td>
                    </tr>';

                    //17. GARANTIAS

                    $sql = "select tab7.valor
                    from co_detalle_ep tab7
                    join co_campo_ep tab1 ON tab1.id_campo_ep = tab7.id_campo_ep
                    where
                    1=1
                    AND tab7.id_estudios_previos=" . $id_estudios_previos . " and tab1.codigo = 'garantia'
                    ";
                    $st = $consul->execute($sql);
                    $detalle = $st->fetchAll();

                    $garantia = $detalle[0]['VALOR'];

                    $html .= '

                    <tr>
                    <td colspan="2" style="text-align:left;width:100%"><b>ANALISIS QUE SUSTENTA LA EXIGENCIA DE LAS GARANTIAS</b></td>
                    </tr>

                    <tr>
                    <td colspan="2" style="text-align:justify;width:100%">' . $this->htmlClear($purifier->purify($garantia)) . '</td>
                    </tr>

                    <tr>
                    <td colspan="2" style="text-align:center;width:100%">
                    <br/><br/><br/><br/>_________________________________________<br/>
                    JEFE DE ÁREA, DIRECTOR TÉCNICO O COORDINADOR DEL GRUPO SOLICITANTE
                    <br/><br/><br/><br/>_________________________________________<br/>
                    Vo. Bo. JEFE DE ÁREA O DIRECTOR TÉCNICO

                    </td>

                    </tr>	
                    <tr>
                    <td colspan="2" style="text-align:center;width:100%"><b>D: INFORMACIÓN SOBRE INSUFICIENCIA DE PERSONAL DE PLANTA</b></td>
                    </tr>';

                    //18. TALENTO HUMANO

                    $sql = "select tab7.valor
                    from co_detalle_ep tab7
                    join co_campo_ep tab1 ON tab1.id_campo_ep = tab7.id_campo_ep
                    where
                    1=1
                    AND tab7.id_estudios_previos=" . $id_estudios_previos . " and tab1.codigo = 'coordina_talento'
                    ";
                    $st = $consul->execute($sql);
                    $detalle = $st->fetchAll();

                    $coordina_talento = $detalle[0]['VALOR'];

                    //Se cambia por co_proyectos_all_v, ya que esta vista tiene todos los proyectos y discrimina si es sgr o no - 20160108
                    $sql = "select 
    tab1.codigo||' '||tab1.descripcion AS CPO,
    tab0.*,
    tab1.sgr as sgr_all_v
    from co_proyecto_ep tab0
    left join co_proyectos_all_v tab1 ON tab1.id = tab0.id_cpo and tab1.sgr = tab0.sgr
    where tab0.id_estudios_previos = " . $id_estudios_previos;
                    $st = $consul->execute($sql);
                    $datos_cpo = $st->fetchAll();
                    $proyecto = "";
                    foreach ($datos_cpo as $datos_cpo) {

                        $proyectos .= $datos_cpo['CPO'] . '<br/>';
                    }

                    /**
                     * SOLICITUD MODIFICACION TEXTO ESTUDIOS PREVIOS 
                     * En los Estudios Previos de Contratacion, se debe condicionar parte del texto del literal D: INFORMACIÓN SOBRE INSUFICIENCIA DE PERSONAL DE PLANTA, asi:

                      Reemplazar la parte que dice:

                      que, de acuerdo con el Plan Operativo aprobado para la vigencia , en


                      Si tiene un proyecto relacionado del SGR,:
                      que, de acuerdo con el Presupuesto de Gastos aprobado para la bianualidad 2015 - 2016,  en

                      Si no es el SGR
                      que, de acuerdo con el Presupuesto de Gastos aprobado para la vigencia 2016 , en
                     * 
                     * - 20160108
                     */
                    //$literal_d = 'que, de acuerdo con el Plan Operativo aprobado para la vigencia ' . $vigencia . ', en';
                    $literal_d = '';
                    /*
                      Se modifica, para tener encuenta la  tabla co_seleccion_ep
                     *      Si fechacierre no es vacia y tiene seleccion ep, valida fecha inicio, coloca año de fecha inicio y nuevo texto
                     *      Si fechacierre no es vacia y no tiene seleccion ep, coloca año actual y nuevo texto
                     *      Si fechacierre es vacio, coloca año actual y nuevo texto
                     * - 20160112 
                     */
                    if ($tag_nue == 1) {
                        $vigencia = $anho_actual_texto;
                        if ($cant_sgr >= 1) {
                            $literal_d = 'que, de acuerdo con el Presupuesto de Gastos SGR aprobado para la bianualidad ' . $text_vigencia . ', en';
                        } else {
                            $literal_d = 'que, de acuerdo con el Presupuesto de Gastos aprobado para la vigencia ' . $vigencia . ', en';
                        }
                    } else {
                        $vigencia = $vigencia;
                        $literal_d = 'que, de acuerdo con el Plan Operativo aprobado para la vigencia ' . $vigencia . ', en';
                    }

                    $html .= '

                    <tr>
                    <td style="text-align:left;width:100%">' . strtoupper($coordina_talento) . '</td>
                    </tr>

                    <tr>
                    <td colspan="2" style="text-align:justify;width:100%">Manifiesta ' . $literal_d . ' relación con las necesidades de personal identificadas y autorizadas por los respectivos Jefes de Dependencia, y atendiendo la solicitud de ' . $jefe . ' , se revisó que la fecha no existe personal disponible y suficiente para ejecutar las actividades requeridas por el Proyecto ' . $proyectos . '.<br/><br/><br/>

                    <br/><br/><p style="text-align:center"><b>_________________________________________<br/>COORDINADOR(A) GRUPO DE TALENTO HUMANO</b></p>
                     </td>
                    </tr>';

                    //19. ORDENADOR

                    $sql = "select tab7.valor
                    from co_detalle_ep tab7
                    join co_campo_ep tab1 ON tab1.id_campo_ep = tab7.id_campo_ep
                    where
                    1=1
                    AND tab7.id_estudios_previos=" . $id_estudios_previos . " and tab1.codigo = 'ordenador'
                    ";
                    $st = $consul->execute($sql);
                    $detalle = $st->fetchAll();

                    $ordenador = $detalle[0]['VALOR'];

                    // Incidente #10478 - 20181115
                    //<td colspan="2" style="text-align:justify;width:100%">De conformidad con lo previsto en la Resolución 337 del 23 de diciembre de 2013, certifica, teniendo en cuenta la información contenida en el literal D del presente documento, que la Entidad no cuenta con el personal suficiente para completar el equipo de trabajo del Proyecto ' . $proyectos . '.<br/>De acuerdo con lo previsto en el artículo 81 del Decreto 1510 de 2013, para efectuar la presente contratación no es necesaria la obtención de varias ofertas.<br/><br/><br/>
                    $html .= '
                    <tr>
                    <td colspan="2" style="text-align:center;width:100%"><b>E: CERTIFICACIÓN SOBRE INSUFICIENCIA DE PERSONAL DE PLANTA</b></td>
                    </tr>



                    <tr>
                    <td style="text-align:left;width:100%">' . strtoupper($ordenador) . '</td>
                    </tr>


                    <tr>
                    <td colspan="2" style="text-align:justify;width:100%">De conformidad con lo previsto en la Resolución 337 del 23 de diciembre de 2013, certifica, teniendo en cuenta la información contenida en el literal D del presente documento, que la Entidad no cuenta con el personal suficiente para completar el equipo de trabajo del Proyecto ' . $proyectos . '.<br/>De acuerdo con lo previsto en el articulo 2.2.1.2.1.4.9 del Decreto 1082 de 2015, para efectuar la presente contratación no es necesaria la obtención de varias ofertas.<br/><br/><br/>

                    <br/><br/><p style="text-align:center"><b>_________________________________________<br/>ORDENADOR(A) DEL GASTO</b></p>
                     </td>


                    </tr>



                    </table>';
                    break;
            }
        } else {
            switch ($entidadCliente) {
                CASE "8":
                    $titulo = $modal;
                    /*$pdf->setTitulo($modal);
                    $pdf->AddPage();
                    $pdf->SetFont('Times', '', 10);*/
                    $pdf->setTitle($titulo);
                    $html = '<table style="border-collapse: collapse;border:1px solid;margin:0;padding:0">';
                    $sql = <<<EOD
                select 
tab2.campo_ep.id_campo_ep as id_campo_ep,
tab2.campo_ep.codigo as codigo,
tab2.campo_ep.descripcion AS descripcion,                     
tab2.campo_ep.estado as estado,
tab2.campo_ep.tipo_campo as tipo_campo,
case when tab7.valor is null then tab2.default_value else tab7.valor end as valor,  
tab2.campo_ep.fase_ep.orden as HOJA,
tab2.orden
from co_estudios_previos tab0
join co_modalidad_sel tab1 on tab0.id_modalidad_sel=tab1.id_modalidad_sel
left join co_campo_modalidad tab2 on tab1.id_modalidad_sel=tab2.id_modalidad_sel
left join co_detalle_ep tab7 on tab0.id_estudios_previos=tab7.id_estudios_previos and tab2.campo_ep.id_campo_ep=tab7.id_campo_ep
left join co_campo_obliga tab8 ON tab8.id_modalidad_sel = tab0.id_modalidad_sel and tab8.id_campo_ep = tab2.campo_ep.id_campo_ep    
where
1=1  
and tab0.ID_ESTUDIOS_PREVIOS =$id_estudios_previos
order by tab2.campo_ep.fase_ep.orden,tab2.orden  
EOD;
                    $st = $consul->execute($sql);
                    $records = $st->fetchAll();
                    foreach ($records as $rec) {
                        $codigo = $rec['CODIGO'];
                        $tit = $rec['DESCRIPCION'];
                        $valor = $rec['VALOR'];
                        $valor = $this->htmlClear($purifier->purify($valor));
                        $html .= <<<EOD
                    <tr>
                    <td colspan="2" style="text-align:left;width:100%"><b>$tit</b></td>
                    </tr>
EOD;
                        //if(strtoupper($codigo) != 'TITULO'){
                        if (stristr(strtoupper($codigo), 'TITULO') === FALSE) {
                            $html .= <<<EOD
                        <tr>
                        <td colspan="2" style="text-align:justify;width:100%">$valor</td>
                        </tr>
EOD;
                        }
                    }
                    //SE ESTABLECE SECCION REA DE ORIGEN LUEGO DE TODOS LOS CAMPOS Y ANTES DE LAS FIRMAS TICKET 15089
                    $html .= <<<EOD
                    <tr>
                    <td colspan="2" style="text-align:left;width:100%"><b>AREA DE ORIGEN</b></td>
                    </tr>
                    <tr>
                    <td colspan="2" style="text-align:justify;width:100%"><br/></td>
                    </tr>
EOD;
                    /* $html.= '<tr>';
                      $html.= '<td colspan="2" style="text-align:justify;width:100%">';
                      $html.= '<br/>';
                      $html.= '<br/>';
                      //Mostramos firmas configuradas para el Estudio previo en la tabla co_firma_ep
                      $html.= 'Nombre: __________________________';
                      $html.= '<br/>';
                      $html.= 'Cargo: __________________________';
                      $html.= '</td>';
                      $html.= '</tr>'; */
                    $sql = "select tab0.*,tab1.num_doc, tab1.razon_soc AS NOMBRE
                   from co_firma_ep tab0 
                   join interceros_v tab1 ON tab1.id_mae_ter = tab0.id_mae_ter
                   where tab0.descripcion is null and tab0.id_estudios_previos=" . $id_estudios_previos;
                    $st = $consul->execute($sql);
                    $firmas = $st->fetchAll();
                    $html .= '<tr>';
                    $html .= '<td colspan="2" style="text-align:justify;width:100%">';
                    $html .= '<table><tr>';
                    $i = 1;
                    foreach ($firmas as $firmas) {
                        $html .= '<br/>';
                        $html .= '<br/>';
                        $html .= '<td>_____________________________________<br/>' . $firmas['NOMBRE'] . '<br/>' . $firmas['CARGO'] . '<br/></td>';

                        if ($i % 2 == 0) {
                            $html .= '</tr><br/><br/><tr>';
                        }
                        $i++;
                    }

                    $html .= '</tr></table><br/>';
                    $html .= '</td>';
                    $html .= '</tr>';
                    $html .= '</table>';
                    break;
                CASE "2":
                    $titulo = $modal;
                    $pdf->setTitulo($modal);
                    $pdf->setVersion($version);
                    $pdf->AddPage();
                    $pdf->SetFont('Times', '', 10);
                    $html = '<table border="1" cellpadding="2">';
                    $sql = <<<EOD
                select 
tab1.introductorio,
tab2.campo_ep.id_campo_ep as id_campo_ep,
tab2.campo_ep.codigo as codigo,
tab2.campo_ep.descripcion AS descripcion,                     
tab2.campo_ep.estado as estado,
tab2.campo_ep.tipo_campo as tipo_campo,
case when tab7.valor is null then tab2.default_value else tab7.valor end as valor,  
tab2.campo_ep.fase_ep.orden as HOJA,
tab2.orden
from co_estudios_previos tab0
join co_modalidad_sel tab1 on tab0.id_modalidad_sel=tab1.id_modalidad_sel
left join co_campo_modalidad tab2 on tab1.id_modalidad_sel=tab2.id_modalidad_sel
left join co_detalle_ep tab7 on tab0.id_estudios_previos=tab7.id_estudios_previos and tab2.campo_ep.id_campo_ep=tab7.id_campo_ep
left join co_campo_obliga tab8 ON tab8.id_modalidad_sel = tab0.id_modalidad_sel and tab8.id_campo_ep = tab2.campo_ep.id_campo_ep    
where
1=1  
and tab0.ID_ESTUDIOS_PREVIOS = $id_estudios_previos
order by tab2.campo_ep.fase_ep.orden,tab2.orden  
EOD;
                    $st = $consul->execute($sql);
                    $records = $st->fetchAll();
                    //Agregamos el texto introductorio para la modalidad si existe
                    $valor = $records[0]['introductorio'];
                    if (!empty($valor)) {
                        $valor = $this->htmlClear($purifier->purify($valor));
                        $html .= <<<EOD
                    <tr>
                    <td colspan="2" style="text-align:justify;width:100%">$valor</td>
                    </tr>
EOD;
                    }
                    //Fin texto introductorio
                    foreach ($records as $rec) {
                        $codigo = $rec['CODIGO'];
                        $tit = $rec['DESCRIPCION'];
                        $valor = $rec['VALOR'];
                        $valor = $this->htmlClear($purifier->purify($valor));
                        $html .= <<<EOD
                    <tr>
                    <td colspan="2" style="text-align:left;width:100%"><b>$tit</b></td>
                    </tr>
EOD;
                        //if(strtoupper($codigo) != 'TITULO'){
                        if (stristr(strtoupper($codigo), 'TITULO') === FALSE) {
                            $html .= <<<EOD
                        <tr>
                        <td colspan="2" style="text-align:justify;width:100%">$valor</td>
                        </tr>
EOD;
                        }
                    }

                    $sql = "select tab0.*,tab1.num_doc, tab1.razon_soc AS NOMBRE
                   from co_firma_ep tab0 
                   join interceros_v tab1 ON tab1.id_mae_ter = tab0.id_mae_ter
                   where tab0.descripcion is null and tab0.id_estudios_previos=" . $id_estudios_previos;
                    $st = $consul->execute($sql);
                    $firmas = $st->fetchAll();
                    $html .= '<tr>';
                    $html .= '<td colspan="2" style="text-align:justify;width:100%">';
                    $html .= '<table>';
                    $i = 1;
                    foreach ($firmas as $firmas) {
                        $html .= '<tr>';
                        $html .= '<br/>';
                        $html .= '<br/>';
                        $html .= '<td>_____________________________________<br/>' . $firmas['NOMBRE'] . '<br/>' . $firmas['CARGO'] . '<br/></td>';
                        $html .= '<br/>';
                        $html .= '<br/>';
                        $html .= '</tr>';
                        /*if ($i % 2 == 0) {
                            $html .= '</tr><br/><br/><tr>';
                        }*/
                        $i++;
                    }

                    $html .= '</table><br/>';
                    $html .= '</td>';
                    $html .= '</tr>';
                    $html .= '</table>';
                    break;
                default:

                    $pdf->AddPage();

                    $sql = "select tab1.codigo||' '||tab1.descripcion AS CPO
                    from co_proyecto_ep tab0
                    left join co_proyectos_v tab1 ON tab1.id = tab0.id_cpo
                    where tab0.id_estudios_previos = " . $id_estudios_previos;
                    $st = $consul->execute($sql);
                    $datos_cpo = $st->fetchAll();

                    $sql = "select distinct 'No. '||tab1.cdp||' del '||to_char(tab1.fecha,'dd-mm-yyyy') AS CDP
                    from co_cdps_ep tab0
                    left join co_cdps_v tab1 ON tab1.cdp = tab0.id_cdp
                    where tab0.id_estudios_previos =" . $id_estudios_previos;
                    $st = $consul->execute($sql);
                    $datos_cdp = $st->fetchAll();

                    $fecha_creacion = $datos_gen[0]['FECHA_CREA'];
                    $proceso = $datos_gen[0]['PROCESO'];
                    $aplica_proceso = $datos_gen[0]['APLICA_PROCESO'];
                    $area = $datos_gen[0]['AREA'];
                    $id_area = $datos_gen[0]['ID_AREA'];
                    $supervisor = $datos_gen[0]['SUPERVISOR'];
                    $valor = $datos_gen[0]['VALOR_TOTAL'];


                    $html = '<table border="1" cellpadding="4">';
                    if ($formato20190701 == 1) {
                        $html .= '<tr>';
                        $html .= '<td style="text-align:center;">';
                        $html .= 'DOCUMENTO Y ESTUDIOS PREVIOS';
                        $html .= '</td>';
                        $html .= '</tr>';
                    }
                    $html .= '<tr>';
                    $html .= '<td style="width:50%"><b>Fecha de Solicitud</b></td><td style="width:50%">' . $fecha_creacion . '</td>';
                    $html .= '</tr>';
                    $html .= '<tr>';
                    if ($aplica_proceso == 1) {
                        $html .= '<td style="width:50%"><b>Número Proceso</b></td><td style="width:50%">' . $proceso . '</td>';
                    } else {
                        $html .= '<td style="width:50%"><b>Número de Estudio Previo</b></td><td style="width:50%">' . $proceso . '</td>';
                    }
                    $html .= '</tr>';



                    $sql = "select 
                    tab2.campo_ep.tipo_captura.descripcion as descripcion_captura,
                    tab2.campo_ep.id_campo_ep as id_campo_ep,
                    tab2.campo_ep.codigo as codigo,
                    tab2.campo_ep.descripcion as descripcion,
                    tab2.campo_ep.estado as estado,
                    tab2.campo_ep.tipo_campo as tipo_campo,
                    tab2.campo_ep.tamano_campo as tamano_campo,
                    tab2.campo_ep.obligatorio as obligatorio,
                    tab2.campo_ep.aplica_relacion as aplica_relacion,
                    tab2.campo_ep.tipo_captura.descripcion as descripcion_captura,
                    tab2.campo_ep.tabla_cc.cc as nombre_cc,
                    tab2.campo_ep.tabla_cc.tabla as tabla_cc,    
                    case when lower(tab8.descripcion)=lower(tab1.descripcion) then tab1.descripcion 
                    else  tab8.descripcion||' '||tab1.descripcion end AS des_modalidad,
                    tab1.fundamentos_juridicos,
                    tab8.descripcion as tipo,
                    tab2.campo_ep.tabla_cc.campo_mostrar AS CAMPO_MOSTRAR,
                    tab2.campo_ep.tabla_cc.id_campo_buscar AS CAMPO_BUSCAR,                
                    tab7.valor, tab7.id_detalle_ep
                    from co_estudios_previos tab0
                    left join co_modalidad_sel tab1 on tab0.id_modalidad_sel=tab1.id_modalidad_sel
                    left join co_campo_modalidad tab2 on tab1.id_modalidad_sel=tab2.id_modalidad_sel
                    left join co_detalle_ep tab7 on tab0.id_estudios_previos=tab7.id_estudios_previos and tab2.campo_ep.id_campo_ep=tab7.id_campo_ep
                    left join co_tipo_proceso tab8 ON tab8.id_tipo_proceso = tab1.id_tipo_proceso
                    where
                    1=1
                    AND tab0.id_estudios_previos=" . $id_estudios_previos . "
                    order by tab2.orden";
                    $st = $consul->execute($sql);
                    $detalle = $st->fetchAll();

                    $modalidad = $detalle[0]['DES_MODALIDAD'];
                    $tipo_proceso = $detalle[0]['TIPO'];
                    $html .= '<tr>';
                    $html .= '<td style="width:50%"><b>TIPO DE PROCESO</b></td><td style="width:50%">' . $modalidad . '</td>';
                    $html .= '</tr>';
                    $html .= '<tr>';
                    $html .= '<td style="width:50%"><b>Area:</b></td><td style="width:50%">' . $area . '</td>';
                    $html .= '</tr>';
                    $html .= '<tr>';
                    $html .= '<td style="width:50%"><b>Valor Total:</b></td><td style="width:50%">' . number_format($valor, 2) . '</td>';
                    $html .= '</tr>';
                    $html .= '<tr>';
                    $html .= '<td style="width:50%"><b>Proyecto</b></td><td style="width:50%">';
                    foreach ($datos_cpo as $datos_cpo) {

                        $html .= $datos_cpo['CPO'] . '<br/>';
                    }
                    $html .= '</td></tr>';

                    $html .= '<tr><td style="width:50%"><b>Certificado de Disponibilidad Presupuestal</b></td><td style="width:50%">';
                    foreach ($datos_cdp as $datos_cdp) {

                        $html .= $datos_cdp['CDP'] . '<br/>';
                    }
                    $html .= '</td></tr>';

                    $html .= '</table>';

                    $html .= '<p style="text-align:justify">El jefe del Area solicitante certifica que la adquisicion del bien y/o servicio se encuentra incluida en el Plan Operativo y el Plan Anual de Adquisiciones y no hay existencia en el almacen del Servicio Geologico Colombiano y por lo anterior es necesaria la contratacion.</p>';
                    if ($tipo_proceso == 'Mínima Cuantía') {

                        $html .= '<p>En cumplimiento de lo establecido en el Artículo 20 del Decreto 1510 de 2013, el Área ' . $area . ' elabora el presente documento y estudios previos</p>';
                    } else {

                        if ($modal == "ARRENDAMIENTO DE BIENES INMUEBLES") {

                            //20190521 se actualiza el texto de este apartado a partir de la fecha 20190521
                            if (strtotime($fecha_creacion) < strtotime('2019-05-21')) {
                                $html .= '<p>En cumplimiento de lo establecido en el Artículo 28 del Decreto 1510 de 2013, el Área ' . $area . ' elabora el presente documento y estudios previos</p>';
                            } else {
                                $html .= '<p>En cumplimiento de lo establecido en el Artículo 2.2.1.1.2.1.1 del decreto 1082 de 2015, el Área ' . $area . ' elabora el presente documento y estudios previos</p>';
                            }
                        } else {

                            $sql = "select case when tab0.id_nivel = 1 then tab0.descripcion else (select descripcion from area where id_area = tab0.id_dependencia) end AS DIRECCION 
                            from area tab0
                            where tab0.id_area = " . $id_area;
                            $st = $consul->execute($sql);
                            $areas = $st->fetchAll();
                            $area = $areas[0]['DIRECCION'];

                            //Incidente #10200 - 20181010
                            if ($tag_nue == 1 && $modal == "CONVENIOS INTERADMINISTRATIVOS") {
                                $html .= '<p style="text-align:justify">De conformidad con lo establecido en el artículo 2.2.1.1.2.1.1 del Decreto 1082 de 2015, la ' . $area . ' (esto creo que varía según la Dirección que lo elabore) , emite los presentes estudios y documentos previos, que soportan la elaboración de los documentos del proceso de selección y el contrato.<br/><br/>En atención a la previsión del artículo 25, numeral 12 de la Ley 80 de 1993, modificado por el artículo 87 de la Ley 1474 de 2011, en concordancia con el artículo 2.2.1.1.2.1.1 del Decreto 1082 de 2015, los estudios y documentos previos estarán a disposición del público durante el desarrollo del Proceso de Contratación y contienen los elementos mínimos exigidos en las normas aplicables.</p>';
                            } else if ($tag_nue == 1 && $tipo_proceso == 'Contratación Directa') {// Incidente #10378 - 20181030
                                if ($vigencia_ep >= 2018) {
                                    $testo_b = "artículo 2.2.1.1.2.1.1. del Decreto 1082 de 2015";
                                    $testo_b2 = "citado artículo";
                                } else {
                                    $testo_b = "artículo 20 del Decreto 1510 de 2013";
                                    $testo_b2 = "artículo 20 del Decreto 1510 de 2013";
                                }
                                $html .= '<p style="text-align:justify">De conformidad con lo establecido en el ' . $testo_b . ', la ' . $area . ' , con apoyo del Grupo de Contratos y Convenios, emite los presentes estudios y documentos previos, que soportan la elaboración de los documentos del proceso de selección y el contrato.<br/><br/>En atención a la previsión del artículo 25, numeral 12 de la Ley 80 de 1993, modificado por el artículo 87 de la Ley 1474 de 2011, en concordancia con el ' . $testo_b . ', los estudios y documentos previos estarán a disposición del público durante el desarrollo del Proceso de Contratación y contienen los elementos mínimos exigidos en las normas aplicables.</p>';
                            } else {
                                $html .= '<p style="text-align:justify">De conformidad con lo establecido en el artículo 20 del Decreto 1510 de 2013, la ' . $area . ' , con apoyo del Grupo de Contratos y Convenios, emite los presentes estudios y documentos previos, que soportan la elaboración de los documentos del proceso de selección y el contrato, con el fin de permitir a los proponentes valorar adecuadamente el alcance de lo requerido por el SGC y la distribución de riesgos propuesta.<br/><br/>En atención a la previsión del artículo 25, numeral 12 de la Ley 80 de 1993, modificado por el artículo 87 de la Ley 1474 de 2011, en concordancia con el artículo 20 del Decreto 1510 de 2013, los estudios y documentos previos estarán a disposición del público durante el desarrollo del Proceso de Contratación y contienen los elementos mínimos exigidos en las normas aplicables.</p>';
                            }
                        }
                    }

                    $html .= '<table border="1" cellpadding="4">';
                    foreach ($detalle as $detalle) {

                        $aplica_relacion = $detalle['APLICA_RELACION'];

                        if ($aplica_relacion == 1) {

                            $tabla = $detalle['TABLA_CC'];
                            $campo = $detalle['CAMPO_MOSTRAR'];
                            $campo_buscar = $detalle['CAMPO_BUSCAR'];
                            $valor = $detalle['VALOR'];

                            if ($valor != "") {

                                $sql = "select " . $campo . " from " . $tabla . " where " . $campo_buscar . "= " . $valor;
                                $st = $consul->execute($sql);
                                $datos = $st->fetchAll();

                                $valor_mostrar = $datos[0]['CAMPO'];
                                $titulo = $detalle['DESCRIPCION'];
                            } else {
                                $titulo = $detalle['DESCRIPCION'];
                                $valor_mostrar = "";
                            }
                            $html .= '<tr>';
                            $html .= '<td style="width:30%"><b>' . $titulo . '</b></td><td style="width:70%">' . $valor_mostrar . '</td>';
                            $html .= '</tr>';
                        } else {

                            $tipo = $detalle['DESCRIPCION_CAPTURA'];
                            $titulo = $detalle['DESCRIPCION'];
                            $codigo = $detalle['CODIGO'];
                            $valor = $detalle['VALOR'];

                            if ($tipo != "ArchivoItem") {

                                if ($tipo == "RichTextItem") {


                                    $html .= '<tr>';
                                    $html .= '<td style="width:100%" colspan="2"><b>' . $titulo . '</b></td>';
                                    $html .= '</tr>';
                                    $html .= '<tr>';
                                    $html .= '<td style="width:100%;text-align:justify" colspan="2">' . $this->htmlClear($purifier->purify($valor)) . '</td>';
                                    $html .= '</tr>';
                                } else {

                                    if ($codigo != "garantias" && $codigo != "fundamentos" && $codigo != "requisitos" && $codigo != "documentos") {
                                        $html .= '<tr>';
                                        $html .= '<td style="width:30%"td><b>' . $titulo . '</b></td><td style="width:70%">' . $valor . '</td>';
                                        $html .= '</tr>';
                                    } else {


                                        if ($codigo == "fundamentos") {

                                            $fundamentos_jur = $detalle['FUNDAMENTOS_JURIDICOS'];

                                            $html .= '<tr>';
                                            $html .= '<td style="width:30%"><b>' . $titulo . '</b></td><td style="width:70%;text-align:justify">' . $this->htmlClear($purifier->purify($fundamentos_jur)) . '</td>';
                                            $html .= '</tr>';
                                        } else if ($codigo == "garantias") {

                                            $sql = "select case when tab1.id_garantia_ep IS NULL then '' else 'X' end AS MARCA, tab0.modalidad, tab1.porcentaje, tab1.valor AS VIGENCIA_AMPARO
                                            from co_garantia tab0
                                            join co_garantia_ep tab1 ON tab1.id_garantia = tab0.id_garantia and tab1.id_estudios_previos=" . $id_estudios_previos;
                                            $st = $consul->execute($sql);
                                            $garantias = $st->fetchAll();

                                            if (count($garantias) > 0) {

                                                $html .= '<tr>';
                                                $html .= '<td style="width:30%"><b>' . $titulo . '</b></td>';

                                                $html .= '<td style="width:70%">
                                            <table border="1" style="width:100%">
                                            <tr>
                                            <td colspan="4" style="width:100%;text-align:justify">
                                            Para garantizar a la entidad el cumplimiento de todos y cada una de las obligaciones contractuales y considerando los posibles riesgos que se pueden presentar con ocasión del contrato, el contratista deberá constituir a su costa y a favor del Instituto, póliza única que ampare los siguientes riesgos</td></tr>';

                                                $html .= '<tr>
                                            <td style="width:20%;text-align:center">MARQUE CON UNA X</td>
                                            <td style="width:30%;text-align:center">MODALIDAD</td>
                                            <td style="width:20%;text-align:center">PORCENTAJE</td>
                                            <td style="width:30%;text-align:center">VIGENCIA DE AMPAROS</td>
                                            </tr>';



                                                foreach ($garantias as $garantias) {

                                                    $html .= '<tr>
                                            <td style="width:20%;text-align:center"><b>' . $garantias['MARCA'] . '</b></td>
                                            <td style="width:30%;text-align:center">' . $garantias['MODALIDAD'] . '</td>
                                            <td style="width:20%;text-align:center">' . $garantias['PORCENTAJE'] . '</td>
                                            <td style="width:30%;text-align:center">' . $garantias['VIGENCIA_AMPARO'] . '</td>
                                            </tr>';
                                                }

                                                //Incidente #2345, cambio de texto para los nuevos estudios previos 2016 - 20160127
                                                if ($tag_nue == 1) {
                                                    $html .= '<tr>
                                            <td colspan="4" style="width:100%;text-align:justify"><br/>  En  caso  de  que  se  requiera,  y  con  el  fin  de  amparar  los  perjuicios  de  naturaleza  contractual  derivados  del
    incumplimiento del contrato que pueda surgir para la administración por las actuaciones, hechos u omisiones del
    contratista, este deberá presentar las garantías requeridas de conformidad con el Decreto 1082 de 2015, articulo
    2.2.1.2.3.1.2. y concordantes, dentro de los dos (2) días hábiles siguientes a la fecha de la comunicación de la
    carta  de  aceptación  de  su  oferta.  En  caso  de  no  otorgarse  ni  presentarse  la  garantía  requerida  en  el  término
    establecido, dada la necesidad de dar inicio a la ejecución contractual la Entidad podrá retractar su aceptación y
    proceder a aceptar la oferta del oferente ubicado en el segundo lugar del orden de elegibilidad.</td></tr>';
                                                }

                                                $html .= '</table></td>';

                                                $html .= '</tr>';
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                    if ($tipo_proceso == 'Mínima Cuantía') {

                        $html .= '<tr>';

                        //Incidente #2345, cambio de texto para los nuevos estudios previos 2016 - 20160127
                        if ($tag_nue == 1) {
                            $html .= '<td style="width:100%;text-align:justify"><b>FUNDAMENTOS JURÍDICOS QUE SUSTENTAN LA MODALIDAD </b> <br/><br/> Se acoge la modalidad de contratación de Mínima Cuantía teniendo en cuenta que el presupuesto oficial asignado no para la contratación no excede del 10% de la menor cuantía de la Entidad de acuerdo con lo estipulado en el artículo 2.2.1.2.1.5.2. del Decreto 1082 de 2015.</td></tr>';
                        } else {
                            $html .= '<td style="width:100%;text-align:justify"><b>FUNDAMENTOS JURÍDICOS QUE SUSTENTAN LA MODALIDAD </b> <br/><br/> Se acoge la modalidad de contratación de Mínima Cuantía teniendo en cuenta que el presupuesto oficial asignado no excede el 10% de la Menor Cuantía de la entidad, la modalidad de selección que se adopta es la Mínima Cuantía, de conformidad con lo dispuesto en el Articulo 2 de la Ley 1150 de 2007 y el Capítulo V del Decreto 1510 de 2013.</td></tr>';
                        }
                    }

                    /**
                     * Incidente #7412, area del supervisor, solo para si son funcionarios - 20171212
                     */
                    $html .= '<tr>';
                    $html .= '<td style="width:100%;text-align:justify"><b>INTERVENTOR O SUPERVISOR: </b> El supervisor o interventor para el presente contrato sera ' . $supervisor . '  del grupo ' . $area_supervisor . ' quien hara seguimiento y control del cumplimiento de las obligaciones contractuales a cargo del contratista, y recibira a satisfaccion el Objeto contratado, de acuerdo con lo establecido en el Manual de Interventoria y Supervision del Servicio Geológico Colombiano.</td></tr>';





                    $sql = "SELECT tab0.*, tab2.descripcion as tipoevaluador

    from co_comite_evaluador tab0
    join co_seleccion_ep tab1 ON tab1.id_seleccion_ep = tab0.id_seleccion_ep and tab1.id_estudios_previos = " . $id_estudios_previos . "
    left join co_tipo_evaluador tab2 ON tab2.id_tipo_evaluador = tab0.id_tipo_evaluador";
                    $st = $consul->execute($sql);
                    $comite = $st->fetchAll();

                    if (count($comite) > 0) {

                        $html .= '<tr>';
                        $html .= '<td style="width:100%;text-align:justify"><b>DESIGNACIÓN DEL COMITE EVALUADOR</b> De conformidad con el Artículo 27 del Decreto 1510 de 2013, el Comité Evaluador para el presente proceso de Selección es el siguiente:<br/><br/>';

                        foreach ($comite as $comite) {

                            $html .= '<b>Evaluador ' . ucfirst($comite['TIPOEVALUADOR']) . ': </b>' . $comite['NOMBRE_RAZON_EVALUADOR'] . '<br/>';
                        }

                        $html .= '</td></tr>';
                    }



                    $html .= '<tr>';
                    $html .= '<td style="width:100%"><b>' . $titulo . '</b> Para efectos de trámite anexo los siguientes documentos:</td></tr>';

                    $sql = "select tab0.descripcion
                                            from co_documento_ep tab1 
                                            left join co_docum_modalidad tab2 ON tab2.id_docum_modalidad = tab1.id_docum_modalidad
                                            left join co_tipo_documento tab0 ON tab0.id_tipo_documento = tab2.id_tipo_documento
                                            where tab1.id_estudios_previos=" . $id_estudios_previos;
                    $st = $consul->execute($sql);
                    $documentos = $st->fetchAll();


                    foreach ($documentos as $documentos) {

                        $html .= '<tr><td style="width:90%;text-align:left">' . $documentos['DESCRIPCION'] . '</td><td style="width:10%;text-align:center"><b>X</b></td></tr>';
                    }




                    $html .= '</table><br/><br/>';

                    $html .= '<p>NOTA: El documento de estudios previos deberá presentarse debidamente suscrito por el RESPONSABLE DEL AREA CORRESPONDIENTE, CON EL VISTO BUENO DEL ORDENADOR DEL GASTO, junto con los documentos que soporten los estudios realizados.</p><br/><br/>';

                    $sql = "select tab0.*,tab1.num_doc, tab1.razon_soc AS NOMBRE
                   from co_firma_ep tab0 
                   join interceros_v tab1 ON tab1.id_mae_ter = tab0.id_mae_ter
                   where tab0.descripcion is null and tab0.id_estudios_previos=" . $id_estudios_previos;
                    $st = $consul->execute($sql);
                    $firmas = $st->fetchAll();

                    $html .= '<table><tr>';
                    $i = 1;
                    foreach ($firmas as $firmas) {
                        //$html.= '<br/>';
                        //$html.= '<br/>';
                        $html .= '<td>_____________________________________<br/>' . $firmas['NOMBRE'] . '<br/>' . $firmas['CARGO'] . '<br/></td>';

                        if ($i % 2 == 0) {
                            $html .= '</tr><br/><br/><tr>';
                        }
                        $i++;
                    }

                    $html .= '</tr></table><br/>';

                    //ACTUALIZACIÓN 13/04/2015, se modifica el formato para que las firmas no se salgan de la hoja.

                    $sql = "select tab0.*,tab1.num_doc, tab1.razon_soc AS NOMBRE
                   from co_firma_ep tab0 
                   join interceros_v tab1 ON tab1.id_mae_ter = tab0.id_mae_ter
                   where tab0.descripcion is not null and tab0.id_estudios_previos=" . $id_estudios_previos;
                    $st = $consul->execute($sql);
                    $firmas = $st->fetchAll();
                    foreach ($firmas as $firmas) {
                        //$html.= '<br/>';
                        //$html.= '<br/>';
                        $html .= '<p>' . $firmas['DESCRIPCION'] . ': ' . $firmas['NOMBRE'] . ' - ' . $firmas['CARGO'] . '</p>';
                    }
                    break;
            }



            //echo $html;
            //die();
        }
        if($entidadCliente == "8"){
            try {
                //echo(getcwd() . "/uploads/tmp/");
                //$ruta_tmp = getcwd() . "/uploads/tmp/";
                //$wkhtmltopdf = new Wkhtmltopdf(array('path' => $ruta_tmp));
                //$wkhtmltopdf->setTitle("Prueba");
                //$wkhtmltopdf->setHtml($html);
                //$html = "esto es una prueba";
                $pdf->setHeaderSpacing("5");
                $pdf->setHeaderHtml("https://erp.comisiondelaverdad.co/contratacion/web/html.php/header_footer/header?tipo=$tipo&titulo=$titulo");
                $pdf->setFooterHtml("https://erp.comisiondelaverdad.co/contratacion/web/html.php/header_footer/footer?tipo=$tipo&titulo=$titulo");
                $pdf->setHtmlUtf8($html);
                $pdf->output(Wkhtmltopdf::MODE_DOWNLOAD, "file.pdf");
                //$wkhtmltopdf->output(Wkhtmltopdf::MODE_EMBEDDED, "file.pdf");
            } catch (Exception $e) {
                echo $e->getMessage();
            }           
        }else{
            $pdf->writeHTML($html, true, false, true, false, '');

            if($guardar!=null){
                if($guardar==true){         
                    $id=$request['id_estudios_previos'];
                    $val="estudios_previos_".$id_estudios_previos.".pdf";
                    $uploadDir = sfConfig::get("sf_upload_dir");
                    $ruta=$uploadDir.'/adj_estudios_previos/';
                $pdf->Output($ruta.$val, "F");
                    $uploadDir = sfConfig::get("sf_upload_dir");
                    $ruta =$uploadDir.'/documentos/';

                $pdf->Output($ruta.$val, "F");

            }
            }else{
                $pdf->Output("estudios_previos.pdf", "D");
            }
        }
        
        
        

        die();
    }

    /**
     *
     * Metodo que reemplaza las etiquetas html para modificar el formato de tamaño y alineación de los textos
     */
    private function htmlClear($string) {




        $string = str_replace('<p>', '<p align="justify">', $string);
        $string = str_replace('<br>', '<br/>', $string);
        $string = str_replace('class=', '', $string);
        $string = str_replace('<img', '', $string);
        $string = str_replace('<td>X</td>', '<td align="center">X</td>', $string);
        $string = str_replace('<td rowspan="2">', '<td rowspan="2" align="justify">', $string);

        $string = str_replace('<font size="2">', '<font size="10">', $string);
        $string = str_replace('<font size="3">', '<font size="12">', $string);
        $string = str_replace('<font size="4">', '<font size="14">', $string);
        $string = str_replace('<font size="5">', '<font size="18">', $string);
        $string = str_replace('<font size="6">', '<font size="24">', $string);
        $string = str_replace('<font size="7">', '<font size="36">', $string);
        $string = str_replace('<table ', '<center><table ', $string);
        $string = str_replace('</table> ', '</table></center>', $string);
        $string = str_replace('<table ', '<table border="1"', $string);

        $string = str_replace('size="1"', 'size="10"', $string);
        $string = str_replace('size="2"', 'size="10"', $string);
        $string = str_replace('size="3"', 'size="12"', $string);
        $string = str_replace('size="4"', 'size="14"', $string);
        $string = str_replace('size="5"', 'size="18"', $string);
        $string = str_replace('size="6"', 'size="24"', $string);
        $string = str_replace('size="7"', 'size="36"', $string);

        $string = str_replace('border="0"', 'border="1"', $string);


        $string = str_replace('<div>', '<div align="justify">', $string);
        $string = str_replace('&amp;amp;amp;amp;amp;nbsp;', ' ', $string);
        $string = str_replace('&amp;amp;amp;amp;nbsp;', ' ', $string);
        $string = str_replace('&amp;amp;amp;nbsp;', ' ', $string);
        $string = str_replace('&amp;amp;nbsp;', '', $string);
        $string = str_replace('&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;nbsp;', '', $string);
        $string = str_replace('amp;', '', $string);

        $string = str_replace('<td colspan="2">', '<td colspan="2" align="justify">', $string);
        $string = str_replace('<td rowspan="3">', '<td rowspan="3" align="justify">', $string);
        $string = str_replace('<td colspan="3">', '<td colspan="3" align="justify">', $string);
        $string = str_replace('<td rowspan="4">', '<td rowspan="4" align="justify">', $string);
        $string = str_replace('<td colspan="4">', '<td colspan="4" align="justify">', $string);
        $string = str_replace('  ', ' ', $string);
        $string = str_replace('   ', ' ', $string);
        $string = str_replace('    ', ' ', $string);
        $string = str_replace('	    ', ' ', $string);
        $string = str_replace('		    ', ' ', $string);
        $string = str_replace('valign', 'align', $string);
        $string = str_replace('width=', '', $string);
        $string = str_replace('bordercolor=', '', $string);
        $string = str_replace('<td>', '<td align="justify">', $string);
        $string = str_replace('<li>', '<li align="justify">', $string);
        $string = str_replace('style=', '', $string);

        return trim($string);
    }

}
