#!/bin/bash
# ╔══════════════════════════════════════════════════════════════════╗
# ║   Discord Guard Dashboard — cPanel Durdurma Scripti             ║
# ╚══════════════════════════════════════════════════════════════════╝

RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
CYAN='\033[0;36m'
NC='\033[0m'

SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
PID_FILE="$SCRIPT_DIR/.app.pid"

echo -e "${YELLOW}[!]${NC} Uygulama durduruluyor..."

if [ -f "$PID_FILE" ]; then
  PID=$(cat "$PID_FILE")
  if kill -0 "$PID" 2>/dev/null; then
    kill "$PID" 2>/dev/null
    sleep 2
    if kill -0 "$PID" 2>/dev/null; then
      kill -9 "$PID" 2>/dev/null
      echo -e "${YELLOW}[!]${NC} Zorla durduruldu (PID: $PID)"
    else
      echo -e "${GREEN}[✔]${NC} Uygulama durduruldu (PID: $PID)"
    fi
  else
    echo -e "${CYAN}[i]${NC} Süreç zaten çalışmıyordu"
  fi
  rm -f "$PID_FILE"
else
  echo -e "${CYAN}[i]${NC} PID dosyası bulunamadı (uygulama zaten kapalı)"
fi

# Port temizleme (opsiyonel)
APP_PORT="${PORT:-3000}"
if [ -f "$SCRIPT_DIR/.env" ]; then
  source "$SCRIPT_DIR/.env" 2>/dev/null || true
fi
APP_PORT="${PORT:-3000}"

if command -v lsof &>/dev/null; then
  PORT_PID=$(lsof -ti :"$APP_PORT" 2>/dev/null || true)
  if [ -n "$PORT_PID" ]; then
    kill "$PORT_PID" 2>/dev/null || true
    echo -e "${GREEN}[✔]${NC} Port $APP_PORT temizlendi"
  fi
fi

echo -e "${GREEN}[✔]${NC} Bitti."
