139849d632
feat: dropdown nav with submenus + black ops colour theme redesign
...
- Navigation: 6 top-level items (BASE, TRANSMISSIONS, ARMOURY, INTEL, SAFEHOUSE, COMMS) with dropdown children
- nav.js: renders nested dropdown submenus, mobile tap-to-toggle support
- Theme: tactical green (#00ff41) accent, deep black (#0a0a0a) bg, amber (#c9a227) secondary
- 176 colour replacements across 4 CSS + 3 JS files
- Mobile: responsive dropdowns with slide animation
- Updated navigation.json with full nested structure
2026-04-01 03:16:34 +00:00
c3455b34cd
fix: deleteNavItem uses DELETE method instead of broken POST
2026-04-01 02:19:57 +00:00
ccbd59fcd4
fix: resolve all critical audit issues
...
- Fix 60 DOM ID mismatches in admin.js (editor, dashboard, API keys, theme, services, navigation, links)
- Add 51 missing CSS classes to admin.css (sidebar, topbar, login, editor, tables, settings, backups, etc)
- Fix 5 undefined onclick methods in admin.html (saveContact, saveSEO, remove unused save buttons)
- Fix API payload mismatches: services/nav/links send single object, apikeys nested {group, data} format
- Replace Promise.all with Promise.allSettled in loadDashboard for resilient loading
- Fix /api/services timeout: ThreadPoolExecutor parallel checks + timeout=2s
- Add /etc/hosts entries on VPS for subdomain resolution from localhost
- Add JSON error handlers (400, 401, 404, 500) to Flask API
- Suppress InsecureRequestWarning in Flask
- Fix dashThreats container ID mismatch in admin.html
- Delete stale root-level JS files from VPS
2026-04-01 00:54:20 +00:00
a1e5cd2f4a
fix: admin panel showSection ID mismatch + missing main-content CSS
2026-03-31 23:13:42 +00:00
2ca01d2b3a
fix: admin login, clean URLs, blog links
...
- Fix admin login: ID mismatch (loginUser->loginUsername, loginPass->loginPassword)
- Fix auth URL: /api/auth -> /api/auth/login
- Fix init() structure: broken if/else for checkAuth
- Remove onclick from login button (JS handles via addEventListener)
- Clean URLs: /blog/post/slug instead of post.html?slug=slug
- Updated blog.js, post.js, main.js with clean URL links
- post.js supports both /blog/post/slug and ?slug=x formats
- nginx configured for /blog/post/* rewrite
2026-03-31 22:55:45 +00:00
252c7b95b3
feat: mega admin panel expansion, contact form, 9 blog posts
...
- admin.html: 14 sections (dashboard, posts, editor, tracks, settings, homepage editor, services, navigation, links, API keys, theme, SEO, contact settings, backups)
- admin.js: 1554 lines, full AdminApp with CRUD for all sections
- admin.css: 1972 lines, responsive mobile nav, all new section styles
- app.py: 42 endpoints, new routes for homepage/services/nav/links/apikeys/theme/seo/contact/backups
- 9 JSON data files for new settings
- Contact form wired to POST /api/contact
- 9 blog posts with full HUD metadata
- .gitignore added
2026-03-31 22:19:27 +00:00
167bcb15a9
feat: admin panel, tracks CRUD, operator HUD improvements, mood badges
2026-03-31 21:30:17 +00:00