File manager - Edit - /home/c14075/dragmet-ural.ru/www/bitrix/modules/catalog/install/js/catalog/document-card/dist/document-card.bundle.js.map
Back
{"version":3,"file":"document-card.bundle.js","sources":["../src/product-list/controller.js","../src/card/controller.js","../src/controllers-factory.js","../src/model/model.js","../src/model/model-factory.js","../src/editor-fields/row-summary.js","../src/editor-fields/contractor.js","../src/editor-fields/fields-factory.js","../src/card/card.js","../src/feedback/button.js","../src/feedback/slider.js"],"sourcesContent":["import {Loc} from 'main.core';\nimport {BaseEvent, EventEmitter} from 'main.core.events'\nimport DocumentCard from \"../card/card\";\n\nexport default class ProductListController extends BX.UI.EntityEditorController\n{\n\tconstructor(id, settings)\n\t{\n\t\tsuper();\n\t\tthis.initialize(id, settings);\n\t\tthis._setProductListHandler = this.handleSetProductList.bind(this);\n\t\tthis._tabShowHandler = this.onTabShow.bind(this);\n\n\t\tthis._editorControlChangeHandler = this.onEditorControlChange.bind(this);\n\n\t\tthis._currencyId = this._model.getField('CURRENCY', '');\n\n\t\tEventEmitter.subscribe(this._editor, 'onControlChanged', this.onEditorControlChange.bind(this));\n\t\tEventEmitter.subscribe('DocumentProductListController', this._setProductListHandler);\n\t\tEventEmitter.subscribe('onEntityDetailsTabShow', this._tabShowHandler);\n\t\tEventEmitter.subscribe('BX.UI.EntityEditorList:onItemSelect', (event) => {\n\t\t\tconst [field, params] = event.data;\n\n\t\t\tif (field?.getId() === 'TOTAL_WITH_CURRENCY')\n\t\t\t{\n\t\t\t\tthis.changeCurrency(params.item.value);\n\t\t\t}\n\t\t});\n\t}\n\n\thandleSetProductList(event)\n\t{\n\t\tconst productList = event.getData()[0];\n\t\tthis.setProductList(productList);\n\t\tEventEmitter.unsubscribe('DocumentProductListController', this._setProductListHandler);\n\t}\n\n\treinitializeProductList()\n\t{\n\t\tif (this.productList)\n\t\t{\n\t\t\tthis.productList.reloadGrid(false);\n\t\t}\n\t}\n\n\tonTabShow(event: BaseEvent)\n\t{\n\t\tconst [tab] = event.getData();\n\t\tif (tab.id === 'tab_products' && this.productList)\n\t\t{\n\t\t\tthis.productList.handleOnTabShow();\n\t\t\tEventEmitter.unsubscribe('onEntityDetailsTabShow', this._tabShowHandler);\n\t\t\tEventEmitter.emit('onDocumentProductListTabShow', this);\n\t\t}\n\t}\n\n\tinnerCancel()\n\t{\n\t\tthis.rollback();\n\t\tif (this.productList)\n\t\t{\n\t\t\tthis.productList.onInnerCancel();\n\t\t}\n\n\t\tthis._currencyId = this._model.getField('CURRENCY');\n\n\t\tif (this.productList)\n\t\t{\n\t\t\tthis.productList.changeCurrencyId(this._currencyId);\n\t\t\tthis.productList.updateTotalUiCurrency();\n\t\t}\n\n\t\tthis._isChanged = false;\n\t}\n\n\tgetCurrencyId = function()\n\t{\n\t\treturn this._currencyId;\n\t}\n\n\tsetProductList(productList)\n\t{\n\t\tif (this.productList === productList)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tif (this.productList)\n\t\t{\n\t\t\tthis.productList.destroy();\n\t\t}\n\n\t\tthis.productList = productList;\n\n\t\tif (this.productList)\n\t\t{\n\t\t\tthis.productList.setController(this);\n\t\t\tthis.productList.setForm(this._editor.getFormElement());\n\n\t\t\tif (this.productList.getCurrencyId() !== this.getCurrencyId())\n\t\t\t{\n\t\t\t\tthis.productList.changeCurrencyId(this.getCurrencyId());\n\t\t\t}\n\n\t\t\tthis._prevProductCount = this._curProductCount = this.productList.getProductCount();\n\t\t}\n\t}\n\n\tonAfterSave()\n\t{\n\t\tsuper.onAfterSave();\n\t\tif (this.productList)\n\t\t{\n\t\t\tthis.productList.removeFormFields();\n\t\t}\n\n\t\tthis._editor._toolPanel.showViewModeButtons();\n\t}\n\n\tproductChange(disableSaveButton = false)\n\t{\n\t\tdisableSaveButton = disableSaveButton ?? false;\n\t\tthis.markAsChanged();\n\n\t\tif (disableSaveButton)\n\t\t{\n\t\t\tthis.disableSaveButton();\n\t\t}\n\n\t\tEventEmitter.emit('onDocumentProductChange', this.productList.getProductsFields());\n\t}\n\n\tonBeforeSubmit()\n\t{\n\t\tif (this.productList && (this.isChanged() || this._editor.isNew()))\n\t\t{\n\t\t\tthis.productList.compileProductData();\n\t\t}\n\t}\n\n\tenableSaveButton()\n\t{\n\t\tif (this._editor?._toolPanel)\n\t\t{\n\t\t\tthis._editor._toolPanel.enableSaveButton();\n\t\t}\n\t}\n\n\tdisableSaveButton()\n\t{\n\t\tif (this._editor?._toolPanel)\n\t\t{\n\t\t\tthis._editor._toolPanel.disableSaveButton();\n\t\t}\n\t}\n\n\tonEditorControlChange(event: BaseEvent)\n\t{\n\t\tconst [field, params] = event.getData();\n\t\tif (field instanceof BX.UI.EntityEditorMoney && params?.fieldName === 'CURRENCY')\n\t\t{\n\t\t\tthis.changeCurrency(params.fieldValue);\n\t\t}\n\t}\n\n\tchangeCurrency(currencyValue)\n\t{\n\t\tthis._currencyId = currencyValue;\n\n\t\tif (this.productList && this._currencyId)\n\t\t{\n\t\t\tthis.productList.changeCurrencyId(this._currencyId);\n\t\t\tthis.markAsChanged();\n\t\t}\n\t}\n\n\tsetTotal(totalData)\n\t{\n\t\tthis._model.setField(\n\t\t\t'FORMATTED_TOTAL',\n\t\t\tBX.Currency.currencyFormat(totalData.totalCost, this.getCurrencyId(), false),\n\t\t);\n\n\t\tthis._model.setField(\n\t\t\t'FORMATTED_TOTAL_WITH_CURRENCY',\n\t\t\tBX.Currency.currencyFormat(totalData.totalCost, this.getCurrencyId(), true),\n\t\t);\n\n\t\tthis._model.setField(\n\t\t\t'TOTAL',\n\t\t\ttotalData.totalCost,\n\t\t);\n\n\t\tconst totalCurrencyControl = this._editor.getControlById('TOTAL_WITH_CURRENCY');\n\t\tif (totalCurrencyControl instanceof BX.UI.EntityEditorMoney)\n\t\t{\n\t\t\ttotalCurrencyControl.refreshLayout();\n\t\t}\n\t}\n\n\tvalidateProductList()\n\t{\n\t\tlet errorsArray = this.productList.validate();\n\t\tif (errorsArray.length > 0)\n\t\t{\n\t\t\tthis._editor._toolPanel.addError(errorsArray[0]);\n\t\t\tEventEmitter.emit('onProductsCheckFailed', errorsArray);\n\t\t\treturn false;\n\t\t}\n\n\t\treturn true;\n\t}\n}","import {EventEmitter} from 'main.core.events';\n\nexport default class DocumentCardController extends BX.UI.EntityEditorController\n{\n\tconstructor(id, settings)\n\t{\n\t\tsuper();\n\t\tthis.initialize(id, settings);\n\t\tthis._model.lockField('TOTAL');\n\t}\n\n\tdoInitialize()\n\t{\n\t\tthis.#subscribeToEvents();\n\t}\n\n\t#subscribeToEvents()\n\t{\n\t\tthis.#subscribeToProductRowSummaryEvents();\n\t}\n\n\t#subscribeToProductRowSummaryEvents()\n\t{\n\t\tEventEmitter.subscribe(\n\t\t\t'BX.UI.EntityEditorProductRowSummary:onDetailProductListLinkClick',\n\t\t\t() => {\n\t\t\t\tEventEmitter.emit('BX.Catalog.EntityCard.TabManager:onOpenTab', {tabId: 'tab_products'});\n\t\t\t}\n\t\t);\n\t\tEventEmitter.subscribe(\n\t\t\t'BX.UI.EntityEditorProductRowSummary:onAddNewRowInProductList',\n\t\t\t() => {\n\t\t\t\tEventEmitter.emit('BX.Catalog.EntityCard.TabManager:onOpenTab', {tabId: 'tab_products'});\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\tEventEmitter.emit('onFocusToProductList');\n\t\t\t\t}, 500);\n\t\t\t}\n\t\t)\n\n\t}\n\n\tonAfterSave()\n\t{\n\t\tsuper.onAfterSave();\n\t\twindow.top.BX.onCustomEvent('DocumentCard:onDocumentCardSave');\n\t\tlet sliders = BX.SidePanel.Instance.getOpenSliders();\n\t\tsliders.forEach((slider) => {\n\t\t\tif (slider.getWindow()?.BX.Catalog?.DocumentGridManager)\n\t\t\t{\n\t\t\t\tslider.getWindow().BX.onCustomEvent('DocumentCard:onDocumentCardSave');\n\t\t\t}\n\t\t});\n\t}\n}\n","import {type BaseEvent, EventEmitter} from 'main.core.events';\nimport ProductListController from \"./product-list/controller\";\nimport DocumentCardController from \"./card/controller\";\n\nexport default class ControllersFactory\n{\n\tconstructor(eventName)\n\t{\n\t\tEventEmitter.subscribe(eventName, (event: BaseEvent) => {\n\t\t\tconst [, eventArgs] = event.getCompatData();\n\t\t\teventArgs.methods['entityCard'] = this.factory.bind(this);\n\t\t});\n\t}\n\n\tfactory(type, controlId, settings)\n\t{\n\t\tif (type === 'document_card')\n\t\t{\n\t\t\treturn new DocumentCardController(controlId, settings);\n\t\t}\n\n\t\tif (type === 'catalog_store_document_product_list')\n\t\t{\n\t\t\treturn new ProductListController(controlId, settings);\n\t\t}\n\n\t\treturn null;\n\t}\n}\n","export default class DocumentModel extends BX.UI.EntityModel\n{\n\tconstructor(id, settings) {\n\t\tsuper();\n\t\tthis.initialize(id, settings);\n\t}\n\n\tisCaptionEditable()\n\t{\n\t\treturn true;\n\t}\n\n\tgetCaption()\n\t{\n\t\tvar title = this.getField(\"TITLE\");\n\t\treturn BX.type.isString(title) ? title : \"\";\n\t}\n\n\tsetCaption(caption)\n\t{\n\t\tthis.setField(\"TITLE\", caption);\n\t}\n\n\tprepareCaptionData(data)\n\t{\n\t\tdata[\"TITLE\"] = this.getField(\"TITLE\", \"\");\n\t}\n}\n","import {type BaseEvent, EventEmitter} from 'main.core.events'\nimport DocumentModel from \"./model\";\n\nexport default class ModelFactory\n{\n\tconstructor()\n\t{\n\t\tEventEmitter.subscribe('BX.UI.EntityEditorModelFactory:onInitialize', (event: BaseEvent) => {\n\t\t\tconst [, eventArgs] = event.getCompatData();\n\t\t\teventArgs.methods['store_document'] = this.factory.bind(this);\n\t\t});\n\t}\n\n\tfactory(type, controlId, settings)\n\t{\n\t\tif (type === 'store_document')\n\t\t{\n\t\t\treturn new DocumentModel(controlId, settings);\n\t\t}\n\n\t\treturn null;\n\t}\n}\n","import {Loc} from 'main.core';\nimport {EventEmitter} from \"main.core.events\";\nimport {CurrencyCore} from \"currency.currency-core\";\n\n/**\n * @deprecated Use BX.UI.EntityEditorProductRowSummary instead\n */\nexport default class ProductRowSummary extends BX.UI.EntityEditorField\n{\n\tconstructor(id, settings)\n\t{\n\t\tsuper();\n\t\tthis.initialize(id, settings);\n\n\t\tthis._loader = null;\n\t\tthis._productsContainer = null;\n\t\tthis._previousData = [];\n\n\t\tthis._itemCount = 0;\n\t\tthis._totalCount = 0;\n\n\t\tthis._moreButton = null;\n\t\tthis._moreButtonRow = null;\n\t\tthis._totalsRow = null;\n\t\tthis._moreButtonClickHandler = BX.delegate(this._onMoreButtonClick, this);\n\n\t\tthis._visibleItemsLimit = 5;\n\t}\n\n\tlayout(options = {})\n\t{\n\t\tif(this._hasLayout)\n\t\t{\n\t\t\treturn;\n\t\t}\n\t\tthis.ensureWrapperCreated({});\n\t\tthis.adjustWrapper();\n\n\t\tvar data = this.getValue();\n\n\t\tif(!BX.type.isPlainObject(data))\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tvar title = this.getTitle();\n\t\tvar items = BX.prop.getArray(data, 'items', []);\n\n\t\tthis._totalCount = BX.prop.getInteger(data, 'count', 0);\n\n\t\tthis._itemCount = items.length;\n\t\tvar length = this._itemCount;\n\t\tvar maxLength = this._visibleItemsLimit;\n\t\tvar restLength = 0;\n\t\tif(\n\t\t\t(length > maxLength)\n\t\t)\n\t\t{\n\t\t\trestLength = (this._totalCount - maxLength);\n\t\t\tlength = maxLength;\n\t\t}\n\n\t\tif (this.isDragEnabled())\n\t\t{\n\t\t\tthis._wrapper.appendChild(this.createDragButton());\n\t\t}\n\n\t\tthis._wrapper.appendChild(this.createTitleNode(title));\n\t\tthis._productsContainer = BX.create(\n\t\t\t'div',\n\t\t\t{\n\t\t\t\tprops: {\n\t\t\t\t\tclassName: 'catalog-entity-widget-content-block-products-list'\n\t\t\t\t}\n\t\t\t}\n\t\t);\n\n\t\tfor (var i = 0; i < length; i++)\n\t\t{\n\t\t\tthis.addProductRow(items[i]);\n\t\t}\n\n\t\tthis._moreButton = null;\n\t\tif (restLength > 0)\n\t\t{\n\t\t\tthis.addMoreButton(restLength);\n\t\t}\n\t\tthis.addTotalRow(data['total']);\n\n\t\tthis._wrapper.appendChild(\n\t\t\tBX.create(\n\t\t\t\t'div',\n\t\t\t\t{\n\t\t\t\t\tprops: {className: 'catalog-entity-widget-content-block-products'},\n\t\t\t\t\tchildren: [this._productsContainer]\n\t\t\t\t}\n\t\t\t)\n\t\t);\n\n\t\tif (this.isContextMenuEnabled())\n\t\t{\n\t\t\tthis._wrapper.appendChild(this.createContextMenuButton());\n\t\t}\n\n\t\tif (this.isDragEnabled())\n\t\t{\n\t\t\tthis.initializeDragDropAbilities();\n\t\t}\n\n\t\tthis.registerLayout(options);\n\t\tthis._hasLayout = true;\n\t}\n\n\taddMoreButton(restLength)\n\t{\n\t\tvar row = BX.create('div', {\n\t\t\tprops: {\n\t\t\t\tclassName: 'catalog-entity-widget-content-block-products-item'\n\t\t\t}\n\t\t});\n\t\tthis._moreButtonRow = row;\n\t\tthis._productsContainer.appendChild(row);\n\n\t\tvar nameCell = BX.create(\"div\", {\n\t\t\tprops: {\n\t\t\t\tclassName: 'catalog-entity-widget-content-block-products-item-name'\n\t\t\t}\n\t\t});\n\t\trow.appendChild(nameCell);\n\n\t\tthis._moreButton = BX.create(\n\t\t\t'span',\n\t\t\t{\n\t\t\t\tattrs: {\n\t\t\t\t\tclassName: 'catalog-entity-widget-content-block-products-show-more'\n\t\t\t\t},\n\t\t\t\tevents: {\n\t\t\t\t\tclick: this._moreButtonClickHandler\n\t\t\t\t},\n\t\t\t\ttext: Loc.getMessage('DOCUMENT_PRODUCTS_NOT_SHOWN', {'#COUNT#': restLength.toString()}),\n\t\t\t}\n\t\t);\n\t\tnameCell.appendChild(this._moreButton);\n\n\t\trow.appendChild(\n\t\t\tBX.create('div', {\n\t\t\t\tprops: {\n\t\t\t\t\tclassName: 'catalog-entity-widget-content-block-products-price'\n\t\t\t\t}\n\t\t\t})\n\t\t);\n\t}\n\n\taddTotalRow(total)\n\t{\n\t\tvar row = BX.create('div', {\n\t\t\tprops: {\n\t\t\t\tclassName: 'catalog-entity-widget-content-block-products-item'\n\t\t\t}\n\t\t});\n\t\tthis._totalsRow = row;\n\t\tthis._productsContainer.appendChild(row);\n\t\tvar nameCell = BX.create('div', {\n\t\t\tprops: {\n\t\t\t\tclassName: 'catalog-entity-widget-content-block-products-item-name'\n\t\t\t},\n\t\t\thtml: Loc.getMessage('DOCUMENT_PRODUCTS_TOTAL'),\n\t\t});\n\t\trow.appendChild(nameCell);\n\n\t\tvar valueCell = BX.create('div', {\n\t\t\tprops: {\n\t\t\t\tclassName: 'catalog-entity-widget-content-block-products-price'\n\t\t\t},\n\t\t\thtml: CurrencyCore.currencyFormat(total.amount, total.currency, true),\n\t\t});\n\t\trow.appendChild(valueCell);\n\t}\n\n\taddAddProductButton()\n\t{\n\t\tlet addProductsLink = BX.create(\n\t\t\t'a',\n\t\t\t{\n\t\t\t\tprops: {href: '#'}\n\t\t\t}\n\t\t);\n\t\taddProductsLink.text = Loc.getMessage('DOCUMENT_PRODUCTS_ADD_PRODUCT');\n\t\taddProductsLink.onclick = () => {\n\t\t\tEventEmitter.emit('BX.Catalog.EntityCard.TabManager:onOpenTab', {tabId: 'tab_products'})\n\t\t};\n\t\tlet row = BX.create('div', {\n\t\t\tprops: {\n\t\t\t\tclassName: 'catalog-entity-widget-content-block-products-add-products',\n\t\t\t},\n\t\t\tchildren: [addProductsLink],\n\t\t});\n\t\tthis._productsContainer.appendChild(row);\n\t}\n\n\t_onMoreButtonClick(e)\n\t{\n\t\tEventEmitter.emit('BX.Catalog.EntityCard.TabManager:onOpenTab', {tabId: 'tab_products'});\n\t}\n\n\tdoClearLayout()\n\t{\n\t\tthis._productsContainer = null;\n\t\tthis._moreButton = null;\n\t\tthis._moreButtonRow = null;\n\t\tthis._totalsRow = null;\n\t}\n\n\taddProductRow(data)\n\t{\n\t\tvar row = BX.create('div', {\n\t\t\tprops: {\n\t\t\t\tclassName: 'catalog-entity-widget-content-block-products-item'\n\t\t\t}\n\t\t});\n\n\t\tthis._productsContainer.appendChild(row);\n\n\t\tvar nameCell = BX.create('div', {\n\t\t\tprops: {\n\t\t\t\tclassName: 'catalog-entity-widget-content-block-products-item-name'\n\t\t\t}\n\t\t});\n\t\tnameCell.innerHTML = BX.util.htmlspecialchars(data['PRODUCT_NAME']);\n\t\trow.appendChild(nameCell);\n\n\t\tvar valueCell = BX.create(\n\t\t\t'div',\n\t\t\t{\n\t\t\t\tprops: {\n\t\t\t\t\tclassName: 'catalog-entity-widget-content-block-products-price'\n\t\t\t\t}\n\t\t\t}\n\t\t);\n\t\trow.appendChild(valueCell);\n\n\t\tvalueCell.appendChild(\n\t\t\tBX.create(\n\t\t\t\t'div',\n\t\t\t\t{\n\t\t\t\t\tattrs: {\n\t\t\t\t\t\tclassName: 'catalog-entity-widget-content-block-products-price-value'\n\t\t\t\t\t},\n\t\t\t\t\thtml: data['SUM']\n\t\t\t\t}\n\t\t\t)\n\t\t);\n\t}\n}\n","import {ajax, Loc, Tag} from \"main.core\";\nimport {Dialog, TagSelector} from 'ui.entity-selector';\n\nexport default class Contractor extends BX.UI.EntityEditorField {\n\tconstructor(id, settings)\n\t{\n\t\tsuper();\n\t\tthis.initialize(id, settings);\n\n\t\tthis._input = null;\n\t\tthis.innerWrapper = null;\n\t\tthis.currentContractorName = '';\n\t\tthis.viewModeDisplay = null;\n\t}\n\n\tgetContentWrapper()\n\t{\n\t\treturn this.innerWrapper;\n\t}\n\n\tlayout(options = {})\n\t{\n\t\tif(this._hasLayout)\n\t\t{\n\t\t\treturn;\n\t\t}\n\t\tthis.ensureWrapperCreated({});\n\t\tthis.adjustWrapper();\n\n\t\tlet title = this.getTitle();\n\t\tif (this.isDragEnabled())\n\t\t{\n\t\t\tthis._wrapper.appendChild(this.createDragButton());\n\t\t}\n\n\t\tthis._wrapper.appendChild(this.createTitleNode(title));\n\n\t\tlet name = this.getName();\n\t\tlet value = this.getValue();\n\t\tlet data = this._schemeElement.getData();\n\t\tif (!this.currentContractorName)\n\t\t{\n\t\t\tthis.currentContractorName = this.getContractorNameFromModel();\n\t\t}\n\t\tthis._input = Tag.render`<input name=\"${name}\" type=\"hidden\" value=\"${value}\"/>`;\n\t\tthis._wrapper.appendChild(this._input);\n\n\t\tthis.innerWrapper = Tag.render`<div class=\"ui-entity-editor-content-block\"></div>`;\n\t\tthis._wrapper.appendChild(this.innerWrapper);\n\n\t\tif(this._mode === BX.UI.EntityEditorMode.edit)\n\t\t{\n\t\t\tlet currentSelectedItems = [];\n\t\t\tif (value)\n\t\t\t{\n\t\t\t\tcurrentSelectedItems.push({\n\t\t\t\t\tid: value,\n\t\t\t\t\tentityId: 'contractor',\n\t\t\t\t\ttitle: this.currentContractorName,\n\t\t\t\t})\n\t\t\t}\n\n\t\t\tlet contractorSelector = new TagSelector({\n\t\t\t\titems: currentSelectedItems,\n\t\t\t\tplaceholder: Loc.getMessage('DOCUMENT_CONTRACTOR_FIELD_PLACEHOLDER'),\n\t\t\t\ttextBoxWidth: '100%',\n\t\t\t\tmultiple: false,\n\t\t\t\tdialogOptions: {\n\t\t\t\t\tcontext: 'catalog_document_contractors',\n\t\t\t\t\tentities: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tid: 'contractor',\n\t\t\t\t\t\t\tdynamicLoad: true,\n\t\t\t\t\t\t\tdynamicSearch: true,\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t\tsearchOptions: {\n\t\t\t\t\t\tallowCreateItem: true,\n\t\t\t\t\t\tfooterOptions: {\n\t\t\t\t\t\t\tlabel: Loc.getMessage('DOCUMENT_ADD_CONTRACTOR'),\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\tevents: {\n\t\t\t\t\t\t'Item:onSelect': (event) => {\n\t\t\t\t\t\t\tthis._input.value = event.data.item.getId();\n\t\t\t\t\t\t\tif (this.viewModeDisplay)\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tthis.currentContractorName = event.data.item.getTitle();\n\t\t\t\t\t\t\t\tthis.viewModeDisplay.innerHTML = BX.util.htmlspecialchars(this.currentContractorName);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tthis._changeHandler();\n\t\t\t\t\t\t},\n\t\t\t\t\t\t'Search:onItemCreateAsync': this.createContractor.bind(this),\n\t\t\t\t\t\t'Item:onDeselect': (event) => {\n\t\t\t\t\t\t\tthis._input.value = '';\n\t\t\t\t\t\t\tthis._changeHandler();\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t});\n\n\t\t\tcontractorSelector.renderTo(this.innerWrapper);\n\n\t\t\tif (BX.UI.EntityEditorModeOptions.check(this._modeOptions, BX.UI.EntityEditorModeOptions.individual))\n\t\t\t{\n\t\t\t\tcontractorSelector.getDialog().show();\n\t\t\t}\n\t\t}\n\t\telse // if(this._mode === BX.UI.EntityEditorMode.view)\n\t\t{\n\t\t\tif (this.hasContentToDisplay())\n\t\t\t{\n\t\t\t\tthis.viewModeDisplay = Tag.render`<div class=\"ui-entity-editor-content-block-text\">${BX.util.htmlspecialchars(this.currentContractorName)}</div>`;\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tthis.viewModeDisplay = Tag.render`<div class=\"ui-entity-editor-content-block-text\">${Loc.getMessage('DOCUMENT_CONTRACTOR_NOT_FILLED')}</div>`;\n\t\t\t}\n\n\t\t\tthis.innerWrapper.appendChild(this.viewModeDisplay);\n\t\t}\n\n\t\tif (this.isContextMenuEnabled())\n\t\t{\n\t\t\tthis._wrapper.appendChild(this.createContextMenuButton());\n\t\t}\n\n\t\tif (this.isDragEnabled())\n\t\t{\n\t\t\tthis.initializeDragDropAbilities();\n\t\t}\n\n\t\tthis.registerLayout(options);\n\t\tthis._hasLayout = true;\n\t}\n\n\tvalidate(result)\n\t{\n\t\tif(!(this._mode === BX.UI.EntityEditorMode.edit && this._input))\n\t\t{\n\t\t\tthrow \"BX.Catalog.DocumentCard.Contractor. Invalid validation context\";\n\t\t}\n\n\t\tthis.clearError();\n\n\t\tif(this.hasValidators())\n\t\t{\n\t\t\treturn this.executeValidators(result);\n\t\t}\n\n\t\tlet isValid = !(this.isRequired() || this.isRequiredByAttribute()) || BX.util.trim(this._input.value) !== \"\";\n\t\tif (!isValid)\n\t\t{\n\t\t\tresult.addError(BX.UI.EntityValidationError.create({ field: this }));\n\t\t\tthis.showRequiredFieldError(this._input);\n\t\t}\n\t\treturn isValid;\n\t}\n\n\thasValue()\n\t{\n\t\tif (this.getValue() === '0')\n\t\t{\n\t\t\treturn false;\n\t\t}\n\n\t\treturn super.hasValue();\n\t}\n\n\tgetModeSwitchType(mode)\n\t{\n\t\tlet result = BX.UI.EntityEditorModeSwitchType.common;\n\n\t\tif (mode === BX.UI.EntityEditorMode.edit)\n\t\t{\n\t\t\tresult |= BX.UI.EntityEditorModeSwitchType.button | BX.UI.EntityEditorModeSwitchType.content;\n\t\t}\n\n\t\treturn result;\n\t}\n\n\tcreateContractor(event)\n\t{\n\t\tlet {searchQuery} = event.getData();\n\t\tlet companyName = searchQuery.getQuery();\n\n\t\treturn new Promise(\n\t\t\t(resolve, reject) => {\n\t\t\t\tconst dialog: Dialog = event.getTarget();\n\t\t\t\tconst fields = {\n\t\t\t\t\tcompanyName,\n\t\t\t\t};\n\n\t\t\t\tdialog.showLoader();\n\t\t\t\tajax.runAction(\n\t\t\t\t\t'catalog.contractor.createContractor',\n\t\t\t\t\t{\n\t\t\t\t\t\tdata: {\n\t\t\t\t\t\t\tfields\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t)\n\t\t\t\t.then(response => {\n\t\t\t\t\tdialog.hideLoader();\n\t\t\t\t\tconst item = dialog.addItem({\n\t\t\t\t\t\tid: response.data.id,\n\t\t\t\t\t\tentityId: 'contractor',\n\t\t\t\t\t\ttitle: searchQuery.getQuery(),\n\t\t\t\t\t\ttabs: dialog.getRecentTab().getId(),\n\t\t\t\t\t});\n\n\t\t\t\t\tif (item)\n\t\t\t\t\t{\n\t\t\t\t\t\titem.select();\n\t\t\t\t\t}\n\n\t\t\t\t\tdialog.hide();\n\t\t\t\t\tresolve();\n\t\t\t\t})\n\t\t\t\t.catch(() => {\n\t\t\t\t\tdialog.hideLoader();\n\t\t\t\t\tBX.UI.Notification.Center.notify({\n\t\t\t\t\t\tcontent: Loc.getMessage('DOCUMENT_ADD_CONTRACTOR_ERROR'),\n\t\t\t\t\t});\n\t\t\t\t\tdialog.hide();\n\t\t\t\t\treject();\n\t\t\t\t});\n\t\t\t}\n\t\t);\n\t}\n\n\tgetContractorNameFromModel()\n\t{\n\t\treturn this._model.getSchemeField(this._schemeElement, 'contractorName', '');\n\t}\n\n\trollback()\n\t{\n\t\tthis.currentContractorName = this.getContractorNameFromModel();\n\t}\n}\n","import {type BaseEvent, EventEmitter} from 'main.core.events'\nimport ProductRowSummary from \"./row-summary\";\nimport Contractor from \"./contractor\";\n\nexport default class FieldsFactory\n{\n\tconstructor()\n\t{\n\t\tEventEmitter.subscribe('BX.UI.EntityEditorControlFactory:onInitialize', (event: BaseEvent) => {\n\t\t\tconst [, eventArgs] = event.getCompatData();\n\t\t\teventArgs.methods['documentCard'] = this.factory.bind(this);\n\t\t});\n\t}\n\n\tfactory(type, controlId, settings)\n\t{\n\t\tif (type === 'contractor')\n\t\t{\n\t\t\treturn new Contractor(controlId, settings);\n\t\t}\n\n\t\treturn null;\n\t}\n}","import {Loc, Reflection, Type} from \"main.core\";\nimport {BaseCard} from \"catalog.entity-card\";\nimport {EventEmitter} from \"main.core.events\";\nimport {Dialog} from 'ui.entity-selector';\nimport ControllersFactory from \"../controllers-factory\";\nimport ModelFactory from \"../model/model-factory\";\nimport FieldsFactory from \"../editor-fields/fields-factory\";\nimport {MenuManager} from \"main.popup\";\nimport {Text} from \"main.core\";\nimport ProductListController from \"../product-list/controller\";\nimport {Slider} from 'catalog.store-use'\n\nclass DocumentCard extends BaseCard\n{\n\tstatic #instance;\n\n\tstatic #fieldFactory;\n\tstatic #modelFactory;\n\tstatic #controllersFactory;\n\n\tconstructor(id, settings)\n\t{\n\t\tsuper(id, settings);\n\t\tthis.documentType = settings.documentType;\n\t\tthis.isDocumentConducted = settings.documentStatus === 'Y';\n\t\tthis.componentName = settings.componentName;\n\t\tthis.signedParameters = settings.signedParameters;\n\t\tthis.isConductLocked = settings.isConductLocked;\n\t\tthis.masterSliderUrl = settings.masterSliderUrl;\n\t\tthis.editorName = settings.includeCrmEntityEditor ? 'BX.Crm.EntityEditor' : 'BX.UI.EntityEditor';\n\t\tthis.inventoryManagementSource = settings.inventoryManagementSource;\n\t\tthis.activeTabId = 'main';\n\n\t\tthis.isTabAnalyticsSent = false;\n\n\t\tthis.setSliderText();\n\t\tthis.addCopyLinkPopup();\n\t\tthis.subscribeToEvents();\n\n\t\tif (settings.documentTypeSelector)\n\t\t{\n\t\t\tthis.initDocumentTypeSelector();\n\t\t}\n\n\t\tDocumentCard.#instance = this;\n\n\t\t// setting this to true so that we can decide\n\t\t// whether to close the slider or not on the fly on backend (closeOnSave=Y)\n\t\tBX.UI.SidePanel.Wrapper.setParam(\"closeAfterSave\", true);\n\t\tthis.showNotificationOnClose = false;\n\t}\n\n\tstatic getInstance()\n\t{\n\t\treturn DocumentCard.#instance;\n\t}\n\n\tinitDocumentTypeSelector()\n\t{\n\t\tlet documentTypeSelector = this.settings.documentTypeSelector;\n\t\tlet documentTypeSelectorTypes = this.settings.documentTypeSelectorTypes;\n\t\tif (!documentTypeSelector || !documentTypeSelectorTypes)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tlet menuItems = [];\n\t\tdocumentTypeSelectorTypes.forEach((type) => {\n\t\t\tmenuItems.push({\n\t\t\t\ttext: Loc.getMessage('DOC_TYPE_SHORT_' + type),\n\t\t\t\tonclick: (e) => {\n\t\t\t\t\tlet slider = BX.SidePanel.Instance.getTopSlider();\n\t\t\t\t\tif (slider)\n\t\t\t\t\t{\n\t\t\t\t\t\tslider.url = BX.Uri.addParam(slider.getUrl(), {DOCUMENT_TYPE: type});\n\t\t\t\t\t\tslider.url = BX.Uri.removeParam(slider.url, ['firstTime', 'focusedTab']);\n\n\t\t\t\t\t\tif (this.activeTabId !== 'main')\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tslider.url = BX.Uri.addParam(slider.getUrl(), {focusedTab: this.activeTabId});\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (type === 'A' || type === 'S')\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tslider.requestMethod = 'post';\n\t\t\t\t\t\t\tslider.requestParams = {\n\t\t\t\t\t\t\t\t'preloadedFields': {\n\t\t\t\t\t\t\t\t\t'DOCUMENT_FIELDS': this.getDocumentFieldsForTypeSwitching(),\n\t\t\t\t\t\t\t\t\t'PRODUCTS': this.getProductsForTypeSwitching(),\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tslider.setFrameSrc();\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t});\n\t\t});\n\t\tlet popupMenu = MenuManager.create({\n\t\t\tid: 'document-type-selector',\n\t\t\tbindElement: documentTypeSelector,\n\t\t\titems: menuItems,\n\t\t});\n\n\t\tdocumentTypeSelector.addEventListener('click', e => {\n\t\t\te.preventDefault();\n\t\t\tpopupMenu.show();\n\t\t});\n\t}\n\n\tgetDocumentFieldsForTypeSwitching()\n\t{\n\t\tconst documentFields = {};\n\t\tconst editor = this.getEditorInstance();\n\t\tif (!editor)\n\t\t{\n\t\t\treturn documentFields;\n\t\t}\n\n\t\tconst form = editor.getFormElement();\n\t\tconst formData = new FormData(form);\n\t\tconst formProps = Object.fromEntries(formData);\n\n\t\tconst fieldsToTransfer = ['TITLE', 'CURRENCY', 'TOTAL'];\n\t\tfieldsToTransfer.forEach((field) => {\n\t\t\tdocumentFields[field] = formProps[field] ?? '';\n\t\t});\n\n\t\treturn documentFields;\n\t}\n\n\tgetProductsForTypeSwitching()\n\t{\n\t\tconst products = [];\n\t\tif (!Reflection.getClass('BX.Catalog.Store.ProductList.Instance'))\n\t\t{\n\t\t\treturn products;\n\t\t}\n\n\t\tconst productFields = ['ID', 'STORE_TO', {'ELEMENT_ID': 'SKU_ID'}, 'AMOUNT', 'PURCHASING_PRICE', 'BASE_PRICE', 'BASE_PRICE_EXTRA', 'BASE_PRICE_EXTRA_RATE'];\n\t\tBX.Catalog.Store.ProductList.Instance.getProductsFields().forEach((productRow) => {\n\t\t\tlet product = {};\n\t\t\tproductFields.forEach((field) => {\n\t\t\t\tif (Type.isObject(field))\n\t\t\t\t{\n\t\t\t\t\tconst destinationField = Object.keys(field)[0];\n\t\t\t\t\tconst sourceField = field[destinationField];\n\t\t\t\t\tproduct[destinationField] = productRow[sourceField] ?? '';\n\t\t\t\t}\n\t\t\t\telse\n\t\t\t\t{\n\t\t\t\t\tproduct[field] = productRow[field] ?? '';\n\t\t\t\t}\n\t\t\t});\n\t\t\tproducts.push(product);\n\t\t});\n\n\t\treturn products;\n\t}\n\n\topenMasterSlider()\n\t{\n\t\tlet card = this;\n\n\t\tnew Slider().open(\n\t\t\tthis.masterSliderUrl,\n\t\t\t{\n\t\t\t\tdata: {\n\t\t\t\t\topenGridOnDone: false,\n\t\t\t\t},\n\t\t\t\tevents: {\n\t\t\t\t\tonCloseComplete: function(event) {\n\t\t\t\t\t\tlet slider = event.getSlider();\n\t\t\t\t\t\tif (!slider)\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (slider.getData().get('isInventoryManagementEnabled'))\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tcard.isConductLocked = false;\n\n\t\t\t\t\t\t\tBX.SidePanel.Instance.getOpenSliders().forEach((slider) => {\n\t\t\t\t\t\t\t\tif (slider.getWindow()?.BX.Catalog?.DocumentGridManager)\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tslider.allowChangeHistory = false;\n\t\t\t\t\t\t\t\t\tslider.getWindow().location.reload();\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t});\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\t}\n\n\tadjustToolPanel()\n\t{\n\t\treturn;\n\t}\n\n\tfocusOnTab(tabId)\n\t{\n\t\tEventEmitter.emit('BX.Catalog.EntityCard.TabManager:onOpenTab', {tabId: tabId});\n\t}\n\n\t// deprecated\n\tsetViewModeButtons(editor)\n\t{\n\t\teditor._toolPanel.showViewModeButtons();\n\t}\n\n\t// deprecated\n\tsetEditModeButtons(editor)\n\t{\n\t\teditor._toolPanel.showEditModeButtons();\n\t}\n\n\tgetEditorInstance()\n\t{\n\t\tconst editorInstance = Reflection.getClass(this.editorName);\n\t\tif (editorInstance)\n\t\t{\n\t\t\treturn editorInstance.getDefault();\n\t\t}\n\n\t\treturn null;\n\t}\n\n\tsubscribeToEvents()\n\t{\n\t\tthis.subscribeToUserSelectorEvent();\n\t\tthis.subscribeToValidationFailedEvent();\n\t\tthis.subscribeToOnSaveEvent();\n\t\tthis.subscribeToTabOpenEvent();\n\t\tthis.subscribeToDirectActionEvent();\n\t\tthis.subscribeToEntityCreateEvent();\n\t\tthis.subscribeToBeforeEntityRedirectEvent();\n\t}\n\n\tsubscribeToUserSelectorEvent()\n\t{\n\t\tif (this.editorName !== 'BX.UI.EntityEditor')\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tEventEmitter.subscribe('BX.UI.EntityEditorUser:openSelector', (event) => {\n\t\t\tlet eventData = event.data[1];\n\t\t\tconst dialog = new Dialog({\n\t\t\t\ttargetNode: eventData.anchor,\n\t\t\t\tenableSearch: true,\n\t\t\t\tmultiple: false,\n\t\t\t\tcontext: 'CATALOG_DOCUMENT',\n\t\t\t\tentities: [\n\t\t\t\t\t{\n\t\t\t\t\t\tid: 'user',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tid: 'department',\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t\tevents: {\n\t\t\t\t\t'Item:onSelect': (onSelectEvent) => {\n\t\t\t\t\t\tlet fieldId = eventData.id;\n\t\t\t\t\t\tlet selectedItem = onSelectEvent.data.item;\n\t\t\t\t\t\tlet userData = {\n\t\t\t\t\t\t\tentityId: selectedItem.id,\n\t\t\t\t\t\t\tavatar: selectedItem.avatar,\n\t\t\t\t\t\t\tname: Text.encode(selectedItem.title.text),\n\t\t\t\t\t\t};\n\n\t\t\t\t\t\tif (this.entityId > 0)\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlet fields = {};\n\t\t\t\t\t\t\tfields[fieldId] = selectedItem.id;\n\t\t\t\t\t\t\tBX.ajax.runComponentAction(\n\t\t\t\t\t\t\t\tthis.componentName,\n\t\t\t\t\t\t\t\t'save',\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tmode: 'class',\n\t\t\t\t\t\t\t\t\tsignedParameters: this.signedParameters,\n\t\t\t\t\t\t\t\t\tdata: {\n\t\t\t\t\t\t\t\t\t\tfields: fields,\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t).then((result) => {\n\t\t\t\t\t\t\t\teventData.callback(dialog, userData);\n\t\t\t\t\t\t\t});\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\teventData.callback(dialog, userData);\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\tdialog.show();\n\t\t});\n\t}\n\n\tsubscribeToValidationFailedEvent()\n\t{\n\t\tEventEmitter.subscribe(this.editorName + ':onFailedValidation', (event) => {\n\t\t\tEventEmitter.emit('BX.Catalog.EntityCard.TabManager:onOpenTab', {tabId: 'main'});\n\t\t});\n\t\tEventEmitter.subscribe('onProductsCheckFailed', (event) => {\n\t\t\tEventEmitter.emit('BX.Catalog.EntityCard.TabManager:onOpenTab', {tabId: 'tab_products'});\n\t\t});\n\t}\n\n\tsubscribeToOnSaveEvent()\n\t{\n\t\tEventEmitter.subscribe(this.editorName + ':onSave', (event) => {\n\t\t\tconst eventEditor = event.data[0];\n\t\t\tconst action = event.data[1]?.actionId;\n\t\t\tif (eventEditor && eventEditor._ajaxForm)\n\t\t\t{\n\t\t\t\teventEditor._toolPanel?.clearErrors();\n\n\t\t\t\tif (action === 'SAVE_AND_CONDUCT')\n\t\t\t\t{\n\t\t\t\t\tif (this.isConductLocked)\n\t\t\t\t\t{\n\t\t\t\t\t\tevent.data[1].cancel = true;\n\t\t\t\t\t\tevent.data[0]._toolPanel?.setLocked(false);\n\t\t\t\t\t\tthis.openMasterSlider();\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\tif (!this.validateControllers(eventEditor.getControllers()))\n\t\t\t\t\t{\n\t\t\t\t\t\tevent.data[1].cancel = true;\n\t\t\t\t\t\teventEditor._toolPanel?.setLocked(false);\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\tif (event.data[1].cancel)\n\t\t\t\t\t{\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tlet form = eventEditor._ajaxForms[action];\n\t\t\t\tif (form)\n\t\t\t\t{\n\t\t\t\t\tform.addUrlParams({\n\t\t\t\t\t\tdocumentType: this.documentType,\n\t\t\t\t\t\tisNewDocument: this.entityId <= 0 ? 'Y' : 'N',\n\t\t\t\t\t\tinventoryManagementSource: this.inventoryManagementSource,\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\n\tsubscribeToTabOpenEvent()\n\t{\n\t\tEventEmitter.subscribe('BX.Catalog.EntityCard.TabManager:onSelectItem', (event) => {\n\t\t\tconst tabId = event.data.tabId;\n\t\t\tif (tabId === 'tab_products' && !this.isTabAnalyticsSent)\n\t\t\t{\n\t\t\t\tthis.sendAnalyticsData({\n\t\t\t\t\ttab: 'products',\n\t\t\t\t\tisNewDocument: this.entityId <= 0 ? 'Y' : 'N',\n\t\t\t\t\tdocumentType: this.documentType,\n\t\t\t\t\tinventoryManagementSource: this.inventoryManagementSource,\n\t\t\t\t});\n\t\t\t\tthis.isTabAnalyticsSent = true;\n\t\t\t}\n\n\t\t\tif (tabId)\n\t\t\t{\n\t\t\t\tthis.activeTabId = tabId;\n\t\t\t}\n\t\t});\n\t}\n\n\tsubscribeToDirectActionEvent()\n\t{\n\t\tEventEmitter.subscribe(this.editorName + ':onDirectAction', (event) => {\n\n\t\t\tconst eventEditor = event.data[0];\n\n\t\t\tif (event.data[1]?.actionId === 'CONDUCT')\n\t\t\t{\n\t\t\t\teventEditor._toolPanel?.clearErrors();\n\n\t\t\t\tif (this.isConductLocked)\n\t\t\t\t{\n\t\t\t\t\tevent.data[1].cancel = true;\n\t\t\t\t\tevent.data[0]._toolPanel?.setLocked(false);\n\t\t\t\t\tthis.openMasterSlider();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (!this.validateControllers(eventEditor.getControllers()))\n\t\t\t\t{\n\t\t\t\t\tevent.data[1].cancel = true;\n\t\t\t\t\teventEditor._toolPanel?.setLocked(false);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tevent.data[0]._ajaxForms['CONDUCT'].addUrlParams({\n\t\t\t\t\tdocumentType: this.documentType,\n\t\t\t\t\tinventoryManagementSource: this.inventoryManagementSource,\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tif (event.data[1]?.actionId === 'CANCEL_CONDUCT')\n\t\t\t{\n\t\t\t\tevent.data[0]._ajaxForms['CANCEL_CONDUCT'].addUrlParams({\n\t\t\t\t\tdocumentType: this.documentType,\n\t\t\t\t\tinventoryManagementSource: this.inventoryManagementSource,\n\t\t\t\t});\n\t\t\t}\n\t\t});\n\t}\n\n\tsubscribeToEntityCreateEvent()\n\t{\n\t\tEventEmitter.subscribe('onEntityCreate', (event) => {\n\t\t\twindow.top.BX.onCustomEvent('DocumentCard:onEntityCreate');\n\t\t\tBX.SidePanel.Instance.getOpenSliders().forEach((slider) => {\n\t\t\t\tif (slider.getWindow()?.BX.Catalog?.DocumentGridManager)\n\t\t\t\t{\n\t\t\t\t\tslider.getWindow().BX.onCustomEvent('DocumentCard:onEntityCreate');\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tlet editor = event?.data[0]?.sender;\n\t\t\tif (editor)\n\t\t\t{\n\t\t\t\teditor._toolPanel.disableSaveButton();\n\t\t\t\teditor.hideToolPanel();\n\t\t\t}\n\t\t});\n\t}\n\n\tsubscribeToBeforeEntityRedirectEvent()\n\t{\n\t\tEventEmitter.subscribe('beforeEntityRedirect', (event) => {\n\t\t\twindow.top.BX.onCustomEvent('DocumentCard:onBeforeEntityRedirect');\n\t\t\tBX.SidePanel.Instance.getOpenSliders().forEach((slider) => {\n\t\t\t\tslider.getWindow().BX.onCustomEvent('DocumentCard:onBeforeEntityRedirect');\n\t\t\t});\n\t\t\tlet editor = event?.data[0]?.sender;\n\t\t\tif (editor)\n\t\t\t{\n\t\t\t\teditor._toolPanel.disableSaveButton();\n\t\t\t\teditor.hideToolPanel();\n\n\t\t\t\tthis.showNotificationOnClose = event?.data[0]?.showNotificationOnClose === 'Y';\n\n\t\t\t\tif (this.showNotificationOnClose)\n\t\t\t\t{\n\t\t\t\t\tlet url = event.data[0].redirectUrl;\n\t\t\t\t\tif (!url)\n\t\t\t\t\t{\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\turl = BX.Uri.removeParam(url, 'closeOnSave');\n\n\t\t\t\t\twindow.top.BX.UI.Notification.Center.notify({\n\t\t\t\t\t\tcontent: Loc.getMessage('DOCUMENT_CONDUCT_SUCCESSFUL'),\n\t\t\t\t\t\tactions: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\ttitle: Loc.getMessage('DOCUMENT_CONDUCT_SUCCESSFUL_VIEW'),\n\t\t\t\t\t\t\t\thref: url,\n\t\t\t\t\t\t\t\tevents: {\n\t\t\t\t\t\t\t\t\tclick: function(event, balloon, action) {\n\t\t\t\t\t\t\t\t\t\tballoon.close();\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\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\t}\n\n\tvalidateControllers(controllers)\n\t{\n\t\tlet validateResult = true;\n\t\tif (controllers instanceof Array)\n\t\t{\n\t\t\tcontrollers.forEach((controller) => {\n\t\t\t\tif (controller instanceof ProductListController)\n\t\t\t\t{\n\t\t\t\t\tif (!controller.validateProductList())\n\t\t\t\t\t{\n\t\t\t\t\t\tvalidateResult = false;\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\tvalidateResult = false;\n\t\t}\n\n\t\treturn validateResult;\n\t}\n\n\tsendAnalyticsData(data)\n\t{\n\t\tBX.ajax.runAction(\n\t\t\t'catalog.analytics.sendAnalyticsLabel',\n\t\t\t{\n\t\t\t\tanalyticsLabel: data,\n\t\t\t}\n\t\t);\n\t}\n\n\taddCopyLinkPopup()\n\t{\n\t\tlet copyLinkButton = document.getElementById(this.settings.copyLinkButtonId);\n\t\tif (!copyLinkButton)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tcopyLinkButton.onclick = () => {\n\t\t\tthis.copyDocumentLinkToClipboard();\n\t\t}\n\t}\n\n\tcopyDocumentLinkToClipboard()\n\t{\n\t\tlet url = BX.util.remove_url_param(window.location.href, [\"IFRAME\", \"IFRAME_TYPE\"]);\n\t\tif(!BX.clipboard.copy(url))\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tvar popup = new BX.PopupWindow(\n\t\t\t'catalog_copy_document_url_to_clipboard',\n\t\t\tdocument.getElementById(this.settings.copyLinkButtonId),\n\t\t\t{\n\t\t\t\tcontent: Loc.getMessage('DOCUMENT_LINK_COPIED'),\n\t\t\t\tdarkMode: true,\n\t\t\t\tautoHide: true,\n\t\t\t\tzIndex: 1000,\n\t\t\t\tangle: true,\n\t\t\t\tbindOptions: { position: \"top\" }\n\t\t\t}\n\t\t);\n\t\tpopup.show();\n\n\t\tsetTimeout(function(){ popup.close(); }, 1500);\n\t}\n\n\tstatic registerFieldFactory()\n\t{\n\t\tDocumentCard.#fieldFactory = new FieldsFactory();\n\t}\n\n\tstatic registerModelFactory()\n\t{\n\t\tDocumentCard.#modelFactory = new ModelFactory();\n\t}\n\n\tstatic registerDocumentControllersFactory(eventName)\n\t{\n\t\tDocumentCard.#controllersFactory = new ControllersFactory(eventName);\n\t}\n\n\tsetSliderText()\n\t{\n\t\tlet slider = BX.SidePanel.Instance.getTopSlider();\n\t\tif (slider)\n\t\t{\n\t\t\tslider.getLabel().setText(Loc.getMessage('SLIDER_LABEL_' + this.documentType));\n\t\t}\n\t}\n\n\tdisableSaveAndConductButton()\n\t{\n\t\tif(!this.conductAndSaveButton)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tthis.conductAndSaveButton.disabled = true;\n\t\tBX.addClass(this.conductAndSaveButton, 'ui-btn-disabled');\n\t}\n\n\tenableSaveAndConductButton()\n\t{\n\t\tif(!this.conductAndSaveButton)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tthis.conductAndSaveButton.disabled = false;\n\t\tBX.removeClass(this.conductAndSaveButton, 'ui-btn-disabled');\n\t}\n}\n\nexport default DocumentCard;\n","import {Loc, Tag} from 'main.core';\nimport 'ui.feedback.form';\n\nexport default class Button\n{\n\tstatic render(parentNode, highlight)\n\t{\n\t\tconst buttonTitle = Loc.getMessage('FEEDBACK_BUTTON_TITLE');\n\n\t\tconst button = Tag.render`\n\t\t\t<button class=\"ui-btn ui-btn-light-border ui-btn-themes\" title=\"${buttonTitle}\">\n\t\t\t\t<span class=\"ui-btn-text\">\n\t\t\t\t\t${buttonTitle}\n\t\t\t\t</span>\n\t\t\t</button>\n\t\t`;\n\t\tif (highlight)\n\t\t{\n\t\t\tbutton.style.zIndex = 140;\n\t\t\tbutton.style.backgroundColor = '#fff';\n\t\t}\n\n\t\tbutton.addEventListener('click', () => {\n\t\t\tBX.Catalog.DocumentCard.Slider.openFeedbackForm();\n\t\t});\n\n\t\tparentNode.appendChild(button);\n\n\t\treturn button;\n\t}\n}\n","import {Type, Uri} from \"main.core\";\n\nexport default class Slider\n{\n\tstatic openFeedbackForm()\n\t{\n\t\tconst url = new Uri('/bitrix/components/bitrix/catalog.feedback/slider.php');\n\t\turl.setQueryParams({feedback_type: 'feedback'});\n\n\t\treturn Slider.open(url.toString(), {width: 735});\n\t}\n\n\tstatic openIntegrationRequestForm(event, params={})\n\t{\n\t\tif (event && Type.isFunction(event.preventDefault))\n\t\t{\n\t\t\tevent.preventDefault();\n\t\t}\n\n\t\tif(!Type.isPlainObject(params))\n\t\t{\n\t\t\tparams = {};\n\t\t}\n\n\t\tlet url = (new Uri('/bitrix/components/bitrix/catalog.feedback/slider.php'));\n\n\t\turl.setQueryParams({feedback_type: 'integration_request'});\n\t\turl.setQueryParams(params);\n\n\t\treturn Slider.open(url.toString(), {width: 735});\n\t}\n\n\tstatic open(url, options)\n\t{\n\t\tif(!Type.isPlainObject(options))\n\t\t{\n\t\t\toptions = {};\n\t\t}\n\t\toptions = {...{cacheable: false, allowChangeHistory: false, events: {}}, ...options};\n\t\treturn new Promise((resolve) =>\n\t\t{\n\t\t\tif(Type.isString(url) && url.length > 1)\n\t\t\t{\n\t\t\t\toptions.events.onClose = function(event)\n\t\t\t\t{\n\t\t\t\t\tresolve(event.getSlider());\n\t\t\t\t};\n\t\t\t\tBX.SidePanel.Instance.open(url, options);\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tresolve();\n\t\t\t}\n\t\t});\n\t}\n}"],"names":["ProductListController","id","settings","_currencyId","initialize","_setProductListHandler","handleSetProductList","bind","_tabShowHandler","onTabShow","_editorControlChangeHandler","onEditorControlChange","_model","getField","EventEmitter","subscribe","_editor","event","data","field","params","getId","changeCurrency","item","value","productList","getData","setProductList","unsubscribe","reloadGrid","tab","handleOnTabShow","emit","rollback","onInnerCancel","changeCurrencyId","updateTotalUiCurrency","_isChanged","destroy","setController","setForm","getFormElement","getCurrencyId","_prevProductCount","_curProductCount","getProductCount","removeFormFields","_toolPanel","showViewModeButtons","disableSaveButton","markAsChanged","getProductsFields","isChanged","isNew","compileProductData","enableSaveButton","BX","UI","EntityEditorMoney","fieldName","fieldValue","currencyValue","totalData","setField","Currency","currencyFormat","totalCost","totalCurrencyControl","getControlById","refreshLayout","errorsArray","validate","length","addError","EntityEditorController","DocumentCardController","lockField","window","top","onCustomEvent","sliders","SidePanel","Instance","getOpenSliders","forEach","slider","getWindow","Catalog","DocumentGridManager","tabId","setTimeout","ControllersFactory","eventName","getCompatData","eventArgs","methods","factory","type","controlId","DocumentModel","title","isString","caption","EntityModel","ModelFactory","ProductRowSummary","_loader","_productsContainer","_previousData","_itemCount","_totalCount","_moreButton","_moreButtonRow","_totalsRow","_moreButtonClickHandler","delegate","_onMoreButtonClick","_visibleItemsLimit","options","_hasLayout","ensureWrapperCreated","adjustWrapper","getValue","isPlainObject","getTitle","items","prop","getArray","getInteger","maxLength","restLength","isDragEnabled","_wrapper","appendChild","createDragButton","createTitleNode","create","props","className","i","addProductRow","addMoreButton","addTotalRow","children","isContextMenuEnabled","createContextMenuButton","initializeDragDropAbilities","registerLayout","row","nameCell","attrs","events","click","text","Loc","getMessage","toString","total","html","valueCell","CurrencyCore","amount","currency","addProductsLink","href","onclick","e","innerHTML","util","htmlspecialchars","EntityEditorField","Contractor","_input","innerWrapper","currentContractorName","viewModeDisplay","name","getName","_schemeElement","getContractorNameFromModel","Tag","render","_mode","EntityEditorMode","edit","currentSelectedItems","push","entityId","contractorSelector","TagSelector","placeholder","textBoxWidth","multiple","dialogOptions","context","entities","dynamicLoad","dynamicSearch","searchOptions","allowCreateItem","footerOptions","label","_changeHandler","createContractor","renderTo","EntityEditorModeOptions","check","_modeOptions","individual","getDialog","show","hasContentToDisplay","result","clearError","hasValidators","executeValidators","isValid","isRequired","isRequiredByAttribute","trim","EntityValidationError","showRequiredFieldError","mode","EntityEditorModeSwitchType","common","button","content","searchQuery","companyName","getQuery","Promise","resolve","reject","dialog","getTarget","fields","showLoader","ajax","runAction","then","response","hideLoader","addItem","tabs","getRecentTab","select","hide","Notification","Center","notify","getSchemeField","FieldsFactory","DocumentCard","documentType","isDocumentConducted","documentStatus","componentName","signedParameters","isConductLocked","masterSliderUrl","editorName","includeCrmEntityEditor","inventoryManagementSource","activeTabId","isTabAnalyticsSent","setSliderText","addCopyLinkPopup","subscribeToEvents","documentTypeSelector","initDocumentTypeSelector","Wrapper","setParam","showNotificationOnClose","documentTypeSelectorTypes","menuItems","getTopSlider","url","Uri","addParam","getUrl","DOCUMENT_TYPE","removeParam","focusedTab","requestMethod","requestParams","getDocumentFieldsForTypeSwitching","getProductsForTypeSwitching","setFrameSrc","popupMenu","MenuManager","bindElement","addEventListener","preventDefault","documentFields","editor","getEditorInstance","form","formData","FormData","formProps","Object","fromEntries","fieldsToTransfer","products","Reflection","getClass","productFields","Store","ProductList","productRow","product","Type","isObject","destinationField","keys","sourceField","card","Slider","open","openGridOnDone","onCloseComplete","getSlider","get","allowChangeHistory","location","reload","showEditModeButtons","editorInstance","getDefault","subscribeToUserSelectorEvent","subscribeToValidationFailedEvent","subscribeToOnSaveEvent","subscribeToTabOpenEvent","subscribeToDirectActionEvent","subscribeToEntityCreateEvent","subscribeToBeforeEntityRedirectEvent","eventData","Dialog","targetNode","anchor","enableSearch","onSelectEvent","fieldId","selectedItem","userData","avatar","Text","encode","runComponentAction","callback","eventEditor","action","actionId","_ajaxForm","clearErrors","cancel","setLocked","openMasterSlider","validateControllers","getControllers","_ajaxForms","addUrlParams","isNewDocument","sendAnalyticsData","sender","hideToolPanel","redirectUrl","actions","balloon","close","controllers","validateResult","Array","controller","validateProductList","analyticsLabel","copyLinkButton","document","getElementById","copyLinkButtonId","copyDocumentLinkToClipboard","remove_url_param","clipboard","copy","popup","PopupWindow","darkMode","autoHide","zIndex","angle","bindOptions","position","getLabel","setText","conductAndSaveButton","disabled","addClass","removeClass","BaseCard","Button","parentNode","highlight","buttonTitle","style","backgroundColor","openFeedbackForm","setQueryParams","feedback_type","width","isFunction","cacheable","onClose"],"mappings":"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"}
| ver. 1.4 |
Github
|
.
| PHP 7.4.33 | Generation time: 0.27 |
proxy
|
phpinfo
|
Settings