From f4d202cdbbcaa9e17c21e3f74d7816f58b2ffc6a Mon Sep 17 00:00:00 2001 From: brain Date: Wed, 26 Jul 2006 21:54:36 +0000 Subject: Add extra method to mode handler, ModeHandler::ModeSet(). Returns a std::pair. if the bool is true, the mode is set, and the second item in the pair is the parameter set on it, if any If the bool is false, the mode is not set, and the parameter given is returned as the second item of the pair To be used in mode bouncing, to build a safe set of bounced modes (dont ask yet) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4549 e03df62e-2008-0410-955e-edbf42e46eb7 --- src/modes/cmode_l.cpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'src/modes/cmode_l.cpp') diff --git a/src/modes/cmode_l.cpp b/src/modes/cmode_l.cpp index 10ff3135a..a5fa5329b 100644 --- a/src/modes/cmode_l.cpp +++ b/src/modes/cmode_l.cpp @@ -8,6 +8,18 @@ ModeChannelLimit::ModeChannelLimit() : ModeHandler('l', 1, 0, false, MODETYPE_CH { } +std::pair ModeChannelLimit::ModeSet(userrec* source, userrec* dest, chanrec* channel, const std::string ¶meter) +{ + if (channel->limit) + { + return std::make_pair(true, ConvToStr(channel->limit)); + } + else + { + return std::make_pair(false, parameter); + } +} + ModeAction ModeChannelLimit::OnModeChange(userrec* source, userrec* dest, chanrec* channel, std::string ¶meter, bool adding) { if (adding) -- cgit v1.2.3