yaainnnxitstore/YASIN_XIT_BOTPublic · Bot Template
AIYASIN XIT FREE KEY appears to be a Telegram automation bot. Commands include /menu, /addfund, /confirm_buyitem, /rembal, /sendorderkey_input, /removeproduct, /add_reseller, /addkey. Observed in code: messaging, keyboards, payments, games, libs, web.
Utilityutility
140 commands0 envUpdated 1mo agoCreated Sep 11, 2026
commands/_coupons.js
javascript · 115 lines
1/**#command2name: /coupons3answer: 4keyboard: 5parse_mode: markdown6aliases: 7allow_only_group: false8need_reply: false9is_web: 010#command**/11 12var __swfUpdate = (typeof update !== "undefined" && update) ? update : null;13var __swfCb = (__swfUpdate && __swfUpdate.callback_query) ? __swfUpdate.callback_query : null;14var __swfCbMsg = (__swfCb && __swfCb.message) ? __swfCb.message : null;15var __swfMsgId = __swfCbMsg && __swfCbMsg.message_id ? Number(__swfCbMsg.message_id) : 0;16var __swfCbId = __swfCb && __swfCb.id ? String(__swfCb.id) : "";17try {18 if (typeof request !== "undefined" && request && __swfCb) {19 if (__swfCb.message) request.message = __swfCb.message;20 if (!request.id && __swfCb.id) request.id = __swfCb.id;21 }22} catch(__swf_norm_err) {}23function __swfEditMessage(a) {24 a = a || {};25 var mid = Number(a.message_id || __swfMsgId || 0);26 var cid = a.chat_id || (typeof chat !== "undefined" && chat ? (chat.id || chat.chatid) : null);27 if (!mid || !cid) throw new Error("Callback message ID not found");28 var markup = a.reply_markup;29 if (typeof markup === "string") { try { markup = JSON.parse(markup); } catch(_) {} }30 var base = {chat_id:cid,message_id:mid,parse_mode:a.parse_mode,reply_markup:markup};31 var cm = __swfCbMsg;32 if (cm && (cm.photo || cm.video || cm.document || cm.audio || cm.animation)) {33 return Api.editMessageCaption({chat_id:cid,message_id:mid,caption:String(a.text == null ? "" : a.text),parse_mode:a.parse_mode,reply_markup:markup});34 }35 return Api.editMessageText({chat_id:cid,message_id:mid,text:String(a.text == null ? "" : a.text),parse_mode:a.parse_mode,reply_markup:markup});36}37function __uiSend(text, opts) {38 opts = opts || {};39 var req = (typeof request !== "undefined" && request) ? request : null;40 var chatId = (typeof chat !== "undefined" && chat && chat.chatid) ? chat.chatid : null;41 var isCallback = !!__swfCb;42 var mid = 0;43 if (isCallback && update.callback_query.message && update.callback_query.message.message_id) mid = Number(update.callback_query.message.message_id);44 if (!mid) { try { mid = Number(User.getProperty("pending_menu_message_id") || User.getProperty("main_menu_message_id") || User.getProperty("support_message_id") || 0); } catch(e0) { mid = 0; } }45 var markup = opts.reply_markup;46 if (markup && typeof markup !== "string") { try { markup = JSON.stringify(markup); } catch(e1) {} }47 var textValue = String(text == null ? "" : text);48 if (mid && chatId) {49 try {50 __swfEditMessage({chat_id:chatId,message_id:mid,text:textValue,parse_mode:opts.parse_mode,reply_markup:markup});51 try { User.setProperty("main_menu_message_id",String(mid),"string"); User.setProperty("pending_menu_message_id",String(mid),"string"); } catch(se) {}52 return true;53 } catch(e2) {54 var s=String(e2).toLowerCase();55 if(s.indexOf("message is not modified")>=0 || s.indexOf("not modified")>=0) return true;56 if(isCallback && update.callback_query.message && update.callback_query.message.photo) {57 try { Api.editMessageCaption({chat_id:chatId,message_id:mid,caption:textValue,parse_mode:opts.parse_mode,reply_markup:markup}); return true; } catch(e3) {58 var s3=String(e3).toLowerCase(); if(s3.indexOf("not modified")>=0) return true;59 }60 }61 if(isCallback) { try { Api.answerCallbackQuery({callback_query_id:String(update.callback_query.id),text:"⚠️ Could not update the screen.",show_alert:true}); } catch(e4) {} return false; }62 }63 }64 if (isCallback) { try { Api.answerCallbackQuery({callback_query_id:String(update.callback_query.id),text:"⚠️ Screen message not found.",show_alert:true}); } catch(e5) {} return false; }65 try {66 var sent=Api.sendMessage({chat_id:chatId,text:textValue,parse_mode:opts.parse_mode,reply_markup:markup});67 try { if(sent&&sent.message_id){User.setProperty("pending_menu_message_id",String(sent.message_id),"string");User.setProperty("main_menu_message_id",String(sent.message_id),"string");} } catch(e6) {}68 return true;69 } catch(e7) { return false; }70}71try {72 var ownerId = Bot.getProperty("owner_id") || "8225479428";73 var isCoAdmin = Bot.getProperty("co_admin_" + String(chat.chatid));74 if (String(chat.chatid) !== ownerId && !isCoAdmin) {75 __uiSend("❌ This section is available to the administrator only.");76 return;77 }78 var couponList = Bot.getProperty("coupon_list") || [];79 if (couponList.length === 0) {80 __uiSend("<blockquote>🎟 <b>No coupons have been created yet.</b>\n<i>Use the Create Coupon option in the panel to create one.</i></blockquote>", { parse_mode: "HTML" });81 return;82 }83 var text = "<blockquote>🎟 <b>ALL COUPONS</b></blockquote>\n━━━━━━━━━━━━━━━━━━━━━\n\n";84 var buttons = [];85 var __cShown = 0;86 for (var i = 0; i < couponList.length && __cShown < 15; i++) {87 var code = couponList[i];88 var c = Bot.getProperty("coupon_" + code);89 if (!c) continue;90 var claimedCount = Array.isArray(c.claimedBy) ? c.claimedBy.length : 0;91 var statusLabel = c.isPaused ? "⏸ Paused" : "✅ Active";92 var scopeLabel = c.scope === "global" ? "🌍 Global" : "📦 " + (c.productName || "?") + " (" + (c.duration || "?") + ")";93 __cShown++;94 var expLabel = Number(c.expiresAt || 0) > 095 ? (Date.now() > Number(c.expiresAt) ? "⌛ Expired" : "📅 until " + new Date(Number(c.expiresAt)).toLocaleDateString("en-GB",{day:"2-digit",month:"short",year:"numeric"}))96 : "♾️ No expiry";97 text += "🏷 <b>" + code + "</b> — " + statusLabel + "\n" +98 "💸 " + c.discountPercent + "% off | 👥 " + claimedCount + "/" + c.maxClaims + " claimed\n" +99 scopeLabel + " | " + expLabel + "\n\n";100 buttons.push([101 { text: (c.isPaused ? "▶ Resume" : "⏸ Pause") + " " + code, callback_data: "/pause_coupon " + code, style: c.isPaused ? "success" : "primary" },102 { text: "🗑 Delete " + code, callback_data: "/delete_coupon " + code }103 ]);104 }105 if (couponList.length > __cShown) text += "<i>…and " + (couponList.length - __cShown) + " more coupons.</i>\n\n";106 buttons.push([{ text: "🔙 Admin Panel", callback_data: "/admin" }]);107 Api.sendMessage({108 chat_id: chat.chatid,109 text: text,110 parse_mode: "HTML",111 reply_markup: JSON.stringify({ inline_keyboard: buttons })112 });113} catch (err) {114 __uiSend("⚠️ Error: " + err.message);115}