PluginProbe
PostNL for WooCommerce / 4.4.0
PostNL for WooCommerce v4.4.0
5.9.12 5.9.11 5.9.10 5.9.9 5.9.8 5.9.7 5.9.6 trunk 2.5.0 2.5.1 2.5.2 2.5.3 2.5.4 2.5.5 3.1.4 3.1.5 3.1.6 3.1.7 4.0.0 4.0.1 4.0.2 4.3.2 4.3.3 4.4.0 4.4.1 All 72 releases
woo-postnl / vendor / myparcelnl / sdk / src / Helper / CheckoutFields.php

CheckoutFields.php in PostNL for WooCommerce 4.4.0, at vendor/myparcelnl/sdk/src/Helper/CheckoutFields.php

68 lines 2.0 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php declare(strict_types=1);
2
3 namespace MyParcelNL\Sdk\src\Helper;
4
5 use MyParcelNL\Sdk\src\Model\Consignment\AbstractConsignment;
6
7 class CheckoutFields
8 {
9 /**
10 * Delivery types from delivery_options endpoint
11 */
12 const MORNING = 'morning';
13 const STANDARD = 'standard';
14 const EVENING = 'night';
15 const EVENING_NL = 'avond';
16 const PICKUP = 'retail';
17 const PICKUP_EXPRESS = 'retailexpress';
18
19 /**
20 * @param $checkoutData
21 * @deprecated
22 * @return int
23 */
24 public function getDeliveryType($checkoutData)
25 {
26 if (empty($checkoutData)) {
27 return AbstractConsignment::DELIVERY_TYPE_STANDARD;
28 }
29
30 $aCheckoutData = json_decode($checkoutData, true);
31 $typeFromCheckout = $this->getTypeFromCheckout($aCheckoutData);
32
33 switch ($typeFromCheckout) {
34 case self::MORNING:
35 return AbstractConsignment::DELIVERY_TYPE_MORNING;
36 case self::STANDARD:
37 return AbstractConsignment::DELIVERY_TYPE_STANDARD;
38 case self::EVENING:
39 case self::EVENING_NL:
40 return AbstractConsignment::DELIVERY_TYPE_EVENING;
41 case self::PICKUP:
42 return AbstractConsignment::DELIVERY_TYPE_PICKUP;
43 case self::PICKUP_EXPRESS:
44 return AbstractConsignment::DELIVERY_TYPE_PICKUP_EXPRESS;
45 default:
46 return AbstractConsignment::DELIVERY_TYPE_STANDARD;
47 }
48 }
49
50 /**
51 * @param $aCheckoutData
52 *
53 * @return array
54 */
55 private function getTypeFromCheckout($aCheckoutData)
56 {
57 $typeFromCheckout = null;
58
59 if (! empty($aCheckoutData['time'][0]['price_comment'])) {
60 $typeFromCheckout = $aCheckoutData['time'][0]['price_comment'];
61 } elseif (! empty($aCheckoutData['price_comment'])) {
62 $typeFromCheckout = $aCheckoutData['price_comment'];
63 }
64
65 return $typeFromCheckout;
66 }
67 }
68