From 2ccb374aaf4a646594eb01e72fee7748871fadcc Mon Sep 17 00:00:00 2001 From: Sergii Shkiria Date: Fri, 15 Dec 2017 16:33:05 +0200 Subject: [PATCH 1/4] magento/magento2#12294: Bug: Adding Custom Attribute - The value of Admin scope can't be empty- Made hidden fields disabled. --- app/code/Magento/Catalog/view/adminhtml/web/js/options.js | 3 +++ 1 file changed, 3 insertions(+) diff --git a/app/code/Magento/Catalog/view/adminhtml/web/js/options.js b/app/code/Magento/Catalog/view/adminhtml/web/js/options.js index 5239eb207efca..89ca97ae53c84 100644 --- a/app/code/Magento/Catalog/view/adminhtml/web/js/options.js +++ b/app/code/Magento/Catalog/view/adminhtml/web/js/options.js @@ -81,6 +81,9 @@ define([ element.addClassName('no-display'); element.addClassName('template'); element.hide(); + jQuery(element).find('input').each(function(index, el) { + el.disabled = 'disabled'; + }); this.totalItems--; this.updateItemsCountField(); } From 0c5cb6ada1c46b7e68ee4cbd282c5369d63cbab7 Mon Sep 17 00:00:00 2001 From: Ievgen Sentiabov Date: Thu, 28 Dec 2017 10:15:35 +0200 Subject: [PATCH 2/4] G#12900: Braintree "Place Order" button is disabled after failed validation - Added handler to enable "Place Order" button on failed validation - Covered changes by js unit test --- .../view/payment/method-renderer/cc-form.js | 1 + .../payment/method-renderer/cc-form.test.js | 35 ++++++++++++++----- 2 files changed, 28 insertions(+), 8 deletions(-) diff --git a/app/code/Magento/Braintree/view/frontend/web/js/view/payment/method-renderer/cc-form.js b/app/code/Magento/Braintree/view/frontend/web/js/view/payment/method-renderer/cc-form.js index 73a7b10d5d30f..d078cacb96c2d 100644 --- a/app/code/Magento/Braintree/view/frontend/web/js/view/payment/method-renderer/cc-form.js +++ b/app/code/Magento/Braintree/view/frontend/web/js/view/payment/method-renderer/cc-form.js @@ -79,6 +79,7 @@ define( */ onError: function (response) { braintree.showError($t('Payment ' + this.getTitle() + ' can\'t be initialized')); + this.isPlaceOrderActionAllowed(true); throw response.message; }, diff --git a/dev/tests/js/jasmine/tests/app/code/Magento/Braintree/frontend/js/view/payment/method-renderer/cc-form.test.js b/dev/tests/js/jasmine/tests/app/code/Magento/Braintree/frontend/js/view/payment/method-renderer/cc-form.test.js index d71f517b5e7f9..52739eec2782b 100644 --- a/dev/tests/js/jasmine/tests/app/code/Magento/Braintree/frontend/js/view/payment/method-renderer/cc-form.test.js +++ b/dev/tests/js/jasmine/tests/app/code/Magento/Braintree/frontend/js/view/payment/method-renderer/cc-form.test.js @@ -27,7 +27,7 @@ define([ ), 'Magento_Braintree/js/view/payment/adapter': jasmine.createSpyObj( 'adapter', - ['setup', 'setConfig'] + ['setup', 'setConfig', 'showError'] ) }, braintreeCcForm; @@ -43,14 +43,17 @@ define([ }; injector.mock(mocks); injector.require(['Magento_Braintree/js/view/payment/method-renderer/cc-form'], function (Constr) { - braintreeCcForm = new Constr({ - provider: 'provName', - name: 'test', - index: 'test' - }); - - done(); + braintreeCcForm = new Constr({ + provider: 'provName', + name: 'test', + index: 'test', + item: { + title: 'Braintree' + } }); + + done(); + }); }); it('Check if payment code and message container are restored after onActiveChange call.', function () { @@ -65,5 +68,21 @@ define([ expect(braintreeCcForm.getCode()).toEqual(expectedCode); expect(braintreeCcForm.messageContainer).toEqual(expectedMessageContainer); }); + + it('Check if form validation fails when "Place Order" button should be active.', function () { + var errorMessage = 'Something went wrong.', + + /** + * Anonymous wrapper + */ + func = function () { + braintreeCcForm.clientConfig.onError({ + 'message': errorMessage + }); + }; + + expect(func).toThrow(errorMessage); + expect(braintreeCcForm.isPlaceOrderActionAllowed()).toBeTruthy(); + }); }); }); From e78ea61cc080a38bb7985f04b5bf33ab0547cf73 Mon Sep 17 00:00:00 2001 From: Oleksandr Miroshnichenko Date: Tue, 2 Jan 2018 14:47:09 +0200 Subject: [PATCH 3/4] magento/magento2#12294: Bug: Adding Custom Attribute - The value of Admin scope can't be empty --- .../templates/catalog/product/attribute/options.phtml | 2 +- .../Magento/Catalog/view/adminhtml/web/js/options.js | 11 +++++++---- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/attribute/options.phtml b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/attribute/options.phtml index 6ff0e193a774f..f812a27f87ad9 100644 --- a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/attribute/options.phtml +++ b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/attribute/options.phtml @@ -57,7 +57,7 @@ $stores = $block->getStoresSortedBySortOrder();