• Модуль: statistic
  • Путь к файлу: ~/bitrix/modules/statistic/classes/mysql/traffic.php
  • Класс: CTraffic
  • Вызов: CTraffic::GetCommonValues
static function GetCommonValues($arFilter=Array(), $bIgnoreErrors=false)
{
	$err_mess = "File: ".__FILE__."
Line: "; $DB = CDatabase::GetModuleConnection('statistic'); $site_id = $arFilter["SITE_ID"]; if($site_id <> '' && $site_id!="NOT_REF") { $site_filter = true; $strSqlSearch = " and SITE_ID = '".$DB->ForSql($site_id, 2)."' "; } else { $site_filter = false; $strSqlSearch = ""; } $date1 = $arFilter["DATE1"]; $date2 = $arFilter["DATE2"]; if($date1 <> '' && CheckDateTime($date1)) { $is_filtered = true; $date_from = MkDateTime(ConvertDateTime($date1,"D.M.Y"),"d.m.Y"); if($date2 <> '' && CheckDateTime($date2)) { $date_to = MkDateTime(ConvertDateTime($date2,"D.M.Y")." 23:59","d.m.Y H:i"); $strSqlPeriod = "sum(if(DATE_STATFROM_UNIXTIME('$date_to'),0,"; $strT=")))"; } else { $strSqlPeriod = "sum(if(DATE_STAT '' && CheckDateTime($date2)) { $is_filtered = true; $date_to = MkDateTime(ConvertDateTime($date2,"D.M.Y")." 23:59","d.m.Y H:i"); $strSqlPeriod = "sum(if(DATE_STAT>FROM_UNIXTIME('$date_to'),0,"; $strT="))"; } else { $is_filtered = false; $strSqlPeriod = ""; $strT=""; } $strSql = " SELECT sum(HITS) TOTAL_HITS, sum(if(to_days(curdate())=to_days(DATE_STAT),HITS,0)) TODAY_HITS, sum(if(to_days(curdate())-to_days(DATE_STAT)=1,HITS,0)) YESTERDAY_HITS, sum(if(to_days(curdate())-to_days(DATE_STAT)=2,HITS,0)) B_YESTERDAY_HITS, sum(SESSIONS) TOTAL_SESSIONS, sum(if(to_days(curdate())=to_days(DATE_STAT),SESSIONS,0)) TODAY_SESSIONS, sum(if(to_days(curdate())-to_days(DATE_STAT)=1,SESSIONS,0)) YESTERDAY_SESSIONS, sum(if(to_days(curdate())-to_days(DATE_STAT)=2,SESSIONS,0)) B_YESTERDAY_SESSIONS, sum(C_EVENTS) TOTAL_EVENTS, sum(if(to_days(curdate())=to_days(DATE_STAT),C_EVENTS,0)) TODAY_EVENTS, sum(if(to_days(curdate())-to_days(DATE_STAT)=1,C_EVENTS,0)) YESTERDAY_EVENTS, sum(if(to_days(curdate())-to_days(DATE_STAT)=2,C_EVENTS,0)) B_YESTERDAY_EVENTS, sum(C_HOSTS) TOTAL_HOSTS, sum(if(to_days(curdate())=to_days(DATE_STAT),C_HOSTS,0)) TODAY_HOSTS, sum(if(to_days(curdate())-to_days(DATE_STAT)=1,C_HOSTS,0)) YESTERDAY_HOSTS, sum(if(to_days(curdate())-to_days(DATE_STAT)=2,C_HOSTS,0)) B_YESTERDAY_HOSTS, sum(NEW_GUESTS) TOTAL_GUESTS, sum(if(to_days(curdate())=to_days(DATE_STAT),GUESTS,0)) TODAY_GUESTS, sum(if(to_days(curdate())-to_days(DATE_STAT)=1,GUESTS,0)) YESTERDAY_GUESTS, sum(if(to_days(curdate())-to_days(DATE_STAT)=2,GUESTS,0)) B_YESTERDAY_GUESTS, sum(if(to_days(curdate())=to_days(DATE_STAT),NEW_GUESTS,0)) TODAY_NEW_GUESTS, sum(if(to_days(curdate())-to_days(DATE_STAT)=1,NEW_GUESTS,0)) YESTERDAY_NEW_GUESTS, sum(if(to_days(curdate())-to_days(DATE_STAT)=2,NEW_GUESTS,0)) B_YESTERDAY_NEW_GUESTS, sum(FAVORITES) TOTAL_FAVORITES, sum(if(to_days(curdate())=to_days(DATE_STAT),FAVORITES,0)) TODAY_FAVORITES, sum(if(to_days(curdate())-to_days(DATE_STAT)=1,FAVORITES,0)) YESTERDAY_FAVORITES, sum(if(to_days(curdate())-to_days(DATE_STAT)=2,FAVORITES,0)) B_YESTERDAY_FAVORITES ". ($is_filtered ? ','. $strSqlPeriod.'HITS'.$strT.' PERIOD_HITS, '. $strSqlPeriod.'SESSIONS'.$strT.' PERIOD_SESSIONS, '. $strSqlPeriod.'C_EVENTS'.$strT.' PERIOD_EVENTS, '. $strSqlPeriod.'FAVORITES'.$strT.' PERIOD_FAVORITES, '. $strSqlPeriod.'NEW_GUESTS'.$strT.' PERIOD_NEW_GUESTS ' : '') ." FROM ".($site_filter ? "b_stat_day_site" : "b_stat_day")." WHERE 1=1 ".$strSqlSearch." "; $result = false; $rs = $DB->Query($strSql, $bIgnoreErrors, $err_mess.__LINE__); if($rs) { if($result = $rs->Fetch()) { foreach($result as $key=>$value) $result[$key] = intval($value); if(!$site_filter) $result["ONLINE_GUESTS"] = CUserOnline::GetGuestCount(); } } return $result; }