| | 17 | // Do Local spam check with "Thief-cat algorithm" |
| | 18 | $count = 0; |
| | 19 | $tableName = $database['prefix'] . 'Trackbacks'; |
| | 20 | |
| | 21 | if ($type == 2) // Trackback Case |
| | 22 | { |
| | 23 | $sql = 'SELECT COUNT(id) as cc FROM ' . $database['prefix'] . 'trackbacks WHERE'; |
| | 24 | $sql .= ' url = \'' . mysql_tt_escape_string($url) . '\''; |
| | 25 | $sql .= ' AND isFiltered > 0'; |
| | 26 | |
| | 27 | if ($result = mysql_query($sql)) { |
| | 28 | $row = mysql_fetch_row($result); |
| | 29 | $count += @$row[0]; |
| | 30 | } |
| | 31 | |
| | 32 | } else { // Comment Case |
| | 33 | $tableName = $database['prefix'] . 'Comments'; |
| | 34 | |
| | 35 | $sql = 'SELECT COUNT(id) as cc FROM ' . $database['prefix'] . 'trackbacks WHERE'; |
| | 36 | $sql .= ' comment = \'' . mysql_tt_escape_string($content) . '\''; |
| | 37 | $sql .= ' AND homepage = \'' . mysql_tt_escape_string($url) . '\''; |
| | 38 | $sql .= ' AND name = \'' . mysql_tt_escape_string($name) . '\''; |
| | 39 | $sql .= ' AND isFiltered > 0'; |
| | 40 | |
| | 41 | if ($result = mysql_query($sql)) { |
| | 42 | $row = mysql_fetch_row($result); |
| | 43 | $count += @$row[0]; |
| | 44 | } |
| | 45 | } |
| | 46 | |
| | 47 | // Check IP |
| | 48 | $sql = 'SELECT COUNT(id) as cc FROM ' . $tableName . ' WHERE'; |
| | 49 | $sql .= ' ip = \'' . mysql_tt_escape_string($_SERVER['REMOTE_ADDR']) . '\''; |
| | 50 | $sql .= ' AND isFiltered > 0'; |
| | 51 | |
| | 52 | if ($result = mysql_query($sql)) { |
| | 53 | $row = mysql_fetch_row($result); |
| | 54 | $count += @$row[0]; |
| | 55 | } |
| | 56 | |
| | 57 | if ($count >= 10) { |
| | 58 | return false; |
| | 59 | } |
| | 60 | |