require_once "include/hosts.inc.php"; require_once "include/scripts.inc.php"; require_once "include/forms.inc.php"; $page['title'] = "S_SCRIPTS"; $page['file'] = 'scripts_exec.php'; define('ZBX_PAGE_NO_MENU', 1); include_once "include/page_header.php"; // VAR TYPE OPTIONAL FLAGS VALIDATION EXCEPTION $fields = array('hostid' => array(T_ZBX_INT, O_OPT, P_SYS, DB_ID, 'isset({execute})'), 'scriptid' => array(T_ZBX_INT, O_OPT, P_SYS, DB_ID, 'isset({execute})'), 'execute' => array(T_ZBX_INT, O_OPT, P_ACT, IN('0,1'), null)); check_fields($fields); if (isset($_REQUEST['execute'])) { $scriptid = $_REQUEST['scriptid']; $hostid = $_REQUEST['hostid']; $sql = 'SELECT name ' . ' FROM scripts ' . ' WHERE scriptid=' . $scriptid; $script_info = DBfetch(DBselect($sql)); $result = CScript::execute(array('hostid' => $hostid, 'scriptid' => $scriptid)); if ($result === false) { show_messages(false, '', S_SCRIPT_ERROR); } else { $message = $result['value']; if ($result['response'] == 'failed') { error($message); show_messages(false, '', S_SCRIPT_ERROR); $message = ''; } $frmResult = new CFormTable($script_info['name'] . ': ' . script_make_command($scriptid, $hostid)); $frmResult->addRow(S_RESULT, new CTextArea('message', $message, 100, 25, 'yes')); $frmResult->addItemToBottomRow(new CButton('close', S_CLOSE, 'window.close();')); $frmResult->show(); } }