import telebot

TOKEN = '7903964387:AAHDjppRlZ2bqy2CcUB64Hq8EB5IR5QAVlE'
ADMIN_CHANNEL_ID = -1002615930057  # آیدی عددی کانال ادمین با منفی

bot = telebot.TeleBot(TOKEN)
user_states = {}

STEP_CURRENCY = 1
STEP_AMOUNT = 2
STEP_WALLET = 3

@bot.message_handler(commands=['start'])
def send_welcome(message):
    bot.reply_to(message, "سلام! برای ثبت سفارش /order را بزنید یا برای ثبت نام /register را ارسال کنید.")

@bot.message_handler(commands=['order'])
def start_order(message):
    user_states[message.chat.id] = STEP_CURRENCY
    bot.reply_to(message, "چه ارزی میخوای بفروشی؟ (USDT / EUR / TRY / Toman)")

@bot.message_handler(commands=['register'])
def register_user(message):
    bot.reply_to(message, "ثبت نام شما انجام شد ✅ برای شروع ثبت سفارش /order را بزنید.")

@bot.message_handler(func=lambda m: True)
def handle_message(message):
    chat_id = message.chat.id
    step = user_states.get(chat_id)

    if step == STEP_CURRENCY:
        user_states[chat_id] = {'currency': message.text, 'step': STEP_AMOUNT}
        bot.reply_to(message, "مقدار فروش رو وارد کن:")

    elif isinstance(step, dict) and step.get('step') == STEP_AMOUNT:
        user_states[chat_id]['amount'] = message.text
        user_states[chat_id]['step'] = STEP_WALLET
        bot.reply_to(message, "شماره حساب یا ولت رو بفرست:")

    elif isinstance(step, dict) and step.get('step') == STEP_WALLET:
        currency = user_states[chat_id]['currency']
        amount = user_states[chat_id]['amount']
        wallet = message.text

        # ارسال به کانال ادمین
        order_text = (
            f"✅ سفارش جدید\n"
            f"ارز: {currency}\n"
            f"مقدار: {amount}\n"
            f"حساب/ولت: {wallet}\n"
            f"آیدی کاربر: @{message.from_user.username or message.from_user.id}"
        )
        bot.send_message(ADMIN_CHANNEL_ID, order_text)
        bot.reply_to(message, "سفارش شما ثبت شد و برای تایید به ادمین ارسال شد.")
        user_states.pop(chat_id, None)

bot.polling()