$item['applications_list'] = '';
            }
        }
        unset($item);
    }
    $data['flicker'] = getItemFilterForm($data['items']);
    // remove subfiltered items
    if (!empty($data['items'])) {
        foreach ($data['items'] as $number => $item) {
            foreach ($item['subfilters'] as $subfilter => $value) {
                if (!$value) {
                    unset($data['items'][$number]);
                    break;
                }
            }
        }
    }
    order_result($data['items'], $data['sortfield'], getPageSortOrder());
    $data['paging'] = getPagingLine($data['items']);
    $itemTriggerIds = array();
    foreach ($data['items'] as $item) {
        $itemTriggerIds = array_merge($itemTriggerIds, zbx_objectValues($item['triggers'], 'triggerid'));
    }
    $data['itemTriggers'] = API::Trigger()->get(array('triggerids' => $itemTriggerIds, 'output' => API_OUTPUT_EXTEND, 'selectHosts' => array('hostid', 'name', 'host'), 'selectFunctions' => API_OUTPUT_EXTEND, 'selectItems' => API_OUTPUT_EXTEND, 'preservekeys' => true));
    $data['triggerRealHosts'] = getParentHostsByTriggers($data['itemTriggers']);
    // render view
    $itemView = new CView('configuration.item.list', $data);
    $itemView->render();
    $itemView->show();
}
require_once dirname(__FILE__) . '/include/page_footer.php';
Example #2
0
         $options['hostids'] = $pageFilter->hostid;
     } else {
         if ($pageFilter->groupid > 0) {
             $options['groupids'] = $pageFilter->groupid;
         }
     }
     $triggers = CTrigger::get($options);
 }
 // sorting && paging
 order_result($triggers, $sortfield, $sortorder);
 $paging = getPagingLine($triggers);
 //---
 $options = array('triggerids' => zbx_objectValues($triggers, 'triggerid'), 'output' => API_OUTPUT_EXTEND, 'select_hosts' => API_OUTPUT_EXTEND, 'select_items' => API_OUTPUT_EXTEND, 'select_functions' => API_OUTPUT_EXTEND, 'select_dependencies' => API_OUTPUT_EXTEND);
 $triggers = CTrigger::get($options);
 order_result($triggers, $sortfield, $sortorder);
 $realHosts = getParentHostsByTriggers($triggers);
 foreach ($triggers as $tnum => $trigger) {
     $triggerid = $trigger['triggerid'];
     $trigger['hosts'] = zbx_toHash($trigger['hosts'], 'hostid');
     $trigger['items'] = zbx_toHash($trigger['items'], 'itemid');
     $trigger['functions'] = zbx_toHash($trigger['functions'], 'functionid');
     $description = array();
     if ($trigger['templateid'] > 0) {
         if (!isset($realHosts[$triggerid])) {
             $description[] = new CSpan('HOST', 'unknown');
             $description[] = ':';
         } else {
             $real_hosts = $realHosts[$triggerid];
             $real_host = reset($real_hosts);
             $description[] = new CLink($real_host['host'], 'triggers.php?&hostid=' . $real_host['hostid'], 'unknown');
             $description[] = ':';
    $triggersView->render();
    $triggersView->show();
} elseif (isset($_REQUEST['form'])) {
    $triggersView = new CView('configuration.triggers.edit', getTriggerFormData($exprAction));
    $triggersView->render();
    $triggersView->show();
} else {
    $sortField = getRequest('sort', CProfile::get('web.' . $page['file'] . '.sort', 'description'));
    $sortOrder = getRequest('sortorder', CProfile::get('web.' . $page['file'] . '.sortorder', ZBX_SORT_UP));
    CProfile::update('web.' . $page['file'] . '.sort', $sortField, PROFILE_TYPE_STR);
    CProfile::update('web.' . $page['file'] . '.sortorder', $sortOrder, PROFILE_TYPE_STR);
    $data = array('parent_discoveryid' => getRequest('parent_discoveryid'), 'showInfoColumn' => false, 'discovery_rule' => $discovery_rule, 'hostid' => getRequest('hostid'), 'showdisabled' => getRequest('showdisabled', 1), 'triggers' => array(), 'sort' => $sortField, 'sortorder' => $sortOrder);
    CProfile::update('web.triggers.showdisabled', $data['showdisabled'], PROFILE_TYPE_INT);
    // get triggers
    $options = array('editable' => true, 'output' => array('triggerid'), 'discoveryids' => $data['parent_discoveryid'], 'sortfield' => $sortField, 'limit' => $config['search_limit'] + 1);
    if (empty($data['showdisabled'])) {
        $options['filter']['status'] = TRIGGER_STATUS_ENABLED;
    }
    $data['triggers'] = API::TriggerPrototype()->get($options);
    // paging
    $data['paging'] = getPagingLine($data['triggers']);
    $data['triggers'] = API::TriggerPrototype()->get(array('triggerids' => zbx_objectValues($data['triggers'], 'triggerid'), 'output' => API_OUTPUT_EXTEND, 'selectHosts' => API_OUTPUT_EXTEND, 'selectItems' => array('itemid', 'hostid', 'key_', 'type', 'flags', 'status'), 'selectFunctions' => API_OUTPUT_EXTEND));
    order_result($data['triggers'], $sortField, $sortOrder);
    // get real hosts
    $data['realHosts'] = getParentHostsByTriggers($data['triggers']);
    // render view
    $triggersView = new CView('configuration.triggers.list', $data);
    $triggersView->render();
    $triggersView->show();
}
require_once dirname(__FILE__) . '/include/page_footer.php';
Example #4
0
         if (!$value) {
             unset($items[$num]);
         }
     }
 }
 // sorting && paging
 // !!! should go after we subfiltered out items !!!
 order_result($items, $sortfield, $sortorder);
 $paging = getPagingLine($items);
 //---------
 $itemTriggerIds = array();
 foreach ($items as $num => $item) {
     $itemTriggerIds = array_merge($itemTriggerIds, zbx_objectValues($item['triggers'], 'triggerid'));
 }
 $itemTriggers = CTrigger::get(array('triggerids' => $itemTriggerIds, 'expandDescription' => true, 'output' => API_OUTPUT_EXTEND, 'select_hosts' => array('hostid', 'host', 'status'), 'select_functions' => API_OUTPUT_EXTEND, 'select_items' => API_OUTPUT_EXTEND, 'preservekeys' => true));
 $trigRealHosts = getParentHostsByTriggers($itemTriggers);
 foreach ($items as $inum => $item) {
     if ($show_host) {
         $host = array_pop($item['hosts']);
         $host = $host['host'];
     } else {
         $host = null;
     }
     $description = array();
     if ($item['templateid']) {
         $template_host = get_realhost_by_itemid($item['templateid']);
         $description[] = new CLink($template_host['host'], '?hostid=' . $template_host['hostid'], 'unknown');
         $description[] = ':';
     }
     $item['description_expanded'] = item_description($item);
     $description[] = new CLink($item['description_expanded'], '?form=update&itemid=' . $item['itemid']);