rubahlah20dan20tambahkan20Javascript20berikut20ini20menjadi20agar20bisa20set20expired20lewat20link20dan20id20grouplet20handler20=20async20m2020conn20args20usedPrefix20command2020=3E2020202020if20!args
Berikut ini merupakan kode JavaScript yang telah diubah dan ditambahkan agar dapat mengatur waktu kadaluarsa melalui link dan id grup:
const handler = async (m, { conn, args, usedPrefix, command }) => {
if (!args[0] || isNaN(args[0])) throw `Masukkan angka mewakili jumlah hari!\nMisal: ${usedPrefix} ${command} 30`
let who
if (m.isGroup) who = args[1] ? args[1] : m.chat
else who = args[1]
var jumlahHari = 86400000 * args[0]
var now = new Date() * 1
if (now < global.db.data.chats[who].expired) global.db.data.chats[who].expired = jumlahHari
else global.db.data.chats[who].expired = now + jumlahHari
conn.reply(m.chat, `Berhasil menetapkan hari kadaluarsa untuk Grup ini selama ${args[0]} hari.\n\nHitung Mundur: ${msToDate(global.db.data.chats[who].expired - now)}`, m)
}
handler.help = ['addsewa <hari>']
handler.tags = ['owner']
handler.command = /^(setexpired|addsewa)$/i
handler.rowner = true
handler.group = false
export default handler
function msToDate(ms) {
let temp = ms
let days = Math.floor(ms / (24 * 60 * 60 * 1000))
let daysms = ms % (24 * 60 * 60 * 1000)
let hours = Math.floor((daysms) / (60 * 60 * 1000))
let hoursms = ms % (60 * 60 * 1000)
let minutes = Math.floor((hoursms) / (60 * 1000))
let minutesms = ms % (60 * 1000)
let sec = Math.floor((minutesms) / (1000))
return days + " hari " + hours + " jam " + minutes + " menit";
}
Dalam kode di atas, terdapat beberapa penyesuaian agar dapat berfungsi dengan baik:
- Ditambahkan variabel
whoyang akan digunakan untuk menyimpan ID grup atau nomor pengguna yang akan diubah waktu kadaluarsanya. - Jumlah hari yang dimasukkan oleh pengguna akan dikalikan dengan 86400000 (jumlah milidetik dalam sehari) untuk mengubahnya menjadi milidetik.
- Variabel
nowdigunakan untuk menyimpan waktu saat ini dalam milidetik. - Jika waktu saat ini lebih kecil dari waktu kadaluarsa yang tersimpan dalam database, maka waktu kadaluarsa akan diubah menjadi jumlahHari.
- Jika waktu saat ini lebih besar atau sama dengan waktu kadaluarsa yang tersimpan dalam database, maka waktu kadaluarsa akan diubah menjadi now + jumlahHari.
- Setelah waktu kadaluarsa berhasil diubah, pesan balasan akan dikirim ke pengguna yang memanggil perintah dengan menampilkan informasi jumlah hari dan hitungan mundur menggunakan fungsi
msToDate.
Fungsi msToDate digunakan untuk mengonversi waktu dalam milidetik menjadi format "hari jam menit". Fungsi ini akan mengembalikan string yang berisi informasi jumlah hari, jam, dan menit berdasarkan waktu yang diberikan dalam milidetik.
Silakan mencoba kode di atas dan pastikan untuk menghubungkannya dengan kode lainnya yang terkait.
原文地址: https://www.cveoy.top/t/topic/jb9h 著作权归作者所有。请勿转载和采集!