import {Button, Grid, MenuItem, Select, TextField} from "@mui/material"; import {useLoaderData, useLocation, useNavigate} from "react-router-dom"; import {useState} from "react"; import {useAuthContext} from "../../configurations/AuthContext"; import {CreateRestorant, UpdateRestorant} from "../../services/restoran-service"; import {UserRole} from "../../services/user-service"; const RestorantForm = ({restorant, onClose}) => { const navigate = useNavigate(); const location = useLocation(); const {inactiveMenagers} = useLoaderData(); const [error, setError] = useState(false); const {loggedUserRole} = useAuthContext(); const [formData, setFormData] = useState({ ime: restorant?.ime ?? "", lokacija: restorant?.lokacija ?? "", rabotnoVreme: restorant?.rabotnoVreme ?? "", managerId: restorant?.manager.id ?? loggedUserRole?.role === UserRole.Menager ? loggedUserRole.roleId : 0 }); const handleChange = name => event => { setFormData({...formData, [name]: event.target.value}); if (name === "managerId" && event.target.value === 0) { setError(true); return; } setError(false) }; const handleSubmit = async event => { event.preventDefault(); if (formData.managerId === 0) { setError(true); return; } if (restorant) { await UpdateRestorant(restorant.id, formData) navigate(location.pathname); onClose(); return; } let restorantId = await CreateRestorant(formData); if (restorantId) { navigate(`/restorants/${restorantId}`); } } return (
{!restorant && }
) } export default RestorantForm;