View Issue Details

IDProjectCategoryView StatusLast Update
0003180unrealircdpublic2018-05-01 16:43
ReporterStealth Assigned Tosyzop  
PrioritynormalSeverityfeatureReproducibilityN/A
Status closedResolutionno change required 
Product Version3.3-alpha0 
Summary0003180: Modules: Override modes
DescriptionIt would be great to have the ability for module coders to override modes (user and channel). This would enable the ability to modify modes :D
3rd party modules

Activities

aquanight

2006-12-31 20:22

reporter   ~0012961

Last edited: 2006-12-31 20:24

The only part about modes where there is really any point in overriding is who can set them. In which case, it's easy to set a mode hook (there's one for usermodes at least) and add (but not remove) to what privileges are needed to (un)set. For behavior purposes, you can just test the mode, or for parameterized modes, test its value. Modes don't have a single "do stuff" bit that controls their behavior, rather it's spread across whatever other functions they effect (eg: +m's behavior is part of the PRIVMSG/NOTICE code, +iOAlLk is part of JOIN, and usermodes are pretty much the same deal), so it isn't a simple question of replacing a single function with another. I guess you could change the bit for the mode, but now the old version doesn't work anymore, and it's already simpler to just use a different mode character. Perhaps a good example of how this might be useful is needed.

Extended bans, however, are a whole different beast, and are nearly analogous to commands - they have a "do stuff" part that could theoretically be overriden for some purpose or another - other than the "do stuff" part isn't run directly but rather automatically every time someone joins, messages the channel, or changes nick. But despite being fired by three different events, all the behavior to an extban is generally one place (exception: syzop's textban module), so it's a simple matter to replace old with new.

syzop

2018-05-01 16:43

administrator   ~0020115

Haven't heard any request since this bug from 2016/2017, so safe to close..

Issue History

Date Modified Username Field Change
2006-12-31 16:28 Stealth New Issue
2006-12-31 20:22 aquanight Note Added: 0012961
2006-12-31 20:24 aquanight Note Edited: 0012961
2007-04-27 03:26 stskeeps Status new => acknowledged
2018-05-01 16:43 syzop Assigned To => syzop
2018-05-01 16:43 syzop Status acknowledged => closed
2018-05-01 16:43 syzop Resolution open => no change required
2018-05-01 16:43 syzop Note Added: 0020115