'use client'; import axios from 'axios'; import { Metadata } from 'next'; import Link from 'next/link'; import React, { useEffect, useState } from 'react'; import IconTrashLines from '../icon/icon-trash-lines'; import IconPencil from '../icon/icon-pencil'; import Swal from 'sweetalert2'; import { useRouter } from 'next/navigation'; export const metadata: Metadata = { title: 'Knowledge Base', }; const ListOfEvents = () => { const router = useRouter() const [events, setEvents] = useState([]) useEffect(() => { getEvents() }, []) const getEvents = async () => { try { const eventRes: any = await axios?.get(`https://api.tamilculturewaterloo.org/api/events`) console.log("eventRes", eventRes) setEvents(eventRes?.data?.data) } catch (error) { console.log("error", error) } } const handleEdit = (event: any) => { // Redirect to edit page or open modal console.log("Edit", event); router.push(`/edit-event?event=${event.id}`); }; // const handleDelete = async (event: any) => { // const confirmed = confirm(`Are you sure you want to delete ${event.eventtitle}?`); // if (!confirmed) return; // try { // await axios.delete(`https://api.tamilculturewaterloo.org/api/events/${event.id}`); // getEvents(); // Refresh the list // } catch (err) { // console.error("Delete error", err); // } // }; const showAlert = async (event: any) => { Swal.fire({ icon: 'warning', title: 'Are you sure?', text: "You won't be able to revert this!", showCancelButton: true, confirmButtonText: 'Delete', padding: '2em', customClass: { popup: 'sweet-alerts' }, }).then(async (result) => { if (result.isConfirmed) { try { await axios.delete(`https://api.tamilculturewaterloo.org/api/events/${event.id}`); Swal.fire({ title: 'Deleted!', text: 'Your file has been deleted.', icon: 'success', customClass: { popup: 'sweet-alerts' }, }); getEvents(); // Refresh the list } catch (error) { Swal.fire({ title: 'Error!', text: 'Failed to delete the file.', icon: 'error', customClass: { popup: 'sweet-alerts' }, }); } } }); }; return (
Date: {event.eventdate}