From 9a105d1758a10ed0361566bfcbdd8f897fbb6cab Mon Sep 17 00:00:00 2001
From: CyberMind-FR
Date: Thu, 26 Mar 2026 07:19:29 +0100
Subject: [PATCH] Fix p2p/zkp/mesh navbar and add fix-navbar.sh script
- Added crt-light.css to p2p, zkp, mesh pages
- Fixed body class to crt-light
- Removed duplicate WireGuard menu entry on VM
- Added scripts/fix-navbar.sh for automated navbar integration checks
Required navbar elements:
1. crt-light.css and sidebar-light.css links
2. body class="crt-light"
3.
4. /shared/sidebar.js script
Co-Authored-By: Claude Opus 4.5
---
packages/secubox-mesh/www/mesh/index.html | 1 +
packages/secubox-p2p/www/p2p/index.html | 3 +-
packages/secubox-zkp/www/zkp/index.html | 3 +-
scripts/fix-navbar.sh | 84 +++++++++++++++++++++++
4 files changed, 89 insertions(+), 2 deletions(-)
create mode 100755 scripts/fix-navbar.sh
diff --git a/packages/secubox-mesh/www/mesh/index.html b/packages/secubox-mesh/www/mesh/index.html
index 2eaaf2d5..037d9b9d 100644
--- a/packages/secubox-mesh/www/mesh/index.html
+++ b/packages/secubox-mesh/www/mesh/index.html
@@ -4,6 +4,7 @@
Mesh DNS - SecuBox
+
-
+
diff --git a/packages/secubox-zkp/www/zkp/index.html b/packages/secubox-zkp/www/zkp/index.html
index 584a0e01..3c0c7906 100644
--- a/packages/secubox-zkp/www/zkp/index.html
+++ b/packages/secubox-zkp/www/zkp/index.html
@@ -4,6 +4,7 @@
SecuBox - ZKP Dashboard
+
-
+
diff --git a/scripts/fix-navbar.sh b/scripts/fix-navbar.sh
new file mode 100755
index 00000000..ef98733c
--- /dev/null
+++ b/scripts/fix-navbar.sh
@@ -0,0 +1,84 @@
+#!/bin/bash
+# ═══════════════════════════════════════════════════════════════
+# SecuBox Navbar Integration Script
+# Ensures all HTML pages have proper navbar/sidebar integration
+# ═══════════════════════════════════════════════════════════════
+
+set -e
+
+WWW_DIR="${1:-/usr/share/secubox/www}"
+FIXED=0
+ERRORS=0
+
+echo "🔧 SecuBox Navbar Integration Check"
+echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
+echo "Scanning: $WWW_DIR"
+echo ""
+
+for html in $(find "$WWW_DIR" -name "index.html" 2>/dev/null); do
+ module=$(dirname "$html" | xargs basename)
+ issues=""
+
+ # Check for crt-light.css
+ if ! grep -q 'crt-light.css' "$html" 2>/dev/null; then
+ issues+=" ⚠ Missing crt-light.css\n"
+ # Fix: Add before sidebar-light.css or at end of head
+ if grep -q 'sidebar-light.css' "$html"; then
+ sed -i 's||\n |' "$html"
+ else
+ sed -i 's|| \n|' "$html"
+ fi
+ fi
+
+ # Check for sidebar-light.css
+ if ! grep -q 'sidebar-light.css' "$html" 2>/dev/null; then
+ issues+=" ⚠ Missing sidebar-light.css\n"
+ sed -i 's|| \n|' "$html"
+ fi
+
+ # Check for sidebar.js
+ if ! grep -q '/shared/sidebar.js' "$html" 2>/dev/null; then
+ issues+=" ⚠ Missing /shared/sidebar.js\n"
+ # Check if it uses wrong path
+ if grep -q 'sidebar.js' "$html"; then
+ sed -i 's|src="[^"]*sidebar.js"|src="/shared/sidebar.js"|g' "$html"
+ else
+ sed -i 's|
' "$html" 2>/dev/null; then
+ issues+=" ⚠ Missing body class (should be crt-light)\n"
+ sed -i 's///g' "$html"
+ fi
+
+ # Check for old dark theme class
+ if grep -q 'crt-body crt-scanlines' "$html" 2>/dev/null; then
+ issues+=" ⚠ Old dark theme body class\n"
+ sed -i 's/class="crt-body crt-scanlines[^"]*"/class="crt-light"/g' "$html"
+ fi
+
+ # Check for sidebar nav element
+ if ! grep -q '