<?php include('./templates/cabecera.php'); ?>
<?php include('./config/db.php'); ?>
<?php include('funciones.php'); ?>
<?php 
$html = "planPrevencion.php";
if(!$_GET){
    echo "<script>location.href='$html?pagina=1';</script>";
}

if($_SESSION['perfil'] == 2){
    echo "<script>location.href='index.php?pagina=1';</script>";
}

$error = "";
$txtFiltro=(isset($_GET['txtFiltro']))?$_GET['txtFiltro']:"";
$totalPaginas = 10;
$paginadorSalto = 9;
$validaFormulario = false;
$txtId=(isset($_POST['txtId']))?$_POST['txtId']:"";

$selCliente=(isset($_POST['selCliente']))?$_POST['selCliente']:"";
$selInstalacion=(isset($_POST['selInstalacion']))?$_POST['selInstalacion']:"";
$txtNomPlan=(isset($_POST['txtNomPlan']))?$_POST['txtNomPlan']:"";
$txtFechaInicio=(isset($_POST['txtFechaInicio']))?$_POST['txtFechaInicio']:"";
$txtFechaTermino=(isset($_POST['txtFechaTermino']))?$_POST['txtFechaTermino']:"";
$selEstado=(isset($_POST['selEstado']))?$_POST['selEstado']:"";
$action=(isset($_POST['action']))?$_POST['action']:"";
$chkMes=(isset($_POST['chkMes']))?$_POST['chkMes']:"";
$chkActividad=(isset($_POST['chkActividad']))?$_POST['chkActividad']:"";
$txtCantidad=(isset($_POST['txtCantidad']))?$_POST['txtCantidad']:"";

//echo("txtNomPlan2=".$txtNomPlan2."<br>txtFechaInicio2=".$txtFechaInicio2."<br>txtFechaTermino2=".$txtFechaTermino2."<br>selEstado2=".$selEstado2);
$instalacion=(isset($_POST['instalacion']))?$_POST['instalacion']:"";
if($instalacion == "" && $selInstalacion != ""){
    foreach($selInstalacion as $ins){
        $instalacion = $ins."-".$instalacion;
    }
}

$alertaInstalacion = "";

$selCliente2=(isset($_POST['selCliente2']))?$_POST['selCliente2']:"";
$selInstalacion2=(isset($_POST['selInstalacion2']))?$_POST['selInstalacion2']:"";
$txtNomPlan2=(isset($_POST['txtNomPlan2']))?$_POST['txtNomPlan2']:"";
$txtFechaInicio2=(isset($_POST['txtFechaInicio2']))?$_POST['txtFechaInicio2']:"";
$txtFechaTermino2=(isset($_POST['txtFechaTermino2']))?$_POST['txtFechaTermino2']:"";
$selEstado2=(isset($_POST['selEstado2']))?$_POST['selEstado2']:"";

switch($action){
    case "Agregar":
            $selCliente = $selCliente2;
            $selInstalacion = explode('-', $instalacion);
            $txtNomPlan = limpiaHTML($txtNomPlan2);
            $txtFechaInicio = $txtFechaInicio2;
            $txtFechaTermino = $txtFechaTermino2;
            $selEstado = $selEstado2;
            //print_r(count($selInstalacion));
            if($selCliente == ""){
                $error = $error."-Debe seleccionar un cliente<br>";
            }
            if($selInstalacion == ""){
                $error = $error."-Debe seleccionar una instalación<br>";
            }
            if($txtNomPlan == ""){
                $error = $error."-Debe seleccionar un nombre<br>";
            }
            if($txtFechaInicio == ""){
                $error = $error."-Debe seleccionar una fecha de inicio<br>";
            }
            if($txtFechaTermino == ""){
                $error = $error."-Debe seleccionar una fecha de término<br>";
            }
            try{
                foreach($selInstalacion as $ins){
                    if($ins != ""){
                        $sql=$conexion->prepare("SELECT ins.nombre
                        FROM planprevencion pp inner join planinstalacion pi on pi.planId = pp.id
                        inner join instalacion ins on ins.id = pi.instalacionId 
                        where pp.clienteId=:clienteId and pi.instalacionId=:instalacionId
                        and (
                            pp.fechaInicio BETWEEN :fechaInicio and :fechaTermino
                            or
                            pp.fechaTermino BETWEEN :fechaInicio and :fechaTermino
                            ) 
                        and estadoId=1;");   
                        $sql->bindParam(":clienteId",$selCliente);
                        $sql->bindParam(":instalacionId",$ins);
                        $sql->bindParam(":fechaInicio",$txtFechaInicio);
                        $sql->bindParam(":fechaTermino",$txtFechaTermino);
                        $sql->execute();
                        //echo("ins = ".$ins."<br>");
                        if($sql->rowCount() > 0){
                            $Plan= $sql->fetch(PDO::FETCH_LAZY); 
                            $alertaInstalacion = $alertaInstalacion. "-".$Plan['nombre']."<br>"; 
                        }
                    }
                }
                if(strlen($alertaInstalacion) > 0){
                    $error = "Ya se encuentra un plan de prevención vigente para las siguientes instalaciones: <br>".$alertaInstalacion; 
                    $validaFormulario=false;
                }
            }catch (Exception $err) {
                $error =  ("Ha ocurrido un error en la solicitud. ");  
            }
        if(strlen($error) == 0){
            try{
                $txtNomPlan = limpiaHTML($txtNomPlan);
                $sql=$conexion->prepare("INSERT INTO planprevencion (clienteId, nombrePlan, 
                fechaInicio, fechaTermino, estadoId) 
                VALUES (:clienteId,:nombrePlan,:fechaInicio,:fechaTermino,:estadoId);");  
                $sql->bindParam(":clienteId",$selCliente);
                $sql->bindParam(":nombrePlan",$txtNomPlan);
                $sql->bindParam(":fechaInicio",$txtFechaInicio);
                $sql->bindParam(":fechaTermino",$txtFechaTermino);
                $sql->bindParam(":estadoId",$selEstado);
                //echo("INSERT INTO planprevencion (clienteId, nombrePlan, 
                //fechaInicio, fechaTermino, estadoId) 
                //VALUES (".$selCliente.",'".$txtNomPlan."','".$txtFechaInicio."','".$txtFechaTermino."',".$selEstado.");<br>");
                $sql->execute();
                $insFolio=0;
                $sql=$conexion->prepare("SELECT max(id) as id FROM planprevencion;"); 
                $sql->execute();
                $folio = $sql->fetch(PDO::FETCH_LAZY); //1 solo atributo, para trabajar con él
                $insFolio= $folio['id'];
                if($chkMes != ""){
                    foreach($chkMes as $fechas){
                        $corte = explode("_",$fechas);
                        $sql=$conexion->prepare("INSERT INTO planfechas (planId,annio,mes) 
                        VALUES (:planId,:annio,:mes);");  
                        $sql->bindParam(":planId",$insFolio);
                        $sql->bindParam(":annio",$corte[1]);
                        $sql->bindParam(":mes",$corte[0]);
                        //echo("INSERT INTO planfechas (planId,annio,mes) VALUES (".$insFolio.",".$corte[1].",".$corte[0].");<br>");
                        $sql->execute();
                    }
                }

                if($selInstalacion != ""){
                    foreach($selInstalacion as $ins){
                        if($ins != ""){
                            $sql=$conexion->prepare("INSERT INTO planinstalacion (planId,instalacionId) 
                            VALUES (:planId,:instalacionId);");  
                            $sql->bindParam(":planId",$insFolio);
                            $sql->bindParam(":instalacionId",$ins);
                            //echo("INSERT INTO planinstalacion (planId,instalacionId) VALUES (".$insFolio.",".$ins.");<br>");
                            $sql->execute();
                        }
                    }
                }
                
                $i=0;
                if($chkActividad != ""){
                    foreach($chkActividad as $act){
                        $sql=$conexion->prepare("INSERT INTO planactividad (planId,actividadId,cantidad) 
                        VALUES (:planId,:actividadId,:cantidad);");  
                        $actividadId = $act[0];
                        $cantidad = $txtCantidad[$i];
                        $sql->bindParam(":planId",$insFolio);
                        $sql->bindParam(":actividadId",$act);
                        $sql->bindParam(":cantidad",$cantidad);
                        $sql->execute();
                        //echo("INSERT INTO planactividad (planId,actividadId,cantidad) VALUES (".$insFolio.",".$actividadId.",".$cantidad.");<br>");
                        $i++;
                    }
                }
                echo("<script>alert('Se ha ingresado el registro satisfactoriamente');</script>");
                echo "<script>location.href='$html';</script>";
            }catch (Exception $err) {
                $error = ("Ha ocurrido un error al agregar la solicitud"); 
                //$error = ($err);  
            }
        }
        break;
    case "Modificar":
            $selCliente = $selCliente2;
            $selInstalacion = explode('-', $instalacion);
            $txtNomPlan = limpiaHTML($txtNomPlan2);
            $txtFechaInicio = $txtFechaInicio2;
            $txtFechaTermino = $txtFechaTermino2;
            $selEstado = $selEstado2;

            if($selCliente == ""){
                $error = $error."-Debe seleccionar un cliente<br>";
            }
            if($selInstalacion == ""){
                $error = $error."-Debe seleccionar una instalación<br>";
            }
            if($txtNomPlan == ""){
                $error = $error."-Debe seleccionar un nombre<br>";
            }
            if($txtFechaInicio == ""){
                $error = $error."-Debe seleccionar una fecha de inicio<br>";
            }
            if($txtFechaTermino == ""){
                $error = $error."-Debe seleccionar una fecha de término<br>";
            }
            //print_r($_POST);
            if(strlen($error) == 0){
                try{
                    $txtNomPlan = limpiaHTML($txtNomPlan);
                    $sql=$conexion->prepare("UPDATE planprevencion SET clienteId=:clienteId, nombrePlan=:nombrePlan, fechaInicio=:fechaInicio, fechaTermino=:fechaTermino, 
                    estadoId=:estadoId where id=:id;");  
                    $sql->bindParam(":id",$txtId);
                    $sql->bindParam(":clienteId",$selCliente);
                    $sql->bindParam(":nombrePlan",$txtNomPlan);
                    $sql->bindParam(":fechaInicio",$txtFechaInicio);
                    $sql->bindParam(":fechaTermino",$txtFechaTermino);
                    $sql->bindParam(":estadoId",$selEstado);
                    $sql->execute();

                    $sql=$conexion->prepare("DELETE from planfechas where planId=:id; DELETE from planactividad where planId=:id; DELETE from planinstalacion where planId=:id;");  
                    $sql->bindParam(":id",$txtId);
                    $sql->execute();

                    if($chkMes != ""){
                        foreach($chkMes as $fechas){
                            $corte = explode("_",$fechas);
                            $sql=$conexion->prepare("INSERT INTO planfechas (planId,annio,mes) 
                            VALUES (:planId,:annio,:mes);");  
                            $sql->bindParam(":planId",$txtId);
                            $sql->bindParam(":annio",$corte[1]);
                            $sql->bindParam(":mes",$corte[0]);
                            //echo("INSERT INTO planfechas (planId,annio,mes) VALUES (".$txtId.",".$corte[1].",".$corte[0].");<br>");
                            $sql->execute();
                        }
                    }

                    if($selInstalacion != ""){
                        foreach($selInstalacion as $ins){
                            if($ins != ""){
                            $sql=$conexion->prepare("INSERT INTO planinstalacion (planId,instalacionId) 
                            VALUES (:planId,:instalacionId);");  
                            //$instalacionId = $inst[0];
                            $sql->bindParam(":planId",$txtId);
                            $sql->bindParam(":instalacionId",$ins);
                            //echo("INSERT INTO planinstalacion (planId,instalacionId) VALUES (".$txtId.",".$inst.");<br>");
                            $sql->execute();
                            }
                        }
                    }
                    
                    $i=0;
                    if($chkActividad != ""){
                        foreach($chkActividad as $act){
                            $sql=$conexion->prepare("INSERT INTO planactividad (planId,actividadId,cantidad) 
                            VALUES (:planId,:actividadId,:cantidad);");  
                            $actividadId = $act[0];
                            $cantidad = $txtCantidad[$i];
                            $sql->bindParam(":planId",$txtId);
                            $sql->bindParam(":actividadId",$act);
                            $sql->bindParam(":cantidad",$cantidad);
                            $sql->execute();
                            //echo("INSERT INTO planactividad (planId,actividadId,cantidad) VALUES (".$txtId.",".$actividadId.",".$cantidad.");<br>");
                            $i++;
                        }
                    }

                    echo("<script>alert('Se ha modificado el registro satisfactoriamente');</script>");
                    echo "<script>location.href='$html';</script>";
                }catch (Exception $err) {
                    $error = ("Ha ocurrido un error al modificar la solicitud");  
                }
            }
        break;
    case "Volver":
        echo "<script>location.href='index.php';</script>";
        break;
    case "Seleccionar":
        try{
            $sql=$conexion->prepare("SELECT * FROM planprevencion where id=:id;");  
            $sql->bindParam(":id",$txtId);
            $sql->execute();
            $Plan= $sql->fetch(PDO::FETCH_LAZY); //1 solo atributo, para trabajar con él
            $txtId= $Plan['id'];
            $selCliente = $Plan['clienteId'];
            //$selInstalacion = $Plan['instalacionId'];
            $txtNomPlan = $Plan['nombrePlan'];
            $txtFechaInicio = $Plan['fechaInicio'];
            $txtFechaTermino = $Plan['fechaTermino'];
            $selEstado = $Plan['estadoId'];

            $sql=$conexion->prepare("SELECT instalacionId FROM planinstalacion WHERE planId in (:planId);");
            $sql->bindParam(":planId",$txtId);
            $sql->execute();
            $listaInstalacion = $sql->fetchAll(PDO::FETCH_ASSOC);
            $selInstalacion = [];
            foreach($listaInstalacion as $ins){
                array_push($selInstalacion, $ins['instalacionId']);
                $instalacion = $ins['instalacionId']."-".$instalacion;
            }

            $validaFormulario=true;
        }catch (Exception $err) {
            $error = ("Ha ocurrido un error al seleccionar el registro"); 
        }
        break;
    case "Validar":
        if($selCliente == ""){
            $error = $error."-Debe seleccionar un cliente<br>";
        }
        if($selInstalacion == ""){
            $error = $error."-Debe seleccionar una instalación<br>";
        }
        if($txtNomPlan == ""){
            $error = $error."-Debe seleccionar un nombre<br>";
        }
        if($txtFechaInicio == ""){
            $error = $error."-Debe seleccionar una fecha de inicio<br>";
        }
        if($txtFechaTermino == ""){
            $error = $error."-Debe seleccionar una fecha de término<br>";
        }
        try{
            foreach($selInstalacion as $ins){
                //echo("SELECT ins.nombre
                //FROM planprevencion pp inner join planinstalacion pi on pi.planId = pp.id
                //inner join instalacion ins on ins.id = pi.instalacionId 
                //where pp.clienteId=".$selCliente." and pi.instalacionId=".$ins."
                //and (
                //pp.fechaInicio BETWEEN '".$txtFechaInicio."' and '".$txtFechaTermino."'
                //or pp.fechaTermino BETWEEN '".$txtFechaInicio."' and '".$txtFechaTermino."'
                //) and pp.estadoId=1;<br>");
        
                $sql=$conexion->prepare("SELECT ins.nombre
                FROM planprevencion pp inner join planinstalacion pi on pi.planId = pp.id
                inner join instalacion ins on ins.id = pi.instalacionId 
                where pp.clienteId=:clienteId and pi.instalacionId=:instalacionId
                and (
                    pp.fechaInicio BETWEEN :fechaInicio and :fechaTermino
                    or
                    pp.fechaTermino BETWEEN :fechaInicio and :fechaTermino
                    ) 
                and estadoId=1;");  
                $sql->bindParam(":clienteId",$selCliente);
                $sql->bindParam(":instalacionId",$ins);
                $sql->bindParam(":fechaInicio",$txtFechaInicio);
                $sql->bindParam(":fechaTermino",$txtFechaTermino);
                $sql->execute();
                //echo("Instalacion = ".$ins."<br>");
                if($sql->rowCount() > 0){
                    $Plan= $sql->fetch(PDO::FETCH_LAZY); 
                    $alertaInstalacion = $alertaInstalacion. "-".$Plan['nombre']."\n"; 
                }
            }
            if(strlen($alertaInstalacion) > 0){
                $error = "Ya se encuentra un plan de prevención vigente para las siguientes instalaciones: \n".$alertaInstalacion; 
                $validaFormulario=false;
            }else{
                $validaFormulario=true;
            }
            //echo("SELECT * FROM planprevencion where clienteId=:clienteId and instalacionId=:instalacionId and (fechaInicio >= :fechaInicio or fechaTermino <= :fechaTermino) and estadoId=1;");
            
        }catch (Exception $err) {
            $error =  ("Ha ocurrido un error en la solicitud. ".$err);  
        }
        break;
}

$sqlPlan="SELECT pp.id, cli.nombre as nomCli, pp.nombrePlan, pp.fechaInicio, pp.fechaTermino, e.detalle
FROM planprevencion pp inner join cliente cli on pp.clienteId=cli.id inner join estado e on e.id=pp.estadoId ";  
if($txtFiltro!="" ){
    $sqlPlan = $sqlPlan . " where cli.nombre LIKE :id or pp.nombrePlan LIKE :id 
    or pp.fechaInicio LIKE :id or pp.fechaTermino LIKE :id or e.detalle LIKE :id ";
}
try{
    $sql=$conexion->prepare($sqlPlan); 
    if($txtFiltro!="" ){
        $txtFiltro2=limpiaHTML("%".$txtFiltro."%");
        $sql->bindParam(":id",$txtFiltro2);
    }

    $sql->execute();
    if($sql->rowCount() > 0){
        $totalDatos = $sql->rowCount();
        $paginas = $totalDatos/$totalPaginas;
        $paginas = ceil($paginas);
    }else{
        $paginas = 1;
    }
}catch (Exception $err) {
    echo ("Ha ocurrido un error en la solicitud. ");    
    //throw $th;
}
if(is_null($_GET['pagina'])){
    $getPagina=0;
}else{
    $getPagina = intval($_GET['pagina']);
}

$iniciar = ($getPagina-1) * $totalPaginas;
$sqlPlan=$sqlPlan." ORDER BY id LIMIT :iniciar,:totalPaginas;";

try{
    $sql=$conexion->prepare($sqlPlan); 
    if($txtFiltro!="" ){
        $txtFiltro2=limpiaHTML("%".$txtFiltro."%");
        $sql->bindParam(":id",$txtFiltro2);
    }
    $sql->bindParam(":iniciar",$iniciar, PDO::PARAM_INT);
    $sql->bindParam(":totalPaginas",$totalPaginas, PDO::PARAM_INT);
    $sql->execute();
}catch (Exception $err) {
    echo ("Ha ocurrido un error en la solicitud. ");    
    throw $err;
}
$listaPlan = $sql->fetchAll(PDO::FETCH_ASSOC); //almacena todos los registros como arreglo
?>
<script type="text/javascript">
	$(document).ready(function(){
        $('#selCliente').select2();
        //recargaInstalacion();
        
        $('#txtFechaInicio').change(function(){
            $('#txtFechaTermino').attr({"min" : $('#txtFechaInicio').val()});
            validaFechas();
            validaActividades();
		});
        $('#txtFechaTermino').change(function(){
            validaFechas();
            validaActividades();
		});

        $('#Modificar').click(function() {
            var datostxt = new Array();
            var datosvalue = new Array();
        
    });
	})
</script>
<script type="text/javascript">
function recargaInstalacion(){

    idCliente = $('#selCliente').val();
    instalacion = $('#instalacion').val();
    //alert(instalacion);
    $.ajax({
        type:"POST",
        url:"asignaInstalacion2.php",
        data:"clienteId=" + idCliente +"&instalacion="+instalacion,
        success:function(r){
            $('#select2lista').html(r);
            //$('#selInstalacion').select2();
        }
    });
}

function validaFechas(){
    valor = $('#txtId').val();
    //alert(valor);
    fechaInicio = $('#txtFechaInicio').val();
    fechaTermino = $('#txtFechaTermino').val();
    
    //alert(usuario);
    $.ajax({
        type:"POST",
        url:"generaFechas.php",
        data:"txtFechaInicio=" + fechaInicio +"&txtFechaTermino="+fechaTermino + "&valor="+valor,
        success:function(r){
            $('#selecFechas').html(r);
        }
    });
}


function validaActividades(){
    valor = $('#txtId').val();    
    //alert(usuario);
    $.ajax({
        type:"POST",
        url:"generaActividades.php",
        data:"valor="+valor,
        success:function(r){
            $('#selecActividades').html(r);
        }
    });
}

function habilitaCantidad(valor){
    if($('#chkActividad'+valor).is(':checked')){
        $('#txtCantidad'+valor).prop( "disabled", false);
        $('#txtCantidad'+valor).val("");
    }else{
        $('#txtCantidad'+valor).prop( "disabled", true);
    }
}
function actualizaVariables(){
    $("#selCliente2").val($('#selCliente').val());
    $("#txtNomPlan2").val($('#txtNomPlan').val());
    $("#txtFechaInicio2").val($('#txtFechaInicio').val());
    $("#txtFechaTermino2").val($('#txtFechaTermino').val());
    $("#selEstado2").val($('#selEstado').val());
    var instalacion = "";
    $("#selInstalacion").each(function(){
        var selectName = $(this).attr("name");
        $(this).children("option:selected").each(function(){
            instalacion = $(this).val() + "-" + instalacion;
        });
    });
    //alert(instalacion);
    $("#instalacion").val(instalacion);
    //let selected = $("#selInstalacion").val();
    //alert(selected);
    //alert("selCliente="+selCliente+"\nselInstalacion="+selInstalacion+"\nselInstalacion="+txtNomPlan+"\nselInstalacion="+txtFechaInicio+"\nselInstalacion="+txtFechaTermino+"\nselInstalacion="+selEstado);

}
</script>
<div class="col-md-4">
    <div class="card">
        <div class="card-header">
            <h4>Plan anual<h4/>
        </div>
        <div class="card-body">
                <?php if(strlen($error) > 0) {?>
                    <div class='alert alert-danger' role="alert">
                        <?php echo $error; ?>
                    </div>
                <?php }?>
            <form method="POST" enctype="multipart/form-data">
            <input type="hidden" name="txtId" id="txtId" value="<?php echo $txtId; ?>" >

                <div class = "form-group">
                    <label for="exampleSelect1" class="form-label mt-1">Cliente*</label>
                    <select required class="form-select" id="selCliente" name="selCliente" onchange="recargaInstalacion()">
                    <option value="">Seleccione</option>
                    <?php
                    try{
                    $sqlCliente=$conexion->prepare("SELECT id, nombre, rut FROM cliente where activo=1;");  
                    $sqlCliente->execute();
                    $listaCliente = $sqlCliente->fetchAll(PDO::FETCH_ASSOC); //almacena todos los registros como arreglo
                        foreach($listaCliente as $cli) { ?>
                            <option value="<?php echo $cli['id'] ?>" <?php if($selCliente==$cli['id']) {echo ("selected"); } ?>><?php echo $cli['nombre'] ?></option>
                        <?php 
                        } 
                    }catch (Exception $err) {
                        echo ("Ha ocurrido un error en la solicitud. ");    
                        throw $err;
                    }
                    ?>
                    </select>
                </div>
                <div class="form-group">
                    <label for="exampleSelect1" class="form-label mt-1">Instalaci&oacute;n*</label>
                    
                    <div id="select2lista" ></div>
                </div>
                <div class = "form-group">
                    <label for="exampleSelect1" class="form-label mt-1">Nombre plan*</label>
                    <input type="text" required class="form-control" name="txtNomPlan" id="txtNomPlan" value="<?php echo $txtNomPlan; ?>">
                </div>
                <div class="form-group">
                    <label class="form-label mt-1" for="exampleSelect1">Fecha inicio*</label>
                    <input id="txtFechaInicio" required name="txtFechaInicio"  class="form-control" type="date" value="<?php echo $txtFechaInicio; ?>" />
                </div>
                <div class="form-group">
                    <label class="form-label mt-1" for="exampleSelect1">Fecha fin*</label>
                    <input id="txtFechaTermino" required name="txtFechaTermino" class="form-control" type="date" min="<?php echo $txtFechaInicio; ?>" value="<?php echo $txtFechaTermino; ?>"/>
                </div>
                <div class = "form-group">
                    <label for="exampleSelect1" class="form-label mt-1">Estado</label>
                    <select required class="form-select" id="selEstado" name="selEstado">
                    <?php
                    try{
                        if($action=="Seleccionar"){
                            $sqlEstado=$conexion->prepare("SELECT id, detalle FROM estado where activo=1;");  
                        }else{
                            $sqlEstado=$conexion->prepare("SELECT id, detalle FROM estado where activo=1 and id in (1);");  
                        }
                        //$sqlEstado=$conexion->prepare("SELECT id, detalle FROM estado where activo=1 /*and id in (1)*/;");  
                        $sqlEstado->execute();
                        $listaEstado = $sqlEstado->fetchAll(PDO::FETCH_ASSOC); //almacena todos los registros como arreglo
                            foreach($listaEstado as $est) { ?>
                                <option value="<?php echo $est['id'] ?>" <?php if($selEstado==$est['id']) {echo ("selected"); } ?>><?php echo $est['detalle'] ?></option>
                            <?php 
                            } 
                    }catch (Exception $err) {
                        echo ("Ha ocurrido un error en la solicitud. ");    
                        throw $err;
                    }
                    ?>
                    </select>
                </div>
                
                <br/>
                <div class="btn-group" role="group" aria-label="">

                    <button type="submit" name="action" value="Validar" <?php if ($action=="Seleccionar" or $action=="Modificar"  ){echo ("disabled");} ?> class="btn btn-outline-warning" >Verificar</button>&nbsp;
                    <button type="submit" name="action" formnovalidate="" value="Volver" class="btn btn-outline-info">Volver</button>
                </div>
            </form>
        </div>
    </div>
</div>
<?php 
if($validaFormulario){
?>
<div class="col-md-8">
    <div class="card">
        <div class="card-header">
            <h4>Detalle plan<h4/>
        </div>
        <div class="card-body">
            <form method="POST">
            <input type="hidden" name="txtId" id="txtId" value="<?php echo $txtId; ?>" >
            <input type="hidden" name="selCliente" id="selCliente" value="<?php echo $selCliente; ?>" >
            <?php foreach($selInstalacion as $hidden){ ?>
            <input type="hidden" name="selInstalacion[]" id="selInstalacion[]" value="<?php echo $hidden; ?>" >
            <?php } ?>
            <input type="hidden" name="txtNomPlan" id="txtNomPlan" value="<?php echo $txtNomPlan; ?>" >
            <input type="hidden" name="txtFechaInicio" id="txtFechaInicio" value="<?php echo $txtFechaInicio; ?>" >
            <input type="hidden" name="txtFechaTermino" id="txtFechaTermino" value="<?php echo $txtFechaTermino; ?>" >
            <input type="hidden" name="selEstado" id="selEstado" value="<?php echo $selEstado; ?>" >
            <input type="hidden" name="instalacion" id="instalacion" value="<?php echo $instalacion; ?>" >

            <input type="hidden" name="selCliente2" id="selCliente2" value="<?php echo $selCliente; ?>" >
            <input type="hidden" name="txtNomPlan2" id="txtNomPlan2" value="<?php echo $txtNomPlan; ?>" >
            <input type="hidden" name="txtFechaInicio2" id="txtFechaInicio2" value="<?php echo $txtFechaInicio; ?>" >
            <input type="hidden" name="txtFechaTermino2" id="txtFechaTermino2" value="<?php echo $txtFechaTermino; ?>" >
            <input type="hidden" name="selEstado2" id="selEstado2" value="<?php echo $selEstado; ?>" >
                <table class="table table-responsive table-hover" >
                    <thead>
                        <tr>
                            <th >Fechas</th>
                        </tr>
                    </thead>
                </table>
                <div style="position: relative; overflow: auto; max-height: 200px; width: 100%;" data-bs-offset="0" class="scrollme" tabindex="0">
                            <div id="selecFechas" >

                            </div>
                        
                </div>
                <br>
                <table class="table table-responsive table-hover" >
                    <thead>
                        <tr>
                            <th colspan="4">Actividades</th>
                        </tr>
                    </thead>
                </table>
                        <div id="selecActividades" >

                        </div>
                        
                <div class="btn-group" role="group" aria-label="">
                    <button type="submit" name="action" value="Agregar" <?php if ($action=="Seleccionar" or $action=="Modificar"  ){echo ("disabled");} ?> class="btn btn-outline-success" onclick="actualizaVariables();return confirm('¿Está seguro de agregar el registro?')">Crear Plan</button> &nbsp;
                    <button type="submit" id="Modificar" name="action" <?php if ($action!="Seleccionar" and $action!="Modificar"){echo ("disabled");} ?> value="Modificar" class="btn btn-outline-warning" onclick="actualizaVariables();return confirm('¿Está seguro de modificar el registro?');">Modificar</button>
                </div>
            </form>
        </div>
    </div>
</div>
<?php 
}
?>
<div>
<br>
    <form class="d-flex" method="GET">
        <input type="hidden" class="form-control" name="pagina" id="pagina" value="<?php echo $getPagina; ?>" >
        <input class="form-control me-sm-2" type="text" placeholder="filtrar" name="txtFiltro" id="txtFiltro" value="<?php echo ($txtFiltro!="")?$txtFiltro:""; ?>">
        <button class="btn btn-outline-info" name="action" type="submit" value="Filtrar">Filtrar</button>
    </form>
</div>
<div class="col-md-12">
<br> 
        <table class="table table-hover">
            <thead>
                <tr>
                    <th>ID</th>
                    <th>Cliente</th>
                    <!--th>Instalaci&oacute;n</th-->
                    <th>Nombre plan</th>
                    <!--th>F. Inicio</th>
                    <th>F. T&eacute;rmino</th>
                    <th>Estado</th-->
                    <th>Acciones</th>
                </tr>
            </thead>
            <tbody>
                <?php 
                foreach($listaPlan as $plan) { ?>
                <tr>
                    <td>
                        <h2 class="accordion-header" id="headingOne">
                            <button class="btn btn-outline-dark" type="button" data-bs-toggle="collapse" data-bs-target="#collapse<?php echo $plan['id'] ?>" aria-expanded="false" aria-controls="collapseOne">
                                <?php echo $plan['id'] ?>
                            </button>
                        </h2>
                    </td>
                    <td><?php echo $plan['nomCli'] ?></td>
                    <!--td><?php echo $plan['nombre'] ?></td-->
                    <td ><?php echo $plan['nombrePlan'] ?></td>
                    <!--td><?php 
                    echo date("d-m-Y",strtotime($plan['fechaInicio']));
                    ?></td>
                    <td><?php 
                    echo date("d-m-Y",strtotime($plan['fechaTermino']));
                    ?></td>
                    <td><?php echo $plan['detalle'] ?></td-->
                    <td>
                        <form method="post">
                            <input type="hidden" name="txtId" id="txtId" value="<?php echo $plan['id'] ?>">
                            <!--input type="submit" name="action" value="Seleccionar" class="btn btn-outline-dark "-->
                            <button type="submit" name="action" class="btn btn-outline-dark" value="Seleccionar" >
                                <i type="submit" class="bi bi-check2-circle" style="font-size: 1rem; color: #BA0700;"></i>
                            </button>
                        </form>
                    </td>
                </tr>
                <tr>
                    <td colspan="12">
                        <div class="accordion" id="accordionExample<?php echo $plan['id'] ?>">
                            <div class="accordion-item">
                                <div id="collapse<?php echo $plan['id'] ?>" class="accordion-collapse collapse" aria-labelledby="headingOne" data-bs-parent="#accordionExample<?php echo $plan['id'] ?>" >
                                    <div class="accordion-body">
                                    <table class="table table-hover">
                                        <thead>
                                            <tr>
                                                <th>F. Inicio</th>
                                                <th>F. T&eacute;rmino</th>
                                                <th>Estado</th>
                                            </tr>
                                        </thead>
                                        <tbody>
                                            <tr>
                                                <td><?php echo date("d-m-Y",strtotime($plan['fechaInicio'])) ?></td>
                                                <td><?php echo date("d-m-Y",strtotime($plan['fechaTermino'])) ?></td>
                                                <td><?php echo $plan['detalle'] ?></td>
                                            </tr>
                                        </tbody>
                                    </table>
                                        <table class="table table-hover">
                                            <thead>
                                                <tr>
                                                    <th colspan="3">Instalaciones</th>
                                                </tr>
                                            </thead>
                                            <tbody>
                                            
                                            <?php
                                                try{
                                                $sqlInstalacion=$conexion->prepare("SELECT ins.nombre FROM planprevencion pp inner join planinstalacion pi
                                                on pi.planId = pp.id inner join instalacion ins on ins.id = pi.instalacionId
                                                where  pp.id = :id order by ins.id asc;");  
                                                $sqlInstalacion->bindParam(":id",$plan['id']);
                                                $sqlInstalacion->execute();
                                                $listaInstalacion = $sqlInstalacion->fetchAll(PDO::FETCH_ASSOC); //almacena todos los registros como arreglo
                                                foreach($listaInstalacion as $ins) { 
                                                ?><tr>
                                                    <td >
                                                        <i class="bi bi-arrow-right">
                                                            <?php
                                                                echo $ins['nombre'] ;
                                                            ?>
                                                        </i>
                                                    </td>  </tr> 
                                                <?php
                                                    } 
                                                }catch (Exception $err) {
                                                    echo ("Ha ocurrido un error en la solicitud. ");    
                                                    throw $err;
                                                }
                                                ?>
                                            
                                        </tbody>
                                    </table>
                                    </div>
                                </div>
                            </div>
                        </div>
                    </td>
                </tr>
                <?php } ?>
            </tbody>
        </table>
</div>

<div>
    <ul class="pagination">
        <li class="page-item <?php echo ($getPagina<=1)?"disabled":""; ?>">
            <a class="page-link" href="<?php echo $html; ?>?pagina=<?php echo $getPagina-1 ?>&txtFiltro=<?php echo $txtFiltro; ?>">&laquo;</a>
        </li>
        <?php for($i=0; $i< $paginas; $i++ ) { 
                if((($i+1)%$paginadorSalto)==0){
                    echo("</ul><ul class='pagination'>");
                } 
            ?>
        <li class="page-item <?php echo ($getPagina==$i+1)?"active":""; ?>">
            <a class="page-link" href="<?php echo $html; ?>?pagina=<?php echo $i+1 ?>&txtFiltro=<?php echo $txtFiltro; ?>"><?php echo $i+1 ?></a>
        </li>
        <?php } ?>
        <li class="page-item <?php echo ($getPagina>=$paginas)?"disabled":""; ?>">
            <a class="page-link" href="<?php echo $html; ?>?pagina=<?php echo $getPagina+1 ?>&txtFiltro=<?php echo $txtFiltro; ?>">&raquo;</a>
        </li>
    </ul>
</div>
<?php 
//if($action=="Seleccionar" or $action=="Validar"){
    
    echo "<script>";
    echo "recargaInstalacion();";
    echo "validaFechas();";
    echo "validaActividades();";
    echo "</script>";
//}

?>
<?php include('./templates/pie.php'); ?>