%PDF- %PDF- 403WebShell
403Webshell
Server IP : 37.220.80.31  /  Your IP : 18.191.68.61
Web Server : Apache/2.4.52 (Ubuntu)
System : Linux 3051455-guretool.twc1.net 5.15.0-107-generic #117-Ubuntu SMP Fri Apr 26 12:26:49 UTC 2024 x86_64
User : www-root ( 1010)
PHP Version : 7.4.33
Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,
MySQL : OFF  |  cURL : ON  |  WGET : OFF  |  Perl : OFF  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /var/www/www-root/data/www/dev.artlot24.ru/bitrix/components/bitrix/main.field.config.detail/templates/.default/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /var/www/www-root/data/www/dev.artlot24.ru/bitrix/components/bitrix/main.field.config.detail/templates/.default//script.js.map
{"version":3,"file":"script.js","sources":["script.es6.js"],"sourcesContent":["import {Tag, Text, Reflection, Runtime, Event, Type, ajax as Ajax, Dom, Loc} from 'main.core';\nimport {Loader} from \"main.loader\";\nimport {MessageBox} from 'ui.dialogs.messagebox';\nimport {UserField} from 'ui.userfield';\n\nimport {ButtonManager, Button} from 'ui.buttons';\n\nconst namespace = Reflection.namespace('BX.Main.UserField');\n\n/**\n * @memberOf BX.Main.UserField\n */\nclass Config\n{\n\tstatic #instances: Map = new Map();\n\n\tid: number = 0;\n\tinputs: Map = new Map();\n\ttabs: Map = new Map();\n\tcontainer: Element = null;\n\tsettingsContainer: ?Element = null;\n\tsettingsTable: ?Element = null;\n\terrorsContainer: ?Element = null;\n\tsaveButton: ?Button = null;\n\tcancelButton: ?Button = null;\n\tdeleteButton: ?Button = null;\n\tmoduleId: string;\n\n\tconstructor(params: {\n\t\tid: number,\n\t\tcontainer: Element,\n\t\terrorsContainer: Element,\n\t\tmoduleId: string,\n\t})\n\t{\n\t\tthis.tabs = new Map();\n\t\tthis.inputs = new Map();\n\t\tconst saveButtonNode = document.getElementById('ui-button-panel-save');\n\t\tif(saveButtonNode)\n\t\t{\n\t\t\tthis.saveButton = ButtonManager.createFromNode(saveButtonNode);\n\t\t}\n\t\tconst cancelButtonNode = document.getElementById('ui-button-panel-cancel');\n\t\tif(cancelButtonNode)\n\t\t{\n\t\t\tthis.cancelButton = ButtonManager.createFromNode(cancelButtonNode);\n\t\t}\n\t\tconst deleteButtonNode = document.getElementById('ui-button-panel-remove');\n\t\tif(deleteButtonNode)\n\t\t{\n\t\t\tthis.deleteButton = ButtonManager.createFromNode(deleteButtonNode);\n\t\t}\n\n\t\tif(Type.isPlainObject(params))\n\t\t{\n\t\t\tthis.id = Text.toInteger(params.id);\n\t\t\tif(Type.isDomNode(params.container))\n\t\t\t{\n\t\t\t\tthis.container = params.container;\n\t\t\t}\n\t\t\tif(Type.isDomNode(params.errorsContainer))\n\t\t\t{\n\t\t\t\tthis.errorsContainer = params.errorsContainer;\n\t\t\t}\n\t\t\tthis.moduleId = params.moduleId;\n\t\t}\n\n\t\tthis.bindEvents();\n\n\t\tthis.fillTabs();\n\n\t\tthis.constructor.#instances.set(this.id, this);\n\n\t\tthis.adjustVisibility();\n\t\tthis.syncEnumDefaultSelector();\n\t}\n\n\tgetBooleanInputNames(): Array\n\t{\n\t\treturn [\n\t\t\t'multiple',\n\t\t\t'mandatory',\n\t\t\t'showFilter',\n\t\t\t'isSearchable',\n\t\t]\n\t}\n\n\tgetSettingsContainer(): ?Element\n\t{\n\t\tif(this.container && !this.settingsContainer)\n\t\t{\n\t\t\tthis.settingsContainer = this.container.querySelector('[data-role=\"main-user-field-settings-container\"]');\n\t\t}\n\n\t\treturn this.settingsContainer;\n\t}\n\n\tgetSettingsTable(): ?Element\n\t{\n\t\tif(!this.settingsTable)\n\t\t{\n\t\t\tconst settingsContainer = this.getSettingsContainer();\n\t\t\tif(settingsContainer)\n\t\t\t{\n\t\t\t\tthis.settingsTable = settingsContainer.querySelector('[data-role=\"main-user-field-settings-table\"]');\n\t\t\t}\n\t\t}\n\n\t\treturn this.settingsTable;\n\t}\n\n\tfillTabs()\n\t{\n\t\tconst tabNames = [\n\t\t\t'common', 'labels', 'additional', 'list'\n\t\t];\n\t\tif(this.container)\n\t\t{\n\t\t\ttabNames.forEach((name: string) => {\n\t\t\t\tconst tab = this.container.querySelector('[data-tab=\"' + name + '\"]');\n\t\t\t\tif(tab)\n\t\t\t\t{\n\t\t\t\t\tthis.tabs.set(name, tab);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\n\tshowTab(name: string)\n\t{\n\t\tArray.from(this.tabs.keys()).forEach((tabName: string) => {\n\t\t\tif(tabName === name)\n\t\t\t{\n\t\t\t\tthis.tabs.get(tabName).classList.add('main-user-field-edit-tab-current');\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tthis.tabs.get(tabName).classList.remove('main-user-field-edit-tab-current');\n\t\t\t}\n\t\t});\n\t}\n\n\tgetInput(name: string): ?Element\n\t{\n\t\tif(this.container && !this.inputs.has(name))\n\t\t{\n\t\t\tconst input = this.container.querySelector('[data-role=\"main-user-field-' + name + '\"]');\n\t\t\tif(input)\n\t\t\t{\n\t\t\t\tthis.inputs.set(name, input);\n\t\t\t}\n\t\t}\n\n\t\treturn this.inputs.get(name);\n\t}\n\n\tgetInputValue(name: string): ?string\n\t{\n\t\tif(name === 'userTypeId')\n\t\t{\n\t\t\treturn this.getSelectedUserTypeId();\n\t\t}\n\n\t\tconst input = this.getInput(name);\n\t\tif(input)\n\t\t{\n\t\t\tif(this.getBooleanInputNames().includes(name))\n\t\t\t{\n\t\t\t\treturn (input.checked ? 'Y' : 'N');\n\t\t\t}\n\n\t\t\treturn input.value;\n\t\t}\n\n\t\treturn '';\n\t}\n\n\tbindEvents()\n\t{\n\t\tconst userTypeIdSelector = this.getInput('userTypeId');\n\t\tif(userTypeIdSelector)\n\t\t{\n\t\t\tEvent.bind(userTypeIdSelector, 'change', this.handleUserTypeChange.bind(this));\n\t\t}\n\n\t\tconst commonLabelInput = this.getInput('editFormLabel');\n\t\tif(commonLabelInput && commonLabelInput.parentElement && commonLabelInput.parentElement.parentElement)\n\t\t{\n\t\t\tconst languageId = commonLabelInput.parentElement.parentElement.dataset['language'];\n\t\t\tconst currentLanguageLabelInput = this.getInput('editFormLabel-' + languageId);\n\t\t\tif(currentLanguageLabelInput)\n\t\t\t{\n\t\t\t\tEvent.bind(commonLabelInput, 'change', () => {\n\t\t\t\t\tthis.syncLabelInputs(commonLabelInput, currentLanguageLabelInput);\n\t\t\t\t});\n\n\t\t\t\tEvent.bind(currentLanguageLabelInput, 'change', () => {\n\t\t\t\t\tthis.syncLabelInputs(currentLanguageLabelInput, commonLabelInput);\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\n\t\tconst addEnum = this.container.querySelector('[data-role=\"main-user-field-enum-add\"]');\n\t\tif(addEnum)\n\t\t{\n\t\t\tEvent.bind(addEnum, 'click', this.addEnumRow.bind(this));\n\t\t}\n\n\t\tconst deleteButtons = Array.from(this.container.querySelectorAll('[data-role=\"main-user-field-enum-delete\"]'));\n\t\tdeleteButtons.forEach((target) => {\n\t\t\tEvent.bind(target, 'click', this.deleteEnumRow.bind(this));\n\t\t});\n\n\t\tconst enumRows = Array.from(this.container.querySelectorAll('[data-role=\"main-user-field-enum-row\"]'));\n\t\tenumRows.forEach((row: Element) => {\n\t\t\tconst input = row.querySelector('[data-role=\"main-user-field-enum-value\"]');\n\t\t\tif(input)\n\t\t\t{\n\t\t\t\tEvent.bind(input, 'change', this.syncEnumDefaultSelector.bind(this));\n\t\t\t}\n\t\t});\n\n\t\tEvent.bind(\n\t\t\tthis.saveButton.getContainer(),\n\t\t\t'click',\n\t\t\t(event) => {\n\t\t\t\tevent.preventDefault();\n\t\t\t\tthis.save();\n\t\t\t},\n\t\t\t{\n\t\t\t\tpassive: false\n\t\t\t}\n\t\t);\n\n\t\tif(this.deleteButton)\n\t\t{\n\t\t\tEvent.bind(\n\t\t\t\tthis.deleteButton.getContainer(),\n\t\t\t\t'click',\n\t\t\t\t(event) => {\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\tthis.delete();\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\t}\n\n\tgetSelectedUserTypeId(): ?string\n\t{\n\t\tconst option = this.getSelectedOption('userTypeId');\n\t\tif(option)\n\t\t{\n\t\t\treturn option.value;\n\t\t}\n\n\t\treturn null;\n\t}\n\n\tgetSelectedOption(inputName: string): ?HTMLOptionElement\n\t{\n\t\tconst input = this.getInput(inputName);\n\t\tif(input)\n\t\t{\n\t\t\tconst options = Array.from(input.querySelectorAll('option'));\n\t\t\tconst index = input.selectedIndex;\n\t\t\treturn options[index];\n\t\t}\n\n\t\treturn null;\n\t}\n\n\thandleUserTypeChange()\n\t{\n\t\tif(this.isProgress)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tconst settingsTable = this.getSettingsTable();\n\t\tif(!settingsTable)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tconst userTypeId = this.getSelectedUserTypeId();\n\t\tif(!userTypeId)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tthis.startProgress();\n\t\tAjax.runComponentAction('bitrix:main.field.config.detail', 'getSettings', {\n\t\t\tdata: {\n\t\t\t\tuserTypeId,\n\t\t\t},\n\t\t\tanalyticsLabel: 'mainUserFieldConfigGetSettings',\n\t\t\tmode: 'class',\n\t\t}).then((response) => {\n\t\t\tthis.stopProgress();\n\t\t\tlet html = '';\n\t\t\tif(response.data.html && response.data.html.length > 0)\n\t\t\t{\n\t\t\t\thtml = response.data.html;\n\t\t\t}\n\t\t\tRuntime.html(settingsTable, html).then(() => {\n\t\t\t\tthis.adjustVisibility();\n\t\t\t});\n\t\t}).catch((response) => {\n\t\t\tthis.stopProgress();\n\t\t\tthis.showErrors(response.errors);\n\t\t});\n\t}\n\n\tgetLoader()\n\t{\n\t\tif(!this.loader)\n\t\t{\n\t\t\tthis.loader = new Loader({size: 150});\n\t\t}\n\n\t\treturn this.loader;\n\t}\n\n\tstartProgress()\n\t{\n\t\tthis.isProgress = true;\n\t\tif(!this.getLoader().isShown())\n\t\t{\n\t\t\tthis.getLoader().show(this.container);\n\t\t}\n\t\tthis.hideErrors();\n\t}\n\n\tstopProgress()\n\t{\n\t\tthis.isProgress = false;\n\t\tthis.getLoader().hide();\n\t\tsetTimeout(() => {\n\t\t\tthis.saveButton.setWaiting(false);\n\t\t\tDom.removeClass(this.saveButton.getContainer(), 'ui-btn-wait');\n\t\t\tif(this.deleteButton)\n\t\t\t{\n\t\t\t\tthis.deleteButton.setWaiting(false);\n\t\t\t\tDom.removeClass(this.deleteButton.getContainer(), 'ui-btn-wait');\n\t\t\t}\n\t\t}, 200);\n\t}\n\n\tshowErrors(errors: string[])\n\t{\n\t\tlet text = '';\n\t\terrors.forEach((message) => {\n\t\t\ttext += message;\n\t\t});\n\t\tif(Type.isDomNode(this.errorsContainer))\n\t\t{\n\t\t\tthis.errorsContainer.innerText = text;\n\t\t\tthis.errorsContainer.parentElement.style.display = 'block';\n\t\t}\n\t\telse\n\t\t{\n\t\t\tconsole.error(text);\n\t\t}\n\t}\n\n\thideErrors()\n\t{\n\t\tif(Type.isDomNode(this.errorsContainer))\n\t\t{\n\t\t\tthis.errorsContainer.innerText = '';\n\t\t\tthis.errorsContainer.parentElement.style.display = 'none';\n\t\t}\n\t}\n\n\tgetSettings(): {}\n\t{\n\t\tconst settings = {};\n\n\t\tconst settingsForm = this.container.querySelector('[data-role=\"main-user-field-settings\"]');\n\t\tif(settingsForm)\n\t\t{\n\t\t\tconst formData = new FormData(settingsForm);\n\t\t\tfor(let pair of formData.entries())\n\t\t\t{\n\t\t\t\tconst name = pair[0].substr(9, pair[0].length - 10);\n\t\t\t\tsettings[name] = pair[1];\n\t\t\t}\n\t\t}\n\n\t\treturn settings;\n\t}\n\n\tprepareFieldData(): {}\n\t{\n\t\tif(!this.container)\n\t\t{\n\t\t\treturn {};\n\t\t}\n\n\t\tconst editFormLabel = {};\n\n\t\tconst labelInputs = Array.from(this.container.querySelectorAll('[data-role=\"main-user-field-label-container\"]'));\n\t\tlabelInputs.forEach((labelContainer) => {\n\t\t\tconst languageId = labelContainer.dataset['language'];\n\t\t\teditFormLabel[languageId] = this.getInputValue('editFormLabel-' + languageId);\n\t\t});\n\n\t\tconst list = [];\n\t\tconst userTypeId = this.getInputValue('userTypeId');\n\t\tif(userTypeId === 'enumeration')\n\t\t{\n\t\t\tlet selectedDefaultIndex = 0;\n\t\t\tconst enumDefault = this.getInput('enumDefault');\n\t\t\tif(enumDefault)\n\t\t\t{\n\t\t\t\tselectedDefaultIndex = enumDefault.selectedIndex;\n\t\t\t}\n\t\t\tconst sortStep = 100;\n\t\t\tlet sort = 0;\n\t\t\tlet index = 1;\n\t\t\tconst rows = Array.from(this.container.querySelectorAll('[data-role=\"main-user-field-enum-row\"]'));\n\t\t\trows.forEach((row: Element) => {\n\t\t\t\tconst input = row.querySelector('[data-role=\"main-user-field-enum-value\"]');\n\t\t\t\tif (!input)\n\t\t\t\t{\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tlet def = 'N';\n\t\t\t\tif(selectedDefaultIndex === index)\n\t\t\t\t{\n\t\t\t\t\tdef = 'Y';\n\t\t\t\t}\n\t\t\t\tsort += sortStep;\n\t\t\t\tconst id = Text.toInteger(row.dataset['id']);\n\t\t\t\tlist.push({\n\t\t\t\t\tvalue: input.value,\n\t\t\t\t\tdef,\n\t\t\t\t\tsort,\n\t\t\t\t\tid,\n\t\t\t\t});\n\t\t\t\tindex++;\n\t\t\t})\n\t\t}\n\n\t\tconst id = Text.toInteger(this.getInputValue('id'));\n\t\tlet fieldName = this.getInputValue('fieldName');\n\t\tif(id <= 0)\n\t\t{\n\t\t\tfieldName = this.getInputValue('fieldPrefix') + fieldName;\n\t\t}\n\n\t\treturn {\n\t\t\tid,\n\t\t\teditFormLabel,\n\t\t\tentityId: this.getInputValue('entityId'),\n\t\t\tfieldName: fieldName,\n\t\t\tsort: this.getInputValue('sort'),\n\t\t\tmultiple: this.getInputValue('multiple'),\n\t\t\tmandatory: this.getInputValue('mandatory'),\n\t\t\tshowFilter: this.getInputValue('showFilter'),\n\t\t\tisSearchable: this.getInputValue('isSearchable'),\n\t\t\tuserTypeId,\n\t\t\tsettings: this.getSettings(),\n\t\t\tenum: list,\n\t\t};\n\t}\n\n\tsave()\n\t{\n\t\tif(this.isProgress)\n\t\t{\n\t\t\treturn;\n\t\t}\n\t\tif(!this.moduleId)\n\t\t{\n\t\t\treturn;\n\t\t}\n\t\tthis.startProgress();\n\t\tconst fieldData = this.prepareFieldData();\n\n\t\tlet languageId = null;\n\t\tconst commonLabelInput = this.getInput('editFormLabel');\n\t\tif(commonLabelInput && commonLabelInput.parentElement && commonLabelInput.parentElement.parentElement)\n\t\t{\n\t\t\tlanguageId = commonLabelInput.parentElement.parentElement.dataset['language'];\n\t\t}\n\n\t\tconst userField = new UserField(fieldData, {\n\t\t\tlanguageId,\n\t\t\tmoduleId: this.moduleId,\n\t\t});\n\t\tuserField.save().then(() => {\n\t\t\tthis.afterSave(userField);\n\t\t\tthis.stopProgress();\n\t\t}).catch((errors) => {\n\t\t\tthis.showErrors(errors);\n\t\t\tthis.stopProgress();\n\t\t});\n\t}\n\n\tdelete()\n\t{\n\t\tif(this.isProgress)\n\t\t{\n\t\t\treturn;\n\t\t}\n\t\tif(!this.moduleId)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tconst id = Text.toInteger(this.getInputValue('id'));\n\t\tif(id <= 0)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tMessageBox.confirm(\n\t\t\tLoc.getMessage('MAIN_FIELD_CONFIG_DELETE_CONFIRM'),\n\t\t\t() => {\n\t\t\t\treturn new Promise((resolve) => {\n\t\t\t\t\tconst userField = new UserField(this.prepareFieldData(), {\n\t\t\t\t\t\tmoduleId: this.moduleId,\n\t\t\t\t\t});\n\t\t\t\t\tthis.startProgress();\n\t\t\t\t\tuserField.delete().then(() => {\n\t\t\t\t\t\tthis.stopProgress();\n\t\t\t\t\t\tconst slider = this.getSlider();\n\t\t\t\t\t\tif(slider)\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tthis.addDataToSlider('userFieldData', userField.serialize());\n\t\t\t\t\t\t\tslider.close();\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tMessageBox.alert(Loc.getMessage('MAIN_FIELD_CONFIG_DELETE_SUCCESS'));\n\t\t\t\t\t\t}\n\t\t\t\t\t\tresolve();\n\t\t\t\t\t}).catch((errors) => {\n\t\t\t\t\t\tthis.stopProgress();\n\t\t\t\t\t\tthis.showErrors(errors);\n\t\t\t\t\t\tresolve();\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t},\n\t\t\tnull,\n\t\t\t(box) => {\n\t\t\t\tthis.stopProgress();\n\t\t\t\tbox.close();\n\t\t\t}\n\t\t);\n\t}\n\n\tadjustVisibility()\n\t{\n\t\tconst settingsTable = this.getSettingsTable();\n\t\tconst settingsTab = document.querySelector('[data-role=\"tab-additional\"]');\n\t\tconst listTab = document.querySelector('[data-role=\"tab-list\"]');\n\t\tif(!settingsTable || !settingsTab || !listTab)\n\t\t{\n\t\t\treturn;\n\t\t}\n\t\tif(settingsTable.childElementCount <= 0)\n\t\t{\n\t\t\tsettingsTab.style.display = 'none';\n\t\t}\n\t\telse\n\t\t{\n\t\t\tsettingsTab.style.display = 'block';\n\t\t}\n\t\tconst userTypeId = this.getSelectedUserTypeId();\n\t\tif(userTypeId === 'enumeration')\n\t\t{\n\t\t\tlistTab.style.display = 'flex';\n\t\t}\n\t\telse\n\t\t{\n\t\t\tlistTab.style.display = 'none';\n\t\t}\n\t\tif(userTypeId === 'boolean')\n\t\t{\n\t\t\tthis.changeInputVisibility('multiple', 'none');\n\t\t\tthis.changeInputVisibility('mandatory', 'none');\n\t\t}\n\t\telse\n\t\t{\n\t\t\tthis.changeInputVisibility('multiple', 'block');\n\t\t\tthis.changeInputVisibility('mandatory', 'block');\n\t\t}\n\t}\n\n\tchangeInputVisibility(inputName: string, display: string)\n\t{\n\t\tconst input = this.getInput(inputName);\n\t\tif(input && input.parentElement && input.parentElement.parentElement)\n\t\t{\n\t\t\tinput.parentElement.parentElement.style.display = display;\n\t\t}\n\t}\n\n\tafterSave(userField: UserField)\n\t{\n\t\tthis.addDataToSlider('userFieldData', userField.serialize());\n\t\tconst slider = this.getSlider();\n\t\tif(slider)\n\t\t{\n\t\t\tslider.close();\n\t\t}\n\t\telse\n\t\t{\n\t\t\tconst id = Text.toInteger(this.getInputValue('id'));\n\t\t\tif(id <= 0)\n\t\t\t{\n\t\t\t\tif(!!userField.getDetailUrl())\n\t\t\t\t{\n\t\t\t\t\tlocation.href = userField.getDetailUrl();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tthis.getInput('id').value = userField.getId();\n\t\t\t\tconst prefixInput = this.getInput('fieldPrefix');\n\t\t\t\tif(prefixInput && prefixInput.parentElement && prefixInput.parentElement.parentElement)\n\t\t\t\t{\n\t\t\t\t\tprefixInput.parentElement.parentElement.classList.remove('main-user-field-name-with-prefix');\n\t\t\t\t\tDom.remove(prefixInput.parentElement);\n\t\t\t\t}\n\t\t\t\tthis.getInput('fieldName').value = userField.getName();\n\t\t\t\tthis.getInput('fieldName').disabled = true;\n\t\t\t\tthis.getInput('fieldName').parentElement.classList.remove('ui-ctl-inline');\n\t\t\t}\n\t\t}\n\t}\n\n\tgetSlider()\n\t{\n\t\tif(Reflection.getClass('BX.SidePanel'))\n\t\t{\n\t\t\treturn BX.SidePanel.Instance.getSliderByWindow(window);\n\t\t}\n\n\t\treturn null;\n\t}\n\n\taddDataToSlider(key, data)\n\t{\n\t\tif(Type.isString(key))\n\t\t{\n\t\t\tlet slider = this.getSlider();\n\t\t\tif(slider)\n\t\t\t{\n\t\t\t\tslider.getData().set(key, data);\n\t\t\t\tBX.SidePanel.Instance.postMessage(slider, 'userfield-list-update');\n\t\t\t}\n\t\t}\n\t}\n\n\tstatic handleLeftMenuClick(id: number, tabName: string)\n\t{\n\t\tif(Config.#instances)\n\t\t{\n\t\t\tconst instance = Config.#instances.get(id);\n\t\t\tif(instance)\n\t\t\t{\n\t\t\t\tinstance.showTab(tabName);\n\t\t\t}\n\t\t}\n\t}\n\n\tsyncLabelInputs(fromLabel: HTMLInputElement, toLabel: HTMLInputElement)\n\t{\n\t\tconst tab = fromLabel.closest('.main-user-field-edit-tab');\n\t\tif(tab && tab.classList.contains('main-user-field-edit-tab-current'))\n\t\t{\n\t\t\ttoLabel.value = fromLabel.value;\n\t\t}\n\t}\n\n\taddEnumRow()\n\t{\n\t\tconst addEnum = this.container.querySelector('[data-role=\"main-user-field-enum-add\"]');\n\t\tif (addEnum)\n\t\t{\n\t\t\tconst row = Tag.render`\n\t\t\t\t\t<div class=\"main-user-field-enum-row\" data-role=\"main-user-field-enum-row\">\n\t\t\t\t\t\t<div class=\"main-user-field-enum-row-inner ui-ctl ui-ctl-textbox ui-ctl-w100 ui-ctl-row\">\n\t\t\t\t\t\t\t<span class=\"main-user-field-enum-row-draggable\" style=\"\"></span>\n\t\t\t\t\t\t\t<input class=\"ui-ctl-element\" type=\"text\" name=\"ENUM[][VALUE]\" value=\"\" data-role=\"main-user-field-enum-value\" onchange=\"${this.syncEnumDefaultSelector.bind(this)}\">\n\t\t\t\t\t\t\t<div class=\"main-user-field-enum-delete\" onclick=\"${this.deleteEnumRow.bind(this)}\"></div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>`;\n\t\t\tDom.append(row, document.querySelector('.main-user-field-enum-row-list'));\n\n\t\t\tlet item = new DragDropItem();\n\t\t\titem.init(row);\n\t\t}\n\t}\n\n\tdeleteEnumRow({target})\n\t{\n\t\tDom.remove(target.parentElement);\n\t\tthis.syncEnumDefaultSelector();\n\t}\n\n\tsyncEnumDefaultSelector()\n\t{\n\t\tconst userTypeId = this.getInputValue('userTypeId');\n\t\tif(userTypeId === 'enumeration')\n\t\t{\n\t\t\tconst selector = this.getInput('enumDefault');\n\t\t\tif(!selector)\n\t\t\t{\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tlet selectedId;\n\t\t\tlet selectedValue;\n\t\t\tconst selectedDefaultOption = this.getSelectedOption('enumDefault');\n\t\t\tif(selectedDefaultOption)\n\t\t\t{\n\t\t\t\tif(selectedDefaultOption.dataset['id'])\n\t\t\t\t{\n\t\t\t\t\tselectedId = Text.toInteger(selectedDefaultOption.dataset['id']);\n\t\t\t\t}\n\t\t\t\telse\n\t\t\t\t{\n\t\t\t\t\tselectedValue = selectedDefaultOption.value;\n\t\t\t\t}\n\t\t\t}\n\t\t\tconst options = Array.from(selector.querySelectorAll('option'));\n\t\t\toptions.forEach((option: HTMLOptionElement) => {\n\t\t\t\tif(option.value !== 'empty')\n\t\t\t\t{\n\t\t\t\t\tDom.remove(option);\n\t\t\t\t}\n\t\t\t});\n\t\t\tconst rows = Array.from(this.container.querySelectorAll('[data-role=\"main-user-field-enum-row\"]'));\n\t\t\trows.forEach((row: Element) => {\n\t\t\t\tconst id = Text.toInteger(row.dataset['id']);\n\t\t\t\tconst input = row.querySelector('[data-role=\"main-user-field-enum-value\"]');\n\t\t\t\tif (!input)\n\t\t\t\t{\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tconst value = input.value;\n\t\t\t\tconst selected = (\n\t\t\t\t\t(id > 0 && id === selectedId)\n\t\t\t\t\t|| (value === selectedValue)\n\t\t\t\t);\n\t\t\t\tif(value.length > 0)\n\t\t\t\t{\n\t\t\t\t\tselector.appendChild(Tag.render`<option ${selected ? 'selected=\"selected\"' : ''} value=\"${Text.encode(value)}\" data-id=\"${id}\">${Text.encode(value)}</option>`);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n}\n\nclass DragDropItem\n{\n\tconstructor() {\n\t\tthis.itemContainer = null;\n\t\tthis.draggableItemContainer = null;\n\t\tthis.dragElement = null;\n\t}\n\n\tinit(item)\n\t{\n\t\tthis.itemContainer = item;\n\t\tconst dragButton = this.itemContainer.querySelector('.main-user-field-enum-row-draggable');\n\n\t\tif (jsDD)\n\t\t{\n\t\t\tdragButton.onbxdragstart = this.onDragStart.bind(this);\n\t\t\tdragButton.onbxdrag = this.onDrag.bind(this);\n\t\t\tdragButton.onbxdragstop = this.onDragStop.bind(this);\n\n\t\t\tjsDD.registerObject(dragButton);\n\n\t\t\tthis.itemContainer.onbxdestdraghover = this.onDragEnter.bind(this);\n\t\t\tthis.itemContainer.onbxdestdraghout = this.onDragLeave.bind(this);\n\t\t\tthis.itemContainer.onbxdestdragfinish = this.onDragDrop.bind(this);\n\n\t\t\tjsDD.registerDest(this.itemContainer, 30);\n\t\t}\n\t}\n\n\tonDragStart()\n\t{\n\t\tDom.addClass(this.itemContainer, \"main-user-field-enum-row-disabled\");\n\n\t\tif (!this.dragElement)\n\t\t{\n\t\t\tthis.dragElement = this.itemContainer.cloneNode(true);\n\n\t\t\tthis.dragElement.style.position = \"absolute\";\n\t\t\tthis.dragElement.style.width = this.itemContainer.offsetWidth + \"px\";\n\t\t\tthis.dragElement.className = \"main-user-field-enum-row-drag\";\n\n\t\t\tDom.append(this.dragElement, document.body);\n\t\t}\n\t}\n\n\tonDrag(x, y)\n\t{\n\t\tif (this.dragElement)\n\t\t{\n\t\t\tthis.dragElement.style.left = x + \"px\";\n\t\t\tthis.dragElement.style.top = y + \"px\";\n\t\t}\n\t}\n\n\tonDragStop()\n\t{\n\t\tDom.removeClass(this.itemContainer, \"main-user-field-enum-row-disabled\");\n\t\tDom.remove(this.dragElement);\n\t\tthis.dragElement = null;\n\t}\n\n\tonDragEnter(draggableItem)\n\t{\n\t\tthis.draggableBtnContainer = draggableItem.closest('.main-user-field-enum-row');\n\n\t\tif (this.draggableBtnContainer !== this.itemContainer)\n\t\t{\n\t\t\tthis.showDragTarget();\n\t\t}\n\t}\n\n\tonDragLeave()\n\t{\n\t\tthis.hideDragTarget();\n\t}\n\n\tonDragDrop()\n\t{\n\t\tif (this.draggableBtnContainer !== this.itemContainer)\n\t\t{\n\t\t\tthis.hideDragTarget();\n\t\t\tDom.remove(this.draggableBtnContainer);\n\t\t\tDom.insertBefore(this.draggableBtnContainer, this.itemContainer);\n\t\t}\n\t}\n\n\tshowDragTarget()\n\t{\n\t\tDom.addClass(this.itemContainer, 'main-user-field-enum-row-target-shown');\n\t\tthis.getDragTarget().style.height = this.itemContainer.offsetHeight + \"px\";\n\t}\n\n\thideDragTarget()\n\t{\n\t\tDom.removeClass(this.itemContainer, \"main-user-field-enum-row-target-shown\");\n\t\tthis.getDragTarget().style.height = 0;\n\t}\n\n\tgetDragTarget()\n\t{\n\t\tif (!this.dragTarget)\n\t\t{\n\t\t\tthis.dragTarget = Tag.render`<div class=\"main-user-field-enum-row-drag-target\"></div>`;\n\t\t\tDom.prepend(this.dragTarget, this.itemContainer);\n\t\t}\n\n\t\treturn this.dragTarget;\n\t}\n\n}\n\nclass DragDropBtnContainer\n{\n\tconstructor() {\n\t\tthis.container = document.querySelector('.main-user-field-enum-row-list');\n\t\tthis.height = null;\n\t}\n\n\tinit()\n\t{\n\t\tthis.container.onbxdestdraghover = BX.delegate(this.onDragEnter, this);\n\t\tthis.container.onbxdestdraghout = BX.delegate(this.onDragLeave, this);\n\t\tthis.container.onbxdestdragfinish = BX.delegate(this.onDragDrop, this);\n\t\tjsDD.registerDest(this.container, 40);\n\t}\n\n\tonDragEnter(draggableItem)\n\t{\n\t\tthis.draggableBtnContainer = draggableItem.closest('.main-user-field-enum-row');\n\t\tthis.height = this.draggableBtnContainer.offsetHeight;\n\t\tthis.showDragTarget();\n\t}\n\n\tonDragLeave()\n\t{\n\t\tthis.hideDragTarget();\n\t}\n\n\tonDragDrop()\n\t{\n\t\tthis.hideDragTarget();\n\t\tDom.remove(this.draggableBtnContainer);\n\t\tDom.insertBefore(this.draggableBtnContainer, this.dragTarget);\n\t}\n\n\tshowDragTarget()\n\t{\n\t\tDom.addClass(this.container, 'main-user-field-enum-row-list-target-shown');\n\t\tthis.getDragTarget().style.height = this.height + \"px\";\n\t}\n\n\thideDragTarget()\n\t{\n\t\tDom.removeClass(this.container, \"main-user-field-enum-row-list-target-shown\");\n\t\tthis.getDragTarget().style.height = 0;\n\t}\n\n\tgetDragTarget()\n\t{\n\t\tif (!this.dragTarget)\n\t\t{\n\t\t\tthis.dragTarget = Tag.render`<div class=\"main-user-field-enum-row-list-target\"></div>`;\n\t\t\tDom.append(this.dragTarget, this.container);\n\t\t}\n\n\t\treturn this.dragTarget;\n\t}\n\n}\n\nnamespace.Config = Config;\nnamespace.DragDropItem = DragDropItem;\nnamespace.DragDropBtnContainer = DragDropBtnContainer;"],"names":["namespace","Reflection","Config","params","Map","tabs","inputs","saveButtonNode","document","getElementById","saveButton","ButtonManager","createFromNode","cancelButtonNode","cancelButton","deleteButtonNode","deleteButton","Type","isPlainObject","id","Text","toInteger","isDomNode","container","errorsContainer","moduleId","bindEvents","fillTabs","constructor","set","adjustVisibility","syncEnumDefaultSelector","settingsContainer","querySelector","settingsTable","getSettingsContainer","tabNames","forEach","name","tab","Array","from","keys","tabName","get","classList","add","remove","has","input","getSelectedUserTypeId","getInput","getBooleanInputNames","includes","checked","value","userTypeIdSelector","Event","bind","handleUserTypeChange","commonLabelInput","parentElement","languageId","dataset","currentLanguageLabelInput","syncLabelInputs","addEnum","addEnumRow","deleteButtons","querySelectorAll","target","deleteEnumRow","enumRows","row","getContainer","event","preventDefault","save","passive","delete","option","getSelectedOption","inputName","options","index","selectedIndex","isProgress","getSettingsTable","userTypeId","startProgress","Ajax","runComponentAction","data","analyticsLabel","mode","then","response","stopProgress","html","length","Runtime","catch","showErrors","errors","loader","Loader","size","getLoader","isShown","show","hideErrors","hide","setTimeout","setWaiting","Dom","removeClass","text","message","innerText","style","display","console","error","settings","settingsForm","formData","FormData","entries","pair","substr","editFormLabel","labelInputs","labelContainer","getInputValue","list","selectedDefaultIndex","enumDefault","sortStep","sort","rows","def","push","fieldName","entityId","multiple","mandatory","showFilter","isSearchable","getSettings","enum","fieldData","prepareFieldData","userField","UserField","afterSave","MessageBox","confirm","Loc","getMessage","Promise","resolve","slider","getSlider","addDataToSlider","serialize","close","alert","box","settingsTab","listTab","childElementCount","changeInputVisibility","getDetailUrl","location","href","getId","prefixInput","getName","disabled","getClass","BX","SidePanel","Instance","getSliderByWindow","window","key","isString","getData","postMessage","fromLabel","toLabel","closest","contains","Tag","render","append","item","DragDropItem","init","selector","selectedId","selectedValue","selectedDefaultOption","selected","appendChild","encode","instance","showTab","itemContainer","draggableItemContainer","dragElement","dragButton","jsDD","onbxdragstart","onDragStart","onbxdrag","onDrag","onbxdragstop","onDragStop","registerObject","onbxdestdraghover","onDragEnter","onbxdestdraghout","onDragLeave","onbxdestdragfinish","onDragDrop","registerDest","addClass","cloneNode","position","width","offsetWidth","className","body","x","y","left","top","draggableItem","draggableBtnContainer","showDragTarget","hideDragTarget","insertBefore","getDragTarget","height","offsetHeight","dragTarget","prepend","DragDropBtnContainer","delegate"],"mappings":"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"}

Youez - 2016 - github.com/yon3zu
LinuXploit