if ($protocol == null) { $url = 'http://' . $url; } $error = process_url($url); if ($error > 0) { goto out; } $url = trim($url, '/'); $codes = get_codes_for_url($url); $ip = get_IP(); $uuid = DEFAULT_UUID; if (strlen($code) == 0) { if (count($codes) == 0) { $id = get_next_id(); $code = int2code($id, false); if (code_spam_exists($code)) { $id = mt_rand(get_next_id() + 1, 0xffffff); $code = int2code($id, false); } insert_url($code, $url, $ip, $uuid); } else { $code = $codes[0]->code; } } else { if (!empty($codes)) { if (in_array($code, $codes)) { goto out; } } if (code_exists($code)) { $error = ERR_ALIAS_ALREADY_EXISTS;
function block_url($code, $url, $reason, $ip) { global $mydb; $table = DB_SPAM_TABLE; $result = false; if (code_exists($code)) { if (strcmp($url, get_url($code)) == 0) { delete_code($code); } } if (code_spam_exists($code)) { return true; } $result = $mydb->query("INSERT INTO `{$table}` (code, url, reason, ip, date) VALUES ('{$code}', '{$url}', '{$reason}', '{$ip}', NOW())"); return $result; }