Add poll timers
This commit is contained in:
parent
3bebc34e21
commit
cec68d0f2a
3 changed files with 20 additions and 3 deletions
|
|
@ -2112,6 +2112,14 @@ Channel.prototype.handleOpenPoll = function (user, data) {
|
|||
|
||||
var obscured = (data.obscured === true);
|
||||
var poll = new Poll(user.name, title, opts, obscured);
|
||||
var self = this;
|
||||
if (typeof data.timeout === "number" && !isNaN(data.timeout) && data.timeout > 0) {
|
||||
poll.timer = setTimeout(function () {
|
||||
if (self.poll === poll) {
|
||||
self.handleClosePoll({ name: "[poll timer]", rank: 255 });
|
||||
}
|
||||
}, data.timeout * 1000);
|
||||
}
|
||||
this.poll = poll;
|
||||
this.sendPoll(this.users, true);
|
||||
this.logger.log("[poll] " + user.name + " Opened Poll: '" + poll.title + "'");
|
||||
|
|
@ -2131,6 +2139,10 @@ Channel.prototype.handleClosePoll = function (user) {
|
|||
this.sendPollUpdate(this.users);
|
||||
}
|
||||
|
||||
if (this.poll.timer) {
|
||||
clearTimeout(this.poll.timer);
|
||||
}
|
||||
|
||||
this.logger.log("[poll] " + user.name + " closed the active poll");
|
||||
this.poll = false;
|
||||
this.sendAll("closePoll");
|
||||
|
|
|
|||
|
|
@ -73,7 +73,6 @@ var handlers = {
|
|||
|
||||
/* commands that do not send chat messages */
|
||||
"afk": function (chan, user, msg, meta) {
|
||||
console.log("/afk => setAfk(!" + user.meta.afk + ")");
|
||||
user.setAFK(!user.meta.afk);
|
||||
return true;
|
||||
},
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue