includeJsFile('configuration.host.edit.js.php'); $cancel_button = (new CRedirectButton(_('Cancel'), (new CUrl('zabbix.php'))->setArgument('action', 'host.list'))) ->addClass('js-cancel'); $data += [ 'form_name' => 'host-form', 'buttons' => ($data['hostid'] == 0) ? [ (new CSubmit('add', _('Add'))) ->removeAttribute('id'), $cancel_button ] : [ (new CSubmit('update', _('Update'))) ->removeAttribute('id'), (new CSimpleButton(_('Clone'))) ->onClick('view.clone();') ->removeAttribute('id'), (new CSimpleButton(_('Delete'))) ->setAttribute('confirm', _('Delete selected host?')) ->setAttribute('data-hostid', $data['hostid']) ->onClick('view.delete(this.dataset.hostid, this);') ->removeAttribute('id'), $cancel_button ] ]; if ($data['warnings']) { foreach ($data['warnings'] as $msg) { CMessageHelper::addWarning($msg); } if (count($data['warnings']) > 1) { show_messages(null, _('Cloned host parameter values have been modified.')); } else { show_messages(); } $data['warnings'] = null; } (new CHtmlPage()) ->setTitle(($data['hostid'] == 0) ? _('New host') : _('Host')) ->setDocUrl(CDocHelper::getUrl(CDocHelper::DATA_COLLECTION_HOST_EDIT)) ->addItem(new CPartial('configuration.host.edit.html', $data)) ->show(); (new CScriptTag('view.init('.json_encode([ 'form_name' => $data['form_name'], 'host_interfaces' => $data['host']['interfaces'], 'host_is_discovered' => ($data['host']['flags'] == ZBX_FLAG_DISCOVERY_CREATED) ]).');')) ->setOnDocumentReady() ->show();