mirror of
https://github.com/blakeblackshear/frigate.git
synced 2026-02-02 17:25:22 +03:00
Use state to keep track of event id
This commit is contained in:
parent
f741c59a8b
commit
4b00faad70
@ -50,7 +50,6 @@ export default function Events({ path, ...props }) {
|
|||||||
showDatePicker: false,
|
showDatePicker: false,
|
||||||
showCalendar: false,
|
showCalendar: false,
|
||||||
showPlusConfig: false,
|
showPlusConfig: false,
|
||||||
showDeleteFavorite: false,
|
|
||||||
});
|
});
|
||||||
const [uploading, setUploading] = useState([]);
|
const [uploading, setUploading] = useState([]);
|
||||||
const [viewEvent, setViewEvent] = useState();
|
const [viewEvent, setViewEvent] = useState();
|
||||||
@ -60,6 +59,10 @@ export default function Events({ path, ...props }) {
|
|||||||
has_snapshot: false,
|
has_snapshot: false,
|
||||||
plus_id: undefined,
|
plus_id: undefined,
|
||||||
});
|
});
|
||||||
|
const [deleteState, setDeleteState] = useState({
|
||||||
|
deletingFavoriteEventId: null,
|
||||||
|
showDeleteFavorite: false,
|
||||||
|
});
|
||||||
|
|
||||||
const eventsFetcher = useCallback((path, params) => {
|
const eventsFetcher = useCallback((path, params) => {
|
||||||
params = { ...params, include_thumbnails: 0, limit: API_LIMIT };
|
params = { ...params, include_thumbnails: 0, limit: API_LIMIT };
|
||||||
@ -115,11 +118,11 @@ export default function Events({ path, ...props }) {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
const onDelete = async (e, eventId, favorited) => {
|
const onDelete = async (e, eventId, saved) => {
|
||||||
e.stopPropagation();
|
e.stopPropagation();
|
||||||
|
|
||||||
if (favorited) {
|
if (saved) {
|
||||||
|
setDeleteState({ deletingFavoriteEventId: eventId, showDeleteFavorite: true });
|
||||||
} else {
|
} else {
|
||||||
const response = await axios.delete(`events/${eventId}`);
|
const response = await axios.delete(`events/${eventId}`);
|
||||||
if (response.status === 200) {
|
if (response.status === 200) {
|
||||||
@ -380,14 +383,14 @@ export default function Events({ path, ...props }) {
|
|||||||
</div>
|
</div>
|
||||||
</Dialog>
|
</Dialog>
|
||||||
)}
|
)}
|
||||||
{state.showDeleteFavorite && (
|
{deleteState.showDeleteFavorite && (
|
||||||
<Dialog>
|
<Dialog>
|
||||||
<div className="p-4">
|
<div className="p-4">
|
||||||
<Heading size="lg">Delete Saved Event?</Heading>
|
<Heading size="lg">Delete Saved Event?</Heading>
|
||||||
<p className="mb-2">Confirm deletion of saved event.</p>
|
<p className="mb-2">Confirm deletion of saved event.</p>
|
||||||
</div>
|
</div>
|
||||||
<div className="p-2 flex justify-start flex-row-reverse space-x-2">
|
<div className="p-2 flex justify-start flex-row-reverse space-x-2">
|
||||||
<Button className="ml-2" onClick={() => setState({ ...state, showDeleteFavorite: false })} type="text">
|
<Button className="ml-2" onClick={(e) => { setDeleteState({ ...state, showDeleteFavorite: false }); onDelete(e, deleteState.deletingFavoriteEventId, false) }} type="text">
|
||||||
Delete
|
Delete
|
||||||
</Button>
|
</Button>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user