aboutsummaryrefslogtreecommitdiff
path: root/src/modules/m_repeat.cpp
Commit message (Expand)AuthorAgeFilesLines
* Some more text fixes and improvements (#1618).Gravatar Robby2019-04-281-1/+1
* Various text improvements: consistency, syntax, help and doc updates/fixes.Gravatar Robby2019-02-181-3/+3
* Only parse valid durations, don't treat invalid multipliers as seconds (#1538)Gravatar linuxdaemon2018-12-211-2/+5
* Fix ParamModeBase::OnUnset() not being virtual.•••Closes #1536. Gravatar Peter Powell2018-12-161-1/+1
* Fix conversion issues by replacing ConvToInt with ConvToNum<T>.•••The former was a thin wrapper around atol and brought with it all of the weird parsing logic of atol which is almost never what is actually wanted. It also almost never returned the numeric type which is actually wanted which can cause weird issues when casting. Gravatar Peter Powell2018-12-121-3/+3
* Add ConfigTag::getUInt for reading unsigned config values.Gravatar Peter Powell2018-04-161-4/+4
* Convert ConfigTag::getDuration to return an unsigned long.Gravatar Peter Powell2018-04-161-1/+1
* Validate settings in order in ValidateSettings() (#1475).•••* Validate the settings in the same order as the parameter syntax * Always validate Lines and Secs regardless of having a Diff * Check Backlog for greater than Max as well as being disabledGravatar genius30002018-04-061-24/+25
* Add ERR_INVALIDMODEPARAM for responding to invalid mode params.•••Currently on invalid modes we do a combination of different things: 1. Send a custom mode-specific numeric (which often collides with other modes). 2. Send a server notice. 3. Do absolutely nothing. This new numeric is a generic way of handling invalid parameters when setting a mode that avoids all of the mistakes of the previous behaviour. Gravatar Peter Powell2018-01-291-9/+16
* Rework message handling.•••- Move all message-related types to their own header to make moving them to a cross-module events easier. - Rename OnUserMessage to OnUserPostMessage. - Rename OnText to OnUserMessage. - Replace the dest, target_type, and status parameters with the MessageTarget class. - Replace the text, exempt_list, and msgtype parameters with the MessageDetails struct. - Add echooriginal and originaltext to the MessageDetails struct to allow spam filtering to not be broken by cap echo-message. Gravatar Peter Powell2018-01-061-4/+4
* Add the override keyword in places that it is missing.•••GCCs warnings for this are much better than Clangs. Gravatar Peter Powell2017-11-211-1/+1
* Hide User#host and User#dhost and use accessors to modify them.•••This removes the need to invalidate the cache after changing a user's hostname. Gravatar Peter Powell2017-10-281-1/+1
* Add a helper function for calling the OnCheckExemption event.Gravatar Peter Powell2017-10-211-2/+1
* Convert a bunch of time-related config options to getDuration.Gravatar Peter Powell2017-09-031-1/+1
* Move the OnCheckExemption hook out of the core.Gravatar Peter Powell2017-03-201-2/+10
* Fix some whitespace issuesGravatar Attila Molnar2015-12-281-1/+1
* m_repeat: fix typo (similiar->similar)•••Also update docs/ accordingly Gravatar James Lu2015-06-121-2/+2
* Specify which Extensible subclass an ExtensionItem is valid forGravatar Attila Molnar2015-01-181-1/+1
* Replace irc::modestacker usage with the new ModeParser::Process()Gravatar Attila Molnar2014-09-031-5/+3
* Remove typedef UserMembCIter, use Channel::MemberMap::const_iterator insteadGravatar Attila Molnar2014-07-141-1/+1
* Rename UserMembList to Channel::MemberMap, switch all code to use itGravatar Attila Molnar2014-07-141-1/+1
* Change return type of Channel::GetUsers() to reference from pointer as it is ...Gravatar Attila Molnar2014-07-141-2/+2
* Add ParamModeBase and ParamMode, change all parameter modes to inherit from P...•••- Type of the extension used to store data is a template parameter - The extension is automatically unset when the mode is unset - Handlers inheriting from ParamMode have to provide OnSet() and SerializeParam(); may optionally provide OnUnset() - Transparently handle the case when OnSet() modifies the mode parameter - Remove Channel::custom_mode_params map; ask the mode handlers to serialize their parameters instead Gravatar Attila Molnar2014-02-151-62/+65
* Globally #undef min and max on WindowsGravatar Attila Molnar2014-01-231-5/+0
* Automatically register ServiceProviders created by modulesGravatar attilamolnar2013-09-081-7/+0
* Replace OnRehash() with ReadConfig() that is called on boot, on module load a...•••This eliminates the need for calling OnRehash() in init() Gravatar attilamolnar2013-08-301-2/+1
* Automatically attach modules to eventsGravatar attilamolnar2013-08-041-2/+0
* m_repeat Optimize the Levenshtein() function•••New version uses 2 vectors instead of a matrix Do not shrink the vectors even if the user sets a lower <repeat:size> than before, this is because longer lines may remain in the backlog Gravatar attilamolnar2013-06-241-31/+24
* Call Channel::SetModeParam() from the mode parser when needed instead of requ...Gravatar attilamolnar2013-06-131-2/+0
* Introduce ModeProcessFlags, can be passed to ModeParser::Process() to indicat...•••Change ProtocolInterface::SendMode() to take source and destination parameters, and call it from the mode parser whenever the mode change is global This deprecates the ambiguous InspIRCd::SendMode() and InspIRCd::SendGlobalMode() interface (the latter sent mode changes originating from local users twice, etc.) Gravatar attilamolnar2013-06-131-1/+1
* Added m_repeat - Allows for blocking of similiar messages•••Changes to the original module: - Parse settings using a sepstream, accept remote mode changes regardless of our config - Refuse to link when config settings differ - Style changes All ideas and features are the brainchild and work of Daniel Vassdal Gravatar Daniel Vassdal2013-06-101-0/+424