0) { $device = $sql->single( "SELECT d.* FROM devices d WHERE d.id = ?", "i", [$deviceId] ); } $isEdit = !empty($device); $pageTitle = $isEdit ? "Gerät bearbeiten: " . htmlspecialchars($device['name']) : "Neues Gerät"; $dependencyCounts = [ 'port_count' => 0, 'module_count' => 0, 'connection_count' => 0 ]; if ($isEdit) { $dependencyCounts = $sql->single( "SELECT ( SELECT COUNT(*) FROM device_ports dp WHERE dp.device_id = ? ) AS port_count, ( SELECT COUNT(*) FROM device_port_modules dpm JOIN device_ports dp2 ON dp2.id = dpm.device_port_id WHERE dp2.device_id = ? ) AS module_count, ( SELECT COUNT(*) FROM connections c WHERE (c.port_a_type = 'device' AND c.port_a_id IN ( SELECT dp3.id FROM device_ports dp3 WHERE dp3.device_id = ? )) OR (c.port_b_type = 'device' AND c.port_b_id IN ( SELECT dp4.id FROM device_ports dp4 WHERE dp4.device_id = ? )) ) AS connection_count", "iiii", [$deviceId, $deviceId, $deviceId, $deviceId] ) ?: $dependencyCounts; } // ========================= // Optionen laden // ========================= $deviceTypes = $sql->get("SELECT id, name, category FROM device_types ORDER BY name", "", []); $racks = $sql->get("SELECT id, name FROM racks ORDER BY name", "", []); $devicePorts = []; if ($isEdit) { $devicePorts = $sql->get( "SELECT dp.id, dp.name, dp.status, dp.mode, dp.vlan_config, pt.name AS port_type_name FROM device_ports dp LEFT JOIN port_types pt ON pt.id = dp.port_type_id WHERE dp.device_id = ? ORDER BY dp.id", "i", [$deviceId] ); } ?>

Allgemein
Optionaler Link zur Weboberfläche des Geräts (öffnet in neuem Tab).
Standort
Wählen Sie das Rack, in dem sich das Gerät befindet.
Ports

Portstatus und VLAN-Zuordnung koennen hier direkt gepflegt werden (VLANs kommagetrennt, z. B. 10,20,30).

Name Port-Typ Status Modus VLANs

Zu diesem Geraet sind aktuell keine Ports vorhanden.

Ports werden nach dem ersten Speichern automatisch aus dem Geraetetyp erzeugt und koennen dann hier gepflegt werden.

Abbrechen Löschen