{$mod_strings['LBL_SEARCH']}  {$mod_strings['LBL_REG_EXP']}
{$mod_strings['LBL_IGNORE_SELF']} EOQ; define('PROCESS_ID', 1); define('LOG_LEVEL', 2); define('LOG_NAME', 3); define('LOG_DATA', 4); $logFile = $sugar_config['log_dir'].'/'.$sugar_config['log_file']; if (!file_exists($logFile)) { die('No Log File'); } $lastMatch = false; $doaction =(!empty($_REQUEST['doaction']))?$_REQUEST['doaction']:''; switch($doaction){ case 'mark': echo "

{$mod_strings['LBL_MARKING_WHERE_START_LOGGING']}


"; $_SESSION['log_file_size'] = filesize($logFile); break; case 'next': if(!empty($_SESSION['last_log_file_size'])){ $_SESSION['log_file_size'] = $_SESSION['last_log_file_size']; }else{ $_SESSION['log_file_size'] = 0; } $_REQUEST['display'] = true; break; case 'all': $_SESSION['log_file_size'] = 0; $_REQUEST['display'] = true; break; } if (!empty ($_REQUEST['display'])) { echo "

{$mod_strings['LBL_DISPLAYING_LOG']}

"; $process_id = getmypid(); echo $mod_strings['LBL_YOUR_PROCESS_ID'].' [' . $process_id. ']'; echo '
'.$mod_strings['LBL_YOUR_IP_ADDRESS'].' ' . $_SERVER['REMOTE_ADDR']; if($ignore_self){ echo $mod_strings['LBL_IT_WILL_BE_IGNORED']; } if (empty ($_SESSION['log_file_size'])) { $_SESSION['log_file_size'] = 0; } $cur_size = filesize($logFile); $_SESSION['last_log_file_size'] = $cur_size; $pos = 0; if ($cur_size >= $_SESSION['log_file_size']) { $pos = $_SESSION['log_file_size'] - $cur_size; } if($_SESSION['log_file_size'] == $cur_size){ echo $mod_strings['LBL_LOG_NOT_CHANGED'].'
'; }else{ $fp = sugar_fopen($logFile, 'r'); fseek($fp, $pos , SEEK_END); echo '
';
		while($line = fgets($fp)){

            $line = filter_var($line, FILTER_SANITIZE_SPECIAL_CHARS);
			//preg_match('/[^\]]*\[([0-9]*)\] ([a-zA-Z]+) ([a-zA-Z0-9\.]+) - (.*)/', $line, $result);
			preg_match('/[^\]]*\[([0-9]*)\]/', $line, $result);
			ob_flush();
			flush();
			if(empty($result) && $lastMatch){
				echo $line;
			}else{
				$lastMatch = false;
				if(empty($result) || ($ignore_self &&$result[LOG_NAME] == $_SERVER['REMOTE_ADDR'] )){

				}else{
					if(empty($filter) || (!$reg_ex && substr_count($line, $filter) > 0) || ($reg_ex && preg_match($filter, $line))){
						$lastMatch = true;
						echo $line;
					}
				}
			}
		}
		echo '
'; fclose($fp); } } ?>