#!/bin/bash

echo "=== ИСПРАВЛЕНИЕ SHADOWSOCKS ==="
echo ""

# 1. Проверка и перезапуск Shadowsocks
echo "1. Перезапуск Shadowsocks..."
launchctl unload ~/Library/LaunchAgents/com.shadowsocks.local.plist 2>/dev/null
sleep 1
launchctl load ~/Library/LaunchAgents/com.shadowsocks.local.plist
sleep 2

if launchctl list | grep -q shadowsocks; then
    echo "   ✅ Shadowsocks запущен"
else
    echo "   ❌ Ошибка запуска Shadowsocks"
    exit 1
fi

# 2. Настройка системного прокси
echo ""
echo "2. Настройка системного прокси..."
INTERFACE=$(networksetup -listallnetworkservices | grep -E "Wi-Fi|Ethernet" | head -1)
networksetup -setsocksfirewallproxy "$INTERFACE" 127.0.0.1 1080
networksetup -setsocksfirewallproxystate "$INTERFACE" on

PROXY_STATUS=$(networksetup -getsocksfirewallproxy "$INTERFACE" | grep "Enabled:" | awk '{print $2}')
if [ "$PROXY_STATUS" = "Yes" ]; then
    echo "   ✅ Системный прокси включен"
else
    echo "   ❌ Ошибка настройки прокси"
    exit 1
fi

# 3. Проверка
echo ""
echo "3. Проверка подключения..."
sleep 2
SS_IP=$(curl -s --socks5 127.0.0.1:1080 --max-time 5 ifconfig.me 2>/dev/null)

if [ -n "$SS_IP" ] && [ "$SS_IP" = "209.38.32.21" ]; then
    echo "   ✅ Shadowsocks работает: IP = $SS_IP"
    echo ""
    echo "✅ ВСЕ ИСПРАВЛЕНО!"
    echo ""
    echo "📋 Следующие шаги:"
    echo "1. Полностью закройте Chrome (Cmd+Q)"
    echo "2. Откройте Chrome заново"
    echo "3. Проверьте IP: https://whatismyipaddress.com/"
    echo "   Должен показать: 209.38.32.21"
else
    echo "   ⚠️ Shadowsocks не отвечает правильно"
    echo "   Проверьте логи: tail -f /tmp/shadowsocks.error.log"
fi
