Merge pull request #1449 from dgw/cycle-command

Add /cycle command (a.k.a. /rejoin)
This commit is contained in:
Jérémie Astori 2017-08-31 23:45:54 -04:00 committed by GitHub
commit 220af0e180
4 changed files with 37 additions and 0 deletions

View File

@ -795,6 +795,19 @@
</div> </div>
</div> </div>
<div class="help-item">
<div class="subject">
<code>/rejoin</code>
</div>
<div class="description">
<p>
Leave and immediately rejoin the current channel. Useful to
quickly get op from ChanServ in an empty channel, for example.
</p>
<p>Alias: <code>/cycle</code></p>
</div>
</div>
<div class="help-item"> <div class="help-item">
<div class="subject"> <div class="subject">
<code>/query nick</code> <code>/query nick</code>

View File

@ -28,6 +28,7 @@ const commands = [
"/collapse", "/collapse",
"/connect", "/connect",
"/ctcp", "/ctcp",
"/cycle",
"/deop", "/deop",
"/devoice", "/devoice",
"/disconnect", "/disconnect",
@ -46,6 +47,7 @@ const commands = [
"/query", "/query",
"/quit", "/quit",
"/raw", "/raw",
"/rejoin",
"/say", "/say",
"/send", "/send",
"/server", "/server",

View File

@ -41,6 +41,7 @@ var inputs = [
"ctcp", "ctcp",
"msg", "msg",
"part", "part",
"rejoin",
"action", "action",
"away", "away",
"connect", "connect",

View File

@ -0,0 +1,21 @@
"use strict";
var Msg = require("../../models/msg");
var Chan = require("../../models/chan");
exports.commands = ["cycle", "rejoin"];
exports.input = function(network, chan) {
if (chan.type !== Chan.Type.CHANNEL) {
chan.pushMessage(this, new Msg({
type: Msg.Type.ERROR,
text: "You can only rejoin channels."
}));
return;
}
network.irc.part(chan.name, "Rejoining");
network.irc.join(chan.name);
return true;
};