<script type="text/javascript">//<![CDATA[
	var switches = [ '<%=table.concat(self.switches, "', '")%>' ];
	XHR.poll(5, '<%=luci.dispatcher.build_url("admin", "network", "switch_status")%>/' + switches.join(','), null,
		function(x, st)
		{
			for (var i = 0; i < switches.length; i++)
			{
				var ports = st[switches[i]];
				var th0 = document.getElementById('portstatus-' + switches[i]);

				if (th0 && ports && ports.length)
				{
					if (!th0.innerHTML)
						th0.innerHTML = '<%:Port status:%>';

					for (var j = 0; j < ports.length; j++)
					{
						var th = th0.parentNode.parentNode.childNodes[j+1];

						if (ports[j].link)
						{
							th.innerHTML = String.format(
								'<small><img src="<%=resource%>/icons/port_up.png" />' +
								'<br />%d<%:baseT%><br />%s</small>',
								ports[j].speed, ports[j].duplex
									? '<%:full-duplex%>' : '<%:half-duplex%>'
							);
						}
						else
						{
							th.innerHTML = String.format(
								'<small><img src="<%=resource%>/icons/port_down.png" />' +
								'<br /><%:no link%></small>'
							);
						}
					}
				}
			}
		}
	);
//]]></script>