![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/old/vendor/magento/module-customer/Block/Widget/ |
<?php /** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ namespace Magento\Customer\Block\Widget; use Magento\Customer\Api\AddressMetadataInterface; use Magento\Customer\Api\CustomerMetadataInterface; use Magento\Customer\Api\Data\CustomerInterface; use Magento\Customer\Helper\Address as AddressHelper; use Magento\Customer\Model\Options; use Magento\Framework\View\Element\Template\Context; /** * Widget for showing customer company. * * @method CustomerInterface getObject() * @method Name setObject(CustomerInterface $customer) * * @SuppressWarnings(PHPMD.DepthOfInheritance) */ class Fax extends AbstractWidget { /** * the attribute code */ const ATTRIBUTE_CODE = 'fax'; /** * @var AddressMetadataInterface */ protected $addressMetadata; /** * @var Options */ protected $options; /** * @param Context $context * @param AddressHelper $addressHelper * @param CustomerMetadataInterface $customerMetadata * @param Options $options * @param AddressMetadataInterface $addressMetadata * @param array $data */ public function __construct( Context $context, AddressHelper $addressHelper, CustomerMetadataInterface $customerMetadata, Options $options, AddressMetadataInterface $addressMetadata, array $data = [] ) { $this->options = $options; parent::__construct($context, $addressHelper, $customerMetadata, $data); $this->addressMetadata = $addressMetadata; $this->_isScopePrivate = true; } /** * @return void */ public function _construct() { parent::_construct(); // default template location $this->setTemplate('Magento_Customer::widget/fax.phtml'); } /** * Can show config value * * @param string $key * * @return bool */ protected function _showConfig($key) { return (bool)$this->getConfig($key); } /** * Can show prefix * * @return bool */ public function showFax() { return $this->_isAttributeVisible(self::ATTRIBUTE_CODE); } /** * @inheritdoc */ protected function _getAttribute($attributeCode) { if ($this->getForceUseCustomerAttributes() || $this->getObject() instanceof CustomerInterface) { return parent::_getAttribute($attributeCode); } try { $attribute = $this->addressMetadata->getAttributeMetadata($attributeCode); } catch (\Magento\Framework\Exception\NoSuchEntityException $e) { return null; } if ($this->getForceUseCustomerRequiredAttributes() && $attribute && !$attribute->isRequired()) { $customerAttribute = parent::_getAttribute($attributeCode); if ($customerAttribute && $customerAttribute->isRequired()) { $attribute = $customerAttribute; } } return $attribute; } /** * Retrieve store attribute label * * @param string $attributeCode * * @return string */ public function getStoreLabel($attributeCode) { $attribute = $this->_getAttribute($attributeCode); return $attribute ? __($attribute->getStoreLabel()) : ''; } /** * Get string with frontend validation classes for attribute * * @param string $attributeCode * * @return string */ public function getAttributeValidationClass($attributeCode) { return $this->_addressHelper->getAttributeValidationClass($attributeCode); } /** * @param string $attributeCode * * @return bool */ private function _isAttributeVisible($attributeCode) { $attributeMetadata = $this->_getAttribute($attributeCode); return $attributeMetadata ? (bool)$attributeMetadata->isVisible() : false; } /** * Check if company attribute enabled in system * * @return bool */ public function isEnabled() { return $this->_getAttribute(self::ATTRIBUTE_CODE) ? (bool)$this->_getAttribute(self::ATTRIBUTE_CODE)->isVisible( ) : false; } /** * Check if company attribute marked as required * * @return bool */ public function isRequired() { return $this->_getAttribute(self::ATTRIBUTE_CODE) ? (bool)$this->_getAttribute(self::ATTRIBUTE_CODE) ->isRequired() : false; } }