128
128
["invite", cmdInvite, CMD_NEED_SRV | CMD_CONSOLE],
129
129
["join", cmdJoin, CMD_NEED_SRV | CMD_CONSOLE],
130
130
["join-charset", cmdJoin, CMD_NEED_SRV | CMD_CONSOLE],
131
["jump-to-anchor", cmdJumpToAnchor, CMD_NEED_NET],
131
132
["kick", cmdKick, CMD_NEED_CHAN | CMD_CONSOLE],
132
133
["kick-ban", cmdKick, CMD_NEED_CHAN | CMD_CONSOLE],
133
134
["knock", cmdKnock, CMD_NEED_SRV | CMD_CONSOLE],
675
677
return aliasLine;
680
function callBeforeHooks()
682
if ("beforeHooks" in client.commandManager)
683
callHooks(client.commandManager, true);
684
if ("beforeHooks" in e.command)
685
callHooks(e.command, true);
688
function callAfterHooks()
690
if ("afterHooks" in e.command)
691
callHooks(e.command, false);
692
if ("afterHooks" in client.commandManager)
693
callHooks(client.commandManager, false);
680
698
if (typeof e.command.func == "function")
682
700
/* dispatch a real function */
684
client.commandManager.parseArguments (e);
702
client.commandManager.parseArguments(e);
686
703
if ("parseError" in e)
688
displayUsageError(e, e.parseError);
692
if ("beforeHooks" in client.commandManager)
693
callHooks(client.commandManager, true);
694
if ("beforeHooks" in e.command)
695
callHooks(e.command, true);
704
return displayUsageError(e, e.parseError);
697
if ("dbgDispatch" in client && client.dbgDispatch)
706
if (("dbgDispatch" in client) && client.dbgDispatch)
709
for (i = 0; i < e.command.argNames.length; ++i)
700
for (i = 0; i < e.command.argNames.length; ++i)
702
var name = e.command.argNames[i];
704
str += " " + name + ": " + e[name];
705
else if (name != ":")
708
dd (">>> " + e.command.name + str + " <<<");
709
e.returnValue = e.command.func(e);
710
/* set client.lastEvent *after* dispatching, so the dispatched
711
* function actually get's a chance to see the last event. */
711
var name = e.command.argNames[i];
713
str += " " + name + ": " + e[name];
714
else if (name != ":")
717
dd(">>> " + e.command.name + str + " <<<");
723
e.returnValue = e.command.func(e);
728
/* set client.lastEvent *after* dispatching, so the dispatched
729
* function actually get's a chance to see the last event. */
730
if (("dbgDispatch" in client) && client.dbgDispatch)
712
731
client.lastEvent = e;
716
e.returnValue = e.command.func(e);
721
734
else if (typeof e.command.func == "string")
723
736
/* dispatch an alias (semicolon delimited list of subcommands) */
724
if ("beforeHooks" in client.commandManager)
725
callHooks(client.commandManager, true);
726
if ("beforeHooks" in e.command)
727
callHooks(e.command, true);
730
739
//Don't make use of e.inputData if we have multiple commands in 1 alias
755
for (i = 0; i < commandList.length; ++i)
757
var newEvent = Clone(e);
758
delete newEvent.command;
759
commandList[i] = stringTrim(commandList[i]);
760
dispatch(commandList[i], newEvent, flags);
767
for (i = 0; i < commandList.length; ++i)
769
var newEvent = Clone(e);
770
delete newEvent.command;
771
commandList[i] = stringTrim(commandList[i]);
772
dispatch(commandList[i], newEvent, flags);
765
display (getMsg(MSG_ERR_NOTIMPLEMENTED, e.command.name),
782
display(getMsg(MSG_ERR_NOTIMPLEMENTED, e.command.name), MT_ERROR);
770
if ("afterHooks" in e.command)
771
callHooks(e.command, false);
772
if ("afterHooks" in client.commandManager)
773
callHooks(client.commandManager, false);
775
786
return ("returnValue" in e) ? e.returnValue : null;
3889
3900
setCurrentObject(e.view);
3903
function cmdJumpToAnchor(e)
3905
if (e.hasOwnProperty("channelName"))
3907
e.channel = new CIRCChannel(e.server, e.channelName);
3909
else if (!e.channel)
3911
display(getMsg(MSG_ERR_REQUIRED_PARAM, "channel-name"), MT_ERROR);
3914
if (!e.channel.frame)
3916
display(getMsg(MSG_JUMPTO_ERR_NOCHAN, e.channel.unicodeName), MT_ERROR);
3920
var document = getContentDocument(e.channel.frame);
3921
var row = document.getElementById(e.anchor);
3925
display(getMsg(MSG_JUMPTO_ERR_NOANCHOR), MT_ERROR);
3929
dispatch("set-current-view", {view: e.channel});
3930
e.channel.scrollToElement(row, "center");
3892
3933
function cmdIgnore(e)
3894
3935
if (("mask" in e) && e.mask)