import axiosInstance from '../../src/axiosSecure'; import { useEffect, useState } from "react"; import toast from "react-hot-toast"; import { useRouter } from "next/router"; import Link from "next/link"; import { DayOfWeek } from "../DayOfWeek"; const common = require('src/helpers/common'); import AvailabilityForm from "../availability/AvailabilityForm"; import { TrashIcon, PencilSquareIcon } from "@heroicons/react/24/outline"; export default function AvailabilityList({ publisher, showNew }) { const [showAv, setShowAv] = useState(showNew || false); const [selectedItem, setSelectedItem] = useState(null); const [items, setItems] = useState(publisher.availabilities); // Convert items prop to state useEffect(() => { console.log('items set to:', items?.map(item => item.id)); }, [items]) const toggleAv = () => setShowAv(!showAv); const editAvailability = (item) => { setSelectedItem(item); setShowAv(true) }; const deleteAvailability = async (id) => { try { await axiosInstance.delete("/api/data/availabilities/" + id); // Handle the successful deletion, maybe refresh the list or show a success message const updatedItems = items.filter(item => item.id !== id); setItems(updatedItems); } catch (error) { // Handle the error, maybe show an error message console.error("Error deleting availability:", error); } }; const renderTable = () => (
Ден от седмицата (дата) | От-до | Действия |
---|---|---|
{item.dayOfMonth ? `${common.getDateFormated(new Date(item.startTime))}` : `Всеки(Всяка) ${common.getDayOfWeekName(new Date(item.startTime))}`} {/* {common.getDateFormated(new Date(item.startTime))} */} | {common.getTimeRange(new Date(item.startTime), new Date(item.endTime))} |