Uwev2/src/inc/trigger/timer.mjs
2018-03-05 07:52:27 +01:00

39 lines
1.1 KiB
JavaScript

import timer from "./lib/timer";
import sql from "../../inc/sql";
export default bot => {
bot._trigger.set("timer", new bot.trigger({
call: /^(\.|\/)timer .*/i,
set: "nxy",
help: {
text: "(WIP) Sets a timer, delay can be: s, m, h, d, w, mon, y",
usage: "[b].timer[/b] [i]<delay>[/i] [i]<message>[/i]..."
},
f: e => {
const t = e.args.shift();
const msg = e.args.join(" ");
if(t === "debug" && e.user.level.level >= 100)
return e.reply( JSON.stringify([...timer._timers]) );
timer.add(t, () => {
e.reply(`[b]${e.user.nick}[/b]: ${msg} [i](${t})[/i]`);
}).then(seconds => {
sql.any(
"insert into nxy_timers (mask, target, message, delay, created) values ($1, $2, $3, $4, $5)",
[
e.user.prefix,
JSON.stringify({
nick: e.user.nick,
type: e.type,
network: e.network,
channel: e.channelid
}),
msg,
t,
~~(Date.now() / 1000)
]
);
}).catch(err => { e.reply("error lol"); });
}
}));
};