403Webshell
Server IP : 80.87.202.40  /  Your IP : 216.73.216.169
Web Server : Apache
System : Linux rospirotorg.ru 5.14.0-539.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Dec 5 22:26:13 UTC 2024 x86_64
User : bitrix ( 600)
PHP Version : 8.2.27
Disable Function : NONE
MySQL : OFF |  cURL : ON |  WGET : ON |  Perl : ON |  Python : OFF |  Sudo : ON |  Pkexec : ON
Directory :  /home/bitrix/ext_www/rospirotorg.ru/bitrix/js/catalog/config/settings/dist/

Upload File :
current_dir [ Writeable] document_root [ Writeable]

 

Command :


[ Back ]     

Current File : /home/bitrix/ext_www/rospirotorg.ru/bitrix/js/catalog/config/settings/dist/settings.bundle.js.map
{"version":3,"file":"settings.bundle.js","sources":["../src/product-updater/updater.js","../src/product-updater/template.js","../src/sections/cost-price-calculation.js","../src/sections/components/mode-status.js","../src/sections/mode.js","../src/sections/products.js","../src/fields/reservation-mode.js","../src/sections/reservation.js","../src/catalog-page.js","../src/slider.js","../src/settings.js"],"sourcesContent":["class ProductSettingsUpdater\n{\n\tconstructor(params)\n\t{\n\t\tthis.url = '/bitrix/tools/catalog/product_settings.php';\n\t\tthis.stepOptions = {\n\t\t\tajaxSessionID: '',\n\t\t\tmaxExecutionTime: 30,\n\t\t\tmaxOperationCounter: 10,\n\t\t};\n\t\tthis.finish = false;\n\t\tthis.currentState = {\n\t\t\tcounter: 0,\n\t\t\toperationCounter: 0,\n\t\t\terrorCounter: 0,\n\t\t\tlastID: 0,\n\t\t};\n\t\tthis.ajaxParams = {\n\t\t\toperation: 'Y',\n\t\t};\n\t\tthis.iblocks = [];\n\t\tthis.iblockIndex = -1;\n\n\t\tthis.stepOptions.ajaxSessionID = 'productSettings';\n\t\tthis.currentState.counter = 0;\n\n\t\tthis.events = params.events;\n\t\tthis.settings = params.settings;\n\t}\n\n\tnextStep()\n\t{\n\t\tfor (let key in this.stepOptions)\n\t\t{\n\t\t\tif (this.stepOptions.hasOwnProperty(key))\n\t\t\t{\n\t\t\t\tthis.ajaxParams[key] = this.stepOptions[key];\n\t\t\t}\n\t\t}\n\t\tfor (let key in this.currentState)\n\t\t{\n\t\t\tif (this.currentState.hasOwnProperty(key))\n\t\t\t{\n\t\t\t\tthis.ajaxParams[key] = this.currentState[key];\n\t\t\t}\n\t\t}\n\n\t\tthis.ajaxParams.sessid = BX.bitrix_sessid();\n\t\tthis.ajaxParams.lang = BX.message('LANGUAGE_ID');\n\t\tBX.ajax.loadJSON(\n\t\t\tthis.url,\n\t\t\tthis.ajaxParams,\n\t\t\tBX.proxy(this.nextStepResult, this)\n\t\t);\n\t}\n\n\tnextStepResult(result)\n\t{\n\t\tif (BX.type.isPlainObject(result))\n\t\t{\n\t\t\tthis.currentState.lastID = result.lastID;\n\t\t\tthis.stepOptions.maxOperationCounter = result.maxOperationCounter;\n\n\t\t\tthis.currentState.operationCounter = parseInt(result.operationCounter, 10);\n\t\t\tif (isNaN(this.currentState.operationCounter))\n\t\t\t{\n\t\t\t\tthis.currentState.operationCounter = 0;\n\t\t\t}\n\n\t\t\tthis.currentState.errorCounter = parseInt(result.errorCounter, 10);\n\t\t\tif (isNaN(this.currentState.errorCounter))\n\t\t\t{\n\t\t\t\tthis.currentState.errorCounter = 0;\n\t\t\t}\n\n\t\t\tif (this.events.onProgress)\n\t\t\t{\n\t\t\t\tthis.events.onProgress({\n\t\t\t\t\tallCnt: result.allCounter,\n\t\t\t\t\tdoneCnt: result.allOperationCounter,\n\t\t\t\t\tcurrentIblockName: this.iblocks[this.iblockIndex].NAME,\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tif (this.finish)\n\t\t\t{\n\t\t\t\tthis.finishOperation();\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tthis.checkOperation(result.finishOperation);\n\t\t\t}\n\t\t}\n\t}\n\n\tfinishOperation()\n\t{\n\t\tthis.currentState.operationCounter = 0;\n\t\tthis.currentState.errorCounter = 0;\n\t\tthis.currentState.lastID = 0;\n\t\tthis.finish = false;\n\n\t\tif (this.events.onComplete)\n\t\t{\n\t\t\tthis.events.onComplete();\n\t\t}\n\t}\n\n\tstartOperation()\n\t{\n\t\tBX.ajax.loadJSON(\n\t\t\tthis.url,\n\t\t\t{\n\t\t\t\tsessid: BX.bitrix_sessid(),\n\t\t\t\tchangeSettings: 'Y',\n\t\t\t\t...this.settings\n\t\t\t},\n\t\t\tBX.proxy(this.changeSettingsResult, this)\n\t\t);\n\t}\n\n\tchangeSettingsResult(result)\n\t{\n\t\tif (!BX.type.isPlainObject(result))\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tif (result.success === 'Y')\n\t\t{\n\t\t\tthis.loadIblockList();\n\t\t}\n\t\telse\n\t\t{\n\t\t\tthis.stopOperation();\n\t\t}\n\t}\n\n\tstopOperation()\n\t{\n\t\tthis.finish = true;\n\t}\n\n\tcheckIblockIndex()\n\t{\n\t\treturn !(\n\t\t\tthis.iblocks.length === 0\n\t\t\t|| this.iblockIndex < 0\n\t\t\t|| this.iblockIndex >= this.iblocks.length\n\t\t);\n\t}\n\n\tloadIblockList()\n\t{\n\t\tBX.ajax.loadJSON(\n\t\t\tthis.url,\n\t\t\t{\n\t\t\t\tsessid: BX.bitrix_sessid(),\n\t\t\t\tgetIblock: 'Y'\n\t\t\t},\n\t\t\t(result) => {\n\t\t\t\tif (BX.type.isArray(result))\n\t\t\t\t{\n\t\t\t\t\tthis.iblocks = result;\n\t\t\t\t\tif (this.iblocks.length > 0)\n\t\t\t\t\t{\n\t\t\t\t\t\tthis.iblockIndex = 0;\n\t\t\t\t\t\tthis.iblockReindex();\n\t\t\t\t\t}\n\t\t\t\t\telse\n\t\t\t\t\t{\n\t\t\t\t\t\tthis.stopOperation();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t);\n\t}\n\n\tiblockReindex()\n\t{\n\t\tif (this.finish || !this.checkIblockIndex())\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tthis.initStep();\n\t\tthis.nextStep();\n\t}\n\n\tinitStep()\n\t{\n\t\tthis.currentState.iblockId = this.iblocks[this.iblockIndex].ID;\n\t\tthis.currentState.counter = this.iblocks[this.iblockIndex].COUNT;\n\t\tthis.currentState.operationCounter = 0;\n\t\tthis.currentState.errorCounter = 0;\n\t\tthis.currentState.lastID = 0;\n\t}\n\n\tcheckOperation(result)\n\t{\n\t\tif (!!result)\n\t\t{\n\t\t\tthis.iblockIndex++;\n\t\t\tif (this.iblockIndex >= this.iblocks.length || this.currentState.errorCounter > 0)\n\t\t\t{\n\t\t\t\tthis.finishOperation();\n\t\t\t\tif (this.currentState.errorCounter == 0)\n\t\t\t\t{\n\t\t\t\t\tthis.finalRequest();\n\t\t\t\t}\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tthis.initStep();\n\t\t\t\tthis.nextStep();\n\t\t\t}\n\t\t}\n\t\telse\n\t\t{\n\t\t\tthis.nextStep();\n\t\t}\n\t}\n\n\tfinalRequest()\n\t{\n\t\tlet iblockList = [];\n\n\t\tif (this.iblocks.length > 0)\n\t\t{\n\t\t\tfor (let i = 0; i < this.iblocks.length; i++)\n\t\t\t{\n\t\t\t\tiblockList[iblockList.length] = this.iblocks[i].ID;\n\t\t\t}\n\n\t\t\tBX.ajax.get(\n\t\t\t\tthis.url,\n\t\t\t\t{\n\t\t\t\t\tsessid: BX.bitrix_sessid(),\n\t\t\t\t\tfinalRequest: 'Y',\n\t\t\t\t\tiblockList,\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\t}\n}\n\nexport {\n\tProductSettingsUpdater\n};\n","import { ProductSettingsUpdater } from './updater';\nimport { Dom, Loc, Tag } from 'main.core';\nimport 'ui.progressbar';\n\nexport default class\n{\n\t#settings: Object;\n\t#currentIblockName = null;\n\t#allCount = 0;\n\t#doneCount = 0;\n\t#onComplete: function;\n\n\t#elements = {};\n\n\tconstructor(props)\n\t{\n\t\tthis.#settings = props.settings;\n\t\tthis.#onComplete = props.onComplete;\n\n\t\t(new ProductSettingsUpdater({\n\t\t\tsettings: this.#settings,\n\t\t\tevents: {\n\t\t\t\tonProgress: (data) => {\n\t\t\t\t\tthis.#currentIblockName = data.currentIblockName;\n\t\t\t\t\tthis.#allCount = data.allCnt;\n\t\t\t\t\tthis.#doneCount = data.doneCnt;\n\t\t\t\t\tthis.#redraw();\n\t\t\t\t},\n\t\t\t\tonComplete: () => {\n\t\t\t\t\tthis.#onComplete();\n\t\t\t\t},\n\t\t\t},\n\t\t})).startOperation();\n\t}\n\n\t#getProgressWidth(): string\n\t{\n\t\tlet width = 0;\n\t\tif (this.#allCount > 0)\n\t\t{\n\t\t\twidth = Math.round((this.#doneCount / this.#allCount) * 100);\n\t\t}\n\n\t\treturn `${width}%`;\n\t}\n\n\t#redraw()\n\t{\n\t\tthis.#elements.text.innerHTML = Loc.getMessage('CAT_CONFIG_SETTINGS_OUT_OF')\n\t\t\t.replace('#PROCESSED#', this.#doneCount)\n\t\t\t.replace('#TOTAL#', this.#allCount)\n\t\t;\n\t\tthis.#elements.currentIblock.innerHTML = Loc.getMessage('CAT_CONFIG_SETTINGS_PRODUCT_SETTINGS_CURRENT_CATALOG')\n\t\t\t.replace('#CATALOG_NAME#', this.#currentIblockName)\n\t\t;\n\t\tDom.style(this.#elements.progressBar, 'width', this.#getProgressWidth());\n\t}\n\n\trender(): HTMLElement\n\t{\n\t\tconst processedText = Loc.getMessage('CAT_CONFIG_SETTINGS_OUT_OF')\n\t\t\t.replace('#PROCESSED#', this.#doneCount)\n\t\t\t.replace('#TOTAL#', this.#allCount)\n\t\t;\n\t\tthis.#elements.text = Tag.render`\n\t\t\t<div class=\"ui-progressbar-text-after\">\n\t\t\t\t${processedText}\n\t\t\t</div>\n\t\t`;\n\t\tthis.#elements.currentIblock = Tag.render`\n\t\t\t<div style=\"padding-top: 10px;\">\n\t\t\t</div>\n\t\t`;\n\t\tthis.#elements.progressBar = Tag.render`\n\t\t\t<div class=\"ui-progressbar-bar\"></div>\n\t\t`;\n\t\tDom.style(this.#elements.progressBar, 'width', this.#getProgressWidth());\n\n\t\treturn Tag.render`\n\t\t\t<div>\n\t\t\t\t<div class=\"ui-progressbar ui-progressbar-column\">\n\t\t\t\t\t<div style=\"font-weight: bold;\" class=\"ui-progressbar-text-before\">\n\t\t\t\t\t\t${Loc.getMessage('CAT_CONFIG_SETTINGS_PRODUCT_SETTINGS_UPDATE_TITLE')}\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"ui-progressbar-track\">\n\t\t\t\t\t\t${this.#elements.progressBar}\n\t\t\t\t\t</div>\n\t\t\t\t\t${this.#elements.text}\n\t\t\t\t</div>\n\t\t\t\t<div style=\"color: rgb(83, 92, 105); font-size: 12px;\">\n\t\t\t\t\t${Loc.getMessage('CAT_CONFIG_SETTINGS_PRODUCT_SETTINGS_UPDATE_WAIT')}\n\t\t\t\t\t${this.#elements.currentIblock}\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t`;\n\t}\n}\n","import { Event, Loc } from 'main.core';\nimport { Alert, AlertColor, AlertSize } from 'ui.alerts';\nimport { BaseSettingsPage, SettingsSection, SettingsRow, SettingsField } from 'ui.form-elements.field';\nimport { Section, Row } from 'ui.section';\nimport { Selector } from 'ui.form-elements.view';\n\nexport default class CostPriceCalculation\n{\n\t#parentPage: BaseSettingsPage;\n\t#costPriceCalculationParams: Object;\n\n\tconstructor(params: Object)\n\t{\n\t\tthis.#costPriceCalculationParams = params.costPriceCalculationParams;\n\t\tthis.#parentPage = params.parentPage;\n\t}\n\n\tbuildSection(): SettingsSection\n\t{\n\t\tconst section = new Section({\n\t\t\ttitle: Loc.getMessage('CAT_CONFIG_SETTINGS_COST_PRICE_CALCULATION_SECTION_TITLE'),\n\t\t\ttitleIconClasses: 'ui-icon-set --numbered-list',\n\t\t\tisOpen: true,\n\t\t});\n\n\t\tconst costPriceCalculationSection = new SettingsSection({\n\t\t\tparent: this.#parentPage,\n\t\t\tsection,\n\t\t});\n\n\t\tsection.append(\n\t\t\t(new Row({\n\t\t\t\tcontent: (new Alert({\n\t\t\t\t\ttext: `\n\t\t\t\t\t\t\t${Loc.getMessage('CAT_CONFIG_SETTINGS_COST_PRICE_CALCULATION_SECTION_HINT')}\n\t\t\t\t\t\t\t<a class=\"ui-section__link\" onclick=\"top.BX.Helper.show('redirect=detail&code=17858278')\">\n\t\t\t\t\t\t\t\t${Loc.getMessage('INTRANET_SETTINGS_CANCEL_MORE')}\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t`,\n\t\t\t\t\tinline: true,\n\t\t\t\t\tsize: AlertSize.SMALL,\n\t\t\t\t\tcolor: AlertColor.PRIMARY,\n\t\t\t\t})).getContainer(),\n\t\t\t})).render(),\n\t\t);\n\n\t\tconst selector = new Selector({\n\t\t\tlabel: Loc.getMessage('CAT_CONFIG_SETTINGS_COST_PRICE_CALCULATION_METHOD'),\n\t\t\tname: 'costPriceCalculationMethod',\n\t\t\titems: this.#costPriceCalculationParams.items,\n\t\t\thints: this.#costPriceCalculationParams.hints,\n\t\t\tisFieldDisabled: true,\n\t\t});\n\n\t\tselector.getInputNode().setAttribute('required', 'required');\n\t\tEvent.bind(selector.getInputNode(), 'change', () => {\n\t\t\tconst alert = (new Alert({\n\t\t\t\ttext: `\n\t\t\t\t\t${Loc.getMessage('CAT_CONFIG_SETTINGS_COST_PRICE_CALCULATION_SECTION_WARNING')}\n\t\t\t\t\t<a class=\"ui-section__link\" onclick=\"top.BX.Helper.show('redirect=detail&code=17858278')\">\n\t\t\t\t\t\t${Loc.getMessage('INTRANET_SETTINGS_CANCEL_MORE')}\n\t\t\t\t\t</a>\n\t\t\t\t`,\n\t\t\t\tinline: true,\n\t\t\t\tsize: AlertSize.SMALL,\n\t\t\t\tcolor: AlertColor.WARNING,\n\t\t\t})).getContainer();\n\n\t\t\tconst row = (new Row({\n\t\t\t\tcontent: alert,\n\t\t\t})).render();\n\n\t\t\tsection.prepend(row);\n\t\t});\n\n\t\tnew SettingsRow({\n\t\t\tparent: costPriceCalculationSection,\n\t\t\tchild: new SettingsField({\n\t\t\t\tfieldView: selector,\n\t\t\t}),\n\t\t});\n\n\t\treturn costPriceCalculationSection;\n\t}\n}\n","import { ExternalCatalogPlacement } from 'catalog.external-catalog-placement';\nimport { ModeList } from 'catalog.store-enable-wizard';\nimport { OneCPlanRestrictionSlider } from 'catalog.tool-availability-manager';\nimport { ajax as Ajax, Dom, Event, Loc, Tag } from 'main.core';\nimport { Label, LabelColor, LabelSize } from 'ui.label';\n\ntype ModeStatusParams = {\n\tisInventoryManagementEnabled: boolean,\n\tis1cRestricted: boolean,\n\tcurrentMode: string,\n\tonecStatusUrl: Object,\n};\n\nexport default class ModeStatus\n{\n\t#isInventoryManagementEnabled: boolean;\n\t#is1cRestricted: boolean;\n\t#currentMode: string;\n\t#onecStatusUrl: string;\n\t#rootElement: HTMLElement;\n\n\tconstructor(params: ModeStatusParams)\n\t{\n\t\tthis.#isInventoryManagementEnabled = params.isInventoryManagementEnabled;\n\t\tthis.#is1cRestricted = params.is1cRestricted;\n\t\tthis.#currentMode = params.currentMode;\n\t\tthis.#onecStatusUrl = params.onecStatusUrl;\n\t\tthis.#rootElement = Tag.render`\n\t\t\t<div id=\"inventoryManagementStatus\">\n\t\t\t</div>\n\t\t`;\n\t}\n\n\tinitialize(): HTMLElement\n\t{\n\t\tlet statusText = '';\n\t\tlet statusColor = '';\n\t\tlet labelStatus = '';\n\n\t\tif (this.#currentMode === ModeList.MODE_1C)\n\t\t{\n\t\t\tif (this.#isInventoryManagementEnabled)\n\t\t\t{\n\t\t\t\tstatusText = Loc.getMessage('CAT_CONFIG_SETTINGS_MODE_STATUS_CHECKING');\n\t\t\t\tstatusColor = LabelColor.LIGHT;\n\t\t\t\tlabelStatus = 'loading';\n\n\t\t\t\tExternalCatalogPlacement.create().initialize()\n\t\t\t\t\t.then(() => {\n\t\t\t\t\t\tthis.update({\n\t\t\t\t\t\t\ttext: Loc.getMessage('CAT_CONFIG_SETTINGS_MODE_STATUS_CONNECTED'),\n\t\t\t\t\t\t\tcolor: LabelColor.LIGHT_GREEN,\n\t\t\t\t\t\t});\n\t\t\t\t\t})\n\t\t\t\t\t.catch(() => {\n\t\t\t\t\t\tthis.update({\n\t\t\t\t\t\t\ttext: Loc.getMessage('CAT_CONFIG_SETTINGS_MODE_STATUS_1C_NOT_CONNECTED'),\n\t\t\t\t\t\t\tcolor: LabelColor.LIGHT_RED,\n\t\t\t\t\t\t});\n\t\t\t\t\t});\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tstatusText = Loc.getMessage('CAT_CONFIG_SETTINGS_MODE_STATUS_1C_NOT_CONNECTED');\n\t\t\t\tstatusColor = LabelColor.LIGHT;\n\t\t\t}\n\t\t}\n\n\t\tconst label = new Label({\n\t\t\ttext: statusText,\n\t\t\tcolor: statusColor,\n\t\t\tsize: LabelSize.LG,\n\t\t\tfill: true,\n\t\t\tstatus: labelStatus,\n\t\t});\n\n\t\tthis.#render(label);\n\n\t\treturn this.#rootElement;\n\t}\n\n\t#refreshAppLink(): void\n\t{\n\t\tAjax.runComponentAction(\n\t\t\t'bitrix:catalog.config.settings',\n\t\t\t'refreshAppLink',\n\t\t\t{\n\t\t\t\tmode: 'class',\n\t\t\t},\n\t\t).then((response) => {\n\t\t\tif (!response.data)\n\t\t\t{\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis.#onecStatusUrl = response.data;\n\t\t});\n\t}\n\n\t#refreshStatus(): void\n\t{\n\t\tExternalCatalogPlacement.create().reset();\n\t}\n\n\tupdate({ text, color }: { text: string, color: string }): void\n\t{\n\t\tif (!this.#rootElement)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tconst label = new Label({\n\t\t\ttext,\n\t\t\tcolor,\n\t\t\tsize: LabelSize.LG,\n\t\t\tfill: true,\n\t\t});\n\n\t\tthis.#render(label);\n\t}\n\n\t#render(label: Label): void\n\t{\n\t\tconst settingsLinkElement = this.#getSettingsLinkElement();\n\t\tconst labelElement = label.render();\n\n\t\tlet clickHandler = () => {};\n\n\t\tif (this.#is1cRestricted)\n\t\t{\n\t\t\tclickHandler = (event) => {\n\t\t\t\tevent.preventDefault();\n\n\t\t\t\tOneCPlanRestrictionSlider.show();\n\t\t\t};\n\t\t}\n\t\telse if (this.#onecStatusUrl.type === 'app')\n\t\t{\n\t\t\tclickHandler = (event) => {\n\t\t\t\tevent.preventDefault();\n\n\t\t\t\ttop.BX.rest.AppLayout.openApplication(\n\t\t\t\t\tthis.#onecStatusUrl.value,\n\t\t\t\t\t{\n\t\t\t\t\t\tsource: 'inventory-management',\n\t\t\t\t\t},\n\t\t\t\t\tfalse,\n\t\t\t\t\t() => {\n\t\t\t\t\t\tthis.#refreshStatus();\n\t\t\t\t\t\tthis.initialize();\n\t\t\t\t\t},\n\t\t\t\t);\n\t\t\t};\n\t\t}\n\t\telse\n\t\t{\n\t\t\tclickHandler = (event) => {\n\t\t\t\tevent.preventDefault();\n\n\t\t\t\tBX.SidePanel.Instance.open(this.#onecStatusUrl.value, {\n\t\t\t\t\tcustomLeftBoundary: 0,\n\t\t\t\t\tcacheable: false,\n\t\t\t\t\tloader: 'market:detail',\n\t\t\t\t\twidth: 1162,\n\t\t\t\t\tevents: {\n\t\t\t\t\t\tonClose: () => {\n\t\t\t\t\t\t\tthis.#refreshAppLink();\n\t\t\t\t\t\t\tthis.#refreshStatus();\n\t\t\t\t\t\t\tthis.initialize();\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t});\n\t\t\t};\n\t\t}\n\n\t\tEvent.bind(settingsLinkElement, 'click', clickHandler);\n\n\t\tDom.clean(this.#rootElement);\n\t\tDom.append(labelElement, this.#rootElement);\n\t\tDom.append(settingsLinkElement, this.#rootElement);\n\t}\n\n\t#getSettingsLinkElement(): HTMLElement\n\t{\n\t\tconst before = this.#is1cRestricted ? '<span class=\"tariff-lock\"></span>' : '';\n\n\t\treturn Tag.render`\n\t\t\t<span class=\"catalog-settings-inventory-management-mode-settings-container\">\n\t\t\t\t${before}\n\t\t\t\t<a href=\"${this.#onecStatusUrl.value}\" class=\"catalog-settings-inventory-management-mode-settings\" data-slider-ignore-autobinding=\"true\">\n\t\t\t\t\t${Loc.getMessage('CAT_CONFIG_SETTINGS_MODE_STATUS_SETTINGS')}\n\t\t\t\t</a>\n\t\t\t</span>\n\t\t`;\n\t}\n}\n","import { Event, Loc, Runtime, Tag } from 'main.core';\nimport { Button, ButtonColor } from 'ui.buttons';\nimport { SettingsSection } from 'ui.form-elements.field';\nimport { UI } from 'ui.notification';\nimport { Section, Row } from 'ui.section';\nimport { EnableWizardOpener, ModeList, Disabler, AnalyticsContextList } from 'catalog.store-enable-wizard';\nimport CatalogPage from '../catalog-page';\nimport ModeStatus from './components/mode-status';\n\nexport default class Mode\n{\n\t#parentPage: CatalogPage;\n\t#inventoryManagementParams: Object;\n\t#configCatalogSource: ?string = null;\n\t#inventoryManagementDisabler: Disabler = null;\n\n\tconstructor(params: Object)\n\t{\n\t\tthis.#parentPage = params.parentPage;\n\t\tthis.#inventoryManagementParams = params.inventoryManagementParams;\n\n\t\tthis.#configCatalogSource = params.configCatalogSource;\n\t\tthis.#inventoryManagementDisabler = new Disabler({\n\t\t\thasConductedDocumentsOrQuantities: this.#inventoryManagementParams.hasConductedDocumentsOrQuantities,\n\t\t\tevents: {\n\t\t\t\tonDisabled: () => {\n\t\t\t\t\tthis.#parentPage.onInventoryManagementModeChanged({\n\t\t\t\t\t\tisEnabled: false,\n\t\t\t\t\t\tmode: ModeList.MODE_B24,\n\t\t\t\t\t});\n\t\t\t\t},\n\t\t\t},\n\t\t});\n\t}\n\n\tbuildSection(): SettingsSection\n\t{\n\t\tconst section = new Section({\n\t\t\ttitle: Loc.getMessage('CAT_CONFIG_SETTINGS_MODE_SECTION_TITLE'),\n\t\t\ttitleIconClasses: 'ui-icon-set --settings',\n\t\t\tisOpen: true,\n\t\t});\n\n\t\tconst modeSection = new SettingsSection({\n\t\t\tparent: this.#parentPage,\n\t\t\tsection,\n\t\t});\n\n\t\tsection.append(\n\t\t\t(new Row({\n\t\t\t\tcontent: this.#getCurrentModeBlock(),\n\t\t\t})).render(),\n\t\t);\n\n\t\treturn modeSection;\n\t}\n\n\topenInventoryManagementSlider(): void\n\t{\n\t\tlet sliderUrl = '/bitrix/components/bitrix/catalog.store.enablewizard/slider.php';\n\t\tif (this.#configCatalogSource)\n\t\t{\n\t\t\tsliderUrl += `?inventoryManagementSource=${this.#configCatalogSource}`;\n\t\t}\n\t\tnew EnableWizardOpener().open(\n\t\t\tsliderUrl,\n\t\t\t{\n\t\t\t\turlParams: {\n\t\t\t\t\tanalyticsContextSection: AnalyticsContextList.SETTINGS,\n\t\t\t\t},\n\t\t\t},\n\t\t)\n\t\t\t.then((slider) => {\n\t\t\t\tif (!slider)\n\t\t\t\t{\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tconst isEnabled = slider.getData().get('isInventoryManagementEnabled');\n\t\t\t\tconst mode = slider.getData().get('inventoryManagementMode');\n\t\t\t\tif (\n\t\t\t\t\t(isEnabled !== undefined && isEnabled !== this.#inventoryManagementParams.isEnabled)\n\t\t\t\t\t|| (mode !== undefined && mode !== this.#inventoryManagementParams.currentMode)\n\t\t\t\t)\n\t\t\t\t{\n\t\t\t\t\tthis.#parentPage.onInventoryManagementModeChanged({\n\t\t\t\t\t\tisEnabled,\n\t\t\t\t\t\tmode,\n\t\t\t\t\t});\n\n\t\t\t\t\tdocument.querySelector('.catalog-settings-inventory-management-mode-wrapper')?.scrollIntoView();\n\n\t\t\t\t\tif (\n\t\t\t\t\t\tthis.#inventoryManagementParams.isEnabled\n\t\t\t\t\t\t&& isEnabled\n\t\t\t\t\t\t&& mode !== this.#inventoryManagementParams.currentMode\n\t\t\t\t\t)\n\t\t\t\t\t{\n\t\t\t\t\t\tUI.Notification.Center.notify({\n\t\t\t\t\t\t\tcontent: Loc.getMessage('CAT_CONFIG_SETTINGS_MODE_CHANGED'),\n\t\t\t\t\t\t});\n\n\t\t\t\t\t\tthis.#parentPage.updateDataAfterSave();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t}\n\n\t#getCurrentModeBlock(): HTMLElement\n\t{\n\t\tconst isInventoryManagementEnabled = this.#inventoryManagementParams.isEnabled;\n\t\tconst currentMode = this.#inventoryManagementParams.currentMode;\n\t\tconst is1cRestricted = this.#inventoryManagementParams.is1cRestricted;\n\n\t\tlet modeLogo = '';\n\n\t\tif (currentMode === ModeList.MODE_1C)\n\t\t{\n\t\t\tmodeLogo = Tag.render`\n\t\t\t\t<div class=\"catalog-settings-inventory-management-mode-external-logo\"></div>\n\t\t\t`;\n\t\t}\n\t\telse\n\t\t{\n\t\t\tmodeLogo = Loc.getMessage('CAT_CONFIG_SETTINGS_B24_LOGO')\n\t\t\t\t.replace('[color]', '<span class=\"catalog-settings-inventory-management-mode-b24-numbers\">')\n\t\t\t\t.replace('[/color]', '</span>')\n\t\t\t;\n\t\t\tmodeLogo = Tag.render`\n\t\t\t\t<span class=\"catalog-settings-inventory-management-mode-b24-name\">${modeLogo}</span>\n\t\t\t`;\n\t\t}\n\n\t\tconst changeModeButton = new Button({\n\t\t\ttext: Loc.getMessage('CAT_CONFIG_SETTINGS_MODE_CHANGE'),\n\t\t\tcolor: ButtonColor.LIGHT,\n\t\t\tonclick: (button, event) => {\n\t\t\t\tthis.#sendEvent('disable_clicked');\n\n\t\t\t\tthis.openInventoryManagementSlider();\n\t\t\t},\n\t\t});\n\n\t\tconst toggleButton = new Button({\n\t\t\ttext: isInventoryManagementEnabled\n\t\t\t\t? Loc.getMessage('CAT_CONFIG_SETTINGS_MODE_DISABLE')\n\t\t\t\t: Loc.getMessage('CAT_CONFIG_SETTINGS_MODE_ENABLE'),\n\t\t\tcolor: isInventoryManagementEnabled ? ButtonColor.LIGHT : ButtonColor.PRIMARY,\n\t\t\tonclick: (button, event) => {\n\t\t\t\tif (isInventoryManagementEnabled)\n\t\t\t\t{\n\t\t\t\t\tthis.#sendEvent('change_mode_clicked');\n\n\t\t\t\t\tthis.#inventoryManagementDisabler.open();\n\t\t\t\t}\n\t\t\t\telse\n\t\t\t\t{\n\t\t\t\t\tthis.openInventoryManagementSlider();\n\t\t\t\t}\n\t\t\t},\n\t\t\tround: !isInventoryManagementEnabled,\n\t\t});\n\n\t\tconst showChangeModeButton = (\n\t\t\tthis.#inventoryManagementParams.availableModes.includes(ModeList.MODE_1C)\n\t\t\t&& isInventoryManagementEnabled\n\t\t);\n\n\t\tlet descriptionContent = Loc.getMessage('CAT_CONFIG_SETTINGS_B24_MODE_DESCRIPTION');\n\t\tlet descriptionClass = 'catalog-settings-inventory-management-mode-description';\n\t\tif (currentMode === ModeList.MODE_1C)\n\t\t{\n\t\t\tconst onecStatusUrl = this.#inventoryManagementParams.onecStatusUrl;\n\t\t\tdescriptionContent = (new ModeStatus({\n\t\t\t\tcurrentMode,\n\t\t\t\tisInventoryManagementEnabled,\n\t\t\t\tonecStatusUrl,\n\t\t\t\tis1cRestricted,\n\t\t\t})).initialize();\n\t\t\tdescriptionClass = 'catalog-settings-inventory-management-mode-status';\n\t\t}\n\n\t\treturn Tag.render`\n\t\t\t<div>\n\t\t\t\t<div class=\"catalog-settings-inventory-management-mode-wrapper\">\n\t\t\t\t\t<div class=\"catalog-settings-inventory-management-mode-inner\">\n\t\t\t\t\t\t<div class=\"catalog-settings-inventory-management-mode-selected ${isInventoryManagementEnabled ? '' : '--disabled'}\">\n\t\t\t\t\t\t\t<div class=\"catalog-settings-inventory-management-mode-name\">${modeLogo}</div>\n\t\t\t\t\t\t\t<div class=\"${descriptionClass}\">\n\t\t\t\t\t\t\t\t${descriptionContent}\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div class=\"catalog-settings-inventory-management-mode-buttons\">\n\t\t\t\t\t\t\t${showChangeModeButton ? changeModeButton.render() : ''}\n\t\t\t\t\t\t\t${toggleButton.render()}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t\t<div>\n\t\t\t\t\t<p class=\"catalog-settings-inventory-management-mode-warning\">\n\t\t\t\t\t\t${Loc.getMessage('CAT_CONFIG_SETTINGS_MODE_CHANGE_WARNING').replace('[break]', '<br/>')}\n\t\t\t\t\t</p>\n\t\t\t\t\t${this.#getHelpLink()}\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t`;\n\t}\n\n\t#sendEvent(event: string): void\n\t{\n\t\tRuntime.loadExtension('ui.analytics')\n\t\t\t.then((exports) => {\n\t\t\t\tconst { sendData } = exports;\n\n\t\t\t\tsendData({\n\t\t\t\t\ttool: 'inventory',\n\t\t\t\t\tcategory: 'settings',\n\t\t\t\t\tc_section: 'settings',\n\t\t\t\t\tp1: `mode_${this.#inventoryManagementParams.currentMode}`,\n\t\t\t\t\tevent,\n\t\t\t\t});\n\t\t\t});\n\t}\n\n\t#getHelpLink(): HTMLElement\n\t{\n\t\tconst result = Tag.render`\n\t\t\t<a class=\"catalog-settings-inventory-management-mode-help ui-section__link\">\n\t\t\t\t${Loc.getMessage('CAT_CONFIG_SETTINGS_MODE_HELP')}\n\t\t\t</a>\n\t\t`;\n\t\tEvent.bind(result, 'click', () => {\n\t\t\tif (top.BX && top.BX.Helper)\n\t\t\t{\n\t\t\t\tconst helpCode = this.#inventoryManagementParams.availableModes.length > 1\n\t\t\t\t\t? '20233748'\n\t\t\t\t\t: '15992592';\n\n\t\t\t\ttop.BX.Helper.show(`redirect=detail&code=${helpCode}`);\n\t\t\t}\n\t\t});\n\n\t\treturn result;\n\t}\n}\n","import { Event, Loc, Tag } from 'main.core';\nimport { EventEmitter } from 'main.core.events';\nimport { Popup } from 'main.popup';\nimport { Button } from 'ui.buttons';\nimport { BaseSettingsPage, SettingsSection, SettingsRow, SettingsField } from 'ui.form-elements.field';\nimport { Checker, Selector } from 'ui.form-elements.view';\n\nexport default class Products\n{\n\t#parentPage: BaseSettingsPage;\n\t#values: Object;\n\n\tconstructor(params: Object)\n\t{\n\t\tthis.#parentPage = params.parentPage;\n\t\tthis.#values = params.values;\n\t}\n\n\tbuildSection(): SettingsSection\n\t{\n\t\tconst productsSection = new SettingsSection({\n\t\t\tparent: this.#parentPage,\n\t\t\tsection: {\n\t\t\t\ttitle: Loc.getMessage('CAT_CONFIG_SETTINGS_PRODUCTS_SECTION_TITLE'),\n\t\t\t\ttitleIconClasses: 'ui-icon-set --cubes-3',\n\t\t\t\tisOpen: true,\n\t\t\t},\n\t\t});\n\n\t\tnew SettingsRow({\n\t\t\tparent: productsSection,\n\t\t\tchild: new SettingsField({\n\t\t\t\tfieldView: (new Checker({\n\t\t\t\t\tinputName: 'defaultSubscribe',\n\t\t\t\t\ttitle: Loc.getMessage('CAT_CONFIG_SETTINGS_DEFAULT_SUBSCRIBE'),\n\t\t\t\t\tchecked: this.#values.defaultSubscribe === 'Y',\n\t\t\t\t})),\n\t\t\t}),\n\t\t});\n\n\t\tconst isInventoryManagementEnabled = this.#values.isEnabledInventoryManagement;\n\t\tconst isEmptyCostPriceCalculationMethod = this.#values.costPriceCalculationMethod.current === '';\n\n\t\tconst isCanBuyZeroInDocsVisible = isInventoryManagementEnabled && isEmptyCostPriceCalculationMethod;\n\n\t\tif (isCanBuyZeroInDocsVisible)\n\t\t{\n\t\t\tnew SettingsRow({\n\t\t\t\tparent: productsSection,\n\t\t\t\tchild: new SettingsField({\n\t\t\t\t\tfieldView: (new Checker({\n\t\t\t\t\t\tinputName: 'checkRightsOnDecreaseStoreAmount',\n\t\t\t\t\t\ttitle: Loc.getMessage('CAT_CONFIG_SETTINGS_DEFAULT_CAN_BUY_ZERO_IN_DOCS'),\n\t\t\t\t\t\tchecked: this.#values.checkRightsOnDecreaseStoreAmount === 'Y',\n\t\t\t\t\t\thintOn:\n\t\t\t\t\t\t\tLoc\n\t\t\t\t\t\t\t\t.getMessage('CAT_CONFIG_SETTINGS_DEFAULT_CAN_BUY_ZERO_IN_DOCS_HINT')\n\t\t\t\t\t\t\t\t.replace('[link]', '<a class=\"ui-section__link\" onclick=\"top.BX.Helper.show(\\'redirect=detail&code=15706692&anchor=products\\')\">')\n\t\t\t\t\t\t\t\t.replace('[/link]', '</a>')\n\t\t\t\t\t\t,\n\t\t\t\t\t})),\n\t\t\t\t}),\n\t\t\t});\n\t\t}\n\n\t\tnew SettingsRow({\n\t\t\tparent: productsSection,\n\t\t\tchild: new SettingsField({\n\t\t\t\tfieldView: (new Checker({\n\t\t\t\t\tinputName: 'defaultProductVatIncluded',\n\t\t\t\t\ttitle: Loc.getMessage('CAT_CONFIG_SETTINGS_SET_VAT_IN_PRICE_FOR_NEW_PRODUCTS'),\n\t\t\t\t\tchecked: this.#values.defaultProductVatIncluded === 'Y',\n\t\t\t\t})),\n\t\t\t}),\n\t\t});\n\n\t\tconst isDefaultCanBuyZeroVisible = this.#values.isReservationUsed && this.#values.hasAccessToChangeCanBuyZero;\n\t\tif (isDefaultCanBuyZeroVisible)\n\t\t{\n\t\t\tnew SettingsRow({\n\t\t\t\tparent: productsSection,\n\t\t\t\tchild: new SettingsField({\n\t\t\t\t\tfieldView: (new Checker({\n\t\t\t\t\t\tinputName: 'defaultCanBuyZero',\n\t\t\t\t\t\ttitle: Loc.getMessage('CAT_CONFIG_SETTINGS_DEFAULT_CAN_BUY_ZERO'),\n\t\t\t\t\t\tchecked: this.#values.defaultCanBuyZero === 'Y',\n\t\t\t\t\t\thintOn: Loc.getMessage('CAT_CONFIG_SETTINGS_DEFAULT_CAN_BUY_ZERO_HINT'),\n\t\t\t\t\t})),\n\t\t\t\t}),\n\t\t\t});\n\t\t}\n\n\t\tconst initDefaultQuantityTrace = this.#values.defaultQuantityTrace;\n\t\tconst isDefaultQuantityTraceVisible = initDefaultQuantityTrace === 'Y' && !isInventoryManagementEnabled;\n\t\tif (isDefaultQuantityTraceVisible)\n\t\t{\n\t\t\tconst defaultQuantityTraceChecker = (new Checker({\n\t\t\t\tinputName: 'defaultQuantityTrace',\n\t\t\t\ttitle: Loc.getMessage('CAT_CONFIG_SETTINGS_DEFAULT_QUANTITY_TRACE'),\n\t\t\t\tchecked: this.#values.defaultQuantityTrace === 'Y',\n\t\t\t}));\n\n\t\t\tnew SettingsRow({\n\t\t\t\tparent: productsSection,\n\t\t\t\tchild: new SettingsField({\n\t\t\t\t\tfieldView: defaultQuantityTraceChecker,\n\t\t\t\t}),\n\t\t\t});\n\n\t\t\tEventEmitter.subscribe(\n\t\t\t\tdefaultQuantityTraceChecker.switcher,\n\t\t\t\t'toggled',\n\t\t\t\t() => {\n\t\t\t\t\tif (defaultQuantityTraceChecker.isChecked())\n\t\t\t\t\t{\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\tthis.#showQuantityTracePopup();\n\t\t\t\t},\n\t\t\t);\n\t\t}\n\n\t\tif (this.#values.canEnableProductCardSlider)\n\t\t{\n\t\t\tconst canEnableProductCardSliderChecker = (new Checker({\n\t\t\t\tinputName: 'productCardSliderEnabled',\n\t\t\t\ttitle: Loc.getMessage('CAT_CONFIG_SETTINGS_PRODUCT_CARD_ENABLE_NEW_CARD'),\n\t\t\t\tchecked: this.#values.productCardSliderEnabled === 'Y',\n\t\t\t}));\n\n\t\t\tnew SettingsRow({\n\t\t\t\tparent: productsSection,\n\t\t\t\tchild: new SettingsField({\n\t\t\t\t\tfieldView: canEnableProductCardSliderChecker,\n\t\t\t\t}),\n\t\t\t});\n\n\t\t\tEventEmitter.subscribe(\n\t\t\t\tcanEnableProductCardSliderChecker.switcher,\n\t\t\t\t'toggled',\n\t\t\t\t() => {\n\t\t\t\t\tif (!canEnableProductCardSliderChecker.isChecked())\n\t\t\t\t\t{\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\tthis.#showNewCardPopup(canEnableProductCardSliderChecker);\n\t\t\t\t},\n\t\t\t);\n\t\t}\n\n\t\tObject.keys(this.#values.vats.hints).forEach((hint) => {\n\t\t\tthis.#values.vats.hints[hint] = this.#values.vats.hints[hint].replace('#MORE_DETAILS#', `\n\t\t\t\t<a class=\"ui-section__link\"\n\t\t\t\t\tonclick=\"top.BX.Helper.show('redirect=detail&code=15706692&anchor=products')\">${Loc.getMessage('CAT_CONFIG_SETTINGS_MODE_HELP')}</a>\n\t\t\t`);\n\t\t});\n\n\t\tconst vatSelector = new Selector({\n\t\t\tlabel: Loc.getMessage('CAT_CONFIG_SETTINGS_DEFAULT_VAT'),\n\t\t\tname: 'defaultProductVatId',\n\t\t\titems: this.#values.vats.items,\n\t\t\thints: this.#values.vats.hints,\n\t\t});\n\n\t\tnew SettingsRow({\n\t\t\tparent: productsSection,\n\t\t\tchild: new SettingsField({\n\t\t\t\tfieldView: vatSelector,\n\t\t\t}),\n\t\t});\n\n\t\treturn productsSection;\n\t}\n\n\t#showQuantityTracePopup()\n\t{\n\t\tconst warnPopup = new Popup(null, null, {\n\t\t\tevents: {\n\t\t\t\tonPopupClose: () => warnPopup.destroy(),\n\t\t\t},\n\t\t\tcontent: Tag.render`\n\t\t\t\t<div class=\"catalog-settings-popup-content\">\n\t\t\t\t\t<h3>\n\t\t\t\t\t\t${Loc.getMessage('CAT_CONFIG_SETTINGS_TURN_OFF_QUANTITY_TRACE_TITLE')}\n\t\t\t\t\t</h3>\n\t\t\t\t\t<div class=\"catalog-settings-popup-text\">\n\t\t\t\t\t\t${Loc.getMessage('CAT_CONFIG_SETTINGS_TURN_OFF_QUANTITY_TRACE_TEXT')}\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t`,\n\t\t\tmaxWidth: 500,\n\t\t\toverlay: true,\n\t\t\tbuttons: [\n\t\t\t\tnew Button({\n\t\t\t\t\ttext: Loc.getMessage('CAT_CONFIG_SETTINGS_CLOSE'),\n\t\t\t\t\tcolor: Button.Color.PRIMARY,\n\t\t\t\t\tonclick: () => warnPopup.close(),\n\t\t\t\t}),\n\t\t\t],\n\t\t});\n\t\twarnPopup.show();\n\t}\n\n\t#showNewCardPopup(checker: Checker)\n\t{\n\t\tconst askPopup = this.#values.isBitrix24 === 'Y'\n\t\t\t? this.#createWarningProductCardPopupForBitrix24(checker)\n\t\t\t: this.#createWarningProductCardPopupForBUS(checker);\n\n\t\taskPopup.show();\n\t}\n\n\t#createWarningProductCardPopupForBitrix24(checker: Checker): Popup\n\t{\n\t\tconst askPopup = this.#createWarningProductCardPopup(\n\t\t\tLoc.getMessage('CAT_CONFIG_SETTINGS_PRODUCT_CARD_ENABLE_NEW_CARD_ASK_TEXT'),\n\t\t\t[\n\t\t\t\tnew Button({\n\t\t\t\t\ttext: Loc.getMessage('CAT_CONFIG_SETTINGS_PRODUCT_CARD_ENABLE_NEW_CARD_ASK_DISAGREE'),\n\t\t\t\t\tcolor: Button.Color.PRIMARY,\n\t\t\t\t\tonclick: () => {\n\t\t\t\t\t\tchecker.switcher.toggle();\n\t\t\t\t\t\taskPopup.close();\n\t\t\t\t\t},\n\t\t\t\t}),\n\t\t\t\tnew Button({\n\t\t\t\t\ttext: Loc.getMessage('CAT_CONFIG_SETTINGS_PRODUCT_CARD_ENABLE_NEW_CARD_ASK_AGREE'),\n\t\t\t\t\tonclick: () => askPopup.close(),\n\t\t\t\t}),\n\t\t\t],\n\t\t\t{\n\t\t\t\tonPopupShow: () => {\n\t\t\t\t\tconst helpdeskLink = document.getElementById('catalog-settings-new-productcard-popup-helpdesk');\n\t\t\t\t\tif (helpdeskLink)\n\t\t\t\t\t{\n\t\t\t\t\t\tEvent.bind(helpdeskLink, 'click', () => top.BX.Helper.show('redirect=detail&code=11657084'));\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t},\n\t\t);\n\n\t\treturn askPopup;\n\t}\n\n\t#createWarningProductCardPopupForBUS(checker: Checker): Popup\n\t{\n\t\tconst askPopup = this.#createWarningProductCardPopup(\n\t\t\tLoc.getMessage('CAT_CONFIG_SETTINGS_PRODUCT_CARD_ENABLE_NEW_CARD_ASK_BUS_TEXT').replace('#HELP_LINK#', this.#values.busProductCardHelpLink),\n\t\t\t[\n\t\t\t\tnew Button({\n\t\t\t\t\ttext: Loc.getMessage('CAT_CONFIG_SETTINGS_PRODUCT_CARD_ENABLE_NEW_CARD_ASK_AGREE'),\n\t\t\t\t\tcolor: Button.Color.SUCCESS,\n\t\t\t\t\tonclick: () => askPopup.close(),\n\t\t\t\t}),\n\t\t\t\tnew Button({\n\t\t\t\t\ttext: Loc.getMessage('CAT_CONFIG_SETTINGS_PRODUCT_CARD_ENABLE_NEW_CARD_ASK_BUS_DISAGREE'),\n\t\t\t\t\tcolor: Button.Color.LINK,\n\t\t\t\t\tonclick: () => {\n\t\t\t\t\t\tchecker.switcher.toggle();\n\t\t\t\t\t\taskPopup.close();\n\t\t\t\t\t},\n\t\t\t\t}),\n\t\t\t],\n\t\t);\n\n\t\treturn askPopup;\n\t}\n\n\t#createWarningProductCardPopup(contentText: string, buttons: Array, events = {}): Popup\n\t{\n\t\tconst popupParams = {\n\t\t\tevents: {\n\t\t\t\tonPopupClose: () => askPopup.destroy(),\n\t\t\t\t...events,\n\t\t\t},\n\t\t\tcontent: Tag.render`\n\t\t\t\t<div class=\"catalog-settings-new-productcard-popup-content\">\n\t\t\t\t\t${contentText}\n\t\t\t\t</div>\n\t\t\t`,\n\t\t\tclassName: 'catalog-settings-new-productcard-popup',\n\t\t\ttitleBar: Loc.getMessage('CAT_CONFIG_SETTINGS_PRODUCT_CARD_ENABLE_NEW_CARD_ASK_TITLE'),\n\t\t\tmaxWidth: 800,\n\t\t\toverlay: true,\n\t\t\tbuttons,\n\t\t};\n\n\t\tconst askPopup = new Popup(null, null, popupParams);\n\n\t\treturn askPopup;\n\t}\n\n\tupdateValues(newValues: Object): void\n\t{\n\t\tObject.assign(this.#values, newValues);\n\t}\n}\n","import { Dom, Tag, Text } from 'main.core';\nimport { BaseField } from 'ui.form-elements.view';\n\ntype FieldParams = {\n\tfieldName: string,\n\tsetting: Object,\n\tvalue: string,\n};\n\nexport default class ReservationMode extends BaseField\n{\n\tdefaultValue: string;\n\t#mode: FieldParams;\n\t#period: FieldParams;\n\n\tconstructor(params)\n\t{\n\t\tsuper(params);\n\t\tthis.#mode = params.mode;\n\t\tthis.#period = params.period;\n\t}\n\n\tprefixId(): string\n\t{\n\t\treturn 'reservation_';\n\t}\n\n\trenderContentField(): HTMLElement\n\t{\n\t\treturn Tag.render`\n\t\t\t<div id=\"${this.getId()}\" class=\"ui-section__field-selector --field-separator\">\n\t\t\t\t<div class=\"ui-section__field-container\">\n\t\t\t\t\t<div class=\"ui-section__field-inline-box\">\n\t\t\t\t\t\t<label class=\"ui-section__field-label\" for=\"${this.#mode.fieldName}\">${this.#mode.setting.name}</label> \n\t\t\t\t\t\t<div class=\"ui-section__field-inline-label-separator\"></div>\n\t\t\t\t\t\t<label class=\"ui-section__field-label\" for=\"${this.#period.fieldName}\">${this.#period.setting.name}</label>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"ui-section__field-inline-box\">\n\t\t\t\t\t\t<div class=\"ui-section__field\">\n\t\t\t\t\t\t\t<div class=\"${this.#getModeSelectorClasses()}\">\n\t\t\t\t\t\t\t\t<div class=\"ui-ctl-after ui-ctl-icon-angle\"></div>\n\t\t\t\t\t\t\t\t${this.#buildModeSelector()}\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div class=\"ui-section__field-inline-separator\"></div>\n\t\t\t\t\t\t<div class=\"${this.#getPeriodClasses()}\">\n\t\t\t\t\t\t\t${this.#buildPeriodInput()}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t`;\n\t}\n\n\t#getModeSelectorClasses(): string\n\t{\n\t\tlet result = 'ui-ctl ui-ctl-w100 ui-ctl-after-icon ui-ctl-dropdown';\n\n\t\tif (this.#mode.setting.disabled)\n\t\t{\n\t\t\tresult += ' ui-ctl-disabled';\n\t\t}\n\n\t\treturn result;\n\t}\n\n\t#buildModeSelector(): HTMLElement\n\t{\n\t\tconst options = [];\n\t\tfor (const { code, name } of this.#mode.setting.values)\n\t\t{\n\t\t\tlet selectedAttr = '';\n\t\t\tif (code === this.#mode.value)\n\t\t\t{\n\t\t\t\tselectedAttr = 'selected';\n\t\t\t}\n\t\t\toptions.push(Tag.render`<option ${selectedAttr} value=\"${code}\">${name}</option>`);\n\t\t}\n\n\t\tconst selector = Dom.create('select', {\n\t\t\tattrs: {\n\t\t\t\tclass: 'ui-ctl-element',\n\t\t\t\tdisabled: this.#mode.setting.disabled,\n\t\t\t},\n\t\t\tchildren: options,\n\t\t});\n\n\t\tselector.name = this.#mode.fieldName;\n\n\t\treturn selector;\n\t}\n\n\t#getPeriodClasses(): string\n\t{\n\t\tlet result = 'ui-section__hint';\n\n\t\tif (this.#period.setting.disabled)\n\t\t{\n\t\t\tresult += ' ui-ctl-disabled';\n\t\t}\n\n\t\treturn result;\n\t}\n\n\t#buildPeriodInput(): HTMLElement\n\t{\n\t\tconst periodInput = Tag.render`\n\t\t\t<input\n\t\t\t\tvalue=\"${Text.encode(this.#period.value)}\"\n\t\t\t\tname=\"${this.#period.fieldName}\"\n\t\t\t\ttype=\"text\"\n\t\t\t\tclass=\"ui-ctl-element\"\n\t\t\t>\n\t\t`;\n\n\t\tif (this.#period.setting.disabled)\n\t\t{\n\t\t\tperiodInput.disabled = true;\n\t\t}\n\n\t\treturn periodInput;\n\t}\n}\n","import { Loc } from 'main.core';\nimport { Alert, AlertColor, AlertSize } from 'ui.alerts';\nimport { BaseSettingsPage, SettingsSection, SettingsRow, SettingsField } from 'ui.form-elements.field';\nimport ReservationMode from '../fields/reservation-mode';\nimport { Checker } from 'ui.form-elements.view';\nimport { Section, Row } from 'ui.section';\nimport 'ui.icon-set.crm';\nimport 'ui.icon-set.editor';\n\nexport default class ReservationSection\n{\n\t#reservationEntities: Object;\n\t#parentPage: BaseSettingsPage;\n\n\tstatic MODE_FIELD_NAME = 'reservationSettings[deal][mode]';\n\tstatic PERIOD_FIELD_NAME = 'reservationSettings[deal][period]';\n\tstatic AUTO_WRITE_OFF_FIELD_NAME = 'reservationSettings[deal][autoWriteOffOnFinalize]';\n\n\tconstructor(params: Object)\n\t{\n\t\tthis.#reservationEntities = params.reservationEntities;\n\t\tthis.#parentPage = params.parentPage;\n\t}\n\n\t// todo: implement actual dynamic settings from the scheme parameter when reservation in other entities is implemented\n\tbuildSection(): SettingsSection\n\t{\n\t\tconst section = new Section({\n\t\t\ttitle: Loc.getMessage('CAT_CONFIG_SETTINGS_RESERVATION_SECTION_TITLE'),\n\t\t\ttitleIconClasses: 'ui-icon-set --proposal-settings',\n\t\t\tisOpen: true,\n\t\t});\n\n\t\tconst settingsSection = new SettingsSection({\n\t\t\tparent: this.#parentPage,\n\t\t\tsection,\n\t\t});\n\n\t\tconst dealSettings = this.#reservationEntities[0]?.settings;\n\t\tif (!dealSettings)\n\t\t{\n\t\t\treturn settingsSection;\n\t\t}\n\n\t\tsection.append(\n\t\t\t(new Row({\n\t\t\t\tcontent: (new Alert({\n\t\t\t\t\ttext: `\n\t\t\t\t\t\t${Loc.getMessage('CAT_CONFIG_SETTINGS_RESERVATION_SECTION_DESCRIPTION')}\n\t\t\t\t\t\t<a class=\"ui-section__link\" onclick=\"top.BX.Helper.show('redirect=detail&code=15706692&anchor=reservation')\">\n\t\t\t\t\t\t\t${Loc.getMessage('INTRANET_SETTINGS_CANCEL_MORE')}\n\t\t\t\t\t\t</a>\n\t\t\t\t\t`,\n\t\t\t\t\tinline: true,\n\t\t\t\t\tsize: AlertSize.SMALL,\n\t\t\t\t\tcolor: AlertColor.PRIMARY,\n\t\t\t\t})).getContainer(),\n\t\t\t})).render(),\n\t\t);\n\n\t\tconst modeFieldName = ReservationSection.MODE_FIELD_NAME;\n\t\tconst modeSetting = dealSettings.scheme.find((schemeElement) => {\n\t\t\treturn schemeElement.code === 'mode';\n\t\t});\n\t\tconst modeValue = dealSettings.values.mode;\n\n\t\tconst periodFieldName = ReservationSection.PERIOD_FIELD_NAME;\n\t\tconst periodSetting = dealSettings.scheme.find((schemeElement) => {\n\t\t\treturn schemeElement.code === 'period';\n\t\t});\n\t\tconst periodValue = dealSettings.values.period;\n\n\t\tnew SettingsRow({\n\t\t\trow: {\n\t\t\t\tseparator: 'bottom',\n\t\t\t\tclassName: '--block',\n\t\t\t},\n\t\t\tparent: settingsSection,\n\t\t\tchild: new SettingsField({\n\t\t\t\tfieldView: (new ReservationMode({\n\t\t\t\t\tmode: {\n\t\t\t\t\t\tfieldName: modeFieldName,\n\t\t\t\t\t\tsetting: modeSetting,\n\t\t\t\t\t\tvalue: modeValue,\n\t\t\t\t\t},\n\t\t\t\t\tperiod: {\n\t\t\t\t\t\tfieldName: periodFieldName,\n\t\t\t\t\t\tsetting: periodSetting,\n\t\t\t\t\t\tvalue: periodValue,\n\t\t\t\t\t},\n\t\t\t\t})),\n\t\t\t}),\n\t\t});\n\n\t\tconst autoWriteOffSetting = dealSettings.scheme.find((schemeElement) => {\n\t\t\treturn schemeElement.code === 'autoWriteOffOnFinalize';\n\t\t});\n\t\tconst autoWriteOffValue = dealSettings.values.autoWriteOffOnFinalize;\n\n\t\tconst checker = new Checker({\n\t\t\tinputName: ReservationSection.AUTO_WRITE_OFF_FIELD_NAME,\n\t\t\ttitle: autoWriteOffSetting.name,\n\t\t\tchecked: autoWriteOffValue,\n\t\t\thintOn: autoWriteOffSetting.description,\n\t\t\tisFieldDisabled: autoWriteOffSetting.disabled,\n\t\t\thideSeparator: true,\n\t\t});\n\n\t\tnew SettingsRow({\n\t\t\tparent: settingsSection,\n\t\t\tchild: new SettingsField({\n\t\t\t\tfieldView: checker,\n\t\t\t}),\n\t\t});\n\n\t\treturn settingsSection;\n\t}\n}\n","import { ModeList } from 'catalog.store-enable-wizard';\nimport { ajax as Ajax, Dom, Event, Loc, Tag, Type } from 'main.core';\nimport { EventEmitter } from 'main.core.events';\nimport { Popup } from 'main.popup';\nimport { Button, ButtonColor } from 'ui.buttons';\nimport { BaseSettingsPage, SettingsSection } from 'ui.form-elements.field';\nimport ProductUpdater from './product-updater/template';\nimport CostPriceCalculation from './sections/cost-price-calculation';\nimport Mode from './sections/mode';\nimport Products from './sections/products';\nimport ReservationSection from './sections/reservation';\nimport './style.css';\n\nclass CatalogPage extends BaseSettingsPage\n{\n\t#productUpdaterPopup = null;\n\t#initialData: Object = {};\n\t#slider = null;\n\n\tconstructor()\n\t{\n\t\tsuper();\n\t\tthis.titlePage = Loc.getMessage('CAT_CONFIG_SETTINGS_TITLE');\n\t\tthis.descriptionPage = Loc.getMessage('CAT_CONFIG_SETTINGS_DESCRIPTION');\n\n\t\tEventEmitter.subscribe(\n\t\t\tEventEmitter.GLOBAL_TARGET,\n\t\t\t'button-click',\n\t\t\t(event) => {\n\t\t\t\tthis.#save();\n\t\t\t},\n\t\t);\n\n\t\tthis.#slider = BX.SidePanel.Instance.getTopSlider();\n\t}\n\n\t// temporary methods, to be removed after the page is integrated with the intranet settings\n\tstatic init(settings: Object): CatalogPage\n\t{\n\t\tconst page = new CatalogPage();\n\t\tpage.setData(settings);\n\t\tpage.#initialData = settings;\n\n\t\tconst permission = Boolean(settings.hasAccessToCatalogSettings) || Boolean(settings.hasAccessToReservationSettings);\n\t\tpage.setPermission({\n\t\t\tcanRead: () => permission,\n\t\t\tcanEdit: () => permission,\n\t\t});\n\n\t\treturn page;\n\t}\n\n\t#getDataForSaving(): Object\n\t{\n\t\treturn BX.ajax.prepareForm(this.getFormNode()).data;\n\t}\n\n\t// this method will probably need to be overridden to include the saveProductSettings part\n\t#save()\n\t{\n\t\tconst isNegativeBalancePopupShown = this.#showNegativeBalancePopupIfNeeded();\n\t\tif (isNegativeBalancePopupShown)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tthis.#saveProductSettings().then(() => {\n\t\t\tconst data = this.#getDataForSaving();\n\n\t\t\treturn Ajax.runComponentAction(\n\t\t\t\t'bitrix:catalog.config.settings',\n\t\t\t\t'save',\n\t\t\t\t{\n\t\t\t\t\tmode: 'class',\n\t\t\t\t\tdata: {\n\t\t\t\t\t\tdata,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t);\n\t\t}).then(this.#onSaveSuccess.bind(this));\n\t}\n\n\t#resetSaveButton()\n\t{\n\t\tconst saveButton = document.getElementById('ui-button-panel-save');\n\t\tDom.removeClass(saveButton, 'ui-btn-wait');\n\t}\n\n\tonChange()\n\t{\n\t\tBX.UI.ButtonPanel.show();\n\t}\n\n\t#onSaveSuccess()\n\t{\n\t\tBX.UI.ButtonPanel.hide();\n\t\tthis.#resetSaveButton();\n\t\tthis.updateDataAfterSave();\n\t\tBX.SidePanel.Instance.postMessage(window, 'BX.Crm.Config.Catalog:onAfterSaveSettings');\n\t}\n\t// end temporary methods\n\n\t#saveProductSettings(): Promise\n\t{\n\t\tif (!this.#didProductSettingsChange())\n\t\t{\n\t\t\treturn Promise.resolve();\n\t\t}\n\n\t\tconst newData = this.#getDataForSaving();\n\n\t\tconst productUpdaterOptions = {\n\t\t\tsettings: {\n\t\t\t\tdefault_quantity_trace: newData.defaultQuantityTrace,\n\t\t\t\tdefault_can_buy_zero: newData.defaultCanBuyZero,\n\t\t\t\tdefault_subscribe: newData.defaultSubscribe,\n\t\t\t},\n\t\t};\n\n\t\treturn new Promise((resolve) => {\n\t\t\tproductUpdaterOptions.onComplete = () => {\n\t\t\t\tresolve();\n\t\t\t\tif (this.#needProgressBarOnProductsUpdating())\n\t\t\t\t{\n\t\t\t\t\tthis.#productUpdaterPopup.destroy();\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tconst productUpdater = (new ProductUpdater(productUpdaterOptions)).render();\n\n\t\t\tif (this.#needProgressBarOnProductsUpdating())\n\t\t\t{\n\t\t\t\tthis.#productUpdaterPopup = new Popup({\n\t\t\t\t\tcontent: productUpdater,\n\t\t\t\t\twidth: 310,\n\t\t\t\t\toverlay: true,\n\t\t\t\t\tpadding: 17,\n\t\t\t\t\tanimation: 'fading-slide',\n\t\t\t\t\tangle: false,\n\t\t\t\t});\n\t\t\t\tthis.#productUpdaterPopup.show();\n\t\t\t}\n\t\t});\n\t}\n\n\t#didProductSettingsChange(): boolean\n\t{\n\t\tconst newData = this.#getDataForSaving();\n\n\t\tconst affectedSettings = [\n\t\t\t'defaultQuantityTrace',\n\t\t\t'defaultCanBuyZero',\n\t\t\t'defaultSubscribe',\n\t\t\t'checkRightsOnDecreaseStoreAmount',\n\t\t];\n\n\t\tconst productSettingsResult = affectedSettings.find((code) => {\n\t\t\treturn newData[code] !== undefined && newData[code] !== this.getValue(code);\n\t\t});\n\t\tconst costPriceCalculationMethodResult = newData.costPriceCalculationMethod !== undefined\n\t\t\t&& newData.costPriceCalculationMethod !== this.getValue('costPriceCalculationMethod').current\n\t\t;\n\n\t\treturn Boolean(productSettingsResult) || costPriceCalculationMethodResult;\n\t}\n\n\t#needProgressBarOnProductsUpdating(): boolean\n\t{\n\t\treturn this.getValue('productsCount') > 500;\n\t}\n\n\tgetType(): string\n\t{\n\t\treturn 'catalog';\n\t}\n\n\tappendSections(contentNode: HTMLElement)\n\t{\n\t\tif (this.#isReservationUsed() && this.getValue('hasAccessToReservationSettings'))\n\t\t{\n\t\t\tconst reservationSection = this.#buildReservationSection();\n\t\t\treservationSection.renderTo(contentNode);\n\t\t}\n\n\t\tif (this.#isStoreBatchUsed() && this.getValue('hasAccessToCatalogSettings'))\n\t\t{\n\t\t\tconst costPriceCalculationSection = this.#buildCostPriceCalculationSection();\n\t\t\tcostPriceCalculationSection.renderTo(contentNode);\n\t\t}\n\n\t\tif (this.getValue('hasAccessToCatalogSettings'))\n\t\t{\n\t\t\tconst productsSection = this.#buildProductsSection();\n\t\t\tproductsSection.renderTo(contentNode);\n\n\t\t\tconst modeSection = this.#buildModeSection();\n\t\t\tmodeSection.renderTo(contentNode);\n\t\t}\n\t}\n\n\t#buildReservationSection(): SettingsSection\n\t{\n\t\tconst storeControlMode = this.getValue('storeControlMode');\n\t\tconst reservationEntities = this.getValue('reservationEntities');\n\n\t\tfor (const reservationEntity of reservationEntities)\n\t\t{\n\t\t\tfor (const schemeItem of reservationEntity.settings.scheme)\n\t\t\t{\n\t\t\t\tif (['mode', 'period'].includes(schemeItem.code))\n\t\t\t\t{\n\t\t\t\t\tschemeItem.disabled = storeControlMode === ModeList.MODE_1C;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (storeControlMode === ModeList.MODE_1C)\n\t\t\t{\n\t\t\t\treservationEntity.settings.values.mode = 'onAddToDocument';\n\t\t\t}\n\t\t}\n\n\t\tconst reservationSection = new ReservationSection({\n\t\t\tparentPage: this,\n\t\t\treservationEntities,\n\t\t});\n\n\t\treturn reservationSection.buildSection();\n\t}\n\n\t#buildCostPriceCalculationSection(): SettingsSection\n\t{\n\t\tconst costPriceCalculationSection = new CostPriceCalculation({\n\t\t\tparentPage: this,\n\t\t\tcostPriceCalculationParams: this.getValue('costPriceCalculationMethod'),\n\t\t});\n\n\t\treturn costPriceCalculationSection.buildSection();\n\t}\n\n\t#buildProductsSection(): SettingsSection\n\t{\n\t\tconst values = {};\n\t\t[\n\t\t\t'defaultSubscribe',\n\t\t\t'isEnabledInventoryManagement',\n\t\t\t'costPriceCalculationMethod',\n\t\t\t'checkRightsOnDecreaseStoreAmount',\n\t\t\t'defaultProductVatIncluded',\n\t\t\t'defaultCanBuyZero',\n\t\t\t'defaultQuantityTrace',\n\t\t\t'canEnableProductCardSlider',\n\t\t\t'isBitrix24',\n\t\t\t'productCardSliderEnabled',\n\t\t\t'showNegativeStoreAmountPopup',\n\t\t\t'storeBalancePopupLink',\n\t\t\t'hasAccessToChangeCanBuyZero',\n\t\t\t'busProductCardHelpLink',\n\t\t\t'vats',\n\t\t].forEach((code) => {\n\t\t\tvalues[code] = this.getValue(code);\n\t\t});\n\n\t\tvalues.isReservationUsed = this.#isReservationUsed();\n\n\t\tconst productsSection = new Products({\n\t\t\tparentPage: this,\n\t\t\tvalues,\n\t\t});\n\n\t\treturn productsSection.buildSection();\n\t}\n\n\t#buildModeSection(): SettingsSection\n\t{\n\t\tconst modeSection = new Mode({\n\t\t\tparentPage: this,\n\t\t\tinventoryManagementParams: {\n\t\t\t\tisEnabled: this.getValue('isEnabledInventoryManagement'),\n\t\t\t\tcurrentMode: this.getValue('storeControlMode'),\n\t\t\t\tavailableModes: this.getValue('storeControlAvailableModes'),\n\t\t\t\tonecStatusUrl: this.getValue('onecStatusUrl'),\n\t\t\t\tis1cRestricted: this.getValue('is1cRestricted'),\n\t\t\t\thasConductedDocumentsOrQuantities: this.getValue('hasConductedDocumentsOrQuantities'),\n\t\t\t},\n\t\t\tconfigCatalogSource: this.getValue('configCatalogSource'),\n\t\t});\n\n\t\treturn modeSection.buildSection();\n\t}\n\n\tonInventoryManagementModeChanged({ isEnabled, mode }: { isEnabled: boolean, mode?: string }): void\n\t{\n\t\tif (this.#slider)\n\t\t{\n\t\t\tthis.#slider.getData().set('isInventoryManagementChanged', true);\n\t\t\tif (mode)\n\t\t\t{\n\t\t\t\tthis.#slider.getData().set('inventoryManagementMode', mode);\n\t\t\t\tif (mode === ModeList.MODE_1C)\n\t\t\t\t{\n\t\t\t\t\tthis.#initialData.is1cRestricted = false;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tthis.#initialData.isEnabledInventoryManagement = isEnabled;\n\t\tif (mode && this.getValue('storeControlAvailableModes')?.includes(mode))\n\t\t{\n\t\t\tthis.#initialData.storeControlMode = mode;\n\t\t}\n\n\t\tthis.#initialData.defaultQuantityTrace = isEnabled ? 'Y' : 'N';\n\n\t\tthis.setData(this.#initialData);\n\t}\n\n\t#showNegativeBalancePopupIfNeeded(): boolean\n\t{\n\t\tif (!this.#getDataForSaving().costPriceCalculationMethod || !this.getValue('showNegativeStoreAmountPopup'))\n\t\t{\n\t\t\treturn false;\n\t\t}\n\n\t\tconst text = Loc.getMessage(\n\t\t\t'CAT_CONFIG_SETTINGS_NEGATIVE_STORE_BALANCE_POPUP_TEXT',\n\t\t\t{\n\t\t\t\t'#STORE_BALANCE_LIST_LINK#': '<help-link></help-link>',\n\t\t\t},\n\t\t);\n\n\t\tconst content = Tag.render`\n\t\t\t<div class=\"catalog-settings-popup-content\">\n\t\t\t\t<div class=\"catalog-settings-popup-text\">\n\t\t\t\t\t${text}\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t`;\n\n\t\tif (!Type.isUndefined(top.BX.SidePanel.Instance) && Type.isStringFilled(this.getValue('storeBalancePopupLink')))\n\t\t{\n\t\t\tconst balanceInfoLink = Tag.render`\n\t\t\t\t<a href=\"#\" class=\"ui-form-link\">\n\t\t\t\t\t${Loc.getMessage('CAT_CONFIG_SETTINGS_NEGATIVE_STORE_BALANCE_POPUP_LINK')}\n\t\t\t\t</a>\n\t\t\t`;\n\n\t\t\tEvent.bind(balanceInfoLink, 'click', () => {\n\t\t\t\ttop.BX.SidePanel.Instance.open(\n\t\t\t\t\tString(this.getValue('storeBalancePopupLink')),\n\t\t\t\t\t{\n\t\t\t\t\t\trequestMethod: 'post',\n\t\t\t\t\t\tcacheable: false,\n\t\t\t\t\t},\n\t\t\t\t);\n\t\t\t});\n\n\t\t\tDom.replace(content.querySelector('help-link'), balanceInfoLink);\n\t\t}\n\n\t\tconst popup = new Popup({\n\t\t\tid: 'catalog_settings_document_negative_balance_popup',\n\t\t\tcontent,\n\t\t\toverlay: true,\n\t\t\tbuttons: [\n\t\t\t\tnew Button({\n\t\t\t\t\ttext: Loc.getMessage('CAT_CONFIG_SETTINGS_RETURN'),\n\t\t\t\t\tcolor: ButtonColor.DANGER,\n\t\t\t\t\tonclick: (button, event) => {\n\t\t\t\t\t\tthis.#resetSaveButton();\n\t\t\t\t\t\tpopup.destroy();\n\t\t\t\t\t},\n\t\t\t\t}),\n\t\t\t],\n\t\t});\n\t\tpopup.show();\n\n\t\treturn true;\n\t}\n\n\t#isReservationUsed(): boolean\n\t{\n\t\treturn this.getValue('isEnabledInventoryManagement')\n\t\t\t|| this.getValue('defaultQuantityTrace') === 'Y'\n\t\t;\n\t}\n\n\t#isStoreBatchUsed(): boolean\n\t{\n\t\treturn this.getValue('isStoreBatchUsed')\n\t\t\t|| this.getValue('hasAccessToCatalogSettings')\n\t\t;\n\t}\n\n\t// reads the data from the form element and updates the page object's #data\n\tupdateDataAfterSave()\n\t{\n\t\tthis.setData(this.#convertFormDataToObjectData());\n\t}\n\n\t#convertFormDataToObjectData(): Object\n\t{\n\t\tconst formData = this.#getDataForSaving();\n\t\tconst objectData = this.#initialData;\n\n\t\t// reservation\n\t\tif (formData.reservationSettings)\n\t\t{\n\t\t\tformData.reservationSettings.deal.autoWriteOffOnFinalize = formData.reservationSettings.deal.autoWriteOffOnFinalize === 'Y';\n\t\t\tObject.assign(objectData.reservationEntities[0].settings.values, formData.reservationSettings.deal);\n\t\t}\n\n\t\t// cost price calculation\n\t\tif (formData.costPriceCalculationMethod)\n\t\t{\n\t\t\tobjectData.costPriceCalculationMethod.items.forEach((item) => {\n\t\t\t\titem.selected = item.value === formData.costPriceCalculationMethod;\n\t\t\t});\n\t\t}\n\n\t\t// product settings\n\t\tif (formData.defaultProductVatId)\n\t\t{\n\t\t\tobjectData.vats.items.forEach((item) => {\n\t\t\t\titem.selected = Number(item.value) === Number(formData.defaultProductVatId);\n\t\t\t});\n\t\t}\n\n\t\tconst options = [\n\t\t\t'defaultSubscribe',\n\t\t\t'checkRightsOnDecreaseStoreAmount',\n\t\t\t'defaultProductVatIncluded',\n\t\t\t'defaultCanBuyZero',\n\t\t\t'defaultQuantityTrace',\n\t\t\t'productCardSliderEnabled',\n\t\t];\n\t\toptions.forEach((option) => {\n\t\t\tif (formData[option])\n\t\t\t{\n\t\t\t\tobjectData[option] = formData[option];\n\t\t\t}\n\t\t});\n\n\t\treturn objectData;\n\t}\n}\n\nexport default CatalogPage;\n","import { ModeList } from 'catalog.store-enable-wizard';\nimport { Type } from 'main.core';\nimport { EventEmitter } from 'main.core.events';\n\nexport default class Slider\n{\n\tstatic URL = '/crm/configs/catalog/';\n\tstatic URL_RIGHTS = '/shop/settings/permissions/';\n\n\tstatic open(source = null, options = {}): Promise\n\t{\n\t\tSlider.closePopup();\n\t\tlet url = Slider.URL;\n\t\tif (Type.isStringFilled(source))\n\t\t{\n\t\t\turl += `?configCatalogSource=${source}`;\n\t\t}\n\n\t\tEventEmitter.subscribe('SidePanel.Slider:onMessage', (event) => {\n\t\t\tconst [data] = event.getData();\n\n\t\t\tif (data.eventId === 'BX.Crm.Config.Catalog:onAfterSaveSettings')\n\t\t\t{\n\t\t\t\tEventEmitter.emit(window, 'onCatalogSettingsSave');\n\t\t\t}\n\t\t});\n\n\t\tif (!options.events)\n\t\t{\n\t\t\toptions.events = {};\n\t\t}\n\n\t\tif (!options.events.onClose)\n\t\t{\n\t\t\toptions.events.onClose = (event) => {\n\t\t\t\tif (event.getSlider()?.getData().get('isInventoryManagementChanged'))\n\t\t\t\t{\n\t\t\t\t\tif (event.getSlider().getData().get('inventoryManagementMode') === ModeList.MODE_1C)\n\t\t\t\t\t{\n\t\t\t\t\t\ttop.document.location = '/crm/';\n\t\t\t\t\t}\n\t\t\t\t\telse\n\t\t\t\t\t{\n\t\t\t\t\t\tdocument.location.reload();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t};\n\t\t}\n\n\t\treturn new Promise((resolve) => {\n\t\t\tBX.SidePanel.Instance.open(\n\t\t\t\turl,\n\t\t\t\t{\n\t\t\t\t\twidth: 1000,\n\t\t\t\t\tallowChangeHistory: false,\n\t\t\t\t\tcacheable: false,\n\t\t\t\t\t...options,\n\t\t\t\t},\n\t\t\t);\n\t\t});\n\t}\n\n\tstatic openRigthsSlider(): Promise\n\t{\n\t\tSlider.closePopup();\n\n\t\treturn new Promise((resolve) => {\n\t\t\tBX.SidePanel.Instance.open(\n\t\t\t\tSlider.URL_RIGHTS,\n\t\t\t\t{},\n\t\t\t);\n\t\t});\n\t}\n\n\tstatic openSeoSlider(url :string): Promise\n\t{\n\t\tSlider.closePopup();\n\n\t\treturn new Promise((resolve) => {\n\t\t\tBX.SidePanel.Instance.open(\n\t\t\t\turl,\n\t\t\t\t{\n\t\t\t\t\twidth: 1000,\n\t\t\t\t\tallowChangeHistory: false,\n\t\t\t\t\tcacheable: false,\n\t\t\t\t},\n\t\t\t);\n\t\t});\n\t}\n\n\tstatic closePopup(): void\n\t{\n\t\tBX.PopupWindowManager?.getPopups().forEach((popup): void => {\n\t\t\tpopup.close();\n\t\t});\n\t}\n}\n","import CatalogPage from './catalog-page';\nimport Slider from './slider';\n\nclass CatalogSettings\n{\n\t#page: CatalogPage;\n\n\tconstructor(settings)\n\t{\n\t\tthis.#page = CatalogPage.init(settings);\n\n\t\tthis.#page.subscribe('change', this.#onEventChangeData.bind(this));\n\t}\n\n\trender(): HTMLElement\n\t{\n\t\treturn this.#page.getPage();\n\t}\n\n\t#onEventChangeData()\n\t{\n\t\tthis.#page.onChange();\n\t}\n}\n\nexport {\n\tCatalogSettings,\n\tSlider,\n};\n"],"names":["ProductSettingsUpdater","constructor","params","url","stepOptions","ajaxSessionID","maxExecutionTime","maxOperationCounter","finish","currentState","counter","operationCounter","errorCounter","lastID","ajaxParams","operation","iblocks","iblockIndex","events","settings","nextStep","key","hasOwnProperty","sessid","BX","bitrix_sessid","lang","message","ajax","loadJSON","proxy","nextStepResult","result","type","isPlainObject","parseInt","isNaN","onProgress","allCnt","allCounter","doneCnt","allOperationCounter","currentIblockName","NAME","finishOperation","checkOperation","onComplete","startOperation","changeSettings","changeSettingsResult","success","loadIblockList","stopOperation","checkIblockIndex","length","getIblock","isArray","iblockReindex","initStep","iblockId","ID","COUNT","finalRequest","iblockList","i","get","props","data","render","processedText","Loc","getMessage","replace","text","Tag","currentIblock","progressBar","Dom","style","width","Math","round","innerHTML","CostPriceCalculation","costPriceCalculationParams","parentPage","buildSection","section","Section","title","titleIconClasses","isOpen","costPriceCalculationSection","SettingsSection","parent","append","Row","content","Alert","inline","size","AlertSize","SMALL","color","AlertColor","PRIMARY","getContainer","selector","Selector","label","name","items","hints","isFieldDisabled","getInputNode","setAttribute","Event","bind","alert","WARNING","row","prepend","SettingsRow","child","SettingsField","fieldView","ModeStatus","isInventoryManagementEnabled","is1cRestricted","currentMode","onecStatusUrl","initialize","statusText","statusColor","labelStatus","ModeList","MODE_1C","LabelColor","LIGHT","ExternalCatalogPlacement","create","then","update","LIGHT_GREEN","catch","LIGHT_RED","Label","LabelSize","LG","fill","status","Ajax","runComponentAction","mode","response","reset","settingsLinkElement","labelElement","clickHandler","event","preventDefault","OneCPlanRestrictionSlider","show","top","rest","AppLayout","openApplication","value","source","SidePanel","Instance","open","customLeftBoundary","cacheable","loader","onClose","clean","before","Mode","inventoryManagementParams","configCatalogSource","Disabler","hasConductedDocumentsOrQuantities","onDisabled","onInventoryManagementModeChanged","isEnabled","MODE_B24","modeSection","openInventoryManagementSlider","sliderUrl","EnableWizardOpener","urlParams","analyticsContextSection","AnalyticsContextList","SETTINGS","slider","getData","undefined","document","querySelector","scrollIntoView","UI","Notification","Center","notify","updateDataAfterSave","modeLogo","changeModeButton","Button","ButtonColor","onclick","button","toggleButton","showChangeModeButton","availableModes","includes","descriptionContent","descriptionClass","Runtime","loadExtension","exports","sendData","tool","category","c_section","p1","Helper","helpCode","Products","values","productsSection","Checker","inputName","checked","defaultSubscribe","isEnabledInventoryManagement","isEmptyCostPriceCalculationMethod","costPriceCalculationMethod","current","isCanBuyZeroInDocsVisible","checkRightsOnDecreaseStoreAmount","hintOn","defaultProductVatIncluded","isDefaultCanBuyZeroVisible","isReservationUsed","hasAccessToChangeCanBuyZero","defaultCanBuyZero","initDefaultQuantityTrace","defaultQuantityTrace","isDefaultQuantityTraceVisible","defaultQuantityTraceChecker","EventEmitter","subscribe","switcher","isChecked","canEnableProductCardSlider","canEnableProductCardSliderChecker","productCardSliderEnabled","Object","keys","vats","forEach","hint","vatSelector","updateValues","newValues","assign","warnPopup","Popup","onPopupClose","destroy","maxWidth","overlay","buttons","Color","close","checker","askPopup","isBitrix24","toggle","onPopupShow","helpdeskLink","getElementById","busProductCardHelpLink","SUCCESS","LINK","contentText","popupParams","className","titleBar","ReservationMode","BaseField","period","prefixId","renderContentField","getId","fieldName","setting","disabled","options","code","selectedAttr","push","attrs","class","children","periodInput","Text","encode","ReservationSection","reservationEntities","settingsSection","dealSettings","modeFieldName","MODE_FIELD_NAME","modeSetting","scheme","find","schemeElement","modeValue","periodFieldName","PERIOD_FIELD_NAME","periodSetting","periodValue","separator","autoWriteOffSetting","autoWriteOffValue","autoWriteOffOnFinalize","AUTO_WRITE_OFF_FIELD_NAME","description","hideSeparator","CatalogPage","BaseSettingsPage","titlePage","descriptionPage","GLOBAL_TARGET","getTopSlider","init","page","setData","permission","Boolean","hasAccessToCatalogSettings","hasAccessToReservationSettings","setPermission","canRead","canEdit","onChange","ButtonPanel","getType","appendSections","contentNode","getValue","reservationSection","renderTo","set","storeControlMode","prepareForm","getFormNode","isNegativeBalancePopupShown","saveButton","removeClass","hide","postMessage","window","Promise","resolve","newData","productUpdaterOptions","default_quantity_trace","default_can_buy_zero","default_subscribe","productUpdater","ProductUpdater","padding","animation","angle","affectedSettings","productSettingsResult","costPriceCalculationMethodResult","reservationEntity","schemeItem","Type","isUndefined","isStringFilled","balanceInfoLink","String","requestMethod","popup","id","DANGER","formData","objectData","reservationSettings","deal","item","selected","defaultProductVatId","Number","option","Slider","closePopup","URL","eventId","emit","getSlider","location","reload","allowChangeHistory","openRigthsSlider","URL_RIGHTS","openSeoSlider","PopupWindowManager","getPopups","CatalogSettings","getPage"],"mappings":"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"}

Youez - 2016 - github.com/yon3zu
LinuXploit