diff --git a/apps/dashboard/lib/Controller/DashboardController.php b/apps/dashboard/lib/Controller/DashboardController.php
index c9fd96fcb6f74c12c5e224b5d99aa45fa75af830..57717b26698431036be3a46f02ae1d13e7658081 100644
--- a/apps/dashboard/lib/Controller/DashboardController.php
+++ b/apps/dashboard/lib/Controller/DashboardController.php
@@ -103,8 +103,12 @@ class DashboardController extends Controller {
 				'url' => $widget->getUrl()
 			];
 		}, $this->dashboardManager->getWidgets());
-		$configStatuses = $this->config->getUserValue($this->userId, 'dashboard', 'statuses', '{}');
+		$configStatuses = $this->config->getUserValue($this->userId, 'dashboard', 'statuses', '');
 		$statuses = json_decode($configStatuses, true);
+		// We avoid getting an empty array as it will not produce an object in UI's JS
+		// It does not matter if some statuses are missing from the array, missing ones are considered enabled
+		$statuses = ($statuses && count($statuses) > 0) ? $statuses : ['weather' => true];
+
 		$this->inititalStateService->provideInitialState('dashboard', 'panels', $widgets);
 		$this->inititalStateService->provideInitialState('dashboard', 'statuses', $statuses);
 		$this->inititalStateService->provideInitialState('dashboard', 'layout', $userLayout);