From fe83f6925c5ab634202276365f7d96e160f59b2a Mon Sep 17 00:00:00 2001 From: Andrii Lugovyi <alugovyi@ebay.com> Date: Sat, 17 Oct 2015 21:25:48 +0300 Subject: [PATCH] =?UTF-8?q?MAGETWO-44055:=20[GITHUB]=20Admin=20product=20?= =?UTF-8?q?=C2=ABCustom=20Options=C2=BB=20tab=20controls=20(=C2=ABImport?= =?UTF-8?q?=20Options=C2=BB,=20=C2=ABAdd=20New=20Option=C2=BB=20buttons)?= =?UTF-8?q?=20do=20not=20work=20when=20non-English=20locale=20is=20used=20?= =?UTF-8?q?#1971?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../adminhtml/templates/catalog/product/edit/options.phtml | 2 +- .../templates/catalog/product/edit/options/option.phtml | 2 +- .../Magento/Catalog/view/adminhtml/web/js/custom-options.js | 2 +- lib/internal/Magento/Framework/View/Element/Html/Select.php | 4 +++- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/options.phtml b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/options.phtml index 67b1e95e308..6ed486f4c0b 100644 --- a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/options.phtml +++ b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/options.phtml @@ -9,7 +9,7 @@ ?> <?php /** @var $block \Magento\Catalog\Block\Adminhtml\Product\Edit\Tab\Options */ ?> -<div class="fieldset-wrapper" id="product-custom-options-wrapper"> +<div class="fieldset-wrapper" id="product-custom-options-wrapper" data-block="product-custom-options"> <div class="fieldset-wrapper-title"> <strong class="title"> <span><?php /* @escapeNotVerified */ echo __('Custom Options') ?></span> diff --git a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/options/option.phtml b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/options/option.phtml index 3403d4447f8..ef38f34b168 100644 --- a/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/options/option.phtml +++ b/app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/options/option.phtml @@ -88,7 +88,7 @@ require([ ], function(jQuery){ jQuery(function ($) { - var fieldSet = $('#Custom_Options'); + var fieldSet = $('[data-block=product-custom-options]'); fieldSet.customOptions(<?php /* @escapeNotVerified */ echo $this->helper('Magento\Framework\Json\Helper\Data')->jsonEncode( [ 'fieldId' => $block->getFieldId(), diff --git a/app/code/Magento/Catalog/view/adminhtml/web/js/custom-options.js b/app/code/Magento/Catalog/view/adminhtml/web/js/custom-options.js index b7a16ce3db8..3c7163a2227 100644 --- a/app/code/Magento/Catalog/view/adminhtml/web/js/custom-options.js +++ b/app/code/Magento/Catalog/view/adminhtml/web/js/custom-options.js @@ -216,7 +216,7 @@ define([ var widget = this, currentElement = $(event.target), parentId = '#' + currentElement.closest('.fieldset-alt').attr('id'), - group = currentElement.find('[value="' + currentElement.val() + '"]').closest('optgroup').attr('label'), + group = currentElement.find('[value="' + currentElement.val() + '"]').closest('optgroup').attr('data-name'), previousGroup = $(parentId + '_previous_group').val(), previousBlock = $(parentId + '_type_' + previousGroup), tmpl; diff --git a/lib/internal/Magento/Framework/View/Element/Html/Select.php b/lib/internal/Magento/Framework/View/Element/Html/Select.php index ab54697632a..2b240270ba7 100644 --- a/lib/internal/Magento/Framework/View/Element/Html/Select.php +++ b/lib/internal/Magento/Framework/View/Element/Html/Select.php @@ -154,16 +154,18 @@ class Select extends \Magento\Framework\View\Element\AbstractBlock if ($isArrayOption && is_array($option)) { $value = $option['value']; $label = (string)$option['label']; + $name = $option['label'] instanceof \Magento\Framework\Phrase ? $option['label']->getText() : $label; $params = !empty($option['params']) ? $option['params'] : []; } else { $value = (string)$key; $label = (string)$option; + $name = $label; $isArrayOption = false; $params = []; } if (is_array($value)) { - $html .= '<optgroup label="' . $label . '">'; + $html .= '<optgroup label="' . $label . '" data-name="' . $name . '">'; foreach ($value as $keyGroup => $optionGroup) { if (!is_array($optionGroup)) { $optionGroup = ['value' => $keyGroup, 'label' => $optionGroup]; -- GitLab