From 0105e4c59d5606662a100580c4627e29f6f999cf Mon Sep 17 00:00:00 2001 From: Denis Kopylov Date: Thu, 23 May 2019 17:11:41 +0300 Subject: [PATCH 1/5] [Catalog|Sales] Fix wrong behavior of grid row click event --- .../web/catalog/category/assign-products.js | 19 +- .../adminhtml/web/order/create/scripts.js | 445 +++++++++--------- lib/web/mage/adminhtml/grid.js | 89 ++-- 3 files changed, 293 insertions(+), 260 deletions(-) diff --git a/app/code/Magento/Catalog/view/adminhtml/web/catalog/category/assign-products.js b/app/code/Magento/Catalog/view/adminhtml/web/catalog/category/assign-products.js index 829c04c13106d..598bde9106231 100644 --- a/app/code/Magento/Catalog/view/adminhtml/web/catalog/category/assign-products.js +++ b/app/code/Magento/Catalog/view/adminhtml/web/catalog/category/assign-products.js @@ -51,15 +51,28 @@ define([ */ function categoryProductRowClick(grid, event) { var trElement = Event.findElement(event, 'tr'), - isInput = Event.element(event).tagName === 'INPUT', + eventElement = Event.element(event), + isInputCheckbox = eventElement.tagName === 'INPUT' && eventElement.type === 'checkbox', + isInputPosition = grid.targetElement + && grid.targetElement.tagName === 'INPUT' + && grid.targetElement.name === 'position', checked = false, checkbox = null; - if (trElement) { + if (eventElement.tagName === 'LABEL' + && trElement.querySelector('#' + eventElement.htmlFor) + && trElement.querySelector('#' + eventElement.htmlFor).type === 'checkbox' + ) { + event.stopPropagation(); + trElement.querySelector('#' + eventElement.htmlFor).trigger('click'); + return; + } + + if (trElement && !isInputPosition) { checkbox = Element.getElementsBySelector(trElement, 'input'); if (checkbox[0]) { - checked = isInput ? checkbox[0].checked : !checkbox[0].checked; + checked = isInputCheckbox ? checkbox[0].checked : !checkbox[0].checked; gridJsObject.setCheckboxChecked(checkbox[0], checked); } } diff --git a/app/code/Magento/Sales/view/adminhtml/web/order/create/scripts.js b/app/code/Magento/Sales/view/adminhtml/web/order/create/scripts.js index c508a5ecdfa58..d6221b8914449 100644 --- a/app/code/Magento/Sales/view/adminhtml/web/order/create/scripts.js +++ b/app/code/Magento/Sales/view/adminhtml/web/order/create/scripts.js @@ -19,17 +19,17 @@ define([ window.AdminOrder = new Class.create(); AdminOrder.prototype = { - initialize : function(data){ - if(!data) data = {}; - this.loadBaseUrl = false; - this.customerId = data.customer_id ? data.customer_id : false; - this.storeId = data.store_id ? data.store_id : false; - this.quoteId = data['quote_id'] ? data['quote_id'] : false; - this.currencyId = false; + initialize: function (data) { + if (!data) data = {}; + this.loadBaseUrl = false; + this.customerId = data.customer_id ? data.customer_id : false; + this.storeId = data.store_id ? data.store_id : false; + this.quoteId = data['quote_id'] ? data['quote_id'] : false; + this.currencyId = false; this.currencySymbol = data.currency_symbol ? data.currency_symbol : ''; - this.addresses = data.addresses ? data.addresses : $H({}); + this.addresses = data.addresses ? data.addresses : $H({}); this.shippingAsBilling = data.shippingAsBilling ? data.shippingAsBilling : false; - this.gridProducts = $H({}); + this.gridProducts = $H({}); this.gridProductsGift = $H({}); this.billingAddressContainer = ''; this.shippingAddressContainer = ''; @@ -55,10 +55,10 @@ define([ } }); - jQuery.async('#order-items', (function(){ + jQuery.async('#order-items', (function () { this.dataArea = new OrderFormArea('data', $(this.getAreaId('data')), this); this.itemsArea = Object.extend(new OrderFormArea('items', $(this.getAreaId('items')), this), { - addControlButton: function(button){ + addControlButton: function (button) { var controlButtonArea = $(this.node).select('.actions')[0]; if (typeof controlButtonArea != 'undefined') { var buttons = controlButtonArea.childElements(); @@ -75,7 +75,7 @@ define([ var searchButtonId = 'add_products', searchButton = new ControlButton(jQuery.mage.__('Add Products'), searchButtonId), searchAreaId = this.getAreaId('search'); - searchButton.onClick = function() { + searchButton.onClick = function () { $(searchAreaId).show(); var el = this; window.setTimeout(function () { @@ -84,13 +84,13 @@ define([ }; if (jQuery('#' + this.getAreaId('items')).is(':visible')) { - this.dataArea.onLoad = this.dataArea.onLoad.wrap(function(proceed) { + this.dataArea.onLoad = this.dataArea.onLoad.wrap(function (proceed) { proceed(); this._parent.itemsArea.setNode($(this._parent.getAreaId('items'))); this._parent.itemsArea.onLoad(); }); - this.itemsArea.onLoad = this.itemsArea.onLoad.wrap(function(proceed) { + this.itemsArea.onLoad = this.itemsArea.onLoad.wrap(function (proceed) { proceed(); if ($(searchAreaId) && !$(searchAreaId).visible() && !$(searchButtonId)) { this.addControlButton(searchButton); @@ -102,35 +102,35 @@ define([ }).bind(this)); jQuery('#edit_form') - .on('submitOrder', function(){ + .on('submitOrder', function () { jQuery(this).trigger('realOrder'); }) .on('realOrder', this._realSubmit.bind(this)); }, - areasLoaded: function(){ + areasLoaded: function () { }, - itemsLoaded: function(){ + itemsLoaded: function () { }, - dataLoaded: function(){ + dataLoaded: function () { this.dataShow(); }, - setLoadBaseUrl : function(url){ + setLoadBaseUrl: function (url) { this.loadBaseUrl = url; }, - setAddresses : function(addresses){ + setAddresses: function (addresses) { this.addresses = addresses; }, - addExcludedPaymentMethod : function(method){ + addExcludedPaymentMethod: function (method) { this.excludedPaymentMethods.push(method); }, - setCustomerId : function(id){ + setCustomerId: function (id) { this.customerId = id; this.loadArea('header', true); $(this.getAreaId('header')).callback = 'setCustomerAfter'; @@ -138,18 +138,17 @@ define([ $('reset_order_top_button').show(); }, - setCustomerAfter : function () { + setCustomerAfter: function () { this.customerSelectorHide(); if (this.storeId) { $(this.getAreaId('data')).callback = 'dataLoaded'; this.loadArea(['data'], true); - } - else { + } else { this.storeSelectorShow(); } }, - setStoreId : function(id){ + setStoreId: function (id) { this.storeId = id; this.storeSelectorHide(); this.sidebarShow(); @@ -158,26 +157,25 @@ define([ this.loadArea(['header', 'data'], true); }, - setCurrencyId : function(id){ + setCurrencyId: function (id) { this.currencyId = id; //this.loadArea(['sidebar', 'data'], true); this.loadArea(['data'], true); }, - setCurrencySymbol : function(symbol){ + setCurrencySymbol: function (symbol) { this.currencySymbol = symbol; }, - selectAddress : function(el, container){ + selectAddress: function (el, container) { id = el.value; if (id.length == 0) { id = '0'; } - if(this.addresses[id]){ + if (this.addresses[id]) { this.fillAddressFields(container, this.addresses[id]); - } - else{ + } else { this.fillAddressFields(container, {}); } @@ -187,7 +185,7 @@ define([ this.resetPaymentMethod(); if (this.isShippingField(container) && !this.isShippingMethodReseted) { this.resetShippingMethod(data); - } else{ + } else { this.saveData(data); } }, @@ -313,13 +311,13 @@ define([ }); }, - fillAddressFields: function(container, data){ + fillAddressFields: function (container, data) { var regionIdElem = false; var regionIdElemValue = false; var fields = $(container).select('input', 'select', 'textarea'); var re = /[^\[]*\[[^\]]*\]\[([^\]]*)\](\[(\d)\])?/; - for(var i=0;i 0) { @@ -606,29 +610,39 @@ define([ input.disabled = !checkbox.checked || input.hasClassName('input-inactive'); - Event.observe(input,'keyup', this.productGridRowInputChange.bind(this)); - Event.observe(input,'change',this.productGridRowInputChange.bind(this)); + Event.observe(input, 'keyup', this.productGridRowInputChange.bind(this)); + Event.observe(input, 'change', this.productGridRowInputChange.bind(this)); } } }, - productGridRowInputChange : function(event){ + productGridRowInputChange: function (event) { var element = Event.element(event); - if (element && element.checkboxElement && element.checkboxElement.checked){ - if (element.name!='giftmessage' || element.checked) { + if (element && element.checkboxElement && element.checkboxElement.checked) { + if (element.name != 'giftmessage' || element.checked) { this.gridProducts.get(element.checkboxElement.value)[element.name] = element.value; - } else if (element.name=='giftmessage' && this.gridProducts.get(element.checkboxElement.value)[element.name]) { - delete(this.gridProducts.get(element.checkboxElement.value)[element.name]); + } else if (element.name == 'giftmessage' && this.gridProducts.get(element.checkboxElement.value)[element.name]) { + delete (this.gridProducts.get(element.checkboxElement.value)[element.name]); } } }, - productGridRowClick : function(grid, event){ + productGridRowClick: function (grid, event) { var trElement = Event.findElement(event, 'tr'); var qtyElement = trElement.select('input[name="qty"]')[0]; var eventElement = Event.element(event); - var isInputCheckbox = eventElement.tagName == 'INPUT' && eventElement.type == 'checkbox'; - var isInputQty = eventElement.tagName == 'INPUT' && eventElement.name == 'qty'; + + if (eventElement.tagName === 'LABEL' + && trElement.querySelector('#' + eventElement.htmlFor) + && trElement.querySelector('#' + eventElement.htmlFor).type === 'checkbox' + ) { + event.stopPropagation(); + trElement.querySelector('#' + eventElement.htmlFor).trigger('click'); + return; + } + + var isInputCheckbox = (eventElement.tagName === 'INPUT' && eventElement.type === 'checkbox'); + var isInputQty = grid.targetElement && grid.targetElement.tagName === 'INPUT' && grid.targetElement.name === 'qty'; if (trElement && !isInputQty) { var checkbox = Element.select(trElement, 'input[type="checkbox"]')[0]; var confLink = Element.select(trElement, 'a')[0]; @@ -650,10 +664,10 @@ define([ if (!priceBase) { this.productPriceBase[productId] = 0; } else { - this.productPriceBase[productId] = parseFloat(priceBase[1].replace(/,/g,'')); + this.productPriceBase[productId] = parseFloat(priceBase[1].replace(/,/g, '')); } } - productConfigure.setConfirmCallback(listType, function() { + productConfigure.setConfirmCallback(listType, function () { // sync qty of popup and qty of grid var confirmedCurrentQty = productConfigure.getCurrentConfirmedQtyElement(); if (qtyElement && confirmedCurrentQty && !isNaN(confirmedCurrentQty.value)) { @@ -669,12 +683,12 @@ define([ // and set checkbox checked grid.setCheckboxChecked(checkbox, true); }.bind(this)); - productConfigure.setCancelCallback(listType, function() { + productConfigure.setCancelCallback(listType, function () { if (!$(productConfigure.confirmedCurrentId) || !$(productConfigure.confirmedCurrentId).innerHTML) { grid.setCheckboxChecked(checkbox, false); } }); - productConfigure.setShowWindowCallback(listType, function() { + productConfigure.setShowWindowCallback(listType, function () { // sync qty of grid and qty of popup var formCurrentQty = productConfigure.getCurrentFormQtyElement(); if (formCurrentQty && qtyElement && !isNaN(qtyElement.value)) { @@ -690,7 +704,7 @@ define([ /** * Is need to summarize price */ - _isSummarizePrice: function(elm) { + _isSummarizePrice: function (elm) { if (elm && elm.hasAttribute('summarizePrice')) { this.summarizePrice = parseInt(elm.readAttribute('summarizePrice')); } @@ -717,9 +731,9 @@ define([ } return 0; }; - for(var i = 0; i < elms.length; i++) { + for (var i = 0; i < elms.length; i++) { if (elms[i].type == 'select-one' || elms[i].type == 'select-multiple') { - for(var ii = 0; ii < elms[i].options.length; ii++) { + for (var ii = 0; ii < elms[i].options.length; ii++) { if (elms[i].options[ii].selected) { if (this._isSummarizePrice(elms[i].options[ii])) { productPrice += getPrice(elms[i].options[ii]); @@ -728,8 +742,7 @@ define([ } } } - } - else if (((elms[i].type == 'checkbox' || elms[i].type == 'radio') && elms[i].checked) + } else if (((elms[i].type == 'checkbox' || elms[i].type == 'radio') && elms[i].checked) || ((elms[i].type == 'file' || elms[i].type == 'text' || elms[i].type == 'textarea' || elms[i].type == 'hidden') && Form.Element.getValue(elms[i])) ) { @@ -748,9 +761,9 @@ define([ return productPrice; }, - productGridCheckboxCheck : function(grid, element, checked){ + productGridCheckboxCheck: function (grid, element, checked) { if (checked) { - if(element.inputElements) { + if (element.inputElements) { this.gridProducts.set(element.value, {}); var product = this.gridProducts.get(element.value); for (var i = 0; i < element.inputElements.length; i++) { @@ -765,36 +778,36 @@ define([ if (input.checked || input.name != 'giftmessage') { product[input.name] = input.value; } else if (product[input.name]) { - delete(product[input.name]); + delete (product[input.name]); } } } } else { - if(element.inputElements){ - for(var i = 0; i < element.inputElements.length; i++) { + if (element.inputElements) { + for (var i = 0; i < element.inputElements.length; i++) { element.inputElements[i].disabled = true; } } this.gridProducts.unset(element.value); } - grid.reloadParams = {'products[]':this.gridProducts.keys()}; + grid.reloadParams = {'products[]': this.gridProducts.keys()}; }, /** * Submit configured products to quote */ - productGridAddSelected : function(){ - if(this.productGridShowButton) Element.show(this.productGridShowButton); - var area = ['search', 'items', 'shipping_method', 'totals', 'giftmessage','billing_method']; + productGridAddSelected: function () { + if (this.productGridShowButton) Element.show(this.productGridShowButton); + var area = ['search', 'items', 'shipping_method', 'totals', 'giftmessage', 'billing_method']; // prepare additional fields and filtered items of products var fieldsPrepare = {}; var itemsFilter = []; var products = this.gridProducts.toObject(); for (var productId in products) { itemsFilter.push(productId); - var paramKey = 'item['+productId+']'; + var paramKey = 'item[' + productId + ']'; for (var productParamKey in products[productId]) { - paramKey += '['+productParamKey+']'; + paramKey += '[' + productParamKey + ']'; fieldsPrepare[paramKey] = products[productId][productParamKey]; } } @@ -804,47 +817,47 @@ define([ this.gridProducts = $H({}); }, - selectCustomer : function(grid, event){ + selectCustomer: function (grid, event) { var element = Event.findElement(event, 'tr'); - if (element.title){ + if (element.title) { this.setCustomerId(element.title); } }, - customerSelectorHide : function(){ + customerSelectorHide: function () { this.hideArea('customer-selector'); }, - customerSelectorShow : function(){ + customerSelectorShow: function () { this.showArea('customer-selector'); }, - storeSelectorHide : function(){ + storeSelectorHide: function () { this.hideArea('store-selector'); }, - storeSelectorShow : function(){ + storeSelectorShow: function () { this.showArea('store-selector'); }, - dataHide : function(){ + dataHide: function () { this.hideArea('data'); }, - dataShow : function(){ + dataShow: function () { if ($('submit_order_top_button')) { $('submit_order_top_button').show(); } this.showArea('data'); }, - clearShoppingCart : function(confirmMessage){ + clearShoppingCart: function (confirmMessage) { var self = this; confirm({ content: confirmMessage, actions: { - confirm: function() { + confirm: function () { self.collectElementsValue = false; order.sidebarApplyChanges({'sidebar[empty_customer_cart]': 1}); self.collectElementsValue = true; @@ -853,12 +866,12 @@ define([ }); }, - sidebarApplyChanges : function(auxiliaryParams) { + sidebarApplyChanges: function (auxiliaryParams) { if ($(this.getAreaId('sidebar'))) { var data = {}; if (this.collectElementsValue) { var elems = $(this.getAreaId('sidebar')).select('input'); - for (var i=0; i < elems.length; i++) { + for (var i = 0; i < elems.length; i++) { if (elems[i].getValue()) { data[elems[i].name] = elems[i].getValue(); } @@ -870,20 +883,20 @@ define([ } } data.reset_shipping = true; - this.loadArea(['sidebar', 'items', 'shipping_method', 'billing_method','totals', 'giftmessage'], true, data); + this.loadArea(['sidebar', 'items', 'shipping_method', 'billing_method', 'totals', 'giftmessage'], true, data); } }, - sidebarHide : function(){ - if(this.storeId === false && $('page:left') && $('page:container')){ + sidebarHide: function () { + if (this.storeId === false && $('page:left') && $('page:container')) { $('page:left').hide(); $('page:container').removeClassName('container'); $('page:container').addClassName('container-collapsed'); } }, - sidebarShow : function(){ - if($('page:left') && $('page:container')){ + sidebarShow: function () { + if ($('page:left') && $('page:container')) { $('page:left').show(); $('page:container').removeClassName('container-collapsed'); $('page:container').addClassName('container'); @@ -904,7 +917,7 @@ define([ for (var i in params) { if (params[i] === null) { unset(params[i]); - } else if (typeof(params[i]) == 'boolean') { + } else if (typeof (params[i]) == 'boolean') { params[i] = params[i] ? 1 : 0; } } @@ -913,15 +926,15 @@ define([ fields.push(new Element('input', {type: 'hidden', name: name, value: params[name]})); } // add additional fields before triggered submit - productConfigure.setBeforeSubmitCallback(listType, function() { + productConfigure.setBeforeSubmitCallback(listType, function () { productConfigure.addFields(fields); }.bind(this)); // response handler - productConfigure.setOnLoadIFrameCallback(listType, function(response) { + productConfigure.setOnLoadIFrameCallback(listType, function (response) { if (!response.ok) { return; } - this.loadArea(['items', 'shipping_method', 'billing_method','totals', 'giftmessage'], true); + this.loadArea(['items', 'shipping_method', 'billing_method', 'totals', 'giftmessage'], true); }.bind(this)); // show item configuration itemId = itemId ? itemId : productId; @@ -929,17 +942,17 @@ define([ return false; }, - removeSidebarItem : function(id, from){ - this.loadArea(['sidebar_'+from], 'sidebar_data_'+from, {remove_item:id, from:from}); + removeSidebarItem: function (id, from) { + this.loadArea(['sidebar_' + from], 'sidebar_data_' + from, {remove_item: id, from: from}); }, - itemsUpdate : function(){ - var area = ['sidebar', 'items', 'shipping_method', 'billing_method','totals', 'giftmessage']; + itemsUpdate: function () { + var area = ['sidebar', 'items', 'shipping_method', 'billing_method', 'totals', 'giftmessage']; // prepare additional fields var fieldsPrepare = {update_items: 1}; var info = $('order-items_grid').select('input', 'select', 'textarea'); - for(var i=0; i 0; //Hash with grid data - this.gridData = this.getGridDataHash(predefinedData); + this.gridData = this.getGridDataHash(predefinedData); //Hidden input data holder - this.hiddenDataHolder = $(hiddenDataHolder); + this.hiddenDataHolder = $(hiddenDataHolder); this.hiddenDataHolder.value = this.serializeObject(); this.grid = grid; @@ -1439,7 +1452,7 @@ define([ */ rowClick: function (grid, event) { var trElement = Event.findElement(event, 'tr'), - isInput = Event.element(event).tagName == 'INPUT', //eslint-disable-line eqeqeq + isInput = Event.element(event).tagName == 'INPUT', //eslint-disable-line eqeqeq checkbox, checked; if (trElement) { From 69447cbbfa4e70b162b9d080bd25f0a377edd6db Mon Sep 17 00:00:00 2001 From: Pavel Bystritsky <51681487+engcom-Foxtrot@users.noreply.github.com> Date: Wed, 13 Nov 2019 11:35:19 +0200 Subject: [PATCH 2/5] magento/magento2#22990: Static tests fix. --- .../web/catalog/category/assign-products.js | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/app/code/Magento/Catalog/view/adminhtml/web/catalog/category/assign-products.js b/app/code/Magento/Catalog/view/adminhtml/web/catalog/category/assign-products.js index 598bde9106231..20f773b650223 100644 --- a/app/code/Magento/Catalog/view/adminhtml/web/catalog/category/assign-products.js +++ b/app/code/Magento/Catalog/view/adminhtml/web/catalog/category/assign-products.js @@ -53,15 +53,15 @@ define([ var trElement = Event.findElement(event, 'tr'), eventElement = Event.element(event), isInputCheckbox = eventElement.tagName === 'INPUT' && eventElement.type === 'checkbox', - isInputPosition = grid.targetElement - && grid.targetElement.tagName === 'INPUT' - && grid.targetElement.name === 'position', + isInputPosition = grid.targetElement && + grid.targetElement.tagName === 'INPUT' && + grid.targetElement.name === 'position', checked = false, checkbox = null; - if (eventElement.tagName === 'LABEL' - && trElement.querySelector('#' + eventElement.htmlFor) - && trElement.querySelector('#' + eventElement.htmlFor).type === 'checkbox' + if (eventElement.tagName === 'LABEL' && + trElement.querySelector('#' + eventElement.htmlFor) && + trElement.querySelector('#' + eventElement.htmlFor).type === 'checkbox' ) { event.stopPropagation(); trElement.querySelector('#' + eventElement.htmlFor).trigger('click'); From 021b5d858670d2f3c8eb2e82bc2454d825abe776 Mon Sep 17 00:00:00 2001 From: Pavel Bystritsky <51681487+engcom-Foxtrot@users.noreply.github.com> Date: Wed, 13 Nov 2019 12:50:22 +0200 Subject: [PATCH 3/5] magento/magento2#22990: Static tests fix. --- .../view/adminhtml/web/catalog/category/assign-products.js | 1 + 1 file changed, 1 insertion(+) diff --git a/app/code/Magento/Catalog/view/adminhtml/web/catalog/category/assign-products.js b/app/code/Magento/Catalog/view/adminhtml/web/catalog/category/assign-products.js index 20f773b650223..807f92b2aa27e 100644 --- a/app/code/Magento/Catalog/view/adminhtml/web/catalog/category/assign-products.js +++ b/app/code/Magento/Catalog/view/adminhtml/web/catalog/category/assign-products.js @@ -65,6 +65,7 @@ define([ ) { event.stopPropagation(); trElement.querySelector('#' + eventElement.htmlFor).trigger('click'); + return; } From 27a57deb6a6e2f4746e3d0a83946b8234818eee3 Mon Sep 17 00:00:00 2001 From: Pavel Bystritsky <51681487+engcom-Foxtrot@users.noreply.github.com> Date: Wed, 13 Nov 2019 14:29:10 +0200 Subject: [PATCH 4/5] magento/magento2#22990: Static tests fix. --- .../view/adminhtml/web/catalog/category/assign-products.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/code/Magento/Catalog/view/adminhtml/web/catalog/category/assign-products.js b/app/code/Magento/Catalog/view/adminhtml/web/catalog/category/assign-products.js index 807f92b2aa27e..35b8958f2f8fd 100644 --- a/app/code/Magento/Catalog/view/adminhtml/web/catalog/category/assign-products.js +++ b/app/code/Magento/Catalog/view/adminhtml/web/catalog/category/assign-products.js @@ -65,7 +65,7 @@ define([ ) { event.stopPropagation(); trElement.querySelector('#' + eventElement.htmlFor).trigger('click'); - + return; } From 8b7458e01f8c07a6f8de3718df318eb236366469 Mon Sep 17 00:00:00 2001 From: Denis Kopylov Date: Tue, 17 Dec 2019 22:21:06 +0300 Subject: [PATCH 5/5] Resolve merge conflict for bug/wrong-behavior-of-grid-row-click --- .../Magento/Sales/view/adminhtml/web/order/create/scripts.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/code/Magento/Sales/view/adminhtml/web/order/create/scripts.js b/app/code/Magento/Sales/view/adminhtml/web/order/create/scripts.js index a2be5fc735581..e138112ac3f5a 100644 --- a/app/code/Magento/Sales/view/adminhtml/web/order/create/scripts.js +++ b/app/code/Magento/Sales/view/adminhtml/web/order/create/scripts.js @@ -169,7 +169,7 @@ define([ }, selectAddress: function (el, container) { - id = el.value; + var id = el.value; if (id.length == 0) { id = '0'; }