diff --git a/class/error.php b/class/error.php
new file mode 100644
index 0000000..5855c8c
--- /dev/null
+++ b/class/error.php
@@ -0,0 +1,90 @@
+
+
{'message'}
+
+*/
+
+$errors = array();
+set_error_handler("errorHandler");
+register_shutdown_function("printErrors");
+
+// error handler function
+function errorHandler($errno, $errstr, $errfile, $errline){
+ GLOBAL $template,$language,$errors;
+ $info = new Info();
+ switch ($errno) {
+ case E_ERROR:
+ case E_USER_ERROR:
+ $err = buildError($language["error"],$errno, $errstr, $errfile, $errline);
+ $errors[] = $info->buildMessage($err,"error");
+ dbSaveLog(getURL(),$err,date("Y-m-d H:i:s"));
+ break;
+ case E_WARNING:
+ case E_USER_WARNING:
+ $err = buildError($language["warning"],$errno, $errstr, $errfile, $errline);
+ $errors[] = $info->buildMessage($err,"warning");
+ dbSaveLog(getURL(),$err,date("Y-m-d H:i:s"));
+ break;
+ case E_NOTICE:
+ case E_USER_NOTICE:
+ //$err = buildError($language["error_unknown"],$errno, $errstr, $errfile, $errline);
+ //dbSaveLog(getURL(),$err,date("Y-m-d H:i:s"));
+ break;
+ default:
+ $err = buildError($language["error_unknown"],$errno, $errstr, $errfile, $errline);
+ $errors[] = $info->buildMessage($err,"error");
+ dbSaveLog(getURL(),$err,date("Y-m-d H:i:s"));
+ break;
+ }
+ /* Don't execute PHP internal error handler */
+ return true;
+}
+
+function buildError($errhead,$errno, $errstr, $errfile, $errline){
+ GLOBAL $config;
+ //[$errno]
+ if($config["debug"])
+ $error = "$errhead: $errfile($errline)
$errstr";
+ else
+ $error = "$errhead: $errstr";
+ return $error;
+}
+
+function getErrors(){
+ GLOBAL $errors;
+ if(empty($errors)) return "";
+ $temp = "";
+ foreach($errors as $one){
+ $temp .= $one;
+ }
+ $errors = array();
+ return $temp;
+}
+
+function printErrors(){
+ echo getErrors();
+}
+?>
diff --git a/class/info.php b/class/info.php
new file mode 100644
index 0000000..a903a87
--- /dev/null
+++ b/class/info.php
@@ -0,0 +1,22 @@
+ array("#F0FF69","#FFFB3E"),
+ "error" => array("#FFDDCC","#FF0000"),
+ "info" => array("#9BFB66","#039C00")
+ );
+
+ function buildMessage($msg, $t="warning"){
+ GLOBAL $template;
+ $temp = new Template($template["message"]);
+ $temp->replace_tags(array(
+ "message_color" => $this->type[$t][0],
+ "message_color_border" => $this->type[$t][1],
+ "message" => $msg
+ ));
+ return $temp->getOutput();
+ }
+}
+?>
\ No newline at end of file
diff --git a/class/template.php b/class/template.php
new file mode 100644
index 0000000..307ad03
--- /dev/null
+++ b/class/template.php
@@ -0,0 +1,35 @@
+page = $template;
+ }
+
+ function replace_tags($tags = array()) {
+ if (sizeof($tags) > 0)
+ foreach ($tags as $tag => $data) {
+ //$data = (file_exists($data)) ? $this->parse($data) : $data;
+ $this->page = str_ireplace("{'" . $tag . "'}", $data, $this->page);//eregi_replace
+ }
+ else
+ die("No tags designated for replacement.");
+ }
+
+ function output() {
+ echo $this->page;
+ }
+
+ function getOutput() {
+ return $this->page;
+ }
+
+ function parse($file) {
+ ob_start();
+ include($file);
+ $buffer = ob_get_contents();
+ ob_end_clean();
+ return $buffer;
+ }
+}
+?>
\ No newline at end of file