<?php
$data = array();
$consulta = " SELECT
  Doc.idDocumento,
  Doc.titulo,
  Doc.descripcion,
  Doc.activo,
  Doc.eliminado,
  Doc.documento,
  Doc.idModulo,
  Doc.idUsuario,
  Lin.idLink,
  Lin.idDocumento as 'idDocumento_foraneo',
  Lin.texto,
  Lin.color,
  Lin.enlace
FROM documento Doc
LEFT JOIN link Lin
ON Doc.idDocumento = Lin.idDocumento
WHERE Doc.idModulo = $idModulo";



$resultado  = mysqli_query($conexion, $consulta);
if (!empty($resultado)) {

    //Creamos un array para trabajar
    while ($row = mysqli_fetch_array($resultado)) {
        $dataDocument = array(
            "idDocumento" => (int)$row['idDocumento'],
            "titulo" => $row['titulo'],
            "descripcion" => $row['descripcion'],
            "documento" => $row['documento'],
            "idLink" => $row['idLink'],
            "texto" => $row['texto'],
            "color" => $row['color'],
            "enlace" => $row['enlace']
        );
        array_push($data, $dataDocument);
    }

    if (empty($data)) {
        echo json_encode(array("code" => CODE_SUCCESS, "message" =>  $data));
    } else {
        $dataFinal = array();
        foreach ($data as $row) {
            if (!buscarId($dataFinal, $row['idDocumento'])) {
                $aux_data = array(
                    "idDocumento" => (int)$row['idDocumento'],
                    "titulo" => $row['titulo'],
                    "descripcion" => $row['descripcion'],
                    "documento" => $row['documento'],
                    "litaLinks" => buscarLink($data,(int)$row['idDocumento']),
                );
                array_push($dataFinal, $aux_data);
            }
        }
        echo json_encode(array("code" => CODE_SUCCESS, "message" =>  $dataFinal));
    }





    
} else {
    echo json_encode(array("code" => CODE_FAILED, "message" => 'Sin documentos'));
}



function buscarLink($Lista, $id)
{
    //Agregamos lista de links
    $lista_links = array();
    foreach ($Lista as $row) {
        if ($row['idDocumento'] != NULL) {
            if ((int)$row['idDocumento'] == $id) {
                if ((int)$row['idLink'] != NULL) {
                    $aux_link = array(
                        "idLink" => (int)$row['idLink'],
                        "texto" => $row['texto'],
                        "color" => $row['color'],
                        "enlace" => (int)$row['enlace'],
                    );
                    array_push($lista_links, $aux_link);
                    
                }
            }
        }
    }
    return $lista_links;
}


function buscarId($Lista, $id)
{
    //Agregamos lista de links
    $valorEncontrado = false;
    foreach ($Lista as $row) {
        if ($row['idDocumento'] != NULL) {
            if ((int)$row['idDocumento'] == $id) {
                $valorEncontrado = true;
            }
        }
    }
    return $valorEncontrado;
}