예제 #1
0
파일: scripts.php 프로젝트: phedders/zabbix
     if ($scripts && $scripts['cnt'] > 0) {
         error(S_SCRIPT . SPACE . '[' . htmlspecialchars($_REQUEST['name']) . ']' . SPACE . S_ALREADY_EXISTS_SMALL);
         show_messages(null, S_ERROR, S_CANNOT_ADD_SCRIPT);
     } else {
         if (isset($_REQUEST['scriptid'])) {
             $result = update_script($_REQUEST['scriptid'], $_REQUEST['name'], $_REQUEST['command'], $_REQUEST['usrgrpid'], $_REQUEST['groupid'], $_REQUEST['access']);
             show_messages($result, S_SCRIPT_UPDATED, S_CANNOT_UPDATE_SCRIPT);
             $scriptid = $_REQUEST['scriptid'];
             $audit_acrion = AUDIT_ACTION_UPDATE;
         } else {
             $result = add_script($_REQUEST['name'], $_REQUEST['command'], $_REQUEST['usrgrpid'], $_REQUEST['groupid'], $_REQUEST['access']);
             show_messages($result, S_SCRIPT_ADDED, S_CANNOT_ADD_SCRIPT);
             $scriptid = $result;
             $audit_acrion = AUDIT_ACTION_ADD;
         }
         add_audit_if($result, $audit_acrion, AUDIT_RESOURCE_SCRIPT, ' Name [' . $_REQUEST['name'] . '] id [' . $scriptid . ']');
         if ($result) {
             unset($_REQUEST['action']);
             unset($_REQUEST['form']);
             unset($_REQUEST['scriptid']);
         }
     }
 } else {
     if (isset($_REQUEST['delete'])) {
         $scriptid = get_request('scriptid', 0);
         $result &= delete_script($scriptid);
         if ($result) {
             add_audit(AUDIT_ACTION_DELETE, AUDIT_RESOURCE_SCRIPT, S_SCRIPT . ' [' . $scriptid . ']');
         }
         show_messages($result, S_SCRIPT_DELETED, S_CANNOT_DELETE_SCRIPT);
         if ($result) {
예제 #2
0
파일: sysmaps.php 프로젝트: phedders/zabbix
        }
        DBstart();
        add_sysmap($_REQUEST["name"], $_REQUEST["width"], $_REQUEST["height"], $_REQUEST["backgroundid"], $_REQUEST["label_type"], $_REQUEST["label_location"]);
        $result = DBend();
        add_audit_if($result, AUDIT_ACTION_ADD, AUDIT_RESOURCE_MAP, 'Name [' . $_REQUEST['name'] . ']');
        show_messages($result, "Network map added", "Cannot add network map");
    }
    if ($result) {
        unset($_REQUEST["form"]);
    }
} else {
    if (isset($_REQUEST["delete"]) && isset($_REQUEST["sysmapid"])) {
        DBstart();
        delete_sysmap($_REQUEST["sysmapid"]);
        $result = DBend();
        add_audit_if($result, AUDIT_ACTION_DELETE, AUDIT_RESOURCE_MAP, 'Name [' . $sysmap['name'] . ']');
        show_messages($result, S_MAP_DELETED, S_CANNOT_DELETE_MAP);
        if ($result) {
            unset($_REQUEST["form"]);
        }
    } else {
        if ($_REQUEST['go'] == 'delete') {
            $result = true;
            $maps = get_request('maps', array());
            DBstart();
            foreach ($maps as $mapid) {
                $result &= delete_sysmap($mapid);
                if (!$result) {
                    break;
                }
            }
예제 #3
0
        // TODO check permission by new value.
        $map = array('sysmapid' => $_REQUEST['sysmapid'], 'name' => $_REQUEST['name'], 'width' => $_REQUEST['width'], 'height' => $_REQUEST['height'], 'backgroundid' => $_REQUEST['backgroundid'], 'highlight' => get_request('highlight', 0), 'markelements' => get_request('markelements', 0), 'expandproblem' => get_request('expandproblem', 0), 'label_type' => $_REQUEST['label_type'], 'label_location' => $_REQUEST['label_location'], 'show_unack' => get_request('show_unack', 0));
        DBstart();
        $result = CMap::update($map);
        $result = DBend($result);
        add_audit_if($result, AUDIT_ACTION_UPDATE, AUDIT_RESOURCE_MAP, 'Name [' . $_REQUEST['name'] . ']');
        show_messages($result, S_MAP_UPDATED, S_CANNOT_UPDATE_MAP);
    } else {
        if (!count(get_accessible_nodes_by_user($USER_DETAILS, PERM_READ_WRITE, PERM_RES_IDS_ARRAY))) {
            access_deny();
        }
        $map = array('name' => $_REQUEST['name'], 'width' => $_REQUEST['width'], 'height' => $_REQUEST['height'], 'backgroundid' => $_REQUEST['backgroundid'], 'highlight' => get_request('highlight', 0), 'markelements' => get_request('markelements', 0), 'expandproblem' => get_request('expandproblem', 0), 'label_type' => $_REQUEST['label_type'], 'label_location' => $_REQUEST['label_location'], 'show_unack' => get_request('show_unack', 0));
        DBstart();
        $result = CMap::create($map);
        $result = DBend($result);
        add_audit_if($result, AUDIT_ACTION_ADD, AUDIT_RESOURCE_MAP, 'Name [' . $_REQUEST['name'] . ']');
        show_messages($result, S_MAP_ADDED, S_CANNOT_ADD_MAP);
    }
    if ($result) {
        unset($_REQUEST['form']);
    }
} else {
    if (isset($_REQUEST['delete']) && isset($_REQUEST['sysmapid']) || $_REQUEST['go'] == 'delete') {
        $sysmapids = get_request('maps', array());
        if (isset($_REQUEST['sysmapid'])) {
            $sysmapids[] = $_REQUEST['sysmapid'];
        }
        $maps = CMap::get(array('sysmapids' => $sysmapids, 'output' => API_OUTPUT_EXTEND, 'editable => 1'));
        $go_result = CMap::delete($sysmapids);
        show_messages($go_result, S_MAP_DELETED, S_CANNOT_DELETE_MAP);
        if ($go_result) {
예제 #4
0
                            } else {
                                if (isset($_REQUEST['move_down']) && isset($_REQUEST['steps'][$_REQUEST['move_down']])) {
                                    $new_id = $_REQUEST['move_down'] + 1;
                                    if (isset($_REQUEST['steps'][$new_id])) {
                                        $tmp = $_REQUEST['steps'][$new_id];
                                        $_REQUEST['steps'][$new_id] = $_REQUEST['steps'][$_REQUEST['move_down']];
                                        $_REQUEST['steps'][$_REQUEST['move_down']] = $tmp;
                                    }
                                } else {
                                    if (isset($_REQUEST['delete']) && isset($_REQUEST['slideshowid'])) {
                                        if ($slideshow = get_slideshow_by_slideshowid($_REQUEST['slideshowid'])) {
                                            DBstart();
                                            delete_slideshow($_REQUEST['slideshowid']);
                                            $result = DBend();
                                            show_messages($result, S_SLIDESHOW_DELETED, S_CANNOT_DELETE_SLIDESHOW);
                                            add_audit_if($result, AUDIT_ACTION_DELETE, AUDIT_RESOURCE_SLIDESHOW, " Name [" . $slideshow['name'] . "] ");
                                        }
                                        unset($_REQUEST['slideshowid']);
                                        unset($_REQUEST["form"]);
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
$form = new CForm();
$form->SetMethod('get');
예제 #5
0
                $serviceid = $service["serviceid"];
                $audit_acrion = AUDIT_ACTION_UPDATE;
            } else {
                show_messages($result, S_SERVICE_ADDED, S_CANNOT_ADD_SERVICE);
                $serviceid = $result;
                $audit_acrion = AUDIT_ACTION_ADD;
            }
            add_audit_if($result, $audit_acrion, AUDIT_RESOURCE_IT_SERVICE, ' Name [' . $_REQUEST["name"] . '] id [' . $serviceid . ']');
        } else {
            if (isset($_REQUEST["add_server"])) {
                $sql = 'SELECT h.* ' . ' FROM hosts h ' . ' WHERE ' . DBin_node('h.hostid') . ' AND ' . DBcondition('h.hostid', $available_hosts) . ' AND h.hostid=' . $_REQUEST["serverid"];
                if (!($host_data = DBfetch(DBselect($sql)))) {
                    access_deny();
                }
                $result = add_host_to_services($_REQUEST["serverid"], $service["serviceid"]);
                add_audit_if($result, AUDIT_ACTION_ADD, AUDIT_RESOURCE_IT_SERVICE, ' Host [' . $host_data["host"] . '] id [' . $_REQUEST["serverid"] . ']');
                show_messages($result, S_TRIGGER_ADDED, S_CANNOT_ADD_TRIGGER);
            }
        }
    }
    if ($result) {
        zbx_add_post_js('closeform("services.php");');
        include_once "include/page_footer.php";
    }
}
//-------------------------------------------- </ACTIONS> --------------------------------------------
//----------------------------------------- <PARENT SERVICES LIST> ------------------------------------------
if (isset($_REQUEST['pservices'])) {
    if (isset($service)) {
        $service = get_service_by_serviceid($service['serviceid']);
    }
예제 #6
0
        $nodeid = add_node($_REQUEST['new_nodeid'], $_REQUEST['name'], $_REQUEST['timezone'], $_REQUEST['ip'], $_REQUEST['port'], $_REQUEST['slave_history'], $_REQUEST['slave_trends'], $_REQUEST['node_type'], $_REQUEST['masterid']);
        $result = DBend($nodeid);
        show_messages($result, S_NODE_ADDED, S_CANNOT_ADD_NODE);
    }
    add_audit_if($result, $audit_action, AUDIT_RESOURCE_NODE, 'Node [' . $_REQUEST['name'] . '] id [' . $nodeid . ']');
    if ($result) {
        unset($_REQUEST['form']);
    }
} else {
    if (isset($_REQUEST['delete'])) {
        $node_data = get_node_by_nodeid($_REQUEST['nodeid']);
        DBstart();
        $result = delete_node($_REQUEST['nodeid']);
        $result = DBend($result);
        show_messages($result, S_NODE_DELETED, S_CANNOT_DELETE_NODE);
        add_audit_if($result, AUDIT_ACTION_DELETE, AUDIT_RESOURCE_NODE, 'Node [' . $node_data['name'] . '] id [' . $node_data['nodeid'] . ']');
        if ($result) {
            unset($_REQUEST['form'], $node_data);
        }
    }
}
$nodes_wdgt = new CWidget();
$available_nodes = get_accessible_nodes_by_user($USER_DETAILS, PERM_READ_LIST, null, null, false);
$frmForm = new CForm(null, 'get');
$cmbConf = new CComboBox('config', 'nodes.php', 'javascript: redirect(this.options[this.selectedIndex].value);');
$cmbConf->addItem('nodes.php', S_NODES);
$cmbConf->addItem('proxies.php', S_PROXIES);
$frmForm->addItem($cmbConf);
if (!isset($_REQUEST['form']) && ZBX_DISTRIBUTED) {
    $frmForm->addItem(new CButton('form', S_NEW_NODE));
}
예제 #7
0
파일: sysmap.php 프로젝트: phedders/zabbix
    }
} else {
    if (isset($_REQUEST['delete'])) {
        if (isset($_REQUEST['linkid'])) {
            $result = delete_link($_REQUEST['linkid']);
            show_messages($result, 'Link deleted', 'Cannot delete link');
            add_audit_if($result, AUDIT_ACTION_UPDATE, AUDIT_RESOURCE_MAP, 'Name [' . $sysmap['name'] . '] Link [' . $_REQUEST['linkid'] . '] deleted');
            if ($result) {
                unset($_REQUEST['linkid']);
                unset($_REQUEST['form']);
            }
        } else {
            if (isset($_REQUEST['selementid'])) {
                $result = delete_sysmaps_element($_REQUEST['selementid']);
                show_messages($result, 'Element deleted', 'Cannot delete element');
                add_audit_if($result, AUDIT_ACTION_UPDATE, AUDIT_RESOURCE_MAP, 'Name [' . $sysmap['name'] . '] Element [' . $_REQUEST['selementid'] . '] deleteed ');
                if ($result) {
                    unset($_REQUEST['selementid']);
                    unset($_REQUEST['form']);
                }
            }
        }
    }
}
echo SBR;
if (isset($_REQUEST['form']) && ($_REQUEST['form'] == 'add_element' || $_REQUEST['form'] == 'update' && isset($_REQUEST['selementid']))) {
    show_table_header(S_DISPLAYED_ELEMENTS);
    echo SBR;
    insert_map_element_form();
} else {
    if (isset($_REQUEST['form']) && ($_REQUEST['form'] == 'add_link' || $_REQUEST['form'] == 'update' && isset($_REQUEST['linkid']))) {