log_levels); $isValid = in_array($level, $log_level_array); $isAppropriate = ($this->indexOf($level, $log_level_array) <= $this->indexOf($this->mb_log_level, $log_level_array)); return $isValid && $isAppropriate; } function mb_log($n, $level){ if (!isset($this->mb_log_level)) { $n = "class_mb_exception: please set LOG_LEVEL in mapbender.conf" . $n; } if ($this->isValidLevel($level)) { if(is_dir($this->dir)){ $logfile = $this->dir . $this->filename_prefix . date("Y_m_d") . ".log"; if($h = fopen($logfile,"a")){ $content = date("Y.m.d, H:i:s") . "," . $n .chr(13).chr(10); if(!fwrite($h,$content)){ $this->result = false; $this->message = "Unable to write " . $logfile; return false; } fclose($h); $this->result = true; $this->message = "Successful."; return true; } else { $this->result = false; $this->message = "Unable to open or generate " . $logfile; return false; } } else { $this->result = false; $this->message = "Directory " . $this->dir . " is not valid."; return false; } } else { $this->result = false; $this->message = "Log level '" . $level . "' is not valid or logging is disabled in mapbender.conf."; return false; } } } class mb_notice extends mb_log { var $level = "notice"; function mb_notice($message) { return $this->mb_log("Notice: " . $message, $this->level); } } class mb_warning extends mb_log { var $level = "warning"; function mb_warning($message) { return $this->mb_log("Warning: " . $message, $this->level); } } class mb_exception extends mb_log { var $level = "error"; function mb_exception($message) { return $this->mb_log("ERROR: " . $message, $this->level); } } ?>