<?php
session_start();
require_once '../include/bd_pdo.php';
require_once '../classes/Fechas.php';

if(!isset($_POST['tipo'])){
    $return['error'] = 'Error! No se recibieron los datos.';
} else {
    switch ($_POST['tipo']) {        
        case 1: //Select All
            $error = '';
            $estudios = array();
            $stmt = $pdo->prepare('SELECT * FROM alu_fs_estudioadicional(:Usuario_id, null)');
            $stmt->bindParam(':Usuario_id', $_SESSION['usuario_id']);
            if(!$stmt->execute()){
                $error = 'No fue posible obtener los registros del historial académico';
                print_r($stmt->errorInfo());

            } else
                $estudios = $stmt->fetchAll();
            $stmt->closeCursor();
            $stmt = null;
            if(count($estudios) > 0 && empty($error)){
                $return['html'] = generaHistorico($estudios);
            } else {
                if (!empty($error))
                    $return['error'] = $error;
                else{
                    $return['html'] = '<div class="msgBox d-flex flex-row justify-content-center align-items-center mt-5">
                        <img src="img/triangulos.svg" class="imgBoxIzq" />
                        <img src="img/triangulos.svg" class="imgBoxDer" />
                        <hr class="hrArriba">
                        <hr class="hrAbajo">
                        <div class="d-flex flex-column justify-content-center align-items-center display-5 text-center p-4">
                            <div>Aún no tienes<span class="text-azul1 mx-1">ningún</span>registro en el historial</div>
                        </div>
                    </div>';
                }
            }
            break;
        case 2: //Add
            $_POST['tipo_estudio'] = filter_var($_POST['tipo_estudio'], FILTER_SANITIZE_NUMBER_INT);
            $_POST['estudio'] = filter_var($_POST['estudio'], FILTER_SANITIZE_STRING);
            $_POST['institucion'] = filter_var($_POST['institucion'], FILTER_SANITIZE_STRING);
            $_POST['estatus'] = filter_var($_POST['estatus'], FILTER_SANITIZE_STRING);
            if($_POST['fecha_ini'] == '')
                $_POST['fecha_ini'] = null;
            else{
                $temp = explode('/',$_POST['fecha_ini']);
                $_POST['fecha_ini'] = $temp[1] . '-' . $temp[0] . '-01';
            }
            if($_POST['fecha_fin'] == '')
                $_POST['fecha_fin'] = null;
            else{
                $temp = explode('/',$_POST['fecha_fin']);
                $_POST['fecha_fin'] = $temp[1] . '-' . $temp[0] . '-01';
            }
            $_POST['cedula'] == '' ?  $_POST['cedula'] = null : $_POST['cedula'] = filter_var($_POST['cedula'], FILTER_SANITIZE_STRING);
            $stmt = $pdo->prepare('SELECT * FROM alu_fi_estudioadicional(:Usuario_id, :Estudio_nombre, :TipoEstudio_id, :Estudio_fechaInicio, :Estudio_estado, :Estudio_institucion, :Estudio_fechaFin, :Estudio_cedula)');
            $stmt->bindParam(':Estudio_nombre', $_POST['estudio']);
            $stmt->bindParam(':TipoEstudio_id', $_POST['tipo_estudio']);
            $stmt->bindParam(':Estudio_fechaInicio', $_POST['fecha_ini']);
            $stmt->bindParam(':Estudio_estado', $_POST['estatus']);
            $stmt->bindParam(':Estudio_institucion', $_POST['institucion']);
            $stmt->bindParam(':Estudio_fechaFin', $_POST['fecha_fin']);
            $stmt->bindParam(':Estudio_cedula', $_POST['cedula']);
            $stmt->bindParam(':Usuario_id', $_SESSION['usuario_id']);
            if(!$stmt->execute()){
                print_r($stmt->errorInfo());
                $return['error'] = 'No fue posible agregar <span class="text-azul1">' . $_POST['estudio'] . '</span> al historial';
            }
            else
                $return['ok'] = 'Se agregó correctamente <span class="text-azul1">' . $_POST['estudio'] . '</span> al historial';
            $stmt->closeCursor();
            $stmt = null;
            break;
        case 3: //Update
            $_POST['tipo_estudio'] = filter_var($_POST['tipo_estudio'], FILTER_SANITIZE_NUMBER_INT);
            $_POST['estudio'] = filter_var($_POST['estudio'], FILTER_SANITIZE_STRING);
            $_POST['institucion'] = filter_var($_POST['institucion'], FILTER_SANITIZE_STRING);
            $_POST['estatus'] = filter_var($_POST['estatus'], FILTER_SANITIZE_STRING);
            if($_POST['fecha_ini'] == '')
                $_POST['fecha_ini'] = null;
            else{
                $temp = explode('/',$_POST['fecha_ini']);
                $_POST['fecha_ini'] = $temp[1] . '-' . $temp[0] . '-01';
            }
            if($_POST['fecha_fin'] == '')
                $_POST['fecha_fin'] = null;
            else{
                $temp = explode('/',$_POST['fecha_fin']);
                $_POST['fecha_fin'] = $temp[1] . '-' . $temp[0] . '-01';
            }
            $_POST['cedula'] == '' ?  $_POST['cedula'] = null : $_POST['cedula'] = filter_var($_POST['cedula'], FILTER_SANITIZE_STRING);
            $stmt = $pdo->prepare('SELECT * FROM alu_fu_estudioadicional(:Usuario_id, :Estudio_id, :Estudio_nombre, :TipoEstudio_id, :Estudio_fechaInicio, :Estudio_fechaFin, :Estudio_estado, :Estudio_institucion, :Estudio_cedula)');
            $stmt->bindParam(':Estudio_nombre', $_POST['estudio']);
            $stmt->bindParam(':TipoEstudio_id', $_POST['tipo_estudio']);
            $stmt->bindParam(':Estudio_fechaInicio', $_POST['fecha_ini']);
            $stmt->bindParam(':Estudio_estado', $_POST['estatus']);
            $stmt->bindParam(':Estudio_institucion', $_POST['institucion']);
            $stmt->bindParam(':Estudio_fechaFin', $_POST['fecha_fin']);
            $stmt->bindParam(':Estudio_cedula', $_POST['cedula']);
            $stmt->bindParam(':Estudio_id', $_POST['id']);
            $stmt->bindParam(':Usuario_id', $_SESSION['usuario_id']);
            if(!$stmt->execute()){
                print_r($stmt->errorInfo());
                $return['error'] = 'No fue posible editar <span class="text-azul1">' . $_POST['estudio'] . '</span> del historial';
            }
            else
                $return['ok'] = 'Se editó correctamente <span class="text-azul1">' . $_POST['estudio'] . '</span> del historial';
            $stmt->closeCursor();
            $stmt = null;
            break;
        case 4: //Delete
            $stmt = $pdo->prepare('SELECT * FROM alu_fd_estudioadicional(:Estudio_id, :Usuario_id)');
            $stmt->bindParam(':Estudio_id', $_POST['id']);
            $stmt->bindParam(':Usuario_id', $_SESSION['usuario_id']);
            if(!$stmt->execute()){
                print_r($stmt->errorInfo());
                $return['error'] = 'No fue posible eliminar el idioma';
            }
            else
                $return['ok'] = 'Se eliminó de manera exitosa el idioma';
            $stmt->closeCursor();
            $stmt = null;
            break;
        case 5: //Select One
            $estudio = array();
            $stmt = $pdo->prepare('SELECT * FROM alu_fs_estudioadicional(:Usuario_id, :Estudio_id)');
            $stmt->bindParam(':Usuario_id', $_SESSION['usuario_id']);
            $stmt->bindParam(':Estudio_id', $_POST['id']);
            if(!$stmt->execute()){
                $return['error'] = 'No fue posible obtener los datos del registro';
                print_r($stmt->errorInfo());

            } else {
                $estudio = $stmt->fetch();
                $return['tipo_estudio'] = $estudio['TipoEstudio_id'];
                $return['estudio'] = $estudio['EstudioAdicional_nombre'];
                $temp = explode('-', $estudio['EstudioAdicional_fechaInicio']);
                $return['fecha_inicio'] = $temp[1] . '/' . $temp[0];
                if (is_null($estudio['EstudioAdicional_fechaFin']))
                     $return['fecha_fin'] = '';
                else {
                    $temp = explode('-', $estudio['EstudioAdicional_fechaFin']);
                    $return['fecha_fin'] = $temp[1] . '/' . $temp[0];
                }
                $return['estatus'] = $estudio['EstudioAdicional_estado'];
                $return['institucion'] = $estudio['EstudioAdicional_institucion'];
                is_null($estudio['EstudioAdicional_cedula']) ? $return['cedula'] = '' : $return['cedula'] = $estudio['EstudioAdicional_cedula'];
            }
            $stmt->closeCursor();
            $stmt = null;
            break;
    }
}
$return['json'] = json_encode($return);
echo json_encode($return);

function generaHistorico($estudios){
    $html = '';
    $texto = '';
    $desc_tipo = '';
    foreach ($estudios as $estudio){
        switch($estudio["TipoEstudio_id"]){
            case '1': $desc_tipo="Certificación"; break;
            case '2': $desc_tipo="Curso";			break;
            case '3': $desc_tipo="Licenciatura";	break;
            case '4': $desc_tipo="Especialidad";  break;
            case '5': $desc_tipo="Maestría";		break;
            case '6': $desc_tipo="Doctorado";		break;
            case '7': $desc_tipo="Postdoctorado"; break;
        }
        $html .= '<div class="timeline-item">
                                <div class="bullet position-absolute"><div class="figura"></div></div>
                                <div class="d-flex justify-content-start align-items-center mb-2">
                                    <div class="fecha d-flex justify-content-center align-items-center indivisa-text-italic">' . Fechas::fechaRango($estudio['EstudioAdicional_fechaInicio'], $estudio['EstudioAdicional_fechaFin'],'-') . '</div>
                                    <div class="elementos d-flex justify-content-center align-items-center">
                                        <span class="ing-editar iconAcciones text-azul2" data-id="' . $estudio['EstudioAdicional_id'] . '"></span>
                                        <span class="ing-basura iconAcciones text-danger" data-id="' . $estudio['EstudioAdicional_id'] . '"></span>
                                    </div>
                                </div>
                                <div class="display-6"><span class="text-azul2">' . $desc_tipo . ':</span><span class="ml-1 indivisa-text-bold-italic text-primary">' . $estudio["EstudioAdicional_nombre"] . '</span></div>
                                <div>' . $estudio["EstudioAdicional_institucion"] . '</div>                                
                            </div>';
    }
    return $html;
}