/** * Custom additional element html * * @param AbstractElement $element * @return string */ protected function _getAdditionalElementHtml($element) { // Add name attribute to checkboxes that correspond to multiselect elements $nameAttributeHtml = $element->getExtType() === 'multiple' ? 'name="' . $element->getId() . '_checkbox"' : ''; $elementId = $element->getId(); $checkboxLabel = __('Change'); $html = <<<HTML <span class="attribute-change-checkbox"> <label> <input type="checkbox" {$nameAttributeHtml} onclick="toogleFieldEditMode(this, '{$elementId}')" /> {$checkboxLabel} </label> </span> <script>initDisableFields("{$elementId}")</script> HTML; if ($elementId === 'weight') { $html .= <<<HTML <script>jQuery(function(\$) { \$('#weight_and_type_switcher, label[for=weight_and_type_switcher]').hide(); });</script> HTML; } return $html; }
/** * Custom additional element html * * @param AbstractElement $element * @return string */ protected function _getAdditionalElementHtml($element) { // Add name attribute to checkboxes that correspond to multiselect elements $nameAttributeHtml = $element->getExtType() === 'multiple' ? 'name="' . $element->getId() . '_checkbox"' : ''; $elementId = $element->getId(); $dataAttribute = "data-disable='{$elementId}'"; $dataCheckboxName = "toggle_" . "{$elementId}"; $checkboxLabel = __('Change'); $html = <<<HTML <span class="attribute-change-checkbox"> <input type="checkbox" id="{$dataCheckboxName}" name="{$dataCheckboxName}" class="checkbox" {$nameAttributeHtml} onclick="toogleFieldEditMode(this, '{$elementId}')" {$dataAttribute} /> <label class="label" for="{$dataCheckboxName}"> {$checkboxLabel} </label> </span> HTML; if ($elementId === 'weight') { $html .= <<<HTML <script type="text/javascript">require(["jquery"],function(\$) { \$('#weight_and_type_switcher, label[for=weight_and_type_switcher]').hide(); });</script> HTML; } return $html; }
/** * Custom additional element html * * @param AbstractElement $element * @return string */ protected function _getAdditionalElementHtml($element) { // Add name attribute to checkboxes that correspond to multiselect elements $nameAttributeHtml = $element->getExtType() === 'multiple' ? 'name="' . $element->getId() . '_checkbox"' : ''; $elementId = $element->getId(); $dataAttribute = "data-disable='{$elementId}'"; $dataCheckboxName = "toggle_" . "{$elementId}"; $checkboxLabel = __('Change'); $html = <<<HTML <span class="attribute-change-checkbox"> <input type="checkbox" id="{$dataCheckboxName}" name="{$dataCheckboxName}" class="checkbox" {$nameAttributeHtml} onclick="toogleFieldEditMode(this, '{$elementId}')" {$dataAttribute} /> <label class="label" for="{$dataCheckboxName}"> {$checkboxLabel} </label> </span> HTML; if ($elementId === 'weight') { $html .= <<<HTML <script>require(['Magento_Catalog/js/product/weight-handler'], function (weightHandle) { weightHandle.hideWeightSwitcher(); });</script> HTML; } return $html; }
/** * 2015-11-24 * @used-by \Df\Backend\Block\Widget\Form\Renderer\Fieldset\Element::shouldLabelBeAtRight() * @param AE|Element $e * @return bool */ public static function shouldLabelBeAtRight(AE $e) { /** @var string|null $position */ $position = $e->getLabelPosition(); return $position ? ElementI::AFTER === $position : in_array($e->getExtType(), ['checkbox', 'radio']); }