<?php

include 'conexion.php';
$num_inv=$_GET['num_inv'];
$start=$_GET['start'];

$limit = 50;
$order = "Lo deje por si algo";

$ids = array('BG0009', 'BG0004', 'BG0006');

// create sql part for IN condition by imploding comma after each id
$in = '(' . implode(',', $ids) .')';

// create sql
//$sql = 'SELECT * FROM products WHERE catid IN ' . $in;
 
if(strlen($num_inv) > 0){
$num_inv = "WHERE
    id_activo LIKE '%".$num_inv."%' OR activos.descripcion LIKE '%".$num_inv."%' OR id_activo IN (
    SELECT
        campo_activo.fk_id_activo
    FROM
        campo_activo
    WHERE
        campo_activo.descripcion LIKE '%".$num_inv."%')";
}

/*
if(!strlen($order) > 0){
    $order = "id_activo";
}else{
    $order = $order." DESC";
    $limit = 10;
}
*/

$consulta = "SELECT DISTINCT
 `id_activo` AS INVENTORY,
 funci_responsable.nom_func_respon AS OFFICER,
 categorias.nombre AS CATEGORY,
 activos.descripcion AS DESCRIPTION_ORI,
 activos.fk_id_categoria,
 activos.`fk_id_func_respon`,
 activos.`fk_id_sede`,
 activos.`fk_id_ubicacion`,
 activos.fk_id_compra,
 activos.estado AS STATE,
 activos.fecha_compra AS PURCHASE_DATE,
 activos.valor AS VALUE,
 sede.nombre AS CAMPUS,
 compra.nombre AS BUY,
 ubicacion.nombre AS LOCATION,

 CONCAT(
     CASE WHEN LENGTH(activos.descripcion) < 1 THEN '' ELSE CONCAT(activos.descripcion, '\n\n')
 END,
 (
 SELECT
     GROUP_CONCAT(
         CONCAT(
             `campos`.`nombre`,
             ': ',
             IFNULL(
                 (
                 SELECT DISTINCT
                     `campo_activo`.`descripcion`
                 FROM
                     campo_activo
                 WHERE
                     campo_activo.fk_id_campo = campos.id_campo AND campo_activo.fk_id_activo = INVENTORY
             ),
             ''
             )
         ) SEPARATOR '\n'
     )
 FROM
     categorias
 RIGHT JOIN campos ON campos.fk_id_categoria = categorias.id_categoria
 WHERE
     categorias.id_categoria = activos.fk_id_categoria
 )
 ) AS DESCRIPTION,
 (SELECT COUNT(activos.id_activo) FROM activos $num_inv) AS SIZE_
 FROM `activos`
 LEFT JOIN `sede` ON `activos`.`fk_id_sede` = `sede`.`id_sede`
 LEFT JOIN `ubicacion` ON `activos`.`fk_id_ubicacion` = `ubicacion`.`id_ubicacion`
 LEFT JOIN compra ON `activos`.`fk_id_compra` = compra.id_compra
 LEFT JOIN funci_responsable ON `activos`.`fk_id_func_respon` = `funci_responsable`.`id_func_respon`
 LEFT JOIN categorias ON `activos`.`fk_id_categoria` = categorias.id_categoria $num_inv 
 ORDER BY registration_date DESC LIMIT $start, 50";

//echo $consulta;

$resultado = $conexion->query($consulta);
while($fila = $resultado -> fetch_array()){
    $activos[] = array_map('utf8_encode', $fila);
}

echo json_encode($activos, JSON_UNESCAPED_UNICODE);
$resultado -> close();

/*
 $num_inv = " WHERE
        id_activo LIKE '%".$num_inv."%' OR activos.descripcion LIKE '%".$num_inv."%' OR id_activo =(
        SELECT
            campo_activo.fk_id_activo
        FROM
            campo_activo
        WHERE
            campo_activo.descripcion LIKE '%".$num_inv."%'
    ) OR id_activo IN(
        SELECT
            activos.id_activo
        FROM
            activos
        INNER JOIN funci_responsable ON activos.fk_id_func_respon = funci_responsable.id_func_respon
        WHERE
            nom_func_respon LIKE '%".$num_inv."%'
    ) OR id_activo IN(
        SELECT
            activos.id_activo
        FROM
            activos
        INNER JOIN ubicacion ON activos.fk_id_ubicacion = ubicacion.id_ubicacion
        WHERE
            nombre LIKE '%".$num_inv."%'
    ) ";
*/

/*
if(strlen($num_inv) > 0){
$num_inv = "WHERE
    id_activo LIKE '%".$num_inv."%' OR activos.descripcion LIKE '%".$num_inv."%' OR id_activo =(
    SELECT
        campo_activo.fk_id_activo
    FROM
        campo_activo
    WHERE
        campo_activo.descripcion LIKE '%".$num_inv."%')";
}
*/

?>