#!/bin/bash
# 9Router Model Scanner - Cross-platform launcher
# Usage: ./run-scan.sh
# Or: 9router-manager scan (after installation)

set -e

SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
cd "$SCRIPT_DIR"

# Try CLI first if installed
if command -v 9router-manager &> /dev/null; then
    9router-manager scan
    exit $?
fi

# Fallback: direct Python execution
# Load .env if exists
ENV_FILE="$SCRIPT_DIR/.env"
if [[ -f "$ENV_FILE" ]]; then
    echo "Loading config from .env..."
    set -a
    source "$ENV_FILE"
    set +a
fi

# Check password
if [[ -z "$NINEROUTER_PASSWORD" ]]; then
    echo "ERROR: NINEROUTER_PASSWORD is not set!"
    echo ""
    echo "Setup instructions:"
    echo "  1. cp .env.template .env"
    echo "  2. Edit .env, set NINEROUTER_PASSWORD"
    echo ""
    exit 1
fi

# Detect Python
PYTHON_CMD=""
if command -v python3 &> /dev/null; then
    PYTHON_CMD="python3"
elif command -v python &> /dev/null; then
    PYTHON_CMD="python"
else
    echo "ERROR: Python not found!"
    echo "Please install Python or set PYTHON_EXE in .env"
    exit 1
fi

echo ""
echo "Running combo scan..."
echo ""

"$PYTHON_CMD" "$SCRIPT_DIR/scan.py"

echo ""
echo "Scan completed."