class FILTER {
function startFilter($click_id, $ip_id, $ip_address, $user_id) {
$filter = FILTER::checkUserIP($click_id, $ip_id, $user_id);
if ($filter == false) {
$filter = FILTER::checkNetrange($click_id, $ip_address);
if ($filter == false) {
$filter = FILTER::checkLastIps($user_id, $ip_id);
}
}
if ($filter == true) {
return 1;
} else {
return 0;
}
}
function checkUserIP($click_id, $ip_id, $user_id) {
$mysql['ip_id'] = mysql_real_escape_string($ip_id);
$mysql['user_id'] = mysql_real_escape_string($user_id);
$count_sql = "SELECT COUNT(*)
FROM 202_users
WHERE user_id='".$mysql['user_id']."'
AND user_last_login_ip_id='".$mysql['ip_id']."'";
$count_result = _mysql_query($count_sql) ;
if (mysql_result($count_result,0,0) > 0) {
return true;
}
return false;
}
function checkNetrange($click_id, $ip_address) {
$ip_address = ip2long($ip_address);
if (($ip_address >= 1208926208) and ($ip_address <= 1208942591)) { return true; }
if (($ip_address >= 1093926912) and ($ip_address <= 1094189055)) { return true; }
if (($ip_address >= 3512041472) and ($ip_address <= 3512074239)) { return true; }
if (($ip_address >= 3640418304) and ($ip_address <= 3640426495)) { return true; }
if (($ip_address >= 1123631104) and ($ip_address <= 1123639295)) { return true; }
if (($ip_address >= 1094189056) and ($ip_address <= 1094451199)) { return true; }
if (($ip_address >= 3515031552) and ($ip_address <= 3515039743)) { return true; }
if (($ip_address >= 3633393664) and ($ip_address <= 3633397759)) { return true; }
if (($ip_address >= 1089052672) and ($ip_address <= 1089060863)) { return true; }
if (($ip_address >= 1209925632) and ($ip_address <= 1209991167)) { return true; }
if (($ip_address >= 1241907200) and ($ip_address <= 1241972735)) { return true; }
if (($ip_address >= 637534208) and ($ip_address <= 654311423)) { return true; }
if (($ip_address >= 3475898368) and ($ip_address <= 3475963903)) { return true; }
if (($ip_address >= -782925824) and ($ip_address <= -782893057)) { return true; }
return false;
}
function checkLastIps($user_id, $ip_id) {
$mysql['user_id'] = mysql_real_escape_string($user_id);
$mysql['ip_id'] = mysql_real_escape_string($ip_id);
$check_sql = "SELECT COUNT(*) AS count FROM 202_last_ips WHERE user_id='".$mysql['user_id']."' AND ip_id='".$mysql['ip_id']."'";
$check_result = _mysql_query($check_sql) ;
$check_row = mysql_fetch_assoc($check_result);
$count = $check_row['count'];
if ($count > 0) {
return true;
} else {
$mysql['time'] = time();
$insert_sql = "INSERT INTO 202_last_ips SET user_id='".$mysql['user_id']."', ip_id='".$mysql['ip_id']."', time='".$mysql['time']."'";
$insert_result = _mysql_query($insert_sql) ;
return false;
}
}