const { useState } = React; window.AdminAvisos = function({ globalUsers, reminders, showToast, refreshData }) { const [title, setTitle] = useState(''); const [message, setMessage] = useState(''); const [targetUsers, setTargetUsers] = useState([]); const [selectAll, setSelectAll] = useState(true); const handleSendNotice = async (e) => { e.preventDefault(); if (!title.trim() || !message.trim()) return showToast("Título y mensaje son requeridos."); const usersToSend = selectAll ? globalUsers.map(u => u.id) : targetUsers; if (usersToSend.length === 0) return showToast("Debes seleccionar al menos un usuario."); try { const res = await window.apiCall('save_reminder', { title: title.trim(), message: message.trim(), targetUsers: usersToSend, createdAt: Date.now() }); if (res && res.success) { setTitle(''); setMessage(''); setSelectAll(true); setTargetUsers([]); showToast("Aviso difundido con éxito."); if (refreshData) await refreshData(); } else { showToast("Error al difundir: " + (res.error || "Desconocido")); } } catch (err) { showToast("Error de conexión al enviar aviso."); } }; const handleDeleteReminder = async (id) => { await window.apiCall('delete_reminder', { id }); showToast("Aviso eliminado."); if (refreshData) await refreshData(); }; return (
No hay avisos registrados actualmente.
{r.message}