455 commands2 envUpdated 6h agoCreated Aug 26, 2026
commands/my_orders.js
javascript · 68 lines
1/**#command2name: my_orders3answer: 4keyboard: 5parse_mode: markdown6aliases: 7allow_only_group: false8need_reply: false9is_web: 010#command**/11 12try { Api.answerCallbackQuery({}); } catch(e) {}13 14let uid = "" + user.telegramid;15 16let rawTasks = await db.global.get("active_channel_tasks");17let taskList = [];18try { taskList = typeof rawTasks === 'string' ? JSON.parse(rawTasks) : (rawTasks || []); } catch(e) { taskList = []; }19 20let userOrders = taskList.filter(t => t.ownerUid === uid);21 22if (userOrders.length === 0) {23 Api.sendMessage({24 text: "📊 **شما در حال حاضر هیچ سفارش و آگهی فعالی ندارید!**\n\nبرای ثبت سفارش جدید از دکمه زیر استفاده کنید 👇",25 parse_mode: "Markdown",26 reply_markup: {27 inline_keyboard: [28 [{ text: "📢 ثبت سفارش ممبر جدید", callback_data: "order_member_guide" }],29 [{ text: "🔙 بازگشت به منوی ممبرگیر", callback_data: "/freemember" }]30 ]31 }32 });33 return;34}35 36let reportText = "";37let buttons = [];38 39for (let i = 0; i < userOrders.length; i++) {40 let order = userOrders[i];41 let chClean = order.channel.replace("@", "");42 let completed = order.total - order.remaining;43 let slotNum = i + 1;44 45 // ذخیره آیدی کانال در اسلات کاربر46 await db.global.set("cancel_slot_" + slotNum + "_" + uid, chClean);47 48 reportText += "📢 **آگهی شماره " + slotNum + ":** `" + order.channel + "`\n" +49 "👥 جذبشده: **" + completed + " از " + order.total + " ممبر**\n" +50 "⏳ باقیمانده: **" + order.remaining + " ممبر** (قابل بازگشت: " + (order.remaining * 2) + " سکه)\n\n";51 52 buttons.push([53 { text: "❌ لغو آگهی شماره " + slotNum + " (@" + chClean + ")", callback_data: "cancel_ad_" + slotNum }54 ]);55}56 57buttons.push([{ text: "✏️ راهنمای تغییر آیدی کانال", callback_data: "edit_channel_guide" }]);58buttons.push([{ text: "🔙 بازگشت به منوی اصلی", callback_data: "/freemember" }]);59 60let text = "📊 **داشبورد مدیریت آگهیها و سفارشات شما:**\n\n" +61 reportText +62 "👇 جهت لغو سفارش و پس گرفتن سکهها، روی دکمه لغو آگهی بزنید:";63 64Api.sendMessage({65 text: text,66 parse_mode: "Markdown",67 reply_markup: { inline_keyboard: buttons }68});