PDA

View Full Version : Anti-Spam Options - DRC - User must verify their site (prevent spam links in postbit & profiles)


Dr.CustUmz
11-24-2020, 10:00 PM
Tired of users posting random ass sites as their site and having all sorts of links to garbage sites on your board?

Here's an easy solution, lets make them verify they own the site they enter as theirs!

This modification does require a file edit, I will port to a mod when I find time.

open profile.php and find:
$userdata->set('homepage', $vbulletin->GPC['homepage']);

Replace it with:
if($vbulletin->GPC['homepage'] == '') {
$userdata->set('homepage', $vbulletin->GPC['homepage']);
} else {
$home_paga = str_replace('http://','',$vbulletin->GPC['homepage']);
$home_paga = str_replace('https://','',$home_paga);
$home_paga = str_replace('www.','',$home_paga);
$home_paga = str_replace('/','',$home_paga);
if(@fopen ('http://'.$home_paga.'/YourOwnAnagram_site_verification_'.$vbulletin->userinfo['userid'].'.txt', 'r')){
$userdata->set('homepage', $vbulletin->GPC['homepage']);
}
}

Plain text breakdown of this code for people not code savey,
this will only take effect when users edit their details. When they submit their changes, the code does the following:

- if homepage url is blank
- set the field to blank
- if homepage url is not blank
- checks what's in the box and replaces bits of text to get the domain
- opens a connection to the site entered and looks for the file drc_site_verification_USERID.txt
- if that file exists, go ahead and change their domain

Edit YourOwnAnagram to be something unique that other sites wont be using also. example, I use drc

Then in phrases search for:
let_other_visitors_know_url

You can replace this phrase with anything you like letting your members know. I use:
This option will allow you to display a link to your site in all your forum posts.<br>
<br>
Before your site is displayed you must verify ownership, to do this you need to: <br>
Place an empty file with the name: drc_site_verification_<b>ID</b>.txt<br>
<br>
Where <u>ID</u> is your ID on our forum. <br>example: <i>http://domain.com/drc_site_verification_100.txt</i><br>
<br>
<i>If this file is not found, your homepage URL will not be updated!</i>
<br>


This is a method of spam prevention I have not seen on here before, so I hope you guys get some use from it =)

This will not effect any sites already entered by your users, if you need to clear all sites entered by users you can use the following query:
UPDATE user SET homepage = '';

puertoblack2003
11-29-2020, 11:03 AM
thanks nice mod i had to make a small change with url

for those with https from http :up:

Dr.CustUmz
11-29-2020, 07:39 PM
thanks nice mod I had to make a small change with url

for those with https from http :up:

you want it as I typed it, a file can be requested through http even though it is on https, but not vice versa.

The way it is built, no matter what combination the user has entered into their URL, IE:

site.com
http://site.com
https://site.com
http://www.site.com

ALL will return

http://site.com/verification_file.txt there is no need to change anything in the code, it will work on http or https, and has been tested

puertoblack2003
11-29-2020, 08:57 PM
you want it as I typed it, a file can be requested through http even though it is on https, but not vice versa.

The way it is built, no matter what combination the user has entered into their URL, IE:

site.com
http://site.com
https://site.com
http://www.site.com

ALL will return

http://site.com/verification_file.txt there is no need to change anything in the code, it will work on http or https, and has been tested


not sure whats going . but not working using a test user,I even checked to see is fopen is enabled.

Dr.CustUmz
11-29-2020, 10:42 PM
not sure whats going . but not working using a test user,I even checked to see is fopen is enabled.

it works, the users URL will not be updated if the TXT file is not on the domain

yilmaz
11-30-2020, 04:02 PM
In fact, vbulletin.org should use this plugin too.
Most of the users have added a fake website profile.