Исправления ошибок

Мусорный файл, исправление ошибки с начислением сидбонусов (строгая типизация), изменение метода поисковой строки (заработает "поисковость" в Яндекс.Браузер и т.п.).
This commit is contained in:
Exile 2014-11-23 00:42:41 +03:00
commit 740eb64a51
4 changed files with 21 additions and 191 deletions

View file

@ -411,12 +411,6 @@ function hide_bb_path ($path)
return ltrim(str_replace(BB_PATH, '', $path), '/\\');
}
function tr_drop_request ($drop_type)
{
if (DBG_LOG) dbg_log(' ', "request-dropped-$drop_type");
dummy_exit(mt_rand(60, 600));
}
function sys ($param)
{
switch ($param)
@ -511,7 +505,7 @@ else if (defined('IN_TRACKER'))
// Exit if tracker is disabled via ON/OFF trigger
if (file_exists(BB_DISABLED))
{
dummy_exit(mt_rand(60, 2400)); # die('d14:failure reason20:temporarily disablede');
dummy_exit(mt_rand(60, 2400));
}
}
}

View file

@ -71,15 +71,15 @@ if ($tr_cfg['update_dlstat'])
// Set "only 1 seeder" bonus
DB()->query("
UPDATE
". NEW_BB_BT_LAST_TORSTAT ." tb,
". BB_BT_TRACKER_SNAP ." sn
". NEW_BB_BT_LAST_TORSTAT ." tb,
". BB_BT_TRACKER_SNAP ." sn
SET
tb.bonus_add = tb.up_add
tb.bonus_add = tb.up_add
WHERE
tb.topic_id = sn.topic_id
AND sn.seeders = 1
AND tb.up_add != 0
AND tb.dl_status = ". DL_STATUS_COMPLETE ."
tb.topic_id = sn.topic_id
AND sn.seeders = 1
AND tb.up_add != 0
AND tb.dl_status = ". DL_STATUS_COMPLETE ."
");
// Get SUMMARIZED user's dlstat
@ -154,7 +154,7 @@ DB()->query("DROP TABLE IF EXISTS ". NEW_BB_BT_LAST_USERSTAT .", ". OLD_BB_BT_LA
DB()->expect_slow_query(10);
if($bb_cfg['seed_bonus_enabled'] && $bb_cfg['seed_bonus_points'] && $bb_cfg['seed_bonus_release'])
if ($bb_cfg['seed_bonus_enabled'] && $bb_cfg['seed_bonus_points'] && $bb_cfg['seed_bonus_release'])
{
DB()->query("
CREATE TEMPORARY TABLE tmp_bonus (
@ -163,7 +163,7 @@ if($bb_cfg['seed_bonus_enabled'] && $bb_cfg['seed_bonus_points'] && $bb_cfg['see
) ENGINE = MEMORY
");
$tor_size = ($bb_cfg['seed_bonus_tor_size'] * 1073741824);
$tor_size = ($bb_cfg['seed_bonus_tor_size'] * 1073741824);
DB()->query("INSERT INTO tmp_bonus
SELECT bt.user_id, count(bt.seeder) AS release_count
@ -174,18 +174,18 @@ if($bb_cfg['seed_bonus_enabled'] && $bb_cfg['seed_bonus_points'] && $bb_cfg['see
GROUP BY user_id
");
$seed_bonus = unserialize($bb_cfg['seed_bonus_points']);
$seed_release = unserialize($bb_cfg['seed_bonus_release']);
$seed_bonus = (float) unserialize($bb_cfg['seed_bonus_points']);
$seed_release = (int) unserialize($bb_cfg['seed_bonus_release']);
foreach($seed_bonus as $i => $points)
{
if(!$points || !$seed_release[$i]) continue;
foreach($seed_bonus as $i => $points)
{
if (!$points || !$seed_release[$i]) continue;
$user_points = ($points / 4);
$release = $seed_release[$i];
$user_regdate = (TIMENOW - $bb_cfg['seed_bonus_user_regdate'] * 86400);
$user_points = ($points / 4);
$release = $seed_release[$i];
$user_regdate = (TIMENOW - $bb_cfg['seed_bonus_user_regdate'] * 86400);
DB()->query("
DB()->query("
UPDATE ". BB_USERS ." u, ". BB_BT_USERS ." bu, tmp_bonus b
SET
u.user_points = u.user_points + $user_points,
@ -199,7 +199,7 @@ if($bb_cfg['seed_bonus_enabled'] && $bb_cfg['seed_bonus_points'] && $bb_cfg['see
AND u.user_active = 1
AND u.user_id not IN(". EXCLUDED_USERS_CSV .")
");
}
}
DB()->query("DROP TEMPORARY TABLE IF EXISTS tmp_bonus");
}

View file

@ -1,164 +0,0 @@
<?php
if (!defined('BB_ROOT')) die(basename(__FILE__));
//
// remove_comments will strip the sql comment lines out of an uploaded sql file
// specifically for mssql and postgres type files in the install....
//
function remove_comments(&$output)
{
$lines = explode("\n", $output);
$output = "";
// try to keep mem. use down
$linecount = count($lines);
$in_comment = false;
for($i = 0; $i < $linecount; $i++)
{
if( preg_match("/^\/\*/", preg_quote($lines[$i])) )
{
$in_comment = true;
}
if( !$in_comment )
{
$output .= $lines[$i] . "\n";
}
if( preg_match("/\*\/$/", preg_quote($lines[$i])) )
{
$in_comment = false;
}
}
unset($lines);
return $output;
}
//
// remove_remarks will strip the sql comment lines out of an uploaded sql file
//
function remove_remarks($sql)
{
$lines = explode("\n", $sql);
// try to keep mem. use down
$sql = "";
$linecount = count($lines);
$output = "";
for ($i = 0; $i < $linecount; $i++)
{
if (($i != ($linecount - 1)) || (strlen($lines[$i]) > 0))
{
if ($lines[$i][0] != "#")
{
$output .= $lines[$i] . "\n";
}
else
{
$output .= "\n";
}
// Trading a bit of speed for lower mem. use here.
$lines[$i] = "";
}
}
return $output;
}
//
// split_sql_file will split an uploaded sql file into single sql statements.
// Note: expects trim() to have already been run on $sql.
//
function split_sql_file($sql, $delimiter)
{
// Split up our string into "possible" SQL statements.
$tokens = explode($delimiter, $sql);
// try to save mem.
$sql = "";
$output = array();
// we don't actually care about the matches preg gives us.
$matches = array();
// this is faster than calling count($oktens) every time thru the loop.
$token_count = count($tokens);
for ($i = 0; $i < $token_count; $i++)
{
// Don't wanna add an empty string as the last thing in the array.
if (($i != ($token_count - 1)) || (strlen($tokens[$i] > 0)))
{
// This is the total number of single quotes in the token.
$total_quotes = preg_match_all("/'/", $tokens[$i], $matches);
// Counts single quotes that are preceded by an odd number of backslashes,
// which means they're escaped quotes.
$escaped_quotes = preg_match_all("/(?<!\\\\)(\\\\\\\\)*\\\\'/", $tokens[$i], $matches);
$unescaped_quotes = $total_quotes - $escaped_quotes;
// If the number of unescaped quotes is even, then the delimiter did NOT occur inside a string literal.
if (($unescaped_quotes % 2) == 0)
{
// It's a complete sql statement.
$output[] = $tokens[$i];
// save memory.
$tokens[$i] = "";
}
else
{
// incomplete sql statement. keep adding tokens until we have a complete one.
// $temp will hold what we have so far.
$temp = $tokens[$i] . $delimiter;
// save memory..
$tokens[$i] = "";
// Do we have a complete statement yet?
$complete_stmt = false;
for ($j = $i + 1; (!$complete_stmt && ($j < $token_count)); $j++)
{
// This is the total number of single quotes in the token.
$total_quotes = preg_match_all("/'/", $tokens[$j], $matches);
// Counts single quotes that are preceded by an odd number of backslashes,
// which means they're escaped quotes.
$escaped_quotes = preg_match_all("/(?<!\\\\)(\\\\\\\\)*\\\\'/", $tokens[$j], $matches);
$unescaped_quotes = $total_quotes - $escaped_quotes;
if (($unescaped_quotes % 2) == 1)
{
// odd number of unescaped quotes. In combination with the previous incomplete
// statement(s), we now have a complete statement. (2 odds always make an even)
$output[] = $temp . $tokens[$j];
// save memory.
$tokens[$j] = "";
$temp = "";
// exit the loop.
$complete_stmt = true;
// make sure the outer loop continues at the right point.
$i = $j;
}
else
{
// even number of unescaped quotes. We still don't have a complete statement.
// (1 odd and 1 even always make an odd)
$temp .= $tokens[$j] . $delimiter;
// save memory.
$tokens[$j] = "";
}
} // for..
} // else
}
}
return $output;
}

View file

@ -304,7 +304,7 @@ $(document).ready(function() {
</td>
<td style="padding: 3px;">
<div>
<form id="quick-search" action="" method="post" onsubmit="$(this).attr('action', $('#search-action').val()); if($('#search-action option:selected').attr('class') == 'hash') $('#search-text').attr('name', 'hash');">
<form id="quick-search" action="" method="get" onsubmit="$(this).attr('action', $('#search-action').val()); if($('#search-action option:selected').attr('class') == 'hash') $('#search-text').attr('name', 'hash');">
<input type="hidden" name="max" value="1" />
<input type="hidden" name="to" value="1" />
<input id="search-text" type="text" name="nm" placeholder="{L_SEARCH_S}" required />