aboutsummaryrefslogtreecommitdiff
path: root/src/modules/m_rmode.cpp
diff options
context:
space:
mode:
authorGravatar Sadie Powell2022-04-12 12:48:54 +0100
committerGravatar Sadie Powell2022-04-12 12:48:54 +0100
commit7266f8681d603c58e1281f3e7e2934d61f910ea4 (patch)
treef836b95102576150c0deb52529d77eb3dfa0de0f /src/modules/m_rmode.cpp
parentUse ERR_RESTRICTED when an action can't be done even with privileges. (diff)
Add a numeric builder for the ERR_CHANOPRIVSNEEDED numeric.
This should make privilege errors more consistent.
Diffstat (limited to 'src/modules/m_rmode.cpp')
-rw-r--r--src/modules/m_rmode.cpp7
1 files changed, 2 insertions, 5 deletions
diff --git a/src/modules/m_rmode.cpp b/src/modules/m_rmode.cpp
index eb7a018c4..ff5097c40 100644
--- a/src/modules/m_rmode.cpp
+++ b/src/modules/m_rmode.cpp
@@ -53,11 +53,8 @@ class CommandRMode : public Command
if (chan->GetPrefixValue(user) < mh->GetLevelRequired(false))
{
- const PrefixMode* neededmh = ServerInstance->Modes.FindNearestPrefixMode(mh->GetLevelRequired(false));
- if (neededmh)
- user->WriteNumeric(ERR_CHANOPRIVSNEEDED, chan->name, InspIRCd::Format("You must have channel %s access or above to unset channel mode %c", neededmh->name.c_str(), mh->GetModeChar()));
- else
- user->WriteNumeric(ERR_CHANOPRIVSNEEDED, chan->name, InspIRCd::Format("You cannot unset channel mode %c", mh->GetModeChar()));
+ user->WriteNumeric(Numerics::ChannelPrivilegesNeeded(chan, mh->GetLevelRequired(false), InspIRCd::Format("unset channel mode %c (%s)",
+ mh->GetModeChar(), mh->name.c_str())));
return CMD_FAILURE;
}