188 lines
6.3 KiB
Bash
188 lines
6.3 KiB
Bash
|
|
#!/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"
|