'; } else if ( file_exists("skins/$skin/css/$css/graphics/favicon.ico") ) { echo " "; } else { echo ' '; } echo output_link_if_exists(array('fonts/material-icons.woff2'), false, $param = ['global', 'preload', ' as="font" type="font/woff2" crossorigin']); //echo output_link_if_exists(array('fonts/material-icons.woff'), false, $param = ['global', 'preload', ' as="font" type="font/woff" crossorigin']); echo output_link_if_exists(array('css/base/material-icons.css'), false); echo output_link_if_exists(array('fonts/fontawesome-webfont.woff2?v=4.7.0'), false, $param = ['global', 'preload font', ' as="font" type="font/woff2" crossorigin']); echo output_script_if_exists(array( 'js/fontfaceobserver.standalone.js', )); ?> '; } // end function xhtmlHeaders( $file, $title ) // Outputs an opening body tag, and any additional content that should go at the very top, like warnings and error messages. function getBodyTopHTML() { global $view; //Needed for more flexible global governance $classHTML = ' class="'.$view.'-page'.((defined('ZM_WEB_NAVBAR_STICKY') and ZM_WEB_NAVBAR_STICKY) ? ' sticky"' : '"'); echo '
'; global $error_message; if ( $error_message ) { echo '| ' .translate('Zone'). ' | '.PHP_EOL; $result .= '' .translate('PixelDiff'). ' | '.PHP_EOL; $result .= '' .translate('AlarmPx'). ' | '.PHP_EOL; $result .= '' .translate('FilterPx'). ' | '.PHP_EOL; $result .= '' .translate('BlobPx'). ' | '.PHP_EOL; $result .= '' .translate('Blobs'). ' | '.PHP_EOL; $result .= '' .translate('BlobSizes'). ' | '.PHP_EOL; $result .= '' .translate('AlarmLimits'). ' | '.PHP_EOL; $result .= '' .translate('Score'). ' | '.PHP_EOL; $result .= '|
|---|---|---|---|---|---|---|---|---|---|
| ' .validHtmlStr($stat['ZoneName']). ' | '.PHP_EOL; $result .= '' .validHtmlStr($stat['PixelDiff']). ' | '.PHP_EOL; $result .= '' .sprintf( "%d (%d%%)", $stat['AlarmPixels'], (100*$stat['AlarmPixels']/$stat['Area']) ). ' | '.PHP_EOL; $result .= '' .sprintf( "%d (%d%%)", $stat['FilterPixels'], (100*$stat['FilterPixels']/$stat['Area']) ).' | '.PHP_EOL; $result .= '' .sprintf( "%d (%d%%)", $stat['BlobPixels'], (100*$stat['BlobPixels']/$stat['Area']) ). ' | '.PHP_EOL; $result .= '' .validHtmlStr($stat['Blobs']). ' | '.PHP_EOL; if ( $stat['Blobs'] > 1 ) { $result .= '' .sprintf( "%d-%d (%d%%-%d%%)", $stat['MinBlobSize'], $stat['MaxBlobSize'], (100*$stat['MinBlobSize']/$stat['Area']), (100*$stat['MaxBlobSize']/$stat['Area']) ). ' | '.PHP_EOL; } else { $result .= '' .sprintf( "%d (%d%%)", $stat['MinBlobSize'], 100*$stat['MinBlobSize']/$stat['Area'] ). ' | '.PHP_EOL; } $result .= '' .validHtmlStr($stat['MinX'].",".$stat['MinY']."-".$stat['MaxX'].",".$stat['MaxY']). ' | '.PHP_EOL; $result .= '' .$stat['Score']. ' | '.PHP_EOL; $result .= '
| and "colspan" is not being applied $result .= ' | ' .translate('NoStatisticsRecorded'). ' | '.PHP_EOL; $result .= '||||||||