aboutsummaryrefslogtreecommitdiff
path: root/src/modules/m_ojoin.cpp
diff options
context:
space:
mode:
authorGravatar Sadie Powell2020-06-08 18:14:19 +0100
committerGravatar Sadie Powell2020-06-08 18:14:19 +0100
commit58e9055162e003f991870637b73f8ec4044d56a8 (patch)
tree62289918baee8739fb14a71d3e10c47e1eff5210 /src/modules/m_ojoin.cpp
parentRip out compatibility code for the 2.0 protocol. (diff)
parentAdd an ISUPPORT token for the bot mode and 'B' to the WHO flags. (diff)
Merge branch 'insp3' into master.
Diffstat (limited to 'src/modules/m_ojoin.cpp')
-rw-r--r--src/modules/m_ojoin.cpp10
1 files changed, 6 insertions, 4 deletions
diff --git a/src/modules/m_ojoin.cpp b/src/modules/m_ojoin.cpp
index f7cf073e0..33c50959d 100644
--- a/src/modules/m_ojoin.cpp
+++ b/src/modules/m_ojoin.cpp
@@ -33,9 +33,11 @@ class CommandOjoin : public SplitCommand
bool notice;
bool op;
ModeHandler* npmh;
+ ChanModeReference opmode;
CommandOjoin(Module* parent, ModeHandler& mode)
: SplitCommand(parent, "OJOIN", 1)
, npmh(&mode)
+ , opmode(parent, "op")
{
access_needed = CmdAccess::OPERATOR;
syntax = { "<channel>" };
@@ -73,8 +75,8 @@ class CommandOjoin : public SplitCommand
// they're already in the channel
Modes::ChangeList changelist;
changelist.push_add(npmh, user->nick);
- if (op)
- changelist.push_add(ServerInstance->Modes.FindMode('o', MODETYPE_CHANNEL), user->nick);
+ if (op && opmode)
+ changelist.push_add(*opmode, user->nick);
ServerInstance->Modes.Process(ServerInstance->FakeClient, channel, NULL, changelist);
}
return CMD_SUCCESS;
@@ -123,8 +125,8 @@ class ModuleOjoin : public Module
if (mycommand.active)
{
privs += np.GetModeChar();
- if (mycommand.op)
- privs += 'o';
+ if (mycommand.op && mycommand.opmode)
+ privs += mycommand.opmode->IsPrefixMode()->GetPrefix();
return MOD_RES_ALLOW;
}