<?php

/************** Includes **********************************/
require_once '../../config.php';
require_once DIRLIBCOMP . 'SPDO.php';
$conexion = new SPDO(BDENGINE, BDHOST, BDDATABASE, BDUSER, BDPASS);

$_POST['localizador'] = strtoupper(trim($_POST['localizador']));

// Compruebo si el servicio del localizador es un BONO GENÉRICO,
// en cuyo caso compruebo el número de reservas hechas para el servicio
// seleccionado
$sql_servicio_localizador = "SELECT l.servicio_id, s.servicio_generico
							 FROM localizadores l JOIN servicios s ON l.servicio_id = s.id
							 AND l.localizador = '" . $_POST['localizador'] . "'";

$result_servicio_localizador = $conexion->query($sql_servicio_localizador);

if ($result_servicio_localizador->rowCount() > 0) {
    $row_servicio_localizador = $result_servicio_localizador->fetch();

    // BONO GENÉRICO
    if ($row_servicio_localizador['servicio_generico'] == 1) {
        // Compruebo número de usos que se pueden hacer del servicio
        // seleccionado en el bono y compruebo las reservas ya hechas
        // para el servicio
        $sql_usos_servicio = "SELECT usos
							  FROM servicios_bonos
							  WHERE servicio_padre_id = " . $row_servicio_localizador['servicio_id'] . "
							  AND servicio_id = " . $_POST['servicio'];

        $result_usos_servicio = $conexion->query($sql_usos_servicio);

        $row_usos = $result_usos_servicio->fetch();
        $usos     = $row_usos['usos'];

        // Si el número de usos del servicio es 0, es que puede hacer
        // un ńúmero ilimitado de reservas con el bono para el servicio
        if ($usos == 0) {
            echo 1;
        } else {
            // Compruebo número de reservas hechas para ese servicio
            // con el localizador del bono
            $sql_numero_reservas = "SELECT SUM(r.unidades) as UsosRealizados
									FROM reservas r JOIN sala_horarios sh ON r.sala_horario_id = sh.id
									JOIN sala_horario_servicios ss ON sh.id = ss.sala_horario_id
									AND r.localizador = '" . $_POST['localizador'] . "'
									AND ss.servicio_id = " . $_POST['servicio'];

            $result_numero_reservas = $conexion->query($sql_numero_reservas);

            $row_numero_reservas = $result_numero_reservas->fetch();
            $numero_reservas     = $row_numero_reservas['UsosRealizados'];

            // Se han hecho menos usos de los posibles
            if ($numero_reservas < $usos || $numero_reservas == null) {
                if ($_POST['usuarios'] > $usos) {
                    echo 2;
                } else {
                    echo 1;
                }
            }
            // Se han hecho todos los usos posibles
            else {
                echo 2;
            }
        }
    }
    // RESTO DE SERVICIOS
    else {
        echo 0;
    }
}