455 commands2 envUpdated 6h agoCreated Aug 26, 2026
commands/_order_member.js
javascript · 70 lines
1/**#command2name: /order_member3answer: 4keyboard: 5parse_mode: markdown6aliases: 7allow_only_group: false8need_reply: false9is_web: 010#command**/11 12let uid = "" + user.telegramid;13let args = params ? params.trim().split(" ") : [];14 15if (args.length < 2) {16 Bot.sendMessage(17 "⚠️ **نحوه ثبت سفارش ممبر:**\n\n" +18 "`/order_member [آیدی کانال] [تعداد سکه]`\n\n" +19 "مثال: `/order_member @MyChannel 20`",20 { parse_mode: "Markdown" }21 );22 return;23}24 25let rawChannel = args[0].trim();26let channelId = rawChannel.startsWith("@") ? rawChannel : "@" + rawChannel;27let chClean = channelId.replace("@", "");28let spendCoins = parseInt(args[1]);29 30if (isNaN(spendCoins) || spendCoins < 20) {31 Bot.sendMessage("❌ حداقل تعداد سکه برای ثبت سفارش **۲۰ سکه** (۱۰ ممبر) است.");32 return;33}34 35let curCoins = parseInt(await db.global.get("m_coins_" + uid) || 0);36if (curCoins < spendCoins) {37 Bot.sendMessage("❌ موجودی سکه شما کافی نیست! موجودی فعلی: **" + curCoins + " سکه**");38 return;39}40 41// کسر سکه42await db.global.set("m_coins_" + uid, curCoins - spendCoins);43let membersCount = Math.floor(spendCoins / 2);44 45// ذخیره در صف فعال46let rawTasks = await db.global.get("active_channel_tasks");47let taskList = [];48try {49 if (typeof rawTasks === 'string') taskList = JSON.parse(rawTasks);50 else if (Array.isArray(rawTasks)) taskList = rawTasks;51} catch(e) { taskList = []; }52 53taskList.push({54 channel: "@" + chClean,55 remaining: membersCount,56 total: membersCount,57 ownerUid: uid,58 date: Date.now()59});60 61await db.global.set("active_channel_tasks", JSON.stringify(taskList));62 63Bot.sendMessage(64 "✅ **سفارش شما با موفقیت ثبت شد و در لیست تسکها قرار گرفت!** 🚀\n\n" +65 "📢 کانال: `@" + chClean + "`\n" +66 "👥 تعداد درخواستی: **" + membersCount + " ممبر واقعی**\n" +67 "💰 سکه کسر شده: **" + spendCoins + " سکه**\n\n" +68 "⚠️ **یادآوری مهم:** حتماً مطمئن شوید ربات **@ZorenixAI_bot** در کانال شما **ادمین (Admin)** است تا عضویت کاربران تایید شود!",69 { parse_mode: "Markdown" }70);