Post Friction

Post Friction [Paid] 1.6.1

No permission to buy ($20.00)

Xon

Well-known member
Xon submitted a new resource:

Post Friction - Slowdown some types of "spammy" posting.

Introduces friction for low-effort posting. Asks if they are sure and really want to post when:
  • Replying to old threads - global or per thread.
  • Low-word count posts* - per thread.
If the user accepts, this is recorded into the database but there is currently no UI this log.
More counter measures will be introduced over time.

*For wordcount checking, requires Enhanced Search...

Read more about this resource...
 
I see the error notice on the Screen and the information faded in the back.
Is this more visible right away or how does it look before the error pops up?

Wasserlasser
 
I see the error notice on the Screen and the information faded in the back.
Is this more visible right away or how does it look before the error pops up?

Wasserlasser
This is an artefact of the error message popup shading the rest of the page, when you click back on the message it returns to normal.

My site has a fairly dark theme, so this isn't representative of how the standard error dialog looks on the light theme.
 
And it calculates actual words not characters?
What defines a word? Is there a minimum of characters?
It counts by 'word' not characters, and the definition uses unicode definition of digits and letters and the ' symbol of what consists of a word.

This works in most cases, but it can be a minefield diving into exactly what people consider a word. But could do with some tweaking for the characters;
Code:
"-_
 
Last edited:
I have set it to 8 words but people can still post something with only two words.
How is that possible?

http://www.wasserlasser.com/threads/jerseys-cologne-sharks-2016-17.2854/#post-6386
It is only a soft-word limit, they are prompted if they want to accept that and post anyway. It records if they do this, but I don't yet have a UI to look at it yet.

Can you check the post to dump the exact bbcode contents (from the xf_post table)? As there are a bunch of ways it could be defeated.
 
Xon updated Post Friction with a new update entry:

Feature Update

  • Display paginated list of users who have posted anyway despite the post-friction warning.
    • example2-png.145667
  • Records exact reason why the post friction warning occurred (requires data migration)

Read the rest of this update entry...
 
This resource breaks deleting resources from the resource manager that are older than the limit.
One of my goals for writing Post Friction was to replace "TPU: Show Warning when bumping Old Threads" with a more comprehensive solution which didn't interfere with other add-ons.
 
One of my goals for writing Post Friction was to replace "TPU: Show Warning when bumping Old Threads" with a more comprehensive solution which didn't interfere with other add-ons.
What capabilities change when the ES word count addon is installed?
 
What capabilities change when the ES word count addon is installed?
Nothing in Post Friction, as I ended up removing the hard dependency. If both are installed, on saving a post; the word count is only computed once instead of computing it multiple times.
 
Nothing in Post Friction, as I ended up removing the hard dependency. If both are installed, on saving a post; the word count is only computed once instead of computing it multiple times.
Thanks, purchasing now
 
  • Like
Reactions: Xon
Code:
                if ($age > 365*2)
                {
                    $agePhrase = new XenForo_Phrase('sv_x_years', array('years' => floor($age/365)));
                }
                else if ($age > 365)
                {
                    $agePhrase = new XenForo_Phrase('sv_x_year', array('year' => floor($age/365)));
                }
                else if ($age > 60)
                {
                    $agePhrase = new XenForo_Phrase('x_months', array('months' => floor($age/60)));
                }
                else
                {
                    $agePhrase = new XenForo_Phrase('x_days', array('days' => floor($age)));
                }
I think better code is needed for this, because for example something posted 3 months ago (90 days) will only be treated as 1 month (floor(90/60) = 1)
 
Top Bottom