<?php declare(strict_types = 0);
window.connector_edit_popup = new class {
init({connectorid, tags}) {
this.connectorid = connectorid;
this.overlay = overlays_stack.getById('connector_edit');
this.dialogue = this.overlay.$dialogue[0];
this.form = this.overlay.$dialogue.$body[0].querySelector('form');
this.footer = this.overlay.$dialogue.$footer[0];
jQuery('#tags').dynamicRows({
template: '#tag-row-tmpl',
for (const id of ['data_type', 'tags', 'authtype', 'max_records_mode', 'max_attempts']) {
document.getElementById(id).addEventListener('change', () => this._updateForm());
new CFormFieldsetCollapsible(document.getElementById('advanced-configuration'));
this.form.style.display = '';
this.overlay.recoverFocus();
const data_type = this.form.querySelector('[name="data_type"]:checked').value;
for (const element of this.form.querySelectorAll('.js-field-item-value-types')) {
element.style.display = data_type == <?= ZBX_CONNECTOR_DATA_TYPE_ITEM_VALUES ?> ? '' : 'none';
for (const tag_operator of document.getElementById('tags').querySelectorAll('.js-tag-operator')) {
const tag_value = tag_operator.closest('.form_row').querySelector('.js-tag-value');
tag_value.style.display = tag_operator.value == <?= CONDITION_OPERATOR_EXISTS ?>
|| tag_operator.value == <?= CONDITION_OPERATOR_NOT_EXISTS ?> ? 'none' : '';