I'm trying to find or create a profanity / swear filter. I did my foot work / searched around the site and it doesn't seem like one exists. I'm very well versed in PHP and fairly familiar with Elgg. I'm having trouble trying to figure out how to hook all input (or output) to filter out the text.
I know how to do it with modifications to the core, but I obviously try to avoid core modification whenever possible. Plus I'd like to create a stand-alone profanity filter module that I could share with the community.
The only option I've come up with so far would be to override the view/outputs and filter it there, but this feels a bit to hack-like. Is there any way to hook all input and check it? OR any other alternative idea would be appreciated.
thanks in advance.
Lenny
info@elgg.org
Security issues should be reported to security@elgg.org!
©2014 the Elgg Foundation
Elgg is a registered trademark of Thematic Networks.
Cover image by RaĆ¼l Utrera is used under Creative Commons license.
Icons by Flaticon and FontAwesome.
- DhrupDeScoop@Dhrup2000
DhrupDeScoop - 0 likes
- Lenny@itsLenny
Lenny - 0 likes
- filter
- profanity
- profanity filter
- swear filter
- bad language
- swear
- input
all with no applicable results in the plugin section of the elgg community. Do you happen to remember the name of any of the plug-ins?
- Lenny@itsLenny
Lenny - 0 likes
- Lenny@itsLenny
Lenny - 0 likes
You must log in to post replies.There has already been three different implementations for bad language censoring in Elgg over the past 12 months or so - these are all non-core-hacks - but proper PlugIns ;)
Do you by any chance have the names of ANY of them? I tried searching:
nevermind I found it by searching for "word" ... the one I found is called Big Brother and it is located here: http://community.elgg.org/pg/plugins/project/384694/developer/brett.profitt/big-brother
(incase anyone else comes across this discussion looking for the same thing as I was)
Also, for reference for anyone looking to hook input you an use the following to hook all create and update commands:
register_elgg_event_handler('create', 'all', 'bigbrother_filter_entity');
register_elgg_event_handler('update', 'all', 'bigbrother_filter_entity');
You can see full details of it in action in the big brother module I posted above