![]() 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/Model/Customer/Attribute/Backend/ |
<?php /** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ namespace Magento\Customer\Model\Customer\Attribute\Backend; /** * Customer default shipping address backend * * @author Magento Core Team <[email protected]> */ class Shipping extends \Magento\Eav\Model\Entity\Attribute\Backend\AbstractBackend { /** * @param \Magento\Framework\DataObject $object * @return void */ public function beforeSave($object) { $defaultShipping = $object->getDefaultShipping(); if ($defaultShipping === null) { $object->unsetDefaultShipping(); } } /** * @param \Magento\Framework\DataObject $object * @return void */ public function afterSave($object) { if ($defaultShipping = $object->getDefaultShipping()) { $addressId = false; /** * post_index set in customer save action for address * this is $_POST array index for address */ foreach ($object->getAddresses() as $address) { if ($address->getPostIndex() == $defaultShipping) { $addressId = $address->getId(); } } if ($addressId) { $object->setDefaultShipping($addressId); $this->getAttribute()->getEntity()->saveAttribute($object, $this->getAttribute()->getAttributeCode()); } } } }