#!/usr/bin/env python3
"""
Отправка уведомления о тестировании запланированных постов
"""
import asyncio
import sys
from pathlib import Path

BASE_DIR = Path(__file__).resolve().parent
sys.path.insert(0, str(BASE_DIR))

from aiogram import Bot
from aiogram.client.default import DefaultBotProperties
from aiogram.enums import ParseMode
from aiogram.client.session.aiohttp import AiohttpSession

from config import BOT_TOKEN, ADMIN_USER_ID, get_proxy_url

async def send_notification():
    """Отправка уведомления"""
    proxy_url = get_proxy_url()
    
    if proxy_url:
        session = AiohttpSession(proxy=proxy_url)
        bot = Bot(token=BOT_TOKEN, session=session, default=DefaultBotProperties(parse_mode=ParseMode.HTML))
    else:
        bot = Bot(token=BOT_TOKEN, default=DefaultBotProperties(parse_mode=ParseMode.HTML))
    
    message = """
🎉 <b>НОВЫЙ ФУНКЦИОНАЛ ГОТОВ!</b>

✅ <b>Запланированные посты - РАБОТАЕТ!</b>

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

📅 <b>ЧТО СОЗДАНО:</b>

✅ Страница в веб-панели: /scheduled_posts
✅ API для создания постов
✅ Фоновая отправка по расписанию
✅ Уведомления о публикации
✅ Поддержка тем форума
✅ Поддержка фото

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

🧪 <b>ТЕСТОВЫЙ ПОСТ:</b>

Создан тестовый пост ID=1
Тема: Мемы
Время публикации: через 2 минуты
Текст: Юмор про мусор 😂

⏳ <b>Подожди 2 минуты и проверь:</b>
• Пост появится в теме "Мемы"
• Тебе придёт уведомление об успехе

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

🌐 <b>КАК ИСПОЛЬЗОВАТЬ:</b>

1. Зайди в веб-панель: http://localhost:8000
2. Логин: MatrixHasYou
3. Пароль: 5nMVkjd5nMVkjd
4. Кликни "📅 Запланированные посты"
5. Заполни форму:
   • Текст поста
   • Картинка (опционально)
   • Тема форума
   • Дата и время
6. Жми "Запланировать пост"

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

📋 <b>ДОСТУПНЫЕ ТЕМЫ:</b>

💬 Общий чат
😂 Мемы
📢 Важные объявления
🏛️ Собрания собственников
🗑️ Вывоз КГМ
🔍 Потеряшки
🚗 Для автовладельцев
📞 Важные телефоны
🔗 Ссылки
📝 Переписка с УО

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

🛡️ <b>БЕЗОПАСНОСТЬ:</b>

✅ Ни один существующий функционал не сломан
✅ Все изменения изолированы
✅ Можно откатиться через Gitea
✅ Логи всех действий

<i>После тестирования скажи - закоммичу в Gitea!</i>
    """
    
    try:
        await bot.send_message(ADMIN_USER_ID, message)
        print("✅ Уведомление отправлено!")
    except Exception as e:
        print(f"❌ Ошибка: {e}")
    finally:
        await bot.session.close()

if __name__ == '__main__':
    asyncio.run(send_notification())
