mirror of
https://github.com/inspircd/inspircd.git
synced 2025-03-12 03:59:03 -04:00
Use SimpleUserModeHandler/SimpleChannelModeHandler where possible
This commit is contained in:
parent
2a5cab9b44
commit
0fa8cdd7b8
@ -23,32 +23,10 @@
|
||||
|
||||
/** Handles user mode +c
|
||||
*/
|
||||
class PrivacyMode : public ModeHandler
|
||||
class PrivacyMode : public SimpleUserModeHandler
|
||||
{
|
||||
public:
|
||||
PrivacyMode(Module* Creator) : ModeHandler(Creator, "deaf_commonchan", 'c', PARAM_NONE, MODETYPE_USER) { }
|
||||
|
||||
ModeAction OnModeChange(User* source, User* dest, Channel* channel, std::string ¶meter, bool adding)
|
||||
{
|
||||
if (adding)
|
||||
{
|
||||
if (!dest->IsModeSet('c'))
|
||||
{
|
||||
dest->SetMode('c',true);
|
||||
return MODEACTION_ALLOW;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (dest->IsModeSet('c'))
|
||||
{
|
||||
dest->SetMode('c',false);
|
||||
return MODEACTION_ALLOW;
|
||||
}
|
||||
}
|
||||
|
||||
return MODEACTION_DENY;
|
||||
}
|
||||
PrivacyMode(Module* Creator) : SimpleUserModeHandler(Creator, "deaf_commonchan", 'c') { }
|
||||
};
|
||||
|
||||
class ModulePrivacyMode : public Module
|
||||
|
@ -29,35 +29,13 @@ static std::map<irc::string, std::string> helpop_map;
|
||||
|
||||
/** Handles user mode +h
|
||||
*/
|
||||
class Helpop : public ModeHandler
|
||||
class Helpop : public SimpleUserModeHandler
|
||||
{
|
||||
public:
|
||||
Helpop(Module* Creator) : ModeHandler(Creator, "helpop", 'h', PARAM_NONE, MODETYPE_USER)
|
||||
Helpop(Module* Creator) : SimpleUserModeHandler(Creator, "helpop", 'h')
|
||||
{
|
||||
oper = true;
|
||||
}
|
||||
|
||||
ModeAction OnModeChange(User* source, User* dest, Channel* channel, std::string ¶meter, bool adding)
|
||||
{
|
||||
if (adding)
|
||||
{
|
||||
if (!dest->IsModeSet('h'))
|
||||
{
|
||||
dest->SetMode('h',true);
|
||||
return MODEACTION_ALLOW;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (dest->IsModeSet('h'))
|
||||
{
|
||||
dest->SetMode('h',false);
|
||||
return MODEACTION_ALLOW;
|
||||
}
|
||||
}
|
||||
|
||||
return MODEACTION_DENY;
|
||||
}
|
||||
};
|
||||
|
||||
/** Handles /HELPOP
|
||||
|
@ -24,32 +24,10 @@
|
||||
|
||||
/** Handles user mode +I
|
||||
*/
|
||||
class HideChans : public ModeHandler
|
||||
class HideChans : public SimpleUserModeHandler
|
||||
{
|
||||
public:
|
||||
HideChans(Module* Creator) : ModeHandler(Creator, "hidechans", 'I', PARAM_NONE, MODETYPE_USER) { }
|
||||
|
||||
ModeAction OnModeChange(User* source, User* dest, Channel* channel, std::string ¶meter, bool adding)
|
||||
{
|
||||
if (adding)
|
||||
{
|
||||
if (!dest->IsModeSet('I'))
|
||||
{
|
||||
dest->SetMode('I',true);
|
||||
return MODEACTION_ALLOW;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (dest->IsModeSet('I'))
|
||||
{
|
||||
dest->SetMode('I',false);
|
||||
return MODEACTION_ALLOW;
|
||||
}
|
||||
}
|
||||
|
||||
return MODEACTION_DENY;
|
||||
}
|
||||
HideChans(Module* Creator) : SimpleUserModeHandler(Creator, "hidechans", 'I') { }
|
||||
};
|
||||
|
||||
class ModuleHideChans : public Module
|
||||
|
@ -25,35 +25,13 @@
|
||||
|
||||
/** Handles user mode +H
|
||||
*/
|
||||
class HideOper : public ModeHandler
|
||||
class HideOper : public SimpleUserModeHandler
|
||||
{
|
||||
public:
|
||||
HideOper(Module* Creator) : ModeHandler(Creator, "hideoper", 'H', PARAM_NONE, MODETYPE_USER)
|
||||
HideOper(Module* Creator) : SimpleUserModeHandler(Creator, "hideoper", 'H')
|
||||
{
|
||||
oper = true;
|
||||
}
|
||||
|
||||
ModeAction OnModeChange(User* source, User* dest, Channel* channel, std::string ¶meter, bool adding)
|
||||
{
|
||||
if (adding)
|
||||
{
|
||||
if (!dest->IsModeSet('H'))
|
||||
{
|
||||
dest->SetMode('H',true);
|
||||
return MODEACTION_ALLOW;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (dest->IsModeSet('H'))
|
||||
{
|
||||
dest->SetMode('H',false);
|
||||
return MODEACTION_ALLOW;
|
||||
}
|
||||
}
|
||||
|
||||
return MODEACTION_DENY;
|
||||
}
|
||||
};
|
||||
|
||||
class ModuleHideOper : public Module
|
||||
|
@ -24,32 +24,13 @@
|
||||
|
||||
/* $ModDesc: Provides support for oper-only chans via the +O channel mode */
|
||||
|
||||
class OperChans : public ModeHandler
|
||||
class OperChans : public SimpleChannelModeHandler
|
||||
{
|
||||
public:
|
||||
/* This is an oper-only mode */
|
||||
OperChans(Module* Creator) : ModeHandler(Creator, "operonly", 'O', PARAM_NONE, MODETYPE_CHANNEL) { oper = true; }
|
||||
|
||||
ModeAction OnModeChange(User* source, User* dest, Channel* channel, std::string ¶meter, bool adding)
|
||||
OperChans(Module* Creator) : SimpleChannelModeHandler(Creator, "operonly", 'O')
|
||||
{
|
||||
if (adding)
|
||||
{
|
||||
if (!channel->IsModeSet('O'))
|
||||
{
|
||||
channel->SetMode('O',true);
|
||||
return MODEACTION_ALLOW;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (channel->IsModeSet('O'))
|
||||
{
|
||||
channel->SetMode('O',false);
|
||||
return MODEACTION_ALLOW;
|
||||
}
|
||||
}
|
||||
|
||||
return MODEACTION_DENY;
|
||||
oper = true;
|
||||
}
|
||||
};
|
||||
|
||||
|
@ -27,35 +27,13 @@
|
||||
|
||||
/** Handle user mode +W
|
||||
*/
|
||||
class SeeWhois : public ModeHandler
|
||||
class SeeWhois : public SimpleUserModeHandler
|
||||
{
|
||||
public:
|
||||
SeeWhois(Module* Creator, bool IsOpersOnly) : ModeHandler(Creator, "showwhois", 'W', PARAM_NONE, MODETYPE_USER)
|
||||
SeeWhois(Module* Creator, bool IsOpersOnly) : SimpleUserModeHandler(Creator, "showwhois", 'W')
|
||||
{
|
||||
oper = IsOpersOnly;
|
||||
}
|
||||
|
||||
ModeAction OnModeChange(User* source, User* dest, Channel* channel, std::string ¶meter, bool adding)
|
||||
{
|
||||
if (adding)
|
||||
{
|
||||
if (!dest->IsModeSet('W'))
|
||||
{
|
||||
dest->SetMode('W',true);
|
||||
return MODEACTION_ALLOW;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (dest->IsModeSet('W'))
|
||||
{
|
||||
dest->SetMode('W',false);
|
||||
return MODEACTION_ALLOW;
|
||||
}
|
||||
}
|
||||
|
||||
return MODEACTION_DENY;
|
||||
}
|
||||
};
|
||||
|
||||
class WhoisNoticeCmd : public Command
|
||||
|
Loading…
x
Reference in New Issue
Block a user