<?php
if (!function_exists('xpress_debug')) {
	function xpress_debug($title = '',$ditail_show = false)
	{
		$module_dirpath = dirname(dirname(__FILE__));
		$root_path = dirname(dirname(dirname(dirname(__FILE__))));
		$_debug_file = $module_dirpath . '/wp-content/xpress_debug.log';
		$_fp = fopen($_debug_file, 'a');
		$stamp = date("Y/m/d G:i:s" , time());
		$backtraces = array_reverse(debug_backtrace());
		fwrite($_fp, "\n*********************************************************************************************************\n");
		fwrite($_fp, $title . '(' . $stamp . ")\n");
		fwrite($_fp, '$_SERVER[]' . "\n");	
		$srerver = "\t" . str_replace("\n","\n\t",sprint_r($_SERVER));
		fwrite($_fp, $srerver . "\n\n");

		fwrite($_fp, "BACK TRACE" . "\n");	
		foreach($backtraces as $backtrace){
		$trace = $backtrace['file']. "\tLINE(" . $backtrace['line'] . ")\t" . $backtrace['function']  . "()\n";
		$trace = str_replace($root_path,"",$trace);
		$trace = str_replace("\\","/",$trace);
		$trace = str_replace($root_path,"",$trace);
		$trace = "\t" . $trace;

		$trace_ditail = "\t" . str_replace("\n","\n\t\t",sprint_r($backtrace));
		if ($ditail_show)
			fwrite($_fp, $trace . $trace_ditail . "\n");
		else
			fwrite($_fp, $trace . "\n");
		}
		fclose($_fp);
	}
}

if (!function_exists('xpress_debug_message')) {
	function xpress_debug_message($message = '')
	{
		$module_dirpath = dirname(dirname(__FILE__));
		$root_path = dirname(dirname(dirname(dirname(__FILE__))));
		$_debug_file = $module_dirpath . '/wp-content/xpress_debug.log';
		$_fp = fopen($_debug_file, 'a');
		$stamp = date("Y/m/d G:i:s" , time());
		fwrite($_fp, "\n*********************************************************************************************************\n");
		fwrite($_fp, '(' . $stamp . ")\n");
		fwrite($_fp, $message . "\n");	
		fclose($_fp);
	}
}

if (!function_exists('sprint_r')) {
    function sprint_r($var) {
             ob_start();
             print_r($var);
             $ret = ob_get_contents();
             ob_end_clean();
      return $ret;
    }
}
?>