1 and canEdit( 'System' ) ? 1 : 0; if ( $running == null ) $running = daemonCheck(); $eventCounts = array( array( 'title' => translate('Events'), 'filter' => array( 'Query' => array ( 'terms' => array() ) ), 'total' => 0, ), array( 'title' => translate('Hour'), 'filter' => array( 'Query' => array( 'terms' => array( array( 'attr' => 'DateTime', 'op' => '>=', 'val' => '-1 hour' ), ) ) ), 'total' => 0, ), array( 'title' => translate('Day'), 'filter' => array( 'Query' => array( 'terms' => array( array( 'attr' => 'DateTime', 'op' => '>=', 'val' => '-1 day' ), ) ) ), 'total' => 0, ), array( 'title' => translate('Week'), 'filter' => array( 'Query' => array( 'terms' => array( array( 'attr' => 'DateTime', 'op' => '>=', 'val' => '-7 day' ), ) ) ), 'total' => 0, ), array( 'title' => translate('Month'), 'filter' => array( 'Query' => array( 'terms' => array( array( 'attr' => 'DateTime', 'op' => '>=', 'val' => '-1 month' ), ) ) ), 'total' => 0, ), array( 'title' => translate('Archived'), 'filter' => array( 'Query' => array( 'terms' => array( array( 'attr' => 'Archived', 'op' => '=', 'val' => '1' ), ) ) ), 'total' => 0, ), ); $navbar = getNavBarHTML(); noCacheHeaders(); $eventsView = ZM_WEB_EVENTS_VIEW; $eventsWindow = 'zm'.ucfirst(ZM_WEB_EVENTS_VIEW); $left_columns = 3; if ( count($servers) ) $left_columns += 1; if ( ZM_WEB_ID_ON_CONSOLE ) $left_columns += 1; if ( $show_storage_areas ) $left_columns += 1; xhtmlHeaders( __FILE__, translate('Console') ); ?>
$parent_group_ids) ); if ( ! count( $Groups ) ) break; $parent_group_ids = array(); $selected_group_id = 0; if ( isset($_REQUEST['group'.$depth]) and $_REQUEST['group'.$depth] > 0 ) { $selected_group_id = $group_id = $_REQUEST['group'.$depth]; } else if ( isset($_COOKIE['zmGroup'.$depth] ) and $_COOKIE['zmGroup'.$depth] > 0 ) { $selected_group_id = $group_id = $_COOKIE['zmGroup'.$depth]; } foreach ( $Groups as $Group ) { if ( ! isset( $groups[$depth] ) ) { $groups[$depth] = array(0=>'All'); } $groups[$depth][$Group->Id()] = $Group->Name(); if ( $selected_group_id and ( $selected_group_id == $Group->Id() ) ) $parent_group_ids[] = $Group->Id(); } echo htmlSelect( 'group'.$depth, $groups[$depth], $selected_group_id, "changeGroup(this,$depth);" ); if ( ! count($parent_group_ids) ) break; $depth += 1; } $groupSql = ''; if ( $group_id ) { if ( $group = dbFetchOne( 'SELECT MonitorIds FROM Groups WHERE Id = ?', NULL, array($group_id) ) ) { $groupIds = array(); if ( $group['MonitorIds'] ) $groupIds = explode( ',', $group['MonitorIds'] ); foreach ( dbFetchAll( 'SELECT MonitorIds FROM Groups WHERE ParentId = ?', NULL, array($group_id) ) as $group ) if ( $group['MonitorIds'] ) $groupIds += explode( ',', $group['MonitorIds'] ); } $groupSql = " WHERE find_in_set( Id, '".implode( ',', $groupIds )."' )"; } $maxWidth = 0; $maxHeight = 0; # Used to determine if the Cycle button should be made available $monitors = dbFetchAll( "SELECT * FROM Monitors$groupSql ORDER BY Sequence ASC" ); $displayMonitors = array(); for ( $i = 0; $i < count($monitors); $i++ ) { if ( !visibleMonitor( $monitors[$i]['Id'] ) ) { continue; } if ( $monitors[$i]['Function'] != 'None' ) { $scaleWidth = reScale( $monitors[$i]['Width'], $monitors[$i]['DefaultScale'], ZM_WEB_DEFAULT_SCALE ); $scaleHeight = reScale( $monitors[$i]['Height'], $monitors[$i]['DefaultScale'], ZM_WEB_DEFAULT_SCALE ); if ( $maxWidth < $scaleWidth ) $maxWidth = $scaleWidth; if ( $maxHeight < $scaleHeight ) $maxHeight = $scaleHeight; } $displayMonitors[] = $monitors[$i]; } $cycleWidth = $maxWidth; $cycleHeight = $maxHeight; $zoneCount = 0; for( $i = 0; $i < count($displayMonitors); $i += 1 ) { $monitor = $displayMonitors[$i]; $monitor['zmc'] = zmcStatus( $monitor ); $monitor['zma'] = zmaStatus( $monitor ); $monitor['ZoneCount'] = dbFetchOne( 'select count(Id) as ZoneCount from Zones where MonitorId = ?', 'ZoneCount', array($monitor['Id']) ); $counts = array(); for ( $j = 0; $j < count($eventCounts); $j += 1 ) { $filter = addFilterTerm( $eventCounts[$j]['filter'], count($eventCounts[$j]['filter']['Query']['terms']), array( 'cnj' => 'and', 'attr' => 'MonitorId', 'op' => '=', 'val' => $monitor['Id'] ) ); parseFilter( $filter ); $counts[] = 'count(if(1'.$filter['sql'].",1,NULL)) as EventCount$j"; $monitor['eventCounts'][$j]['filter'] = $filter; } $sql = 'SELECt '.join($counts,', ').' from Events as E where MonitorId = ?'; $counts = dbFetchOne( $sql, NULL, array($monitor['Id']) ); if ( $counts ) $displayMonitors[$i] = $monitor = array_merge( $monitor, $counts ); for ( $j = 0; $j < count($eventCounts); $j += 1 ) { $eventCounts[$j]['total'] += $monitor['EventCount'.$j]; } $zoneCount += $monitor['ZoneCount']; } ?>
'. makePopupLink( '?view=monitor&mid='.$monitor['Id'], 'zmMonitor'.$monitor['Id'], 'monitor', ''.$source.'', canEdit( 'Monitors' ) ).''; if ( $show_storage_areas ) { ?>
'.translate('Fn'.$monitor['Function']).( empty($monitor['Enabled']) ? ', disabled' : '' ) .'', canEdit( 'Monitors' ) ) ?> Name(); ?> Name(); ?> disabled="disabled"/>