function table() { $page = CurrentPageName(); $tpl = new templates(); $t = time(); $q = new mysql_meta(); if (!$q->TABLE_EXISTS("metaorders")) { $q->CheckTables(); } if (!$q->TABLE_EXISTS("metaorders")) { echo FATAL_ERROR_SHOW_128("Unable to stat metaorders table!"); die; } $disks = $tpl->javascript_parse_text("{disks}"); $ipaddr = $tpl->javascript_parse_text("{ipaddr}"); $memory = $tpl->javascript_parse_text("{memory}"); $load = $tpl->javascript_parse_text("{load}"); $package = $tpl->javascript_parse_text("{package}"); $servername = $tpl->javascript_parse_text("{servername2}"); $status = $tpl->javascript_parse_text("{status}"); $delete = "{display: 'delete', name : 'icon3', width : 35, sortable : false, align: 'left'},"; $upload = $tpl->javascript_parse_text("{upload}"); $title = $tpl->javascript_parse_text("{packages}"); if ($_GET["uuid"] != null) { $hostname = $q->uuid_to_host($_GET["uuid"]); $title = "Meta Client:{$hostname} - {$package}"; } if ($_GET["gpid"] > 0) { $hostname = $q->gpid_to_name($_GET["gpid"]); $title = "Meta Clients:{$hostname} - {$package}"; } $buttons = "\tbuttons : [\n\t{name: '{$upload}', bclass: 'export', onpress : Upload{$t}},\n\t],"; $html = "\n\t<table class='ARTICA_META_PACKAGE_TABLE' style='display: none' id='ARTICA_META_PACKAGE_TABLE'></table>\n\t<script>\n\t\$(document).ready(function(){\n\t\$('#ARTICA_META_PACKAGE_TABLE').flexigrid({\n\turl: '{$page}?search=yes&uuid={$_GET["uuid"]}&gpid={$_GET["gpid"]}&KEY=RELEASES',\n\tdataType: 'json',\n\tcolModel : [\n\t\t{display: '{$package}', name : 'version', width : 609, sortable : false, align: 'left'},\n\t\t{display: ' ', name : 'update', width : 50, sortable : false, align: 'center'},\n\t\t{display: ' ', name : 'delete', width : 50, sortable : false, align: 'center'},\n\t\n\t],\n\t{$buttons}\n\tsearchitems : [\n\t{display: '{$package}', name : 'version'},\n\t],\n\tsortname: 'hostname',\n\tsortorder: 'asc',\n\tusepager: true,\n\ttitle: '<strong style=font-size:22px>{$title}</strong>',\n\tuseRp: true,\n\trpOptions: [10, 20, 30, 50,100,200],\n\trp:50,\n\tshowTableToggleBtn: false,\n\twidth: '99%',\n\theight: 400,\n\tsingleSelect: true\n\t\n\t});\n\t});\n\t\nfunction Upload{$t}(){\n\tLoadjs('artica-meta.packages.upload.php');\n} \nfunction Nightly{$t}(){\n\t\$('#ARTICA_META_UPDATEART_TABLE').flexOptions({url: '{$page}?search=yes&uuid={$_GET["uuid"]}&KEY=NIGHTLY'}).flexReload();\n} \t\n</script>"; echo $html; }
function search() { $tpl = new templates(); $MyPage = CurrentPageName(); $q = new mysql_meta(); $search = '%'; $table = "(SELECT * FROM system_schedules WHERE `uuid`='{$_GET["uuid"]}') as t"; $page = 1; $ORDER = "ORDER BY ID DESC"; $sock = new sockets(); $DisableSquidDefaultSchedule = $sock->GET_INFO("DisableSquidDefaultSchedule"); if (!is_numeric($DisableSquidDefaultSchedule)) { $DisableSquidDefaultSchedule = 0; } $schedules = new system_tasks(); $ForceTaskType = $_GET["ForceTaskType"]; if (!is_numeric($ForceTaskType)) { $ForceTaskType = 0; } $total = 0; $FORCE = 1; if ($ForceTaskType > 0) { $FORCE = "TaskType={$ForceTaskType}"; } if (isset($_POST["sortname"])) { if ($_POST["sortname"] != null) { $ORDER = "ORDER BY {$_POST["sortname"]} {$_POST["sortorder"]}"; } } if (isset($_POST['page'])) { $page = $_POST['page']; } $searchstring = string_to_flexquery(); $sql = "SELECT COUNT(*) as TCOUNT FROM {$table} WHERE {$FORCE} {$searchstring}"; $ligne = mysql_fetch_array($q->QUERY_SQL($sql)); $total = $ligne["TCOUNT"]; if (isset($_POST['rp'])) { $rp = $_POST['rp']; } $pageStart = ($page - 1) * $rp; if (is_numeric($rp)) { $limitSql = "LIMIT {$pageStart}, {$rp}"; } $sql = "SELECT * FROM {$table} WHERE {$FORCE} {$searchstring} {$ORDER} {$limitSql}"; writelogs($sql, __FUNCTION__, __FILE__, __LINE__); $results = $q->QUERY_SQL($sql); $data = array(); $data['page'] = $page; $data['total'] = $total; $data['rows'] = array(); if (!$q->ok) { json_error_show("no schedule"); } $q2 = new mysql(); if (mysql_num_rows($results) == 0) { json_error_show("no schedule", 1); } while ($ligne = mysql_fetch_assoc($results)) { $color = "black"; $events = " "; $md5 = md5("SquidTask{$ligne['ID']}"); $TaskType = $ligne["TaskType"]; $jstaskexplain = $tpl->javascript_parse_text($schedules->tasks_array[$ligne["TaskType"]]); $ligne["TaskType"] = $tpl->_ENGINE_parse_body($schedules->tasks_array[$ligne["TaskType"]]); $TimeDescription = $ligne["TimeDescription"]; $enable = Field_checkbox($md5, 1, $ligne["enabled"], "SystemTaskEnable('{$md5}',{$ligne['ID']})"); $delete = imgtootltip("delete-24.png", "{delete} {$ligne['ID']}", "SquidTaskDelete('{$ligne['ID']}')"); $run = $tpl->_ENGINE_parse_body(imgtootltip("24-run.png", "{run} {$ligne['ID']}", "SystemTaskRun('{$ligne['ID']}','{$jstaskexplain}')")); if ($ligne["enabled"] == 0) { $color = "#A0A0A0"; } $tablename = "Taskev{$ligne['ID']}"; if (!$q->TABLE_EXISTS($tablename, "artica_events")) { $events = imgsimple("delete_disabled.png"); } else { $evs = $q2->COUNT_ROWS($tablename, "artica_events"); if ($evs > 0) { $events = imgsimple("events-24.png", "{events} {$ligne['ID']}", "Loadjs('squid.update.events.php?taskid={$ligne['ID']}&table={$tablename}')"); } } $explainTXT = $tpl->_ENGINE_parse_body($schedules->tasks_explain_array[$TaskType]); $TimeText = $tpl->_ENGINE_parse_body($schedules->PatternToHuman($ligne["TimeText"])); $TimeText = str_replace("<br>", "", $TimeText); if (preg_match("#(.+?)\\s+(.+?)\\s+(.+?)\\s+(.+?)\\s+(.+?)#", $TimeDescription, $re)) { $TimeDescription = $TimeText; $TimeText = null; } $span = "<a href=\"javascript:blur();\" OnClick=\"javascript:Loadjs('{$MyPage}?AddNewSchedule-js=yes&ID={$ligne['ID']}');\"\n\t\t style='font-size:16px;font-weight:bold;color:{$color};text-decoration:underline'>"; $ligne["TimeDescription"] = utf8_encode($ligne["TimeDescription"]); $ligne["TaskType"] = utf8_encode($ligne["TaskType"]); //rowSquidTask $data['rows'][] = array('id' => "SquidTask" . $ligne['ID'], 'cell' => array("{$span}{$ligne['ID']}</a>", "{$span}{$ligne["TaskType"]}</a>", "{$span}{$TimeDescription}</a>\n\t\t<div style='font-size:11px'><i>{$explainTXT}</i></div>", "<div style='margin-top:5px'>{$enable}</div>", $delete)); } echo json_encode($data); }
function search() { $MyPage = CurrentPageName(); $page = CurrentPageName(); $tpl = new templates(); $sock = new sockets(); $q = new mysql_meta(); $table = "metagroups"; if (!$q->TABLE_EXISTS("metagroups_link")) { $q->CheckTables(); } $table = "(SELECT metahosts.hostname,metahosts.hostag,\n\t\t\tmetahosts.uuid,metagroups_link.zmd5 \n\t\t\tFROM metahosts,metagroups_link WHERE\n\t\t\tmetagroups_link.uuid=metahosts.uuid\n\t\t\tAND metagroups_link.gpid={$_GET["ID"]}) as t"; $searchstring = string_to_flexquery(); $page = 1; if (isset($_POST["sortname"])) { if ($_POST["sortname"] != null) { $ORDER = "ORDER BY `{$_POST["sortname"]}` {$_POST["sortorder"]}"; } } if (isset($_POST['page'])) { $page = $_POST['page']; } $sql = "SELECT COUNT( * ) AS tcount FROM {$table} WHERE 1 {$searchstring}"; $ligne = mysql_fetch_array($q->QUERY_SQL($sql)); if (!$q->ok) { json_error_show("Mysql Error [" . __LINE__ . "]: <br>{$q->mysql_error}.<br>{$sql}", 1); } $total = $ligne["tcount"]; if (isset($_POST['rp'])) { $rp = $_POST['rp']; } if (!is_numeric($rp)) { $rp = 50; } $pageStart = ($page - 1) * $rp; $limitSql = "LIMIT {$pageStart}, {$rp}"; $sql = "SELECT * FROM {$table} WHERE 1 {$searchstring} {$ORDER} {$limitSql} "; $results = $q->QUERY_SQL($sql); if (!$q->ok) { if ($q->mysql_error != null) { json_error_show(date("H:i:s") . "<br>SORT:{$_POST["sortname"]}:<br>Mysql Error [L." . __LINE__ . "]: {$q->mysql_error}<br>{$sql}", 1); } } if (mysql_num_rows($results) == 0) { json_error_show("no data", 1); } $data = array(); $data['page'] = $page; $data['total'] = $total; $data['rows'] = array(); $fontsize = "22"; $style = " style='font-size:{$fontsize}px'"; $styleHref = " style='font-size:{$fontsize}px;text-decoration:underline'"; $free_text = $tpl->javascript_parse_text("{free}"); $computers = $tpl->javascript_parse_text("{computers}"); $overloaded_text = $tpl->javascript_parse_text("{overloaded}"); $orders_text = $tpl->javascript_parse_text("{orders}"); $directories_monitor = $tpl->javascript_parse_text("{directories_monitor}"); while ($ligne = mysql_fetch_assoc($results)) { $LOGSWHY = array(); $overloaded = null; $loadcolor = "black"; $StatHourColor = "black"; $ColorTime = "black"; $uuid = $ligne["uuid"]; $hostname = $ligne["hostname"]; $hostag = utf8_encode($ligne["hostag"]); $zmd5 = $ligne["zmd5"]; $icon_warning_32 = "warning32.png"; $icon_red_32 = "32-red.png"; $icon = "ok-32.png"; $urijs = "Loadjs('artica-meta.menus.php?js=yes&uuid={$uuid}');"; $link = "<a href=\"javascript:blur();\" OnClick=\"javascript:{$urijs}\" {$styleHref}>"; $delete = imgtootltip("delete-32.png", null, "Loadjs('{$MyPage}?unlink-js={$zmd5}')"); $cell = array(); $cell[] = "<span {$style}>{$link}{$hostname}</a></span><br>{$uuid}"; $cell[] = "<span {$style}>{$hostag}</a></span>"; $cell[] = "{$delete}"; $data['rows'][] = array('id' => $ligne['uuid'], 'cell' => $cell); } echo json_encode($data); }
function table() { $page = CurrentPageName(); $tpl = new templates(); $t = time(); $disks = $tpl->javascript_parse_text("{disks}"); $ipaddr = $tpl->javascript_parse_text("{ipaddr}"); $memory = $tpl->javascript_parse_text("{memory}"); $load = $tpl->javascript_parse_text("{load}"); $version = $tpl->javascript_parse_text("{version}"); $servername = $tpl->javascript_parse_text("{servername2}"); $status = $tpl->javascript_parse_text("{status}"); $events = $tpl->javascript_parse_text("{events}"); $global_whitelist = $tpl->javascript_parse_text("{whitelist} (Meta)"); $policies = $tpl->javascript_parse_text("{policies}"); $packages = $tpl->javascript_parse_text("{packages}"); $switch = $tpl->javascript_parse_text("{switch}"); $new_server = $tpl->javascript_parse_text("{new_server}"); $software = $tpl->javascript_parse_text("{software}"); $tablewith = 691; $compilesize = 35; $size_elemnts = 50; $size_size = 58; $delete = "{display: 'delete', name : 'icon3', width : 35, sortable : false, align: 'left'},"; $categorysize = 387; $tag = $tpl->javascript_parse_text("{tag}"); $q = new mysql_meta(); if (!$q->TABLE_EXISTS("metahosts")) { $q->CheckTables(); } if (!$q->TABLE_EXISTS("metahosts")) { echo FATAL_ERROR_SHOW_128("MySQL Error, table metahosts does not exists..."); return; } $sql = "SELECT version FROM metahosts GROUP BY version ORDER BY version"; $results = $q->QUERY_SQL($sql); if (!$q->ok) { if (stripos($q->mysql_error, "crashed and should be repaired") > 0) { $button = "<center style='margin:20px'>" . button("{repair_table}", "Loadjs('mysql.repair.progress.php?table=metahosts&database=articameta')", 40) . "</center>"; } echo FATAL_ERROR_SHOW_128(__FUNCTION__ . "/" . __LINE__ . "<br>" . $q->mysql_error . $button); return; } $ARTICAVER = trim(@file_get_contents("VERSION")); while ($ligne = mysql_fetch_assoc($results)) { $ligne["version"] = trim($ligne["version"]); if ($ligne["version"] == null) { continue; } $VVERS[] = "\t{display: '{$version}: {$ligne["version"]}', name : '{$ligne["version"]}'}"; } $proxy = 0; $sql = "SELECT squidver,PROXY FROM metahosts GROUP BY squidver,PROXY ORDER BY squidver"; $results = $q->QUERY_SQL($sql); if (!$q->ok) { if (stripos($q->mysql_error, "crashed and should be repaired") > 0) { $button = "<center style='margin:20px'>" . button("{repair_table}", "Loadjs('mysql.repair.progress.php?table=metahosts&database=articameta')", 40) . "</center>"; } echo FATAL_ERROR_SHOW_128(__FUNCTION__ . "/" . __LINE__ . "<br>" . $q->mysql_error . $button); return; } while ($ligne = mysql_fetch_assoc($results)) { if ($ligne["PROXY"] == 0) { continue; } $ligne["squidver"] = trim($ligne["squidver"]); $proxy++; $VVERS[] = "\t{display: 'Proxy {$version}: {$ligne["squidver"]}', name : 'prxy{$ligne["squidver"]}'}"; } $clientsNumber = $q->COUNT_ROWS("metahosts"); $policies_button = "{name: '<strong style=font-size:18px>{$policies}</strong>', bclass: 'Settings', onpress : Policies{$t}},"; if ($proxy > 0) { $proxy_whitelist = "{name: '<strong style=font-size:18px>{$global_whitelist}</strong>', bclass: 'export', onpress : MetaProxyWhiteList},"; } $buttons = "\tbuttons : [\n\t{name: '<strong style=font-size:18px>{$new_server}</strong>', bclass: 'add', onpress : MetaAddServ{$t}},\n\t{name: '<strong style=font-size:18px>{$events}</strong>', bclass: 'Search', onpress : MetaEvents},\n\t\n\t{name: '<strong style=font-size:18px>{$packages}</strong>', bclass: 'Search', onpress : Packages{$t}},{$policies_button}\n\t{name: '<strong style=font-size:18px>{$switch}</strong>', bclass: 'Search', onpress : Switch{$t}},\n\t\n\t{$proxy_whitelist}\n\t\n\t\n\t],"; $t = time(); $html = "\n\t<input type='hidden' id='ARTICA_META_MAIN_TABLE_SWITCH' value=0>\n<table class='ARTICA_META_MAIN_TABLE' style='display: none' id='ARTICA_META_MAIN_TABLE' style='width:1200px'></table>\n<script>\n\$(document).ready(function(){\n\t\$('#ARTICA_META_MAIN_TABLE').flexigrid({\n\turl: '{$page}?search=yes',\n\tdataType: 'json',\n\tcolModel : [\n\t{display: '<span style=font-size:18px>status</span>', name : 'icon1', width : 50, sortable : false, align: 'center'},\n\t{display: '<span style=font-size:18px>{$servername}</span>', name : 'hostname', width : 250, sortable : true, align: 'left'},\n\t{display: '<span style=font-size:18px>{$load}</span>', name : 'load', width : 206, sortable : true, align: 'center'},\n\t{display: '<span style=font-size:18px>{$memory}</span>', name : 'mem_perc', width : 122, sortable : true, align: 'center'},\n\t{display: '<span style=font-size:18px>{$disks}</span>', name : 'xdisks', width : 375, sortable : false, align: 'left'},\n\t{display: '<span style=font-size:18px>{$ipaddr}</span>', name : 'public_ip', width : 150, sortable : true, align: 'left'},\n\t{display: '<span style=font-size:18px>{$software}</span>', name : 'squidver', width : 89, sortable : true, align: 'right'},\n\t{display: '<span style=font-size:18px>{$version}</span>', name : 'version', width : 97, sortable : true, align: 'right'},\n\t\n\t],\n{$buttons}\n\tsearchitems : [\n\t{display: '{$servername}', name : 'hostname'},\n\t{display: '{$tag}', name : 'hostag'},\n\t{display: '{$ipaddr}', name : 'public_ip'},\n\t{display: '{$version}', name : 'version'},\n" . @implode($VVERS, ",\n") . "\n\t],\n\tsortname: 'hostname',\n\tsortorder: 'asc',\n\tusepager: true,\n\ttitle: '<strong style=font-size:30px>Meta Server v{$ARTICAVER} - {$clientsNumber} Client(s) </strong>',\n\tuseRp: true,\n\trpOptions: [10, 20, 30, 50,100,200],\n\trp:50,\n\tshowTableToggleBtn: false,\n\twidth: '99%',\n\theight: 800,\n\tsingleSelect: true\n\t\n\t});\n});\n\t\nfunction Profiles{$t}(){\n\tLoadjs('artica-meta.profiles.php');\n}\n\t\nfunction MetaAddServ{$t}(){\n\tLoadjs('artica-meta.NewServ.php');\n}\t\n\t\nfunction Switch{$t}(){\n\tvar ARTICA_META_MAIN_TABLE_SWITCH=document.getElementById('ARTICA_META_MAIN_TABLE_SWITCH').value;\n\tif(ARTICA_META_MAIN_TABLE_SWITCH==0){ARTICA_META_MAIN_TABLE_SWITCH=1;}else{ARTICA_META_MAIN_TABLE_SWITCH=0;}\n\tdocument.getElementById('ARTICA_META_MAIN_TABLE_SWITCH').value=ARTICA_META_MAIN_TABLE_SWITCH;\n\t\$('#ARTICA_META_MAIN_TABLE').flexOptions({url: '{$page}?search=yes&switch='+ARTICA_META_MAIN_TABLE_SWITCH}).flexReload();\n}\n\t\n\t\nfunction MetaEvents(){\n\tLoadjs('artica-meta.events.php?js=yes&t={$t}');\n}\n\t\nfunction MetaProxyWhiteList(){\n\tLoadjs('squid.whitelist-meta.php');\n}\n\t\nfunction Policies{$t}(){\n\tLoadjs('artica-meta.policies.php');\n}\n\t\nfunction SwitchToArtica(){\n\t\$('#dansguardian2-category-{$t}').flexOptions({url: '{$page}?category-search=yes&minisize={$_GET["minisize"]}&t={$t}&artica=1'}).flexReload();\n}\n\t\nfunction SaveAllToDisk(){\n\tLoadjs('{$page}?compile-all-dbs-js=yes')\n}\n\nfunction LoadCategoriesSize(){\n\tLoadjs('dansguardian2.compilesize.php')\n}\n\t\nfunction CategoryDansSearchCheck(e){\n\tif(checkEnter(e)){CategoryDansSearch();}\n}\n\t\nfunction CategoryDansSearch(){\n\tvar se=escape(document.getElementById('category-dnas-search').value);\n\tLoadAjax('dansguardian2-category-list','{$page}?category-search='+se,false);\n}\n\t\n\tfunction DansGuardianCompileDB(category){\n\tLoadjs('ufdbguard.compile.category.php?category='+category);\n\t}\n\t\n\tfunction CheckStatsApplianceC(){\n\tLoadAjax('CheckStatsAppliance','{$page}?CheckStatsAppliance=yes',false);\n\t}\n\t\n\tvar X_PurgeCategoriesDatabase= function (obj) {\n\tvar results=obj.responseText;\n\tif(results.length>2){alert(results);}\n\tRefreshAllTabs();\n\t}\n\t\n\tfunction PurgeCategoriesDatabase(){\n\tif(confirm('{$purge_catagories_database_explain}')){\n\tvar XHR = new XHRConnection();\n\tXHR.appendData('PurgeCategoriesDatabase','yes');\n\tAnimateDiv('dansguardian2-category-list');\n\tXHR.sendAndLoad('{$page}', 'POST',X_PurgeCategoriesDatabase);\n\t}\n\t\n\t}\n\t\n\tvar X_TableCategoryPurge= function (obj) {\n\tvar results=obj.responseText;\n\tif(results.length>2){alert(results);}\n\t\$('#dansguardian2-category-{$t}').flexReload();\n\t}\n\t\n\tfunction TableCategoryPurge(tablename){\n\tif(confirm('{$purge_catagories_table_explain}')){\n\tvar XHR = new XHRConnection();\n\tXHR.appendData('PurgeCategoryTable',tablename);\n\tXHR.sendAndLoad('dansguardian2.databases.compiled.php', 'POST',X_TableCategoryPurge);\n\t}\n\t}\n\t\n\tfunction Packages{$t}(){\n\t\tLoadjs('artica-meta.packages.php');\n\t}\n\t\n\t\n\t\n\t</script>\n\t\n\t"; echo $tpl->_ENGINE_parse_body($html); }
function content_search() { $MyPage = CurrentPageName(); $page = CurrentPageName(); $tpl = new templates(); $sock = new sockets(); $q = new mysql_meta(); $table = "snapshots"; $database = null; $ID = $_GET["ID"]; if (!$q->TABLE_EXISTS($table, $database)) { json_error_show("no data - no table"); } $searchstring = string_to_flexquery(); $page = 1; $q = new mysql_meta(); $sql = "SELECT `content` FROM {$table} WHERE ID='{$ID}'"; $ligne = mysql_fetch_array($q->QUERY_SQL($sql, $database)); $MAIN = unserialize($ligne["content"]); $size_content = strlen($ligne["content"]); if (!is_array($MAIN)) { json_error_show("no data ID:{$ID} Size:{$size_content}"); } $searchstring = string_to_flexregex(); $total = count($MAIN); if (isset($_POST['rp'])) { $rp = $_POST['rp']; } if (!is_numeric($rp)) { $rp = 50; } $pageStart = ($page - 1) * $rp; $limitSql = "LIMIT {$pageStart}, {$rp}"; $data = array(); $data['page'] = $page; $data['total'] = $total; $data['rows'] = array(); $fontsize = "22"; $style = " style='font-size:{$fontsize}px'"; $styleHref = " style='font-size:{$fontsize}px;text-decoration:underline'"; $c = 0; while (list($filename, $size) = each($MAIN)) { $sizeText = "{$size} Bytes"; if ($size > 1024) { $sizeText = FormatBytes($size / 1024); } if ($searchstring != null) { if (!preg_match("#{$searchstring}#i", $filename . "{$sizeText}")) { continue; } } $c++; $key = md5($filename); $size = FormatBytes($size / 1024); $cell = array(); $cell[] = "<span {$style}>{$filename}</a></span>"; $cell[] = "<span {$style}>{$sizeText}</a></span>"; $data['rows'][] = array('id' => $key, 'cell' => $cell); } $data['total'] = $c; echo json_encode($data); }
function table_list() { $tpl = new templates(); $MyPage = CurrentPageName(); $q = new mysql_meta(); $fontsize = "16px"; $cs = 0; $page = 1; if (isset($_POST['rp'])) { $rp = $_POST['rp']; } if (!is_numeric($rp)) { $rp = 50; } $pageStart = ($page - 1) * $rp; $limitSql = "LIMIT {$pageStart}, {$rp}"; $_POST["query"] = trim($_POST["query"]); $FORCE = "uuid='{$_GET["uuid"]}'"; $search = '%'; $table = "philesight"; if ($_GET["dev"] != null) { $FORCE = " ((partition='{$_GET["dev"]}') OR (hd='{$_GET["dev"]}')) AND (uuid='{$_GET["uuid"]}')"; } $page = 1; if (!$q->TABLE_EXISTS($table, "artica_backup")) { $q->check_storage_table(); } if (!$q->TABLE_EXISTS($table, "artica_backup")) { json_error_show("{$table} no such table", 1); } $total = 0; if ($q->COUNT_ROWS($table, "artica_backup") == 0) { json_error_show("no data", 1); } $searchstring = string_to_flexquery(); if ($searchstring != null) { $sql = "SELECT COUNT(*) as TCOUNT FROM `{$table}` WHERE {$FORCE} {$searchstring}"; $ligne = mysql_fetch_array($q->QUERY_SQL($sql, "artica_backup")); if (!$q->ok) { if (preg_match("#marked as crashed#", $q->mysql_error)) { $q->QUERY_SQL("DROP TABLE `{$table}`", "artica_events"); } } $total = $ligne["TCOUNT"]; } else { $total = $q->COUNT_ROWS($table, "artica_backup"); } if (isset($_POST['rp'])) { $rp = $_POST['rp']; } if (!is_numeric($rp)) { $rp = 50; } $pageStart = ($page - 1) * $rp; $limitSql = "LIMIT {$pageStart}, {$rp}"; if (isset($_POST["sortname"])) { if ($_POST["sortname"] != null) { $ORDER = "ORDER BY {$_POST["sortname"]} {$_POST["sortorder"]}"; } } $sql = "SELECT * FROM `{$table}` WHERE {$FORCE} {$searchstring} {$ORDER} {$limitSql}"; $results = $q->QUERY_SQL($sql, "artica_backup"); if (!$q->ok) { if (preg_match("#marked as crashed#", $q->mysql_error)) { $q->QUERY_SQL("DROP TABLE `{$table}`", "artica_events"); } } if (!$q->ok) { json_error_show($q->mysql_error . "<br>{$sql}", 0); } $data = array(); $data['page'] = $page; $data['total'] = $total; $data['rows'] = array(); $CurrentPage = CurrentPageName(); if (mysql_num_rows($results) == 0) { json_error_show("no data"); } $uuid = urlencode($_GET["uuid"]); while ($ligne = mysql_fetch_array($results, MYSQL_ASSOC)) { $color = "black"; $icon = " "; $directory = $ligne["directory"]; $md5 = md5($directory); $partition = $ligne["partition"]; $hd = $ligne["hd"]; $maxtime = $ligne["maxtime"]; $lastscan = $ligne["lastscan"]; $USED = $ligne["USED"]; $md5 = $ligne["zmd5"]; $FREEMB = $ligne["FREEMB"]; if ($lastscan > 0) { $lastscan = date("Y-m-d H:i:s", $lastscan); } $FREEMB = FormatBytes($FREEMB * 1024); $directoryenc = urlencode($directory); $jslink = "<a href=\"javascript:blur();\"\n\tOnClick=\"javascript:Loadjs('{$MyPage}?directory-js=yes&directory={$directoryenc}');\"\n\tstyle='font-size:{$fontsize};text-decoration:underline;color:{$color}'>"; $distance = $tpl->_ENGINE_parse_body(distanceOfTimeInWords($ligne["lastscan"], time(), true)); $icon = imgsimple("graph-32.png", null, "Loadjs('{$MyPage}?graph-js={$directoryenc}&uuid={$_GET["uuid"]}&md5={$md5}')"); $delete = imgsimple("delete-32.png", null, "Loadjs('{$MyPage}?delete-js={$directoryenc}&uuid={$_GET["uuid"]}')"); $data['rows'][] = array('id' => md5(serialize($ligne)), 'cell' => array("<span style='font-size:{$fontsize};color:{$color}'>{$jslink}{$lastscan}</a></span><br><i>{$distance}</i>", "<span style='font-size:{$fontsize};color:{$color}'>{$jslink}{$directory}</a></span>", "<span style='font-size:{$fontsize};color:{$color}'>{$jslink}{$partition}</a></span>", "<span style='font-size:{$fontsize};color:{$color}'>{$jslink}{$hd}</a></span>", "<span style='font-size:{$fontsize};color:{$color}'>{$jslink}{$USED}%</a></span>", "<span style='font-size:{$fontsize};color:{$color}'>{$jslink}{$FREEMB}</a></span>", "<span style='font-size:{$fontsize};color:{$color}'>{$icon}</a></span>")); } echo json_encode($data); }
function search() { $MyPage = CurrentPageName(); $page = CurrentPageName(); $tpl = new templates(); $sock = new sockets(); $q = new mysql_meta(); $table = "snapshots"; $database = null; $uuid = $_GET["uuid"]; $uuidenc = urlencode($uuid); $gpid = intval($_GET["gpid"]); if (!$q->TABLE_EXISTS($table, $database)) { json_error_show("no data - no table"); } $searchstring = string_to_flexquery(); $page = 1; $table = "(SELECT \n\t\tsnapshots.zmd5,snapshots.zDate,\n\t\tsnapshots.size,\n\t\tmetahosts.hostname,\n\t\tmetahosts.hostag\n\t\tFROM snapshots,metahosts WHERE metahosts.uuid=snapshots.uuid) as t"; if (isset($_POST["sortname"])) { if ($_POST["sortname"] != null) { $ORDER = "ORDER BY `{$_POST["sortname"]}` {$_POST["sortorder"]}"; } } if (isset($_POST['page'])) { $page = $_POST['page']; } $sql = "SELECT COUNT( * ) AS tcount FROM {$table} WHERE 1 {$searchstring}"; $ligne = mysql_fetch_array($q->QUERY_SQL($sql, $database)); if (!$q->ok) { json_error_show("Mysql Error [" . __LINE__ . "]: <br>{$q->mysql_error}.<br>{$sql}", 1); } $total = $ligne["tcount"]; if (isset($_POST['rp'])) { $rp = $_POST['rp']; } if (!is_numeric($rp)) { $rp = 50; } $pageStart = ($page - 1) * $rp; $limitSql = "LIMIT {$pageStart}, {$rp}"; $sql = "SELECT * FROM {$table} WHERE 1 {$searchstring} {$ORDER} {$limitSql} "; $results = $q->QUERY_SQL($sql, $database); if (!$q->ok) { if ($q->mysql_error != null) { json_error_show(date("H:i:s") . "<br>SORT:{$_POST["sortname"]}:<br>Mysql Error [L." . __LINE__ . "]: {$q->mysql_error}<br>{$sql}", 1); } } if (mysql_num_rows($results) == 0) { json_error_show("no data", 0); } $data = array(); $data['page'] = $page; $data['total'] = $total; $data['rows'] = array(); $fontsize = "14"; $style = " style='font-size:{$fontsize}px'"; $styleHref = " style='font-size:{$fontsize}px;text-decoration:underline'"; $free_text = $tpl->javascript_parse_text("{free}"); $computers = $tpl->javascript_parse_text("{computers}"); $overloaded_text = $tpl->javascript_parse_text("{overloaded}"); $orders_text = $tpl->javascript_parse_text("{orders}"); $directories_monitor = $tpl->javascript_parse_text("{directories_monitor}"); while ($ligne = mysql_fetch_assoc($results)) { $LOGSWHY = array(); $overloaded = null; $loadcolor = "black"; $StatHourColor = "black"; $ColorTime = "black"; $hostname = $ligne["hostname"]; $hostag = utf8_encode($ligne["hostag"]); $zmd5 = $ligne["zmd5"]; $icon_warning_32 = "warning32.png"; $icon_red_32 = "32-red.png"; $icon = "ok-32.png"; $xdate = $ligne["zDate"]; $xtime = strtotime($xdate); $date = $tpl->time_to_date($xtime, true); $size = FormatBytes($ligne["size"] / 1024); $urijs = "Loadjs('{$MyPage}?content-js=yes&ID={$ligne["ID"]}');"; $link = "<a href=\"javascript:blur();\" OnClick=\"javascript:{$urijs}\" {$styleHref}>"; $delete = imgtootltip("delete-32.png", null, "Loadjs('{$MyPage}?unlink-js={$ligne["zmd5"]}')"); $restore = imgtootltip("32-import.png", null, "Loadjs('artica-meta.menus.php?snapshot-restore-js=yes&zmd5={$ligne["zmd5"]}&uuid={$uuidenc}&gpid={$gpid}')"); if ($uuid == null) { if ($gpid == 0) { $restore = " - "; } } $cell = array(); $cell[] = "<span {$style}>{$xdate}<br><i style='font-size:12px'>{$date}</i></a></span>"; $cell[] = "<span {$style}>{$hostname}<br><i style='font-size:12px'>{$hostag}</i></a></span>"; $cell[] = "<span {$style}>{$size}</a></span>"; $cell[] = $restore; $cell[] = "{$delete}"; $data['rows'][] = array('id' => $ligne['uuid'], 'cell' => $cell); } echo json_encode($data); }
function ident() { if (isset($_SERVER["REMOTE_ADDR"])) { $IPADDR = $_SERVER["REMOTE_ADDR"]; } if (isset($_SERVER["HTTP_X_REAL_IP"])) { $IPADDR = $_SERVER["HTTP_X_REAL_IP"]; } if (isset($_SERVER["HTTP_X_FORWARDED_FOR"])) { $IPADDR = $_SERVER["HTTP_X_FORWARDED_FOR"]; } $GLOBALS["CLIENT_META_IP"] = $IPADDR; $sock = new sockets(); $ARRAY = unserialize(base64_decode($_GET["ident"])); $EnableArticaMetaServer = intval($sock->GET_INFO("EnableArticaMetaServer")); $ArticaMetaServerUsername = trim(strtolower($sock->GET_INFO("ArticaMetaServerUsername"))); $ArticaMetaServerPassword = $sock->GET_INFO("ArticaMetaServerPassword"); if ($EnableArticaMetaServer == 0) { die; } $UUID = $ARRAY["uuid"]; $GLOBALS["UUID"] = $UUID; $hostname = $ARRAY["hostname"]; $version = $ARRAY["version"]; $username = trim(strtolower($ARRAY["username"])); $password = $ARRAY["password"]; if ($ArticaMetaServerUsername != $username) { writelogs_meta("Checking identification FROM {$IPADDR} failed, wrong username or password", __FUNCTION__, __FILE__, __LINE__); die; } if ($ArticaMetaServerPassword != $password) { writelogs_meta("Checking identification FROM {$IPADDR} failed, wrong username or password", __FUNCTION__, __FILE__, __LINE__); die; } $q = new mysql_meta(); if (!$q->TABLE_EXISTS("metahosts")) { if (!$q->CheckTables()) { echo $q->mysql_error; } } if (isset($ARRAY["ARTICA_META_EVENTS"])) { echo __LINE__ . " ** ARTICA_META_EVENTS:" . strlen($ARRAY["ARTICA_META_EVENTS"]) . " bytes\n"; $qev = new mysql(); $qev->QUERY_SQL($ARRAY["ARTICA_META_EVENTS"], "artica_events"); if (!$qev->ok) { echo "*********************************\n\${$qev->mysql_error}\n*********************************\n"; } } else { echo __LINE__ . " ** ARTICA_META_EVENTS: NONE\n"; } $CPU = $ARRAY["CPU"]; $load = $ARRAY["load"]; $pourc_mem = $ARRAY["memory"]["ram"]["percent"]; $ram_used = $ARRAY["memory"]["ram"]["used"]; $ram_total = $ARRAY["memory"]["ram"]["total"]; $ALL_DISKS_STATUS = mysql_escape_string2($ARRAY["ALL_DISKS_STATUS"]); echo "ALL_DISKS_STATUS:{$ALL_DISKS_STATUS}\n"; $sql = "SELECT hostname FROM metahosts WHERE uuid='{$UUID}'"; $ligne = mysql_fetch_array($q->QUERY_SQL($sql)); $currentDate = date("Y-m-d H:i:s"); $squid = 0; $squidver = null; if (isset($ARRAY["SQUID"])) { $squid = $ARRAY["SQUID"]; } if (isset($ARRAY["squidver"])) { $squidver = $ARRAY["squidver"]; } if (trim($ligne["hostname"]) == null) { $q->QUERY_SQL("INSERT IGNORE INTO `metahosts` (uuid,hostname,public_ip,updated,blacklisted,`version`,`CPU_NUMBER`\n\t\t\t\t,`load`,`mem_perc`,`mem_used`,mem_total,disks,PROXY,squidver) \n\t\t\t\tVALUES('{$UUID}','{$hostname}','{$IPADDR}','{$currentDate}',0,'{$version}','{$CPU}'\n\t\t\t\t,'{$load}','{$pourc_mem}','{$ram_used}','{$ram_total}','{$ALL_DISKS_STATUS}','{$squid}','{$squidver}')"); if (!$q->ok) { echo $q->mysql_error; return false; } } else { $q->QUERY_SQL("UPDATE `metahosts` SET public_ip='{$IPADDR}', `hostname`='{$hostname}',\n\t\t\t\t`updated`='{$currentDate}',`version`='{$version}',\n\t\t\t\t`CPU_NUMBER`='{$CPU}',\n\t\t\t\t`load`='{$load}',\n\t\t\t\t`mem_perc`='{$pourc_mem}',\n\t\t\t\t`mem_used`='{$ram_used}',\n\t\t\t\tmem_total='{$ram_total}',\n\t\t\t\t`disks`='{$ALL_DISKS_STATUS}',\n\t\t\t\tPROXY='{$squid}',\n\t\t\t\tsquidver='{$squidver}'\n\t\t\t\tWHERE uuid='{$UUID}'"); if (!$q->ok) { if (preg_match("#Unknown column#", $q->mysql_error)) { $q->CheckTables(); } } if (!$q->ok) { echo $q->mysql_error; return false; } } return true; }
function extract_tgz($uuid) { $unix = new unix(); $workingdir = "/usr/share/artica-postfix/ressources/conf/meta/hosts/uploaded/{$uuid}"; if (is_file("{$workingdir}/status.tgz")) { $tar = $unix->find_program("tar"); shell_exec("{$tar} -xf {$workingdir}/status.tgz -C {$workingdir}/"); @unlink("{$workingdir}/status.tgz"); } $unix->chown_func($unix->APACHE_SRC_ACCOUNT(), $unix->APACHE_SRC_GROUP(), "{$workingdir}/*"); if (is_file("{$workingdir}/squid_admin_mysql.db")) { $q = new mysql_meta(); if (!$q->TABLE_EXISTS("squid_admin_mysql")) { $q->CheckTables(); } $data = trim(@file_get_contents("{$workingdir}/squid_admin_mysql.db")); if ($data != null) { $q->QUERY_SQL(@file_get_contents("{$workingdir}/squid_admin_mysql.db")); if (!$q->ok) { meta_admin_mysql(0, "Failed to import {$workingdir}/squid_admin_mysql.db", $q->mysql_error, __FILE__, __LINE__); } else { @unlink("{$workingdir}/squid_admin_mysql.db"); } } else { @unlink("{$workingdir}/squid_admin_mysql.db"); } } else { if ($GLOBALS["VERBOSE"]) { echo "{$workingdir}/squid_admin_mysql.db ( no such file )\n"; } } if (is_file("{$workingdir}/network_hosts.db")) { __network_hosts($uuid, "{$workingdir}/network_hosts.db"); } else { if ($GLOBALS["VERBOSE"]) { echo "{$workingdir}/network_hosts.db ( no such file )\n"; } } global_status_ini($uuid); }
function search() { $MyPage = CurrentPageName(); $page = CurrentPageName(); $tpl = new templates(); $sock = new sockets(); $q = new mysql_meta(); $table = "metagroups"; if (!$q->TABLE_EXISTS($table)) { $sql = "CREATE TABLE IF NOT EXISTS `metagroups` (\n\t\t\t\t`ID` INT(10) NOT NULL AUTO_INCREMENT,\n\t\t\t\t`groupname` varchar(90) NOT NULL,\n\t\t\t\t`CountHosts` smallint(3) NOT NULL DEFAULT 0,\n\t\t\t\tPRIMARY KEY (`ID`),\n\t\t\t\tKEY `groupname` (`groupname`),\n\t\t\t\tKEY `CountHosts` (`CountHosts`)\n\t\t\t\t) ENGINE=MYISAM;"; $q->QUERY_SQL($sql); if (!$q->ok) { echo json_error_show($q->mysql_error, 1); } } $searchstring = string_to_flexquery(); $page = 1; if (isset($_POST["sortname"])) { if ($_POST["sortname"] != null) { $ORDER = "ORDER BY `{$_POST["sortname"]}` {$_POST["sortorder"]}"; } } if (isset($_POST['page'])) { $page = $_POST['page']; } if ($searchstring != null) { $sql = "SELECT COUNT( * ) AS tcount FROM {$table} WHERE 1 {$searchstring}"; $ligne = mysql_fetch_array($q->QUERY_SQL($sql)); if (!$q->ok) { json_error_show("Mysql Error [" . __LINE__ . "]: <br>{$q->mysql_error}.<br>{$sql}", 1); } $total = $ligne["tcount"]; } else { $total = $q->COUNT_ROWS($table); } if (isset($_POST['rp'])) { $rp = $_POST['rp']; } if (!is_numeric($rp)) { $rp = 50; } $pageStart = ($page - 1) * $rp; $limitSql = "LIMIT {$pageStart}, {$rp}"; $sql = "SELECT * FROM {$table} WHERE 1 {$searchstring} {$ORDER} {$limitSql} "; $results = $q->QUERY_SQL($sql); if (!$q->ok) { if ($q->mysql_error != null) { json_error_show(date("H:i:s") . "<br>SORT:{$_POST["sortname"]}:<br>Mysql Error [L." . __LINE__ . "]: {$q->mysql_error}<br>{$sql}", 1); } } if (mysql_num_rows($results) == 0) { json_error_show("no data", 1); } $data = array(); $data['page'] = $page; $data['total'] = $total; $data['rows'] = array(); $fontsize = "22"; $style = " style='font-size:{$fontsize}px'"; $styleHref = " style='font-size:{$fontsize}px;text-decoration:underline'"; $free_text = $tpl->javascript_parse_text("{free}"); $computers = $tpl->javascript_parse_text("{computers}"); $overloaded_text = $tpl->javascript_parse_text("{overloaded}"); $orders_text = $tpl->javascript_parse_text("{orders}"); $directories_monitor = $tpl->javascript_parse_text("{directories_monitor}"); while ($ligne = mysql_fetch_assoc($results)) { $LOGSWHY = array(); $overloaded = null; $loadcolor = "black"; $StatHourColor = "black"; $ColorTime = "black"; $groupname = $ligne["groupname"]; $icon_warning_32 = "warning32.png"; $icon_red_32 = "32-red.png"; $icon = "ok-32.png"; $urijs = "Loadjs('{$MyPage}?group-js=yes&ID={$ligne["ID"]}')"; $link = "<a href=\"javascript:blur();\" OnClick=\"javascript:{$urijs}\" {$styleHref}>"; $orders = imgtootltip("48-settings.png", null, "Loadjs('artica-meta.menus.php?gpid={$ligne["ID"]}');"); $transparent = imgtootltip("ok-pass-48.png", null, "Loadjs('artica-meta.squidtransparent-white.php?gpid={$ligne["ID"]}');"); $delete = imgtootltip("delete-32.png", null, "Loadjs('{$MyPage}?delete-group-js={$ligne["ID"]}')"); $count = $q->group_count($ligne["ID"]); $cell = array(); $cell[] = "<center><img src=\"img/{$icon}\"></center>"; $cell[] = "<span {$style}>{$link}{$groupname}</a></span>"; $cell[] = "<center {$style}>{$link}{$count}</a></center>"; $cell[] = "<center {$style}>{$orders}</a></center>"; $cell[] = "<center {$style}>{$transparent}</a></center>"; $cell[] = "<center {$style}>{$delete}</a></center>"; $data['rows'][] = array('id' => $ligne['uuid'], 'cell' => $cell); } echo json_encode($data); }
function showlist(){ $page=1; $q=new mysql_squid_builder(); $tablesrc="WEEK_RTTH"; $today=date("d"); $thishour=date('H'); if($_GET["uuid"]<>null){ $q=new mysql_meta(); $tablesrc="{$_GET["uuid"]}_WEEK_RTTH"; } $table="( SELECT * FROM `$tablesrc` WHERE `day`='$today' AND `hour`='$thishour') as t"; if(isset($_POST["sortname"])){if($_POST["sortname"]<>null){$ORDER="ORDER BY {$_POST["sortname"]} {$_POST["sortorder"]}";}} if(isset($_POST['page'])) {$page = $_POST['page'];} $searchstring=string_to_flexquery(); if($searchstring<>null){ $sql="SELECT COUNT(*) as TCOUNT FROM $table WHERE 1 $searchstring"; $ligne=mysql_fetch_array($q->QUERY_SQL($sql)); $total = $ligne["TCOUNT"]; }else{ $sql="SELECT COUNT(*) as TCOUNT FROM $table"; $ligne=mysql_fetch_array($q->QUERY_SQL($sql)); $total = $ligne["TCOUNT"]; } if (isset($_POST['rp'])) {$rp = $_POST['rp'];} if(!is_numeric($rp)){$rp=50;} $pageStart = ($page-1)*$rp; $limitSql = "LIMIT $pageStart, $rp"; $sql="SELECT * FROM $table WHERE 1 $searchstring $ORDER $limitSql"; if(isset($_GET["verbose"])){echo "<hr><code>$sql</code></hr>";} $results = $q->QUERY_SQL($sql); if(!$q->ok){json_error_show($q->mysql_error,1);} if(mysql_num_rows($results)==0){ if(!$q->TABLE_EXISTS($tablesrc)){$add=" no table!";} json_error_show("no data $add <i>$sql</i>",3); } $data = array(); $data['page'] = 1; $data['total'] = mysql_num_rows($results); $data['rows'] = array(); //if(mysql_num_rows($results)==0){$data['rows'][] = array('id' => $ligne[time()],'cell' => array($sql,"", "",""));} while ($ligne = mysql_fetch_assoc($results)) { $ipaddr=$ligne["ipaddr"]; $mac=$ligne["MAC"]; $familysite=$ligne["familysite"]; $loupe_uid=null; $uid=$ligne["uid"]; $size=FormatBytes($ligne["size"]/1024); $macenc=urlencode($mac); $category=$ligne["category"]; if($category<>null){$category=" <i>($category)</i>";} $ipaddr_enc=urlencode($ipaddr); $loupe_mac="<a href=\"javascript:blur();\" OnClick=\"javascript:Loadjs('squid.access.log.php?js=yes&SearchString=$ipaddr&data=&minsize=1')\"> <img src='img/loupe-32.png' style='float:right'> </a>"; if($uid<>null){ $loupe_uid="<a href=\"javascript:blur();\" OnClick=\"javascript:Loadjs('squid.access.log.php?js=yes&SearchString=$uid&data=&minsize=1')\"> <img src='img/loupe-32.png' style='float:right'> </a>"; } $macurl="<a href=\"javascript:blur();\" OnClick=\"javascript:Loadjs('squid.nodes.php?node-infos-js=yes&MAC=$macenc',true);\" style='font-size:16px;text-decoration:underline'>"; $data['rows'][] = array( 'id' => md5(serialize($ligne)), 'cell' => array("$loupe_uid<span style='font-size:16px'>$uid</span>", "$loupe_mac<span style='font-size:16px'>$ipaddr</span>", "$loupe_mac<span style='font-size:16px'>$macurl$mac</a></span>", "<span style='font-size:16px'>$familysite$category</span>", "<span style='font-size:16px'>$size</span>" ) ); } echo json_encode($data); }
function menu_proxy_service_tabs() { $page = CurrentPageName(); $tpl = new templates(); $artica_meta = new mysql_meta(); $uuid = $_GET["uuid"]; $array["proxy-service-orders"] = '{orders}'; $q = new mysql_meta(); if ($_GET["gpid"] == 0) { if ($q->TABLE_EXISTS("{$uuid}_WEEK_RTTH")) { $array["proxy-service-rtt"] = "{bandwidth}"; } } while (list($num, $ligne) = each($array)) { if ($num == "proxy-service-rtt") { $html[] = $tpl->_ENGINE_parse_body("<li><a href=\"artica-meta.proxy.bandwidth.php?uuid=" . urlencode($_GET["uuid"]) . "&gpid={$_GET["gpid"]}\"><span style='font-size:18px'>{$ligne}</span></a></li>\n"); continue; } if ($num == "snapshots") { $html[] = $tpl->_ENGINE_parse_body("<li><a href=\"artica-meta.snapshots.php?uuid=" . urlencode($_GET["uuid"]) . "&gpid={$_GET["gpid"]}\"><span style='font-size:18px'>{$ligne}</span></a></li>\n"); continue; } $html[] = $tpl->_ENGINE_parse_body("<li><a href=\"{$page}?{$num}=yes&uuid=" . urlencode($_GET["uuid"]) . "&gpid={$_GET["gpid"]}\"><span style='font-size:18px'>{$ligne}</span></a></li>\n"); } echo build_artica_tabs($html, "meta-proxy-service-{$_GET["uuid"]}{$_GET["gpid"]}"); }
function content_search() { $MyPage = CurrentPageName(); $page = CurrentPageName(); $tpl = new templates(); $sock = new sockets(); $q = new mysql_meta(); $table = "snapshots"; $database = null; $ID = $_GET["ID"]; if (!$q->TABLE_EXISTS($table, $database)) { json_error_show("no data - no table"); } $searchstring = string_to_flexquery(); $page = 1; $q = new mysql_meta(); $table = "(SELECT hotspot_members.creationtime, hotspot_members.uid, metahosts.hostname,hotspot_members.uuid FROM \n\thotspot_members,metahosts WHERE hotspot_members.uuid=metahosts.uuid) as t"; if (isset($_POST["sortname"])) { if ($_POST["sortname"] != null) { $ORDER = "ORDER BY {$_POST["sortname"]} {$_POST["sortorder"]}"; } } if (isset($_POST['page'])) { $page = $_POST['page']; } $sql = "SELECT COUNT(*) as TCOUNT FROM {$table} WHERE 1 {$searchstring}"; $ligne = mysql_fetch_array($q->QUERY_SQL($sql, $database)); $total = $ligne["TCOUNT"]; if (isset($_POST['rp'])) { $rp = $_POST['rp']; } $pageStart = ($page - 1) * $rp; $limitSql = "LIMIT {$pageStart}, {$rp}"; $sql = "SELECT * FROM {$table} WHERE 1 {$searchstring} {$ORDER} {$limitSql}"; $results = $q->QUERY_SQL($sql, $database); if (!$q->ok) { json_error_show($q->mysql_error_html(), 1); } if (mysql_num_rows($results) == 0) { json_error_show("no data {$sql}"); } $data = array(); $data['page'] = $page; $data['total'] = $total; $data['rows'] = array(); if (!$q->ok) { json_error_show($q->mysql_error); } $fontsize = 22; $c = 1; // //service,server_port,client_port,helper,enabled $style = "style='font-size:18px'"; while ($ligne = mysql_fetch_assoc($results)) { $c++; $creationtime = $ligne["creationtime"]; $zdate = $tpl->time_to_date($creationtime, true); $uid = $ligne["uid"]; $hostname = $ligne["hostname"]; $key = md5(serialize($ligne)); $cell = array(); $cell[] = "<span {$style}>{$zdate}</a></span>"; $cell[] = "<span {$style}>{$uid}</a></span>"; $cell[] = "<span {$style}>{$hostname}</a></span>"; $data['rows'][] = array('id' => $key, 'cell' => $cell); } $data['total'] = $c; echo json_encode($data); }
function search() { $tpl = new templates(); $MyPage = CurrentPageName(); $q = new mysql_meta(); if (!$q->TABLE_EXISTS("proxy_ports_wbl")) { $q->CheckTables(null, true); } $sock = new sockets(); $t = $_GET["t"]; $search = '%'; $table = "proxy_ports_wbl"; $page = 1; $total = 0; $OKFW = true; if (!$q->TABLE_EXISTS("proxy_ports_wbl")) { json_error_show("Fatal! table does not exists"); } if (!is_numeric($_GET["include"])) { if ($_GET["include"] == "yes") { $_GET["include"] = 1; } else { $_GET["include"] = 0; } } if (isset($_POST["sortname"])) { if ($_POST["sortname"] != null) { $ORDER = "ORDER BY {$_POST["sortname"]} {$_POST["sortorder"]}"; } } if (isset($_POST['page'])) { $page = $_POST['page']; } $searchstring = string_to_flexquery(); if (isset($_POST['rp'])) { $rp = $_POST['rp']; } $pageStart = ($page - 1) * $rp; if (is_numeric($rp)) { $limitSql = "LIMIT {$pageStart}, {$rp}"; } $sql = "SELECT * FROM `{$table}` WHERE include={$_GET["include"]} AND groupid={$_GET["gpid"]} {$searchstring} {$ORDER} {$limitSql}"; $results = $q->QUERY_SQL($sql); $no_rule = $tpl->_ENGINE_parse_body("{no_rule}"); $data = array(); $data['page'] = $page; $data['total'] = mysql_num_rows($results); $data['rows'] = array(); if (!$q->ok) { json_error_show($q->mysql_error . "<br>{$sql}"); } if (mysql_num_rows($results) == 0) { json_error_show("{$no_rule}"); } $tpl = new templates(); while ($ligne = mysql_fetch_assoc($results)) { $color = "black"; $ID = $ligne["ID"]; $pattern = $ligne["pattern"]; $delete = imgsimple("delete-48.png", null, "Loadjs('{$MyPage}?delete-pattern-js=yes&ID={$ID}&include={$_GET["include"]}',true)"); $destport = $ligne["destport"]; $data['rows'][] = array('id' => $ID, 'cell' => array("<span style='font-size:30px;font-weight:normal;color:{$color}'>{$pattern} - {$destport}</span>", "<center style='margin-top:3px;font-size:30px;font-weight:normal;color:{$color}'>{$delete}</center>")); } echo json_encode($data); }
function search() { $MyPage = CurrentPageName(); $page = CurrentPageName(); $tpl = new templates(); $sock = new sockets(); $q = new mysql_meta(); $table = "metagroups"; $table = "webfiltering_categories"; $searchstring = string_to_flexquery(); $page = 1; if (isset($_POST["sortname"])) { if ($_POST["sortname"] != null) { $ORDER = "ORDER BY `{$_POST["sortname"]}` {$_POST["sortorder"]}"; } } if (isset($_POST['page'])) { $page = $_POST['page']; } $sql = "SELECT COUNT( * ) AS tcount FROM {$table} WHERE 1 {$searchstring}"; $ligne = mysql_fetch_array($q->QUERY_SQL($sql)); if (!$q->ok) { json_error_show("Mysql Error [" . __LINE__ . "]: <br>{$q->mysql_error}.<br>{$sql}", 1); } $total = $ligne["tcount"]; if (isset($_POST['rp'])) { $rp = $_POST['rp']; } if (!is_numeric($rp)) { $rp = 50; } $pageStart = ($page - 1) * $rp; $limitSql = "LIMIT {$pageStart}, {$rp}"; $sql = "SELECT * FROM {$table} WHERE 1 {$searchstring} {$ORDER} {$limitSql} "; $results = $q->QUERY_SQL($sql); if (!$q->ok) { if ($q->mysql_error != null) { json_error_show(date("H:i:s") . "<br>SORT:{$_POST["sortname"]}:<br>Mysql Error [L." . __LINE__ . "]: {$q->mysql_error}<br>{$sql}", 1); } } if (mysql_num_rows($results) == 0) { json_error_show("no data", 1); } $data = array(); $data['page'] = $page; $data['total'] = $total; $data['rows'] = array(); $fontsize = "22"; $style = " style='font-size:{$fontsize}px'"; $styleHref = " style='font-size:{$fontsize}px;text-decoration:underline'"; $free_text = $tpl->javascript_parse_text("{free}"); $computers = $tpl->javascript_parse_text("{computers}"); $overloaded_text = $tpl->javascript_parse_text("{overloaded}"); $orders_text = $tpl->javascript_parse_text("{orders}"); $directories_monitor = $tpl->javascript_parse_text("{directories_monitor}"); if (!$q->TABLE_EXISTS("webfiltering_categories_link")) { $q->BuildTables(); } while ($ligne = mysql_fetch_assoc($results)) { $LOGSWHY = array(); $overloaded = null; $loadcolor = "black"; $StatHourColor = "black"; $ColorTime = "black"; $uuid = $ligne["uuid"]; $category = $ligne["category"]; $zmd5 = $ligne["zmd5"]; $icon_warning_32 = "warning32.png"; $icon_red_32 = "32-red.png"; $icon_check_on = "check-32.png"; $icon_check_off = "check-32-grey.png"; $orgQuery = $_POST["query"]; $sql = "SELECT zmd5 FROM `webfiltering_categories_link` WHERE category='{$category}' AND gpid={$_GET["ID"]}"; $ligne2 = mysql_fetch_array($q->QUERY_SQL($sql)); $icon = imgsimple($icon_check_off, "{link}", "Loadjs('{$MyPage}?link-js=yes&gpid={$_GET["ID"]}&category={$category}')"); if ($ligne2["zmd5"] != null) { $icon = imgsimple($icon_check_on, "{unlink}", "Loadjs('{$MyPage}?link-js=yes&gpid={$_GET["ID"]}&category={$category}')"); } $cell = array(); $cell[] = "<span {$style}>{$category}</a></span>"; $cell[] = "{$icon}"; $data['rows'][] = array('id' => $ligne['zmd5'], 'cell' => $cell); } echo json_encode($data); }
function showlist() { $page = 1; $q = new mysql_meta(); $type = $_GET["type"]; if ($type == "hour") { $tablename = "metastats_size_" . date("YmdH"); $table = "(SELECT COUNT(zmd5) as hits,SUM(size) as size,uuid FROM `{$tablename}` GROUP BY `uuid` ) as t"; } if ($type == "day") { $tablename = "metastats_sized_" . date("Ymd"); $table = "(SELECT SUM(hits) as hits,SUM(size) as size,uuid FROM `{$tablename}` GROUP BY `uuid` ) as t"; } if (isset($_POST["sortname"])) { if ($_POST["sortname"] != null) { $ORDER = "ORDER BY {$_POST["sortname"]} {$_POST["sortorder"]}"; } } if (isset($_POST['page'])) { $page = $_POST['page']; } $searchstring = string_to_flexquery(); if ($searchstring != null) { $sql = "SELECT COUNT(*) as TCOUNT FROM {$table} WHERE 1 {$searchstring}"; $ligne = mysql_fetch_array($q->QUERY_SQL($sql)); $total = $ligne["TCOUNT"]; } else { $sql = "SELECT COUNT(*) as TCOUNT FROM {$table}"; $ligne = mysql_fetch_array($q->QUERY_SQL($sql)); $total = $ligne["TCOUNT"]; } if (isset($_POST['rp'])) { $rp = $_POST['rp']; } if (!is_numeric($rp)) { $rp = 50; } $pageStart = ($page - 1) * $rp; $limitSql = "LIMIT {$pageStart}, {$rp}"; $sql = "SELECT * FROM {$table} WHERE 1 {$searchstring} {$ORDER} {$limitSql}"; if (isset($_GET["verbose"])) { echo "<hr><code>{$sql}</code></hr>"; } $results = $q->QUERY_SQL($sql); if (!$q->ok) { json_error_show($q->mysql_error, 0); } if (mysql_num_rows($results) == 0) { if (!$q->TABLE_EXISTS($table)) { $add = " no table!"; } json_error_show("no data {$add} <i>{$sql}</i>", 1); } $data = array(); $data['page'] = 1; $data['total'] = mysql_num_rows($results); $data['rows'] = array(); while ($ligne = mysql_fetch_assoc($results)) { $ipaddr = $ligne["ipaddr"]; $uuid = $ligne["uuid"]; $hostname = $q->uuid_to_host($uuid); $tag = $q->uuid_to_tag($uuid); $size = FormatBytes($ligne["size"] / 1024); $hits = FormatNumber($ligne["hits"]); $ipaddr_enc = urlencode($ipaddr); $loupe_mac = "<a href=\"javascript:blur();\" OnClick=\"javascript:Loadjs('squid.access.log.php?js=yes&SearchString={$ipaddr}&data=&minsize=1')\">\n\t\t<img src='img/loupe-32.png' style='float:right'>\n\t\t</a>"; $data['rows'][] = array('id' => md5(serialize($ligne)), 'cell' => array("<span style='font-size:18px'>{$hostname}</span>", "<span style='font-size:18px'>{$tag}</a></span>", "<span style='font-size:18px'>{$hits}</a></span>", "<span style='font-size:18px'>{$size}</span>")); } echo json_encode($data); }