![]() 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-dhl/Model/ |
<?php /** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ namespace Magento\Dhl\Model; use Magento\Shipping\Model\Carrier\AbstractCarrierOnline; abstract class AbstractDhl extends AbstractCarrierOnline { /** * Response condition code for service is unavailable at the requested date */ const CONDITION_CODE_SERVICE_DATE_UNAVAILABLE = 1003; /** * Count of days to look forward if day is not unavailable */ const UNAVAILABLE_DATE_LOOK_FORWARD = 5; /** * Date format for request */ const REQUEST_DATE_FORMAT = 'Y-m-d'; /** * Get shipping date * * @return string */ protected function _getShipDate() { return $this->_determineShippingDay($this->getConfigData('shipment_days'), date(self::REQUEST_DATE_FORMAT)); } /** * Determine shipping day according to configuration settings * * @param string[] $shippingDays * @param string $date * @return string */ protected function _determineShippingDay($shippingDays, $date) { if (empty($shippingDays)) { return $date; } $shippingDays = explode(',', $shippingDays); $i = -1; do { $i++; $weekday = date('D', strtotime("{$date} +{$i} day")); } while (!in_array($weekday, $shippingDays) && $i < 10); return date(self::REQUEST_DATE_FORMAT, strtotime("{$date} +{$i} day")); } }