Skip to content

details.js

Carolina Mamani edited this page Nov 6, 2023 · 1 revision

Extracción de Parámetros URL:

Estas líneas extraen parámetros de la URL actual.

  • let params = new URLSearchParams(document.location.search): Crea un objeto URLSearchParams a partir de la cadena de consulta de la URL actual.
  • let id = params.get("id"): Obtiene el valor del parámetro "id" de la URL.

Selección de Elementos del DOM:

  • const details_container = document.getElementById("card-details"): Selecciona el contenedor en el que se mostrarán los detalles del evento.

Limpieza del Contenedor de Detalles:

Este bucle elimina todos los hijos del contenedor de detalles para asegurarse de que esté vacío antes de agregar nuevos detalles.

  • while (details_container.firstChild) {...}: Mientras el contenedor tenga un hijo, lo elimina.

Función asyncDetails:

Esta es una función asíncrona que obtiene detalles de un evento específico de la API y los muestra.

  • let asyncDetails = async function () {...}: Define la función asíncrona.
    • const response = await fetch(apiUrl);: Hace una solicitud a la API para obtener datos.
    • let filteredEvent = apiEvents.events.filter(info => info._id == id): Filtra el evento específico usando el ID extraído de la URL.
    • eventDetails = filteredEvent[0]: Obtiene el evento filtrado.
    • let assintanceOrEstimated = ...: Decide si mostrar la asistencia estimada o real basándose en las propiedades del evento.
    • let withColors = ...: Decide si mostrar colores basándose en una variable almacenada en sessionStorage.
    • let detailsContent = \...``: Crea el contenido HTML para mostrar los detalles del evento.
    • details_container.innerHTML = detailsContent: Inserta el contenido HTML en el contenedor de detalles.

Manejo de Errores:

Si hay un error al intentar obtener o procesar los detalles del evento, se muestra un mensaje de error.

  • catch (error) {...}: Captura errores que puedan ocurrir durante la ejecución de la función asíncrona.

Ejecución de la Función:

  • asyncDetails();: Ejecuta la función asyncDetails para obtener y mostrar los detalles del evento cuando se carga el archivo.

Esta explicación proporciona una visión general del código. Si tienes alguna pregunta específica sobre una parte en particular, no dudes en preguntar.

Clone this wiki locally