"overview"); public function admin_overview($action, $vars) { switch($action) { default: break; } } public function admin($sub, $action, $vars) { switch($sub) { case "overview": $this->admin_overview($action, $vars); break; } } /* public function write() { $fp = fopen($this->file, "w"); fwrite($fp, "\n"); fwrite($fp, "\n"); foreach($this->configs as $name => $value) { fwrite($fp, " \n"); } fwrite($fp, "\n"); fclose($fp); } */ private function read($file) { /* $dom = new DomDocument; $dom->preserveWhiteSpace = TRUE; $dom->load($this->file); $configElems = $dom->getElementsByTagName('config'); foreach ($configElems as $config) { $this->setValue($config->getAttribute('name'), unserialize(htmlspecialchars_decode($config->getAttribute('value'), ENT_QUOTES))); } */ } public function log($loadtime) { $now = time(); $str = "". "". // Time "".xmlenc($_SERVER['REMOTE_ADDR'])."". // remote ip "".xmlenc($_SERVER['REMOTE_HOST'])."". // remote hostname "".xmlenc($loadtime)."". // Loadtime "".xmlenc($GLOBALS['page'])."". // Page // $_SERVER['REMOTE_PORT'] . // current port // $_SERVER['SCRIPT_FILENAME'] . // script name "".xmlenc($_SERVER['HTTP_USER_AGENT'])."". // User agent (browser) "".xmlenc($_SERVER['HTTP_REFERER'])."". // referer (link) "".xmlenc($_SERVER['REQUEST_URI'])."". // URI // GeoIP ?? "\n"; $file = $this->getFilename($now); if(!file_exists(dirname($file))) mkdir(dirname($file), 0777, true); $fp = fopen($file, "a"); fwrite($fp, $str); fclose($fp); } private function getFilename($timestamp) { $year = "2010"; $month = "03"; $file = $this->statsdir . "/" . $year . "/" . $month . ".xml"; return $file; } private function readSingle($timestamp) { $file = $this->getFilename($timestamp); if(file_exists($file)) $this->read($file); } private function readAll() { } public function SiteStats($statsdir, $readall = false) { $this->statsdir = $statsdir; if(file_exists($statsdir) && is_dir($statsdir)) { if($readall) { $this->readAll(); } else { $this->readSingle(time()); } } } } function sitestats_init() { global $DATA_DIR; return new SiteStats($DATA_DIR."/sitestats", true); } ?>