- Fixed minified RPC declaration in secubox/modules.js that caused false positive in validation - Added 30 missing menu entries across 10 modules: * bandwidth-manager: clients, schedules * client-guardian: zones, portal, logs, alerts, parental * crowdsec-dashboard: metrics * netdata-dashboard: system, processes, realtime, network * netifyd-dashboard: talkers, risks, devices * network-modes: router, accesspoint, relay, sniffer * secubox: settings * system-hub: components, diagnostics, health, remote, settings * vhost-manager: internal, ssl, redirects * wireguard-dashboard: traffic, config - All modules now pass comprehensive validation (0 errors, 0 warnings) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
188 lines
6.3 KiB
Bash
Executable File
188 lines
6.3 KiB
Bash
Executable File
#!/bin/bash
|
|
# Show SecuBox Module Status
|
|
# Quick overview of all modules and their implementation status
|
|
|
|
set -e
|
|
|
|
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
|
|
ROOT_DIR="$(cd "$SCRIPT_DIR/.." && pwd)"
|
|
|
|
echo "========================================"
|
|
echo "SecuBox Module Status"
|
|
echo "========================================"
|
|
echo
|
|
|
|
# Count modules
|
|
total_modules=$(find "$ROOT_DIR" -maxdepth 1 -type d -name "luci-app-*" | wc -l)
|
|
echo "Total Modules: $total_modules"
|
|
echo
|
|
|
|
# Show modules by category
|
|
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
|
echo "Core Control Modules"
|
|
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
|
echo
|
|
|
|
modules_core=(
|
|
"secubox:SecuBox Central Hub"
|
|
"system-hub:System Control Dashboard"
|
|
"traffic-shaper:Advanced QoS & Traffic Shaping"
|
|
)
|
|
|
|
for module_info in "${modules_core[@]}"; do
|
|
IFS=':' read -r module desc <<< "$module_info"
|
|
if [ -d "$ROOT_DIR/luci-app-$module" ]; then
|
|
views=$(find "$ROOT_DIR/luci-app-$module/htdocs/luci-static/resources/view" -name "*.js" 2>/dev/null | wc -l)
|
|
echo "✅ luci-app-$module"
|
|
echo " $desc"
|
|
echo " Views: $views"
|
|
echo
|
|
else
|
|
echo "❌ luci-app-$module (NOT FOUND)"
|
|
echo
|
|
fi
|
|
done
|
|
|
|
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
|
echo "Security & Monitoring"
|
|
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
|
echo
|
|
|
|
modules_security=(
|
|
"crowdsec-dashboard:CrowdSec Security"
|
|
"netdata-dashboard:System Monitoring"
|
|
)
|
|
|
|
for module_info in "${modules_security[@]}"; do
|
|
IFS=':' read -r module desc <<< "$module_info"
|
|
if [ -d "$ROOT_DIR/luci-app-$module" ]; then
|
|
views=$(find "$ROOT_DIR/luci-app-$module/htdocs/luci-static/resources/view" -name "*.js" 2>/dev/null | wc -l)
|
|
echo "✅ luci-app-$module"
|
|
echo " $desc"
|
|
echo " Views: $views"
|
|
echo
|
|
else
|
|
echo "❌ luci-app-$module (NOT FOUND)"
|
|
echo
|
|
fi
|
|
done
|
|
|
|
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
|
echo "Network Intelligence"
|
|
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
|
echo
|
|
|
|
modules_network=(
|
|
"netifyd-dashboard:Deep Packet Inspection"
|
|
"network-modes:Network Mode Configuration"
|
|
)
|
|
|
|
for module_info in "${modules_network[@]}"; do
|
|
IFS=':' read -r module desc <<< "$module_info"
|
|
if [ -d "$ROOT_DIR/luci-app-$module" ]; then
|
|
views=$(find "$ROOT_DIR/luci-app-$module/htdocs/luci-static/resources/view" -name "*.js" 2>/dev/null | wc -l)
|
|
echo "✅ luci-app-$module"
|
|
echo " $desc"
|
|
echo " Views: $views"
|
|
echo
|
|
else
|
|
echo "❌ luci-app-$module (NOT FOUND)"
|
|
echo
|
|
fi
|
|
done
|
|
|
|
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
|
echo "VPN & Access Control"
|
|
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
|
echo
|
|
|
|
modules_vpn=(
|
|
"wireguard-dashboard:WireGuard VPN"
|
|
"client-guardian:Network Access Control"
|
|
"auth-guardian:Advanced Authentication"
|
|
)
|
|
|
|
for module_info in "${modules_vpn[@]}"; do
|
|
IFS=':' read -r module desc <<< "$module_info"
|
|
if [ -d "$ROOT_DIR/luci-app-$module" ]; then
|
|
views=$(find "$ROOT_DIR/luci-app-$module/htdocs/luci-static/resources/view" -name "*.js" 2>/dev/null | wc -l)
|
|
echo "✅ luci-app-$module"
|
|
echo " $desc"
|
|
echo " Views: $views"
|
|
echo
|
|
else
|
|
echo "❌ luci-app-$module (NOT FOUND)"
|
|
echo
|
|
fi
|
|
done
|
|
|
|
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
|
echo "Bandwidth & Traffic Management"
|
|
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
|
echo
|
|
|
|
modules_bandwidth=(
|
|
"bandwidth-manager:Bandwidth & Quota Management"
|
|
"media-flow:Media Traffic Detection"
|
|
)
|
|
|
|
for module_info in "${modules_bandwidth[@]}"; do
|
|
IFS=':' read -r module desc <<< "$module_info"
|
|
if [ -d "$ROOT_DIR/luci-app-$module" ]; then
|
|
views=$(find "$ROOT_DIR/luci-app-$module/htdocs/luci-static/resources/view" -name "*.js" 2>/dev/null | wc -l)
|
|
echo "✅ luci-app-$module"
|
|
echo " $desc"
|
|
echo " Views: $views"
|
|
echo
|
|
else
|
|
echo "❌ luci-app-$module (NOT FOUND)"
|
|
echo
|
|
fi
|
|
done
|
|
|
|
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
|
echo "Performance & Services"
|
|
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
|
echo
|
|
|
|
modules_perf=(
|
|
"cdn-cache:CDN Proxy Cache"
|
|
"vhost-manager:Virtual Host Manager"
|
|
)
|
|
|
|
for module_info in "${modules_perf[@]}"; do
|
|
IFS=':' read -r module desc <<< "$module_info"
|
|
if [ -d "$ROOT_DIR/luci-app-$module" ]; then
|
|
views=$(find "$ROOT_DIR/luci-app-$module/htdocs/luci-static/resources/view" -name "*.js" 2>/dev/null | wc -l)
|
|
echo "✅ luci-app-$module"
|
|
echo " $desc"
|
|
echo " Views: $views"
|
|
echo
|
|
else
|
|
echo "❌ luci-app-$module (NOT FOUND)"
|
|
echo
|
|
fi
|
|
done
|
|
|
|
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
|
echo "Summary"
|
|
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
|
echo
|
|
|
|
# Count files
|
|
js_files=$(find "$ROOT_DIR"/luci-app-*/htdocs -name "*.js" 2>/dev/null | wc -l)
|
|
rpcd_files=$(find "$ROOT_DIR"/luci-app-*/root/usr/libexec/rpcd -type f 2>/dev/null | wc -l)
|
|
json_files=$(find "$ROOT_DIR"/luci-app-*/root/usr/share -name "*.json" 2>/dev/null | wc -l)
|
|
|
|
echo "Total JavaScript files: $js_files"
|
|
echo "Total RPCD backends: $rpcd_files"
|
|
echo "Total JSON config files: $json_files"
|
|
echo
|
|
|
|
# Recent commits
|
|
echo "Recent Development:"
|
|
git log --oneline --decorate -5 2>/dev/null || echo "Git history not available"
|
|
echo
|
|
|
|
echo "For detailed status, see: MODULE_STATUS.md"
|