<?php
session_start();
require_once('../conexion.php');
require_once('../include/sesiones.php');
$fecha=date('Y-m-d H:i:s');

$com_id=limpiar($_POST['com_id']);
$saldo=limpiar($_POST['saldo']);
$caja_descontar=$_POST['caja_descontar'];
$medio_pago=$_POST['medio_pago'];
$com_facturaproveedor=$_POST['com_facturaproveedor'];


if ($caja_descontar=='caja mayor') 
{
    $valor=limpiar($_POST['valor']);
    $can=mysqli_query($con,"SELECT MAX(coab_id )as coab_id FROM compra_abonos ") or die(mysqli_error($con)); 
    $dato=mysqli_fetch_array($can);
    $coab_id=$dato['coab_id']+1;

    $abon=mysqli_query($con,"INSERT into compra_abonos (coab_id,coab_abono,coab_fecha,forma_pago,medio_pago,usuario,empresa,compras_com_id)
                    VALUES ('$coab_id','$valor','$fecha','Contado','$medio_pago','$usu_id','$empresa','$com_id')") or die(mysqli_error($con));

    if($saldo==$valor)
    {
        $sql=mysqli_query($con,"UPDATE compras Set com_estado ='Pagado' Where com_id='$com_id'") or  die(mysqli_error($con));
    } 
}
else
{
    $total_pago = 0; // Acumulador
    $number = count($_POST["medio_pago"]);  
    if ($number > 0) 
    {
        for ($i = 0; $i < $number; $i++) 
        {
            $medio_pago_m = trim($_POST["medio_pago"][$i]);
            $valor_pago = trim($_POST["valor_pago"][$i]);
            if ($medio_pago_m !== '' && is_numeric($valor_pago)) 
            {
                $can=mysqli_query($con,"SELECT MAX(coab_id )as coab_id FROM compra_abonos ") or die(mysqli_error($con)); 
                $dato=mysqli_fetch_array($can);
                $coab_id=$dato['coab_id']+1;

                $can=mysqli_query($con,"SELECT MAX(mov_id)as mov_id FROM movimientos") or die(mysqli_error($con)); 
                $dato=mysqli_fetch_array($can);
                $mov_id=$dato['mov_id']+1;

                $can=mysqli_query($con,"SELECT MAX(mov_numero)as mov_numero FROM movimientos where empresa='$empresa'") or die(mysqli_error($con)); 
                $dato=mysqli_fetch_array($can);
                $mov_numero=$dato['mov_numero']+1;

                $query = "INSERT INTO compra_abonos 
                    (coab_id,coab_abono, coab_fecha, forma_pago, medio_pago, mov_id, usuario, empresa, compras_com_id) 
                    VALUES ('$coab_id','$valor_pago', '$fecha', 'Contado', '$medio_pago_m','$mov_id', '$usu_id', '$empresa', '$com_id')";

                if($medio_pago_m=='Efectivo')
                {
                    $metodo='efectivo';
                }
                else
                {
                    $metodo='transferencia';
                }

                $registros=mysqli_query($con,"INSERT into movimientos (mov_id,mov_caja,mov_apertura, mov_numero,mov_fecha,mov_usuario,mov_tipo_movimiento,mov_detalle,mov_total,estado,forma_pago,medio_pago,sucursal,empresa) 
                VALUES  ('$mov_id','$cajas_caja_id','$apertura','$mov_numero','$fecha','$usu_id','Abono cxp','Pago de la Compra $com_facturaproveedor','$valor_pago','salida','$metodo','$medio_pago_m','$sucursal','$empresa')") or die(mysqli_error($con)); 

                if (!mysqli_query($con, $query)) {
                    echo "Error al insertar el abono $i: " . mysqli_error($con);
                }
            }

            if (is_numeric($valor_pago)) 
            {
             $total_pago += floatval($valor_pago);
            }
        }
    }


    if($saldo==$total_pago)
    {
        $sql=mysqli_query($con,"UPDATE compras Set com_estado ='Pagado' Where com_id='$com_id'") or  die(mysqli_error($con));
    } 
    
}

// Definimos la carpeta destino
$Raiz = "../img/factura-abono/";

// Si hay algún archivo que subir
if (isset($_FILES["archivo"]) && ($_FILES["archivo"]["name"][0])) 
{
    // Si es un formato de imagen válido
    $nombresArchivos = $_FILES["archivo"]["name"];
    $tiposArchivos = $_FILES["archivo"]["type"];
    // Movemos y renombramos cada archivo individualmente
    foreach ($nombresArchivos as $index => $nombreArchivo) 
    {
        $origen = $_FILES["archivo"]["tmp_name"][$index];
        // Validamos el tipo de archivo utilizando exif_imagetype()
        if (exif_imagetype($origen)) 
        {
            // Si existe la carpeta o se ha creado
            if (file_exists($Raiz . $com_id) || mkdir($Raiz . $com_id, 0777, true)) 
            {
                // Generamos un nombre único para el archivo
                //$tipoArchivo = pathinfo($nombreArchivo, PATHINFO_EXTENSION);
                $nuevoNombre = $coab_id . '.jpg';
                $urlNueva = $Raiz . $com_id . DIRECTORY_SEPARATOR . $nuevoNombre;
                $destino = $urlNueva;
                // Movemos el archivo y lo renombramos
                if (move_uploaded_file($origen, $destino)) 
                {
              
                   
                } else {
                    echo'<div class="alert alert-warning alert-dismissable">
                        <button type="button" class="close" data-dismiss="alert" aria-hidden="true">&times;</button>
                        <strong>No se ha podido mover el archivo: "'. $nombreArchivo.'</strong> 
                        </div>';
                }
            } else {
                 echo'<div class="alert alert-warning alert-dismissable">
                        <button type="button" class="close" data-dismiss="alert" aria-hidden="true">&times;</button>
                        <strong>No se ha podido crear la carpeta: "' . $com_id.'</strong> 
                        </div>';
            }
        } else {
            echo'<div class="alert alert-warning alert-dismissable">
                    <button type="button" class="close" data-dismiss="alert" aria-hidden="true">&times;</button>
                    <strong>'. $nombreArchivo .'- NO es una imagen válida (jpg, png, gif)</strong> 
                    </div>';
        }
    }
    echo '<div class="alert alert-info alert-dismissable">
          <button type="button" class="close" data-dismiss="alert" aria-hidden="true">&times;</button>
        <strong>Imagenes guardadas correctamente</strong> 
       </div>';
}
 else 
{
    echo '<div class="alert alert-danger alert-dismissable">
      <button type="button" class="close" data-dismiss="alert" aria-hidden="true">&times;</button>
    <strong>No se ha subido ninguna imagen</strong> 
   </div>';
}

echo '<div class="alert alert-success alert-dismissable">
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">&times;</button>
<strong>Abono!</strong> Registrado correctamente.
</div>';

  
?>