require('./notificationAdd.less'); const React = require('react'); const { useState, useRef } = require('react'); const request = require('superagent'); const NotificationAdd = ()=>{ const [notificationResult, setNotificationResult] = useState(null); const [searching, setSearching] = useState(false); const [error, setError] = useState(null); const dismissKeyRef = useRef(null); const titleRef = useRef(null); const textRef = useRef(null); const startAtRef = useRef(null); const stopAtRef = useRef(null); const saveNotification = async ()=>{ const dismissKey = dismissKeyRef.current.value; const title = titleRef.current.value; const text = textRef.current.value; const startAt = new Date(startAtRef.current.value); const stopAt = new Date(stopAtRef.current.value); // Basic validation if(!dismissKey || !title || !text || isNaN(startAt.getTime()) || isNaN(stopAt.getTime())) { setError('All fields are required'); return; } if(startAt >= stopAt) { setError('End date must be after the start date!'); return; } const data = { dismissKey, title, text, startAt : startAt?.toISOString() ?? '', stopAt : stopAt?.toISOString() ?? '', }; try { setSearching(true); setError(null); const response = await request.post('/admin/notification/add').send(data); console.log(response.body); // Reset form fields dismissKeyRef.current.value = ''; titleRef.current.value = ''; textRef.current.value = ''; setNotificationResult('Notification successfully created.'); setSearching(false); } catch (err) { console.log(err.response.body.message); setError(`Error saving notification: ${err.response.body.message}`); setSearching(false); } }; return (

Add Notification

{notificationResult}
{error &&
{error}
}
); }; module.exports = NotificationAdd;