indrajitghosh20006/Igstore_01botPublic Β· Bot Template

ProfileTelegram

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
Back to folder

commands/_deletekey_now.js

javascript Β· 137 lines

Raw
1/**#command2name: /deletekey_now3answer: 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  59  // Data nikalna callback params se60  var dataStr = params ? params.trim() : "";61  if (!dataStr) return;62 63  var parts = dataStr.split("|");64  var keyIndex = Number(parts[0]);65  var prodName = parts[1];66  var cleanPlanDays = parts[2];67 68  var stockKeyText = "stock_" + prodName + "_" + cleanPlanDays;69  var keyStock = Bot.getProperty(stockKeyText) || [];70 71  if (keyStock.length === 0 || keyIndex >= keyStock.length) {72    if (callbackId) {73      Api.answerCallbackQuery({ callback_query_id: callbackId, text: "❌ Key already deleted or missing!", show_alert: true });74    }75    return;76  }77 78  // Key ko array se delete karna79  var removedKeyText = keyStock[keyIndex];80  keyStock.splice(keyIndex, 1);81  82  // Updated text stock ko save karna83  Bot.setProperty(stockKeyText, keyStock, "json");84 85  // πŸ”„ INDEX BACKUP PIPELINE SYNC (For /buyitem sync)86  var productList = Bot.getProperty("stored_products") || [];87  var prodIdx = -1;88  var planIdx = -1;89  var pDaysNumOnly = cleanPlanDays.replace("_Day", "").trim();90 91  for (var i = 0; i < productList.length; i++) {92    if (productList[i].name.trim().toLowerCase() === prodName.toLowerCase()) {93      prodIdx = i;94      break;95    }96  }97  if (prodIdx !== -1) {98    var plans = productList[prodIdx].plans || [];99    for (var j = 0; j < plans.length; j++) {100      if (String(plans[j].days).trim() === pDaysNumOnly) {101        planIdx = j;102        break;103      }104    }105  }106  if (prodIdx !== -1 && planIdx !== -1) {107    var stockKeyIndex = "stock_" + prodIdx + "_" + planIdx;108    Bot.setProperty(stockKeyIndex, keyStock, "json");109  }110 111  // Final Response & UI update112  var successText = "<blockquote><b>πŸ—‘οΈ KEY SUCCESSFULLY REMOVED</b>\n\n" +113                    "β€’ <b>Product:</b> <code>" + prodName + "</code>\n" +114                    "β€’ <b>Plan:</b> <code>" + cleanPlanDays + "</code>\n" +115                    "β€’ <b>Removed Key:</b> <code>" + removedKeyText + "</code>\n" +116                    "β€’ <b>Remaining Stock:</b> <code>" + keyStock.length + " Keys</code></blockquote>";117 118  // Message text edit karke confirm karna119  if (request && request.message) {120    HTTP.post({121      url: "https://api.telegram.org/bot" + bot.token + "/editMessageText",122      body: {123        chat_id: String(chat.chatid),124        message_id: Number(request.message.message_id),125        text: successText,126        parse_mode: "HTML"127      }128    });129  }130 131  if (callbackId) {132    Api.answerCallbackQuery({ callback_query_id: callbackId, text: "βœ… Key Removed!" });133  }134 135} catch (err) {136  Bot.sendMessage("Error: " + err.message);137}