<?php
    session_start();
    $usuarioSession = $_SESSION['USUARIO'];
    $grupo = $_SESSION['GRUPO'];
    $contacto = $_SESSION['CONTACTO'];
    $awa_session_id = $_SESSION['AWA_SESION_ID'];
    include('../lg/config_vo.php');
    include('../includes/conex.php');
    include('../includes/eat.php');
    include('../includes/historial.php');
    include('../includes/functions.php');
    include('../includes/esquemas.php');
    include('../class/Schema.php');
    include('../class/MotherCar.php');
    include('../class/Static.php');
    include('../class/Agenda.php');
    include('../class/Rgpd.php');
    include('../class/Bibliotecas.php');
    include('../class/Expediente.php');
    include_once("../assets/excel/PHPExcel/IOFactory.php");

    if(!isset($usuarioSession) OR $awa_session_id != $awa_id) {
        eatCookies();
        header('Location:../index.php');
    }
    if(isset($_COOKIE['usuario']) AND $_COOKIE['usuario'] != $staticUsu ) {
        eatCookies();
        header('Loction:../index.php');
    }
    if (isset($_COOKIE['idioma'])) {
        include('../lg/LG_' . $_COOKIE['idioma'] . '.php');
    } else {
        include('../lg/LG_SP.php');
    }
    $Schema = new Schema($con);
    $MotherCar = new MotherCar($con);
    $Expediente = new Expediente($con);
    $Bibliotecas = new Bibliotecas($con);
    $Schema->set_resize_img(TRUE);

    
    $EXP0 = 'EXP000000000000000';
    $codigo_exp_tipo = $Schema->select_expediente_tipos_valores('VEHICULO_STOCK');
    $descripcion_exp_tipo = $Schema->select_expediente_tipos_valores('VEHICULO_STOCK', 'DESCRIPCION');
    $codigo_esq_estr = $Schema->select_esquema_estructura_valores('VEHICULO', -1);
    $str_replace = substr_replace($EXP0,$codigo_exp_tipo,-strlen($codigo_exp_tipo));

    
    echo "Codigo expediente tipo: $codigo_exp_tipo<br> Descripcion tipo: $descripcion_exp_tipo<br> Codigo esquemas esctructuras $codigo_esq_estr<br>";

    $res = $Schema->executeQuery('SELECT CODIGO, MARCA, MODELO, MOSTRAR, IDCAR, MATRICULA, BASTIDOR FROM VEHICULOS WHERE IMPORTACION_EXCEL = ?', 'i', [1]);
    if($res->num_rows) {
        while($row = $res->fetch_array()) {

                $codigo_vehiculo = $row['CODIGO'];
                $mostrar = $row['MOSTRAR'];
                $contadores = $Expediente->check_contador_expediente($codigo_vehiculo) ? $Expediente->check_contador_expediente($codigo_vehiculo) : Statics::get_contadores($con,$str_replace);

                //Crear expediente
                if($Expediente->check_expediente($codigo_esq_estr, $contadores)) {
                    $exp_status = 0;
                    $claveXT = "XT$codigo_exp_tipo";
                    $nombreXT = $descripcion_exp_tipo; 
                    $padreXT = "##EXPEDIENTES##";
                    $iconoXT = "expediente";
                    $ubicacionXT = "##PUBLICO##/##EXPEDIENTES##/";
                    $ano = date('Y');
                    $fechahoy = date('d/m/Y');

                    $claveXA = "XA$codigo_exp_tipo".".$ano";
                    $nombreXA = $descripcion_exp_tipo; 
                    $padreXA = "##EXPEDIENTES##";
                    $iconoXA = "fecha";
                    $ubicacionXA = "##PUBLICO##/##EXPEDIENTES##/" . $claveXT . "/";


                    $Expediente->insert_biblioteca_expedientes_valores($contadores,1,$codigo_exp_tipo,0,$contadores);
                    $Expediente->insert_biblioteca_expedientes_valores($contadores,2,$codigo_exp_tipo,1,$fechahoy,0,"NOW()");
                    $Expediente->insert_biblioteca_expedientes_valores($contadores,3,$codigo_exp_tipo,2,$descripcion_exp_tipo,false,false,$codigo_exp_tipo);
                    $Expediente->insert_biblioteca_expedientes_valores($contadores,$codigo_esq_estr,$codigo_exp_tipo,3,$mostrar,false,false,$codigo_vehiculo);

                    if ($Expediente->check_expediente_carpeta($claveXT) == 0) {
                        $Expediente->crear_carpeta_expediente($claveXT, $nombreXT, $padreXT, $usuarioSession, $iconoXT, $ubicacionXT);
                    } 
                    if ($Expediente->check_expediente_carpeta($claveXA) == 0) {
                        $acceso = $Expediente->select_acceso_biblioteca_elementos($claveXT);
                        $Expediente->crear_carpeta_expediente($claveXA, $ano, $claveXT, $usuarioSession, $iconoXA, $ubicacionXA, $acceso);
                    } else {
                        $acceso = $Expediente->select_acceso_biblioteca_elementos($claveXA);
                    }

                    $claveEXP = get_id_unico();
                    $padre = $claveXA;
                    $ubicacion = $ubicacionXA . "$claveXA/";
                    $Expediente->crear_carpeta_expediente($claveEXP,$mostrar,$padre,$usuarioSession,$iconoXT,$ubicacion,$acceso,$contadores);
                    $Expediente->insert_biblioteca_etiquetas_expediente(get_id_unico(),$claveEXP,$contadores,1,-1);
                    //echo "1<br>";

                } else {
                    //echo "2<br>";
                    $exp_status = 1;
                    $claveEXP = $Expediente->select_clave_padre_acceso_ubicacion_expediente($codigo_vehiculo);
                    $acceso = $Expediente->select_clave_padre_acceso_ubicacion_expediente($codigo_vehiculo, 'ACCESO');
                    $ubicacion = $Expediente->select_clave_padre_acceso_ubicacion_expediente($codigo_vehiculo, 'UBICACION'); 
                }
                /* print('<pre>' . print_r([$exp_status, $row['CODIGO'], $row['MOSTRAR'], $contadores], true) . '</pre>'); */


                //Insertar imagenes

                $sql_pos = 'SELECT MAX(E.POS) AS MAX_POS
                FROM BIBLIOTECA_ELEMENTOS E 
                INNER JOIN BIBLIOTECA_ETIQUETAS T ON T.CLAVE = E.CLAVE
                WHERE T.ETIQUETA = ? AND E.PAPELERA = ?';
                $res_pos = $Schema->executeQuery($sql_pos, 'ii', [$codigo_vehiculo, 0]);
                $row_pos = $res_pos->fetch_array();
                $start_here_posicion = $row_pos['MAX_POS'];
                $directorio = "../tmp_img/toUpload/";
                $folders  = scandir($directorio);
                $i = 0;
                foreach($folders as $key => $value) {//Buscar las imagenes en las carpetas
                    if($value == $row['BASTIDOR'] || $value == $row['MATRICULA']) {
                        /* echo "$key => $value <br>"; */
                        $img = scandir("../tmp_img/toUpload/" . $value . "/");
                        foreach($img as $key2 => $value2) {
                            if($value2 != '.' && $value2 != '..') {
                                $location = $Schema->set_ubicacion_archivos("../tmp_img/toUpload/" . $value . "/")->get_ubicacion_archivos();
                                $clave = $Schema->set_clave_elemento(get_id_unico())->get_clave_elemento();
                                $size = filesize("../tmp_img/toUpload/" . $value . "/" . $value2);
                                $part = pathinfo("../tmp_img/toUpload/" . $value . "/" . $value2);
                                $extension = $part['extension'];
                                $posicion = $i + $start_here_posicion;
                                $name = Statics::rename($extension, $posicion, $con, $row['IDCAR']);
                                $Schema->upload_doc("../tmp_img/toUpload/" . $value . "/" . $value2, $name, $size, $claveEXP, $acceso, $ubicacion, $usuarioSession, $codigo_vehiculo, $posicion);
                                /* echo "$location - $name - $extension - $size - $clave - $posicion - $value2 <br>"; */
                                $codigo_biblioteca_etiquetas = get_id_unico();
                                $Schema->asignar_etiquetas_nuevo_expediente($codigo_biblioteca_etiquetas, $codigo_vehiculo, $mostrar, TRUE, TRUE);
                                $i++;
                            }
                        }
                    }
                }

            $MotherCar->set_codigo_vehiculo_tabla_vehiculos($row['CODIGO']);
            $MotherCar->set_importacion_excel(0);
            $MotherCar->update_vehiculo();
            echo "<br><br>";
        }
    }

?>