{% /* * Part of AREDN® -- Used for creating Amateur Radio Emergency Data Networks * Copyright (C) 2024 Tim Wilkinson * See Contributors file for additional contributors * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation version 3 of the License. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Additional Terms: * * Additional use restrictions exist on the AREDN® trademark and logo. * See AREDNLicense.txt for more info. * * Attributions to the AREDN® Project must be retained in the source code. * If importing this code into a new or existing project attribution * to the AREDN® project must be added to the source code. * * You must not misrepresent the origin of the material contained within. * * Modified versions must be modified to attribute to the original source * and be marked in reasonable ways as differentiate it from the original * version */ %} {% const ports = hardware.getEthernetPorts(); let active = 0; for (let i = 0; i < length(ports); i++) { const state = hardware.getEthernetPortInfo(ports[i].k); if (state.active) { active++; } } let xcount = 0; uciMesh.foreach("xlink", "interface", _ => { xcount++; }); %}
{% if (length(ports) > 1) { %}
Ethernet Ports
{{length(ports)}}
ports
{{active}}
active
{% } %}
XLinks
{{xcount}}
xlinks