Big Brother v1.0

Release Notes

Enables a word-based censor for all user input.  Optionally can report offensive language via the
Reported Content plugin.

** INSTALLATION **
        * Unzip the file to the elgg/mods/ directory.
        * Go to your Elgg tools administration section, find the uncaptcha tool, and
          enable it.
        * Customize the settings if desired. 


** TODO **
        * Make censoring by certain types / subtypes work.
        * Make the

  • For the 9 people who downloaded this plugin yesterday, that version was seriously broken.  Please re-download this version.  Thanks!

  • Cool man..  I am just starting up a site for our Counter Strike clan.. its pg and we used to only use vb forums.. but I got elgg going.. This tool will help greatly.. I will install and test it out, let you know how it goes.. Woot!

  • I was one of the 9 who had downloaded it previously.  It worked a treat and I had enjoyed entering all the swear words I could think of (although fans of Arsenal and the people of Scunthorpe would be unhappy).  It seemed to be working fine.  Today I disabled it, deleted the directory, and copied over the updated version.  When I enabled it, I got a screen full of "you have entered a bad word"-type messages and all my plugins had been disabled.

    It's only a test version running under XAMPP - so no big deal and my test data seems to be unaffected.

  • EssexJames,

    This is a problem I received from another person, but I was unable to duplicate.  In fact, that error was on the old version of the plugin, and I had hoped this version would fix it.  Could you give me some details about what plugins are enabled, what order they're in, etc?  If you have the diagnostics plugin enabled, can you email me the results of running the file?

     

    Thanks,

    Brett

  • Brett,

    Can do.  I'm reasonably new here so you'll need to tell me how to email you!

    James

  • This might help in future versions...  I actually modified my input.php file since I couldn't figure out how to write a plug-in like this one.  I placed a function to this custom call in all the calls made to get_input():

     

     

        //theme_OakPages modification: remove bad words
        function filterBadWords($str){

     // words to filter
     $badwords=array('(\b|\W|\d)put(a|o|as|os)+(\b|\W|\d)','(\b|\W|\d)mie(r|l)+das?(\d)?','(\d)?(s|c)+erot(e|a|es|as|io|ia)+(\d)?',
                                         '(\d)?pajer(o|a|os|as)+(\d)?','(\d)?paj(eo|ea|ar|ea|ear|ie)+(\d)?','(\d)?pi(s|z)+ad(o|a|os|as)+(\d)?','(\d)?ching(o|a|ue|e|as|adera)+(\d)?',
                                         '(\b|\W|\d)chim(o|a|ar|as)+(\b|\W|\d)', '(\b|\W|\d)trin(c|q)+(a|ar|ue|ues|ada|adera)+s?(\b|\W|\d)', 'desgraciad',
                                         'bastard(a|o)?','f(o|u)+ck','sanaba', 'jodid(o|a)+', 'jodist','wanna lick','lick.?your','lick ur','(\b|\W|\d)chupam',
                                         '(\b|\W|\d)verg(ea|a)+','(\b|\W|\d)cul(o|a|ero|era|ito|ita)+s?(\b|\W|\d)',
                                        '(\b|\W|\d)nigger(\b|\W|\d)','(\b|\W|\d)gring(o|a)+','(\b|\W|\d)pakis?(\b|\W|\d)','panooch','(\b|\W|\d)pecker','peckerhead','tracero','(\b|\W|\d)ass(es)?(\b|\W|\d)',
                                        '((\b|\W|\d)pis?s(ed|es|t|d)?.off?)|((\b|\W|\d)piss?(ed|es|t|d)?(\b|\W|\d))', 'ass.?cra(ck|c|k)+',
                                        'pollock','(\b|\W|\d)poon(\b|\W|\d)','poonami','poonany','de perr(o|a)?s?','(\b|\W|\d)prick','punammy',
                                        'puss(i|a|y|e)+(s|es|cat|lick(s|ings|ing)?)?','(\b|\W|\d)shit','(\b|\W|\d)crap',
                                        'ass.?holes?','(\b|\W|\d)wank','wet.?back','(\d)?whore(s|\d|.)?','(\b|\W|\d)hussy','(wanna|want to)+ touch (your|ur)+','va-j-j','vjayjay',
                                        '(\b|\W|\d)t(a|u)+rd(\b|\W|\d)', 'thunder.?cunt','(\b|\W|\d)tit(\b|\W|\d|s|t|i|y)+(\d)?',
                                        '(\b|\W|\d)twats?(\b|\W|\d)', '(\b|\W|\d)twatlips?', 'twatwaff?l?es?l?', '(\b|\W|\d)huec(o|a)+', '(\b|\W|\d)lesbo', 'sand.?nigger', '(\b|\W|\d)schlong',
                                        '(\b|\W|\d)pija(so|zo|s|da)?', '(\b|\W|\d)verga', 'perlar(me|se|nos)+.?(el|la)+', 'meter(me|se|nos|le)+.?(el|la)+',
                                        '(\b|\W|\d)dick', 'dick.?head', 'shit.?di(ck|c|k)+', 'shit.?fa(c|s)+e', 'shit.?hea?d', 'shit.?hole?s?', 'shit.?house?s?',
                                        'shit.?stains?','shitt','shit.?spit','(\b|\W|\d)shizs?(\b|\W|\d)','shemale','maldit(os|as|o|a)+', 'get(t?ing)?.?high', 'el.?culo','(\b|\W|\d)hell(\b|\W|\d)',
                                        'splooge','(\b|\W|\d)cum(\b|\W|\d|m|s)?', 'stiff?y', '(\b|\W|\d)renob(\b|\W|\d)', 'erec(t|c)+ion', 'rim.?job', 'hand.?job', '(\b|\W|\d)runski(\b|\W|\d)',
                                        '(\b|\W|\d)queef(\b|\W|\d)','(\b|\W|\d)queer(s|ed|er|ing|ded)?(\b|\W|\d)','(\b|\W|\d)nigga','(\b|\W|\d)niglet','nut.?sack',
                                        '(\b|\W|\d)(mc|mac)?fagg(e|o)+t','(\b|\W|\d)minge(\b|\W|\d)', 'mo(th|ht|t)+(a|ar|e|er).?fu(ck|c|k)+(a|e)?r?s?', '(\b|\W|\d)muff(\b|\W|\d)',
                                        'muff/?driv','(\b|\W|\d)munging','lezzie','(\b|\W|\d)k(i|y)+ke(\b|\W|\d)',
                                        '(\b|\W|\d)koot?ch','jack.?ass?(\b|\W|\d)','jerk.?off?','jigaboo','(\b|\W|\d)jizz?(\b|\W|\d)','lechita','jungle.?bunn?(y|i|ie)+s?', 'blo(w|u|ws|us)+.?jobs?',
                                        '(homo.?)?dum?b?.?shit(\b|\W|\d)','(\b|\W|\d)shet(\b|\W|\d)','(\b|\W|\d)honkey(\b|\W|\d)','(\b|\W|\d)horny','god.?dam', '(\b|\W|\d)gook(\b|\W|\d)',
                                        '(\b|\W|\d)guid(o|a|os|as)+(\b|\W|\d)','(\b|\W|\d)fat.?ass?(\b|\W|\d)','fuck.?brain','fucked','fuck.?hole','(\b|\W|\d)dildo','(\b|\W|\d)douche',
                                        '(\b|\W|\d)(c|k)+rou?ch','(\b|\W|\d)bampot(\b|\W|\d)','marijuana','marihuana','(\b|\W|\d)b(i|ea|ia)+tch', '(\b|\W|\d)bull?.?shit', '(\b|\W|\d)bs(\b|\W|\d)',
                                        '(\b|\W|\d)pendej','tarantad','(\b|\W|\d)diab(ol|la|lo)+','(\b|\W|\d)satan(\b|\W|\d)','lucifer','(\b|\W|\d)demoni',
                                        'ann?al.?sex', 'sexo?.?ann?(o|al)+', 'oral.?sex', 'sexo?.?oral', 'crack.?coc', 'cocainn?(a|e)+', 'smok(e|ed|ing)+s?.?pot', 'fuma(r|s|ndo|ba|mo|ste|e)?s?.?mari');

     for($i=0; $i<sizeof($badwords); $i++){
      $str = eregi_replace($badwords[$i], '[!]', $str);
     }

     return $str;
    }

  • Gabriel,

    Thanks!  This is actually similar to what the first release was doing before I removed it.  The problem was I had tried to automate the creation of a regex list based on words entered in the plugin's setting.  It got overly-complicated and was giving tons of false positives so I cut it for this release.

    James, please contact me at brett [[dot]] profitt [[at]] eschoolconsultants.com with details and we'll see what's going on.  Has anyone else experienced the problems James had?

  • I have just downloaded the plugin and am having the same issue.  All plugins become disabled and their order is rearranged (almost completely reversed) - which in turn messes with the orkut theme plugin.

     


     

  • Pecam,

    Please contact me at my email address (above) with a list of plugins enabled, the settings you used for big brother, and your server information.  If you have the diagnostics plugin enabled, the output of that plugin would help also...

Brett

Elgg Core Developer

Stats

  • Category: User admin
  • License: GNU General Public License (GPL) version 2
  • Updated: 2014-11-17
  • Downloads: 3757
  • Recommendations: 2

Other Projects

View Brett's plugins