$from = CMbDT::date("-1 YEAR", $to); break; case "four-years": $from = CMbDT::date("-4 YEARS", $to); break; case "twenty-years": $from = CMbDT::date("-20 YEARS", $to); break; default: return; } $graphs = array(); switch ($groupmod) { case 0: case 1: $access_logs = CDataSourceLog::loadAggregation($from, $to, $groupmod, $module, $human_bot); $archive_logs = CDataSourceLogArchive::loadAggregation($from, $to, $groupmod, $module, $human_bot); $logs = array_merge($access_logs, $archive_logs); break; case 2: $logs = array(new CDataSourceLog()); break; } $series_by_module = array(); $graphs_by_module = array(); foreach ($logs as $log) { switch ($groupmod) { case 0: $_graph = call_user_func("{$log->_class}::graphDataSourceLog", $log->_module, $log->_action, $from, $to, $interval, $human_bot); if (!isset($_graph["series"])) { continue;