Thread: Administrative and Maintenance Tools - MonkeyStop - Auto-Moderation of Spammer Keywords and URLs by postcount
View Single Post
  #5  
Old 10-18-2006, 04:28 PM
tweakmonkey tweakmonkey is offline
 
Join Date: Jul 2006
Posts: 63
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Protoman
this is almost identical to andreas code.
It's based on his code and that's why I gave him so much credit and mention that several times throughout the post and documentation. His version did not work for me, so I fixed it for everyone else.

I tried PMing Andreas to request an update but his PM box is full. I also tried e-mailing him but his address is not listed. His web site was too confusing for me (as it's not English and some pop-ups that got in the way) so I couldn't find a way to contact him about this mod.

He hadn't updated his mod in over a year and doesn't list that he supports it -- meaning that anyone using VB 3.6+ doesn't have the option to use it (and it's a great concept for sure). I figured this could help some people and I give him all the credit for the original mod in both my post and the readme.txt. I just gave it a slightly different name so I can keep developing it without conflicting with his version -- if I make more changes I'll post them up and anyone can use them / modify them as well to continue developing this concept.

I hope this is acceptable, I really just wanted to help the community.

Here are the changes I made in case you were curious:
---
1) Andreas' code did not work with VB 3.6.0 (at least for me) because the $this->fetch_field('pagetext') field seemed invalid when posting new threads, so his mod did not stop new threads from being posted (the biggest problem with spammers). I changed this to $this->fetch_field('pagetext', 'post') which fixed this.

2) I added two alternate conditional statements that check how many times the string "http:" is contained in the post:
Code:
if (substr_count($this->fetch_field('pagetext', 'post'), 'http:') > $this->registry->options['automodurls'])
If there's a more effective method to prevent a user from posting links I can modify it -- it was really just a last minute idea but it works well (see screenshot).

3) I added the # of URLs to the plugin as a new setting so it can be defined in the admin panel.

4) Andreas code said to use "colon" to separate the keywords, but it requires commas.

5) There was at least one typo and some hard to digest instructions that I cleaned up. I also re-wrote the readme with info on how to warn users their thread was blocked, since that wasn't addressed in the original.

6) It now also checks the post count of the user and only filters posts if they are below the threshold.
Reply With Quote
 
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.01095 seconds
  • Memory Usage 1,769KB
  • Queries Executed 11 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD_SHOWPOST
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)bbcode_code
  • (1)bbcode_quote
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)post_thanks_box
  • (1)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (1)post_thanks_postbit_info
  • (1)postbit
  • (1)postbit_onlinestatus
  • (1)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open 

Phrase Groups Available:
  • global
  • postbit
  • reputationlevel
  • showthread
Included Files:
  • ./showpost.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_post_thanks.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_postinfo_query
  • fetch_postinfo
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showpost_start
  • bbcode_fetch_tags
  • bbcode_create
  • postbit_factory
  • showpost_post
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • fetch_musername
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • showpost_complete