<?php if (!defined('DASHBOARD_ROOT')) { http_response_code(403); exit; } ?> <div class="nc-list"> <div class="nc-list-hdr">Fleet Nodes</div><?php foreach ($nodeMap as $code => $node): $status = $node['status'] ?? 'unknown'; $dotCls = $status === 'online' ? 'up' : ($status === 'offline' ? 'down' : ''); ?> <div class="nc-node" id="nc-node-<?= UI::e($code) ?>" data-code="<?= UI::e($code) ?>" data-nc="select"> <span class="nc-dot<?= $dotCls ?>"></span> <span class="nc-node-code"><?= UI::e($code) ?></span> <div class="nc-node-info"> <div class="nc-node-name"><?= UI::e($node['name']) ?></div> <div class="nc-node-role"><?= UI::e($node['loc']) ?></div> </div> <button class="nc-info-btn" data-nc="info" data-code="<?= UI::e($code) ?>" title="Server info"> <svg viewBox="0 0 24 24" width="14" height="14" fill="currentColor"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z"/></svg> </button> <button class="nc-lock-btn" id="nc-lock-<?= UI::e($code) ?>" data-nc="unlock" data-code="<?= UI::e($code) ?>" title="Unlock node"> <svg width="14" height="14" viewBox="0 0 24 24" fill="currentColor"><path d="M12 17a2 2 0 100-4 2 2 0 000 4zm6-9a2 2 0 012 2v10a2 2 0 01-2 2H6a2 2 0 01-2-2V10a2 2 0 012-2h1V6a5 5 0 1110 0v2h1zM8.5 8h7V6a3.5 3.5 0 10-7 0v2z"/></svg> </button> </div><?php endforeach; ?> </div>