rpg-perfil.js 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. import db from '../lib/database.js'
  2. import { canLevelUp, xpRange } from '../lib/levelling.js'
  3. import { createHash } from 'crypto'
  4. import PhoneNumber from 'awesome-phonenumber'
  5. import fetch from 'node-fetch'
  6. import fs from 'fs'
  7. let handler = async (m, { conn, usedPrefix, command}) => {
  8. let who = m.mentionedJid && m.mentionedJid[0] ? m.mentionedJid[0] : m.fromMe ? conn.user.jid : m.sender
  9. let bio = await conn.fetchStatus(who).catch(_ => 'undefined')
  10. let biot = bio.status?.toString() || 'Sin Info'
  11. let user = global.db.data.users[who]
  12. let pp = await conn.profilePictureUrl(who, 'image').catch(_ => 'https://telegra.ph/file/9d38415096b6c46bf03f8.jpg')
  13. let { exp, limit, name, registered, regTime, age, level } = global.db.data.users[who]
  14. let { min, xp, max } = xpRange(user.level, global.multiplier)
  15. let username = conn.getName(who)
  16. let prem = global.prems.includes(who.split`@`[0])
  17. let sn = createHash('md5').update(who).digest('hex')
  18. let api = await axios.get(`${apis}/tools/country?text=${PhoneNumber('+' + who.replace('@s.whatsapp.net', '')).getNumber('international')}`)
  19. let userNationalityData = api.data.result
  20. let userNationality = userNationalityData ? `${userNationalityData.name} ${userNationalityData.emoji}` : 'Desconocido'
  21. let img = await (await fetch(`${pp}`)).buffer()
  22. let str = ` *「 PERFIL 」*
  23. 👤 *Nombre :* ${name}
  24. ☎️ *Número :* ${PhoneNumber('+' + who.replace('@s.whatsapp.net', '')).getNumber('international')}
  25. 🌐 *Link :* wa.me/${who.split`@`[0]}
  26. 🌎 *Nacionalidad :* ${userNationality}
  27. 💎 *Limite :* ${limit}
  28. ⚙️ *Nivel :* ${level}
  29. ◯ *Registrado :* ${registered ? 'Si': 'No'}
  30. *•━━━━⪻ 𝙿𝙴𝚁𝙵𝙸𝙻 ⪼━━━━•*`
  31. let mentionedJid = [who]
  32. await conn.sendFile(m.chat, img, 'lp.jpg', str, m, false, { contextInfo: {forwardingScore: 9999999, isForwarded: true, mentionedJid, externalAdReply :{ mediaUrl: null, mediaType: 1, description: null, title: wm, body: '𝐒𝐮𝐩𝐞𝐫 𝐁𝐨𝐭 𝐃𝐞 𝐖𝐡𝐚𝐭𝐬𝐀𝐩𝐩', previewType: 0, thumbnail: imagen4, sourceUrl: [md, yt, tiktok].getRandom()}}})
  33. //conn.sendFile(m.chat, img, 'thumbnail.jpg', text, m)
  34. }
  35. handler.help = ['perfil', 'perfil *@user*']
  36. handler.tags = ['rg']
  37. handler.command = /^(perfil|profile)$/i
  38. handler.register = true
  39. export default handler
  40. const more = String.fromCharCode(8206)
  41. const readMore = more.repeat(4001)
  42. function formatDate(n, locale = 'es-US') {
  43. let d = new Date(n)
  44. return d.toLocaleDateString(locale, {weekday: 'long',
  45. day: 'numeric',
  46. month: 'long',
  47. year: 'numeric'
  48. })}
  49. function formatHour(n, locale = 'en-US') {
  50. let d = new Date(n)
  51. return d.toLocaleString(locale, {
  52. hour: 'numeric',
  53. minute: 'numeric',
  54. second: 'numeric',
  55. hour12: true
  56. })}