diff options
| author | artem <artem@97f52cf1-0a1b-0410-bd0e-c28be96e8082> | 2008-06-04 10:09:06 +0000 |
|---|---|---|
| committer | artem <artem@97f52cf1-0a1b-0410-bd0e-c28be96e8082> | 2008-06-04 10:09:06 +0000 |
| commit | 829274e52cfd773194248d78353592f430744207 (patch) | |
| tree | 26d9457a99c3fbcbd1d61bd0f22017859ce17542 /frontends/php/include | |
| parent | 1f9bbf71b31fee62ff72fbc544c2ac446e421ff5 (diff) | |
| download | zabbix-829274e52cfd773194248d78353592f430744207.tar.gz zabbix-829274e52cfd773194248d78353592f430744207.tar.xz zabbix-829274e52cfd773194248d78353592f430744207.zip | |
- [DEV-171] improvements to event details (Artem)
git-svn-id: svn://svn.zabbix.com/trunk@5750 97f52cf1-0a1b-0410-bd0e-c28be96e8082
Diffstat (limited to 'frontends/php/include')
| -rw-r--r-- | frontends/php/include/actions.inc.php | 90 | ||||
| -rw-r--r-- | frontends/php/include/locales/en_gb.inc.php | 3 |
2 files changed, 86 insertions, 7 deletions
diff --git a/frontends/php/include/actions.inc.php b/frontends/php/include/actions.inc.php index 3df9c8d3..091b3bc6 100644 --- a/frontends/php/include/actions.inc.php +++ b/frontends/php/include/actions.inc.php @@ -963,7 +963,7 @@ function get_history_of_actions($start,$num,$sql_cond=''){ } // Author: Aly -function get_actions_for_event($eventid){ +function get_action_msgs_for_event($eventid){ $available_triggers = get_accessible_triggers(PERM_READ_ONLY, PERM_RES_IDS_ARRAY); $table = new CTableInfo(S_NO_ACTIONS_FOUND); @@ -978,19 +978,23 @@ function get_actions_for_event($eventid){ S_ERROR )); - - $result=DBselect('SELECT DISTINCT a.alertid,a.clock,mt.description,a.sendto,a.subject,a.message,a.status,a.retries,a.error '. + $sql = 'SELECT DISTINCT a.alertid,a.clock,a.esc_step, mt.description,a.sendto,a.subject,a.message,a.status,a.retries,a.error '. ' FROM events e,alerts a'. - ' left join media_type mt on mt.mediatypeid=a.mediatypeid'. - ' WHERE a.eventid='.$eventid.' and alerttype in ('.ALERT_TYPE_MESSAGE.')'. + ' left join media_type mt on mt.mediatypeid=a.mediatypeid'. + ' WHERE a.eventid='.$eventid. + ' AND a.alerttype='.ALERT_TYPE_MESSAGE. ' AND e.eventid = a.eventid'. ' AND '.DBcondition('e.objectid',$available_triggers). ' AND '.DBin_node('a.alertid'). - order_by('a.clock,a.alertid,mt.description,a.sendto,a.status,a.retries')); + order_by('a.clock,a.alertid,mt.description,a.sendto,a.status,a.retries'); + $result=DBselect($sql); while($row=DBfetch($result)){ $time=date("Y.M.d H:i:s",$row["clock"]); - + if($row['esc_step'] > 0){ + $time = array(bold(S_STEP.': '),br(),$row["esc_step"],br(),br(),bold(S_TIME.': '),br(),$time); + } + if($row["status"] == ALERT_STATUS_SENT){ $status=new CSpan(S_SENT,"green"); $retries=new CSpan(SPACE,"green"); @@ -1034,6 +1038,76 @@ return $table; } // Author: Aly +function get_action_cmds_for_event($eventid){ + $available_triggers = get_accessible_triggers(PERM_READ_ONLY, PERM_RES_IDS_ARRAY); + + $table = new CTableInfo(S_NO_ACTIONS_FOUND); + $table->SetHeader(array( + is_show_subnodes() ? make_sorting_link(S_NODES,'a.alertid') : null, + make_sorting_link(S_TIME,'a.clock'), + make_sorting_link(S_STATUS,'a.status'), + make_sorting_link(S_RETRIES_LEFT,'a.retries'), + S_COMMAND, + S_ERROR + )); + + $sql = 'SELECT DISTINCT a.alertid,a.clock,a.esc_step,a.sendto,a.subject,a.message,a.status,a.retries,a.error '. + ' FROM events e,alerts a'. + ' WHERE a.eventid='.$eventid. + ' AND a.alerttype='.ALERT_TYPE_COMMAND. + ' AND e.eventid = a.eventid'. + ' AND '.DBcondition('e.objectid',$available_triggers). + ' AND '.DBin_node('a.alertid'). + order_by('a.clock,a.alertid,a.sendto,a.status,a.retries'); + $result=DBselect($sql); + + while($row=DBfetch($result)){ + $time=date("Y.M.d H:i:s",$row["clock"]); + if($row['esc_step'] > 0){ + $time = array(bold(S_STEP.': '),br(),$row["esc_step"],br(),br(),bold(S_TIME.': '),br(),$time); + } + + if($row["status"] == ALERT_STATUS_SENT){ + $status=new CSpan(S_SENT,"green"); + $retries=new CSpan(SPACE,"green"); + } + else if($row["status"] == ALERT_STATUS_NOT_SENT){ + $status=new CSpan(S_IN_PROGRESS,"orange"); + $retries=new CSpan(ALERT_MAX_RETRIES - $row["retries"],"orange"); + } + else{ + $status=new CSpan(S_NOT_SENT,"red"); + $retries=new CSpan(0,"red"); + } + $sendto=$row["sendto"]; + + $message = array(bold(S_COMMAND.':')); + $msg = explode("\n",$row['message']); + foreach($msg as $m) + { + array_push($message, BR(), $m); + } + + if(empty($row["error"])){ + $error=new CSpan(SPACE,"off"); + } + else{ + $error=new CSpan($row["error"],"on"); + } + + $table->AddRow(array( + get_node_name_by_elid($row['alertid']), + new CCol($time, 'top'), + new CCol($status, 'top'), + new CCol($retries, 'top'), + new CCol($message, 'wraptext top'), + new CCol($error, 'wraptext top'))); + } + +return $table; +} + +// Author: Aly function get_actions_hint_by_eventid($eventid,$status=NULL){ $available_triggers = get_accessible_triggers(PERM_READ_ONLY, PERM_RES_IDS_ARRAY); @@ -1073,6 +1147,8 @@ function get_actions_hint_by_eventid($eventid,$status=NULL){ $retries=new CSpan(0,"red"); } + $row['description'] = empty($row['description'])?'-':$row['description']; + $tab_hint->AddRow(array( get_node_name_by_elid($row['alertid']), $row['description'], diff --git a/frontends/php/include/locales/en_gb.inc.php b/frontends/php/include/locales/en_gb.inc.php index 48434392..df735d25 100644 --- a/frontends/php/include/locales/en_gb.inc.php +++ b/frontends/php/include/locales/en_gb.inc.php @@ -277,6 +277,8 @@ // actions.php 'S_ACTIONS'=> 'Actions', 'S_ACTIONS_BIG'=> 'ACTIONS', + 'S_MESSAGE_ACTIONS'=> 'Message actions', + 'S_COMMAND_ACTIONS'=> 'Command actions', 'S_ACTION_ADDED'=> 'Action added', 'S_CANNOT_ADD_ACTION'=> 'Cannot add action', 'S_ACTION_UPDATED'=> 'Action updated', @@ -534,6 +536,7 @@ 'S_MINUS_OTHER_MINUS'=> '- other -', 'S_DESCRIPTION_LARGE'=> 'DESCRIPTION', 'S_DESCRIPTION_SMALL'=> 'Description', + 'S_NO_DESCRIPTION'=> 'No description', 'S_GRAPH'=> 'Graph', 'S_TREND'=> 'Trend', 'S_COMPARE'=> 'Compare', |
