/** * Render country field considering request parameter * * @param \Magento\Framework\Data\Form\Element\AbstractElement $element * @return string */ public function render(\Magento\Framework\Data\Form\Element\AbstractElement $element) { $country = $this->getRequest()->getParam(StructurePlugin::REQUEST_PARAM_COUNTRY); if ($country) { $element->setValue($country); } if ($element->getCanUseDefaultValue()) { $this->_defaultCountry = $this->_scopeConfig->getValue(self::FIELD_CONFIG_PATH); if (!$this->_defaultCountry) { $this->_defaultCountry = $this->directoryHelper->getDefaultCountry(); } if ($country) { $shouldInherit = $country == $this->_defaultCountry && $this->getRequest()->getParam(self::REQUEST_PARAM_DEFAULT_COUNTRY); $element->setInherit($shouldInherit); } if ($element->getInherit()) { $this->_defaultCountry = null; } } return parent::render($element); }
/** * Check if inheritance checkbox has to be rendered * * @param \Magento\Framework\Data\Form\Element\AbstractElement $element * @return bool */ protected function _isInheritCheckboxRequired(\Magento\Framework\Data\Form\Element\AbstractElement $element) { return $element->getCanUseWebsiteValue() || $element->getCanUseDefaultValue(); }
/** * Retrieve label for the inheritance checkbox * * @param \Magento\Framework\Data\Form\Element\AbstractElement $element * @return string */ protected function _getInheritCheckboxLabel(\Magento\Framework\Data\Form\Element\AbstractElement $element) { $checkboxLabel = __('Use system value'); if ($element->getCanUseDefaultValue()) { $checkboxLabel = __('Use Default'); } if ($element->getCanUseWebsiteValue()) { $checkboxLabel = __('Use Website'); } return $checkboxLabel; }