455 commands2 envUpdated 6h agoCreated Aug 26, 2026
commands/yad.js
javascript · 106 lines
1/**#command2name: yad3answer: 4keyboard: 5parse_mode: markdown6aliases: 7allow_only_group: false8need_reply: false9is_web: 010#command**/11 12/**#command13name: yad14answer: 15keyboard: 16parse_mode: 17aliases: 18allow_only_group: false19need_reply: false20is_web: 021#command**/22 23try {24try { Api.answerCallbackQuery({}); } catch (e0) {}25 26var uid = "";27if (typeof user !== "undefined" && user) {28 if (user.telegramid) uid = String(user.telegramid);29 else if (user.id) uid = String(user.id);30}31if (!uid) { Bot.sendMessage("uid نیست"); return; }32 33var firstName = "دوست";34try {35 if (user && user.first_name) firstName = String(user.first_name);36 else if (user && user.username) firstName = String(user.username);37} catch (eN) {}38firstName = String(firstName).replace(/\n/g, " ").replace(/\r/g, " ");39if (firstName.length > 28) firstName = firstName.slice(0, 28);40 41var emos = ["❤️","🩷","🧡","💛","💚","💙","💜","🖤","🤍","🤎","💖","💝","💘","❣️","💕","💞","💓","💗","🌸","🌺","🌼","🌻","⭐","🌟","✨","🌙","🦋","🍀","🌈","🎀","🕊️","💎","👑","🫶","🔥"];42var list = [];43try { list = JSON.parse(String((await db.global.get("yad_list")) || "[]")); } catch (eL) { list = []; }44if (!list || typeof list.length !== "number") list = [];45 46var found = false;47var myEmo = "";48var i = 0;49for (i = 0; i < list.length; i++) {50 if (list[i] && String(list[i].u) === String(uid)) {51 found = true;52 myEmo = String(list[i].e || "❤️");53 if (list[i].n !== firstName) {54 list[i].n = firstName;55 await db.global.set("yad_list", JSON.stringify(list));56 }57 break;58 }59}60 61if (!found) {62 myEmo = emos[Math.floor(Math.random() * emos.length)];63 var neu = [];64 neu.push({ u: String(uid), n: firstName, e: myEmo, t: Date.now() });65 for (i = 0; i < list.length; i++) neu.push(list[i]);66 if (neu.length > 3000) {67 var cut = [];68 for (i = 0; i < 3000; i++) cut.push(neu[i]);69 neu = cut;70 }71 list = neu;72 await db.global.set("yad_list", JSON.stringify(list));73 await db.global.set("yad_count", list.length);74}75 76await db.global.set("yad_page_" + uid, 0);77 78var head =79 "یادگاری طولانی\n" +80 "────────────────\n" +81 "از همه دوستانی که تا امروز کنار زورنیکس و مهدیار بودن، ممنون.\n" +82 "اسمتون با عشق اینجاست. پاک نمیشود.\n\n" +83 "تو: " + myEmo + " " + firstName + (found ? " (از قبل اینجایی)" : " (الان ثبت شد)") + "\n" +84 "تعداد یادگاری: " + list.length + " نفر\n" +85 "────────────────\n";86 87var pageSize = 35;88var body = "";89var n = list.length;90if (n > pageSize) n = pageSize;91for (i = 0; i < n; i++) {92 if (!list[i]) continue;93 body = body + (list[i].e || "❤️") + " " + String(list[i].n || "دوست") + "\n";94}95 96var rows = [];97if (list.length > pageSize) rows.push([{ text: "ادامه لیست", callback_data: "yadmore" }]);98rows.push([{ text: "خونه", callback_data: "/start" }]);99 100Api.sendMessage({101 text: head + body,102 reply_markup: { inline_keyboard: rows }103});104} catch (e) {105 Bot.sendMessage("خطا yad: " + String(e && e.message ? e.message : e));106}