feat(webui,evilportal): move Evil Portal tab under PineAP, live-verified on Pager

This commit is contained in:
c4ch3c4d3
2026-08-24 09:12:55 -06:00
parent 0f31bfe885
commit ab92e7d278
2 changed files with 7 additions and 7 deletions
@@ -31,7 +31,6 @@ const App = (() => {
{ key: 'dashboard', label: 'Dashboard', hash: '#/dashboard', icon: 'dashboard' }, { key: 'dashboard', label: 'Dashboard', hash: '#/dashboard', icon: 'dashboard' },
{ key: 'pineap', label: 'PineAP', hash: '#/pineap', icon: 'wifi' }, { key: 'pineap', label: 'PineAP', hash: '#/pineap', icon: 'wifi' },
{ key: 'recon', label: 'Recon', hash: '#/recon', icon: 'recon' }, { key: 'recon', label: 'Recon', hash: '#/recon', icon: 'recon' },
{ key: 'evilportal', label: 'Evil Portal', hash: '#/evilportal', icon: 'portal' },
{ key: 'logging', label: 'Logging', hash: '#/logging', icon: 'logging' }, { key: 'logging', label: 'Logging', hash: '#/logging', icon: 'logging' },
{ key: 'modules', label: 'Payloads', hash: '#/modules', icon: 'modules' }, { key: 'modules', label: 'Payloads', hash: '#/modules', icon: 'modules' },
{ key: 'harness', label: 'Harness', hash: '#/harness', icon: 'robot' }, { key: 'harness', label: 'Harness', hash: '#/harness', icon: 'robot' },
@@ -421,7 +420,7 @@ const App = (() => {
'#/recon': 'recon', '#/recon': 'recon',
'#/recon/reports': 'recon_reports', '#/recon/reports': 'recon_reports',
'#/recon/handshakes': 'recon_handshakes', '#/recon/handshakes': 'recon_handshakes',
'#/evilportal': 'evilportal', '#/pineap/evilportal': 'pineap_evilportal',
'#/logging': 'logging', '#/logging': 'logging',
'#/logging/system': 'logging_system', '#/logging/system': 'logging_system',
'#/modules': 'modules', '#/modules': 'modules',
@@ -382,6 +382,7 @@ const PINEAP_TABS = [
{ label: 'OpenAP', hash: '#/pineap/open' }, { label: 'OpenAP', hash: '#/pineap/open' },
{ label: 'Evil WPA', hash: '#/pineap/evilwpa' }, { label: 'Evil WPA', hash: '#/pineap/evilwpa' },
{ label: 'Evil Enterprise', hash: '#/pineap/enterprise' }, { label: 'Evil Enterprise', hash: '#/pineap/enterprise' },
{ label: 'Evil Portal', hash: '#/pineap/evilportal' },
{ label: 'Impersonation', hash: '#/pineap/impersonation' }, { label: 'Impersonation', hash: '#/pineap/impersonation' },
{ label: 'Clients', hash: '#/pineap/clients' }, { label: 'Clients', hash: '#/pineap/clients' },
{ label: 'Filtering', hash: '#/pineap/filtering' } { label: 'Filtering', hash: '#/pineap/filtering' }
@@ -4127,15 +4128,15 @@ views.settings_help = (root) => {
// Evil Portal — Hak5 EvilPortalNano-compatible captive portal manager. // Evil Portal — Hak5 EvilPortalNano-compatible captive portal manager.
// --------------------------------------------------------------------------- // ---------------------------------------------------------------------------
views.evilportal = (root) => { views.pineap_evilportal = (root) => {
root.appendChild(h('h1', { class: 'page-title', text: 'Evil Portal' })); const box = pineapShell(root, '#/pineap/evilportal');
const box = h('div', { style: 'display:flex;flex-direction:column;gap:16px' }); const portalRoot = h('div', { style: 'display:flex;flex-direction:column;gap:16px' });
root.appendChild(box); box.appendChild(portalRoot);
function portalCard(title) { function portalCard(title) {
const card = h('div', { class: 'pineap-title-card' }); const card = h('div', { class: 'pineap-title-card' });
card.appendChild(h('div', { class: 'pineap-card-title' }, title)); card.appendChild(h('div', { class: 'pineap-card-title' }, title));
box.appendChild(card); portalRoot.appendChild(card);
return card; return card;
} }