feat(webui,recon): drop PineAP mode card, sort recon report APs by signal

- Remove the Passive/Active/Advanced mode card from the PineAP dashboard
  and move the RF Role (radio1) card into its slot, along with the now
  dead mode state machinery and mode-card-only CSS.
- Sort recon HTML report access points by signal strength (strongest first).
This commit is contained in:
2026-08-23 09:29:10 -06:00
parent e316450271
commit a04319dfc8
4 changed files with 23 additions and 108 deletions
+10
View File
@@ -1164,6 +1164,16 @@ class ReconReportTest(unittest.TestCase):
self.assertIn('AE:77:C0:EB:31:41', text)
self.assertIn('handshake', text)
self.assertNotIn('ProbeOnlySSID', text)
def test_html_download_orders_strongest_signal_first(self):
with mock.patch.object(server, '_gps_status_data', return_value={'lock': False}):
status, payload = server.h_recon_scan_download_html(self._ctx(('1',)))
self.assertEqual(status, 200)
text = payload.data.decode('utf-8')
# Fixture: hidden AP at -64 dBm is stronger than Anderson-5 at -76 dBm.
strong = '50:6F:9A:01:00:00'
weak = 'C8:9E:43:64:80:80'
self.assertLess(text.index(strong), text.index(weak))
def test_html_report_includes_gps_when_locked(self):
with mock.patch.object(server, '_gps_status_data',
return_value={'lock': True, 'lat': 37.7,