vb.org Archive

vb.org Archive (https://vborg.vbsupport.ru/index.php)
-   vB3 General Discussions (https://vborg.vbsupport.ru/forumdisplay.php?f=111)
-   -   Flagging Particular Posts (https://vborg.vbsupport.ru/showthread.php?t=82420)

BettorsTalk.com 06-02-2005 07:52 PM

Flagging Particular Posts
 
Does anyone know if there is a hack for vbulletin that will flag certain messages that contain certain words for example "+++++++" and once it flags it the post doesn't get posted, but is sent to a moderator or administrator and a warning is sent to the user that posted the message?

If so can someone please direct me to this hack. And what kind of resources or should I say strain would this put on a server/database? In other words wouldn't the software have to filter every single post to through out a post by the definition above?

Wired1 06-02-2005 09:11 PM

Don't think it would put much strain on a server, as vB already scans for words in posts via the Replacement Variable Manager (and the banned word list of course). Actually, it'd just be an if/then in the right place (if you don't mind hard coding it). It'd only get a bit more complicated if it was a dynamic option within the admin menu, but no more strain than any other switch.

Andreas 06-02-2005 09:55 PM

Just some idea:

Create a new setting and call it flagwords.

In functions_newpost.php

FIND
PHP Code:

// ### DUPE CHECK ### 

ABOVE that ADD
PHP Code:

        if (!empty($vboptions['flagwords']))
        {
                
$found false;
                
$lcpost strtolower($post['message']);
                foreach (
explode(' 'strtolower($vboptions['flagwords'])) as $flagword)
                {
                        
$found |= strpos($lcpost$flagword);
                }
                if (
$found) {
                        
$post['visible'] = 0;
                }
        } 

Then posts containing any of the words in flagwords will go into moderation.

BettorsTalk.com 06-03-2005 01:44 AM

Quote:

Originally Posted by KirbyDE
Just some idea:

Create a new setting and call it flagwords.

In functions_newpost.php

FIND
PHP Code:

// ### DUPE CHECK ### 

ABOVE that ADD
PHP Code:

        if (!empty($vboptions['flagwords']))
        {
                
$found false;
                
$lcpost strtolower($post['message']);
                foreach (
explode(' 'strtolower($vboptions['flagwords'])) as $flagword)
                {
                        
$found |= strpos($lcpost$flagword);
                }
                if (
$found) {
                        
$post['visible'] = 0;
                }
        } 

Then posts containing any of the words in flagwords will go into moderation.


What do you mean the flagged words would go into moderation? And is there anyway to have it send an e-mail to the person that made the post with a comment on why the post didn't show up?

Andreas 06-03-2005 01:57 AM

Quote:

Originally Posted by BettorsTalk.com
What do you mean the flagged words would go into moderation?

Let's say you've specified bad words as the words that should trigger this.
Now a user posts
Quote:

This sentence contains bad words
Then this post will go into the moderation queue.

Quote:

And is there anyway to have it send an e-mail to the person that made the post with a comment on why the post didn't show up?
Sure. Create a new phrase postflagged with appropriate text in phrasegroups Email Subject Text and Email Body Text.
Then place the following code after $post['visible'] = 0;

PHP Code:

eval(fetch_email_phrases('postflagged'$bbuserinfo['languageid']));
vbmail($bbuserinfo['email'], $subject$messagetrue); 


BettorsTalk.com 06-03-2005 03:38 PM

KirbyDE,

Now would this work with the Replacement Variable Manager hack that I had installed ?

In other words I want this to only work with certain banned words that I have in the replacement variable manager hack as I have other words in the Vbulletin Options Censorship Options that I don't need this associated with.

Thanks

Andreas 06-03-2005 03:47 PM

Quote:

Originally Posted by KirbyDE
Create a new setting and call it flagwords.

This means that this modifications has it's own wordlist, which is totally independant from Replacement Variables and Censored Words.

BettorsTalk.com 06-03-2005 05:36 PM

KirbyDE,

What you told me to do then will work with say more than 1 word?

Example: Northcoast Trivia
Example: Northcoast Trivia Tests

Thanks!

Andreas 06-03-2005 05:38 PM

Sure, just separate them by space

Willard Reece 06-13-2005 08:57 PM

Quote:

Originally Posted by KirbyDE
Just some idea:

Create a new setting and call it flagwords.

In functions_newpost.php

FIND
PHP Code:

// ### DUPE CHECK ### 

ABOVE that ADD
PHP Code:

        if (!empty($vboptions['flagwords']))
        {
                
$found false;
                
$lcpost strtolower($post['message']);
                foreach (
explode(' 'strtolower($vboptions['flagwords'])) as $flagword)
                {
                        
$found |= strpos($lcpost$flagword);
                }
                if (
$found) {
                        
$post['visible'] = 0;
                }
        } 

Then posts containing any of the words in flagwords will go into moderation.


Create a new setting and call it flagwords. where?
explain more please

Andreas 06-14-2005 08:59 PM

Quote:

Originally Posted by Willard Reece
Create a new setting and call it flagwords. where?
explain more please

In the vBulletin Options - where exactly is up to you to decide :)
I'd most likely place it in Censorship Options.

Willard Reece 06-14-2005 09:27 PM

Quote:

Originally Posted by KirbyDE
In the vBulletin Options - where exactly is up to you to decide :)
I'd most likely place it in Censorship Options.

your saying add the name flagwords to the Censorship Options without the {} and save it and edit functions_newpost.php
and that should do it?
or please show an example of what your saying.....

whats throwing me off is you said create a new setting

Andreas 06-14-2005 09:39 PM

1 Attachment(s)
Yes, create a new Setting:

Open the Setting/Option Group where you want it to appear and click Add Setting.
See screenshot.

Please note that debug mode must be turned on to add new settings.

Willard Reece 06-14-2005 09:53 PM

where do I turn on debug.... thought I knew but guess not

Andreas 06-14-2005 09:58 PM

PHP Code:

$debug 1

in config.php

Willard Reece 06-14-2005 10:02 PM

The bold below causes a file error when adding a thread

Warning: strpos(): Empty delimiter. in /includes/functions_newpost.php on line 313



if (!empty($vboptions['flagwords']))
{
$found = false;
$lcpost = strtolower($post['message']);
foreach (explode(' ', strtolower($vboptions['flagwords'])) as $flagword)
{
$found |= strpos ($lcpost, $flagword); [U] }
if ($found) {
$post['visible'] = 0;
}
}

Quote:

Originally Posted by KirbyDE
Let's say you've specified bad words as the words that should trigger this.
Now a user posts

Then this post will go into the moderation queue.


Sure. Create a new phrase postflagged with appropriate text in phrasegroups Email Subject Text and Email Body Text.
Then place the following code after $post['visible'] = 0;

PHP Code:

eval(fetch_email_phrases('postflagged'$bbuserinfo['languageid']));
vbmail($bbuserinfo['email'], $subject$messagetrue); 



can you also explain this better?

Byron 06-18-2005 03:08 PM

I am looking for a script to assist moderating.

It will be good if there is a script that can check all new posts and detect words from a list.

If any word from the list is detected, it will send an email to an email address.

This way we can be notified immediately when any sensitive words are in a new post.

nmorris666 06-21-2005 07:49 PM

1 Attachment(s)
ok, I am trying this as well. I have the code in the functions_newpost.php, and the flagwords setup. I attached the setup. Any ideas?


All times are GMT. The time now is 06:46 PM.

Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.

X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.01807 seconds
  • Memory Usage 1,788KB
  • Queries Executed 10 (?)
More Information
Template Usage:
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (9)bbcode_php_printable
  • (9)bbcode_quote_printable
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)post_thanks_navbar_search
  • (1)printthread
  • (18)printthreadbit
  • (1)spacer_close
  • (1)spacer_open 

Phrase Groups Available:
  • global
  • postbit
  • showthread
Included Files:
  • ./printthread.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/class_bbcode_alt.php
  • ./includes/class_bbcode.php
  • ./includes/functions_bigthree.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • printthread_start
  • bbcode_fetch_tags
  • bbcode_create
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • printthread_post
  • printthread_complete