diff --git a/src/components/widgets/openmediavault/updates.jsx b/src/components/widgets/openmediavault/updates.jsx
index c50751ea..93a64298 100644
--- a/src/components/widgets/openmediavault/updates.jsx
+++ b/src/components/widgets/openmediavault/updates.jsx
@@ -1,14 +1,16 @@
import useSWR from "swr";
-import { FaCheck } from "react-icons/fa";
+import { FaDownload } from "react-icons/fa";
import { useTranslation } from "next-i18next";
import Resource from "../widget/resource";
import Error from "../widget/error";
+const params = new URLSearchParams({ method: "apt.enumerateUpgraded" }).toString();
+const useApi = () => useSWR(`/api/widgets/openmediavault?${params}`);
+
export default function Uptime({ expanded }) {
- const { t, i18n } = useTranslation();
- const params = { lang: i18n.language, method: "apt.enumerateUpgraded" };
- const { data, error } = useSWR(`/api/widgets/openmediavault?${new URLSearchParams(params).toString()}`);
+ const { t } = useTranslation();
+ const { data, error } = useApi();
if (error || data?.error) {
return ;
@@ -20,7 +22,7 @@ export default function Uptime({ expanded }) {
return (
;
+ if (error || data?.error) {
+ return ;
}
const itemsWithData = items.map((item) => ({
...item,
- number: data?.response?.data ? item.getNumber(data?.response?.data) : null,
+ number: data?.response?.data ? item.getNumber(data.response.data) : null,
}));
return (
diff --git a/src/widgets/openmediavault/methods/services_get_status.jsx b/src/widgets/openmediavault/methods/services_get_status.jsx
index b808f60e..12887a79 100644
--- a/src/widgets/openmediavault/methods/services_get_status.jsx
+++ b/src/widgets/openmediavault/methods/services_get_status.jsx
@@ -25,13 +25,13 @@ const items = [
export default function Component({ service }) {
const { data, error } = useWidgetAPI(service.widget);
- if (error) {
- return ;
+ if (error || data?.error) {
+ return ;
}
const itemsWithData = items.map((item) => ({
...item,
- number: data?.response?.data ? item.getNumber(data?.response?.data) : null,
+ number: data?.response?.data ? item.getNumber(data.response.data) : null,
}));
return (
diff --git a/src/widgets/openmediavault/methods/smart_get_list.jsx b/src/widgets/openmediavault/methods/smart_get_list.jsx
index 1a105a36..48919e07 100644
--- a/src/widgets/openmediavault/methods/smart_get_list.jsx
+++ b/src/widgets/openmediavault/methods/smart_get_list.jsx
@@ -25,13 +25,13 @@ const items = [
export default function Component({ service }) {
const { data, error } = useWidgetAPI(service.widget);
- if (error) {
- return ;
+ if (error || data?.error) {
+ return ;
}
const itemsWithData = items.map((item) => ({
...item,
- number: data?.response?.output ? item.getNumber(JSON.parse(data?.response?.output || "{}")?.data) : null,
+ number: data?.response?.output ? item.getNumber(JSON.parse(data.response.output).data) : null,
}));
return (
diff --git a/src/widgets/openmediavault/methods/zfs_get_stats.jsx b/src/widgets/openmediavault/methods/zfs_get_stats.jsx
index ec8b7a25..7a5b6d3f 100644
--- a/src/widgets/openmediavault/methods/zfs_get_stats.jsx
+++ b/src/widgets/openmediavault/methods/zfs_get_stats.jsx
@@ -38,10 +38,10 @@ export default function Component({ service }) {
}
}, [data]);
- if (error) {
+ if (error || data?.error) {
return (
-
+
);
}