Source
763
763
$data['evaltype'] = getRequest('evaltype', CONDITION_EVAL_TYPE_AND_OR);
764
764
$data['formula'] = getRequest('formula');
765
765
$data['conditions'] = getRequest('conditions', []);
766
766
$data['lld_macro_paths'] = getRequest('lld_macro_paths', []);
767
767
$data['overrides'] = getRequest('overrides', []);
768
768
$data['host'] = $host;
769
769
$data['preprocessing_test_type'] = CControllerPopupItemTestEdit::ZBX_TEST_TYPE_LLD;
770
770
$data['preprocessing_types'] = CDiscoveryRule::SUPPORTED_PREPROCESSING_TYPES;
771
771
$data['display_interfaces'] = in_array($host['status'], [HOST_STATUS_MONITORED, HOST_STATUS_NOT_MONITORED]);
772
772
$data['backurl'] = getRequest('backurl');
773
-
if ($data['backurl'] && !CHtmlUrlValidator::validateSameSite($data['backurl'])) {
774
-
throw new CAccessDeniedException();
775
-
}
776
773
777
774
$default_timeout = DB::getDefault('items', 'timeout');
778
775
$data['custom_timeout'] = (int) getRequest('custom_timeout', $data['timeout'] !== $default_timeout);
779
776
$data['inherited_timeouts'] = getInheritedTimeouts($host['proxyid']);
780
777
$data['can_edit_source_timeouts'] = $data['inherited_timeouts']['source'] === 'proxy'
781
778
? CWebUser::checkAccess(CRoleHelper::UI_ADMINISTRATION_PROXIES)
782
779
: CWebUser::checkAccess(CRoleHelper::UI_ADMINISTRATION_GENERAL);
783
780
784
781
$data['inherited_timeout'] = array_key_exists($data['type'], $data['inherited_timeouts']['timeouts'])
785
782
? $data['inherited_timeouts']['timeouts'][$data['type']]