<?php

use App\Models\RespuestasModel;
use App\Models\RespuestasHistorialModel;


if (!function_exists('get_respuesta')) {

    /**
     * Obtener una respuesta según su ID.
     *
     * @param int $id
     * @return array|null
     */
    function get_respuesta($id)
    {
        try {
            $model = new RespuestasModel();
            $resp = $model->find($id);

            return $resp ?: null;

        } catch (\Throwable $e) {
            log_message('error', 'Error en get_respuesta: ' . $e->getMessage());
            return null;
        }
    }
}

if (!function_exists('get_respuesta_historial')) {

    /**
     * Obtener una respuesta según su ID.
     *
     * @param int $id
     * @return array|null
     */
    function get_respuesta_historial($id)
    {
        try {
            $model = new RespuestasHistorialModel();
            $resp = $model->find($id);

            return $resp ?: null;

        } catch (\Throwable $e) {
            log_message('error', 'Error en get_respuesta: ' . $e->getMessage());
            return null;
        }
    }
}

if (!function_exists('get_respuesta_by_item')) {

    /**
     * Obtener una respuesta por item + item_id (primera coincidencia).
     *
     * @param string $item
     * @param int $itemId
     * @return array|null
     */
    function get_respuesta_by_item(string $item, int $itemId)
    {
        try {
            $model = new RespuestasModel();

            $resp = $model->where('item', $item)
                          ->where('item_id', $itemId)
                          ->first();

            return $resp ?: null;

        } catch (\Throwable $e) {
            log_message('error', 'Error en get_respuesta_by_item: ' . $e->getMessage());
            return null;
        } 
    }
}
