#!/bin/bash

# Media Vault Quick Setup Script for macOS/Linux

echo ""
echo "======================================================"
echo "   MEDIA VAULT - Quick Setup"
echo "======================================================"
echo ""

# Check if Node.js is installed
echo "[1/4] Checking Node.js..."
if ! command -v node &> /dev/null; then
    echo "[ERROR] Node.js is not installed!"
    echo ""
    echo "Please download and install Node.js from:"
    echo "https://nodejs.org/"
    echo ""
    exit 1
fi
echo "[OK] Node.js is installed: $(node --version)"

# Check if Python is installed
echo ""
echo "[2/4] Checking Python..."
if ! command -v python3 &> /dev/null; then
    echo "[ERROR] Python 3 is not installed!"
    echo ""
    echo "Please install Python 3:"
    echo "  macOS: brew install python3"
    echo "  Ubuntu/Debian: sudo apt install python3 python3-pip"
    echo ""
    exit 1
fi
echo "[OK] Python is installed: $(python3 --version)"

# Install npm dependencies
echo ""
echo "[3/4] Installing Node.js dependencies..."
echo "This may take a minute..."
npm install
if [ $? -ne 0 ]; then
    echo "[ERROR] Failed to install npm dependencies"
    exit 1
fi
echo "[OK] npm dependencies installed"

# Install yt-dlp
echo ""
echo "[4/4] Installing yt-dlp..."
echo "This may take a minute..."
pip3 install yt-dlp --upgrade
if [ $? -ne 0 ]; then
    echo "[WARNING] Failed to install yt-dlp via pip3"
    echo "Trying alternative installation method..."
    python3 -m pip install --user yt-dlp --upgrade
fi
echo "[OK] yt-dlp installed or upgraded"

# Verify yt-dlp
echo ""
echo "Verifying installation..."
if command -v yt-dlp &> /dev/null; then
    echo "[OK] yt-dlp version: $(yt-dlp --version)"
else
    echo "[WARNING] yt-dlp not found in PATH"
    echo "Try adding ~/.local/bin to your PATH or restart your terminal"
fi

# Complete
echo ""
echo "======================================================"
echo "   SETUP COMPLETE!"
echo "======================================================"
echo ""
echo "To start the server, run:"
echo "  npm start"
echo ""
echo "Then open your browser to:"
echo "  http://localhost:3000"
echo ""
