Ejemplo n.º 1
0
    show_messages($go_result, _('Items disabled'), null);
} elseif ($_REQUEST['go'] == 'copy_to' && isset($_REQUEST['copy']) && isset($_REQUEST['group_itemid'])) {
    if (isset($_REQUEST['copy_targetid']) && $_REQUEST['copy_targetid'] > 0 && isset($_REQUEST['copy_type'])) {
        // host
        if ($_REQUEST['copy_type'] == 0) {
            $hosts_ids = $_REQUEST['copy_targetid'];
        } else {
            $hosts_ids = array();
            $group_ids = $_REQUEST['copy_targetid'];
            $db_hosts = DBselect('SELECT DISTINCT h.hostid' . ' FROM hosts h,hosts_groups hg' . ' WHERE h.hostid=hg.hostid' . ' AND ' . dbConditionInt('hg.groupid', $group_ids));
            while ($db_host = DBfetch($db_hosts)) {
                $hosts_ids[] = $db_host['hostid'];
            }
        }
        DBstart();
        $go_result = copyItemsToHosts($_REQUEST['group_itemid'], $hosts_ids);
        $go_result = DBend($go_result);
        show_messages($go_result, _('Items copied'), _('Cannot copy items'));
        $_REQUEST['go'] = 'none2';
    } else {
        show_error_message(_('No target selected.'));
    }
} elseif ($_REQUEST['go'] == 'clean_history' && isset($_REQUEST['group_itemid'])) {
    DBstart();
    $go_result = delete_history_by_itemid($_REQUEST['group_itemid']);
    DBexecute('UPDATE items SET lastvalue=null,lastclock=null,prevvalue=null WHERE ' . dbConditionInt('itemid', $_REQUEST['group_itemid']));
    foreach ($_REQUEST['group_itemid'] as $id) {
        if (!($item = get_item_by_itemid($id))) {
            continue;
        }
        $host = get_host_by_hostid($item['hostid']);
Ejemplo n.º 2
0
    show_messages($result, $messageSuccess, $messageFailed);
} elseif (hasRequest('action') && getRequest('action') == 'item.masscopyto' && hasRequest('copy') && hasRequest('group_itemid')) {
    if (hasRequest('copy_targetid') && getRequest('copy_targetid') > 0 && hasRequest('copy_type')) {
        // hosts or templates
        if (getRequest('copy_type') == COPY_TYPE_TO_HOST || getRequest('copy_type') == COPY_TYPE_TO_TEMPLATE) {
            $hosts_ids = getRequest('copy_targetid');
        } else {
            $hosts_ids = array();
            $group_ids = getRequest('copy_targetid');
            $db_hosts = DBselect('SELECT DISTINCT h.hostid' . ' FROM hosts h,hosts_groups hg' . ' WHERE h.hostid=hg.hostid' . ' AND ' . dbConditionInt('hg.groupid', $group_ids));
            while ($db_host = DBfetch($db_hosts)) {
                $hosts_ids[] = $db_host['hostid'];
            }
        }
        DBstart();
        $result = copyItemsToHosts(getRequest('group_itemid'), $hosts_ids);
        $result = DBend($result);
        if ($result) {
            uncheckTableRows(getRequest('hostid'));
            unset($_REQUEST['group_itemid']);
        }
        show_messages($result, _('Items copied'), _('Cannot copy items'));
    } else {
        show_error_message(_('No target selected.'));
    }
} elseif (hasRequest('action') && getRequest('action') === 'item.massclearhistory' && hasRequest('group_itemid') && is_array(getRequest('group_itemid'))) {
    $result = false;
    $itemIds = getRequest('group_itemid');
    $items = API::Item()->get(array('output' => array('itemid', 'key_'), 'itemids' => $itemIds, 'selectHosts' => array('name'), 'editable' => true));
    if ($items) {
        DBstart();