<?php
require_once('../../../includes/load.php');
// Define la ruta base de tu proyecto en la raíz del servidor
define('RUTA_BASE', $_SERVER['DOCUMENT_ROOT'] . '/transporte/');

if ($_SERVER['REQUEST_METHOD'] == 'POST') {
    $usuario = remove_junk($db->escape($_POST['usuario']));
	$placa = remove_junk($db->escape($_POST['placa']));
    $motivo = remove_junk($db->escape($_POST['motivo']));
    $fecha = remove_junk($db->escape($_POST['fecha']));
    $area = remove_junk($db->escape($_POST['area']));
    $ubicacionI = remove_junk($db->escape($_POST['ubicacionI']));
    $ubicacionL = remove_junk($db->escape($_POST['ubicacionL']));
    $km_promedio = remove_junk($db->escape($_POST['km_promedio']));
    $km_promedio = round($km_promedio);
    $kiloI = remove_junk($db->escape($_POST['kiloI']));
    $kiloF = remove_junk($db->escape($_POST['kiloF']));
    $vale = remove_junk($db->escape($_POST['vale']));
    $galon = remove_junk($db->escape($_POST['galon']));
    $galonP = remove_junk($db->escape($_POST['galonP']));
    $detalle = remove_junk($db->escape($_POST['detalle']));
    $registro=date("Y-m-d H:i:s");
    $fechaEntera = strtotime($registro);
    $anio = date("Y", $fechaEntera);
    $mes = date("m", $fechaEntera);


    $fkinicial = $_FILES['fkinicial']['name'];
    $fkfinal = $_FILES['fkfinal']['name'];

    $FotoInicial = null;
    $FotoFinal = null;

    // Directorio base para guardar las imágenes
    $dirBase = RUTA_BASE;

    // Permitir todas las extensiones de imagen
    $allowedExtensions = ['jpg', 'jpeg', 'png', 'gif'];

    if ($fkinicial != '' || $fkinicial != null) {
        $file_type = $_FILES['fkinicial']['type'];
        list($type, $extension) = explode('/', $file_type);
        $extension = strtolower($extension);

        if (in_array($extension, $allowedExtensions)) {
            $dir = $dirBase . 'FotoInicial/';
            if (!file_exists($dir)) {
                mkdir($dir, 0777, true);
            }
            $file_tmp_name = $_FILES['fkinicial']['tmp_name'];
            $FotoIniG = $dir . file_name($placa) .'-'.file_name($kiloI) . '.' . $extension;

            // Redimensionar la imagen
            $maxWidth = 800; // Ancho máximo deseado
            $maxHeight = 600; // Altura máxima deseada

            list($width, $height) = getimagesize($file_tmp_name);

            $aspectRatio = $width / $height;

            if ($width > $maxWidth || $height > $maxHeight) {
                if ($aspectRatio > 1) {
                    $newWidth = $maxWidth;
                    $newHeight = $maxWidth / $aspectRatio;
                } else {
                    $newHeight = $maxHeight;
                    $newWidth = $maxHeight * $aspectRatio;
                }

                $newImage = imagecreatetruecolor($newWidth, $newHeight);
                $source = imagecreatefromjpeg($file_tmp_name);

                imagecopyresampled($newImage, $source, 0, 0, 0, 0, $newWidth, $newHeight, $width, $height);

                imagejpeg($newImage, $FotoIniG, 80); // 80 es la calidad de compresión, puedes ajustarla

                imagedestroy($newImage);
                imagedestroy($source);
            } else {
                move_uploaded_file($file_tmp_name, $FotoIniG);
            }

            $FotoInicial = 'FotoInicial/' . file_name($placa) .'-'. file_name($kiloI) . '.' . $extension;
        } else {
            echo "No Imagen";
        }
    }

    if ($fkfinal != '' || $fkfinal != null) {
        $file_type = $_FILES['fkfinal']['type'];
        list($type, $extension) = explode('/', $file_type);
        $extension = strtolower($extension);

        if (in_array($extension, $allowedExtensions)) {
            $dir = $dirBase . 'FotoFinal/';
            if (!file_exists($dir)) {
                mkdir($dir, 0777, true);
            }
            $file_tmp_name = $_FILES['fkfinal']['tmp_name'];
            $FotoFiG = $dir . file_name($placa) .'-'. file_name($kiloF).'.' . $extension;

            // Redimensionar la imagen
            $maxWidth = 800; // Ancho máximo deseado
            $maxHeight = 600; // Altura máxima deseada

            list($width, $height) = getimagesize($file_tmp_name);

            $aspectRatio = $width / $height;

            if ($width > $maxWidth || $height > $maxHeight) {
                if ($aspectRatio > 1) {
                    $newWidth = $maxWidth;
                    $newHeight = $maxWidth / $aspectRatio;
                } else {
                    $newHeight = $maxHeight;
                    $newWidth = $maxHeight * $aspectRatio;
                }

                $newImage = imagecreatetruecolor($newWidth, $newHeight);
                $source = imagecreatefromjpeg($file_tmp_name);

                imagecopyresampled($newImage, $source, 0, 0, 0, 0, $newWidth, $newHeight, $width, $height);

                imagejpeg($newImage, $FotoFiG, 80); // 80 es la calidad de compresión, puedes ajustarla

                imagedestroy($newImage);
                imagedestroy($source);
            } else {
                move_uploaded_file($file_tmp_name, $FotoFiG);
            }

            $FotoFinal = 'FotoFinal/' . file_name($placa) .'-'. file_name($kiloF) . '.' . $extension;
        } else {
            echo "No Imagen";
        }
    }

    $query = "INSERT INTO det_veh (MOTIVO_TRASLADO, ID_VEHICULO, UBI_INICIO, UBI_LLEGADA, FECH_REG, KM_INICIAL, KM_FINAL, NUM_VALE, GALONES, ID_USER, anio, mes, created_at, AREA, DETALLE_CARGA, fkinicial, fkfinal, GALONESP,KM_PROMEDIO) VALUES ('$motivo','$placa','$ubicacionI','$ubicacionL','$fecha','$kiloI','$kiloF','$vale','$galon','$usuario','$anio','$mes','$registro','$area','$detalle','$FotoInicial','$FotoFinal','$galonP','$km_promedio')";

    if ($db->query($query)) {
        echo 'success';
    } else {
        echo 'fail';
    }
}
?>
