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/_addcat_id.js
javascript Β· 102 lines
1/**#command2name: /addcat_id3answer: 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 (!chat || String(chat.chatid) !== adminId) return;56 57 // π‘οΈ CRASH FIX: Pehle check karenge ki message null toh nahi hai58 if (!message) {59 Bot.sendMessage("βοΈ <b>Kripya Category ki details text me likh kar bhejiye!</b>\n\n<b>Sahi Format:</b>\n<code>/addcat_id [Emoji_ID] [Category Name]</code>\n\n<b>Example:</b>\n<code>/addcat_id 5323261730283863478 Facebook Id</code>", {parse_mode: "HTML"});60 return;61 }62 63 var cleanMessage = message.trim();64 65 // Command string removal66 if (cleanMessage.indexOf("/addcat_id") === 0) {67 cleanMessage = cleanMessage.replace("/addcat_id", "").trim();68 }69 70 var parts = cleanMessage.split(" ");71 if (parts.length < 2 || !parts[0] || isNaN(parts[0].substring(0, 3))) {72 Bot.sendMessage("β οΈ <b>Format Galat Hai!</b>\n\n<b>Sahi Format:</b>\n<code>[Emoji_ID] [Category Name]</code>\n\n<b>Example:</b>\n<code>5323261730283863478 Facebook Id</code>", {parse_mode: "HTML"});73 return;74 }75 76 var emojiId = parts[0].trim();77 var catName = parts.slice(1).join(" ").trim();78 79 // Dynamic safe slug creation80 var catSlug = catName.toLowerCase().replace(/[^a-z0-9]/g, "");81 82 var categories = Bot.getProperty("ff_categories");83 if (!categories || typeof categories !== "object") {84 categories = {};85 }86 87 // FIXED: Yahan emoji_id property save hogi jo menu script se synced hai88 categories[catSlug] = {89 name: catName,90 emoji_id: emojiId, 91 normal_price: 0,92 reseller_price: 093 };94 95 Bot.setProperty("ff_categories", categories, "json");96 Bot.setProperty("ff_stock_" + catSlug, [], "json");97 98 Bot.sendMessage("β
<b>Category Successfully Added!</b>\n\nβ’ <b>Icon:</b> <tg-emoji emoji-id='" + emojiId + "'>β¨</tg-emoji>\nβ’ <b>Name:</b> <code>" + catName + "</code>\nβ’ <b>Emoji ID:</b> <code>" + emojiId + "</code>\nβ’ <b>System Slug:</b> <code>" + catSlug + "</code>\n\n<i>Ab aapka FF ID menu perfect chalega!</i>", {parse_mode: "HTML"});99 100} catch(e) {101 Bot.sendMessage("Error in Add Category: " + e.message);102}