/** * @see interface_admin_systemtast::executeTask() * @return string */ public function executeTask() { if (!class_module_system_module::getModuleByName("stats")->rightEdit()) { return $this->getLang("commons_error_permissions"); } $objBrowscap = new class_browscap(); $objBrowscap->updateBrowscap(); return $this->objToolkit->getTextRow($this->getLang("browscapupdate_end")); }
/** * Returns a array of top browsers * * @return mixed */ private function getTopBrowser() { $arrReturn = array(); //load Data $strQuery = "SELECT stats_browser, count(*) as anzahl\n\t\t\t\t\t\tFROM " . _dbprefix_ . "stats_data\n\t\t\t\t\t\tWHERE stats_date > ?\n\t\t\t\t\t\t\tAND stats_date <= ?\n\t\t\t\t\t\tGROUP BY stats_browser"; $arrBrowser = $this->objDB->getPArray($strQuery, array($this->intDateStart, $this->intDateEnd)); $objBrowscap = new class_browscap(); //Search the best matching pattern foreach ($arrBrowser as $arrRow) { $strInfo = $objBrowscap->getBrowserForUseragent($arrRow["stats_browser"]); if (!isset($arrReturn[$strInfo])) { $arrReturn[$strInfo] = $arrRow["anzahl"]; } else { $arrReturn[$strInfo] += $arrRow["anzahl"]; } } arsort($arrReturn); return $arrReturn; }