This commit is contained in:
Adrien MALINGREY 2025-04-02 16:37:41 +02:00
parent 832a0c1232
commit b54b4f6bfc
2 changed files with 9 additions and 7 deletions

View File

@ -19,10 +19,11 @@ $otherPattern = " .*$NLP";
$endPattern = "(?<!#)"; $endPattern = "(?<!#)";
preg_match_all("/$startPattern$vlanPvidPattern(?:$vlanNamePattern|$vlanDescriptionPattern|$otherPattern)*$endPattern/", $conf, $vlans, PREG_SET_ORDER); preg_match_all("/$startPattern$vlanPvidPattern(?:$vlanNamePattern|$vlanDescriptionPattern|$otherPattern)*$endPattern/", $conf, $vlans, PREG_SET_ORDER);
$interfaceAddressPattern = "interface [\w-]+(?P<member>\d+)\/0\/(?P<port>\d+)$NLP"; $interfaceAddressPattern = "interface [\w-]+(?P<member>\d+)\/0\/(?P<port>\d+)$NLP";
$portHybridPattern = " port hybrid (?:pvid )?vlan (?:(?P<tagged>\d+)(?: [0-9a-z ]*)? tagged|(?P<untagged>\d+)(?: \d+)* untagged)$NLP";
$portAccessPattern = " port (?:access |trunk |hybrid |pvid |vlan )*(?P<pvid>\d+)$NLP"; $portAccessPattern = " port (?:access |trunk |hybrid |pvid |vlan )*(?P<pvid>\d+)$NLP";
$portHybridPattern = " port hybrid (?:pvid )?vlan (?:(?P<tagged>\d+)(?: [0-9a-z ]*)? tagged|(?P<untagged>\d+)(?: \d+)* untagged)$NLP";
$voiceVlanPattern = " voice-vlan (?P<voice_vlan>\d+) enable$NLP"; $voiceVlanPattern = " voice-vlan (?P<voice_vlan>\d+) enable$NLP";
preg_match_all("/$startPattern$interfaceAddressPattern(?:$portHybridPattern|$portAccessPattern|$voiceVlanPattern|$otherPattern)*$endPattern/", $conf, $interfaces, PREG_SET_ORDER); preg_match_all("/$startPattern$interfaceAddressPattern(?:$portAccessPattern|$portHybridPattern|$voiceVlanPattern|$otherPattern)*$endPattern/", $conf, $interfaces, PREG_SET_ORDER);
$stack = array(); $stack = array();
foreach ($interfaces as $interface) { foreach ($interfaces as $interface) {
if (!isset($stack[$interface["member"]])) $stack[$interface["member"]] = [[], []]; if (!isset($stack[$interface["member"]])) $stack[$interface["member"]] = [[], []];
@ -30,12 +31,13 @@ foreach ($interfaces as $interface) {
if (!empty($interface["pvid"])) $interface["style"] .= "--pvid: {$interface["pvid"]}; "; if (!empty($interface["pvid"])) $interface["style"] .= "--pvid: {$interface["pvid"]}; ";
if (!empty($interface["tagged"])) $interface["style"] .= "--tagged: {$interface["tagged"]}; "; if (!empty($interface["tagged"])) $interface["style"] .= "--tagged: {$interface["tagged"]}; ";
if (!empty($interface["untagged"])) $interface["style"] .= "--untagged: {$interface["untagged"]}; "; if (!empty($interface["untagged"])) $interface["style"] .= "--untagged: {$interface["untagged"]}; ";
if (!empty($interface["voice_vlan"])) $interface["style"] .= "--voice-vlan: {$interface["voice_vlan"]}; ";
$stack[$interface["member"]][1 - $interface["port"] % 2][$interface["port"]] = $interface; $stack[$interface["member"]][1 - $interface["port"] % 2][$interface["port"]] = $interface;
} }
/*echo ("<!--"); /*echo ("<!--");
var_dump($stack); var_dump($stack);
echo ("-->");*/ echo ("-->");*/
?> ?>
<!DOCTYPE HTML> <!DOCTYPE HTML>
<html lang='fr'> <html lang='fr'>
@ -96,10 +98,10 @@ foreach ($interfaces as $interface) {
<td class='interface trunk'></td> <td class='interface trunk'></td>
<td colspan='2'>Trunk</td> <td colspan='2'>Trunk</td>
</tr> </tr>
<tr> <!--<tr>
<td class='interface hybrid' style='--tagged:60; --untagged:0'></td> <td class='interface hybrid' style='--tagged:60; --untagged:0'></td>
<td colspan='2'>Hybride (tagged/untagged)</td> <td colspan='2'>Hybride (tagged/untagged)</td>
</tr> </tr>-->
<tr> <tr>
<td class='interface poe'></td> <td class='interface poe'></td>
<td colspan='2'>Power on Ethernet</td> <td colspan='2'>Power on Ethernet</td>

View File

@ -112,7 +112,7 @@ main {
} }
.member-id { .member-id {
background: #777; background: #888;
align-content: center; align-content: center;
color: lightgreen; color: lightgreen;
text-shadow: 0 1px 3px #fffb; text-shadow: 0 1px 3px #fffb;