From b9e6afa659679f36f535c518de74b0e274ad73dd Mon Sep 17 00:00:00 2001 From: Nicolas Mowen Date: Sat, 16 Sep 2023 03:59:50 -0600 Subject: [PATCH] Fix webUI success / error messages (#7820) * Fix export error handling * Ensure that config editor success / error is updated each time * Set response * Formatting --- frigate/http.py | 7 ++++++- web/src/routes/Config.jsx | 3 +++ web/src/routes/Export.jsx | 2 +- 3 files changed, 10 insertions(+), 2 deletions(-) diff --git a/frigate/http.py b/frigate/http.py index ed47c8661..d26a7bd2a 100644 --- a/frigate/http.py +++ b/frigate/http.py @@ -1646,7 +1646,12 @@ def export_recording(camera_name: str, start_time, end_time): ) if recordings_count <= 0: - return "No recordings found for time range", 400 + return make_response( + jsonify( + {"success": False, "message": "No recordings found for time range"} + ), + 400, + ) exporter = RecordingExporter( current_app.frigate_config, diff --git a/web/src/routes/Config.jsx b/web/src/routes/Config.jsx index e043bbf28..b85836129 100644 --- a/web/src/routes/Config.jsx +++ b/web/src/routes/Config.jsx @@ -28,10 +28,13 @@ export default function Config() { }) .then((response) => { if (response.status === 200) { + setError(''); setSuccess(response.data); } }) .catch((error) => { + setSuccess(''); + if (error.response) { setError(error.response.data.message); } else { diff --git a/web/src/routes/Export.jsx b/web/src/routes/Export.jsx index 1cac3c844..7156a1b0e 100644 --- a/web/src/routes/Export.jsx +++ b/web/src/routes/Export.jsx @@ -58,7 +58,7 @@ export default function Export() { } }) .catch((error) => { - if (error.response) { + if (error.response?.data?.message) { setMessage({ text: `Failed to start export: ${error.response.data.message}`, error: true }); } else { setMessage({ text: `Failed to start export: ${error.message}`, error: true });