static function Maintain($_randStandard, $_timeouts) { if (!Is::Defined("NO_DB_LOG")) { define("NO_DB_LOG", true); } if ($_randStandard == 1) { if (!STATS_ACTIVE) { DBManager::Execute(true, "DELETE FROM `" . DB_PREFIX . DATABASE_VISITORS . "` WHERE `last_active`<" . DBManager::RealEscape(time() - Server::$Configuration->File["gl_dvhd"] * 86400) . ";"); DBManager::Execute(true, "DELETE FROM `" . DB_PREFIX . DATABASE_OPERATOR_STATUS . "` WHERE `" . DB_PREFIX . DATABASE_OPERATOR_STATUS . "`.`confirmed`<" . DBManager::RealEscape(time() - Server::$Configuration->File["gl_dvhd"] * 86400) . ";"); } else { StatisticProvider::DeleteHTMLReports(); } DBManager::Execute(true, "DELETE FROM `" . DB_PREFIX . DATABASE_EVENT_TRIGGERS . "` WHERE NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_VISITORS . "` WHERE `id` = `" . DB_PREFIX . DATABASE_EVENT_TRIGGERS . "`.`receiver_user_id`)"); DBManager::Execute(true, "DELETE FROM `" . DB_PREFIX . DATABASE_CHAT_ARCHIVE . "` WHERE (`html` = '0' OR `html` = '') AND `time` < " . DBManager::RealEscape(time() - $_timeouts[3])); DBManager::Execute(true, "UPDATE `" . DB_PREFIX . DATABASE_CHAT_ARCHIVE . "` SET `closed`='" . time() . "' WHERE `chat_type`<>1 AND `closed`<`endtime` AND `endtime`<" . (time() - 1800) . ";"); DBManager::Execute(true, "DELETE FROM `" . DB_PREFIX . DATABASE_CHAT_ARCHIVE . "` WHERE `closed`=0 AND `chat_type`=1 AND NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_VISITOR_CHATS . "` WHERE `chat_id` = `" . DB_PREFIX . DATABASE_CHAT_ARCHIVE . "`.`chat_id`)"); DBManager::Execute(true, "DELETE FROM `" . DB_PREFIX . DATABASE_POSTS . "` WHERE `time` < " . DBManager::RealEscape(time() - $_timeouts[3])); DBManager::Execute(true, "DELETE FROM `" . DB_PREFIX . DATABASE_POSTS . "` WHERE `persistent` = '0' AND `time` < " . DBManager::RealEscape(time() - $_timeouts[1])); DBManager::Execute(true, "DELETE FROM `" . DB_PREFIX . DATABASE_POSTS . "` WHERE `repost` = '1' AND `time` < " . DBManager::RealEscape(time() - $_timeouts[0])); DBManager::Execute(true, "DELETE FROM `" . DB_PREFIX . DATABASE_OPERATOR_LOGINS . "` WHERE `time` < " . DBManager::RealEscape(time() - $_timeouts[1])); DBManager::Execute(true, "DELETE FROM `" . DB_PREFIX . DATABASE_EVENT_ACTION_INTERNALS . "` WHERE `created` < " . DBManager::RealEscape(time() - $_timeouts[0])); DBManager::Execute(true, "DELETE FROM `" . DB_PREFIX . DATABASE_PROFILE_PICTURES . "` WHERE `webcam`=1 AND `time` < " . DBManager::RealEscape(time() - $_timeouts[0])); $clr = ""; if (!empty(Server::$Configuration->File["gl_colt"])) { $clr = "`create` < " . intval(time() - Server::$Configuration->File["gl_colt"] * 86400) . " AND "; } DBManager::Execute(true, "DELETE FROM `" . DB_PREFIX . DATABASE_USER_DATA . "` WHERE " . $clr . "NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_VISITOR_BROWSERS . "` WHERE `data_id` = `" . DB_PREFIX . DATABASE_USER_DATA . "`.`id`) AND NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_FEEDBACKS . "` WHERE `data_id` = `" . DB_PREFIX . DATABASE_USER_DATA . "`.`id`);"); DBManager::Execute(true, "DELETE FROM `" . DB_PREFIX . DATABASE_FEEDBACKS . "` WHERE `resource_id` != '' AND NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_RESOURCES . "` WHERE `id` = `" . DB_PREFIX . DATABASE_FEEDBACKS . "`.`resource_id`);"); } else { if ($_randStandard == 2) { DBManager::Execute(true, "DELETE FROM `" . DB_PREFIX . DATABASE_ALERTS . "` WHERE NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_VISITORS . "` WHERE `id` = `" . DB_PREFIX . DATABASE_ALERTS . "`.`receiver_user_id`)"); DBManager::Execute(true, "DELETE FROM `" . DB_PREFIX . DATABASE_CHAT_FILES . "` WHERE NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_VISITORS . "` WHERE `id` = `" . DB_PREFIX . DATABASE_CHAT_FILES . "`.`visitor_id`)"); DBManager::Execute(true, "DELETE FROM `" . DB_PREFIX . DATABASE_CHAT_FORWARDS . "` WHERE NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_VISITOR_CHATS . "` WHERE `chat_id` = `" . DB_PREFIX . DATABASE_CHAT_FORWARDS . "`.`chat_id`)"); DBManager::Execute(true, "DELETE FROM `" . DB_PREFIX . DATABASE_CHAT_REQUESTS . "` WHERE NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_VISITOR_BROWSERS . "` WHERE `id` = `" . DB_PREFIX . DATABASE_CHAT_REQUESTS . "`.`receiver_browser_id`)"); DBManager::Execute(true, "DELETE FROM `" . DB_PREFIX . DATABASE_STATS_AGGS_GOALS . "` WHERE NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_GOALS . "` WHERE `id` = `" . DB_PREFIX . DATABASE_STATS_AGGS_GOALS . "`.`goal`)"); DBManager::Execute(true, "DELETE FROM `" . DB_PREFIX . DATABASE_STATS_AGGS_PAGES . "` WHERE NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_VISITOR_DATA_PAGES . "` WHERE `id` = `" . DB_PREFIX . DATABASE_STATS_AGGS_PAGES . "`.`url`)"); DBManager::Execute(true, "DELETE `" . DB_PREFIX . DATABASE_TICKETS . "` FROM `" . DB_PREFIX . DATABASE_TICKETS . "` INNER JOIN `" . DB_PREFIX . DATABASE_TICKET_MESSAGES . "` ON `" . DB_PREFIX . DATABASE_TICKETS . "`.`id`=`" . DB_PREFIX . DATABASE_TICKET_MESSAGES . "`.`ticket_id` WHERE `deleted`=1 AND `time` < " . DBManager::RealEscape(time() - $_timeouts[3]) . ";"); DBManager::Execute(true, "DELETE FROM `" . DB_PREFIX . DATABASE_TICKET_CUSTOMS . "` WHERE NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_TICKETS . "` WHERE `id` = `" . DB_PREFIX . DATABASE_TICKET_CUSTOMS . "`.`ticket_id`)"); DBManager::Execute(true, "DELETE FROM `" . DB_PREFIX . DATABASE_TICKET_EDITORS . "` WHERE NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_TICKETS . "` WHERE `id` = `" . DB_PREFIX . DATABASE_TICKET_EDITORS . "`.`ticket_id`)"); DBManager::Execute(true, "DELETE FROM `" . DB_PREFIX . DATABASE_TICKET_LOGS . "` WHERE NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_TICKETS . "` WHERE `id` = `" . DB_PREFIX . DATABASE_TICKET_LOGS . "`.`ticket_id`)"); DBManager::Execute(true, "DELETE FROM `" . DB_PREFIX . DATABASE_TICKET_COMMENTS . "` WHERE NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_TICKETS . "` WHERE `id` = `" . DB_PREFIX . DATABASE_TICKET_COMMENTS . "`.`ticket_id`)"); DBManager::Execute(true, "DELETE FROM `" . DB_PREFIX . DATABASE_TICKET_MESSAGES . "` WHERE NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_TICKETS . "` WHERE `id` = `" . DB_PREFIX . DATABASE_TICKET_MESSAGES . "`.`ticket_id`)"); DBManager::Execute(true, "DELETE FROM `" . DB_PREFIX . DATABASE_TICKETS . "` WHERE `last_update` < " . DBManager::RealEscape(time() - $_timeouts[1]) . " AND NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_TICKET_MESSAGES . "` WHERE `ticket_id` = `" . DB_PREFIX . DATABASE_TICKETS . "`.`id`)"); DBManager::Execute(true, "DELETE FROM `" . DB_PREFIX . DATABASE_TICKET_ATTACHMENTS . "` WHERE NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_TICKET_MESSAGES . "` WHERE `id` = `" . DB_PREFIX . DATABASE_TICKET_ATTACHMENTS . "`.`parent_id`) AND NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_TICKET_EMAILS . "` WHERE `email_id` = `" . DB_PREFIX . DATABASE_TICKET_ATTACHMENTS . "`.`parent_id`)"); } else { if ($_randStandard == 3) { if (empty(Server::$Configuration->File["gl_vmac"]) && !Is::Defined("STATS_ACTIVE")) { DBManager::Execute(true, "DELETE FROM `" . DB_PREFIX . DATABASE_VISITORS . "` WHERE `last_active`<" . (time() - Server::$Configuration->File["timeout_track"]) . " LIMIT 250;"); } DBManager::Execute(true, "DELETE FROM `" . DB_PREFIX . DATABASE_VISITOR_BROWSERS . "` WHERE NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_VISITORS . "` WHERE `id` = `" . DB_PREFIX . DATABASE_VISITOR_BROWSERS . "`.`visitor_id`)"); DBManager::Execute(true, "DELETE FROM `" . DB_PREFIX . DATABASE_VISITOR_BROWSER_URLS . "` WHERE NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_VISITOR_BROWSERS . "` WHERE `id` = `" . DB_PREFIX . DATABASE_VISITOR_BROWSER_URLS . "`.`browser_id`)"); DBManager::Execute(true, "DELETE FROM `" . DB_PREFIX . DATABASE_VISITOR_CHATS . "` WHERE NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_VISITORS . "` WHERE `id` = `" . DB_PREFIX . DATABASE_VISITOR_CHATS . "`.`visitor_id`)"); DBManager::Execute(true, "DELETE FROM `" . DB_PREFIX . DATABASE_VISITOR_CHAT_OPERATORS . "` WHERE NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_VISITOR_CHATS . "` WHERE `chat_id` = `" . DB_PREFIX . DATABASE_VISITOR_CHAT_OPERATORS . "`.`chat_id`)"); DBManager::Execute(true, "DELETE FROM `" . DB_PREFIX . DATABASE_VISITOR_GOALS . "` WHERE NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_VISITORS . "` WHERE `id` = `" . DB_PREFIX . DATABASE_VISITOR_GOALS . "`.`visitor_id`)"); DBManager::Execute(true, "DELETE FROM `" . DB_PREFIX . DATABASE_WEBSITE_PUSHS . "` WHERE NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_VISITOR_BROWSERS . "` WHERE `id` = `" . DB_PREFIX . DATABASE_WEBSITE_PUSHS . "`.`receiver_browser_id`)"); DBManager::Execute(true, "DELETE FROM `" . DB_PREFIX . DATABASE_OVERLAY_BOXES . "` WHERE NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_VISITOR_BROWSERS . "` WHERE `id` = `" . DB_PREFIX . DATABASE_OVERLAY_BOXES . "`.`receiver_browser_id`)"); DBManager::Execute(true, "DELETE FROM `" . DB_PREFIX . DATABASE_GROUP_MEMBERS . "` WHERE NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_GROUPS . "` WHERE `id` = `" . DB_PREFIX . DATABASE_GROUP_MEMBERS . "`.`group_id`)"); DBManager::Execute(true, "DELETE FROM `" . DB_PREFIX . DATABASE_COMMERCIAL_CHAT_LOCALIZATIONS . "` WHERE NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_COMMERCIAL_CHAT_TYPES . "` WHERE `id` = `" . DB_PREFIX . DATABASE_COMMERCIAL_CHAT_LOCALIZATIONS . "`.`tid`)"); DBManager::Execute(true, "DELETE FROM `" . DB_PREFIX . DATABASE_COMMERCIAL_CHAT_VOUCHERS . "` WHERE NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_COMMERCIAL_CHAT_TYPES . "` WHERE `id` = `" . DB_PREFIX . DATABASE_COMMERCIAL_CHAT_VOUCHERS . "`.`tid`)"); DBManager::Execute(true, "DELETE FROM `" . DB_PREFIX . DATABASE_TICKET_EMAILS . "` WHERE `deleted`=1 AND `edited` < " . DBManager::RealEscape(time() - $_timeouts[3])); DBManager::Execute(true, "DELETE FROM `" . DB_PREFIX . DATABASE_VISITOR_COMMENTS . "` WHERE `created` < " . DBManager::RealEscape(time() - max(1, Server::$Configuration->File["gl_colt"]) * 86400)); } else { if ($_randStandard == 4) { DBManager::Execute(true, "UPDATE `" . DB_PREFIX . DATABASE_RESOURCES . "` SET `discarded`=1,`edited`=UNIX_TIMESTAMP() WHERE NOT EXISTS(SELECT * FROM `" . DB_PREFIX . DATABASE_TICKET_ATTACHMENTS . "` WHERE `res_id` = `" . DB_PREFIX . DATABASE_RESOURCES . "`.`id`) AND `created` < " . intval(time() - 7 * 86400) . " AND `discarded`=0 AND `type`=3 AND `parentid`=100 LIMIT 10;"); if (Server::$Configuration->File["gl_adct"] != 1) { if (!empty(Server::$Configuration->File["gl_rm_chats"])) { DBManager::Execute(true, "DELETE FROM `" . DB_PREFIX . DATABASE_CHAT_ARCHIVE . "` WHERE `chat_type`=1 AND `time` < " . intval(time() - Server::$Configuration->File["gl_rm_chats_time"])); } if (!empty(Server::$Configuration->File["gl_rm_oc"])) { DBManager::Execute(true, "DELETE FROM `" . DB_PREFIX . DATABASE_CHAT_ARCHIVE . "` WHERE `chat_type`=0 AND `time` < " . intval(time() - Server::$Configuration->File["gl_rm_oc_time"])); } if (!empty(Server::$Configuration->File["gl_rm_gc"])) { DBManager::Execute(true, "DELETE FROM `" . DB_PREFIX . DATABASE_CHAT_ARCHIVE . "` WHERE `chat_type`=2 AND `time` < " . intval(time() - Server::$Configuration->File["gl_rm_gc_time"])); } if (!empty(Server::$Configuration->File["gl_rm_rt"])) { DBManager::Execute(true, "DELETE FROM `" . DB_PREFIX . DATABASE_FEEDBACKS . "` WHERE `created` < " . intval(time() - Server::$Configuration->File["gl_rm_rt_time"])); DBManager::Execute(true, "DELETE FROM `" . DB_PREFIX . DATABASE_FEEDBACK_CRITERIA . "` WHERE NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_FEEDBACKS . "` WHERE `id` = `" . DB_PREFIX . DATABASE_FEEDBACK_CRITERIA . "`.`fid`)"); } if (!empty(Server::$Configuration->File["gl_rm_cf"])) { DBManager::Execute(true, "UPDATE `" . DB_PREFIX . DATABASE_RESOURCES . "` SET `discarded`=1,`edited`=UNIX_TIMESTAMP() WHERE `discarded`=0 AND `type`=4 AND `created` < " . intval(time() - Server::$Configuration->File["gl_rm_cf_time"]) . " ORDER BY `created` ASC LIMIT 5;"); if (!empty(Server::$Operators)) { foreach (Server::$Operators as $sid => $operator) { if (!$operator->IsBot) { DBManager::Execute(true, "UPDATE `" . DB_PREFIX . DATABASE_RESOURCES . "` SET `discarded`=1,`edited`=UNIX_TIMESTAMP() WHERE `discarded`=0 AND `type`=3 AND `parentid`='" . DBManager::RealEscape($sid) . "' AND `created` < " . intval(time() - Server::$Configuration->File["gl_rm_cf_time"]) . " ORDER BY `created` ASC LIMIT 5;"); } } } DBManager::Execute(true, "UPDATE `" . DB_PREFIX . DATABASE_RESOURCES . "` SET `discarded`=1,`edited`=UNIX_TIMESTAMP() WHERE `discarded`=0 AND `type`=0 AND `parentid`=5 AND `created` < " . intval(time() - Server::$Configuration->File["gl_rm_cf_time"]) . " ORDER BY `created` ASC LIMIT 5;"); } if (!empty(Server::$Configuration->File["gl_rm_tf"])) { DBManager::Execute(true, "UPDATE `" . DB_PREFIX . DATABASE_RESOURCES . "` SET `discarded`=1,`edited`=UNIX_TIMESTAMP() WHERE `discarded`=0 AND `type`=3 AND `created` < " . intval(time() - Server::$Configuration->File["gl_rm_tf_time"]) . " ORDER BY `created` ASC LIMIT 5;"); } if (!empty(Server::$Configuration->File["gl_rm_om"])) { DBManager::Execute(true, "DELETE `" . DB_PREFIX . DATABASE_TICKETS . "` FROM `" . DB_PREFIX . DATABASE_TICKETS . "` INNER JOIN `" . DB_PREFIX . DATABASE_TICKET_MESSAGES . "` ON `" . DB_PREFIX . DATABASE_TICKETS . "`.`id`=`" . DB_PREFIX . DATABASE_TICKET_MESSAGES . "`.`ticket_id` WHERE `" . DB_PREFIX . DATABASE_TICKET_MESSAGES . "`.`time` < " . DBManager::RealEscape(time() - Server::$Configuration->File["gl_rm_om_time"])); } if (!empty(Server::$Configuration->File["gl_rm_tid"])) { DBManager::Execute(true, "DELETE `" . DB_PREFIX . DATABASE_TICKETS . "` FROM `" . DB_PREFIX . DATABASE_TICKETS . "` INNER JOIN `" . DB_PREFIX . DATABASE_TICKET_MESSAGES . "` ON `" . DB_PREFIX . DATABASE_TICKETS . "`.`id`=`" . DB_PREFIX . DATABASE_TICKET_MESSAGES . "`.`ticket_id` INNER JOIN `" . DB_PREFIX . DATABASE_TICKET_EDITORS . "` ON `" . DB_PREFIX . DATABASE_TICKETS . "`.`id`=`" . DB_PREFIX . DATABASE_TICKET_EDITORS . "`.`ticket_id` WHERE `" . DB_PREFIX . DATABASE_TICKET_EDITORS . "`.`status`=3 AND `" . DB_PREFIX . DATABASE_TICKET_MESSAGES . "`.`time` < " . DBManager::RealEscape(time() - Server::$Configuration->File["gl_rm_tid_time"])); } if (!empty(Server::$Operators) && !empty(Server::$Configuration->File["gl_rm_bc"])) { foreach (Server::$Operators as $sid => $operator) { if ($operator->IsBot) { DBManager::Execute(true, "DELETE FROM `" . DB_PREFIX . DATABASE_CHAT_ARCHIVE . "` WHERE `chat_type`=1 AND `internal_id`='" . DBManager::RealEscape($sid) . "' AND `time` < " . DBManager::RealEscape(time() - Server::$Configuration->File["gl_rm_bc_time"])); } } } } if ($result = DBManager::Execute(true, "SELECT * FROM `" . DB_PREFIX . DATABASE_RESOURCES . "` WHERE `discarded`=1 AND `type` > 2")) { while ($result && ($row = DBManager::FetchArray($result))) { $resultb = DBManager::Execute(true, "SELECT count(value) as `linked` FROM `" . DB_PREFIX . DATABASE_RESOURCES . "` WHERE `value`='" . DBManager::RealEscape($row["value"]) . "';"); $rowb = DBManager::FetchArray($resultb); if ($rowb["linked"] == 1) { @unlink(PATH_UPLOADS . $row["value"]); } } } DBManager::Execute(true, "DELETE FROM `" . DB_PREFIX . DATABASE_RESOURCES . "` WHERE `discarded`='1' AND `edited` < " . DBManager::RealEscape(time() - $_timeouts[3])); } } } } }
/**************************************************************************************** * LiveZilla report.php * * Copyright 2014 LiveZilla GmbH * All rights reserved. * LiveZilla is a registered trademark. * * Improper changes to this file may cause critical errors. ***************************************************************************************/ define("IN_LIVEZILLA", true); header('Content-Type: text/html; charset=utf-8'); if (!defined("LIVEZILLA_PATH")) { define("LIVEZILLA_PATH", "./"); } require LIVEZILLA_PATH . "_definitions/definitions.inc.php"; require LIVEZILLA_PATH . "_lib/functions.global.inc.php"; require LIVEZILLA_PATH . "_definitions/definitions.dynamic.inc.php"; require LIVEZILLA_PATH . "_definitions/definitions.protocol.inc.php"; @set_error_handler("handleError"); if (!empty($_GET["h"]) && !empty($_GET["y"]) && isset($_GET["m"]) && isset($_GET["d"]) && Server::InitDataProvider()) { Server::DefineURL("report.php"); Server::InitStatisticProvider(); $repData = StatisticProvider::GetReportFromHash($_GET["h"], $_GET["y"], $_GET["m"], $_GET["d"], !empty($_GET["u"])); if ($repData !== false) { LocalizationManager::AutoLoad(strtolower(Server::$Configuration->File["gl_default_language"]), true); $repData = Server::Replace($repData, true, false, false, true); exit($repData); } } exit("Sorry, report was not found.");
function LoadComparer() { StatisticProvider::LogProcess("LOAD COMPARER YEAR: " . $this->Year); $this->Comparer = new StatisticYear($this->Year - 1, 0, 0); $this->Comparer->LoadMonths(); if (!$this->Comparer->Load()) { $this->Comparer = null; } }
function GetChatsByDays($counter = 0, $html = "", $crow = "") { $rows = array(); foreach ($this->Days as $day) { $days[intval($day->Day)] = array(0, 0, 0); } $hrow = IOStruct::GetFile(TEMPLATE_HTML_STATS_HOURS_HIDDEN_ROW); $trow = IOStruct::GetFile(TEMPLATE_HTML_STATS_TOP_ROW); $result = DBManager::Execute(true, "SELECT *,SUM(`amount`) AS `am`,SUM(`accepted`) AS `acc`,SUM(`declined`) AS `dec`,(SELECT SUM(`amount`) FROM `" . DB_PREFIX . DATABASE_STATS_AGGS_CHATS . "` WHERE" . $this->GetNoneAggregatedDateMatch() . " AND `group_id` = '') AS `total` FROM `" . DB_PREFIX . DATABASE_STATS_AGGS_CHATS . "` WHERE" . $this->GetNoneAggregatedDateMatch() . " AND group_id = '' GROUP BY `user_id`,`year`,`month`,`day` ORDER BY `user_id`,`day` ASC;"); while ($row = DBManager::FetchArray($result)) { if (isset(Server::$Operators[$row["user_id"]])) { if (!isset($count[$row["day"]])) { $count[$row["day"]] = 0; } $rows[$row["day"]][$row["user_id"]] = str_replace("<!--title-->", isset(Server::$Operators[$row["user_id"]]) ? Server::$Operators[$row["user_id"]]->Fullname : "<!--lang_stats_unknown-->", $hrow); $rows[$row["day"]][$row["user_id"]] = str_replace("<!--rel_amount-->", @round(100 * $row["am"] / $row["total"], StatisticProvider::$RoundPrecision), $rows[$row["day"]][$row["user_id"]]); $rows[$row["day"]][$row["user_id"]] = str_replace("<!--rel_floor_amount-->", 100 - @floor(100 * $row["am"] / $row["total"]), $rows[$row["day"]][$row["user_id"]]); $rows[$row["day"]][$row["user_id"]] = str_replace("<!--abs_amount-->", $row["am"] . " (" . $row["acc"] . " / " . $row["dec"] . " / " . ($row["am"] - $row["dec"] - $row["acc"]) . ")", $rows[$row["day"]][$row["user_id"]]); $rows[$row["day"]][$row["user_id"]] = str_replace("<!--count-->", ++$count[$row["day"]], $rows[$row["day"]][$row["user_id"]]); $rows[$row["day"]][$row["user_id"]] = str_replace("<!--id-->", "cbd_" . $row["day"] . "<!--number-->", $rows[$row["day"]][$row["user_id"]]); } $days[$row["day"]][0] += $row["am"]; $days[$row["day"]][1] += $row["dec"]; $days[$row["day"]][2] += $row["acc"]; $max = $row["total"]; } foreach ($this->Days as $day) { $int = intval($day->Day); $counter = 1; $orows = ""; if (isset($rows[$int])) { $crow .= str_replace("<!--title-->", "<a href=\"javascript:switchRowVisibility('cbd_" . $int . "');\">" . StatisticProvider::GetDynamicDateFrame(mktime(0, 0, 0, $day->Month, $day->Day, $day->Year)) . "</a>", $trow); foreach ($rows[$int] as $row) { $orows .= str_replace("<!--number-->", $counter++, $row); } } else { $crow .= str_replace("<!--title-->", StatisticProvider::GetDynamicDateFrame(mktime(0, 0, 0, $day->Month, $day->Day, $day->Year)), $trow); } $crow = str_replace("<!--rel_amount-->", @round(100 * $days[$int][0] / $max, StatisticProvider::$RoundPrecision), $crow); $crow = str_replace("<!--rel_floor_amount-->", 100 - @floor(100 * $days[$int][0] / $max), $crow); $crow = str_replace("<!--abs_amount-->", $days[$int][0] . " (" . $days[$int][2] . " / " . $days[$int][1] . " / " . ($days[$int][0] - $days[$int][2] - $days[$int][1]) . ")", $crow); $crow = str_replace("<!--count-->", " ", $crow); $crow .= $orows; } $html = str_replace("<!--rows-->", $crow, IOStruct::GetFile(TEMPLATE_HTML_STATS_TOP_TABLE)); $html = str_replace("<!--column_count_width-->", "25", $html); $html = str_replace("<!--expand_all-->", "", $html); $html = str_replace("<!--expand_all_block-->", "cbd", $html); $html = str_replace("<!--column_value_title-->", "<!--lang_stats_by_days-->", $html); $html = str_replace("<!--description-->", "<!--lang_stats_absolute-->: <!--lang_stats_description_operator_chats-->", $html); return str_replace("<!--title-->", "Chats", $html); }
function runPeriodicJobs() { global $CONFIG, $VISITOR, $STATS; if (rand(0, 100) == 1) { $timeouts = array($CONFIG["poll_frequency_clients"] * 10, 86400, 86400 * 7, DATA_LIFETIME); queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_CHAT_ARCHIVE . "` WHERE (`html` = '0' OR `html` = '') AND `time` < " . @mysql_real_escape_string(time() - $timeouts[3])); queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_POSTS . "` WHERE `time` < " . @mysql_real_escape_string(time() - $timeouts[3])); queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_POSTS . "` WHERE `persistent` = '0' AND `time` < " . @mysql_real_escape_string(time() - $timeouts[1])); queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_OPERATOR_LOGINS . "` WHERE `time` < " . @mysql_real_escape_string(time() - $timeouts[1])); queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_EVENT_ACTION_INTERNALS . "` WHERE `created` < " . @mysql_real_escape_string(time() - $timeouts[0])); queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_PROFILE_PICTURES . "` WHERE `webcam`=1 AND `time` < " . @mysql_real_escape_string(time() - $timeouts[0])); if (!STATS_ACTIVE) { queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_VISITORS . "` WHERE `last_active`<'" . @mysql_real_escape_string(time() - $timeouts[1]) . "';"); queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_OPERATOR_STATUS . "` WHERE `" . DB_PREFIX . DATABASE_OPERATOR_STATUS . "`.`confirmed`<'" . @mysql_real_escape_string(time() - $timeouts[1]) . "';"); } else { StatisticProvider::DeleteHTMLReports(); } if (!empty($CONFIG["gl_rm_chats"])) { queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_CHAT_ARCHIVE . "` WHERE `time` < " . @mysql_real_escape_string(time() - $CONFIG["gl_rm_chats_time"])); } if (!empty($CONFIG["gl_rm_rt"])) { queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_RATINGS . "` WHERE `time` < " . @mysql_real_escape_string(time() - $CONFIG["gl_rm_rt_time"])); } if (!empty($CONFIG["gl_rm_om"])) { queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_TICKET_EDITORS . "` WHERE `time` < " . @mysql_real_escape_string(time() - $CONFIG["gl_rm_om_time"])); queryDB(true, "DELETE `" . DB_PREFIX . DATABASE_TICKET_MESSAGES . "`,`" . DB_PREFIX . DATABASE_TICKETS . "` FROM `" . DB_PREFIX . DATABASE_TICKETS . "` INNER JOIN `" . DB_PREFIX . DATABASE_TICKET_MESSAGES . "` WHERE `" . DB_PREFIX . DATABASE_TICKETS . "`.`id` = `" . DB_PREFIX . DATABASE_TICKET_MESSAGES . "`.`ticket_id` AND `" . DB_PREFIX . DATABASE_TICKET_MESSAGES . "`.`time` < " . @mysql_real_escape_string(time() - $CONFIG["gl_rm_om_time"])); } if ($result = queryDB(true, "SELECT * FROM `" . DB_PREFIX . DATABASE_RESOURCES . "` WHERE `discarded`=1 AND `type` > 2 AND `edited` < " . @mysql_real_escape_string(time() - $timeouts[3]))) { } while ($row = mysql_fetch_array($result, MYSQL_BOTH)) { $resultb = queryDB(true, "SELECT count(value) as linked FROM `" . DB_PREFIX . DATABASE_RESOURCES . "` WHERE `value`='" . @mysql_real_escape_string($row["value"]) . "';"); $rowb = mysql_fetch_array($resultb, MYSQL_BOTH); if ($rowb["linked"] == 1) { @unlink(PATH_UPLOADS . $row["value"]); } } queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_RESOURCES . "` WHERE `discarded`='1' AND `edited` < " . @mysql_real_escape_string(time() - $timeouts[3])); } else { if (rand(0, 10) == 1) { sendChatTranscripts(); } } }
function cronJobs($_asCronJob) { global $CONFIG, $INTERNAL; $timeouts = array($CONFIG["poll_frequency_clients"] * 10, 86400, 86400 * 7, DATA_LIFETIME); $randoms = $_asCronJob ? array(0 => 10, 1 => 10, 2 => 1) : array(0 => 300, 1 => 300, 2 => 5); if (rand(1, $randoms[0]) == 1) { if (!STATS_ACTIVE) { queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_VISITORS . "` WHERE `last_active`<" . DBManager::RealEscape(time() - $CONFIG["gl_dvhd"] * 86400) . ";"); queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_OPERATOR_STATUS . "` WHERE `" . DB_PREFIX . DATABASE_OPERATOR_STATUS . "`.`confirmed`<" . DBManager::RealEscape(time() - $CONFIG["gl_dvhd"] * 86400) . ";"); } else { StatisticProvider::DeleteHTMLReports(); } queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_EVENT_TRIGGERS . "` WHERE NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_VISITORS . "` WHERE `id` = `" . DB_PREFIX . DATABASE_EVENT_TRIGGERS . "`.`receiver_user_id`)"); queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_CHAT_ARCHIVE . "` WHERE (`html` = '0' OR `html` = '') AND `time` < " . DBManager::RealEscape(time() - $timeouts[3])); queryDB(true, "UPDATE `" . DB_PREFIX . DATABASE_CHAT_ARCHIVE . "` SET `closed`='" . time() . "' WHERE `chat_type`<>1 AND `closed`<`endtime` AND `endtime`<" . (time() - 1800) . ";"); queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_CHAT_ARCHIVE . "` WHERE `closed`=0 AND `chat_type`=1 AND NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_VISITOR_CHATS . "` WHERE `chat_id` = `" . DB_PREFIX . DATABASE_CHAT_ARCHIVE . "`.`chat_id`)"); queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_POSTS . "` WHERE `time` < " . DBManager::RealEscape(time() - $timeouts[3])); queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_POSTS . "` WHERE `persistent` = '0' AND `time` < " . DBManager::RealEscape(time() - $timeouts[1])); queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_POSTS . "` WHERE `repost` = '1' AND `time` < " . DBManager::RealEscape(time() - $timeouts[0])); queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_OPERATOR_LOGINS . "` WHERE `time` < " . DBManager::RealEscape(time() - $timeouts[1])); queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_EVENT_ACTION_INTERNALS . "` WHERE `created` < " . DBManager::RealEscape(time() - $timeouts[0])); queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_PROFILE_PICTURES . "` WHERE `webcam`=1 AND `time` < " . DBManager::RealEscape(time() - $timeouts[0])); queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_ALERTS . "` WHERE NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_VISITORS . "` WHERE `id` = `" . DB_PREFIX . DATABASE_ALERTS . "`.`receiver_user_id`)"); queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_CHAT_FILES . "` WHERE NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_VISITORS . "` WHERE `id` = `" . DB_PREFIX . DATABASE_CHAT_FILES . "`.`visitor_id`)"); queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_CHAT_FORWARDS . "` WHERE NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_VISITOR_CHATS . "` WHERE `chat_id` = `" . DB_PREFIX . DATABASE_CHAT_FORWARDS . "`.`chat_id`)"); queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_CHAT_REQUESTS . "` WHERE NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_VISITOR_BROWSERS . "` WHERE `id` = `" . DB_PREFIX . DATABASE_CHAT_REQUESTS . "`.`receiver_browser_id`)"); queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_STATS_AGGS_GOALS . "` WHERE NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_GOALS . "` WHERE `id` = `" . DB_PREFIX . DATABASE_STATS_AGGS_GOALS . "`.`goal`)"); queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_STATS_AGGS_PAGES . "` WHERE NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_VISITOR_DATA_PAGES . "` WHERE `id` = `" . DB_PREFIX . DATABASE_STATS_AGGS_PAGES . "`.`url`)"); queryDB(true, "DELETE `" . DB_PREFIX . DATABASE_TICKETS . "` FROM `" . DB_PREFIX . DATABASE_TICKETS . "` INNER JOIN `" . DB_PREFIX . DATABASE_TICKET_MESSAGES . "` ON `" . DB_PREFIX . DATABASE_TICKETS . "`.`id`=`" . DB_PREFIX . DATABASE_TICKET_MESSAGES . "`.`ticket_id` WHERE `deleted`=1 AND `time` < " . DBManager::RealEscape(time() - $timeouts[3]) . ";"); queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_TICKET_CUSTOMS . "` WHERE NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_TICKETS . "` WHERE `id` = `" . DB_PREFIX . DATABASE_TICKET_CUSTOMS . "`.`ticket_id`)"); queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_TICKET_EDITORS . "` WHERE NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_TICKETS . "` WHERE `id` = `" . DB_PREFIX . DATABASE_TICKET_EDITORS . "`.`ticket_id`)"); queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_TICKET_LOGS . "` WHERE NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_TICKETS . "` WHERE `id` = `" . DB_PREFIX . DATABASE_TICKET_LOGS . "`.`ticket_id`)"); queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_TICKET_COMMENTS . "` WHERE NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_TICKETS . "` WHERE `id` = `" . DB_PREFIX . DATABASE_TICKET_COMMENTS . "`.`ticket_id`)"); queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_TICKET_MESSAGES . "` WHERE NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_TICKETS . "` WHERE `id` = `" . DB_PREFIX . DATABASE_TICKET_MESSAGES . "`.`ticket_id`)"); queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_TICKETS . "` WHERE NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_TICKET_MESSAGES . "` WHERE `ticket_id` = `" . DB_PREFIX . DATABASE_TICKETS . "`.`id`)"); queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_TICKET_ATTACHMENTS . "` WHERE NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_TICKET_MESSAGES . "` WHERE `id` = `" . DB_PREFIX . DATABASE_TICKET_ATTACHMENTS . "`.`parent_id`) AND NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_TICKET_EMAILS . "` WHERE `email_id` = `" . DB_PREFIX . DATABASE_TICKET_ATTACHMENTS . "`.`parent_id`)"); queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_VISITOR_BROWSERS . "` WHERE NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_VISITORS . "` WHERE `visit_id` = `" . DB_PREFIX . DATABASE_VISITOR_BROWSERS . "`.`visit_id`)"); queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_VISITOR_BROWSER_URLS . "` WHERE NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_VISITOR_BROWSERS . "` WHERE `id` = `" . DB_PREFIX . DATABASE_VISITOR_BROWSER_URLS . "`.`browser_id`)"); queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_VISITOR_CHATS . "` WHERE NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_VISITORS . "` WHERE `id` = `" . DB_PREFIX . DATABASE_VISITOR_CHATS . "`.`visitor_id`)"); queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_VISITOR_CHAT_OPERATORS . "` WHERE NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_VISITOR_CHATS . "` WHERE `chat_id` = `" . DB_PREFIX . DATABASE_VISITOR_CHAT_OPERATORS . "`.`chat_id`)"); queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_VISITOR_GOALS . "` WHERE NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_VISITORS . "` WHERE `id` = `" . DB_PREFIX . DATABASE_VISITOR_GOALS . "`.`visitor_id`)"); queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_WEBSITE_PUSHS . "` WHERE NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_VISITOR_BROWSERS . "` WHERE `id` = `" . DB_PREFIX . DATABASE_WEBSITE_PUSHS . "`.`receiver_browser_id`)"); queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_OVERLAY_BOXES . "` WHERE NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_VISITOR_BROWSERS . "` WHERE `id` = `" . DB_PREFIX . DATABASE_OVERLAY_BOXES . "`.`receiver_browser_id`)"); queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_GROUP_MEMBERS . "` WHERE NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_GROUPS . "` WHERE `id` = `" . DB_PREFIX . DATABASE_GROUP_MEMBERS . "`.`group_id`)"); queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_COMMERCIAL_CHAT_LOCALIZATIONS . "` WHERE NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_COMMERCIAL_CHAT_TYPES . "` WHERE `id` = `" . DB_PREFIX . DATABASE_COMMERCIAL_CHAT_LOCALIZATIONS . "`.`tid`)"); queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_COMMERCIAL_CHAT_VOUCHERS . "` WHERE NOT EXISTS (SELECT * FROM `" . DB_PREFIX . DATABASE_COMMERCIAL_CHAT_TYPES . "` WHERE `id` = `" . DB_PREFIX . DATABASE_COMMERCIAL_CHAT_VOUCHERS . "`.`tid`)"); queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_TICKET_EMAILS . "` WHERE `deleted`=1 AND `edited` < " . DBManager::RealEscape(time() - $timeouts[3])); queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_PUSH_MESSAGES . "` WHERE `sent`=1 AND `created` < " . DBManager::RealEscape(time() - 600)); queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_VISITOR_COMMENTS . "` WHERE `created` < " . DBManager::RealEscape(time() - max(1, $CONFIG["gl_colt"]) * 86400)); if ($CONFIG["gl_adct"] != 1) { if (!empty($CONFIG["gl_rm_chats"])) { queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_CHAT_ARCHIVE . "` WHERE `chat_type`=1 AND `time` < " . DBManager::RealEscape(time() - $CONFIG["gl_rm_chats_time"])); } if (!empty($CONFIG["gl_rm_oc"])) { queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_CHAT_ARCHIVE . "` WHERE `chat_type`=0 AND `time` < " . DBManager::RealEscape(time() - $CONFIG["gl_rm_oc_time"])); } if (!empty($CONFIG["gl_rm_gc"])) { queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_CHAT_ARCHIVE . "` WHERE `chat_type`=2 AND `time` < " . DBManager::RealEscape(time() - $CONFIG["gl_rm_gc_time"])); } if (!empty($CONFIG["gl_rm_rt"])) { queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_RATINGS . "` WHERE `time` < " . DBManager::RealEscape(time() - $CONFIG["gl_rm_rt_time"])); } if (!empty($CONFIG["gl_rm_om"])) { queryDB(true, $d = "DELETE `" . DB_PREFIX . DATABASE_TICKETS . "` FROM `" . DB_PREFIX . DATABASE_TICKETS . "` INNER JOIN `" . DB_PREFIX . DATABASE_TICKET_MESSAGES . "` ON `" . DB_PREFIX . DATABASE_TICKETS . "`.`id`=`" . DB_PREFIX . DATABASE_TICKET_MESSAGES . "`.`ticket_id` WHERE `" . DB_PREFIX . DATABASE_TICKET_MESSAGES . "`.`time` < " . DBManager::RealEscape(time() - $CONFIG["gl_rm_om_time"])); } if (!empty($CONFIG["gl_rm_tid"])) { queryDB(true, "DELETE `" . DB_PREFIX . DATABASE_TICKETS . "` FROM `" . DB_PREFIX . DATABASE_TICKETS . "` INNER JOIN `" . DB_PREFIX . DATABASE_TICKET_MESSAGES . "` ON `" . DB_PREFIX . DATABASE_TICKETS . "`.`id`=`" . DB_PREFIX . DATABASE_TICKET_MESSAGES . "`.`ticket_id` INNER JOIN `" . DB_PREFIX . DATABASE_TICKET_EDITORS . "` ON `" . DB_PREFIX . DATABASE_TICKETS . "`.`id`=`" . DB_PREFIX . DATABASE_TICKET_EDITORS . "`.`ticket_id` WHERE `" . DB_PREFIX . DATABASE_TICKET_EDITORS . "`.`status`=3 AND `" . DB_PREFIX . DATABASE_TICKET_MESSAGES . "`.`time` < " . DBManager::RealEscape(time() - $CONFIG["gl_rm_tid_time"])); } if (!empty($INTERNAL) && !empty($CONFIG["gl_rm_bc"])) { foreach ($INTERNAL as $sid => $operator) { if ($operator->IsBot) { queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_CHAT_ARCHIVE . "` WHERE `chat_type`=1 AND `internal_id`='" . DBManager::RealEscape($sid) . "' AND `time` < " . DBManager::RealEscape(time() - $CONFIG["gl_rm_bc_time"])); } } } } if ($result = queryDB(true, "SELECT * FROM `" . DB_PREFIX . DATABASE_RESOURCES . "` WHERE `discarded`=1 AND `type` > 2 AND `edited` < " . DBManager::RealEscape(time() - $timeouts[3]))) { } while ($result && ($row = DBManager::FetchArray($result))) { $resultb = queryDB(true, "SELECT count(value) as `linked` FROM `" . DB_PREFIX . DATABASE_RESOURCES . "` WHERE `value`='" . DBManager::RealEscape($row["value"]) . "';"); $rowb = DBManager::FetchArray($resultb); if ($rowb["linked"] == 1) { @unlink(PATH_UPLOADS . $row["value"]); } } queryDB(true, "DELETE FROM `" . DB_PREFIX . DATABASE_RESOURCES . "` WHERE `discarded`='1' AND `edited` < " . DBManager::RealEscape(time() - $timeouts[3])); } if (rand(1, $randoms[2]) == 1) { if (empty($CONFIG["gl_rm_chats"]) || !empty($CONFIG["gl_rm_chats_time"])) { sendChatTranscripts(); } downloadEmails($_asCronJob); } }
function AggregateDayEntranceExitPageCount($_table, $_exit = false, $_secondaryGroupField = "") { if (StatisticProvider::$AggregateDomains) { $_secondaryGroupField = ""; } StatisticProvider::LogProcess("AggregateDayEntranceExitPageCount DAY: " . $this->Day); queryDB(true, "DELETE FROM `" . $_table . "` WHERE" . $this->GetDateMatch() . ";"); $result = queryDB(true, "SELECT COUNT(`urli`) as `pamount`,`urli` FROM (SELECT DISTINCT(`browser_id`) as `bid`,(SELECT `url` FROM `" . DB_PREFIX . DATABASE_VISITOR_BROWSER_URLS . "` WHERE `" . DB_PREFIX . DATABASE_VISITOR_BROWSER_URLS . "`.`browser_id`=`bid` ORDER BY `entrance` " . ($_exit ? "DESC" : "ASC") . " LIMIT 1) as `urli` FROM `" . DB_PREFIX . DATABASE_VISITOR_BROWSER_URLS . "` INNER JOIN `" . DB_PREFIX . DATABASE_VISITOR_BROWSERS . "` AS `vb` ON `" . DB_PREFIX . DATABASE_VISITOR_BROWSER_URLS . "`.`browser_id`=`vb`.`id` WHERE `vb`.`is_chat`=0 AND " . ($_exit ? "`vb`.`last_active` < " . (time() - StatisticProvider::$TimeoutTrack) . " AND " : "") . "`entrance`>=" . @mysql_real_escape_string($this->Delimiters[0]) . " AND `entrance`<=" . @mysql_real_escape_string($this->Delimiters[1]) . ") AS `subt` INNER JOIN `" . DB_PREFIX . DATABASE_VISITOR_DATA_PAGES . "` AS t1 ON urli=t1.`id` GROUP BY `t1`.`path`" . $_secondaryGroupField . " ORDER BY `pamount` DESC LIMIT " . StatisticProvider::$DayItemAmount . ";"); while ($row = mysql_fetch_array($result, MYSQL_BOTH)) { queryDB(true, "INSERT INTO `" . $_table . "` (`year`,`month`,`day`,`url`,`amount`) VALUES (" . $this->GetSQLDateValues() . ",'" . @mysql_real_escape_string($row["urli"]) . "','" . @mysql_real_escape_string($row["pamount"]) . "');"); } }