<?php

include "../cabeceras.php";
include "../../lib/sql.php";

/*
 *  Parametros:
 *      - [nota] {Entero} indica la nota a la que pertenecen
 *
 *  Ejemplo:
 *      /api/v1/comentarios/?nota=559
 */

if ( valid_params_or_die() ) {

    $data = getComentarios($_GET["nota"]);

    die(json_encode($data));
}



/*
 * Region de funciones
 */

function valid_params_or_die() {
    $errores = [];

    $nota=$_GET["nota"];
    if(strlen($nota)>10){ array_push($errores,'{"id":"0","parametro":"nota","mensaje":"Error en longitud del parametro"}'); }
    if(!is_numeric($nota)){ array_push($errores,'{"id":"1","parametro":"nota","mensaje":"Error en el tipo de parametro"}'); }
    if(!((int) $nota == $nota)){ array_push($errores,'{"id":"2","parametro":"nota","mensaje":"Error en el tipo de parametro debe ser entero"}') ;}
    if($nota<1){ array_push($errores,'{"id":"3","parametro":"nota","mensaje":"Error en el rango de parametro"}') ;}

    if ($errores) {
        if ($_SERVER['REQUEST_METHOD'] == 'GET') {
            header("HTTP/1.0 405 Method Not Allowed");
        }
        die('{ "errores": [ '. join(',', $errores) .' ] }');
    }
    return true;
}

function getComentarios($nota) {
    $CATIDAD = 100;

    $columnas = format_columns([
        'comentarios.ID'=>'id',
        'comentarios.nombre'=>'nombre',
        'comentarios.texto'=>'texto',
    ]);
    return query("SELECT $columnas FROM comentarios
        WHERE ver='si' AND comentarios.IDD = $nota
        ORDER BY comentarios.ID DESC 
        LIMIT $CATIDAD OFFSET 0");
}