示例#1
0
** You should have received a copy of the GNU General Public License
** along with this program; if not, write to the Free Software
** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
**/
require_once dirname(__FILE__) . '/include/config.inc.php';
require_once dirname(__FILE__) . '/include/screens.inc.php';
require_once dirname(__FILE__) . '/include/forms.inc.php';
require_once dirname(__FILE__) . '/include/blocks.inc.php';
$page['title'] = _('Configuration of screens');
$page['file'] = 'screenedit.php';
$page['hist_arg'] = array('screenid');
$page['scripts'] = array('class.cscreen.js', 'class.calendar.js', 'gtlc.js', 'flickerfreescreen.js', 'multiselect.js');
$page['type'] = detect_page_type(PAGE_TYPE_HTML);
require_once dirname(__FILE__) . '/include/page_header.php';
// VAR	TYPE	OPTIONAL	FLAGS	VALIDATION	EXCEPTION
$fields = array('screenid' => array(T_ZBX_INT, O_MAND, P_SYS, DB_ID, null), 'screenitemid' => array(T_ZBX_INT, O_OPT, P_SYS, DB_ID, null), 'resourcetype' => array(T_ZBX_INT, O_OPT, null, BETWEEN(0, 16), 'isset({save})'), 'caption' => array(T_ZBX_STR, O_OPT, null, null, null), 'resourceid' => array(T_ZBX_INT, O_OPT, null, DB_ID, 'isset({save})', isset($_REQUEST['save']) ? getResourceNameByType($_REQUEST['resourcetype']) : null), 'templateid' => array(T_ZBX_INT, O_OPT, null, DB_ID, null), 'width' => array(T_ZBX_INT, O_OPT, null, BETWEEN(0, 65535), null, _('Width')), 'height' => array(T_ZBX_INT, O_OPT, null, BETWEEN(0, 65535), null, _('Height')), 'colspan' => array(T_ZBX_INT, O_OPT, null, BETWEEN(0, 100), null, _('Column span')), 'rowspan' => array(T_ZBX_INT, O_OPT, null, BETWEEN(0, 100), null, _('Row span')), 'elements' => array(T_ZBX_INT, O_OPT, null, BETWEEN(1, 100), null, _('Show lines')), 'sort_triggers' => array(T_ZBX_INT, O_OPT, null, BETWEEN(SCREEN_SORT_TRIGGERS_DATE_DESC, SCREEN_SORT_TRIGGERS_RECIPIENT_DESC), null), 'valign' => array(T_ZBX_INT, O_OPT, null, BETWEEN(VALIGN_MIDDLE, VALIGN_BOTTOM), null), 'halign' => array(T_ZBX_INT, O_OPT, null, BETWEEN(HALIGN_CENTER, HALIGN_RIGHT), null), 'style' => array(T_ZBX_INT, O_OPT, null, BETWEEN(0, 2), 'isset({save})'), 'url' => array(T_ZBX_STR, O_OPT, null, null, 'isset({save})'), 'dynamic' => array(T_ZBX_INT, O_OPT, null, null, null), 'x' => array(T_ZBX_INT, O_OPT, null, BETWEEN(1, 100), 'isset({save})&&(isset({form})&&({form}!="update"))'), 'y' => array(T_ZBX_INT, O_OPT, null, BETWEEN(1, 100), 'isset({save})&&(isset({form})&&({form}!="update"))'), 'screen_type' => array(T_ZBX_INT, O_OPT, null, null, null), 'tr_groupid' => array(T_ZBX_INT, O_OPT, P_SYS, DB_ID, null), 'tr_hostid' => array(T_ZBX_INT, O_OPT, P_SYS, DB_ID, null), 'application' => array(T_ZBX_STR, O_OPT, null, null, null), 'save' => array(T_ZBX_STR, O_OPT, P_SYS | P_ACT, null, null), 'delete' => array(T_ZBX_STR, O_OPT, P_SYS | P_ACT, null, null), 'cancel' => array(T_ZBX_STR, O_OPT, P_SYS, null, null), 'form' => array(T_ZBX_STR, O_OPT, P_SYS, null, null), 'form_refresh' => array(T_ZBX_INT, O_OPT, null, null, null), 'add_row' => array(T_ZBX_INT, O_OPT, null, BETWEEN(0, 100), null), 'add_col' => array(T_ZBX_INT, O_OPT, null, BETWEEN(0, 100), null), 'rmv_row' => array(T_ZBX_INT, O_OPT, null, BETWEEN(0, 100), null), 'rmv_col' => array(T_ZBX_INT, O_OPT, null, BETWEEN(0, 100), null), 'sw_pos' => array(T_ZBX_INT, O_OPT, null, BETWEEN(0, 100), null), 'ajaxAction' => array(T_ZBX_STR, O_OPT, P_ACT, null, null));
check_fields($fields);
$_REQUEST['dynamic'] = get_request('dynamic', SCREEN_SIMPLE_ITEM);
/*
 * Permissions
 */
$options = array('screenids' => $_REQUEST['screenid'], 'editable' => true, 'output' => API_OUTPUT_EXTEND, 'selectScreenItems' => API_OUTPUT_EXTEND);
$screens = API::Screen()->get($options);
if (empty($screens)) {
    $screens = API::TemplateScreen()->get($options);
    if (empty($screens)) {
        access_deny();
    }
}
$screen = reset($screens);
/*
示例#2
0
** along with this program; if not, write to the Free Software
** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
**/
require_once dirname(__FILE__) . '/include/config.inc.php';
require_once dirname(__FILE__) . '/include/screens.inc.php';
require_once dirname(__FILE__) . '/include/forms.inc.php';
require_once dirname(__FILE__) . '/include/blocks.inc.php';
$page['title'] = _('Configuration of screens');
$page['file'] = 'screenedit.php';
$page['hist_arg'] = array('screenid');
$page['scripts'] = array('class.cscreen.js', 'class.calendar.js', 'gtlc.js', 'flickerfreescreen.js', 'multiselect.js');
$page['type'] = detect_page_type(PAGE_TYPE_HTML);
require_once dirname(__FILE__) . '/include/page_header.php';
$knownResourceTypes = array(SCREEN_RESOURCE_GRAPH, SCREEN_RESOURCE_SIMPLE_GRAPH, SCREEN_RESOURCE_MAP, SCREEN_RESOURCE_PLAIN_TEXT, SCREEN_RESOURCE_HOSTS_INFO, SCREEN_RESOURCE_TRIGGERS_INFO, SCREEN_RESOURCE_SERVER_INFO, SCREEN_RESOURCE_CLOCK, SCREEN_RESOURCE_SCREEN, SCREEN_RESOURCE_TRIGGERS_OVERVIEW, SCREEN_RESOURCE_DATA_OVERVIEW, SCREEN_RESOURCE_URL, SCREEN_RESOURCE_ACTIONS, SCREEN_RESOURCE_EVENTS, SCREEN_RESOURCE_HOSTGROUP_TRIGGERS, SCREEN_RESOURCE_SYSTEM_STATUS, SCREEN_RESOURCE_HOST_TRIGGERS, SCREEN_RESOURCE_HISTORY, SCREEN_RESOURCE_CHART, SCREEN_RESOURCE_LLD_SIMPLE_GRAPH, SCREEN_RESOURCE_LLD_GRAPH);
// VAR	TYPE	OPTIONAL	FLAGS	VALIDATION	EXCEPTION
$fields = array('screenid' => array(T_ZBX_INT, O_MAND, P_SYS, DB_ID, null), 'screenitemid' => array(T_ZBX_INT, O_OPT, P_SYS, DB_ID, null), 'resourcetype' => array(T_ZBX_INT, O_OPT, null, IN($knownResourceTypes), 'isset({add}) || isset({update})'), 'caption' => array(T_ZBX_STR, O_OPT, null, null, null), 'resourceid' => array(T_ZBX_INT, O_OPT, null, DB_ID, null, hasRequest('add') || hasRequest('update') ? getResourceNameByType(getRequest('resourcetype')) : null), 'templateid' => array(T_ZBX_INT, O_OPT, null, DB_ID, null), 'width' => array(T_ZBX_INT, O_OPT, null, BETWEEN(0, 65535), null, _('Width')), 'height' => array(T_ZBX_INT, O_OPT, null, BETWEEN(0, 65535), null, _('Height')), 'max_columns' => array(T_ZBX_INT, O_OPT, null, BETWEEN(SCREEN_SURROGATE_MAX_COLUMNS_MIN, SCREEN_SURROGATE_MAX_COLUMNS_MAX), null, _('Max columns')), 'colspan' => array(T_ZBX_INT, O_OPT, null, BETWEEN(1, 100), null, _('Column span')), 'rowspan' => array(T_ZBX_INT, O_OPT, null, BETWEEN(1, 100), null, _('Row span')), 'elements' => array(T_ZBX_INT, O_OPT, null, BETWEEN(1, 100), null, _('Show lines')), 'sort_triggers' => array(T_ZBX_INT, O_OPT, null, BETWEEN(SCREEN_SORT_TRIGGERS_DATE_DESC, SCREEN_SORT_TRIGGERS_RECIPIENT_DESC), null), 'valign' => array(T_ZBX_INT, O_OPT, null, BETWEEN(VALIGN_MIDDLE, VALIGN_BOTTOM), null), 'halign' => array(T_ZBX_INT, O_OPT, null, BETWEEN(HALIGN_CENTER, HALIGN_RIGHT), null), 'style' => array(T_ZBX_INT, O_OPT, null, BETWEEN(0, 2), 'isset({add}) || isset({update})'), 'url' => array(T_ZBX_STR, O_OPT, null, null, 'isset({add}) || isset({update})'), 'dynamic' => array(T_ZBX_INT, O_OPT, null, null, null), 'x' => array(T_ZBX_INT, O_OPT, null, BETWEEN(1, 100), '(isset({add}) || isset({update})) && isset({form}) && {form} != "update"'), 'y' => array(T_ZBX_INT, O_OPT, null, BETWEEN(1, 100), '(isset({add}) || isset({update})) && isset({form}) && {form} != "update"'), 'screen_type' => array(T_ZBX_INT, O_OPT, null, null, null), 'tr_groupid' => array(T_ZBX_INT, O_OPT, P_SYS, DB_ID, null), 'tr_hostid' => array(T_ZBX_INT, O_OPT, P_SYS, DB_ID, null), 'application' => array(T_ZBX_STR, O_OPT, null, null, null), 'add' => array(T_ZBX_STR, O_OPT, P_SYS | P_ACT, null, null), 'update' => array(T_ZBX_STR, O_OPT, P_SYS | P_ACT, null, null), 'delete' => array(T_ZBX_STR, O_OPT, P_SYS | P_ACT, null, null), 'cancel' => array(T_ZBX_STR, O_OPT, P_SYS, null, null), 'form' => array(T_ZBX_STR, O_OPT, P_SYS, null, null), 'form_refresh' => array(T_ZBX_INT, O_OPT, null, null, null), 'add_row' => array(T_ZBX_INT, O_OPT, null, BETWEEN(0, 100), null), 'add_col' => array(T_ZBX_INT, O_OPT, null, BETWEEN(0, 100), null), 'rmv_row' => array(T_ZBX_INT, O_OPT, null, BETWEEN(0, 100), null), 'rmv_col' => array(T_ZBX_INT, O_OPT, null, BETWEEN(0, 100), null), 'sw_pos' => array(T_ZBX_INT, O_OPT, null, BETWEEN(0, 100), null), 'ajaxAction' => array(T_ZBX_STR, O_OPT, P_ACT, null, null));
check_fields($fields);
$_REQUEST['dynamic'] = getRequest('dynamic', SCREEN_SIMPLE_ITEM);
/*
 * Permissions
 */
$options = array('screenids' => $_REQUEST['screenid'], 'editable' => true, 'output' => API_OUTPUT_EXTEND, 'selectScreenItems' => API_OUTPUT_EXTEND);
$screens = API::Screen()->get($options);
if (empty($screens)) {
    $screens = API::TemplateScreen()->get($options);
    if (empty($screens)) {
        access_deny();
    }
}
$screen = reset($screens);
/*