Преглед изворни кода

added Debug table row class for long timeDiff

Piotr Labudda пре 8 година
родитељ
комит
331e047aa6
1 измењених фајлова са 12 додато и 5 уклоњено
  1. 12 5
      SE/se-lib/Route/Debug.php

+ 12 - 5
SE/se-lib/Route/Debug.php

@@ -470,7 +470,7 @@ class Route_Debug extends RouteBase {
 			var rows = (payload && payload.body && payload.body.rows && payload.body.rows.length > 0) ? payload.body.rows : []
 			if (rows) {
 				rows.forEach(function (row) {
-					outHtml += '<tr>'
+					outHtml += ( '@class' in row ) ? '<tr class=\"' + row['@class'] + '\">' : '<tr>'
 					outHtml += cols.map(function (col) {
 						var colStyleField = '@style['+col+']'
 						if ('lp' === col) row[colStyleField] = [ row[colStyleField], 'color:#ccc;' ].join(';')
@@ -516,15 +516,20 @@ class Route_Debug extends RouteBase {
 
 	public function viewDebugRow($dbg, $lastTime) {
 		$timeDiff = (!$lastTime)
-		? ''
-		: V::milisecondsStringDiff($dbg['date'], $lastTime); // TODO: $dbg['date'] - $lastTime;
+			? ''
+			: V::milisecondsStringDiff($dbg['date'], $lastTime)
+		;
+		$uiTimeDiffClass = '';
+		if ($timeDiff > 0.5) $uiTimeDiffClass = 'danger';
+		else if ($timeDiff > 0.1) $uiTimeDiffClass = 'warning';
+		else if ($timeDiff > 0.01) $uiTimeDiffClass = 'info';
 		$trace = htmlspecialchars($dbg['trace']);
 		$trace = str_replace("\n", "\n<br>", $trace);
 		if ('#' === substr($trace, 0, 1)) $trace = "<br>{$trace}";
 		$trace = preg_replace('/<br>#(\d+\W+)([a-zA-Z0-9-_:\.\/]*)\((\d+)\):/', '<br>#${1}${2}:${3}:', $trace);
 		$trace = preg_replace('/<br>#(\d+\W+)([a-zA-Z0-9-_:\.\/]*):/', '#${1}<a href="http://localhost:9876/?project=se&file=${2}" target="_blank">${2}</a>:', $trace);
 		$trace = str_replace("\n<br>", "\n", $trace);
-		return [
+		return array_merge([
 			'date' => '<nobr>' . substr($dbg['date'], 11) . '</nobr>',
 			'diff' => '<nobr>' . $timeDiff . '</nobr>',
 			'@style[date]' => "width:1%",
@@ -561,7 +566,9 @@ class Route_Debug extends RouteBase {
 					),
 				]),
 			]),
-		];
+		],
+			($uiTimeDiffClass) ? [ '@class' => $uiTimeDiffClass ] : []
+		);
 	}
 
 	public function fetchMoreDbgLinesAjaxAction() {