indrajitghosh20006/Igstore_01botPublic Β· Bot Template
AIThe bot provides an admin interface for a digital store, allowing the owner or coβadmins to add balances, products, plans, and categories. It supports payment workflows via UPI and Binance Pay, automatically generating QR codes and handling manual approval of deposits. The code patches inline keyboards to use premium emoji icons and includes helper functions for user and bot properties. Overall, it serves as a commerce management tool for a Telegram-based storefront.
Commercestoreadminbalanceproductplancategory
170 commands0 envUpdated 8h agoCreated Oct 30, 2026
commands/_view_keys_list.js
javascript Β· 126 lines
1/**#command2name: /view_keys_list3answer: 4keyboard: 5parse_mode: markdown6aliases: 7allow_only_group: false8need_reply: false9is_web: 010#command**/11 12// PREMIUM BUTTON ICONS13(function(){14 try {15 if (!JSON.__premiumPatched) {16 var __origStringify = JSON.stringify;17 JSON.stringify = function(value, replacer, space) {18 try {19 if (value && value.inline_keyboard && Array.isArray(value.inline_keyboard)) {20 var premiumIds = [21 "6143444134125379822",22 "6091379307907652768",23 "6147534454819661264",24 "6147817325660741985",25 "6235683689292897318",26 "6102856637343600044"27 ];28 var rows = value.inline_keyboard.map(function(row, ri) {29 if (!Array.isArray(row)) return row;30 return row.map(function(btn, bi) {31 if (!btn || typeof btn !== "object") return btn;32 var copy = {};33 for (var k in btn) copy[k] = btn[k];34 if (!copy.icon_custom_emoji_id) copy.icon_custom_emoji_id = premiumIds[(ri + bi) % premiumIds.length];35 return copy;36 });37 });38 var cloned = {};39 for (var key in value) cloned[key] = value[key];40 cloned.inline_keyboard = rows;41 return __origStringify.call(JSON, cloned, replacer, space);42 }43 } catch (e) {}44 return __origStringify.call(JSON, value, replacer, space);45 };46 JSON.__premiumPatched = true;47 }48 } catch (e) {}49})();50 51 52 53try {54 var adminId = "7839151435";55 if (String(chat.chatid) !== adminId) return;56 57 var callbackId = request ? request.id : null;58 var dataStr = params ? params.trim() : "";59 60 if (!dataStr) {61 var cbData = request && request.callback_query ? request.callback_query.data : "";62 dataStr = cbData.replace("/view_keys_list ", "");63 }64 65 if (!dataStr) {66 if (callbackId) Api.answerCallbackQuery({ callback_query_id: callbackId, text: "β Empty execution data string!", show_alert: true });67 return;68 }69 70 var parts = dataStr.split("|");71 var prodName = parts[0].trim();72 var cleanPlanDays = parts[1].trim();73 74 // Fetch from key properties tables75 var stockKeyText = "stock_" + prodName + "_" + cleanPlanDays;76 var keyStock = Bot.getProperty(stockKeyText) || [];77 78 if (keyStock.length === 0) {79 if (callbackId) {80 Api.answerCallbackQuery({ callback_query_id: callbackId, text: "β Is plan me currently 0 keys hain!", show_alert: true });81 } else {82 Bot.sendMessage("β Stock empty for: " + prodName + " (" + cleanPlanDays + ")");83 }84 return;85 }86 87 var reportText = "<blockquote><b>π LIVE ACTIVE KEYS LIST</b>\n\n" +88 "β’ <b>Product:</b> <code>" + prodName.toUpperCase() + "</code>\n" +89 "β’ <b>Plan:</b> <code>" + cleanPlanDays + "</code>\n" +90 "β’ <b>Total Available:</b> <code>" + keyStock.length + " Keys</code>\n" +91 "ββββββββββββββββββββββββββ\n";92 93 for (var i = 0; i < keyStock.length; i++) {94 reportText += (i + 1) + ". <code>" + keyStock[i] + "</code>\n";95 }96 97 reportText += "</blockquote>";98 99 var inlineButtons = [100 [101 { text: "β¬
οΈ Back to Stock List", callback_data: "/allkey" }102 ]103 ];104 105 if (request && request.message) {106 HTTP.post({107 url: "https://api.telegram.org/bot" + bot.token + "/editMessageText",108 body: {109 chat_id: String(chat.chatid),110 message_id: Number(request.message.message_id),111 text: reportText,112 parse_mode: "HTML",113 reply_markup: JSON.stringify({ inline_keyboard: inlineButtons })114 }115 });116 } else {117 Bot.sendMessage(reportText, { parse_mode: "HTML", reply_markup: JSON.stringify({ inline_keyboard: inlineButtons }) });118 }119 120 if (callbackId) {121 Api.answerCallbackQuery({ callback_query_id: callbackId, text: "Keys fetched!" });122 }123 124} catch (err) {125 Bot.sendMessage("β οΈ Rendering Keys List Mismatch: " + err.message);126}