From 6dfc6ddb3b404f7c3d48e36c3c1e6fd9a63c22bf Mon Sep 17 00:00:00 2001 From: Simon Rettberg Date: Mon, 14 Mar 2022 12:17:22 +0100 Subject: [passthrough] Redesign list; collapse non-VGA classes by default --- modules-available/passthrough/page.inc.php | 8 +- .../passthrough/templates/hardware-list.html | 129 ++++++++++++--------- 2 files changed, 76 insertions(+), 61 deletions(-) (limited to 'modules-available/passthrough') diff --git a/modules-available/passthrough/page.inc.php b/modules-available/passthrough/page.inc.php index 2db2525e..de63673a 100644 --- a/modules-available/passthrough/page.inc.php +++ b/modules-available/passthrough/page.inc.php @@ -128,14 +128,16 @@ class Page_Passthrough extends Page if ($row['class'] !== $lastClass) { // Add class row header $lastClass = $row['class']; - $finalRows[] = [ + $finalRows[$lastClass] = [ + 'collapse' => $row['class'] !== '0300', 'class' => $row['class'], 'class_name' => PciId::getPciId(PciId::DEVCLASS, $row['class'], true) ?: 'Unknown', + 'devlist' => [], ]; } $row['vendor_name'] = PciId::getPciId(PciId::VENDOR, $row['vendor'] ?? ''); $row['device_name'] = PciId::getPciId(PciId::DEVICE, $row['vendor'] . ':' . $row['device']); - $finalRows[] = $row; + $finalRows[$lastClass]['devlist'][] = $row; // Build up query if ($row['vendor_name'] === false) { $missing[$row['vendor']] = true; @@ -144,7 +146,7 @@ class Page_Passthrough extends Page $missing[$row['vendor'] . ':' . $row['device']] = true; } } - Render::addTemplate('hardware-list', ['list' => $finalRows]); + Render::addTemplate('hardware-list', ['classlist' => array_values($finalRows)]); if (!empty($missing)) { Render::addTemplate('js-pciquery', ['missing_ids' => json_encode(array_keys($missing))], 'statistics'); diff --git a/modules-available/passthrough/templates/hardware-list.html b/modules-available/passthrough/templates/hardware-list.html index 720427fd..b00baea7 100644 --- a/modules-available/passthrough/templates/hardware-list.html +++ b/modules-available/passthrough/templates/hardware-list.html @@ -1,63 +1,74 @@