get('kea'); $fallback = $module['db_defaults'] ?? []; $pdo = modules()->modulePdo('kea', $fallback); $settings = modules()->settings('kea'); $metadataFallback = is_array($module['metadata_db_defaults'] ?? null) ? $module['metadata_db_defaults'] : []; $metadataConfig = is_array($settings['metadata_db'] ?? null) ? array_replace($metadataFallback, $settings['metadata_db']) : $metadataFallback; $metadataRepo = null; $hosts = []; $error = null; try { if (!empty($metadataConfig['driver']) && !empty($metadataConfig['dbname'])) { $metadataRepo = new KeaHostMetadataRepository(Database::createFromArray($metadataConfig)); $metadataRepo->ensureSchema(); } $repo = new KeaHostRepository($pdo, $metadataRepo); $hosts = $repo->findAll(50); } catch (\Exception $e) { $error = "Datenbankfehler: " . $e->getMessage(); } module_tpl('kea', 'dashboard', compact('hosts', 'error'));