From ee04e213f167d4e75eefe02e26a2cb8d95cb844c Mon Sep 17 00:00:00 2001 From: Jeppe Bundgaard Date: Wed, 25 Feb 2026 12:59:10 +0100 Subject: [PATCH] Add Connectivity Issue Page and Improve Table Semantics - Introduced `ConnectivityIssue.vue` for handling and displaying connectivity problems. - Added new route for the connectivity issue error page. - Enhanced accessibility by wrapping table headers in `OrderBookingsTable.vue` with `` and `` tags. - Included connectivity-related internationalization keys across various locale files. - Updated components to integrate `ConnectivityIssue` as a fallback display for connection errors. --- openapi.yaml | 12 ++ .../displays/boxes/ElementTabsBox.vue | 2 +- src/components/page/wrappers/LayoutV2.vue | 1 + src/components/viewport/Viewport.vue | 5 +- src/i18n/locales/da.json | 44 ++-- src/i18n/locales/de.json | 11 + src/i18n/locales/en.json | 12 +- src/i18n/locales/no.json | 11 + src/i18n/locales/sv.json | 11 + src/router.js | 6 + src/store/user.vue | 1 + src/views/auth/Login.vue | 5 +- src/views/auth/SubuserLogin.vue | 5 +- .../overview/StatisticsIncomeCard.vue | 2 +- .../displays/tables/OrderBookingsTable.vue | 28 +-- src/views/errors/ConnectivityIssue.vue | 103 +++++++++ test/specs/i18n-bookings.spec.js | 201 ++++++++++++++++++ 17 files changed, 423 insertions(+), 37 deletions(-) create mode 100644 src/views/errors/ConnectivityIssue.vue create mode 100644 test/specs/i18n-bookings.spec.js diff --git a/openapi.yaml b/openapi.yaml index f16a8849..1cb86e4d 100644 --- a/openapi.yaml +++ b/openapi.yaml @@ -8386,6 +8386,18 @@ components: For backward-compatibility the API also accepts camelCase `progressAlertTimeOfDay` on input. pattern: '^([01]\d|2[0-3]):[0-5]\d(?:Z|[+-](?:[01]\d|2[0-3]):?[0-5]\d)$' example: "14:30+02:00" + department_daily_targets: + type: object + description: | + Optional per-department custom daily targets. Keys are department IDs and values are non-negative integers representing the target per operating day for that department. + If omitted, the daily target is split evenly across selected departments. The canonical field name is snake_case `department_daily_targets`. + For backward-compatibility the API also accepts camelCase `departmentDailyTargets` on input. + additionalProperties: + type: integer + minimum: 0 + example: + "12": 3 + "15": 5 DepartmentGoal: type: object diff --git a/src/components/displays/boxes/ElementTabsBox.vue b/src/components/displays/boxes/ElementTabsBox.vue index 80c58db3..f9b953f6 100644 --- a/src/components/displays/boxes/ElementTabsBox.vue +++ b/src/components/displays/boxes/ElementTabsBox.vue @@ -1,5 +1,5 @@