1C-Bitrix 25.700.0
Загрузка...
Поиск...
Не найдено
details.php
См. документацию.
1<?php
2
3namespace Bitrix\Sale\TradingPlatform\Ebay\Api;
4
5use Bitrix\Main\Text\Encoding;
6use Bitrix\Sale\TradingPlatform\Xml2Array;
7
8class Details extends Entity
9{
10 protected function requestData()
11 {
12 $data = '<?xml version="1.0" encoding="utf-8"?>
13 <GeteBayDetailsRequest xmlns="urn:ebay:apis:eBLBaseComponents">
14 <RequesterCredentials>
15 <eBayAuthToken>'.$this->authToken.'</eBayAuthToken>
16 </RequesterCredentials>
17 </GeteBayDetailsRequest>';
18
19 $dataXml = $this->apiCaller->sendRequest("GeteBayDetails", $data);
20
21 $result = Xml2Array::convert($dataXml);
22 return $result;
23 }
24
25 protected function getData()
26 {
27 $result = array();
28 $ttl = 2592000; //month
29 $cacheManager = \Bitrix\Main\Application::getInstance()->getManagedCache();
30 $cacheId = "BITRIX_SALE_TRADINGPLATFORM_EBAY_API_DETAILS_".$this->siteId;
31
32 if($cacheManager->read($ttl, $cacheId))
33 $result = $cacheManager->get($cacheId);
34
35 if(empty($result))
36 {
37 $result = $this->requestData();
38
39 if(!empty($result))
40 $cacheManager->set($cacheId, $result);
41 }
42
43 return $result;
44 }
45
46 public function getListShipping()
47 {
48 static $result = null;
49
50 if($result === null)
51 {
52 $result = array();
53 $data = $this->getData();
54
55 if(isset($data["ShippingServiceDetails"]) && is_array($data["ShippingServiceDetails"]))
56 {
57 foreach($data["ShippingServiceDetails"] as $service)
58 {
59 if(!in_array($service["ShippingService"], self::getUsableDeliveries()))
60 continue;
61
62 $result[$service["ShippingService"]] = $service["Description"];
63 }
64 }
65 }
66
67 return $result;
68 }
69
70 public static function getUsableDeliveries()
71 {
72 return array(
73 'RU_ExpeditedDelivery','RU_ExpeditedMoscowOnly','RU_StandardDelivery','RU_StandardMoscowOnly',
74 'RU_EconomyDelivery', 'RU_OvernightDelivery', 'RU_LocalPickup'
75 );
76 }
77
78 public function getListPayments()
79 {
80 static $result = null;
81
82 if($result === null)
83 {
84 $result = array();
85 $data = $this->getData();
86
87 if(isset($data["PaymentOptionDetails"]) && is_array($data["PaymentOptionDetails"]))
88 {
89 $data["PaymentOptionDetails"] = Xml2Array::normalize($data["PaymentOptionDetails"]);
90
91 foreach($data["PaymentOptionDetails"] as $payment)
92 {
93 if(!in_array($payment["PaymentOption"], self::getUsablePaySystems()))
94 continue;
95
96 $result[$payment["PaymentOption"]] = $payment["Description"];
97 }
98 }
99 }
100
101 return $result;
102 }
103
104 public static function getUsablePaySystems()
105 {
106 return array('PayPal');
107 }
108
109
110}
static getInstance()
Определения application.php:98
static convert($xmlData)
Определения xml2array.php:15
static normalize(array $branch)
Определения xml2array.php:69
$data['IS_AVAILABLE']
Определения .description.php:13
</td ></tr ></table ></td ></tr >< tr >< td class="bx-popup-label bx-width30"><?=GetMessage("PAGE_NEW_TAGS")?> array( $site)
Определения file_new.php:804
$result
Определения get_property_values.php:14
$payment
Определения payment.php:14
$service
Определения payment.php:18