[TAC] Stop Human Spam

[TAC] Stop Human Spam [Paid] 1.4.8

No permission to buy ($19.00)
@tenants - I've got a problem with the effects of this add-on - genuine members are registering and trying to post links but the add-on is denying their content. The logs show that they make several attempts at posting their questions (or helpful replies to other people's questions), then give up and don't bother coming back [user post count 0 (zero)].

So whilst it is doing its job of holding back spammers, it is also discouraging genuine new members from participating. That's not really the effect I was looking for. :(

Is there a way to have ALL triggered content (not just banned words) pushed into the moderation queue?

This way my moderators and I could allow genuine posts through whilst keeping the spam at bay. (y)
 
Last edited:
I don't know if this is a bug or whether I need to change the settings but I'm requiring members to be registered for at least 1 day before they can post links:

upload_2014-5-13_10-30-0.webp

But this is the message they are presented with when they try to post links on the same day they register:
Rich (BB code):
Sorry, you were not able to save since the content contained a link

For this Forum, before you can create content with links, you must first meet the minimum requirements

Minimum Requirements
The number of posts you have created must exceed: 0 (Yours: 1)
The number of days you have been registered must exceed: 0 (Yours: 0)


Both of the add-on options are set to 1 but are coming up as zero in the message to the end user.

Cheers,
Shaun
 
I don't know if this is a bug or whether I need to change the settings but I'm requiring members to be registered for at least 1 day before they can post links:

View attachment 73596

But this is the message they are presented with when they try to post links on the same day they register:
Rich (BB code):
Sorry, you were not able to save since the content contained a link

For this Forum, before you can create content with links, you must first meet the minimum requirements

Minimum Requirements
The number of posts you have created must exceed: 0 (Yours: 1)
The number of days you have been registered must exceed: 0 (Yours: 0)


Both of the add-on options are set to 1 but are coming up as zero in the message to the end user.

Cheers,
Shaun

Just looking at this now,

Um... isn't that message also correct for the settings you have used. You may need to change the message to make it clear.. But if you have the min reg days to 1, then is must exceed 0 to pass (it passes at the axis point 1, this only happens when exceeding the value 0). You could/should change you message to make this clear when using 0's or 1

For instance, take out "exceed" and in your message template you could use:
Code:
Minimum Requirements<br/>
You  must have created at least {min_posts} posts (Yours: {message_count})<br/>
You must be registered for at least {min_regdays} day (Yours: {days_registered})<br/>

Just tested this exact scenario and have mapped the default message to response to make this clear


upload_2014-5-27_18-25-25.webp

This is correct for the default message, since the default message mentions the word "exceed"

Using the new message (in the code above), it would look like this:

upload_2014-5-27_18-49-12.webp

Maybe I should use this as the default message (take out the word exceed) to avoid confusion for other users, but this is not a bug... just change the message to make it clear (the values are correct)
 
Last edited:
I think this will be a clearer message, so I will add it as a default to avoid confusion for other members:


Minimum Requirements
You must have created at least 1 Posts (Yours: 1)
You must have received at least 0 Likes (Yours: 0)
Your Like:post Ratio must be at least: 0% (Yours: 0%)
You must be registered for at least 1 days (Yours 0)



If you already have this add-on installed, you will still need to update your message to this (if you want to):

Code:
Sorry, you were not able to save since the content contained a link<br/>
<br/>
For this {nodeType}, before you can create content with links, you must first meet the minimum requirements<br/>
<br/>
Minimum Requirements<br/>
You  must have created at least {min_posts} Posts (Yours: {message_count})<br/>
You  must have received at least {min_likes} Likes (Yours: {min_likes})<br/>
Your Like:Post Ratio must be at least:  {min_like_post_ratio}% (Yours: {like_post_ratio}%)<br/>
You must be registered for at least {min_regdays} days (Yours {days_registered})<br/>
 
I've just check my add-on settings and the field values in the user message are:
Code:
{min_posts_m1}
{min_regdays_m1}

I'll update them as per your post above.

Many thanks for sorting this Mike. (y)
 
Found it - just checked StopHumanSpam.php and there are two flavours of the variables - regular and m1 (minus 1):

Rich (BB code):
470    return array
471     (
472       'min_posts' => $options->shsMinPostModSig,
473       'min_likes' => $options->shsMinLikesModSig,
474       'min_reg_days' => $options->shsMinRegDaysModSig,
475       'min_like_post_ratio' => $options->shsMinLikePostRatioModSig,
476       'min_posts_m1' => $options->shsMinPostModSig -1,
477       'min_likes_m1' => $options->shsMinLikesModSig -1,
478       'min_reg_days_m1' => $options->shsMinRegDaysModSig -1,
479       'min_like_post_ratio_m1' => $options->shsMinLikePostRatioModSig -1,
480       'message_count' => $message_count,
481       'like_count' => $like_count,
482       'days_registered' => $days_registered,
483       'like_post_ratio' => $like_post_ratio,     
484     );

I can see a case for both, depending on the phrasing of the text / settings, etc. so I just need to replace mine with the regular ones (as you've explained ;)).

Cheers,
Shaun :D
 
Well, if you use the word exceeds in your messages, then min_reg_days_m1 is correct

But if you don't, then this flavour is probably less confusing:

Code:
Minimum Requirements<br/>
You must have created at least {min_posts} posts (Yours: {message_count})<br/>
You must be registered for at least {min_regdays} day (Yours: {days_registered})<br/>

instead of

Code:
Minimum Requirements<br/>
The number of posts you have created must exceed: {min_posts_m1} (Yours: {message_count})<br/>
The number of days you have been registered must exceed: {min_regdays_m1} (Yours: {days_registered})<br/>

Both are correct, but the 2nd one is causing confusion, so I've now changed the default text to the 1st version
 
What do you mean it is really off?

You should be able to hold ctrl and select forums to bypass (forums where you don't mind people adding links in their first posts etc)
Can you not select them, or are there some forums missing... you should be able to scroll down, but I don't see the vertical scroll bar in your ACP options (maybe that is the issue)

This is how I get those forums:

Code:
        $nodeModel = XenForo_Model::create('XenForo_Model_Node');        
        $forumOptions = $nodeModel->getNodeOptionsArray($nodeModel->getAllNodes(), $preparedOption['option_value'], false);
        foreach ($forumOptions as &$forumOpt){
            $forumOpt['disabled'] = ($forumOpt['node_type_id'] == "Forum" ? false : true);
        }

So, I use the core method to get all of the nodes, then I simply look at the nodeType. If it is not a forum, then I simply make it disabled
 
• Added an option to moderate posts/threads that fail the link post rules (instead of showing the user the link-rules message)

Excellent addition - thanks. :D

This should now give me an external (to the ACP) "ping" that someone has posted a link and allow me to initially look into it (and them) from the front end. (y)
 
What do you mean it is really off?

You should be able to hold ctrl and select forums to bypass (forums where you don't mind people adding links in their first posts etc)
Can you not select them, or are there some forums missing... you should be able to scroll down, but I don't see the vertical scroll bar in your ACP options (maybe that is the issue)

This is how I get those forums:

Code:
        $nodeModel = XenForo_Model::create('XenForo_Model_Node');        
        $forumOptions = $nodeModel->getNodeOptionsArray($nodeModel->getAllNodes(), $preparedOption['option_value'], false);
        foreach ($forumOptions as &$forumOpt){
            $forumOpt['disabled'] = ($forumOpt['node_type_id'] == "Forum" ? false : true);
        } 

        $forumOptions[0] = array
        (
            'value' => 0,
            'label' => 'None',
            'selected' => false,
            'depth' => 0,
            'node_type_id' => 0
        );

        sort($forumOptions);

So, I use the core method to get all of the nodes, then I simply look at the nodeType. If it is not a forum, then I simply make it disabled

Its all out of order and hard to find forums. They are not arranged as they are on the forum home.
 
Its all out of order and hard to find forums. They are not arranged as they are on the forum home.

Hmm, I added "sort($forumOptions);" since I thought this was a good idea, clearly not... I'll remove it and re-up this version

You can see all of you forums in that list though, can't you? (there is a vertical scroll bar, or is that missing)
 
Last edited:
Hi! Your addons are priceless. I changed my options to require 1 like (in addition to 10 posts and 5 days of registration). Any idea why this user triggered the plugin?

Code:
Sorry, you were not able to save since the content contained a link<br/>
<br/>
For this Forum, before you can create content with links, you must first meet the minimum requirements<br/>
<br/>
Minimum Requirements<br/>
You must have created at least 10 Posts (Yours: 30)<br/>
You must have received at least 1 Likes (Yours: 1)<br/>
Your Like:Post Ratio must be at least: 0% (Yours: 0%)<br/>
You must be registered for at least 5 days (Yours 2122)<br/>



Oh - maybe this is it. Is this line in the default message correct?

You must have received at least {min_likes} Likes (Yours: {min_likes})<br/>

I think it should be {like_count} ;)
 
Top Bottom