Version Notes
t-appz Adapter for Magento
Download this release
Release Info
Developer | tmobtech |
Extension | Tmob_Tappz |
Version | 1.0.8 |
Comparing to | |
See all releases |
Version 1.0.8
- app/code/local/TmobLabs/Tappz/Block/Info.php +26 -0
- app/code/local/TmobLabs/Tappz/Helper/Data.php +6 -0
- app/code/local/TmobLabs/Tappz/Model/Basket/Api.php +1141 -0
- app/code/local/TmobLabs/Tappz/Model/Basket/Api/V2.php +6 -0
- app/code/local/TmobLabs/Tappz/Model/Catalog/Api.php +390 -0
- app/code/local/TmobLabs/Tappz/Model/Catalog/Api/V2.php +6 -0
- app/code/local/TmobLabs/Tappz/Model/Customer/Address/Api.php +332 -0
- app/code/local/TmobLabs/Tappz/Model/Customer/Address/Api/V2.php +6 -0
- app/code/local/TmobLabs/Tappz/Model/Customer/Api.php +206 -0
- app/code/local/TmobLabs/Tappz/Model/Customer/Api/V2.php +6 -0
- app/code/local/TmobLabs/Tappz/Model/Customer/Order/Api.php +145 -0
- app/code/local/TmobLabs/Tappz/Model/Customer/Order/Api/V2.php +6 -0
- app/code/local/TmobLabs/Tappz/Model/System/Config/Action.php +18 -0
- app/code/local/TmobLabs/Tappz/Model/System/Config/Address.php +25 -0
- app/code/local/TmobLabs/Tappz/Model/System/Config/Category.php +51 -0
- app/code/local/TmobLabs/Tappz/Model/System/Config/Customer.php +25 -0
- app/code/local/TmobLabs/Tappz/Model/System/Config/Divider.php +17 -0
- app/code/local/TmobLabs/Tappz/Model/System/Config/Enabled.php +17 -0
- app/code/local/TmobLabs/Tappz/Model/System/Config/Payment.php +27 -0
- app/code/local/TmobLabs/Tappz/Model/System/Config/Product/Attribute.php +30 -0
- app/code/local/TmobLabs/Tappz/Model/System/Config/Store.php +32 -0
- app/code/local/TmobLabs/Tappz/etc/adminhtml.xml +26 -0
- app/code/local/TmobLabs/Tappz/etc/api.xml +276 -0
- app/code/local/TmobLabs/Tappz/etc/config.xml +25 -0
- app/code/local/TmobLabs/Tappz/etc/system.xml +644 -0
- app/code/local/TmobLabs/Tappz/etc/wsdl.xml +1650 -0
- package.xml +18 -0
app/code/local/TmobLabs/Tappz/Block/Info.php
ADDED
@@ -0,0 +1,26 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class TmobLabs_Tappz_Block_Info extends Mage_Adminhtml_Block_System_Config_Form_Fieldset
|
4 |
+
{
|
5 |
+
|
6 |
+
public function render(Varien_Data_Form_Element_Abstract $element)
|
7 |
+
{
|
8 |
+
$content = '
|
9 |
+
<div class="tappz">
|
10 |
+
<div class="info">
|
11 |
+
<p>
|
12 |
+
Please read the installation guide for Magento before starting.
|
13 |
+
</p>
|
14 |
+
<p>
|
15 |
+
<!--
|
16 |
+
<button onclick=\"location.href=\'http://t-appz.com/magento-support-page/\';\">t-appz Installation Guide</button>
|
17 |
+
-->
|
18 |
+
<a href="http://t-appz.com/magento-support-page/" target="_blank">t-appz Installation Guide</a>
|
19 |
+
</p>
|
20 |
+
<br />
|
21 |
+
</div>
|
22 |
+
</div>';
|
23 |
+
|
24 |
+
return $content;
|
25 |
+
}
|
26 |
+
}
|
app/code/local/TmobLabs/Tappz/Helper/Data.php
ADDED
@@ -0,0 +1,6 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class TmobLabs_Tappz_Helper_Data extends Mage_Core_Helper_Abstract
|
4 |
+
{
|
5 |
+
|
6 |
+
}
|
app/code/local/TmobLabs/Tappz/Model/Basket/Api.php
ADDED
@@ -0,0 +1,1141 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class TmobLabs_Tappz_Model_Basket_Api extends Mage_Api_Model_Resource_Abstract
|
4 |
+
{
|
5 |
+
public function get($quoteId, $customerId = null)
|
6 |
+
{
|
7 |
+
$decimalDivider = Mage::getStoreConfig('tappz/general/decimalSeparator');
|
8 |
+
$thousandDivider = Mage::getStoreConfig('tappz/general/groupSeparator');
|
9 |
+
$store = Mage::getStoreConfig('tappz/general/store');
|
10 |
+
|
11 |
+
$lineAverageDeliveryDaysAttributeCode = Mage::getStoreConfig('tappz/basket/averagedeliverydaysattributecode');
|
12 |
+
$creditCardPaymentType = Mage::getStoreConfig('tappz/basket/creditcardpaymenttype');
|
13 |
+
|
14 |
+
$basket = array();
|
15 |
+
$basket['id'] = null;
|
16 |
+
$basket['lines'] = array();
|
17 |
+
$basket['currency'] = null;
|
18 |
+
$basket['discounts'] = array();
|
19 |
+
$basket['delivery']['shippingAddress'] = array();
|
20 |
+
$basket['delivery']['billingAddress'] = array();
|
21 |
+
$basket['delivery']['shippingMethod'] = array();
|
22 |
+
$basket['delivery'] = array();
|
23 |
+
$basket['payment'] = array();
|
24 |
+
$basket['itemsPriceTotal'] = null;
|
25 |
+
$basket['discountTotal'] = null;
|
26 |
+
$basket['subTotal'] = null;
|
27 |
+
$basket['beforeTaxTotal'] = null;
|
28 |
+
$basket['taxTotal'] = null;
|
29 |
+
$basket['shippingTotal'] = null;
|
30 |
+
$basket['total'] = null;
|
31 |
+
$basket['paymentOptions'] = array();
|
32 |
+
$basket['shippingMethods'] = array();
|
33 |
+
$basket['giftCheques'] = array();
|
34 |
+
$basket['spentGiftChequeTotal'] = null;
|
35 |
+
$basket['usedPoints'] = null;
|
36 |
+
$basket['usedPointsAmount'] = null;
|
37 |
+
$basket['rewardPoints'] = null;
|
38 |
+
$basket['paymentFee'] = null;
|
39 |
+
$basket['estimatedSupplyDate'] = null;
|
40 |
+
$basket['isGiftWrappingEnabled'] = false;
|
41 |
+
$basket['giftWrapping'] = null;
|
42 |
+
|
43 |
+
/* @var $quote Mage_Sales_Model_Quote */
|
44 |
+
$quote = Mage::getModel("sales/quote")
|
45 |
+
->setStoreId($store);
|
46 |
+
|
47 |
+
if (isset($customerId)) {
|
48 |
+
$quote = $quote->loadByCustomer($customerId);
|
49 |
+
} elseif (isset($quoteId)) {
|
50 |
+
$quote = $quote->load($quoteId);
|
51 |
+
}
|
52 |
+
|
53 |
+
if (is_null($quote->getId())) {
|
54 |
+
try {
|
55 |
+
if (isset($customerId) && $customerId !== '') {
|
56 |
+
$customer = Mage::getModel("customer/customer")->load($customerId);
|
57 |
+
$quote = $quote->setCustomer($customer);
|
58 |
+
}
|
59 |
+
$quote = $quote->save();
|
60 |
+
} catch (Mage_Core_Exception $e) {
|
61 |
+
$this->_fault('invalid_data', $e->getMessage());
|
62 |
+
}
|
63 |
+
}
|
64 |
+
|
65 |
+
$catalogApi = Mage::getSingleton('tappz/Catalog_Api');
|
66 |
+
$addressApi = Mage::getSingleton('tappz/Customer_Address_Api');
|
67 |
+
|
68 |
+
$basket['id'] = $quote->getId();
|
69 |
+
|
70 |
+
foreach ($quote->getAllVisibleItems() as $item) {
|
71 |
+
$line = array();
|
72 |
+
$line['productId'] = $item->getData('product_id');
|
73 |
+
$line['product'] = $catalogApi->getProduct($item->getData('product_id'));
|
74 |
+
$line['quantity'] = $item->getData('qty');
|
75 |
+
$line['price'] = number_format($item->getData('price'), 2, $decimalDivider, $thousandDivider);
|
76 |
+
$line['priceTotal'] = number_format($item->getData('row_total'), 2, $decimalDivider, $thousandDivider);
|
77 |
+
$line['averageDeliveryDays'] = $item->getData($lineAverageDeliveryDaysAttributeCode);
|
78 |
+
$line['variants'] = array();// $item->getData('');
|
79 |
+
$basket['lines'][] = $line;
|
80 |
+
}
|
81 |
+
|
82 |
+
$basket['currency'] = Mage::app()->getStore($quote->getStoreId())->getCurrencyCode();
|
83 |
+
|
84 |
+
$quoteBillingAddress = $quote->getBillingAddress();
|
85 |
+
if ($quoteBillingAddress)
|
86 |
+
$basket['delivery']['billingAddress'] = $addressApi->get($quoteBillingAddress->getData('customer_address_id'));
|
87 |
+
|
88 |
+
$quoteShippingAddress = $quote->getShippingAddress();
|
89 |
+
if ($quoteShippingAddress) {
|
90 |
+
$basket['delivery']['shippingAddress'] = $addressApi->get($quoteShippingAddress->getData('customer_address_id'));
|
91 |
+
|
92 |
+
$basket['delivery']['shippingMethod']['id'] = $quoteShippingAddress->getData('shipping_method');
|
93 |
+
$basket['delivery']['shippingMethod']['displayName'] = $quoteShippingAddress->getData('shipping_description');
|
94 |
+
$basket['delivery']['shippingMethod']['trackingAddress'] = null;
|
95 |
+
$basket['delivery']['shippingMethod']['price'] = number_format($quoteShippingAddress->getData('shipping_incl_tax'), 2, $decimalDivider, $thousandDivider);
|
96 |
+
$basket['delivery']['shippingMethod']['priceForYou'] = null;
|
97 |
+
$basket['delivery']['shippingMethod']['shippingMethodType'] = $quoteShippingAddress->getData('shipping_method');
|
98 |
+
$basket['delivery']['shippingMethod']['imageUrl'] = null;
|
99 |
+
|
100 |
+
$basket['discountTotal'] = number_format($quoteShippingAddress->getData('discount_amount'), 2, $decimalDivider, $thousandDivider);
|
101 |
+
$basket['shippingTotal'] = number_format($quoteShippingAddress->getData('shipping_incl_tax'), 2, $decimalDivider, $thousandDivider);
|
102 |
+
} else {
|
103 |
+
// TODO : set dummy address
|
104 |
+
}
|
105 |
+
|
106 |
+
$basket['itemsPriceTotal'] = number_format($quote->getData('base_subtotal'), 2, $decimalDivider, $thousandDivider);
|
107 |
+
if (!isset($basket['discountTotal']))
|
108 |
+
$basket['discountTotal'] = floatval($quote->getData('subtotal')) - floatval($quote->getData('subtotal_with_discount'));
|
109 |
+
$basket['subTotal'] = number_format($quote->getData('subtotal'), 2, $decimalDivider, $thousandDivider);
|
110 |
+
$basket['total'] = number_format($quote->getData('grand_total'), 2, $decimalDivider, $thousandDivider);
|
111 |
+
|
112 |
+
$basket['discounts'][0]['displayName'] = null;
|
113 |
+
$basket['discounts'][0]['discountTotal'] = $basket['discountTotal'];
|
114 |
+
$basket['discounts'][0]['promoCode'] = $quote->getData('coupon_code');
|
115 |
+
|
116 |
+
$payment = $quote->getPayment();
|
117 |
+
if (isset($payment)) {
|
118 |
+
$paymentData = array();
|
119 |
+
$paymentData['cashOnDelivery'] = null;
|
120 |
+
$paymentData['creditCard'] = null;
|
121 |
+
$method = $payment->getData('method');
|
122 |
+
if ($method == 'checkmo') {
|
123 |
+
$paymentData['methodType'] = 'MoneyTransfer';
|
124 |
+
$paymentData['type'] = $method;
|
125 |
+
$paymentData['displayName'] = 'Check / Money Order';
|
126 |
+
$paymentData['bankCode'] = null;
|
127 |
+
$paymentData['installment'] = null;
|
128 |
+
$paymentData['accountNumber'] = '123456'; // TODO
|
129 |
+
$paymentData['branch'] = '321'; // TODO
|
130 |
+
$paymentData['iban'] = 'TR12 3456 7890 1234 5678 9012 00';
|
131 |
+
} else if ($method == $creditCardPaymentType) {
|
132 |
+
$paymentData['methodType'] = 'CreditCard';
|
133 |
+
$paymentData['type'] = $payment->getData('cc_type');
|
134 |
+
$paymentData['displayName'] = 'Credit Card';
|
135 |
+
$paymentData['bankCode'] = null;
|
136 |
+
$paymentData['installment'] = null;
|
137 |
+
$paymentData['accountNumber'] = '**** **** **** ' . $payment->getData('cc_last4');
|
138 |
+
$paymentData['branch'] = null;
|
139 |
+
$paymentData['iban'] = null;
|
140 |
+
$paymentData['creditCard'] = array();
|
141 |
+
$paymentData['creditCard']['owner'] = null;
|
142 |
+
$paymentData['creditCard']['number'] = '**** **** **** ' . $payment->getData('cc_last4');
|
143 |
+
$paymentData['creditCard']['month'] = null;
|
144 |
+
$paymentData['creditCard']['year'] = null;
|
145 |
+
$paymentData['creditCard']['cvv'] = null;
|
146 |
+
$paymentData['creditCard']['type'] = $payment->getData('cc_type');
|
147 |
+
} else if ($method == 'cashondelivery') {
|
148 |
+
$paymentData['methodType'] = 'CashOnDelivery';
|
149 |
+
$paymentData['type'] = $method;
|
150 |
+
$paymentData['displayName'] = 'Cash on Delivery';
|
151 |
+
$paymentData['bankCode'] = null;
|
152 |
+
$paymentData['installment'] = null;
|
153 |
+
$paymentData['accountNumber'] = null;
|
154 |
+
$paymentData['branch'] = null;
|
155 |
+
$paymentData['iban'] = null;
|
156 |
+
$paymentData['cashOnDelivery'] = array();
|
157 |
+
$paymentData['cashOnDelivery']['type'] = $method;
|
158 |
+
$paymentData['cashOnDelivery']['displayName'] = 'Cash on Delivery';
|
159 |
+
$paymentData['cashOnDelivery']['additionalFee'] = null;
|
160 |
+
$paymentData['cashOnDelivery']['description'] = 'Cash on delivery description.'; // TODO
|
161 |
+
$paymentData['cashOnDelivery']['isSMSVerification'] = false;
|
162 |
+
$paymentData['cashOnDelivery']['SMSCode'] = null;
|
163 |
+
$paymentData['cashOnDelivery']['PhoneNumber'] = null;
|
164 |
+
} else if ($method == 'paypal_express') {
|
165 |
+
$paymentData['methodType'] = 'PayPal';
|
166 |
+
$paymentData['type'] = $method;
|
167 |
+
$paymentData['displayName'] = 'PayPal';
|
168 |
+
$paymentData['bankCode'] = null;
|
169 |
+
$paymentData['installment'] = null;
|
170 |
+
$paymentData['accountNumber'] = null;
|
171 |
+
$paymentData['branch'] = null;
|
172 |
+
$paymentData['iban'] = null;
|
173 |
+
} else if ($method == 'stripe') { // apple_pay
|
174 |
+
$paymentData['methodType'] = 'ApplePay';
|
175 |
+
$paymentData['type'] = $method;
|
176 |
+
$paymentData['displayName'] = 'Apple Pay';
|
177 |
+
$paymentData['bankCode'] = null;
|
178 |
+
$paymentData['installment'] = null;
|
179 |
+
$paymentData['accountNumber'] = null;
|
180 |
+
$paymentData['branch'] = null;
|
181 |
+
$paymentData['iban'] = null;
|
182 |
+
}
|
183 |
+
$basket['payment'] = $paymentData;
|
184 |
+
}
|
185 |
+
|
186 |
+
$paymentOptions = array();
|
187 |
+
$paymentOptions['paypal'] = null;
|
188 |
+
$paymentOptions['creditCards'] = array();
|
189 |
+
$paymentOptions['moneyTransfers'] = array();
|
190 |
+
$paymentOptions['cashOnDelivery'] = null;
|
191 |
+
|
192 |
+
$methods = Mage::helper('payment')->getStoreMethods($store, $quote);
|
193 |
+
foreach ($methods as $method) {
|
194 |
+
$code = $method->getCode();
|
195 |
+
if ($code == $creditCardPaymentType) {
|
196 |
+
try {
|
197 |
+
$paymentOptions['creditCards'] = $this->getTaksitSecenekleri($quote->getId());
|
198 |
+
} catch (Exception $e) {
|
199 |
+
$paymentOptions['creditCards'] = array();
|
200 |
+
}
|
201 |
+
if (!isset($paymentOptions['creditCards'])) {
|
202 |
+
$paymentOptions['creditCards'] = array();
|
203 |
+
$paymentOptions['creditCards'][0]['image'] = null;
|
204 |
+
$paymentOptions['creditCards'][0]['displayName'] = 'Default Credit Card';
|
205 |
+
$paymentOptions['creditCards'][0]['type'] = $creditCardPaymentType;
|
206 |
+
$paymentOptions['creditCards'][0]['installmentNumber'] = 0;
|
207 |
+
$paymentOptions['creditCards'][0]['installments'] = array();
|
208 |
+
}
|
209 |
+
} elseif ($code == 'checkmo') {
|
210 |
+
$paymentOptions['moneyTransfers'] = array();
|
211 |
+
$paymentOptions['moneyTransfers'][0]['id'] = $code;
|
212 |
+
$paymentOptions['moneyTransfers'][0]['displayName'] = $method->getTitle();
|
213 |
+
$paymentOptions['moneyTransfers'][0]['code'] = $code;
|
214 |
+
$paymentOptions['moneyTransfers'][0]['branch'] = ' ';
|
215 |
+
$paymentOptions['moneyTransfers'][0]['accountNumber'] = ' ';
|
216 |
+
$paymentOptions['moneyTransfers'][0]['iban'] = ' ';
|
217 |
+
$paymentOptions['moneyTransfers'][0]['imageUrl'] = 'https://ec2-54-195-21-237.eu-west-1.compute.amazonaws.com/bitnami/images/corner-logo.png'; // TODO
|
218 |
+
} elseif ($code == 'cashondelivery') {
|
219 |
+
$paymentOptions['cashOnDelivery'] = array();
|
220 |
+
$paymentOptions['cashOnDelivery']['type'] = null;
|
221 |
+
$paymentOptions['cashOnDelivery']['displayName'] = null;
|
222 |
+
$paymentOptions['cashOnDelivery']['additionalFee'] = null;
|
223 |
+
$paymentOptions['cashOnDelivery']['description'] = null;
|
224 |
+
$paymentOptions['cashOnDelivery']['isSMSVerification'] = false;
|
225 |
+
$paymentOptions['cashOnDelivery']['SMSCode'] = null;
|
226 |
+
$paymentOptions['cashOnDelivery']['PhoneNumber'] = null;
|
227 |
+
|
228 |
+
$paymentOptions['cashOnDelivery']['type'] = $code;
|
229 |
+
$paymentOptions['cashOnDelivery']['displayName'] = $method->getTitle();
|
230 |
+
$paymentOptions['cashOnDelivery']['additionalFee'] = '0'; // TODO
|
231 |
+
$paymentOptions['cashOnDelivery']['description'] = 'Cash on delivery description text'; // TODO
|
232 |
+
$paymentOptions['cashOnDelivery']['isSMSVerification'] = false;
|
233 |
+
$paymentOptions['cashOnDelivery']['SMSCode'] = null;
|
234 |
+
$paymentOptions['cashOnDelivery']['PhoneNumber'] = null;
|
235 |
+
} elseif ($code == 'paypal_express') {
|
236 |
+
$paymentOptions['paypal'] = array();
|
237 |
+
$paymentOptions['paypal']['clientId'] = null;
|
238 |
+
$paymentOptions['paypal']['displayName'] = null;
|
239 |
+
$paymentOptions['paypal']['isSandbox'] = 'true';
|
240 |
+
|
241 |
+
$paymentOptions['paypal']['clientId'] = null;
|
242 |
+
$paymentOptions['paypal']['displayName'] = $method->getTitle();
|
243 |
+
$paymentOptions['paypal']['isSandbox'] = (bool)Mage::getStoreConfig('tappz/basket/paypalissandbox');
|
244 |
+
}
|
245 |
+
}
|
246 |
+
$basket['paymentOptions'] = $paymentOptions;
|
247 |
+
|
248 |
+
$shippingMethods = array();
|
249 |
+
if (isset($quoteShippingAddress)) {
|
250 |
+
try {
|
251 |
+
$quoteShippingAddress->collectShippingRates()->save();
|
252 |
+
$groupedRates = $quoteShippingAddress->getGroupedAllShippingRates();
|
253 |
+
|
254 |
+
foreach ($groupedRates as $carrierCode => $rates) {
|
255 |
+
foreach ($rates as $rate) {
|
256 |
+
$rateItem = array();
|
257 |
+
$rateItem['id'] = $rate->getData('code');
|
258 |
+
$rateItem['displayName'] = $rate->getData('method_title');
|
259 |
+
$rateItem['trackingAddress'] = null;
|
260 |
+
$rateItem['price'] = number_format($rate->getData('price'), 2, $decimalDivider, $thousandDivider);
|
261 |
+
$rateItem['priceForYou'] = null;
|
262 |
+
$rateItem['shippingMethodType'] = $rate->getData('code');
|
263 |
+
$rateItem['imageUrl'] = null;
|
264 |
+
|
265 |
+
$shippingMethods[] = $rateItem;
|
266 |
+
}
|
267 |
+
}
|
268 |
+
} catch (Mage_Core_Exception $e) {
|
269 |
+
|
270 |
+
}
|
271 |
+
}
|
272 |
+
$basket['shippingMethods'] = $shippingMethods;
|
273 |
+
|
274 |
+
$giftCheques = array();
|
275 |
+
if ($quote->getData('gift_cards')) {
|
276 |
+
// TODO
|
277 |
+
}
|
278 |
+
$basket['giftCheques'] = $giftCheques;
|
279 |
+
|
280 |
+
$basket['spentGiftChequeTotal'] = number_format($quote->getData('gift_cards_amount'), 2, $decimalDivider, $thousandDivider);
|
281 |
+
$basket['usedPoints'] = null; //TODO
|
282 |
+
$basket['usedPointsAmount'] = null; //TODO
|
283 |
+
$basket['rewardPoints'] = null;//TODO
|
284 |
+
$basket['paymentFee'] = null;//TODO
|
285 |
+
$basket['estimatedSupplyDate'] = null; // $this->getSupplyDate($quote->getId());
|
286 |
+
$basket['isGiftWrappingEnabled'] = true;
|
287 |
+
$basket['giftWrapping'] = array();
|
288 |
+
$basket['giftWrapping']['giftWrappingFee'] = '0'; // TODO
|
289 |
+
$basket['giftWrapping']['maxCharackter'] = '200'; // TODO
|
290 |
+
$basket['giftWrapping']['isSelected'] = false;
|
291 |
+
$basket['giftWrapping']['message'] = '';
|
292 |
+
if ($quote->getGiftMessageId() > 0) {
|
293 |
+
$giftMessage = Mage::getSingleton('giftmessage/message')->load($quote->getGiftMessageId());
|
294 |
+
$quote->setGiftMessage($giftMessage->getMessage());
|
295 |
+
$basket['giftWrapping']['isSelected'] = true;
|
296 |
+
$basket['giftWrapping']['message'] = $giftMessage->getMessage();
|
297 |
+
}
|
298 |
+
$basket['errors'] = $quote->getErrors();
|
299 |
+
return $basket;
|
300 |
+
}
|
301 |
+
|
302 |
+
public function merge($anonymousQuoteId, $customerId)
|
303 |
+
{
|
304 |
+
$store = Mage::getStoreConfig('tappz/general/store');
|
305 |
+
|
306 |
+
/* @var $anonymousQuote Mage_Sales_Model_Quote */
|
307 |
+
$anonymousQuote = Mage::getModel("sales/quote")
|
308 |
+
->setStoreId($store)
|
309 |
+
->load($anonymousQuoteId);
|
310 |
+
|
311 |
+
$customer = Mage::getModel('customer/customer')->load($customerId);
|
312 |
+
/* @var $quote Mage_Sales_Model_Quote */
|
313 |
+
$quote = Mage::getModel("sales/quote")
|
314 |
+
->setStoreId($store)
|
315 |
+
->loadByCustomer($customer);
|
316 |
+
|
317 |
+
if (is_null($quote->getId())) {
|
318 |
+
try {
|
319 |
+
$quote = $quote->setStoreId($store)
|
320 |
+
->setIsActive(false)
|
321 |
+
->setIsMultiShipping(false)
|
322 |
+
->setCustomer($customer)
|
323 |
+
->save();
|
324 |
+
} catch (Mage_Core_Exception $e) {
|
325 |
+
$this->_fault('invalid_data', $e->getMessage());
|
326 |
+
}
|
327 |
+
}
|
328 |
+
|
329 |
+
try {
|
330 |
+
$quote = $quote->merge($anonymousQuote);
|
331 |
+
$quote = $quote->collectTotals()->save();
|
332 |
+
} catch (Mage_Core_Exception $e) {
|
333 |
+
$this->_fault('invalid_data', $e->getMessage());
|
334 |
+
}
|
335 |
+
|
336 |
+
return $this->get($quote->getId());
|
337 |
+
}
|
338 |
+
|
339 |
+
public function updateItems($quoteId, $updateList)
|
340 |
+
{
|
341 |
+
$store = Mage::getStoreConfig('tappz/general/store');
|
342 |
+
|
343 |
+
/* @var $quote Mage_Sales_Model_Quote */
|
344 |
+
$quote = Mage::getModel("sales/quote")
|
345 |
+
->setStoreId($store)
|
346 |
+
->load($quoteId);
|
347 |
+
|
348 |
+
foreach ($updateList as $item) {
|
349 |
+
$productId = $item->productId;
|
350 |
+
$qty = $item->qty;
|
351 |
+
|
352 |
+
/* @var $product Mage_Catalog_Model_Product */
|
353 |
+
$product = Mage::getModel('catalog/product')->load($productId);
|
354 |
+
$quoteItem = $quote->getItemByProduct($product);
|
355 |
+
$request = new Varien_Object(array('qty' => $qty));
|
356 |
+
if (!$quoteItem) {
|
357 |
+
$quote->addProduct($product, $request);
|
358 |
+
} elseif ($qty == 0) {
|
359 |
+
$quote->removeItem($quoteItem->getId());
|
360 |
+
} else {
|
361 |
+
$quote->updateItem($quoteItem->getId(), $request);
|
362 |
+
}
|
363 |
+
}
|
364 |
+
|
365 |
+
$quote->setTotalsCollectedFlag(false)->collectTotals()->save();
|
366 |
+
return $this->get($quote->getId());
|
367 |
+
}
|
368 |
+
|
369 |
+
public function setAddress($quoteId, $shippingAddressId, $billingAddressId, $shippingMethodId)
|
370 |
+
{
|
371 |
+
$store = Mage::getStoreConfig('tappz/general/store');
|
372 |
+
|
373 |
+
/* @var $quote Mage_Sales_Model_Quote */
|
374 |
+
$quote = Mage::getModel("sales/quote")
|
375 |
+
->setStoreId($store)
|
376 |
+
->load($quoteId);
|
377 |
+
|
378 |
+
if (!is_null($billingAddressId)) {
|
379 |
+
/* @var $address Mage_Customer_Model_Address */
|
380 |
+
$customerBillingAddress = Mage::getModel('customer/address')
|
381 |
+
->load($billingAddressId);
|
382 |
+
/* @var $billingAddress Mage_Sales_Model_Quote_Address */
|
383 |
+
$billingAddress = Mage::getModel('sales/quote_address')
|
384 |
+
->importCustomerAddress($customerBillingAddress);
|
385 |
+
$quote->setBillingAddress($billingAddress);
|
386 |
+
}
|
387 |
+
|
388 |
+
if (!is_null($shippingAddressId)) {
|
389 |
+
/* @var $address Mage_Customer_Model_Address */
|
390 |
+
$customerShippingAddress = Mage::getModel('customer/address')
|
391 |
+
->load($shippingAddressId);
|
392 |
+
/* @var $shippingAddress Mage_Sales_Model_Quote_Address */
|
393 |
+
$shippingAddress = Mage::getModel('sales/quote_address')
|
394 |
+
->importCustomerAddress($customerShippingAddress)
|
395 |
+
->implodeStreetAddress();
|
396 |
+
// /* @var $customer Mage_Customer_Model_Customer */
|
397 |
+
// $customer = Mage::getModel('customer/customer')->load($shippingAddress->getCustomerId());
|
398 |
+
$quote->setShippingAddress($shippingAddress)
|
399 |
+
->getShippingAddress()
|
400 |
+
->setCollectShippingRates(true);
|
401 |
+
}
|
402 |
+
|
403 |
+
if (!is_null($shippingMethodId)) {
|
404 |
+
$quoteShippingAddress = $quote->getShippingAddress();
|
405 |
+
if (is_null($quoteShippingAddress->getId())) {
|
406 |
+
$this->_fault("shipping_address_is_not_set");
|
407 |
+
}
|
408 |
+
|
409 |
+
$rate = $quoteShippingAddress->collectShippingRates()->getShippingRateByCode($shippingMethodId);
|
410 |
+
if (!$rate) {
|
411 |
+
$this->_fault('shipping_method_is_not_available');
|
412 |
+
}
|
413 |
+
|
414 |
+
try {
|
415 |
+
$quote->getShippingAddress()->setShippingMethod($shippingMethodId);
|
416 |
+
} catch (Mage_Core_Exception $e) {
|
417 |
+
$this->_fault('shipping_method_is_not_set', $e->getMessage());
|
418 |
+
}
|
419 |
+
}
|
420 |
+
|
421 |
+
$quote->setTotalsCollectedFlag(false)->collectTotals()->save();
|
422 |
+
return $this->get($quote->getId());
|
423 |
+
}
|
424 |
+
|
425 |
+
public function setGiftWrapping($quoteId, $isSelected, $message)
|
426 |
+
{
|
427 |
+
$store = Mage::getStoreConfig('tappz/general/store');
|
428 |
+
|
429 |
+
/* @var $quote Mage_Sales_Model_Quote */
|
430 |
+
$quote = Mage::getModel("sales/quote")
|
431 |
+
->setStoreId($store)
|
432 |
+
->load($quoteId);
|
433 |
+
|
434 |
+
if (!$isSelected) {
|
435 |
+
$quote->setGiftMessageId(0);
|
436 |
+
} else {
|
437 |
+
$giftMessage['type'] = 'quote';
|
438 |
+
$giftMessage['message'] = $message;
|
439 |
+
$giftMessages = array($quoteId => $giftMessage);
|
440 |
+
$request = new Mage_Core_Controller_Request_Http();
|
441 |
+
$request->setParam("giftmessage", $giftMessages);
|
442 |
+
|
443 |
+
Mage::dispatchEvent(
|
444 |
+
'checkout_controller_onepage_save_shipping_method',
|
445 |
+
array('request' => $request, 'quote' => $quote)
|
446 |
+
);
|
447 |
+
}
|
448 |
+
return $this->get($quote->getId());
|
449 |
+
}
|
450 |
+
|
451 |
+
public function useDiscount($quoteId, $promoCode)
|
452 |
+
{
|
453 |
+
$store = Mage::getStoreConfig('tappz/general/store');
|
454 |
+
|
455 |
+
/* @var $quote Mage_Sales_Model_Quote */
|
456 |
+
$quote = Mage::getModel("sales/quote")
|
457 |
+
->setStoreId($store)
|
458 |
+
->load($quoteId)
|
459 |
+
->setCouponCode(strlen($promoCode) ? $promoCode : '')
|
460 |
+
->setTotalsCollectedFlag(false)
|
461 |
+
->collectTotals()
|
462 |
+
->save();
|
463 |
+
|
464 |
+
if ($quote->getCouponCode() != $promoCode) {
|
465 |
+
$this->_fault('invalid_data', 'Discount code is unavailable.');
|
466 |
+
}
|
467 |
+
|
468 |
+
return $this->get($quote->getId());
|
469 |
+
}
|
470 |
+
|
471 |
+
public function deleteDiscount($quoteId)
|
472 |
+
{
|
473 |
+
$store = Mage::getStoreConfig('tappz/general/store');
|
474 |
+
|
475 |
+
/* @var $quote Mage_Sales_Model_Quote */
|
476 |
+
$quote = Mage::getModel("sales/quote")
|
477 |
+
->setStoreId($store)
|
478 |
+
->load($quoteId)
|
479 |
+
->setCouponCode('')
|
480 |
+
->setTotalsCollectedFlag(false)
|
481 |
+
->collectTotals()
|
482 |
+
->save();
|
483 |
+
|
484 |
+
if (strlen($quote->getCouponCode()) > 0) {
|
485 |
+
$this->_fault('invalid_data', 'Discount code cannot be deleted.');
|
486 |
+
}
|
487 |
+
|
488 |
+
return $this->get($quote->getId());
|
489 |
+
}
|
490 |
+
|
491 |
+
public function useGiftCheques($quoteId, $code)
|
492 |
+
{
|
493 |
+
$store = Mage::getStoreConfig('tappz/general/store');
|
494 |
+
|
495 |
+
/* @var $quote Mage_Sales_Model_Quote */
|
496 |
+
$quote = Mage::getModel("sales/quote")
|
497 |
+
->setStoreId($store)
|
498 |
+
->load($quoteId);
|
499 |
+
|
500 |
+
// TODO - set gift cheque to the quote for enterprise edition
|
501 |
+
|
502 |
+
return $this->get($quote->getId());
|
503 |
+
}
|
504 |
+
|
505 |
+
public function deleteGiftCheques($quoteId)
|
506 |
+
{
|
507 |
+
$store = Mage::getStoreConfig('tappz/general/store');
|
508 |
+
/* @var $quote Mage_Sales_Model_Quote */
|
509 |
+
$quote = Mage::getModel("sales/quote")
|
510 |
+
->setStoreId($store)
|
511 |
+
->load($quoteId);
|
512 |
+
|
513 |
+
// TODO - delete gift cheque from the quote for enterprise edition
|
514 |
+
|
515 |
+
return $this->get($quote->getId());
|
516 |
+
}
|
517 |
+
|
518 |
+
public function useUserPoints($quoteId, $points)
|
519 |
+
{
|
520 |
+
$store = Mage::getStoreConfig('tappz/general/store');
|
521 |
+
/* @var $quote Mage_Sales_Model_Quote */
|
522 |
+
$quote = Mage::getModel("sales/quote")
|
523 |
+
->setStoreId($store)
|
524 |
+
->load($quoteId);
|
525 |
+
|
526 |
+
// TODO - use customer's reward points
|
527 |
+
|
528 |
+
return $this->get($quote->getId());
|
529 |
+
}
|
530 |
+
|
531 |
+
public function selectPaymentMethod($quoteId, $payment)
|
532 |
+
{
|
533 |
+
$store = Mage::getStoreConfig('tappz/general/store');
|
534 |
+
$creditCardPaymentType = Mage::getStoreConfig('tappz/basket/creditcardpaymenttype');
|
535 |
+
/* @var $quote Mage_Sales_Model_Quote */
|
536 |
+
$quote = Mage::getModel("sales/quote")
|
537 |
+
->setStoreId($store)
|
538 |
+
->load($quoteId);
|
539 |
+
|
540 |
+
$paymentData = array();
|
541 |
+
|
542 |
+
switch ($payment->methodType) {
|
543 |
+
case "CreditCard":
|
544 |
+
$creditCard = $payment->creditCard;
|
545 |
+
$type = null;
|
546 |
+
|
547 |
+
if(!is_null($creditCard)) {
|
548 |
+
switch ($creditCard->type) {
|
549 |
+
case '1':
|
550 |
+
$type = "VI";
|
551 |
+
break;
|
552 |
+
case '2':
|
553 |
+
$type = "MC";
|
554 |
+
break;
|
555 |
+
case '3':
|
556 |
+
$type = "AE";
|
557 |
+
break;
|
558 |
+
default:
|
559 |
+
$type = '';
|
560 |
+
break;
|
561 |
+
}
|
562 |
+
$paymentData['cc_type'] = $type;
|
563 |
+
$paymentData['cc_owner'] = $creditCard->owner;
|
564 |
+
$paymentData['cc_number'] = $creditCard->number;
|
565 |
+
$paymentData['cc_exp_month'] = $creditCard->month;
|
566 |
+
$paymentData['cc_exp_year'] = $creditCard->year;
|
567 |
+
$paymentData['cc_cid'] = $creditCard->cvv;
|
568 |
+
} else {
|
569 |
+
return $this->get($quote->getId());
|
570 |
+
}
|
571 |
+
|
572 |
+
$paymentMethod = $creditCardPaymentType;
|
573 |
+
break;
|
574 |
+
case "CashOnDelivery":
|
575 |
+
$paymentMethod = "cashondelivery";
|
576 |
+
break;
|
577 |
+
case "MoneyTransfer":
|
578 |
+
$paymentMethod = "checkmo";
|
579 |
+
break;
|
580 |
+
case "PayPal":
|
581 |
+
$paymentMethod = "paypal_express";
|
582 |
+
break;
|
583 |
+
case "ApplePay":
|
584 |
+
$paymentMethod = "stripe";
|
585 |
+
return $this->get($quote->getId());
|
586 |
+
break;
|
587 |
+
}
|
588 |
+
|
589 |
+
$paymentData['method'] = $paymentMethod;
|
590 |
+
$quote = $this->setPaymentData($quote, $paymentData);
|
591 |
+
return $this->get($quote->getId());
|
592 |
+
}
|
593 |
+
|
594 |
+
protected function setPaymentData($quote, $paymentData)
|
595 |
+
{
|
596 |
+
/* @var $quote Mage_Sales_Model_Quote */
|
597 |
+
if ($quote->isVirtual()) {
|
598 |
+
// check if billing address is set
|
599 |
+
if (is_null($quote->getBillingAddress()->getId())) {
|
600 |
+
$this->_fault('invalid_data', 'billing_address_is_not_set');
|
601 |
+
}
|
602 |
+
$quote->getBillingAddress()->setPaymentMethod(
|
603 |
+
isset($paymentData['method']) ? $paymentData['method'] : null
|
604 |
+
);
|
605 |
+
} else {
|
606 |
+
// check if shipping address is set
|
607 |
+
if (is_null($quote->getShippingAddress()->getId())) {
|
608 |
+
$this->_fault('invalid_data', 'shipping_address_is_not_set');
|
609 |
+
}
|
610 |
+
$quote->getShippingAddress()->setPaymentMethod(
|
611 |
+
isset($paymentData['method']) ? $paymentData['method'] : null
|
612 |
+
);
|
613 |
+
}
|
614 |
+
|
615 |
+
if (!$quote->isVirtual() && $quote->getShippingAddress()) {
|
616 |
+
$quote->getShippingAddress()->setCollectShippingRates(true);
|
617 |
+
}
|
618 |
+
|
619 |
+
$total = $quote->getBaseSubtotal();
|
620 |
+
$methods = Mage::helper('payment')->getStoreMethods($quote->getStoreId(), $quote);
|
621 |
+
foreach ($methods as $method) {
|
622 |
+
if ($method->getCode() == $paymentData['method']) {
|
623 |
+
/** @var $method Mage_Payment_Model_Method_Abstract */
|
624 |
+
if (!($this->_canUsePaymentMethod($method, $quote)
|
625 |
+
&& ($total != 0
|
626 |
+
|| $method->getCode() == 'free'
|
627 |
+
|| ($quote->hasRecurringItems() && $method->canManageRecurringProfiles())))
|
628 |
+
) {
|
629 |
+
$this->_fault('invalid_data', "method_not_allowed");
|
630 |
+
}
|
631 |
+
}
|
632 |
+
}
|
633 |
+
|
634 |
+
try {
|
635 |
+
$payment = $quote->getPayment();
|
636 |
+
$payment->importData($paymentData);
|
637 |
+
|
638 |
+
$quote = $quote->setIsActive(true)
|
639 |
+
->setTotalsCollectedFlag(false)
|
640 |
+
->collectTotals()
|
641 |
+
->save();
|
642 |
+
} catch (Mage_Core_Exception $e) {
|
643 |
+
$this->_fault('invalid_data', $e->getMessage());
|
644 |
+
}
|
645 |
+
|
646 |
+
return $quote;
|
647 |
+
}
|
648 |
+
|
649 |
+
protected function _canUsePaymentMethod($method, $quote)
|
650 |
+
{
|
651 |
+
/* @var $quote Mage_Sales_Model_Quote */
|
652 |
+
/** @var $method Mage_Payment_Model_Method_Abstract */
|
653 |
+
if (!$method->canUseForCountry($quote->getBillingAddress()->getCountry())) {
|
654 |
+
return false;
|
655 |
+
}
|
656 |
+
|
657 |
+
if (!$method->canUseForCurrency(Mage::app()->getStore($quote->getStoreId())->getBaseCurrencyCode())) {
|
658 |
+
return false;
|
659 |
+
}
|
660 |
+
|
661 |
+
/**
|
662 |
+
* Checking for min/max order total for assigned payment method
|
663 |
+
*/
|
664 |
+
$total = $quote->getBaseGrandTotal();
|
665 |
+
$minTotal = $method->getConfigData('min_order_total');
|
666 |
+
$maxTotal = $method->getConfigData('max_order_total');
|
667 |
+
|
668 |
+
if ((!empty($minTotal) && ($total < $minTotal)) || (!empty($maxTotal) && ($total > $maxTotal))) {
|
669 |
+
return false;
|
670 |
+
}
|
671 |
+
|
672 |
+
return true;
|
673 |
+
}
|
674 |
+
|
675 |
+
protected function purchase($quote)
|
676 |
+
{
|
677 |
+
/** @var $quote Mage_Sales_Model_Quote */
|
678 |
+
if ($quote->getIsMultiShipping()) {
|
679 |
+
$this->_fault('invalid_data', 'invalid_checkout_type');
|
680 |
+
}
|
681 |
+
if ($quote->getCheckoutMethod() == Mage_Checkout_Model_Api_Resource_Customer::MODE_GUEST
|
682 |
+
&& !Mage::helper('checkout')->isAllowedGuestCheckout($quote, $quote->getStoreId())
|
683 |
+
) {
|
684 |
+
$this->_fault('invalid_data', 'guest_checkout_is_not_enabled');
|
685 |
+
}
|
686 |
+
/** @var $customerResource Mage_Checkout_Model_Api_Resource_Customer */
|
687 |
+
$customerResource = Mage::getModel("checkout/api_resource_customer");
|
688 |
+
$isNewCustomer = $customerResource->prepareCustomerForQuote($quote);
|
689 |
+
|
690 |
+
try {
|
691 |
+
$quote->collectTotals();
|
692 |
+
/** @var $service Mage_Sales_Model_Service_Quote */
|
693 |
+
$service = Mage::getModel('sales/service_quote', $quote);
|
694 |
+
$service->submitAll();
|
695 |
+
|
696 |
+
if ($isNewCustomer) {
|
697 |
+
try {
|
698 |
+
$customerResource->involveNewCustomer($quote);
|
699 |
+
} catch (Exception $e) {
|
700 |
+
Mage::logException($e);
|
701 |
+
}
|
702 |
+
}
|
703 |
+
|
704 |
+
$order = $service->getOrder();
|
705 |
+
if ($order) {
|
706 |
+
Mage::dispatchEvent('checkout_type_onepage_save_order_after',
|
707 |
+
array('order' => $order, 'quote' => $quote));
|
708 |
+
|
709 |
+
try {
|
710 |
+
$order->queueNewOrderEmail();
|
711 |
+
} catch (Exception $e) {
|
712 |
+
Mage::logException($e);
|
713 |
+
}
|
714 |
+
}
|
715 |
+
|
716 |
+
Mage::dispatchEvent(
|
717 |
+
'checkout_submit_all_after',
|
718 |
+
array('order' => $order, 'quote' => $quote)
|
719 |
+
);
|
720 |
+
} catch (Mage_Core_Exception $e) {
|
721 |
+
$this->_fault('invalid_data', $e->getMessage());
|
722 |
+
}
|
723 |
+
$quote->setIsActive(false)->save();
|
724 |
+
return $order->getIncrementId();
|
725 |
+
}
|
726 |
+
|
727 |
+
public function getContract($quoteId)
|
728 |
+
{
|
729 |
+
$store = Mage::getStoreConfig('tappz/general/store');
|
730 |
+
/* @var $quote Mage_Sales_Model_Quote */
|
731 |
+
$quote = Mage::getModel("sales/quote")
|
732 |
+
->setStoreId($store)
|
733 |
+
->load($quoteId);
|
734 |
+
|
735 |
+
$agreements = array();
|
736 |
+
if (Mage::getStoreConfigFlag('checkout/options/enable_agreements')) {
|
737 |
+
$agreementsCollection = Mage::getModel('checkout/agreement')->getCollection()
|
738 |
+
->addStoreFilter($store)
|
739 |
+
->addFieldToFilter('is_active', 1);
|
740 |
+
|
741 |
+
foreach ($agreementsCollection as $_a) {
|
742 |
+
/** @var $_a Mage_Checkout_Model_Agreement */
|
743 |
+
$agreements[] = $_a;
|
744 |
+
}
|
745 |
+
}
|
746 |
+
|
747 |
+
$contract = array();
|
748 |
+
$contract['termOfUse'] = $agreements[0]['content'];
|
749 |
+
$contract['salesContact'] = $agreements[1]['content'];
|
750 |
+
return $contract;
|
751 |
+
}
|
752 |
+
|
753 |
+
public function purchaseCreditCard($quoteId)
|
754 |
+
{
|
755 |
+
$store = Mage::getStoreConfig('tappz/general/store');
|
756 |
+
/* @var $quote Mage_Sales_Model_Quote */
|
757 |
+
$quote = Mage::getModel("sales/quote")
|
758 |
+
->setStoreId($store)
|
759 |
+
->load($quoteId);
|
760 |
+
|
761 |
+
$orderId = $this->purchase($quote);
|
762 |
+
return Mage::getSingleton('tappz/Customer_Order_Api')->info($orderId);
|
763 |
+
}
|
764 |
+
|
765 |
+
public function purchaseMoneyOrder($quoteId, $moneyOrderType)
|
766 |
+
{
|
767 |
+
$store = Mage::getStoreConfig('tappz/general/store');
|
768 |
+
/* @var $quote Mage_Sales_Model_Quote */
|
769 |
+
$quote = Mage::getModel("sales/quote")
|
770 |
+
->setStoreId($store)
|
771 |
+
->load($quoteId);
|
772 |
+
|
773 |
+
$orderId = $this->purchase($quote);
|
774 |
+
return Mage::getSingleton('tappz/Customer_Order_Api')->info($orderId);
|
775 |
+
}
|
776 |
+
|
777 |
+
public function purchaseCashOnDelivery($quoteId, $cashOnDelivery)
|
778 |
+
{
|
779 |
+
$store = Mage::getStoreConfig('tappz/general/store');
|
780 |
+
/* @var $quote Mage_Sales_Model_Quote */
|
781 |
+
$quote = Mage::getModel("sales/quote")
|
782 |
+
->setStoreId($store)
|
783 |
+
->load($quoteId);
|
784 |
+
|
785 |
+
$orderId = $this->purchase($quote);
|
786 |
+
return Mage::getSingleton('tappz/Customer_Order_Api')->info($orderId);
|
787 |
+
}
|
788 |
+
|
789 |
+
public function createNewOrder($quote)
|
790 |
+
{
|
791 |
+
Mage::getSingleton('checkout/session')->replaceQuote($quote);
|
792 |
+
/* @var $quote Mage_Sales_Model_Quote */
|
793 |
+
/* @var $convert Mage_Sales_Model_Convert_Quote */
|
794 |
+
/* @var $transaction Mage_Core_Model_Resource_Transaction */
|
795 |
+
$convert = Mage::getModel('sales/convert_quote');
|
796 |
+
$transaction = Mage::getModel('core/resource_transaction');
|
797 |
+
|
798 |
+
$quote->setIsActive(false);
|
799 |
+
|
800 |
+
if ($quote->getCustomerId()) {
|
801 |
+
$transaction->addObject($quote->getCustomer());
|
802 |
+
}
|
803 |
+
//$quote->setTotalsCollectedFlag(true);
|
804 |
+
$transaction->addObject($quote);
|
805 |
+
$quote->reserveOrderId();
|
806 |
+
|
807 |
+
if ($quote->isVirtual()) {
|
808 |
+
$order = $convert->addressToOrder($quote->getBillingAddress());
|
809 |
+
} else {
|
810 |
+
$order = $convert->addressToOrder($quote->getShippingAddress());
|
811 |
+
}
|
812 |
+
$order->setBillingAddress($convert->addressToOrderAddress($quote->getBillingAddress()));
|
813 |
+
if ($quote->getBillingAddress()->getCustomerAddress()) {
|
814 |
+
$order->getBillingAddress()->setCustomerAddress($quote->getBillingAddress()->getCustomerAddress());
|
815 |
+
}
|
816 |
+
if (!$quote->isVirtual()) {
|
817 |
+
$order->setShippingAddress($convert->addressToOrderAddress($quote->getShippingAddress()));
|
818 |
+
if ($quote->getShippingAddress()->getCustomerAddress()) {
|
819 |
+
$order->getShippingAddress()->setCustomerAddress($quote->getShippingAddress()->getCustomerAddress());
|
820 |
+
}
|
821 |
+
}
|
822 |
+
|
823 |
+
$order->setPayment($convert->paymentToOrderPayment($quote->getPayment()));
|
824 |
+
$order->getPayment()->setTransactionId($quote->getPayment()->getTransactionId());
|
825 |
+
|
826 |
+
foreach ($quote->getAllItems() as $item) {
|
827 |
+
/** @var Mage_Sales_Model_Order_Item $item */
|
828 |
+
$orderItem = $convert->itemToOrderItem($item);
|
829 |
+
if ($item->getParentItem()) {
|
830 |
+
$orderItem->setParentItem($order->getItemByQuoteItemId($item->getParentItem()->getId()));
|
831 |
+
}
|
832 |
+
$order->addItem($orderItem);
|
833 |
+
}
|
834 |
+
|
835 |
+
$order->setCanSendNewEmailFlag(false);
|
836 |
+
$order->setQuoteId($quote->getId());
|
837 |
+
$order->setExtOrderId($quote->getPayment()->getTransactionId());
|
838 |
+
$transaction->addObject($order);
|
839 |
+
$transaction->addCommitCallback(array($order, 'save'));
|
840 |
+
|
841 |
+
try {
|
842 |
+
$transaction->save();
|
843 |
+
$quote->setIsActive(false)->save();
|
844 |
+
Mage::dispatchEvent(
|
845 |
+
'sales_model_service_quote_submit_success',
|
846 |
+
array(
|
847 |
+
'order' => $order,
|
848 |
+
'quote' => $quote
|
849 |
+
)
|
850 |
+
);
|
851 |
+
} catch (Exception $e) {
|
852 |
+
//reset order ID's on exception, because order not saved
|
853 |
+
$order->setId(null);
|
854 |
+
/** @var $item Mage_Sales_Model_Order_Item */
|
855 |
+
foreach ($order->getItemsCollection() as $item) {
|
856 |
+
$item->setOrderId(null);
|
857 |
+
$item->setItemId(null);
|
858 |
+
}
|
859 |
+
|
860 |
+
Mage::dispatchEvent(
|
861 |
+
'sales_model_service_quote_submit_failure',
|
862 |
+
array(
|
863 |
+
'order' => $order,
|
864 |
+
'quote' => $quote
|
865 |
+
)
|
866 |
+
);
|
867 |
+
$quote->setIsActive(true);
|
868 |
+
$this->_fault('invalid_data', $e->getMessage());
|
869 |
+
}
|
870 |
+
Mage::dispatchEvent('checkout_submit_all_after', array('order' => $order, 'quote' => $quote));
|
871 |
+
Mage::dispatchEvent('sales_model_service_quote_submit_after', array('order' => $order, 'quote' => $quote));
|
872 |
+
|
873 |
+
return $order;
|
874 |
+
}
|
875 |
+
|
876 |
+
public function purchaseWithPayPal($quoteId, $transactionId)
|
877 |
+
{
|
878 |
+
$paypalIsSandBox = (bool)Mage::getStoreConfig('tappz/basket/paypalissandbox');
|
879 |
+
$paypalClientId = Mage::getStoreConfig('tappz/basket/paypalclientid');
|
880 |
+
$paypalSecret = Mage::getStoreConfig('tappz/basket/paypalSecret');
|
881 |
+
|
882 |
+
$store = Mage::getStoreConfig('tappz/general/store');
|
883 |
+
/* @var $quote Mage_Sales_Model_Quote */
|
884 |
+
$quote = Mage::getModel("sales/quote")
|
885 |
+
->setStoreId($store)
|
886 |
+
->load($quoteId);
|
887 |
+
|
888 |
+
$url = $paypalIsSandBox
|
889 |
+
? "https://api.sandbox.paypal.com/v1/"
|
890 |
+
: "https://api.paypal.com/v1/";
|
891 |
+
|
892 |
+
$payment_result = array();
|
893 |
+
try {
|
894 |
+
$ch = curl_init();
|
895 |
+
curl_setopt($ch, CURLOPT_URL, $url . 'oauth2/token');
|
896 |
+
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
|
897 |
+
'Accept: application/json',
|
898 |
+
'Accept-Language: en_US',
|
899 |
+
'content-type: application/x-www-form-urlencoded'
|
900 |
+
));
|
901 |
+
curl_setopt($ch, CURLOPT_USERPWD, $paypalClientId . ':' . $paypalSecret);
|
902 |
+
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
|
903 |
+
curl_setopt($ch, CURLOPT_POST, 1);
|
904 |
+
curl_setopt($ch, CURLOPT_POSTFIELDS, "grant_type=client_credentials");
|
905 |
+
$token_result_json = curl_exec($ch);
|
906 |
+
curl_close($ch);
|
907 |
+
$token_result = json_decode($token_result_json);
|
908 |
+
|
909 |
+
$ch = curl_init();
|
910 |
+
curl_setopt($ch, CURLOPT_URL, $url . 'payments/payment/' . $transactionId);
|
911 |
+
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
|
912 |
+
'Accept: application/json',
|
913 |
+
'Authorization: Bearer ' . $token_result->access_token,
|
914 |
+
'content-type: application/x-www-form-urlencoded'
|
915 |
+
));
|
916 |
+
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
|
917 |
+
$payment_result_json = curl_exec($ch);
|
918 |
+
curl_close($ch);
|
919 |
+
$payment_result = json_decode($payment_result_json, true);
|
920 |
+
} catch (Exception $e) {
|
921 |
+
$this->_fault('invalid_data', $e->getMessage());
|
922 |
+
}
|
923 |
+
|
924 |
+
$transactionState = $payment_result['state'];
|
925 |
+
$saleState = $payment_result['transactions'][0]['related_resources'][0]['sale']['state'];
|
926 |
+
|
927 |
+
if ($transactionState == 'approved' && $saleState == 'completed') {
|
928 |
+
$quote->getPayment()->setTransactionId($transactionId)->save();
|
929 |
+
$order = $this->createNewOrder($quote);
|
930 |
+
return Mage::getSingleton('tappz/Customer_Order_Api')->info($order->getIncrementId());
|
931 |
+
} else {
|
932 |
+
$this->_fault('invalid_data', 'PayPal transaction is not completed.');
|
933 |
+
}
|
934 |
+
}
|
935 |
+
|
936 |
+
public function purchaseWithApplePay($quoteId, $tokenId)
|
937 |
+
{
|
938 |
+
$stripeIsTest = (bool)Mage::getStoreConfig('tappz/basket/stripeistest');
|
939 |
+
$stripeTestSecretKey = Mage::getStoreConfig('tappz/basket/stripetestsecret');
|
940 |
+
$stripeLiveSecretKey = Mage::getStoreConfig('tappz/basket/stripelivesecret');
|
941 |
+
|
942 |
+
$store = Mage::getStoreConfig('tappz/general/store');
|
943 |
+
/* @var $quote Mage_Sales_Model_Quote */
|
944 |
+
$quote = Mage::getModel("sales/quote")
|
945 |
+
->setStoreId($store)
|
946 |
+
->load($quoteId);
|
947 |
+
|
948 |
+
$secretKey = $stripeIsTest ? $stripeTestSecretKey : $stripeLiveSecretKey;
|
949 |
+
|
950 |
+
$fields = array(
|
951 |
+
'amount' => $quote->getGrandTotal(),
|
952 |
+
'currency' => $quote->getQuoteCurrencyCode(),
|
953 |
+
'source' => $tokenId,
|
954 |
+
'description' => 't-appz Apple Pay',
|
955 |
+
);
|
956 |
+
|
957 |
+
$field_string = http_build_query($fields);
|
958 |
+
$charge = array();
|
959 |
+
try {
|
960 |
+
$ch = curl_init();
|
961 |
+
curl_setopt($ch, CURLOPT_URL, 'https://api.stripe.com/v1/charges');
|
962 |
+
curl_setopt($ch, CURLOPT_USERPWD, $secretKey . ':');
|
963 |
+
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
|
964 |
+
curl_setopt($ch, CURLOPT_POST, 1);
|
965 |
+
$charge_json = curl_exec($ch);
|
966 |
+
curl_close($ch);
|
967 |
+
$charge = json_decode($charge_json);
|
968 |
+
|
969 |
+
$ch = curl_init();
|
970 |
+
curl_setopt($ch, CURLOPT_URL, 'https://api.stripe.com/v1/charges/' . $charge->id . '/capture');
|
971 |
+
curl_setopt($ch, CURLOPT_USERPWD, $secretKey);
|
972 |
+
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
|
973 |
+
curl_setopt($ch, CURLOPT_POST, 1);
|
974 |
+
curl_setopt($ch, CURLOPT_POSTFIELDS, $field_string);
|
975 |
+
$charge_json = curl_exec($ch);
|
976 |
+
curl_close($ch);
|
977 |
+
$charge = json_decode($charge_json, true);
|
978 |
+
} catch (Exception $e) {
|
979 |
+
$this->_fault('invalid_data', $e->getMessage());
|
980 |
+
}
|
981 |
+
|
982 |
+
// TODO : test
|
983 |
+
|
984 |
+
if ($charge['captured']) {
|
985 |
+
$paymentData = array();
|
986 |
+
$paymentData['method'] = 'ApplePay';
|
987 |
+
$quote = $this->setPaymentData($quote, $paymentData);
|
988 |
+
$quote->getPayment()->setTransactionId($tokenId)->save();
|
989 |
+
$orderId = $this->createNewOrder($quote);
|
990 |
+
return Mage::getSingleton('tappz/Customer_Order_Api')->info($orderId);
|
991 |
+
} else {
|
992 |
+
$this->_fault('invalid_data', 'Apple Pay transaction is not completed.');
|
993 |
+
}
|
994 |
+
}
|
995 |
+
|
996 |
+
// TODO : mcgoncu - annelutfen icin ekle
|
997 |
+
public function getTaksitSecenekleri($quoteId)
|
998 |
+
{
|
999 |
+
$bankInfos = array();
|
1000 |
+
|
1001 |
+
$exclude_cats = array(219, 218, 527, 217, 651, 329, 331, 678);
|
1002 |
+
$show_taksits = true;
|
1003 |
+
$cats = array();
|
1004 |
+
$cart = Mage::getModel("sales/quote")->load($quoteId);
|
1005 |
+
$cartItems = $cart->getItems();
|
1006 |
+
$tutar = $cart->getGrandTotal();
|
1007 |
+
|
1008 |
+
foreach ($cartItems as $item) {
|
1009 |
+
$cats[] = $item->getProduct()->getCategoryIds();
|
1010 |
+
}
|
1011 |
+
if (count($cats) > 0) {
|
1012 |
+
foreach ($cats as $vals) {
|
1013 |
+
foreach ($vals as $dd) {
|
1014 |
+
if (in_array($dd, $exclude_cats)) {
|
1015 |
+
$show_taksits = false;
|
1016 |
+
}
|
1017 |
+
}
|
1018 |
+
}
|
1019 |
+
}
|
1020 |
+
|
1021 |
+
$turkpay = Mage::getModel('Grinet_Turkpay_Model_Grinet');
|
1022 |
+
if ($turkpay) {
|
1023 |
+
$bank_avs = $turkpay->bankalar();
|
1024 |
+
}
|
1025 |
+
if (!empty($bank_avs)) {
|
1026 |
+
$bankCount = 0;
|
1027 |
+
$fark = 0;
|
1028 |
+
foreach ($bank_avs as $bank_code => $bank) {
|
1029 |
+
//$codes[] = $bank_code;
|
1030 |
+
// $bankName[] = $bank['name'];
|
1031 |
+
// $tutar = 200;
|
1032 |
+
$tdata = $turkpay->taksitler($bank_code, $tutar);
|
1033 |
+
$valCount = 0;
|
1034 |
+
foreach ($tdata as $tay => $toran) {
|
1035 |
+
/* price calculater */
|
1036 |
+
$toplam_tutar = $tutar + (($tutar / 100) * floatval($toran)) + $fark;// - ( ( $fark / 100 ) * floatval($toran) ) ;
|
1037 |
+
/* price calculater */
|
1038 |
+
$custom_title = Mage::getStoreConfig($bank_code . '/taksit_baslik/taksit_' . $tay);
|
1039 |
+
if (trim($custom_title) == '')
|
1040 |
+
$taksit_title = 'Tek Çekim';
|
1041 |
+
else
|
1042 |
+
$taksit_title = $custom_title;
|
1043 |
+
|
1044 |
+
if ($show_taksits === false) {
|
1045 |
+
$custom_title = Mage::getStoreConfig($bank_code . '/taksit_baslik/taksit_0');
|
1046 |
+
if (trim($custom_title) == '')
|
1047 |
+
$taksit_title = 'Tek Çekim';
|
1048 |
+
else
|
1049 |
+
$taksit_title = $custom_title;
|
1050 |
+
}
|
1051 |
+
$bankInfos[$bankCount]['image'] = null; // TODO : annelutfen - banka imajı
|
1052 |
+
$bankInfos[$bankCount]['displayName'] = trim($bank['name']);
|
1053 |
+
$bankInfos[$bankCount]['type'] = null;// TODO : annelutfen - kart kodu
|
1054 |
+
$bankInfos[$bankCount]['installmentNumber'] = null; // TODO : annelutfen - toplanm taksit sayısı
|
1055 |
+
$bankInfos[$bankCount]['installments'][$valCount]['installmentNumber'] = $valCount; // TODO - annelutfen - dogru mu bu?
|
1056 |
+
$bankInfos[$bankCount]['installments'][$valCount]['installmentPayment'] = round($toplam_tutar / $valCount, 2, PHP_ROUND_HALF_UP); // TODO - annelutfen - dogru mu bu?
|
1057 |
+
$bankInfos[$bankCount]['installments'][$valCount]['total'] = round($toplam_tutar, 2, PHP_ROUND_HALF_UP);
|
1058 |
+
if ($show_taksits === false) {
|
1059 |
+
if ($taksit_title == "Tek Çekim")
|
1060 |
+
break;
|
1061 |
+
}
|
1062 |
+
|
1063 |
+
$valCount++;
|
1064 |
+
}
|
1065 |
+
$bankCount++;
|
1066 |
+
}
|
1067 |
+
} else
|
1068 |
+
$bankInfos = null;
|
1069 |
+
return $bankInfos;
|
1070 |
+
}
|
1071 |
+
|
1072 |
+
public function getSupplyDate($quoteId)
|
1073 |
+
{
|
1074 |
+
$store = Mage::getStoreConfig('tappz/general/store');
|
1075 |
+
$productAverageDeliveryDaysAttributeCode = Mage::getStoreConfig('tappz/basket/averagedeliverydaysattributecode');
|
1076 |
+
|
1077 |
+
/* @var $quote Mage_Sales_Model_Quote */
|
1078 |
+
$quote = Mage::getModel("sales/quote")
|
1079 |
+
->setStoreId($store)
|
1080 |
+
->load($quoteId);
|
1081 |
+
|
1082 |
+
$set_message = array();
|
1083 |
+
foreach ($quote->getAllItems() as $item) {
|
1084 |
+
$product = Mage::getModel('catalog/product')->load($item->getData('product_id'));
|
1085 |
+
/* @var $product Mage_Catalog_Model_Product */
|
1086 |
+
$message = $product->getData($productAverageDeliveryDaysAttributeCode);
|
1087 |
+
if ($message)
|
1088 |
+
$set_message[] = $message;
|
1089 |
+
}
|
1090 |
+
|
1091 |
+
$set_message_unique = array_unique($set_message);
|
1092 |
+
|
1093 |
+
$by_0 = false;
|
1094 |
+
$by_3 = false;
|
1095 |
+
$by_4 = false;
|
1096 |
+
$by_5 = false;
|
1097 |
+
$by_7 = false;
|
1098 |
+
if (in_array('Aynı Gün Kargoya Teslim', $set_message_unique)) {
|
1099 |
+
$by_0 = true;
|
1100 |
+
}
|
1101 |
+
if (in_array('1-3 İş Gününde Kargoya Teslim', $set_message_unique)) {
|
1102 |
+
$by_3 = true;
|
1103 |
+
$by_0 = false;
|
1104 |
+
}
|
1105 |
+
if (in_array('4-5 İş Gününde Kargoya Teslim', $set_message_unique)) {
|
1106 |
+
$by_4 = true;
|
1107 |
+
$by_3 = false;
|
1108 |
+
$by_0 = false;
|
1109 |
+
}
|
1110 |
+
if (in_array('5 İş Gününde Kargoya Teslim', $set_message_unique)) {
|
1111 |
+
$by_5 = true;
|
1112 |
+
$by_3 = false;
|
1113 |
+
$by_0 = false;
|
1114 |
+
}
|
1115 |
+
if (in_array('7 İş Gününde Kargoya Teslim', $set_message_unique)) {
|
1116 |
+
$by_7 = true;
|
1117 |
+
$by_5 = false;
|
1118 |
+
$by_3 = false;
|
1119 |
+
$by_0 = false;
|
1120 |
+
}
|
1121 |
+
|
1122 |
+
$cMsg = '';
|
1123 |
+
if ($by_0) {
|
1124 |
+
$cMsg = "Sepetinizdeki ürünlerin tamamı aynı günde kargoya teslim edilecektir.";
|
1125 |
+
}
|
1126 |
+
if ($by_3) {
|
1127 |
+
$cMsg = "Sepetinizdeki ürünlerin tamamı 1-3 iş gününde kargoya teslim edilecektir.";
|
1128 |
+
}
|
1129 |
+
if ($by_4) {
|
1130 |
+
$cMsg = "Sepetinizdeki ürünlerin tamamı 4-5 iş gününde kargoya teslim edilecektir.";
|
1131 |
+
}
|
1132 |
+
if ($by_5) {
|
1133 |
+
$cMsg = "Sepetinizdeki ürünlerin tamamı 5 iş gününde kargoya teslim edilecektir.";
|
1134 |
+
}
|
1135 |
+
if ($by_7) {
|
1136 |
+
$cMsg = "Sepetinizdeki ürünlerin tamamı 7 iş gününde kargoya teslim edilecektir.";
|
1137 |
+
}
|
1138 |
+
|
1139 |
+
return $cMsg;
|
1140 |
+
}
|
1141 |
+
}
|
app/code/local/TmobLabs/Tappz/Model/Basket/Api/V2.php
ADDED
@@ -0,0 +1,6 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class TmobLabs_Tappz_Model_Basket_Api_V2 extends TmobLabs_Tappz_Model_Basket_Api
|
4 |
+
{
|
5 |
+
|
6 |
+
}
|
app/code/local/TmobLabs/Tappz/Model/Catalog/Api.php
ADDED
@@ -0,0 +1,390 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class TmobLabs_Tappz_Model_Catalog_Api extends Mage_Catalog_Model_Api_Resource
|
4 |
+
{
|
5 |
+
public function getFrontPage()
|
6 |
+
{
|
7 |
+
$sampleEx['ads'][0]['name'] = null;
|
8 |
+
$sampleEx['ads'][0]['image'] = Mage::getBaseUrl('media') . 'tappz/' . Mage::getStoreConfig('tappz/catalog/bannerImage1');
|
9 |
+
$sampleEx['ads'][0]['type'] = Mage::getStoreConfig('tappz/catalog/bannerActionType1');
|
10 |
+
$sampleEx['ads'][0]['value'] = Mage::getStoreConfig('tappz/catalog/bannerActionValue1');
|
11 |
+
|
12 |
+
$sampleEx['ads'][1]['name'] = null;
|
13 |
+
$sampleEx['ads'][1]['image'] = Mage::getBaseUrl('media') . 'tappz/' . Mage::getStoreConfig('tappz/catalog/bannerImage2');
|
14 |
+
$sampleEx['ads'][1]['type'] = Mage::getStoreConfig('tappz/catalog/bannerActionType2');
|
15 |
+
$sampleEx['ads'][1]['value'] = Mage::getStoreConfig('tappz/catalog/bannerActionValue2');
|
16 |
+
|
17 |
+
$sampleEx['ads'][2]['name'] = null;
|
18 |
+
$sampleEx['ads'][2]['image'] = Mage::getBaseUrl('media') . 'tappz/' . Mage::getStoreConfig('tappz/catalog/bannerImage3');
|
19 |
+
$sampleEx['ads'][2]['type'] = Mage::getStoreConfig('tappz/catalog/bannerActionType3');
|
20 |
+
$sampleEx['ads'][2]['value'] = Mage::getStoreConfig('tappz/catalog/bannerActionValue3');
|
21 |
+
|
22 |
+
$sampleEx['ads'][3]['name'] = null;
|
23 |
+
$sampleEx['ads'][3]['image'] = Mage::getBaseUrl('media') . 'tappz/' . Mage::getStoreConfig('tappz/catalog/bannerImage4');
|
24 |
+
$sampleEx['ads'][3]['type'] = Mage::getStoreConfig('tappz/catalog/bannerActionType4');
|
25 |
+
$sampleEx['ads'][3]['value'] = Mage::getStoreConfig('tappz/catalog/bannerActionValue4');
|
26 |
+
|
27 |
+
$frontPageCategory1 = Mage::getStoreConfig('tappz/catalog/catalog1');
|
28 |
+
if ($frontPageCategory1) {
|
29 |
+
$category = $this->getCategory($frontPageCategory1);
|
30 |
+
$productList = $this->getProductList(null, $frontPageCategory1, 0, 6, null, null);
|
31 |
+
$group = array();
|
32 |
+
$group['partName'] = $category['name'];
|
33 |
+
$group['products'] = $productList['products'];
|
34 |
+
$sampleEx['groups'][] = $group;
|
35 |
+
}
|
36 |
+
|
37 |
+
$frontPageCategory2 = Mage::getStoreConfig('tappz/catalog/catalog2');
|
38 |
+
if ($frontPageCategory2) {
|
39 |
+
$category = $this->getCategory($frontPageCategory2);
|
40 |
+
$productList = $this->getProductList(null, $frontPageCategory2, 0, 6, null, null);
|
41 |
+
$group = array();
|
42 |
+
$group['partName'] = $category['name'];
|
43 |
+
$group['products'] = $productList['products'];
|
44 |
+
$sampleEx['groups'][] = $group;
|
45 |
+
}
|
46 |
+
|
47 |
+
$frontPageCategory3 = Mage::getStoreConfig('tappz/catalog/catalog3');
|
48 |
+
if ($frontPageCategory3) {
|
49 |
+
$category = $this->getCategory($frontPageCategory3);
|
50 |
+
$productList = $this->getProductList(null, $frontPageCategory3, 0, 6, null, null);
|
51 |
+
$group = array();
|
52 |
+
$group['partName'] = $category['name'];
|
53 |
+
$group['products'] = $productList['products'];
|
54 |
+
$sampleEx['groups'][] = $group;
|
55 |
+
}
|
56 |
+
|
57 |
+
$frontPageCategory4 = Mage::getStoreConfig('tappz/catalog/catalog4');
|
58 |
+
if ($frontPageCategory4) {
|
59 |
+
$category = $this->getCategory($frontPageCategory4);
|
60 |
+
$productList = $this->getProductList(null, $frontPageCategory4, 0, 6, null, null);
|
61 |
+
$group = array();
|
62 |
+
$group['partName'] = $category['name'];
|
63 |
+
$group['products'] = $productList['products'];
|
64 |
+
$sampleEx['groups'][] = $group;
|
65 |
+
}
|
66 |
+
|
67 |
+
return $sampleEx;
|
68 |
+
}
|
69 |
+
|
70 |
+
public function getCategories()
|
71 |
+
{
|
72 |
+
$storeId = (int) Mage::getStoreConfig('tappz/general/store');
|
73 |
+
if($storeId <= 0){
|
74 |
+
$storeId = 1;
|
75 |
+
}
|
76 |
+
|
77 |
+
/** @var Mage_Core_Model_Store $store */
|
78 |
+
$store = Mage::getModel('core/store')->load($storeId);
|
79 |
+
|
80 |
+
$rootCategoryId = $store->getRootCategoryId();
|
81 |
+
if(!$rootCategoryId){
|
82 |
+
$rootCategoryId = 2;
|
83 |
+
}
|
84 |
+
$rootCategory = $this->getCategory($rootCategoryId);
|
85 |
+
return $rootCategory['children'];
|
86 |
+
}
|
87 |
+
|
88 |
+
public function getCategory($categoryId)
|
89 |
+
{
|
90 |
+
$storeId = Mage::getStoreConfig('tappz/general/store');
|
91 |
+
/* @var $tree Mage_Catalog_Model_Resource_Category_Tree */
|
92 |
+
$tree = Mage::getResourceSingleton('catalog/category_tree')
|
93 |
+
->load();
|
94 |
+
|
95 |
+
/** @var Mage_Catalog_Model_Category $root */
|
96 |
+
$root = $tree->getNodeById($categoryId);
|
97 |
+
|
98 |
+
if ($root && $root->getId() == 1) {
|
99 |
+
$root->setName(Mage::helper('catalog')->__('Root'));
|
100 |
+
}
|
101 |
+
|
102 |
+
$collection = Mage::getModel('catalog/category')->getCollection()
|
103 |
+
->setStoreId($this->_getStoreId($storeId))
|
104 |
+
->addAttributeToSelect('name')
|
105 |
+
->addAttributeToSelect('is_active')
|
106 |
+
->addIsActiveFilter();
|
107 |
+
|
108 |
+
$tree->addCollectionData($collection, true);
|
109 |
+
return $this->categoryToModel($root);
|
110 |
+
}
|
111 |
+
|
112 |
+
/**
|
113 |
+
* @param $temp Mage_Catalog_Model_Category
|
114 |
+
* @param bool $getChildren
|
115 |
+
* @return array
|
116 |
+
*/
|
117 |
+
private function categoryToModel($temp, $getChildren = true)
|
118 |
+
{
|
119 |
+
$category = array();
|
120 |
+
$category['id'] = $temp->getId();
|
121 |
+
$category['name'] = $temp->getName();
|
122 |
+
$category['isRoot'] = $temp->getParentId() == $this->rootCategoryId;
|
123 |
+
$category['isLeaf'] = $temp->getChildrenCount() == 0;
|
124 |
+
$category['parentCategoryId'] = $temp->getParentId();
|
125 |
+
$category['children'] = array();
|
126 |
+
|
127 |
+
if ($getChildren) {
|
128 |
+
foreach ($temp->getChildren() as $child) {
|
129 |
+
$category['children'][] = $this->categoryToModel($child, false);
|
130 |
+
}
|
131 |
+
}
|
132 |
+
|
133 |
+
return $category;
|
134 |
+
}
|
135 |
+
|
136 |
+
public function getProductList($phrase, $categoryId, $pageNumber, $pageSize, $filterQuery, $sort)
|
137 |
+
{
|
138 |
+
$collection = Mage::getModel('catalog/product')
|
139 |
+
->getCollection()
|
140 |
+
->addAttributeToSelect('*')
|
141 |
+
->addAttributeToFilter('status', '1')
|
142 |
+
->addAttributeToFilter('visibility', Mage_Catalog_Model_Product_Visibility::VISIBILITY_BOTH);
|
143 |
+
|
144 |
+
|
145 |
+
if (!empty($filter)) {
|
146 |
+
foreach ($filter as $f) {
|
147 |
+
if (isset($f->selected)) {
|
148 |
+
$collection->addAttributeToSelect($f->id)
|
149 |
+
->addAttributeToFilter($f->id, $f->selected->id);
|
150 |
+
}
|
151 |
+
}
|
152 |
+
}
|
153 |
+
|
154 |
+
if (!empty($phrase))
|
155 |
+
$collection->addAttributeToFilter('name', array('like' => "%$phrase%"));
|
156 |
+
|
157 |
+
if (!empty($categoryId)) {
|
158 |
+
$collection->joinField('category_id', 'catalog/category_product', 'category_id', 'product_id = entity_id', null, 'left');
|
159 |
+
$collection->addAttributeToFilter('category_id', array('eq' => $categoryId));
|
160 |
+
}
|
161 |
+
|
162 |
+
$total = $collection->getSize();
|
163 |
+
if (!empty($sort)) {
|
164 |
+
$sortArr = explode("-", $sort);
|
165 |
+
$collection->addAttributeToSort($sortArr[0], $sortArr[1]);
|
166 |
+
}
|
167 |
+
|
168 |
+
if (empty($pageNumber))
|
169 |
+
$pageNumber = 0;
|
170 |
+
if (empty($pageSize))
|
171 |
+
$pageSize = 6;
|
172 |
+
|
173 |
+
$collection->setPage($pageNumber, $pageSize);
|
174 |
+
|
175 |
+
$result = array();
|
176 |
+
$result['total'] = null;
|
177 |
+
$result['filters'] = array();
|
178 |
+
$result['sortList'] = array();
|
179 |
+
$result['products'] = array();
|
180 |
+
|
181 |
+
$result['total'] = $total;
|
182 |
+
|
183 |
+
// TODO : mcgoncu - filter ekle
|
184 |
+
// $attributeCodeList = array('manufacturer');
|
185 |
+
// foreach ($attributeCodeList as $attributeCode) {
|
186 |
+
// $attribute = Mage::getModel('eav/entity_attribute')
|
187 |
+
// ->loadByCode('catalog_product', $attributeCode);
|
188 |
+
//
|
189 |
+
// $attributeOptionList = Mage::getResourceModel('eav/entity_attribute_option_collection')
|
190 |
+
// ->setAttributeFilter($attribute->getData('attribute_id'));
|
191 |
+
//
|
192 |
+
// $group = array();
|
193 |
+
// $group['id'] = $attribute['code'];
|
194 |
+
// $group['name'] = $attribute['label'];
|
195 |
+
// $group['selected'] = ''; // TODO set selected
|
196 |
+
// $group['values'] = array();
|
197 |
+
// foreach ($attributeOptionList as $attributeOption) {
|
198 |
+
// $feature = array();
|
199 |
+
// $feature['id'] = $attributeOption['value'];
|
200 |
+
// $feature['name'] = $attributeOption['label'];
|
201 |
+
// $group['values'][] = $feature;
|
202 |
+
// }
|
203 |
+
// $result['filters'][] = $group;
|
204 |
+
// }
|
205 |
+
|
206 |
+
$result['sortList'][] = array('id' => 'name-asc', 'name' => 'Name (Ascending)');
|
207 |
+
$result['sortList'][] = array('id' => 'name-desc', 'name' => 'Name (Descending)');
|
208 |
+
$result['sortList'][] = array('id' => 'price-asc', 'name' => 'Price (Ascending)');
|
209 |
+
$result['sortList'][] = array('id' => 'price-desc', 'name' => 'Price (Descending)');
|
210 |
+
|
211 |
+
if (!empty($collection)) {
|
212 |
+
foreach ($collection as $_product) {
|
213 |
+
$result['products'][] = $this->getProduct($_product->getId());
|
214 |
+
}
|
215 |
+
}
|
216 |
+
return $result;
|
217 |
+
}
|
218 |
+
|
219 |
+
public function getProduct($productId)
|
220 |
+
{
|
221 |
+
$storeId = (int) Mage::getStoreConfig('tappz/general/store');
|
222 |
+
if($storeId <= 0){
|
223 |
+
$storeId = 1;
|
224 |
+
}
|
225 |
+
|
226 |
+
/** @var Mage_Core_Model_Store $store */
|
227 |
+
$store = Mage::getModel('core/store')->load($storeId);
|
228 |
+
|
229 |
+
/** @var Mage_Catalog_Model_Product $product */
|
230 |
+
$product = Mage::getModel('catalog/product')->load($productId);
|
231 |
+
|
232 |
+
$productInfo = array();
|
233 |
+
$productInfo['id'] = null;
|
234 |
+
$productInfo['productName'] = null;
|
235 |
+
$productInfo['listPrice'] = array();
|
236 |
+
$productInfo['listPrice']['amount'] = null;
|
237 |
+
$productInfo['listPrice']['amountDefaultCurrency'] = null;
|
238 |
+
$productInfo['listPrice']['currency'] = null;
|
239 |
+
$productInfo['strikeoutPrice'] = array();
|
240 |
+
$productInfo['strikeoutPrice']['amount'] = null;
|
241 |
+
$productInfo['strikeoutPrice']['amountDefaultCurrency'] = null;
|
242 |
+
$productInfo['strikeoutPrice']['currency'] = null;
|
243 |
+
$productInfo['picture'] = null;
|
244 |
+
$productInfo['pictures'] = array();
|
245 |
+
$productInfo['productDetailUrl'] = null;
|
246 |
+
$productInfo['additionalDetail'] = null;
|
247 |
+
$productInfo['inStock'] = true;
|
248 |
+
$productInfo['isShipmentFree'] = false;
|
249 |
+
$productInfo['isCampaign'] = false;
|
250 |
+
$productInfo['headline'] = null;
|
251 |
+
$productInfo['productUrl'] = null;
|
252 |
+
$productInfo['variants'] = array();
|
253 |
+
$productInfo['shipmentInformation'] = null;
|
254 |
+
$productInfo['actions'] = array();
|
255 |
+
|
256 |
+
$productInfo['id'] = $product->getId();
|
257 |
+
$productInfo['productName'] = $product->getName();
|
258 |
+
|
259 |
+
$specialPrice = sprintf("%0.2f", $product->getData('special_price'));
|
260 |
+
$listPrice = sprintf("%0.2f", $product->getPrice());
|
261 |
+
$productInfo['listPrice'] = array();
|
262 |
+
$productInfo['listPrice']['amount'] = $specialPrice > 0 ? $specialPrice : $listPrice;
|
263 |
+
$productInfo['listPrice']['amountDefaultCurrency'] = null;
|
264 |
+
$productInfo['listPrice']['currency'] = $store->getCurrentCurrencyCode();
|
265 |
+
$productInfo['strikeoutPrice'] = array();
|
266 |
+
$productInfo['strikeoutPrice']['amount'] = $specialPrice > 0 ? $listPrice : 0;
|
267 |
+
$productInfo['strikeoutPrice']['amountDefaultCurrency'] = '';
|
268 |
+
$productInfo['strikeoutPrice']['currency'] = $store->getCurrentCurrencyCode();
|
269 |
+
|
270 |
+
if ($specialPrice > 0) {
|
271 |
+
$actionDiscount = array();
|
272 |
+
$actionDiscount['id'] = 'discount';
|
273 |
+
$actionDiscount['name'] = sprintf("%d%%", (($listPrice - $specialPrice) / $listPrice) * 100);
|
274 |
+
$productInfo['actions'][] = $actionDiscount;
|
275 |
+
}
|
276 |
+
|
277 |
+
$productInfo['picture'] = $product->getImageUrl();
|
278 |
+
|
279 |
+
$mediaGallery = $product->getMediaGalleryImages();
|
280 |
+
if (count($mediaGallery) > 0) {
|
281 |
+
foreach ($mediaGallery as $mediaGal) {
|
282 |
+
$picture['url'] = $mediaGal->getUrl();
|
283 |
+
$productInfo['pictures'][] = $picture;
|
284 |
+
}
|
285 |
+
} else {
|
286 |
+
$productInfo['pictures'][0]['url'] = $productInfo['picture'];
|
287 |
+
}
|
288 |
+
|
289 |
+
$productInfo['productDetailUrl'] = '<p>' . $product->getDescription() . '</p>';
|
290 |
+
|
291 |
+
$isInStock = false;
|
292 |
+
$stockStatus = Mage::getModel('cataloginventory/stock_item')
|
293 |
+
->loadByProduct($product)
|
294 |
+
->getIsInStock();
|
295 |
+
if ($stockStatus == 1)
|
296 |
+
$isInStock = true;
|
297 |
+
$productInfo['inStock'] = $isInStock;
|
298 |
+
|
299 |
+
$productAttributeCodeIsShippingFree = Mage::getStoreConfig('tappz/catalog/productAttributeCodeShippingInfo');
|
300 |
+
$productInfo['isShipmentFree'] = $product->getData($productAttributeCodeIsShippingFree);
|
301 |
+
$productInfo['productUrl'] = $product->getProductUrl();
|
302 |
+
|
303 |
+
if ($productInfo['isShipmentFree']) {
|
304 |
+
$action = array();
|
305 |
+
$action['id'] = 'popper';
|
306 |
+
$action['name'] = 'Free Shipping';
|
307 |
+
$productInfo['actions'][] = $action;
|
308 |
+
}
|
309 |
+
|
310 |
+
//variants
|
311 |
+
$productType = $product->getTypeId();;
|
312 |
+
if ($productType == 'configurable') {
|
313 |
+
$instanceConf = $product->getTypeInstance();
|
314 |
+
$configurableAttributesData = $instanceConf->getConfigurableAttributesAsArray();
|
315 |
+
|
316 |
+
foreach ($configurableAttributesData as $dt => $val) {
|
317 |
+
$group = array();
|
318 |
+
$group['id'] = null;
|
319 |
+
$group['name'] = null;
|
320 |
+
$group['selected'] = null;
|
321 |
+
$group['values'] = array();
|
322 |
+
|
323 |
+
$group['id'] = $val['attribute_code'];
|
324 |
+
$group['name'] = $val['label'];
|
325 |
+
|
326 |
+
// TODO : mcgoncu - annelutfen icin ekle
|
327 |
+
if ($val['attribute_code'] == 'beden')
|
328 |
+
$productInfo['additionalDetail'] = "<a href=\"http://annelutfen.com/skin/frontend/purple/purple/images/olcu_tablosu_gri.png\">Ölçü tablosu</a>";
|
329 |
+
|
330 |
+
foreach ($val['values'] as $vv) {
|
331 |
+
$groupValue = array();
|
332 |
+
$groupValue['id'] = null;
|
333 |
+
$groupValue['name'] = null;
|
334 |
+
|
335 |
+
$groupValue['id'] = $vv['label'];
|
336 |
+
$groupValue['name'] = $vv['value_index'];
|
337 |
+
$group['values'][] = $groupValue;
|
338 |
+
}
|
339 |
+
$productInfo['variants'][] = $group;
|
340 |
+
}
|
341 |
+
}
|
342 |
+
|
343 |
+
$productAttributeCodeShippingInfo = Mage::getStoreConfig('tappz/catalog/productAttributeCodeShippingInfo');
|
344 |
+
$productInfo['shipmentInformation'] = $product->getData($productAttributeCodeShippingInfo);
|
345 |
+
|
346 |
+
return $productInfo;
|
347 |
+
}
|
348 |
+
|
349 |
+
public function getRelatedProducts($productId)
|
350 |
+
{
|
351 |
+
$product = Mage::getModel('catalog/product')->load($productId);
|
352 |
+
$link = $product->getLinkInstance()
|
353 |
+
->setLinkTypeId(Mage_Catalog_Model_Product_Link::LINK_TYPE_RELATED);
|
354 |
+
|
355 |
+
$collection = $link
|
356 |
+
->getProductCollection()
|
357 |
+
->setIsStrongMode()
|
358 |
+
->setProduct($product);
|
359 |
+
|
360 |
+
$arData = array();
|
361 |
+
if (!empty($collection)) {
|
362 |
+
foreach ($collection as $_product):
|
363 |
+
array_push($arData, $this->getProduct($_product->getId()));
|
364 |
+
endforeach;
|
365 |
+
}
|
366 |
+
|
367 |
+
return $arData;
|
368 |
+
}
|
369 |
+
|
370 |
+
public function getChildProductId($parentProductId, $attributeList)
|
371 |
+
{
|
372 |
+
$subProductIds = Mage::getModel('catalog/product_type_configurable')
|
373 |
+
->getChildrenIds($parentProductId); //get the children ids through a simple query
|
374 |
+
$subProducts = Mage::getModel('catalog/product')->getCollection()
|
375 |
+
->addAttributeToFilter('entity_id', $subProductIds);
|
376 |
+
|
377 |
+
foreach ($attributeList as $attribute) {
|
378 |
+
$attributeCode = $attribute->id;
|
379 |
+
$attributeValueIndex = $attribute->values[0]->id;
|
380 |
+
|
381 |
+
$subProducts->addAttributeToFilter($attributeCode, $attributeValueIndex);
|
382 |
+
}
|
383 |
+
|
384 |
+
$product = null;
|
385 |
+
if ($subProducts->getSize() > 0) {
|
386 |
+
$product = $subProducts->getFirstItem();
|
387 |
+
}
|
388 |
+
return $product == null ? 0 : $product->getId();
|
389 |
+
}
|
390 |
+
}
|
app/code/local/TmobLabs/Tappz/Model/Catalog/Api/V2.php
ADDED
@@ -0,0 +1,6 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class TmobLabs_Tappz_Model_Catalog_Api_V2 extends TmobLabs_Tappz_Model_Catalog_Api
|
4 |
+
{
|
5 |
+
|
6 |
+
}
|
app/code/local/TmobLabs/Tappz/Model/Customer/Address/Api.php
ADDED
@@ -0,0 +1,332 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class TmobLabs_Tappz_Model_Customer_Address_Api extends Mage_Api_Model_Resource_Abstract
|
4 |
+
{
|
5 |
+
public function get($addressId)
|
6 |
+
{
|
7 |
+
$address = Mage::getModel('customer/address')->load($addressId);
|
8 |
+
|
9 |
+
if (!$address) {
|
10 |
+
$this->_fault("404.11", "Address is not found.");
|
11 |
+
}
|
12 |
+
|
13 |
+
return $this->prepareAddress($address);
|
14 |
+
}
|
15 |
+
|
16 |
+
public function getList($customerId)
|
17 |
+
{
|
18 |
+
$customer = Mage::getModel('customer/customer')->load($customerId);
|
19 |
+
/* @var $customer Mage_Customer_Model_Customer */
|
20 |
+
if (!$customer) {
|
21 |
+
$this->_fault("404.10", "Customer is not found.");
|
22 |
+
}
|
23 |
+
|
24 |
+
$addresses = array();
|
25 |
+
foreach ($customer->getAddresses() as $address) {
|
26 |
+
$addresses[] = $this->prepareAddress($address);
|
27 |
+
}
|
28 |
+
return $addresses;
|
29 |
+
}
|
30 |
+
|
31 |
+
public function create($customerId, $addressData)
|
32 |
+
{
|
33 |
+
$addressAddressNameAttributeCode = Mage::getStoreConfig('tappz/address/name');
|
34 |
+
$addressNameAttributeCode = Mage::getStoreConfig('tappz/address/firstname');
|
35 |
+
$addressSurnameAttributeCode = Mage::getStoreConfig('tappz/address/lastname');
|
36 |
+
$addressEmailAttributeCode = Mage::getStoreConfig('tappz/address/email');
|
37 |
+
$addressStreetAttributeCode = Mage::getStoreConfig('tappz/address/street');
|
38 |
+
$addressCountryIdAttributeCode = Mage::getStoreConfig('tappz/address/country_id');
|
39 |
+
$addressRegionAttributeCode = Mage::getStoreConfig('tappz/address/region');
|
40 |
+
$addressRegionIdAttributeCode = Mage::getStoreConfig('tappz/address/region_id');
|
41 |
+
$addressCityAttributeCode = Mage::getStoreConfig('tappz/address/city');
|
42 |
+
$addressCityIdAttributeCode = Mage::getStoreConfig('tappz/address/city_id');
|
43 |
+
$addressDistrictAttributeCode = Mage::getStoreConfig('tappz/address/district');
|
44 |
+
$addressDistrictIdAttributeCode = Mage::getStoreConfig('tappz/address/district_id');
|
45 |
+
$addressTownAttributeCode = Mage::getStoreConfig('tappz/address/town');
|
46 |
+
$addressTownIdAttributeCode = Mage::getStoreConfig('tappz/address/town_id');
|
47 |
+
$addressIsCompanyAttributeCode = Mage::getStoreConfig('tappz/address/isCompany');
|
48 |
+
$addressCompanyAttributeCode = Mage::getStoreConfig('tappz/address/company');
|
49 |
+
$addressTaxDepartmentAttributeCode = Mage::getStoreConfig('tappz/address/taxDepartment');
|
50 |
+
$addressTaxNoAttributeCode = Mage::getStoreConfig('tappz/address/vatNo');
|
51 |
+
$addressTelephoneAttributeCode = Mage::getStoreConfig('tappz/address/phone');;
|
52 |
+
$addressIdentityNoAttributeCode = Mage::getStoreConfig('tappz/address/idNo');
|
53 |
+
$addressPostcodeAttributeCode = Mage::getStoreConfig('tappz/address/postcode');
|
54 |
+
|
55 |
+
$customer = Mage::getModel('customer/customer')
|
56 |
+
->load($customerId);
|
57 |
+
/* @var $customer Mage_Customer_Model_Customer */
|
58 |
+
|
59 |
+
if (!$customer->getId()) {
|
60 |
+
$this->_fault('customer_not_exists');
|
61 |
+
}
|
62 |
+
|
63 |
+
$address = Mage::getModel('customer/address');
|
64 |
+
/* @var $address Mage_Customer_Model_Address */
|
65 |
+
|
66 |
+
$address->setData($addressAddressNameAttributeCode, $addressData->addressName);
|
67 |
+
$address->setData($addressNameAttributeCode, $addressData->name);
|
68 |
+
$address->setData($addressSurnameAttributeCode, $addressData->surname);
|
69 |
+
$address->setData($addressEmailAttributeCode, $addressData->email);
|
70 |
+
$address->setData($addressStreetAttributeCode, $addressData->addressLine);
|
71 |
+
$address->setData($addressCountryIdAttributeCode, $addressData->countryCode);
|
72 |
+
$address->setData($addressRegionAttributeCode, $addressData->state);
|
73 |
+
$address->setData($addressRegionIdAttributeCode, $addressData->stateCode);
|
74 |
+
$address->setData($addressCityAttributeCode, $addressData->city);
|
75 |
+
$address->setData($addressCityIdAttributeCode, $addressData->cityCode);
|
76 |
+
$address->setData($addressDistrictAttributeCode, $addressData->district);
|
77 |
+
$address->setData($addressDistrictIdAttributeCode, $addressData->districtCode);
|
78 |
+
$address->setData($addressTownAttributeCode, $addressData->town);
|
79 |
+
$address->setData($addressTownIdAttributeCode, $addressData->townCode);
|
80 |
+
$address->setData($addressIsCompanyAttributeCode, $addressData->corporate);
|
81 |
+
$address->setData($addressCompanyAttributeCode, $addressData->companyTitle);
|
82 |
+
$address->setData($addressTaxDepartmentAttributeCode, $addressData->taxDepartment);
|
83 |
+
$address->setData($addressTaxNoAttributeCode, $addressData->taxNo);
|
84 |
+
$address->setData($addressTelephoneAttributeCode, $addressData->phoneNumber);
|
85 |
+
$address->setData($addressIdentityNoAttributeCode, $addressData->identityNo);
|
86 |
+
$address->setData($addressPostcodeAttributeCode, $addressData->zipCode);
|
87 |
+
|
88 |
+
$address->setCustomer($customer);
|
89 |
+
|
90 |
+
$valid = $address->validate();
|
91 |
+
|
92 |
+
if (is_array($valid)) {
|
93 |
+
$this->_fault('invalid_data', implode("\n", $valid));
|
94 |
+
}
|
95 |
+
|
96 |
+
try {
|
97 |
+
$address->save();
|
98 |
+
} catch (Mage_Core_Exception $e) {
|
99 |
+
$this->_fault('invalid_data', $e->getMessage());
|
100 |
+
}
|
101 |
+
|
102 |
+
return $this->prepareAddress($address);
|
103 |
+
}
|
104 |
+
|
105 |
+
public function update($addressData)
|
106 |
+
{
|
107 |
+
$addressAddressNameAttributeCode = Mage::getStoreConfig('tappz/address/name');
|
108 |
+
$addressNameAttributeCode = Mage::getStoreConfig('tappz/address/firstname');
|
109 |
+
$addressSurnameAttributeCode = Mage::getStoreConfig('tappz/address/lastname');
|
110 |
+
$addressEmailAttributeCode = Mage::getStoreConfig('tappz/address/email');
|
111 |
+
$addressStreetAttributeCode = Mage::getStoreConfig('tappz/address/street');
|
112 |
+
$addressCountryIdAttributeCode = Mage::getStoreConfig('tappz/address/country_id');
|
113 |
+
$addressRegionAttributeCode = Mage::getStoreConfig('tappz/address/region');
|
114 |
+
$addressRegionIdAttributeCode = Mage::getStoreConfig('tappz/address/region_id');
|
115 |
+
$addressCityAttributeCode = Mage::getStoreConfig('tappz/address/city');
|
116 |
+
$addressCityIdAttributeCode = Mage::getStoreConfig('tappz/address/city_id');
|
117 |
+
$addressDistrictAttributeCode = Mage::getStoreConfig('tappz/address/district');
|
118 |
+
$addressDistrictIdAttributeCode = Mage::getStoreConfig('tappz/address/district_id');
|
119 |
+
$addressTownAttributeCode = Mage::getStoreConfig('tappz/address/town');
|
120 |
+
$addressTownIdAttributeCode = Mage::getStoreConfig('tappz/address/town_id');
|
121 |
+
$addressIsCompanyAttributeCode = Mage::getStoreConfig('tappz/address/isCompany');
|
122 |
+
$addressCompanyAttributeCode = Mage::getStoreConfig('tappz/address/company');
|
123 |
+
$addressTaxDepartmentAttributeCode = Mage::getStoreConfig('tappz/address/taxDepartment');
|
124 |
+
$addressTaxNoAttributeCode = Mage::getStoreConfig('tappz/address/vatNo');
|
125 |
+
$addressTelephoneAttributeCode = Mage::getStoreConfig('tappz/address/phone');;
|
126 |
+
$addressIdentityNoAttributeCode = Mage::getStoreConfig('tappz/address/idNo');
|
127 |
+
$addressPostcodeAttributeCode = Mage::getStoreConfig('tappz/address/postcode');
|
128 |
+
|
129 |
+
/* @var $address Mage_Customer_Model_Address */
|
130 |
+
$address = Mage::getModel('customer/address')
|
131 |
+
->load($addressData->id);
|
132 |
+
|
133 |
+
if (!$address->getId()) {
|
134 |
+
$this->_fault('not_exists');
|
135 |
+
}
|
136 |
+
|
137 |
+
$address->setData($addressAddressNameAttributeCode, $addressData->addressName);
|
138 |
+
$address->setData($addressNameAttributeCode, $addressData->name);
|
139 |
+
$address->setData($addressSurnameAttributeCode, $addressData->surname);
|
140 |
+
$address->setData($addressEmailAttributeCode, $addressData->email);
|
141 |
+
$address->setData($addressStreetAttributeCode, $addressData->addressLine);
|
142 |
+
$address->setData($addressCountryIdAttributeCode, $addressData->countryCode);
|
143 |
+
$address->setData($addressRegionAttributeCode, $addressData->state);
|
144 |
+
$address->setData($addressRegionIdAttributeCode, $addressData->stateCode);
|
145 |
+
$address->setData($addressCityAttributeCode, $addressData->city);
|
146 |
+
$address->setData($addressCityIdAttributeCode, $addressData->cityCode);
|
147 |
+
$address->setData($addressDistrictAttributeCode, $addressData->district);
|
148 |
+
$address->setData($addressDistrictIdAttributeCode, $addressData->districtCode);
|
149 |
+
$address->setData($addressTownAttributeCode, $addressData->town);
|
150 |
+
$address->setData($addressTownIdAttributeCode, $addressData->townCode);
|
151 |
+
$address->setData($addressIsCompanyAttributeCode, $addressData->corporate);
|
152 |
+
$address->setData($addressCompanyAttributeCode, $addressData->companyTitle);
|
153 |
+
$address->setData($addressTaxDepartmentAttributeCode, $addressData->taxDepartment);
|
154 |
+
$address->setData($addressTaxNoAttributeCode, $addressData->taxNo);
|
155 |
+
$address->setData($addressTelephoneAttributeCode, $addressData->phoneNumber);
|
156 |
+
$address->setData($addressIdentityNoAttributeCode, $addressData->identityNo);
|
157 |
+
$address->setData($addressPostcodeAttributeCode, $addressData->zipCode);
|
158 |
+
|
159 |
+
try {
|
160 |
+
$address->save();
|
161 |
+
} catch (Mage_Core_Exception $e) {
|
162 |
+
$this->_fault('invalid_data', $e->getMessage());
|
163 |
+
}
|
164 |
+
|
165 |
+
return $this->prepareAddress($address);
|
166 |
+
}
|
167 |
+
|
168 |
+
public function delete($address)
|
169 |
+
{
|
170 |
+
$address = Mage::getModel('customer/address')
|
171 |
+
->load($address->id);
|
172 |
+
|
173 |
+
if (!$address->getId()) {
|
174 |
+
$this->_fault('not_exists');
|
175 |
+
}
|
176 |
+
|
177 |
+
try {
|
178 |
+
$address->delete();
|
179 |
+
} catch (Mage_Core_Exception $e) {
|
180 |
+
$this->_fault('invalid_data', $e->getMessage());
|
181 |
+
}
|
182 |
+
|
183 |
+
return $address->getId();
|
184 |
+
}
|
185 |
+
|
186 |
+
protected function prepareAddress($address)
|
187 |
+
{
|
188 |
+
$addressAddressNameAttributeCode = Mage::getStoreConfig('tappz/address/name');
|
189 |
+
$addressNameAttributeCode = Mage::getStoreConfig('tappz/address/firstname');
|
190 |
+
$addressSurnameAttributeCode = Mage::getStoreConfig('tappz/address/lastname');
|
191 |
+
$addressEmailAttributeCode = Mage::getStoreConfig('tappz/address/email');
|
192 |
+
$addressStreetAttributeCode = Mage::getStoreConfig('tappz/address/street');
|
193 |
+
$addressCountryIdAttributeCode = Mage::getStoreConfig('tappz/address/country_id');
|
194 |
+
$addressRegionAttributeCode = Mage::getStoreConfig('tappz/address/region');
|
195 |
+
$addressRegionIdAttributeCode = Mage::getStoreConfig('tappz/address/region_id');
|
196 |
+
$addressCityAttributeCode = Mage::getStoreConfig('tappz/address/city');
|
197 |
+
$addressCityIdAttributeCode = Mage::getStoreConfig('tappz/address/city_id');
|
198 |
+
$addressDistrictAttributeCode = Mage::getStoreConfig('tappz/address/district');
|
199 |
+
$addressDistrictIdAttributeCode = Mage::getStoreConfig('tappz/address/district_id');
|
200 |
+
$addressTownAttributeCode = Mage::getStoreConfig('tappz/address/town');
|
201 |
+
$addressTownIdAttributeCode = Mage::getStoreConfig('tappz/address/town_id');
|
202 |
+
$addressIsCompanyAttributeCode = Mage::getStoreConfig('tappz/address/isCompany');
|
203 |
+
$addressCompanyAttributeCode = Mage::getStoreConfig('tappz/address/company');
|
204 |
+
$addressTaxDepartmentAttributeCode = Mage::getStoreConfig('tappz/address/taxDepartment');
|
205 |
+
$addressTaxNoAttributeCode = Mage::getStoreConfig('tappz/address/vatNo');
|
206 |
+
$addressTelephoneAttributeCode = Mage::getStoreConfig('tappz/address/phone');;
|
207 |
+
$addressIdentityNoAttributeCode = Mage::getStoreConfig('tappz/address/idNo');
|
208 |
+
$addressPostcodeAttributeCode = Mage::getStoreConfig('tappz/address/postcode');
|
209 |
+
|
210 |
+
$row = array();
|
211 |
+
|
212 |
+
$row['id'] = '';
|
213 |
+
$row['addressName'] = '';
|
214 |
+
$row['name'] = '';
|
215 |
+
$row['surname'] = '';
|
216 |
+
$row['email'] = '';
|
217 |
+
$row['addressLine'] = '';
|
218 |
+
$row['country'] = '';
|
219 |
+
$row['countryCode'] = '';
|
220 |
+
$row['state'] = '';
|
221 |
+
$row['stateCode'] = '';
|
222 |
+
$row['city'] = '';
|
223 |
+
$row['cityCode'] = '';
|
224 |
+
$row['district'] = '';
|
225 |
+
$row['districtCode'] = '';
|
226 |
+
$row['town'] = '';
|
227 |
+
$row['townCode'] = '';
|
228 |
+
$row['corporate'] = '';
|
229 |
+
$row['companyTitle'] = '';
|
230 |
+
$row['taxDepartment'] = '';
|
231 |
+
$row['taxNo'] = '';
|
232 |
+
$row['phoneNumber'] = '';
|
233 |
+
$row['identityNo'] = '';
|
234 |
+
$row['zipCode'] = '';
|
235 |
+
|
236 |
+
$row['id'] = $address->getId();
|
237 |
+
$row['addressName'] = $address->getData($addressAddressNameAttributeCode);
|
238 |
+
if (!isset($row['addressName'])) {
|
239 |
+
$row['addressName'] = $address->getData($addressStreetAttributeCode);
|
240 |
+
}
|
241 |
+
$row['name'] = $address->getData($addressNameAttributeCode);
|
242 |
+
$row['surname'] = $address->getData($addressSurnameAttributeCode);
|
243 |
+
$row['email'] = $address->getData($addressEmailAttributeCode);
|
244 |
+
$row['addressLine'] = $address->getData($addressStreetAttributeCode);
|
245 |
+
$row['country'] = '';
|
246 |
+
$row['countryCode'] = '';
|
247 |
+
$countryId = $address->getData($addressCountryIdAttributeCode);
|
248 |
+
if($countryId){
|
249 |
+
/* @var $country Mage_Directory_Model_Country */
|
250 |
+
$country = Mage::getModel('directory/country')->load($countryId);
|
251 |
+
$country->getName(); // Loading name in default locale
|
252 |
+
$row['country'] = $country->getName();
|
253 |
+
$row['countryCode'] = $country->getId();
|
254 |
+
}
|
255 |
+
$row['state'] = $address->getData($addressRegionAttributeCode);
|
256 |
+
$row['stateCode'] = $address->getData($addressRegionIdAttributeCode);
|
257 |
+
$row['city'] = $address->getData($addressCityAttributeCode);
|
258 |
+
$row['cityCode'] = $address->getData($addressCityIdAttributeCode);
|
259 |
+
$row['district'] = $address->getData($addressDistrictAttributeCode);
|
260 |
+
$row['districtCode'] = $address->getData($addressDistrictIdAttributeCode);
|
261 |
+
$row['town'] = $address->getData($addressTownAttributeCode);
|
262 |
+
$row['townCode'] = $address->getData($addressTownIdAttributeCode);
|
263 |
+
$row['corporate'] = $address->getData($addressIsCompanyAttributeCode);
|
264 |
+
$row['companyTitle'] = $address->getData($addressCompanyAttributeCode);
|
265 |
+
$row['taxDepartment'] = $address->getData($addressTaxDepartmentAttributeCode);
|
266 |
+
$row['taxNo'] = $address->getData($addressTaxNoAttributeCode);
|
267 |
+
$row['phoneNumber'] = $address->getData($addressTelephoneAttributeCode);
|
268 |
+
$row['identityNo'] = $address->getData($addressIdentityNoAttributeCode);
|
269 |
+
$row['zipCode'] = $address->getData($addressPostcodeAttributeCode);
|
270 |
+
|
271 |
+
return $row;
|
272 |
+
}
|
273 |
+
|
274 |
+
public function countryList()
|
275 |
+
{
|
276 |
+
$collection = Mage::getModel('directory/country')->getCollection();
|
277 |
+
|
278 |
+
$result = array();
|
279 |
+
foreach ($collection as $country) {
|
280 |
+
/* @var $country Mage_Directory_Model_Country */
|
281 |
+
$country->getName(); // Loading name in default locale
|
282 |
+
$location = array();
|
283 |
+
$location['code'] = $country->getId();
|
284 |
+
$location['name'] = $country->getName();
|
285 |
+
$result[] = $location;
|
286 |
+
}
|
287 |
+
|
288 |
+
return $result;
|
289 |
+
}
|
290 |
+
|
291 |
+
public function stateList($countryId)
|
292 |
+
{
|
293 |
+
try {
|
294 |
+
$country = Mage::getModel('directory/country')->load($countryId);
|
295 |
+
} catch (Mage_Core_Exception $e) {
|
296 |
+
$this->_fault('country_not_exists', $e->getMessage());
|
297 |
+
}
|
298 |
+
|
299 |
+
if (!$country->getId()) {
|
300 |
+
$this->_fault('country_not_exists');
|
301 |
+
}
|
302 |
+
|
303 |
+
$result = array();
|
304 |
+
foreach ($country->getRegions() as $region) {
|
305 |
+
$region->getName(); // Loading name in default locale
|
306 |
+
$location = array();
|
307 |
+
$location['code'] = $region->getId();
|
308 |
+
$location['name'] = $region->getName();
|
309 |
+
$result[] = $location;
|
310 |
+
}
|
311 |
+
|
312 |
+
return $result;
|
313 |
+
}
|
314 |
+
|
315 |
+
public function cityList($stateId)
|
316 |
+
{
|
317 |
+
// TODO : mcgoncu
|
318 |
+
return array();
|
319 |
+
}
|
320 |
+
|
321 |
+
public function districtList($stateId)
|
322 |
+
{
|
323 |
+
// TODO : mcgoncu
|
324 |
+
return array();
|
325 |
+
}
|
326 |
+
|
327 |
+
public function townList($stateId)
|
328 |
+
{
|
329 |
+
// TODO : mcgoncu
|
330 |
+
return array();
|
331 |
+
}
|
332 |
+
}
|
app/code/local/TmobLabs/Tappz/Model/Customer/Address/Api/V2.php
ADDED
@@ -0,0 +1,6 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class TmobLabs_Tappz_Model_Customer_Address_Api_V2 extends TmobLabs_Tappz_Model_Customer_Address_Api
|
4 |
+
{
|
5 |
+
|
6 |
+
}
|
app/code/local/TmobLabs/Tappz/Model/Customer/Api.php
ADDED
@@ -0,0 +1,206 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class TmobLabs_Tappz_Model_Customer_Api extends Mage_Customer_Model_Api_Resource
|
4 |
+
{
|
5 |
+
protected function _prepareCustomerData($data)
|
6 |
+
{
|
7 |
+
$genderAttributeCode = Mage::getStoreConfig('tappz/customer/gender');
|
8 |
+
$emailAttributeCode = Mage::getStoreConfig('tappz/customer/email');
|
9 |
+
$phoneAttributeCode = Mage::getStoreConfig('tappz/customer/phone');
|
10 |
+
$birthDateAttributeCode = Mage::getStoreConfig('tappz/customer/birthDate');
|
11 |
+
|
12 |
+
$result = array();
|
13 |
+
$result['entity_id'] = $data->customerId;
|
14 |
+
$result['firstname'] = $data->firstName;
|
15 |
+
$result['lastname'] = $data->lastName;
|
16 |
+
$result['password'] = $data->password;
|
17 |
+
$result[$genderAttributeCode] = $data->gender;
|
18 |
+
$result['isSubscribed'] = $data->isSubscribed;
|
19 |
+
$result[$emailAttributeCode] = $data->email;
|
20 |
+
$result[$phoneAttributeCode] = $data->phone;
|
21 |
+
$result[$birthDateAttributeCode] = $data->birthDate;
|
22 |
+
|
23 |
+
return $result;
|
24 |
+
}
|
25 |
+
|
26 |
+
public function info($customerId)
|
27 |
+
{
|
28 |
+
$genderAttributeCode = Mage::getStoreConfig('tappz/customer/gender');
|
29 |
+
$emailAttributeCode = Mage::getStoreConfig('tappz/customer/email');
|
30 |
+
$phoneAttributeCode = Mage::getStoreConfig('tappz/customer/phone');
|
31 |
+
$birthDateAttributeCode = Mage::getStoreConfig('tappz/customer/birthDate');
|
32 |
+
|
33 |
+
/* @var $customer Mage_Customer_Model_Customer */
|
34 |
+
$customer = Mage::getModel('customer/customer')->load($customerId);
|
35 |
+
if (!$customer) {
|
36 |
+
$this->_fault("404.10", "Customer is not found.");
|
37 |
+
}
|
38 |
+
|
39 |
+
$result = array();
|
40 |
+
$result['customerId'] = "";
|
41 |
+
$result['fullName'] = "";
|
42 |
+
$result['firstName'] = "";
|
43 |
+
$result['lastName'] = "";
|
44 |
+
$result['gender'] = "";
|
45 |
+
$result['isSubscribed'] = false;
|
46 |
+
$result['isAccepted'] = false;
|
47 |
+
$result['email'] = "";
|
48 |
+
$result['password'] = null;
|
49 |
+
$result['phone'] = "";
|
50 |
+
$result['birthDate'] = "";
|
51 |
+
$result['points'] = 0;
|
52 |
+
$result['addresses'] = array();
|
53 |
+
$result['giftCheques'] = array();
|
54 |
+
|
55 |
+
$result['customerId'] = $customer->getId();
|
56 |
+
$result['fullName'] = $customer->getName();
|
57 |
+
$result['firstName'] = $customer->getFirstname() . ($customer->getMiddleName() ? (' ' . $customer->getMiddleName()) : '');
|
58 |
+
$result['lastName'] = $customer->getLastName();
|
59 |
+
$result['gender'] = $customer->getData($genderAttributeCode);
|
60 |
+
$result['isAccepted'] = !$customer->isConfirmationRequired();
|
61 |
+
$result['email'] = $customer->getData($emailAttributeCode);
|
62 |
+
$result['phone'] = $customer->getData($phoneAttributeCode);
|
63 |
+
$result['birthDate'] = $customer->getData($birthDateAttributeCode);
|
64 |
+
|
65 |
+
$subscriber = Mage::getModel('newsletter/subscriber')->loadByEmail($customer->getData($emailAttributeCode));
|
66 |
+
$result['isSubscribed'] = (bool)$subscriber->getId();
|
67 |
+
|
68 |
+
$points = Mage::getModel('enterprise_reward/reward');
|
69 |
+
if ($points) {
|
70 |
+
$points = $points->setCustomer($customer)
|
71 |
+
->setWebsiteId(Mage::app()->getWebsite()->getId())
|
72 |
+
->loadByCustomer()
|
73 |
+
->getPointsBalance();
|
74 |
+
}
|
75 |
+
$result['points'] = $points;
|
76 |
+
|
77 |
+
$result['addresses'] = Mage::getSingleton('tappz/customer_address_api')->getList($customer->getId()); /// ??????
|
78 |
+
|
79 |
+
$result['giftCheques'] = array();
|
80 |
+
// TODO: mcgoncu - giftCheque
|
81 |
+
return $result;
|
82 |
+
}
|
83 |
+
|
84 |
+
public function login($userName, $password)
|
85 |
+
{
|
86 |
+
$storeId = Mage::getStoreConfig('tappz/general/store');
|
87 |
+
/** @var Mage_Core_Model_Store $store */
|
88 |
+
$store = Mage::getModel('core/store')->load($storeId);
|
89 |
+
|
90 |
+
$customer = Mage::getModel('customer/customer')
|
91 |
+
->setStore($store);
|
92 |
+
/* @var $customer Mage_Customer_Model_Customer */
|
93 |
+
|
94 |
+
try {
|
95 |
+
$customer->authenticate($userName, $password);
|
96 |
+
} catch (Exception $e) {
|
97 |
+
switch ($e->getCode()) {
|
98 |
+
case Mage_Customer_Model_Customer::EXCEPTION_EMAIL_NOT_CONFIRMED:
|
99 |
+
$this->_fault('invalid_data', "Email is not confirmed.");
|
100 |
+
break;
|
101 |
+
case Mage_Customer_Model_Customer::EXCEPTION_INVALID_EMAIL_OR_PASSWORD:
|
102 |
+
$this->_fault('invalid_data', "Invalid email or password.");
|
103 |
+
break;
|
104 |
+
default:
|
105 |
+
$this->_fault('invalid_data', $e->getMessage());
|
106 |
+
break;
|
107 |
+
}
|
108 |
+
}
|
109 |
+
|
110 |
+
$customer = $customer->loadByEmail($userName);
|
111 |
+
return $this->info($customer->getId());
|
112 |
+
}
|
113 |
+
|
114 |
+
public function facebookLogin($facebookAccessToken, $facebookUserId)
|
115 |
+
{
|
116 |
+
//TODO : mcgoncu - fblogin
|
117 |
+
}
|
118 |
+
|
119 |
+
public function register($tCustomerData)
|
120 |
+
{
|
121 |
+
$storeId = Mage::getStoreConfig('tappz/general/store');
|
122 |
+
/** @var Mage_Core_Model_Store $store */
|
123 |
+
$store = Mage::getModel('core/store')->load($storeId);
|
124 |
+
|
125 |
+
$customerData = $this->_prepareCustomerData($tCustomerData);
|
126 |
+
try {
|
127 |
+
/* @var $customer Mage_Customer_Model_Customer */
|
128 |
+
$customer = Mage::getModel('customer/customer');
|
129 |
+
$customer->setData($customerData)
|
130 |
+
->setPassword($customerData['password'])
|
131 |
+
->setStore($store)
|
132 |
+
->save();
|
133 |
+
} catch (Mage_Core_Exception $e) {
|
134 |
+
$this->_fault('invalid_data', $e->getMessage());
|
135 |
+
}
|
136 |
+
|
137 |
+
return $this->info($customer->getId());
|
138 |
+
}
|
139 |
+
|
140 |
+
public function update($tCustomerData)
|
141 |
+
{
|
142 |
+
$genderAttributeCode = Mage::getStoreConfig('tappz/customer/gender');
|
143 |
+
$emailAttributeCode = Mage::getStoreConfig('tappz/customer/email');
|
144 |
+
$phoneAttributeCode = Mage::getStoreConfig('tappz/customer/phone');
|
145 |
+
$birthDateAttributeCode = Mage::getStoreConfig('tappz/customer/birthDate');
|
146 |
+
|
147 |
+
$customerData = $this->_prepareCustomerData($tCustomerData);
|
148 |
+
$customer = Mage::getModel('customer/customer')->load($customerData['entity_id']);
|
149 |
+
/* @var $customer Mage_Customer_Model_Customer */
|
150 |
+
|
151 |
+
if (!$customer->getId()) {
|
152 |
+
$this->_fault('not_exists');
|
153 |
+
}
|
154 |
+
|
155 |
+
try {
|
156 |
+
$customer->setData('firstname', $customerData['firstname']);
|
157 |
+
$customer->setData('lastname', $customerData['lastname']);
|
158 |
+
$customer->setData($genderAttributeCode, $customerData[$genderAttributeCode]);
|
159 |
+
$customer->setData($emailAttributeCode, $customerData[$emailAttributeCode]);
|
160 |
+
$customer->setData($phoneAttributeCode, $customerData[$phoneAttributeCode]);
|
161 |
+
$customer->setData($birthDateAttributeCode, $customerData[$birthDateAttributeCode]);
|
162 |
+
|
163 |
+
if (isset($customerData['isSubscribed']))
|
164 |
+
$customer->setIsSubscribed($customerData['isSubscribed'] === 'true' ? true : false);
|
165 |
+
|
166 |
+
$customer->save();
|
167 |
+
} catch (Mage_Core_Exception $e) {
|
168 |
+
$this->_fault('invalid_data', $e->getMessage());
|
169 |
+
}
|
170 |
+
|
171 |
+
return $this->info($customer->getId());
|
172 |
+
}
|
173 |
+
|
174 |
+
public function lostPassword($email)
|
175 |
+
{
|
176 |
+
if (!isset($email) || trim($email) === '') {
|
177 |
+
$this->_fault("invalid_data", "Please enter a valid email address.");
|
178 |
+
}
|
179 |
+
|
180 |
+
$storeId = Mage::getStoreConfig('tappz/general/store');
|
181 |
+
/** @var Mage_Core_Model_Store $store */
|
182 |
+
$store = Mage::getModel('core/store')->load($storeId);
|
183 |
+
|
184 |
+
$customer = $customer = Mage::getModel('customer/customer')
|
185 |
+
->setStoreId($storeId)
|
186 |
+
->setWebsiteId($store->getWebsiteId())
|
187 |
+
->loadByEmail($email);
|
188 |
+
|
189 |
+
if (!$customer) {
|
190 |
+
$this->_fault("invalid_data", "Customer is not found");
|
191 |
+
}
|
192 |
+
$customer = $customer->sendPasswordReminderEmail();
|
193 |
+
|
194 |
+
if (!$customer) {
|
195 |
+
$this->_fault("invalid_data", "Error occured while sending email");
|
196 |
+
}
|
197 |
+
|
198 |
+
return "Your password reminder email has been sent.";
|
199 |
+
}
|
200 |
+
|
201 |
+
public function getUserAgreement()
|
202 |
+
{
|
203 |
+
$agreement = Mage::getStoreConfig('tappz/customer/agreement');
|
204 |
+
return $agreement;
|
205 |
+
}
|
206 |
+
}
|
app/code/local/TmobLabs/Tappz/Model/Customer/Api/V2.php
ADDED
@@ -0,0 +1,6 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class TmobLabs_Tappz_Model_Customer_Api_V2 extends TmobLabs_Tappz_Model_Customer_Api
|
4 |
+
{
|
5 |
+
|
6 |
+
}
|
app/code/local/TmobLabs/Tappz/Model/Customer/Order/Api.php
ADDED
@@ -0,0 +1,145 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class TmobLabs_Tappz_Model_Customer_Order_Api extends Mage_Sales_Model_Order_Api
|
4 |
+
{
|
5 |
+
public function getList($customerId)
|
6 |
+
{
|
7 |
+
$customer = Mage::getModel('customer/customer')->load($customerId);
|
8 |
+
|
9 |
+
if (!$customer->getId()) {
|
10 |
+
$this->_fault('not_exists');
|
11 |
+
}
|
12 |
+
|
13 |
+
$filter = array('customer_id' => $customer->getId());
|
14 |
+
|
15 |
+
$orderCollection = $this->items($filter);
|
16 |
+
|
17 |
+
$result = array();
|
18 |
+
foreach ($orderCollection as $order) {
|
19 |
+
$result[] = $this->prepareOrder($order);
|
20 |
+
}
|
21 |
+
return $result;
|
22 |
+
}
|
23 |
+
|
24 |
+
public function info($orderId)
|
25 |
+
{
|
26 |
+
$order = Mage::getModel('sales/order');
|
27 |
+
|
28 |
+
/* @var $order Mage_Sales_Model_Order */
|
29 |
+
|
30 |
+
$order->loadByIncrementId($orderId);
|
31 |
+
|
32 |
+
if (!$order->getId()) {
|
33 |
+
$this->_fault('not_exists');
|
34 |
+
}
|
35 |
+
|
36 |
+
$result = $this->_getAttributes($order, 'order');
|
37 |
+
/** @var $addressApi TmobLabs_Tappz_Model_Customer_Address_Api */
|
38 |
+
$addressApi = Mage::getSingleton('tappz/Customer_Address_Api');
|
39 |
+
|
40 |
+
|
41 |
+
$result['items'] = array();
|
42 |
+
|
43 |
+
foreach ($order->getAllItems() as $item) {
|
44 |
+
if ($item->getGiftMessageId() > 0) {
|
45 |
+
$item->setGiftMessage(
|
46 |
+
Mage::getSingleton('giftmessage/message')->load($item->getGiftMessageId())->getMessage()
|
47 |
+
);
|
48 |
+
}
|
49 |
+
|
50 |
+
$result['items'][] = $this->_getAttributes($item, 'order_item');
|
51 |
+
}
|
52 |
+
|
53 |
+
$result['payment'] = $this->_getAttributes($order->getPayment(), 'order_payment');
|
54 |
+
|
55 |
+
$result['status_history'] = array();
|
56 |
+
|
57 |
+
foreach ($order->getAllStatusHistory() as $history) {
|
58 |
+
$result['status_history'][] = $this->_getAttributes($history, 'order_status_history');
|
59 |
+
}
|
60 |
+
|
61 |
+
$result['currency'] = $order->getOrderCurrency()->getCode();
|
62 |
+
$result['shipping_address'] = $addressApi->get($order->getShippingAddress()->getCustomerAddressId());
|
63 |
+
$result['billing_address'] = $addressApi->get($order->getBillingAddress()->getCustomerAddressId());
|
64 |
+
return $this->prepareOrder($result);
|
65 |
+
}
|
66 |
+
|
67 |
+
protected function prepareOrder($order)
|
68 |
+
{
|
69 |
+
$decimalDivider = Mage::getStoreConfig('tappz/general/decimalSeparator');
|
70 |
+
$thousandDivider = Mage::getStoreConfig('tappz/general/groupSeparator');
|
71 |
+
$lineAverageDeliveryDaysAttributeCode = Mage::getStoreConfig('tappz/basket/averagedeliverydaysattributecode');
|
72 |
+
$catalogApi = Mage::getSingleton('tappz/Catalog_Api');
|
73 |
+
|
74 |
+
$result = array();
|
75 |
+
$result['id'] = null;
|
76 |
+
$result['currency'] = null;
|
77 |
+
$result['orderDate'] = null;
|
78 |
+
$result['shippingStatus'] = null;
|
79 |
+
$result['paymentStatus'] = null;
|
80 |
+
$result['ipAddress'] = null;
|
81 |
+
$result['itemsPriceTotal'] = null;
|
82 |
+
$result['discountTotal'] = null;
|
83 |
+
$result['subTotal'] = null;
|
84 |
+
$result['shippingTotal'] = null;
|
85 |
+
$result['total'] = null;
|
86 |
+
$result['delivery'] = array();
|
87 |
+
$result['delivery']['shippingAddress'] = $order['shipping_address'] ? $order['shipping_address'] : null;
|
88 |
+
$result['delivery']['billingAddress'] = $order['billing_address'] ? $order['billing_address'] : null;
|
89 |
+
$result['delivery']['shippingMethod'] = array();
|
90 |
+
$result['delivery']['shippingMethod']['id'] = null;
|
91 |
+
$result['delivery']['shippingMethod']['displayName'] = null;
|
92 |
+
$result['delivery']['shippingMethod']['price'] = null;
|
93 |
+
$result['payment'] = array();
|
94 |
+
$result['payment']['accountNumber'] = null;
|
95 |
+
$result['payment']['bankCode'] = null;
|
96 |
+
$result['payment']['type'] = null;
|
97 |
+
$result['payment']['cashOnDelivery'] = null;
|
98 |
+
$result['payment']['creditCard'] = null;
|
99 |
+
$result['lines'] = array();
|
100 |
+
|
101 |
+
$result['id'] = $order['increment_id'];
|
102 |
+
$result['orderDate'] = date_format(date_create($order['created_at']), 'd/m/Y');
|
103 |
+
$result['shippingStatus'] = $order['status'];
|
104 |
+
$result['ipAddress'] = $order['remote_ip'];
|
105 |
+
$result['itemsPriceTotal'] = number_format($order['base_subtotal'], 2, $decimalDivider, $thousandDivider);
|
106 |
+
$result['discountTotal'] = number_format($order['discount_amount'], 2, $decimalDivider, $thousandDivider);
|
107 |
+
$result['subTotal'] = number_format($order['subtotal'], 2, $decimalDivider, $thousandDivider);
|
108 |
+
$result['shippingTotal'] = number_format($order['shipping_amount'], 2, $decimalDivider, $thousandDivider);
|
109 |
+
$result['total'] = number_format($order['grand_total'], 2, $decimalDivider, $thousandDivider);
|
110 |
+
$result['delivery']['shippingMethod']['id'] = $order['shipping_method'];
|
111 |
+
$result['delivery']['shippingMethod']['displayName'] = $order['shipping_description'];
|
112 |
+
$result['delivery']['shippingMethod']['price'] = $order['shipping_amount'];
|
113 |
+
$result['payment']['methodType'] = $order['payment']['method']; // TODO : methodu bul
|
114 |
+
$result['payment']['accountNumber'] = '**** **** **** ' . $order['payment']['cc_last4'];
|
115 |
+
$result['payment']['bankCode'] = $order['payment']['cc_type'];
|
116 |
+
$result['payment']['type'] = $order['payment']['method'];
|
117 |
+
|
118 |
+
if ($result['payment']['methodType'] == 'paypal_express') {
|
119 |
+
$result['payment']['methodType'] = 'PayPal';
|
120 |
+
} elseif ($result['payment']['methodType'] == 'checkmo') {
|
121 |
+
$result['payment']['methodType'] = 'MoneyTransfer';
|
122 |
+
} elseif ($result['payment']['methodType'] == 'cashondelivery') {
|
123 |
+
$result['payment']['methodType'] = 'CashOnDelivery';
|
124 |
+
} else {
|
125 |
+
$result['payment']['methodType'] = 'CreditCard';
|
126 |
+
}
|
127 |
+
|
128 |
+
foreach ($order['items'] as $item){
|
129 |
+
$line = array();
|
130 |
+
$line['productId'] = $item['product_id'];
|
131 |
+
$line['product'] = $catalogApi->getProduct($item['product_id']);
|
132 |
+
$line['quantity'] = $item['qty_ordered'];
|
133 |
+
$line['price'] = number_format($item['price_incl_tax'], 2, $decimalDivider, $thousandDivider);
|
134 |
+
$line['priceTotal'] = number_format($item['row_total_incl_tax'], 2, $decimalDivider, $thousandDivider);
|
135 |
+
$line['averageDeliveryDays'] = $item[$lineAverageDeliveryDaysAttributeCode];
|
136 |
+
$line['variants'] = array();// $item->getData('');
|
137 |
+
|
138 |
+
$result['lines'][] = $line;
|
139 |
+
}
|
140 |
+
|
141 |
+
$result['currency'] = $order['currency'];
|
142 |
+
|
143 |
+
return $result;
|
144 |
+
}
|
145 |
+
}
|
app/code/local/TmobLabs/Tappz/Model/Customer/Order/Api/V2.php
ADDED
@@ -0,0 +1,6 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class TmobLabs_Tappz_Model_Customer_Order_Api_V2 extends TmobLabs_Tappz_Model_Customer_Order_Api
|
4 |
+
{
|
5 |
+
|
6 |
+
}
|
app/code/local/TmobLabs/Tappz/Model/System/Config/Action.php
ADDED
@@ -0,0 +1,18 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class TmobLabs_Tappz_Model_System_Config_Action
|
4 |
+
{
|
5 |
+
/**
|
6 |
+
* get option array for system config
|
7 |
+
*
|
8 |
+
* @return array
|
9 |
+
*/
|
10 |
+
public function toOptionArray()
|
11 |
+
{
|
12 |
+
$options = array();
|
13 |
+
$options[] = array('value' => 'search', 'label' => 'Search a phrase');
|
14 |
+
$options[] = array('value' => 'product', 'label' => 'Go to a Product');
|
15 |
+
$options[] = array('value' => 'webview', 'label' => 'Open a Url');
|
16 |
+
return $options;
|
17 |
+
}
|
18 |
+
}
|
app/code/local/TmobLabs/Tappz/Model/System/Config/Address.php
ADDED
@@ -0,0 +1,25 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class TmobLabs_Tappz_Model_System_Config_Address
|
4 |
+
{
|
5 |
+
|
6 |
+
/**
|
7 |
+
* get option array for system config
|
8 |
+
*
|
9 |
+
* @return array
|
10 |
+
*/
|
11 |
+
public function toOptionArray()
|
12 |
+
{
|
13 |
+
$options = array();
|
14 |
+
$options[] = array('value' => ' ', 'label' => ' ');
|
15 |
+
|
16 |
+
$attributes = Mage::getModel('customer/address')->getAttributes();
|
17 |
+
foreach ($attributes as $attribute) {
|
18 |
+
if($attribute->getIsVisible()) {
|
19 |
+
$options[] = array('value' => $attribute->getAttributeCode(), 'label' => $attribute->getFrontendLabel());
|
20 |
+
}
|
21 |
+
}
|
22 |
+
|
23 |
+
return $options;
|
24 |
+
}
|
25 |
+
}
|
app/code/local/TmobLabs/Tappz/Model/System/Config/Category.php
ADDED
@@ -0,0 +1,51 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class TmobLabs_Tappz_Model_System_Config_Category
|
4 |
+
{
|
5 |
+
protected $categoryList;
|
6 |
+
|
7 |
+
/**
|
8 |
+
* get option array for system config
|
9 |
+
*
|
10 |
+
* @return array
|
11 |
+
*/
|
12 |
+
public function toOptionArray()
|
13 |
+
{
|
14 |
+
$this->categoryList = array();
|
15 |
+
|
16 |
+
$storeId = (int) Mage::getStoreConfig('tappz/general/store');
|
17 |
+
if($storeId <= 0){
|
18 |
+
$storeId = 1;
|
19 |
+
}
|
20 |
+
|
21 |
+
/** @var Mage_Core_Model_Store $store */
|
22 |
+
$store = Mage::getModel('core/store')->load($storeId);
|
23 |
+
|
24 |
+
$list = Mage::getModel('catalog/category')
|
25 |
+
->load($store->getRootCategoryId())
|
26 |
+
->getChildrenCategories();
|
27 |
+
|
28 |
+
foreach ($list as $cat) {
|
29 |
+
/** @var Mage_Catalog_Model_Category $category */
|
30 |
+
$category = Mage::getModel('catalog/category')->load($cat->getId());
|
31 |
+
$this->_getChildrenText($category, '');
|
32 |
+
}
|
33 |
+
|
34 |
+
return $this->categoryList;
|
35 |
+
}
|
36 |
+
|
37 |
+
/**
|
38 |
+
* @param $category Mage_Catalog_Model_Category
|
39 |
+
* @param $text string
|
40 |
+
* @return array $array
|
41 |
+
*/
|
42 |
+
protected function _getChildrenText($category, $text)
|
43 |
+
{
|
44 |
+
$text = $text . '/' . $category->getName();
|
45 |
+
$text = trim($text, '/');
|
46 |
+
$this->categoryList[] = array('value' => $category->getId(), 'label' => $text);
|
47 |
+
foreach ($category->getChildrenCategories() as $cat) {
|
48 |
+
$this->_getChildrenText($cat, $text);
|
49 |
+
}
|
50 |
+
}
|
51 |
+
}
|
app/code/local/TmobLabs/Tappz/Model/System/Config/Customer.php
ADDED
@@ -0,0 +1,25 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class TmobLabs_Tappz_Model_System_Config_Customer
|
4 |
+
{
|
5 |
+
|
6 |
+
/**
|
7 |
+
* get option array for system config
|
8 |
+
*
|
9 |
+
* @return array
|
10 |
+
*/
|
11 |
+
public function toOptionArray()
|
12 |
+
{
|
13 |
+
$options = array();
|
14 |
+
$options[] = array('value' => ' ', 'label' => ' ');
|
15 |
+
|
16 |
+
$attributes = Mage::getModel('customer/customer')->getAttributes();
|
17 |
+
foreach ($attributes as $attribute) {
|
18 |
+
if ($attribute->getIsVisible()) {
|
19 |
+
$options[] = array('value' => $attribute->getAttributeCode(), 'label' => $attribute->getFrontendLabel());
|
20 |
+
}
|
21 |
+
}
|
22 |
+
|
23 |
+
return $options;
|
24 |
+
}
|
25 |
+
}
|
app/code/local/TmobLabs/Tappz/Model/System/Config/Divider.php
ADDED
@@ -0,0 +1,17 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class TmobLabs_Tappz_Model_System_Config_Divider
|
4 |
+
{
|
5 |
+
/**
|
6 |
+
* get option array for system config
|
7 |
+
*
|
8 |
+
* @return array
|
9 |
+
*/
|
10 |
+
public function toOptionArray()
|
11 |
+
{
|
12 |
+
$options = array();
|
13 |
+
$options[] = array('value' => '.', 'label' => '. (Dot)');
|
14 |
+
$options[] = array('value' => ',', 'label' => ', (Comma)');
|
15 |
+
return $options;
|
16 |
+
}
|
17 |
+
}
|
app/code/local/TmobLabs/Tappz/Model/System/Config/Enabled.php
ADDED
@@ -0,0 +1,17 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class TmobLabs_Tappz_Model_System_Config_Enabled
|
4 |
+
{
|
5 |
+
/**
|
6 |
+
* get option array for system config
|
7 |
+
*
|
8 |
+
* @return array
|
9 |
+
*/
|
10 |
+
public function toOptionArray()
|
11 |
+
{
|
12 |
+
$options = array();
|
13 |
+
$options[] = array('value' => true, 'label' => 'True ');
|
14 |
+
$options[] = array('value' => false, 'label' => 'False ');
|
15 |
+
return $options;
|
16 |
+
}
|
17 |
+
}
|
app/code/local/TmobLabs/Tappz/Model/System/Config/Payment.php
ADDED
@@ -0,0 +1,27 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class TmobLabs_Tappz_Model_System_Config_Payment
|
4 |
+
{
|
5 |
+
/**
|
6 |
+
* get option array for system config
|
7 |
+
*
|
8 |
+
* @return array
|
9 |
+
*/
|
10 |
+
public function toOptionArray()
|
11 |
+
{
|
12 |
+
$options = array();
|
13 |
+
$collection = Mage::helper('payment')->getStoreMethods();
|
14 |
+
|
15 |
+
foreach ($collection as $method) {
|
16 |
+
/** @var $method Mage_Payment_Model_Method_Abstract */
|
17 |
+
array_push(
|
18 |
+
$options,
|
19 |
+
array(
|
20 |
+
'value' => $method->getCode(),
|
21 |
+
'label' => $method->getTitle()
|
22 |
+
)
|
23 |
+
);
|
24 |
+
}
|
25 |
+
return $options;
|
26 |
+
}
|
27 |
+
}
|
app/code/local/TmobLabs/Tappz/Model/System/Config/Product/Attribute.php
ADDED
@@ -0,0 +1,30 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class TmobLabs_Tappz_Model_System_Config_Product_Attribute
|
4 |
+
{
|
5 |
+
/**
|
6 |
+
* get option array for system config
|
7 |
+
*
|
8 |
+
* @return array
|
9 |
+
*/
|
10 |
+
public function toOptionArray()
|
11 |
+
{
|
12 |
+
$options = array();
|
13 |
+
$options[] = array('value' => ' ', 'label' => ' ');
|
14 |
+
/** @var Mage_Catalog_Model_Product $product */
|
15 |
+
$product = Mage::getModel('catalog/product');
|
16 |
+
$attributes = $product->getAttributes();
|
17 |
+
|
18 |
+
/** @var Mage_Catalog_Model_Resource_Eav_Attribute $attribute */
|
19 |
+
foreach ($attributes as $attribute) {
|
20 |
+
foreach ($attribute->getEntityType()->getAttributeCodes() as $code) {
|
21 |
+
/** @var Mage_Eav_Model_Entity_Attribute $attributeModel */
|
22 |
+
$attributeModel = Mage::getModel('eav/entity_attribute')->loadByCode($attribute->getEntityType(), $code);
|
23 |
+
$options[] = array('value' => $code, 'label' => $attributeModel->getFrontendLabel());
|
24 |
+
}
|
25 |
+
break;
|
26 |
+
}
|
27 |
+
|
28 |
+
return $options;
|
29 |
+
}
|
30 |
+
}
|
app/code/local/TmobLabs/Tappz/Model/System/Config/Store.php
ADDED
@@ -0,0 +1,32 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class TmobLabs_Tappz_Model_System_Config_Store
|
4 |
+
{
|
5 |
+
/**
|
6 |
+
* get option array for system config
|
7 |
+
*
|
8 |
+
* @return array
|
9 |
+
*/
|
10 |
+
public function toOptionArray()
|
11 |
+
{
|
12 |
+
$options = array();
|
13 |
+
|
14 |
+
$collection = Mage::getModel('core/store_group')->getCollection();
|
15 |
+
|
16 |
+
foreach ($collection as $group) {
|
17 |
+
/** @var Mage_Core_Model_Store_Group $group */
|
18 |
+
foreach ($group->getStores() as $store) {
|
19 |
+
/** @var Mage_Core_Model_Store $store */
|
20 |
+
array_push(
|
21 |
+
$options,
|
22 |
+
array(
|
23 |
+
'value' => $store->getId(),
|
24 |
+
'label' => $group->getName() . " : " . $store->getName()
|
25 |
+
)
|
26 |
+
);
|
27 |
+
}
|
28 |
+
}
|
29 |
+
|
30 |
+
return $options;
|
31 |
+
}
|
32 |
+
}
|
app/code/local/TmobLabs/Tappz/etc/adminhtml.xml
ADDED
@@ -0,0 +1,26 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0"?>
|
2 |
+
|
3 |
+
<config>
|
4 |
+
<acl>
|
5 |
+
<resources>
|
6 |
+
<all>
|
7 |
+
<title>Allow Everything</title>
|
8 |
+
</all>
|
9 |
+
<admin>
|
10 |
+
<children>
|
11 |
+
<system>
|
12 |
+
<children>
|
13 |
+
<config>
|
14 |
+
<children>
|
15 |
+
<tappz>
|
16 |
+
<title>t-appz</title>
|
17 |
+
</tappz>
|
18 |
+
</children>
|
19 |
+
</config>
|
20 |
+
</children>
|
21 |
+
</system>
|
22 |
+
</children>
|
23 |
+
</admin>
|
24 |
+
</resources>
|
25 |
+
</acl>
|
26 |
+
</config>
|
app/code/local/TmobLabs/Tappz/etc/api.xml
ADDED
@@ -0,0 +1,276 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0" encoding="UTF-8"?>
|
2 |
+
<config>
|
3 |
+
<api>
|
4 |
+
<resources>
|
5 |
+
<tappz_basket translate="title" module="tappz">
|
6 |
+
<title>Tappz Adapter Basket API</title>
|
7 |
+
<model>tappz/basket_api</model>
|
8 |
+
<methods>
|
9 |
+
<get translate="title" module="tappz">
|
10 |
+
<method>get</method>
|
11 |
+
</get>
|
12 |
+
<merge translate="title" module="tappz">
|
13 |
+
<method>merge</method>
|
14 |
+
</merge>
|
15 |
+
<updateItems translate="title" module="tappz">
|
16 |
+
<method>updateItems</method>
|
17 |
+
</updateItems>
|
18 |
+
<setAddress translate="title" module="tappz">
|
19 |
+
<method>setAddress</method>
|
20 |
+
</setAddress>
|
21 |
+
<setGiftWrapping translate="title" module="tappz">
|
22 |
+
<method>setGiftWrapping</method>
|
23 |
+
</setGiftWrapping>
|
24 |
+
<useDiscount translate="title" module="tappz">
|
25 |
+
<method>useDiscount</method>
|
26 |
+
</useDiscount>
|
27 |
+
<deleteDiscount translate="title" module="tappz">
|
28 |
+
<method>deleteDiscount</method>
|
29 |
+
</deleteDiscount>
|
30 |
+
<useGiftCheques translate="title" module="tappz">
|
31 |
+
<method>useGiftCheques</method>
|
32 |
+
</useGiftCheques>
|
33 |
+
<deleteGiftCheques translate="title" module="tappz">
|
34 |
+
<method>deleteGiftCheques</method>
|
35 |
+
</deleteGiftCheques>
|
36 |
+
<useUserPoints translate="title" module="tappz">
|
37 |
+
<method>useUserPoints</method>
|
38 |
+
</useUserPoints>
|
39 |
+
<selectPaymentMethod translate="title" module="tappz">
|
40 |
+
<method>selectPaymentMethod</method>
|
41 |
+
</selectPaymentMethod>
|
42 |
+
<getContract translate="title" module="tappz">
|
43 |
+
<method>getContract</method>
|
44 |
+
</getContract>
|
45 |
+
<purchaseCreditCard translate="title" module="tappz">
|
46 |
+
<method>purchaseCreditCard</method>
|
47 |
+
</purchaseCreditCard>
|
48 |
+
<purchaseMoneyOrder translate="title" module="tappz">
|
49 |
+
<method>purchaseMoneyOrder</method>
|
50 |
+
</purchaseMoneyOrder>
|
51 |
+
<purchaseCashOnDelivery translate="title" module="tappz">
|
52 |
+
<method>purchaseCashOnDelivery</method>
|
53 |
+
</purchaseCashOnDelivery>
|
54 |
+
<purchaseWithPayPal translate="title" module="tappz">
|
55 |
+
<method>purchaseWithPayPal</method>
|
56 |
+
</purchaseWithPayPal>
|
57 |
+
<purchaseWithApplePay translate="title" module="tappz">
|
58 |
+
<method>purchaseWithApplePay</method>
|
59 |
+
</purchaseWithApplePay>
|
60 |
+
|
61 |
+
<getTaksitSecenekleri translate="title" module="tappz">
|
62 |
+
<method>getTaksitSecenekleri</method>
|
63 |
+
</getTaksitSecenekleri>
|
64 |
+
<getSupplyDate translate="title" module="tappz">
|
65 |
+
<method>getSupplyDate</method>
|
66 |
+
</getSupplyDate>
|
67 |
+
</methods>
|
68 |
+
<faults module="tappz">
|
69 |
+
<project_not_exists>
|
70 |
+
<code>101</code>
|
71 |
+
<message>Requested project does not exist.</message>
|
72 |
+
</project_not_exists>
|
73 |
+
<invalid_data>
|
74 |
+
<code>102</code>
|
75 |
+
<message>Provided data is invalid.</message>
|
76 |
+
</invalid_data>
|
77 |
+
<save_error>
|
78 |
+
<code>103</code>
|
79 |
+
<message>Error while saving project. Details in error message.</message>
|
80 |
+
</save_error>
|
81 |
+
<remove_error>
|
82 |
+
<code>104</code>
|
83 |
+
<message>Error while removing project. Details in error message.</message>
|
84 |
+
</remove_error>
|
85 |
+
</faults>
|
86 |
+
</tappz_basket>
|
87 |
+
<tappz_catalog translate="title" module="tappz">
|
88 |
+
<title>Tappz Adapter Catalog API</title>
|
89 |
+
<model>tappz/catalog_api</model>
|
90 |
+
<methods>
|
91 |
+
<getFrontPage translate="title" module="tappz">
|
92 |
+
<title>Gets front page banner and product lists</title>
|
93 |
+
</getFrontPage>
|
94 |
+
<getCategories translate="title" module="tappz">
|
95 |
+
<title>Get root category list</title>
|
96 |
+
</getCategories>
|
97 |
+
<getCategory translate="title" module="tappz">
|
98 |
+
<title>Get a category with children</title>
|
99 |
+
</getCategory>
|
100 |
+
<getProductList translate="title" module="tappz">
|
101 |
+
<title>Get product list</title>
|
102 |
+
</getProductList>
|
103 |
+
<getProduct translate="title" module="tappz">
|
104 |
+
<title>Get product details</title>
|
105 |
+
</getProduct>
|
106 |
+
<getRelatedProducts translate="title" module="tappz">
|
107 |
+
<title>Get related products</title>
|
108 |
+
</getRelatedProducts>
|
109 |
+
<getChildProductId translate="title" module="tappz">
|
110 |
+
<title>Get child product id of a configurable product</title>
|
111 |
+
</getChildProductId>
|
112 |
+
</methods>
|
113 |
+
<faults module="tmoblabs_tappz">
|
114 |
+
<project_not_exists>
|
115 |
+
<code>101</code>
|
116 |
+
<message>Requested project does not exist.</message>
|
117 |
+
</project_not_exists>
|
118 |
+
<invalid_data>
|
119 |
+
<code>102</code>
|
120 |
+
<message>Provided data is invalid.</message>
|
121 |
+
</invalid_data>
|
122 |
+
<save_error>
|
123 |
+
<code>103</code>
|
124 |
+
<message>Error while saving project. Details in error message.</message>
|
125 |
+
</save_error>
|
126 |
+
<remove_error>
|
127 |
+
<code>104</code>
|
128 |
+
<message>Error while removing project. Details in error message.</message>
|
129 |
+
</remove_error>
|
130 |
+
</faults>
|
131 |
+
</tappz_catalog>
|
132 |
+
<tappz_customer>
|
133 |
+
<title>Tappz Adapter Customer API</title>
|
134 |
+
<model>tappz/customer_api</model>
|
135 |
+
<methods>
|
136 |
+
<info translate="title" module="tappz">
|
137 |
+
<title>Retrieve Customer</title>
|
138 |
+
</info>
|
139 |
+
<login translate="title" module="tappz">
|
140 |
+
<title>Login a Customer</title>
|
141 |
+
</login>
|
142 |
+
<facebookLogin translate="title" module="tappz">
|
143 |
+
<title>Login with Facebook</title>
|
144 |
+
</facebookLogin>
|
145 |
+
<register translate="title" module="tappz">
|
146 |
+
<title>Register a Customer</title>
|
147 |
+
</register>
|
148 |
+
<update translate="title" module="tappz">
|
149 |
+
<title>Update Customer Info</title>
|
150 |
+
</update>
|
151 |
+
<lostPassword translate="title" module="tappz">
|
152 |
+
<title>Send Password Reset E-mail</title>
|
153 |
+
</lostPassword>
|
154 |
+
<getUserAgreement translate="title" module="tappz">
|
155 |
+
<title>Retrieve User Agreement</title>
|
156 |
+
</getUserAgreement>
|
157 |
+
</methods>
|
158 |
+
<faults module="tappz">
|
159 |
+
<project_not_exists>
|
160 |
+
<code>101</code>
|
161 |
+
<message>Requested project does not exist.</message>
|
162 |
+
</project_not_exists>
|
163 |
+
<invalid_data>
|
164 |
+
<code>102</code>
|
165 |
+
<message>Provided data is invalid.</message>
|
166 |
+
</invalid_data>
|
167 |
+
<save_error>
|
168 |
+
<code>103</code>
|
169 |
+
<message>Error while saving project. Details in error message.</message>
|
170 |
+
</save_error>
|
171 |
+
<remove_error>
|
172 |
+
<code>104</code>
|
173 |
+
<message>Error while removing project. Details in error message.</message>
|
174 |
+
</remove_error>
|
175 |
+
</faults>
|
176 |
+
</tappz_customer>
|
177 |
+
<tappz_customer_address>
|
178 |
+
<title>Tappz Adapter Customer Address API</title>
|
179 |
+
<model>tappz/customer_address_api</model>
|
180 |
+
<methods>
|
181 |
+
<getList translate="title" module="tappz">
|
182 |
+
<title>Get Customer Address List</title>
|
183 |
+
</getList>
|
184 |
+
<create translate="title" module="tappz">
|
185 |
+
<title>Create Customer Address</title>
|
186 |
+
</create>
|
187 |
+
<update translate="title" module="tappz">
|
188 |
+
<title>Update Customer Address</title>
|
189 |
+
</update>
|
190 |
+
<delete translate="title" module="tappz">
|
191 |
+
<title>Delete Customer Address</title>
|
192 |
+
</delete>
|
193 |
+
<countryList translate="title" module="tappz">
|
194 |
+
<title>Get Country List</title>
|
195 |
+
</countryList>
|
196 |
+
<stateList translate="title" module="tappz">
|
197 |
+
<title>Get State List</title>
|
198 |
+
</stateList>
|
199 |
+
<cityList translate="title" module="tappz">
|
200 |
+
<title>Get City List</title>
|
201 |
+
</cityList>
|
202 |
+
<districtList translate="title" module="tappz">
|
203 |
+
<title>Get District List</title>
|
204 |
+
</districtList>
|
205 |
+
<townList translate="title" module="tappz">
|
206 |
+
<title>Get Town List</title>
|
207 |
+
</townList>
|
208 |
+
</methods>
|
209 |
+
<faults module="tappz">
|
210 |
+
<project_not_exists>
|
211 |
+
<code>101</code>
|
212 |
+
<message>Requested project does not exist.</message>
|
213 |
+
</project_not_exists>
|
214 |
+
<invalid_data>
|
215 |
+
<code>102</code>
|
216 |
+
<message>Provided data is invalid.</message>
|
217 |
+
</invalid_data>
|
218 |
+
<save_error>
|
219 |
+
<code>103</code>
|
220 |
+
<message>Error while saving project. Details in error message.</message>
|
221 |
+
</save_error>
|
222 |
+
<remove_error>
|
223 |
+
<code>104</code>
|
224 |
+
<message>Error while removing project. Details in error message.</message>
|
225 |
+
</remove_error>
|
226 |
+
</faults>
|
227 |
+
</tappz_customer_address>
|
228 |
+
<tappz_customer_order>
|
229 |
+
<title>Tappz Adapter Customer Order API</title>
|
230 |
+
<model>tappz/customer_order_api</model>
|
231 |
+
<methods>
|
232 |
+
<getList translate="title" module="tappz">
|
233 |
+
<title>Get Customer Order List</title>
|
234 |
+
</getList>
|
235 |
+
<info translate="title" module="tappz">
|
236 |
+
<title>Get Order Info</title>
|
237 |
+
</info>
|
238 |
+
</methods>
|
239 |
+
<faults module="tappz">
|
240 |
+
<project_not_exists>
|
241 |
+
<code>101</code>
|
242 |
+
<message>Requested project does not exist.</message>
|
243 |
+
</project_not_exists>
|
244 |
+
<invalid_data>
|
245 |
+
<code>102</code>
|
246 |
+
<message>Provided data is invalid.</message>
|
247 |
+
</invalid_data>
|
248 |
+
<save_error>
|
249 |
+
<code>103</code>
|
250 |
+
<message>Error while saving project. Details in error message.</message>
|
251 |
+
</save_error>
|
252 |
+
<remove_error>
|
253 |
+
<code>104</code>
|
254 |
+
<message>Error while removing project. Details in error message.</message>
|
255 |
+
</remove_error>
|
256 |
+
</faults>
|
257 |
+
</tappz_customer_order>
|
258 |
+
</resources>
|
259 |
+
<resources_alias>
|
260 |
+
<basket>tappz_basket</basket>
|
261 |
+
<catalog>tappz_catalog</catalog>
|
262 |
+
<customer>tappz_customer</customer>
|
263 |
+
<customer_address>tappz_customer_address</customer_address>
|
264 |
+
<customer_order>tappz_customer_order</customer_order>
|
265 |
+
</resources_alias>
|
266 |
+
<v2>
|
267 |
+
<resources_function_prefix>
|
268 |
+
<basket>tappzBasket</basket>
|
269 |
+
<catalog>tappzCatalog</catalog>
|
270 |
+
<customer>tappzCustomer</customer>
|
271 |
+
<customer_address>tappzCustomerAddress</customer_address>
|
272 |
+
<customer_order>tappzCustomerOrder</customer_order>
|
273 |
+
</resources_function_prefix>
|
274 |
+
</v2>
|
275 |
+
</api>
|
276 |
+
</config>
|
app/code/local/TmobLabs/Tappz/etc/config.xml
ADDED
@@ -0,0 +1,25 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0" ?>
|
2 |
+
<config>
|
3 |
+
<modules>
|
4 |
+
<TmobLabs_Tappz>
|
5 |
+
<version>1.0.8</version>
|
6 |
+
</TmobLabs_Tappz>
|
7 |
+
</modules>
|
8 |
+
<global>
|
9 |
+
<helpers>
|
10 |
+
<tappz>
|
11 |
+
<class>TmobLabs_Tappz_Helper</class>
|
12 |
+
</tappz>
|
13 |
+
</helpers>
|
14 |
+
<blocks>
|
15 |
+
<tappz>
|
16 |
+
<class>TmobLabs_Tappz_Block</class>
|
17 |
+
</tappz>
|
18 |
+
</blocks>
|
19 |
+
<models>
|
20 |
+
<tappz>
|
21 |
+
<class>TmobLabs_Tappz_Model</class>
|
22 |
+
</tappz>
|
23 |
+
</models>
|
24 |
+
</global>
|
25 |
+
</config>
|
app/code/local/TmobLabs/Tappz/etc/system.xml
ADDED
@@ -0,0 +1,644 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0"?>
|
2 |
+
|
3 |
+
<config>
|
4 |
+
<tabs>
|
5 |
+
<tappz translate="label" module="tappz">
|
6 |
+
<label>t-Appz</label>
|
7 |
+
<sort_order>1</sort_order>
|
8 |
+
</tappz>
|
9 |
+
</tabs>
|
10 |
+
<sections>
|
11 |
+
<tappz translate="label" module="tappz">
|
12 |
+
<label>Configuration</label>
|
13 |
+
<class>tappz-info</class>
|
14 |
+
<tab>tappz</tab>
|
15 |
+
<sort_order>10</sort_order>
|
16 |
+
<show_in_default>1</show_in_default>
|
17 |
+
<show_in_website>1</show_in_website>
|
18 |
+
<show_in_store>1</show_in_store>
|
19 |
+
<groups>
|
20 |
+
<info>
|
21 |
+
<frontend_model>tappz/info</frontend_model>
|
22 |
+
<sort_order>10</sort_order>
|
23 |
+
<show_in_default>1</show_in_default>
|
24 |
+
<show_in_website>1</show_in_website>
|
25 |
+
<show_in_store>1</show_in_store>
|
26 |
+
</info>
|
27 |
+
<general translate="label">
|
28 |
+
<label>General</label>
|
29 |
+
<sort_order>15</sort_order>
|
30 |
+
<show_in_default>1</show_in_default>
|
31 |
+
<show_in_website>1</show_in_website>
|
32 |
+
<show_in_store>1</show_in_store>
|
33 |
+
<fields>
|
34 |
+
<store translate="label">
|
35 |
+
<label>Store</label>
|
36 |
+
<tooltip>Choose your store for tappz.</tooltip>
|
37 |
+
<!--<comment>lsdfdslafkhalsdkjfl</comment>-->
|
38 |
+
<frontend_type>select</frontend_type>
|
39 |
+
<source_model>tappz/system_config_store</source_model>
|
40 |
+
<sort_order>10</sort_order>
|
41 |
+
<show_in_default>1</show_in_default>
|
42 |
+
<show_in_website>1</show_in_website>
|
43 |
+
<show_in_store>1</show_in_store>
|
44 |
+
</store>
|
45 |
+
<groupSeparator translate="label">
|
46 |
+
<label>Price Group Separator</label>
|
47 |
+
<tooltip>Choose group separator for prices.</tooltip>
|
48 |
+
<frontend_type>select</frontend_type>
|
49 |
+
<source_model>tappz/system_config_divider</source_model>
|
50 |
+
<sort_order>30</sort_order>
|
51 |
+
<show_in_default>1</show_in_default>
|
52 |
+
<show_in_website>1</show_in_website>
|
53 |
+
<show_in_store>1</show_in_store>
|
54 |
+
</groupSeparator>
|
55 |
+
<decimalSeparator translate="label">
|
56 |
+
<label>Price Decimal Separator</label>
|
57 |
+
<tooltip>Choose decimal separator for prices.</tooltip>
|
58 |
+
<frontend_type>select</frontend_type>
|
59 |
+
<source_model>tappz/system_config_divider</source_model>
|
60 |
+
<sort_order>20</sort_order>
|
61 |
+
<show_in_default>1</show_in_default>
|
62 |
+
<show_in_website>1</show_in_website>
|
63 |
+
<show_in_store>1</show_in_store>
|
64 |
+
</decimalSeparator>
|
65 |
+
</fields>
|
66 |
+
</general>
|
67 |
+
<catalog translate="label">
|
68 |
+
<label>Catalog</label>
|
69 |
+
<sort_order>20</sort_order>
|
70 |
+
<show_in_default>1</show_in_default>
|
71 |
+
<show_in_website>1</show_in_website>
|
72 |
+
<show_in_store>1</show_in_store>
|
73 |
+
<fields>
|
74 |
+
<bannerImage1 translate="label tooltip">
|
75 |
+
<label>Banner 1 - Image</label>
|
76 |
+
<tooltip>Choose an image for the first banner.</tooltip>
|
77 |
+
<frontend_type>image</frontend_type>
|
78 |
+
<backend_model>adminhtml/system_config_backend_image</backend_model>
|
79 |
+
<upload_dir config="system/filesystem/media" scope_info="1">tappz</upload_dir>
|
80 |
+
<base_url type="media" scope_info="1">tappz</base_url>
|
81 |
+
<sort_order>10</sort_order>
|
82 |
+
<show_in_default>1</show_in_default>
|
83 |
+
<show_in_website>1</show_in_website>
|
84 |
+
<show_in_store>1</show_in_store>
|
85 |
+
</bannerImage1>
|
86 |
+
<bannerActionType1>
|
87 |
+
<label>Banner 1 - Action Type</label>
|
88 |
+
<tooltip>Choose an action type for the first banner.</tooltip>
|
89 |
+
<frontend_type>select</frontend_type>
|
90 |
+
<source_model>tappz/system_config_action</source_model>
|
91 |
+
<sort_order>11</sort_order>
|
92 |
+
<show_in_default>1</show_in_default>
|
93 |
+
<show_in_website>1</show_in_website>
|
94 |
+
<show_in_store>1</show_in_store>
|
95 |
+
</bannerActionType1>
|
96 |
+
<bannerActionValue1>
|
97 |
+
<label>Banner 1 - Action Value</label>
|
98 |
+
<tooltip>Choose an action value for the first banner.</tooltip>
|
99 |
+
<frontend_type>text</frontend_type>
|
100 |
+
<sort_order>12</sort_order>
|
101 |
+
<show_in_default>1</show_in_default>
|
102 |
+
<show_in_website>1</show_in_website>
|
103 |
+
<show_in_store>1</show_in_store>
|
104 |
+
<validate>validate-length
|
105 |
+
minimum-length-1
|
106 |
+
</validate>
|
107 |
+
</bannerActionValue1>
|
108 |
+
|
109 |
+
<bannerImage2 translate="label tooltip">
|
110 |
+
<label>Banner 2 - Image</label>
|
111 |
+
<tooltip>Choose an image for the second banner.</tooltip>
|
112 |
+
<frontend_type>image</frontend_type>
|
113 |
+
<backend_model>adminhtml/system_config_backend_image</backend_model>
|
114 |
+
<upload_dir config="system/filesystem/media" scope_info="1">tappz</upload_dir>
|
115 |
+
<base_url type="media" scope_info="1">tappz</base_url>
|
116 |
+
<sort_order>20</sort_order>
|
117 |
+
<show_in_default>1</show_in_default>
|
118 |
+
<show_in_website>1</show_in_website>
|
119 |
+
<show_in_store>1</show_in_store>
|
120 |
+
</bannerImage2>
|
121 |
+
<bannerActionType2>
|
122 |
+
<label>Banner 2 - Action Type</label>
|
123 |
+
<tooltip>Choose an action type for the second banner.</tooltip>
|
124 |
+
<frontend_type>select</frontend_type>
|
125 |
+
<source_model>tappz/system_config_action</source_model>
|
126 |
+
<sort_order>21</sort_order>
|
127 |
+
<show_in_default>1</show_in_default>
|
128 |
+
<show_in_website>1</show_in_website>
|
129 |
+
<show_in_store>1</show_in_store>
|
130 |
+
</bannerActionType2>
|
131 |
+
<bannerActionValue2>
|
132 |
+
<label>Banner 2 - Action Value</label>
|
133 |
+
<tooltip>Choose an action value for the second banner.</tooltip>
|
134 |
+
<frontend_type>text</frontend_type>
|
135 |
+
<sort_order>22</sort_order>
|
136 |
+
<show_in_default>1</show_in_default>
|
137 |
+
<show_in_website>1</show_in_website>
|
138 |
+
<show_in_store>1</show_in_store>
|
139 |
+
<validate>validate-length
|
140 |
+
minimum-length-1
|
141 |
+
</validate>
|
142 |
+
</bannerActionValue2>
|
143 |
+
|
144 |
+
<bannerImage3 translate="label tooltip">
|
145 |
+
<label>Banner 3 - Image</label>
|
146 |
+
<tooltip>Choose an image for the third banner.</tooltip>
|
147 |
+
<frontend_type>image</frontend_type>
|
148 |
+
<backend_model>adminhtml/system_config_backend_image</backend_model>
|
149 |
+
<upload_dir config="system/filesystem/media" scope_info="1">tappz</upload_dir>
|
150 |
+
<base_url type="media" scope_info="1">tappz</base_url>
|
151 |
+
<sort_order>30</sort_order>
|
152 |
+
<show_in_default>1</show_in_default>
|
153 |
+
<show_in_website>1</show_in_website>
|
154 |
+
<show_in_store>1</show_in_store>
|
155 |
+
</bannerImage3>
|
156 |
+
<bannerActionType3>
|
157 |
+
<label>Banner 3 - Action Type</label>
|
158 |
+
<tooltip>Choose an action type for the third banner.</tooltip>
|
159 |
+
<frontend_type>select</frontend_type>
|
160 |
+
<source_model>tappz/system_config_action</source_model>
|
161 |
+
<sort_order>31</sort_order>
|
162 |
+
<show_in_default>1</show_in_default>
|
163 |
+
<show_in_website>1</show_in_website>
|
164 |
+
<show_in_store>1</show_in_store>
|
165 |
+
</bannerActionType3>
|
166 |
+
<bannerActionValue3>
|
167 |
+
<label>Banner 3 - Action Value</label>
|
168 |
+
<tooltip>Choose an action value for the third banner.</tooltip>
|
169 |
+
<frontend_type>text</frontend_type>
|
170 |
+
<sort_order>32</sort_order>
|
171 |
+
<show_in_default>1</show_in_default>
|
172 |
+
<show_in_website>1</show_in_website>
|
173 |
+
<show_in_store>1</show_in_store>
|
174 |
+
<validate>validate-length
|
175 |
+
minimum-length-1
|
176 |
+
</validate>
|
177 |
+
</bannerActionValue3>
|
178 |
+
|
179 |
+
<bannerImage4 translate="label tooltip">
|
180 |
+
<label>Banner 4 - Image</label>
|
181 |
+
<tooltip>Choose an image for the fourth banner.</tooltip>
|
182 |
+
<frontend_type>image</frontend_type>
|
183 |
+
<backend_model>adminhtml/system_config_backend_image</backend_model>
|
184 |
+
<upload_dir config="system/filesystem/media" scope_info="1">tappz</upload_dir>
|
185 |
+
<base_url type="media" scope_info="1">tappz</base_url>
|
186 |
+
<sort_order>40</sort_order>
|
187 |
+
<show_in_default>1</show_in_default>
|
188 |
+
<show_in_website>1</show_in_website>
|
189 |
+
<show_in_store>1</show_in_store>
|
190 |
+
</bannerImage4>
|
191 |
+
<bannerActionType4>
|
192 |
+
<label>Banner 4 - Action Type</label>
|
193 |
+
<tooltip>Choose an action type for the fourth banner.</tooltip>
|
194 |
+
<frontend_type>select</frontend_type>
|
195 |
+
<source_model>tappz/system_config_action</source_model>
|
196 |
+
<sort_order>41</sort_order>
|
197 |
+
<show_in_default>1</show_in_default>
|
198 |
+
<show_in_website>1</show_in_website>
|
199 |
+
<show_in_store>1</show_in_store>
|
200 |
+
</bannerActionType4>
|
201 |
+
<bannerActionValue4>
|
202 |
+
<label>Banner 4 - Action Value</label>
|
203 |
+
<tooltip>Choose an action value for the fourth banner.</tooltip>
|
204 |
+
<frontend_type>text</frontend_type>
|
205 |
+
<sort_order>42</sort_order>
|
206 |
+
<show_in_default>1</show_in_default>
|
207 |
+
<show_in_website>1</show_in_website>
|
208 |
+
<show_in_store>1</show_in_store>
|
209 |
+
<validate>validate-length
|
210 |
+
minimum-length-1
|
211 |
+
</validate>
|
212 |
+
</bannerActionValue4>
|
213 |
+
|
214 |
+
<catalog1 translate="label tooltip">
|
215 |
+
<label>Front Page - Product List 1</label>
|
216 |
+
<tooltip>Choose a category for the first front page rayon.</tooltip>
|
217 |
+
<frontend_type>select</frontend_type>
|
218 |
+
<source_model>tappz/system_config_category</source_model>
|
219 |
+
<sort_order>50</sort_order>
|
220 |
+
<show_in_default>1</show_in_default>
|
221 |
+
<show_in_website>1</show_in_website>
|
222 |
+
<show_in_store>1</show_in_store>
|
223 |
+
<!--<validate>validate-alphanum validate-length-->
|
224 |
+
<!--minimum-length-20 maximum-length-20-->
|
225 |
+
<!--</validate>-->
|
226 |
+
</catalog1>
|
227 |
+
<catalog2 translate="label tooltip">
|
228 |
+
<label>Front Page - Product List 2</label>
|
229 |
+
<tooltip>Choose a category for the second front page rayon.</tooltip>
|
230 |
+
<frontend_type>select</frontend_type>
|
231 |
+
<source_model>tappz/system_config_category</source_model>
|
232 |
+
<sort_order>60</sort_order>
|
233 |
+
<show_in_default>1</show_in_default>
|
234 |
+
<show_in_website>1</show_in_website>
|
235 |
+
<show_in_store>1</show_in_store>
|
236 |
+
</catalog2>
|
237 |
+
<catalog3 translate="label tooltip">
|
238 |
+
<label>Front Page - Product List 3</label>
|
239 |
+
<tooltip>Choose a category for the third front page rayon.</tooltip>
|
240 |
+
<frontend_type>select</frontend_type>
|
241 |
+
<source_model>tappz/system_config_category</source_model>
|
242 |
+
<sort_order>70</sort_order>
|
243 |
+
<show_in_default>1</show_in_default>
|
244 |
+
<show_in_website>1</show_in_website>
|
245 |
+
<show_in_store>1</show_in_store>
|
246 |
+
</catalog3>
|
247 |
+
<catalog4 translate="label tooltip">
|
248 |
+
<label>Front Page - Product List 4</label>
|
249 |
+
<tooltip>Choose a category for the fourth front page rayon.</tooltip>
|
250 |
+
<frontend_type>select</frontend_type>
|
251 |
+
<source_model>tappz/system_config_category</source_model>
|
252 |
+
<sort_order>80</sort_order>
|
253 |
+
<show_in_default>1</show_in_default>
|
254 |
+
<show_in_website>1</show_in_website>
|
255 |
+
<show_in_store>1</show_in_store>
|
256 |
+
</catalog4>
|
257 |
+
<productAttributeCodeShippingInfo>
|
258 |
+
<label>Product Shipping Info Attribute</label>
|
259 |
+
<tooltip>Choose a product attribute for shipping info of a product.</tooltip>
|
260 |
+
<frontend_type>select</frontend_type>
|
261 |
+
<source_model>tappz/system_config_product_attribute</source_model>
|
262 |
+
<sort_order>90</sort_order>
|
263 |
+
<show_in_default>1</show_in_default>
|
264 |
+
<show_in_website>1</show_in_website>
|
265 |
+
<show_in_store>1</show_in_store>
|
266 |
+
</productAttributeCodeShippingInfo>
|
267 |
+
<productAttributeCodeIsShippingFree>
|
268 |
+
<label>Product Free Shipping Attribute</label>
|
269 |
+
<tooltip>Choose a product attribute for free shipping information.</tooltip>
|
270 |
+
<frontend_type>select</frontend_type>
|
271 |
+
<source_model>tappz/system_config_product_attribute</source_model>
|
272 |
+
<sort_order>100</sort_order>
|
273 |
+
<show_in_default>1</show_in_default>
|
274 |
+
<show_in_website>1</show_in_website>
|
275 |
+
<show_in_store>1</show_in_store>
|
276 |
+
</productAttributeCodeIsShippingFree>
|
277 |
+
</fields>
|
278 |
+
</catalog>
|
279 |
+
<customer translate="label">
|
280 |
+
<label>Customer</label>
|
281 |
+
<sort_order>30</sort_order>
|
282 |
+
<show_in_default>1</show_in_default>
|
283 |
+
<show_in_website>1</show_in_website>
|
284 |
+
<show_in_store>1</show_in_store>
|
285 |
+
<fields>
|
286 |
+
<gender>
|
287 |
+
<label>Gender Attribute</label>
|
288 |
+
<tooltip>Choose customer gender attribute.</tooltip>
|
289 |
+
<frontend_type>select</frontend_type>
|
290 |
+
<source_model>tappz/system_config_customer</source_model>
|
291 |
+
<sort_order>10</sort_order>
|
292 |
+
<show_in_default>1</show_in_default>
|
293 |
+
<show_in_website>1</show_in_website>
|
294 |
+
<show_in_store>1</show_in_store>
|
295 |
+
</gender>
|
296 |
+
<email>
|
297 |
+
<label>Email Attribute</label>
|
298 |
+
<tooltip>Choose customer email attribute.</tooltip>
|
299 |
+
<frontend_type>select</frontend_type>
|
300 |
+
<source_model>tappz/system_config_customer</source_model>
|
301 |
+
<sort_order>20</sort_order>
|
302 |
+
<show_in_default>1</show_in_default>
|
303 |
+
<show_in_website>1</show_in_website>
|
304 |
+
<show_in_store>1</show_in_store>
|
305 |
+
</email>
|
306 |
+
<phone>
|
307 |
+
<label>Phone Attribute</label>
|
308 |
+
<tooltip>Choose customer phone attribute.</tooltip>
|
309 |
+
<frontend_type>select</frontend_type>
|
310 |
+
<source_model>tappz/system_config_customer</source_model>
|
311 |
+
<sort_order>40</sort_order>
|
312 |
+
<show_in_default>1</show_in_default>
|
313 |
+
<show_in_website>1</show_in_website>
|
314 |
+
<show_in_store>1</show_in_store>
|
315 |
+
</phone>
|
316 |
+
<birthDate>
|
317 |
+
<label>Birth Date Attribute</label>
|
318 |
+
<tooltip>Choose customer birth date attribute.</tooltip>
|
319 |
+
<frontend_type>select</frontend_type>
|
320 |
+
<source_model>tappz/system_config_customer</source_model>
|
321 |
+
<sort_order>50</sort_order>
|
322 |
+
<show_in_default>1</show_in_default>
|
323 |
+
<show_in_website>1</show_in_website>
|
324 |
+
<show_in_store>1</show_in_store>
|
325 |
+
</birthDate>
|
326 |
+
<agreement>
|
327 |
+
<label>User Agreement</label>
|
328 |
+
<tooltip>Enter user agreement.</tooltip>
|
329 |
+
<frontend_type>textarea</frontend_type>
|
330 |
+
<sort_order>60</sort_order>
|
331 |
+
<show_in_default>1</show_in_default>
|
332 |
+
<show_in_website>1</show_in_website>
|
333 |
+
<show_in_store>1</show_in_store>
|
334 |
+
</agreement>
|
335 |
+
</fields>
|
336 |
+
</customer>
|
337 |
+
<address translate="label">
|
338 |
+
<label>Address</label>
|
339 |
+
<sort_order>40</sort_order>
|
340 |
+
<show_in_default>1</show_in_default>
|
341 |
+
<show_in_website>1</show_in_website>
|
342 |
+
<show_in_store>1</show_in_store>
|
343 |
+
<fields>
|
344 |
+
<name>
|
345 |
+
<label>Address Name Attribute</label>
|
346 |
+
<tooltip>Choose customer address name attribute.</tooltip>
|
347 |
+
<frontend_type>select</frontend_type>
|
348 |
+
<source_model>tappz/system_config_address</source_model>
|
349 |
+
<sort_order>10</sort_order>
|
350 |
+
<show_in_default>1</show_in_default>
|
351 |
+
<show_in_website>1</show_in_website>
|
352 |
+
<show_in_store>1</show_in_store>
|
353 |
+
</name>
|
354 |
+
<firstname>
|
355 |
+
<label>First Name Attribute</label>
|
356 |
+
<tooltip>Choose customer's first name attribute.</tooltip>
|
357 |
+
<frontend_type>select</frontend_type>
|
358 |
+
<source_model>tappz/system_config_address</source_model>
|
359 |
+
<sort_order>20</sort_order>
|
360 |
+
<show_in_default>1</show_in_default>
|
361 |
+
<show_in_website>1</show_in_website>
|
362 |
+
<show_in_store>1</show_in_store>
|
363 |
+
</firstname>
|
364 |
+
<lastname>
|
365 |
+
<label>Last Name Attribute</label>
|
366 |
+
<tooltip>Choose customer's last name attribute.</tooltip>
|
367 |
+
<frontend_type>select</frontend_type>
|
368 |
+
<source_model>tappz/system_config_address</source_model>
|
369 |
+
<sort_order>30</sort_order>
|
370 |
+
<show_in_default>1</show_in_default>
|
371 |
+
<show_in_website>1</show_in_website>
|
372 |
+
<show_in_store>1</show_in_store>
|
373 |
+
</lastname>
|
374 |
+
<email>
|
375 |
+
<label>E-mail Attribute</label>
|
376 |
+
<tooltip>Choose customer's e-mail attribute.</tooltip>
|
377 |
+
<frontend_type>select</frontend_type>
|
378 |
+
<source_model>tappz/system_config_address</source_model>
|
379 |
+
<sort_order>40</sort_order>
|
380 |
+
<show_in_default>1</show_in_default>
|
381 |
+
<show_in_website>1</show_in_website>
|
382 |
+
<show_in_store>1</show_in_store>
|
383 |
+
</email>
|
384 |
+
<street>
|
385 |
+
<label>Street Attribute</label>
|
386 |
+
<tooltip>Choose street attribute.</tooltip>
|
387 |
+
<frontend_type>select</frontend_type>
|
388 |
+
<source_model>tappz/system_config_address</source_model>
|
389 |
+
<sort_order>50</sort_order>
|
390 |
+
<show_in_default>1</show_in_default>
|
391 |
+
<show_in_website>1</show_in_website>
|
392 |
+
<show_in_store>1</show_in_store>
|
393 |
+
</street>
|
394 |
+
<country_id>
|
395 |
+
<label>Country Attribute</label>
|
396 |
+
<tooltip>Choose country attribute.</tooltip>
|
397 |
+
<frontend_type>select</frontend_type>
|
398 |
+
<source_model>tappz/system_config_address</source_model>
|
399 |
+
<sort_order>60</sort_order>
|
400 |
+
<show_in_default>1</show_in_default>
|
401 |
+
<show_in_website>1</show_in_website>
|
402 |
+
<show_in_store>1</show_in_store>
|
403 |
+
</country_id>
|
404 |
+
<region>
|
405 |
+
<label>State/Province Attribute</label>
|
406 |
+
<tooltip>Choose state-province attribute.</tooltip>
|
407 |
+
<frontend_type>select</frontend_type>
|
408 |
+
<source_model>tappz/system_config_address</source_model>
|
409 |
+
<sort_order>70</sort_order>
|
410 |
+
<show_in_default>1</show_in_default>
|
411 |
+
<show_in_website>1</show_in_website>
|
412 |
+
<show_in_store>1</show_in_store>
|
413 |
+
</region>
|
414 |
+
<region_id>
|
415 |
+
<label>State/Province Id Attribute</label>
|
416 |
+
<tooltip>Choose state-province Id attribute.</tooltip>
|
417 |
+
<frontend_type>select</frontend_type>
|
418 |
+
<source_model>tappz/system_config_address</source_model>
|
419 |
+
<sort_order>80</sort_order>
|
420 |
+
<show_in_default>1</show_in_default>
|
421 |
+
<show_in_website>1</show_in_website>
|
422 |
+
<show_in_store>1</show_in_store>
|
423 |
+
</region_id>
|
424 |
+
<city>
|
425 |
+
<label>City Attribute</label>
|
426 |
+
<tooltip>Choose city attribute.</tooltip>
|
427 |
+
<frontend_type>select</frontend_type>
|
428 |
+
<source_model>tappz/system_config_address</source_model>
|
429 |
+
<sort_order>90</sort_order>
|
430 |
+
<show_in_default>1</show_in_default>
|
431 |
+
<show_in_website>1</show_in_website>
|
432 |
+
<show_in_store>1</show_in_store>
|
433 |
+
</city>
|
434 |
+
<city_id>
|
435 |
+
<label>City Id Attribute</label>
|
436 |
+
<tooltip>Choose city id attribute.</tooltip>
|
437 |
+
<frontend_type>select</frontend_type>
|
438 |
+
<source_model>tappz/system_config_address</source_model>
|
439 |
+
<sort_order>100</sort_order>
|
440 |
+
<show_in_default>1</show_in_default>
|
441 |
+
<show_in_website>1</show_in_website>
|
442 |
+
<show_in_store>1</show_in_store>
|
443 |
+
</city_id>
|
444 |
+
<district>
|
445 |
+
<label>District Attribute</label>
|
446 |
+
<tooltip>Choose district attribute.</tooltip>
|
447 |
+
<frontend_type>select</frontend_type>
|
448 |
+
<source_model>tappz/system_config_address</source_model>
|
449 |
+
<sort_order>110</sort_order>
|
450 |
+
<show_in_default>1</show_in_default>
|
451 |
+
<show_in_website>1</show_in_website>
|
452 |
+
<show_in_store>1</show_in_store>
|
453 |
+
</district>
|
454 |
+
<district_id>
|
455 |
+
<label>District Id Attribute</label>
|
456 |
+
<tooltip>Choose district id attribute.</tooltip>
|
457 |
+
<frontend_type>select</frontend_type>
|
458 |
+
<source_model>tappz/system_config_address</source_model>
|
459 |
+
<sort_order>120</sort_order>
|
460 |
+
<show_in_default>1</show_in_default>
|
461 |
+
<show_in_website>1</show_in_website>
|
462 |
+
<show_in_store>1</show_in_store>
|
463 |
+
</district_id>
|
464 |
+
<town>
|
465 |
+
<label>Town Attribute</label>
|
466 |
+
<tooltip>Choose town attribute.</tooltip>
|
467 |
+
<frontend_type>select</frontend_type>
|
468 |
+
<source_model>tappz/system_config_address</source_model>
|
469 |
+
<sort_order>130</sort_order>
|
470 |
+
<show_in_default>1</show_in_default>
|
471 |
+
<show_in_website>1</show_in_website>
|
472 |
+
<show_in_store>1</show_in_store>
|
473 |
+
</town>
|
474 |
+
<town_id>
|
475 |
+
<label>Town Id Attribute</label>
|
476 |
+
<tooltip>Choose town id attribute.</tooltip>
|
477 |
+
<frontend_type>select</frontend_type>
|
478 |
+
<source_model>tappz/system_config_address</source_model>
|
479 |
+
<sort_order>140</sort_order>
|
480 |
+
<show_in_default>1</show_in_default>
|
481 |
+
<show_in_website>1</show_in_website>
|
482 |
+
<show_in_store>1</show_in_store>
|
483 |
+
</town_id>
|
484 |
+
<isCompany>
|
485 |
+
<label>Is Company Attribute</label>
|
486 |
+
<tooltip>Choose if an address is a company address attribute.</tooltip>
|
487 |
+
<frontend_type>select</frontend_type>
|
488 |
+
<source_model>tappz/system_config_address</source_model>
|
489 |
+
<sort_order>150</sort_order>
|
490 |
+
<show_in_default>1</show_in_default>
|
491 |
+
<show_in_website>1</show_in_website>
|
492 |
+
<show_in_store>1</show_in_store>
|
493 |
+
</isCompany>
|
494 |
+
<company>
|
495 |
+
<label>Company Name Attribute</label>
|
496 |
+
<tooltip>Choose company name attribute.</tooltip>
|
497 |
+
<frontend_type>select</frontend_type>
|
498 |
+
<source_model>tappz/system_config_address</source_model>
|
499 |
+
<sort_order>160</sort_order>
|
500 |
+
<show_in_default>1</show_in_default>
|
501 |
+
<show_in_website>1</show_in_website>
|
502 |
+
<show_in_store>1</show_in_store>
|
503 |
+
</company>
|
504 |
+
<taxDepartment>
|
505 |
+
<label>Tax Department Attribute</label>
|
506 |
+
<tooltip>Choose tax department attribute.</tooltip>
|
507 |
+
<frontend_type>select</frontend_type>
|
508 |
+
<source_model>tappz/system_config_address</source_model>
|
509 |
+
<sort_order>170</sort_order>
|
510 |
+
<show_in_default>1</show_in_default>
|
511 |
+
<show_in_website>1</show_in_website>
|
512 |
+
<show_in_store>1</show_in_store>
|
513 |
+
</taxDepartment>
|
514 |
+
<vatNo>
|
515 |
+
<label>Tax No Attribute</label>
|
516 |
+
<tooltip>Choose tax no attribute.</tooltip>
|
517 |
+
<frontend_type>select</frontend_type>
|
518 |
+
<source_model>tappz/system_config_address</source_model>
|
519 |
+
<sort_order>180</sort_order>
|
520 |
+
<show_in_default>1</show_in_default>
|
521 |
+
<show_in_website>1</show_in_website>
|
522 |
+
<show_in_store>1</show_in_store>
|
523 |
+
</vatNo>
|
524 |
+
<phone>
|
525 |
+
<label>Phone Attribute</label>
|
526 |
+
<tooltip>Choose phone attribute.</tooltip>
|
527 |
+
<frontend_type>select</frontend_type>
|
528 |
+
<source_model>tappz/system_config_address</source_model>
|
529 |
+
<sort_order>190</sort_order>
|
530 |
+
<show_in_default>1</show_in_default>
|
531 |
+
<show_in_website>1</show_in_website>
|
532 |
+
<show_in_store>1</show_in_store>
|
533 |
+
</phone>
|
534 |
+
<idNo>
|
535 |
+
<label>Identity Number Attribute</label>
|
536 |
+
<tooltip>Choose identity number attribute.</tooltip>
|
537 |
+
<frontend_type>select</frontend_type>
|
538 |
+
<source_model>tappz/system_config_address</source_model>
|
539 |
+
<sort_order>200</sort_order>
|
540 |
+
<show_in_default>1</show_in_default>
|
541 |
+
<show_in_website>1</show_in_website>
|
542 |
+
<show_in_store>1</show_in_store>
|
543 |
+
</idNo>
|
544 |
+
<postcode>
|
545 |
+
<label>Postal Code Attribute</label>
|
546 |
+
<tooltip>Choose postal code or zipcode attribute.</tooltip>
|
547 |
+
<frontend_type>select</frontend_type>
|
548 |
+
<source_model>tappz/system_config_address</source_model>
|
549 |
+
<sort_order>210</sort_order>
|
550 |
+
<show_in_default>1</show_in_default>
|
551 |
+
<show_in_website>1</show_in_website>
|
552 |
+
<show_in_store>1</show_in_store>
|
553 |
+
</postcode>
|
554 |
+
</fields>
|
555 |
+
</address>
|
556 |
+
<basket translate="label">
|
557 |
+
<label>Basket</label>
|
558 |
+
<sort_order>50</sort_order>
|
559 |
+
<show_in_default>1</show_in_default>
|
560 |
+
<show_in_website>1</show_in_website>
|
561 |
+
<show_in_store>1</show_in_store>
|
562 |
+
<fields>
|
563 |
+
<averagedeliverydaysattributecode translate="label">
|
564 |
+
<label>Product Average Delivery Days Attribute</label>
|
565 |
+
<tooltip>Choose delivery time attribute for a product.</tooltip>
|
566 |
+
<frontend_type>select</frontend_type>
|
567 |
+
<source_model>tappz/system_config_product_attribute</source_model>
|
568 |
+
<sort_order>10</sort_order>
|
569 |
+
<show_in_default>1</show_in_default>
|
570 |
+
<show_in_website>1</show_in_website>
|
571 |
+
<show_in_store>1</show_in_store>
|
572 |
+
</averagedeliverydaysattributecode>
|
573 |
+
<creditcardpaymenttype>
|
574 |
+
<label>Credit Card Payment Type</label>
|
575 |
+
<tooltip>Choose credit card payment type.</tooltip>
|
576 |
+
<frontend_type>select</frontend_type>
|
577 |
+
<source_model>tappz/system_config_payment</source_model>
|
578 |
+
<sort_order>15</sort_order>
|
579 |
+
<show_in_default>1</show_in_default>
|
580 |
+
<show_in_website>1</show_in_website>
|
581 |
+
<show_in_store>1</show_in_store>
|
582 |
+
</creditcardpaymenttype>
|
583 |
+
<paypalissandbox translate="label">
|
584 |
+
<label>Paypal Sandbox</label>
|
585 |
+
<tooltip>Choose if paypal is on test.</tooltip>
|
586 |
+
<frontend_type>select</frontend_type>
|
587 |
+
<source_model>tappz/system_config_enabled</source_model>
|
588 |
+
<sort_order>20</sort_order>
|
589 |
+
<show_in_default>1</show_in_default>
|
590 |
+
<show_in_website>1</show_in_website>
|
591 |
+
<show_in_store>1</show_in_store>
|
592 |
+
</paypalissandbox>
|
593 |
+
<paypalclientid translate="label">
|
594 |
+
<label>Paypal Client Id</label>
|
595 |
+
<tooltip>Enter your paypal client id.</tooltip>
|
596 |
+
<frontend_type>text</frontend_type>
|
597 |
+
<sort_order>30</sort_order>
|
598 |
+
<show_in_default>1</show_in_default>
|
599 |
+
<show_in_website>1</show_in_website>
|
600 |
+
<show_in_store>1</show_in_store>
|
601 |
+
</paypalclientid>
|
602 |
+
<paypalSecret translate="label">
|
603 |
+
<label>Paypal Secret</label>
|
604 |
+
<tooltip>Enter your paypal secret.</tooltip>
|
605 |
+
<frontend_type>text</frontend_type>
|
606 |
+
<sort_order>40</sort_order>
|
607 |
+
<show_in_default>1</show_in_default>
|
608 |
+
<show_in_website>1</show_in_website>
|
609 |
+
<show_in_store>1</show_in_store>
|
610 |
+
</paypalSecret>
|
611 |
+
<stripeistest translate="label">
|
612 |
+
<label>Stripe Test</label>
|
613 |
+
<tooltip>Choose if stripe is on test.</tooltip>
|
614 |
+
<frontend_type>select</frontend_type>
|
615 |
+
<source_model>tappz/system_config_enabled</source_model>
|
616 |
+
<sort_order>50</sort_order>
|
617 |
+
<show_in_default>1</show_in_default>
|
618 |
+
<show_in_website>1</show_in_website>
|
619 |
+
<show_in_store>1</show_in_store>
|
620 |
+
</stripeistest>
|
621 |
+
<stripetestsecret translate="label">
|
622 |
+
<label>Stripe Test Secret</label>
|
623 |
+
<tooltip>Enter your stripe test secret.</tooltip>
|
624 |
+
<frontend_type>text</frontend_type>
|
625 |
+
<sort_order>60</sort_order>
|
626 |
+
<show_in_default>1</show_in_default>
|
627 |
+
<show_in_website>1</show_in_website>
|
628 |
+
<show_in_store>1</show_in_store>
|
629 |
+
</stripetestsecret>
|
630 |
+
<stripelivesecret translate="label">
|
631 |
+
<label>Stripe Live Secret</label>
|
632 |
+
<tooltip>Enter your stripe live secret.</tooltip>
|
633 |
+
<frontend_type>text</frontend_type>
|
634 |
+
<sort_order>70</sort_order>
|
635 |
+
<show_in_default>1</show_in_default>
|
636 |
+
<show_in_website>1</show_in_website>
|
637 |
+
<show_in_store>1</show_in_store>
|
638 |
+
</stripelivesecret>
|
639 |
+
</fields>
|
640 |
+
</basket>
|
641 |
+
</groups>
|
642 |
+
</tappz>
|
643 |
+
</sections>
|
644 |
+
</config>
|
app/code/local/TmobLabs/Tappz/etc/wsdl.xml
ADDED
@@ -0,0 +1,1650 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0" encoding="UTF-8"?>
|
2 |
+
<definitions xmlns:typens="urn:{{var wsdl.name}}" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
3 |
+
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
|
4 |
+
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
|
5 |
+
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
|
6 |
+
xmlns="http://schemas.xmlsoap.org/wsdl/"
|
7 |
+
name="{{var wsdl.name}}" targetNamespace="urn:{{var wsdl.name}}"
|
8 |
+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
9 |
+
xsi:schemaLocation="http://schemas.xmlsoap.org/wsdl/ ">
|
10 |
+
<types>
|
11 |
+
<schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="urn:Magento">
|
12 |
+
<import namespace="http://schemas.xmlsoap.org/soap/encoding/"
|
13 |
+
schemaLocation="http://schemas.xmlsoap.org/soap/encoding/"/>
|
14 |
+
|
15 |
+
|
16 |
+
<complexType name="taksits">
|
17 |
+
<all>
|
18 |
+
<element name="bankOption" type="xsd:string"/>
|
19 |
+
<element name="totalPrice" type="xsd:string"/>
|
20 |
+
</all>
|
21 |
+
</complexType>
|
22 |
+
|
23 |
+
<complexType name="taksitList">
|
24 |
+
<complexContent>
|
25 |
+
<restriction base="soapenc:Array">
|
26 |
+
<xsd:attribute ref="soapenc:arrayType" wsdl:arrayType="typens:taksits[]"/>
|
27 |
+
</restriction>
|
28 |
+
</complexContent>
|
29 |
+
</complexType>
|
30 |
+
|
31 |
+
<complexType name="taksitServiceDetailsList">
|
32 |
+
<all>
|
33 |
+
<element name="bankName" type="xsd:string"/>
|
34 |
+
<element name="bankValues" type="typens:taksitList"/>
|
35 |
+
</all>
|
36 |
+
</complexType>
|
37 |
+
|
38 |
+
<complexType name="taksitServiceList">
|
39 |
+
<complexContent>
|
40 |
+
<restriction base="soapenc:Array">
|
41 |
+
<xsd:attribute ref="soapenc:arrayType" wsdl:arrayType="typens:taksitServiceDetailsList[]"/>
|
42 |
+
</restriction>
|
43 |
+
</complexContent>
|
44 |
+
</complexType>
|
45 |
+
|
46 |
+
<complexType name="taksitDets">
|
47 |
+
<all>
|
48 |
+
<element name="purchaseOptions" type="typens:taksitServiceList"/>
|
49 |
+
</all>
|
50 |
+
</complexType>
|
51 |
+
|
52 |
+
<complexType name="basketContract">
|
53 |
+
<all>
|
54 |
+
<element name="termOfUse" type="xsd:string"/>
|
55 |
+
<element name="salesContact" type="xsd:string"/>
|
56 |
+
</all>
|
57 |
+
</complexType>
|
58 |
+
|
59 |
+
<complexType name="creditCardInfo">
|
60 |
+
<all>
|
61 |
+
<element name="owner" type="xsd:string"/>
|
62 |
+
<element name="number" type="xsd:string"/>
|
63 |
+
<element name="month" type="xsd:string"/>
|
64 |
+
<element name="year" type="xsd:string"/>
|
65 |
+
<element name="cvv" type="xsd:string"/>
|
66 |
+
<element name="type" type="xsd:string"/>
|
67 |
+
</all>
|
68 |
+
</complexType>
|
69 |
+
|
70 |
+
<complexType name="basketUpdate">
|
71 |
+
<all>
|
72 |
+
<element name="productId" type="xsd:string"/>
|
73 |
+
<element name="qty" type="xsd:string"/>
|
74 |
+
</all>
|
75 |
+
</complexType>
|
76 |
+
|
77 |
+
<complexType name="basketUpdateList">
|
78 |
+
<complexContent>
|
79 |
+
<restriction base="soapenc:Array">
|
80 |
+
<xsd:attribute ref="soapenc:arrayType" wsdl:arrayType="typens:basketUpdate[]"/>
|
81 |
+
</restriction>
|
82 |
+
</complexContent>
|
83 |
+
</complexType>
|
84 |
+
|
85 |
+
<complexType name="installment">
|
86 |
+
<all>
|
87 |
+
<element name="installmentNumber" type="xsd:string"/>
|
88 |
+
<element name="installmentPayment" type="xsd:string"/>
|
89 |
+
<element name="total" type="xsd:string"/>
|
90 |
+
</all>
|
91 |
+
</complexType>
|
92 |
+
|
93 |
+
<complexType name="installmentList">
|
94 |
+
<complexContent>
|
95 |
+
<restriction base="soapenc:Array">
|
96 |
+
<xsd:attribute ref="soapenc:arrayType" wsdl:arrayType="typens:installment[]"/>
|
97 |
+
</restriction>
|
98 |
+
</complexContent>
|
99 |
+
</complexType>
|
100 |
+
|
101 |
+
<complexType name="creditCard">
|
102 |
+
<all>
|
103 |
+
<element name="image" type="xsd:string"/>
|
104 |
+
<element name="displayName" type="xsd:string"/>
|
105 |
+
<element name="type" type="xsd:string"/>
|
106 |
+
<element name="installmentNumber" type="xsd:string"/>
|
107 |
+
<element name="installments" type="typens:installmentList"/>
|
108 |
+
</all>
|
109 |
+
</complexType>
|
110 |
+
|
111 |
+
<complexType name="creditCardList">
|
112 |
+
<complexContent>
|
113 |
+
<restriction base="soapenc:Array">
|
114 |
+
<xsd:attribute ref="soapenc:arrayType" wsdl:arrayType="typens:creditCard[]"/>
|
115 |
+
</restriction>
|
116 |
+
</complexContent>
|
117 |
+
</complexType>
|
118 |
+
|
119 |
+
<complexType name="moneyTransfer">
|
120 |
+
<all>
|
121 |
+
<element name="id" type="xsd:string"/>
|
122 |
+
<element name="displayName" type="xsd:string"/>
|
123 |
+
<element name="code" type="xsd:string"/>
|
124 |
+
<element name="branch" type="xsd:string"/>
|
125 |
+
<element name="accountNumber" type="xsd:string"/>
|
126 |
+
<element name="iban" type="xsd:string"/>
|
127 |
+
<element name="imageUrl" type="xsd:string"/>
|
128 |
+
</all>
|
129 |
+
</complexType>
|
130 |
+
|
131 |
+
<complexType name="moneyTransferList">
|
132 |
+
<complexContent>
|
133 |
+
<restriction base="soapenc:Array">
|
134 |
+
<xsd:attribute ref="soapenc:arrayType" wsdl:arrayType="typens:moneyTransfer[]"/>
|
135 |
+
</restriction>
|
136 |
+
</complexContent>
|
137 |
+
</complexType>
|
138 |
+
|
139 |
+
<complexType name="paypal">
|
140 |
+
<all>
|
141 |
+
<element name="clientId" type="xsd:string"/>
|
142 |
+
<element name="displayName" type="xsd:string"/>
|
143 |
+
<element name="isSandbox" type="xsd:boolean"/>
|
144 |
+
</all>
|
145 |
+
</complexType>
|
146 |
+
|
147 |
+
<complexType name="paymentOptions">
|
148 |
+
<all>
|
149 |
+
<element name="creditCards" type="typens:creditCardList"/>
|
150 |
+
<element name="moneyTransfers" type="typens:moneyTransferList"/>
|
151 |
+
<element name="cashOnDelivery" type="typens:cashOnDelivery"/>
|
152 |
+
<element name="paypal" type="typens:paypal"/>
|
153 |
+
</all>
|
154 |
+
</complexType>
|
155 |
+
|
156 |
+
<complexType name="discount">
|
157 |
+
<all>
|
158 |
+
<element name="displayName" type="xsd:string"/>
|
159 |
+
<element name="discountTotal" type="xsd:string"/>
|
160 |
+
<element name="promoCode" type="xsd:string"/>
|
161 |
+
</all>
|
162 |
+
</complexType>
|
163 |
+
|
164 |
+
<complexType name="discountList">
|
165 |
+
<complexContent>
|
166 |
+
<restriction base="soapenc:Array">
|
167 |
+
<xsd:attribute ref="soapenc:arrayType" wsdl:arrayType="typens:discount[]"/>
|
168 |
+
</restriction>
|
169 |
+
</complexContent>
|
170 |
+
</complexType>
|
171 |
+
|
172 |
+
<complexType name="errorList">
|
173 |
+
<complexContent>
|
174 |
+
<restriction base="soapenc:Array">
|
175 |
+
<xsd:attribute ref="soapenc:arrayType" wsdl:arrayType="xsd:string[]"/>
|
176 |
+
</restriction>
|
177 |
+
</complexContent>
|
178 |
+
</complexType>
|
179 |
+
|
180 |
+
<complexType name="shippingMethodList">
|
181 |
+
<complexContent>
|
182 |
+
<restriction base="soapenc:Array">
|
183 |
+
<xsd:attribute ref="soapenc:arrayType" wsdl:arrayType="typens:shippingMethod[]"/>
|
184 |
+
</restriction>
|
185 |
+
</complexContent>
|
186 |
+
</complexType>
|
187 |
+
|
188 |
+
<complexType name="giftWrapping">
|
189 |
+
<all>
|
190 |
+
<element name="isSelected" type="xsd:boolean"/>
|
191 |
+
<element name="giftWrappingFee" type="xsd:string"/>
|
192 |
+
<element name="maxCharackter" type="xsd:string"/>
|
193 |
+
<element name="message" type="xsd:string"/>
|
194 |
+
</all>
|
195 |
+
</complexType>
|
196 |
+
|
197 |
+
<complexType name="basket">
|
198 |
+
<all>
|
199 |
+
<element name="id" type="xsd:string"/>
|
200 |
+
<element name="lines" type="typens:lineList"/>
|
201 |
+
<element name="currency" type="xsd:string"/>
|
202 |
+
<element name="discounts" type="typens:discountList"/>
|
203 |
+
<element name="delivery" type="typens:delivery"/>
|
204 |
+
<element name="payment" type="typens:payment"/>
|
205 |
+
<element name="itemsPriceTotal" type="xsd:string"/>
|
206 |
+
<element name="discountTotal" type="xsd:string"/>
|
207 |
+
<element name="subTotal" type="xsd:string"/>
|
208 |
+
<element name="beforeTaxTotal" type="xsd:string"/>
|
209 |
+
<element name="taxTotal" type="xsd:string"/>
|
210 |
+
<element name="shippingTotal" type="xsd:string"/>
|
211 |
+
<element name="total" type="xsd:string"/>
|
212 |
+
<element name="paymentOptions" type="typens:paymentOptions"/>
|
213 |
+
<element name="shippingMethods" type="typens:shippingMethodList"/>
|
214 |
+
<element name="errors" type="typens:errorList"/>
|
215 |
+
<element name="giftCheques" type="typens:giftChequeList"/>
|
216 |
+
<element name="spentGiftChequeTotal" type="xsd:string"/>
|
217 |
+
<element name="usedPoints" type="xsd:string"/>
|
218 |
+
<element name="usedPointsAmount" type="xsd:string"/>
|
219 |
+
<element name="rewardPoints" type="xsd:string"/>
|
220 |
+
<element name="paymentFee" type="xsd:string"/>
|
221 |
+
<element name="estimatedSupplyDate" type="xsd:string"/>
|
222 |
+
<element name="isGiftWrappingEnabled" type="xsd:boolean"/>
|
223 |
+
<element name="giftWrapping" type="typens:giftWrapping"/>
|
224 |
+
</all>
|
225 |
+
</complexType>
|
226 |
+
|
227 |
+
<complexType name="line">
|
228 |
+
<all>
|
229 |
+
<element name="productId" type="xsd:string"/>
|
230 |
+
<element name="product" type="typens:product"/>
|
231 |
+
<element name="quantity" type="xsd:string"/>
|
232 |
+
<element name="price" type="xsd:string"/>
|
233 |
+
<element name="priceTotal" type="xsd:string"/>
|
234 |
+
<element name="averageDeliveryDays" type="xsd:string"/>
|
235 |
+
<element name="variants" type="typens:groupList"/>
|
236 |
+
</all>
|
237 |
+
</complexType>
|
238 |
+
|
239 |
+
<complexType name="lineList">
|
240 |
+
<complexContent>
|
241 |
+
<restriction base="soapenc:Array">
|
242 |
+
<xsd:attribute ref="soapenc:arrayType" wsdl:arrayType="typens:line[]"/>
|
243 |
+
</restriction>
|
244 |
+
</complexContent>
|
245 |
+
</complexType>
|
246 |
+
|
247 |
+
<complexType name="shippingMethod">
|
248 |
+
<all>
|
249 |
+
<element name="id" type="xsd:string" minOccurs="0"/>
|
250 |
+
<element name="displayName" type="xsd:string" minOccurs="0"/>
|
251 |
+
<element name="trackingAddress" type="xsd:string" minOccurs="0"/>
|
252 |
+
<element name="price" type="xsd:string" minOccurs="0"/>
|
253 |
+
<element name="priceForYou" type="xsd:string" minOccurs="0"/>
|
254 |
+
<element name="shippingMethodType" type="xsd:string" minOccurs="0"/>
|
255 |
+
<element name="imageUrl" type="xsd:string" minOccurs="0"/>
|
256 |
+
</all>
|
257 |
+
</complexType>
|
258 |
+
|
259 |
+
<complexType name="delivery">
|
260 |
+
<all>
|
261 |
+
<element name="shippingAddress" type="typens:address" minOccurs="0"/>
|
262 |
+
<element name="billingAddress" type="typens:address" minOccurs="0"/>
|
263 |
+
<element name="shippingMethod" type="typens:shippingMethod" minOccurs="0"/>
|
264 |
+
</all>
|
265 |
+
</complexType>
|
266 |
+
|
267 |
+
<complexType name="cashOnDelivery">
|
268 |
+
<all>
|
269 |
+
<element name="type" type="xsd:string" minOccurs="0"/>
|
270 |
+
<element name="displayName" type="xsd:string" minOccurs="0"/>
|
271 |
+
<element name="additionalFee" type="xsd:string" minOccurs="0"/>
|
272 |
+
<element name="description" type="xsd:string" minOccurs="0"/>
|
273 |
+
<element name="isSMSVerification" type="xsd:boolean" minOccurs="0"/>
|
274 |
+
<element name="SMSCode" type="xsd:string" minOccurs="0"/>
|
275 |
+
<element name="PhoneNumber" type="xsd:string" minOccurs="0"/>
|
276 |
+
</all>
|
277 |
+
</complexType>
|
278 |
+
|
279 |
+
<complexType name="payment">
|
280 |
+
<all>
|
281 |
+
<element name="methodType" type="xsd:string" minOccurs="0"/>
|
282 |
+
<element name="type" type="xsd:string" minOccurs="0"/>
|
283 |
+
<element name="displayName" type="xsd:string" minOccurs="0"/>
|
284 |
+
<element name="bankCode" type="xsd:string" minOccurs="0"/>
|
285 |
+
<element name="installment" type="xsd:string" minOccurs="0"/>
|
286 |
+
<element name="accountNumber" type="xsd:string" minOccurs="0"/>
|
287 |
+
<element name="branch" type="xsd:string" minOccurs="0"/>
|
288 |
+
<element name="iban" type="xsd:string" minOccurs="0"/>
|
289 |
+
<element name="cashOnDelivery" type="typens:cashOnDelivery" minOccurs="0"/>
|
290 |
+
<element name="creditCard" type="typens:creditCardInfo"/>
|
291 |
+
</all>
|
292 |
+
</complexType>
|
293 |
+
|
294 |
+
<complexType name="order">
|
295 |
+
<all>
|
296 |
+
<element name="id" type="xsd:string" minOccurs="0"/>
|
297 |
+
<element name="orderDate" type="xsd:string" minOccurs="0"/>
|
298 |
+
<element name="shippingStatus" type="xsd:string" minOccurs="0"/>
|
299 |
+
<element name="paymentStatus" type="xsd:string" minOccurs="0"/>
|
300 |
+
<element name="ipAddress" type="xsd:string" minOccurs="0"/>
|
301 |
+
<element name="itemsPriceTotal" type="xsd:string" minOccurs="0"/>
|
302 |
+
<element name="discountTotal" type="xsd:string" minOccurs="0"/>
|
303 |
+
<element name="subTotal" type="xsd:string" minOccurs="0"/>
|
304 |
+
<element name="shippingTotal" type="xsd:string" minOccurs="0"/>
|
305 |
+
<element name="total" type="xsd:string" minOccurs="0"/>
|
306 |
+
<element name="delivery" type="typens:delivery" minOccurs="0"/>
|
307 |
+
<element name="payment" type="typens:payment" minOccurs="0"/>
|
308 |
+
<element name="lines" type="typens:lineList" minOccurs="0"/>
|
309 |
+
<element name="currency" type="string"/>
|
310 |
+
</all>
|
311 |
+
</complexType>
|
312 |
+
|
313 |
+
<complexType name="orderList">
|
314 |
+
<complexContent>
|
315 |
+
<restriction base="soapenc:Array">
|
316 |
+
<xsd:attribute ref="soapenc:arrayType" wsdl:arrayType="typens:order[]"/>
|
317 |
+
</restriction>
|
318 |
+
</complexContent>
|
319 |
+
</complexType>
|
320 |
+
|
321 |
+
<complexType name="location">
|
322 |
+
<all>
|
323 |
+
<element name="code" type="xsd:string"/>
|
324 |
+
<element name="name" type="xsd:string"/>
|
325 |
+
</all>
|
326 |
+
</complexType>
|
327 |
+
|
328 |
+
<complexType name="locationList">
|
329 |
+
<complexContent>
|
330 |
+
<restriction base="soapenc:Array">
|
331 |
+
<xsd:attribute ref="soapenc:arrayType" wsdl:arrayType="typens:location[]"/>
|
332 |
+
</restriction>
|
333 |
+
</complexContent>
|
334 |
+
</complexType>
|
335 |
+
|
336 |
+
<complexType name="giftCheque">
|
337 |
+
<all>
|
338 |
+
<element name="chequeNumber" type="xsd:string"/>
|
339 |
+
<element name="expireDate" type="xsd:string"/>
|
340 |
+
<element name="amount" type="xsd:string"/>
|
341 |
+
<element name="code" type="xsd:string"/>
|
342 |
+
<element name="status" type="xsd:string"/>
|
343 |
+
<element name="type" type="xsd:string"/>
|
344 |
+
<element name="activationDate" type="xsd:string"/>
|
345 |
+
<element name="legalText" type="xsd:string"/>
|
346 |
+
</all>
|
347 |
+
</complexType>
|
348 |
+
|
349 |
+
<complexType name="giftChequeList">
|
350 |
+
<complexContent>
|
351 |
+
<restriction base="soapenc:Array">
|
352 |
+
<xsd:attribute ref="soapenc:arrayType" wsdl:arrayType="typens:giftCheque[]"/>
|
353 |
+
</restriction>
|
354 |
+
</complexContent>
|
355 |
+
</complexType>
|
356 |
+
|
357 |
+
<complexType name="address">
|
358 |
+
<all>
|
359 |
+
<element name="id" type="xsd:string"/>
|
360 |
+
<element name="addressName" type="xsd:string"/>
|
361 |
+
<element name="name" type="xsd:string"/>
|
362 |
+
<element name="surname" type="xsd:string"/>
|
363 |
+
<element name="email" type="xsd:string"/>
|
364 |
+
<element name="addressLine" type="xsd:string"/>
|
365 |
+
<element name="country" type="xsd:string"/>
|
366 |
+
<element name="countryCode" type="xsd:string"/>
|
367 |
+
<element name="state" type="xsd:string"/>
|
368 |
+
<element name="stateCode" type="xsd:string"/>
|
369 |
+
<element name="city" type="xsd:string"/>
|
370 |
+
<element name="cityCode" type="xsd:string"/>
|
371 |
+
<element name="district" type="xsd:string"/>
|
372 |
+
<element name="districtCode" type="xsd:string"/>
|
373 |
+
<element name="town" type="xsd:string"/>
|
374 |
+
<element name="townCode" type="xsd:string"/>
|
375 |
+
<element name="corporate" type="xsd:string"/>
|
376 |
+
<element name="companyTitle" type="xsd:string"/>
|
377 |
+
<element name="taxDepartment" type="xsd:string"/>
|
378 |
+
<element name="taxNo" type="xsd:string"/>
|
379 |
+
<element name="phoneNumber" type="xsd:string"/>
|
380 |
+
<element name="identityNo" type="xsd:string"/>
|
381 |
+
<element name="zipCode" type="xsd:string"/>
|
382 |
+
</all>
|
383 |
+
</complexType>
|
384 |
+
|
385 |
+
<complexType name="addressList">
|
386 |
+
<complexContent>
|
387 |
+
<restriction base="soapenc:Array">
|
388 |
+
<xsd:attribute ref="soapenc:arrayType" wsdl:arrayType="typens:address[]"/>
|
389 |
+
</restriction>
|
390 |
+
</complexContent>
|
391 |
+
</complexType>
|
392 |
+
|
393 |
+
<complexType name="customer">
|
394 |
+
<all>
|
395 |
+
<element name="customerId" type="xsd:string"/>
|
396 |
+
<element name="fullName" type="xsd:string"/>
|
397 |
+
<element name="firstName" type="xsd:string"/>
|
398 |
+
<element name="lastName" type="xsd:string"/>
|
399 |
+
<element name="gender" type="xsd:string"/>
|
400 |
+
<element name="isSubscribed" type="xsd:boolean"/>
|
401 |
+
<element name="isAccepted" type="xsd:boolean"/>
|
402 |
+
<element name="email" type="xsd:string"/>
|
403 |
+
<element name="password" type="xsd:string"/>
|
404 |
+
<element name="phone" type="xsd:string"/>
|
405 |
+
<element name="birthDate" type="xsd:string"/>
|
406 |
+
<element name="points" type="xsd:integer"/>
|
407 |
+
<element name="addresses" type="typens:addressList"/>
|
408 |
+
<element name="giftCheques" type="typens:giftChequeList"/>
|
409 |
+
</all>
|
410 |
+
</complexType>
|
411 |
+
|
412 |
+
<complexType name="pictures">
|
413 |
+
<all>
|
414 |
+
<element name="url" type="xsd:string"/>
|
415 |
+
</all>
|
416 |
+
</complexType>
|
417 |
+
|
418 |
+
<complexType name="pictureList">
|
419 |
+
<complexContent>
|
420 |
+
<restriction base="soapenc:Array">
|
421 |
+
<xsd:attribute ref="soapenc:arrayType" wsdl:arrayType="typens:pictures[]"/>
|
422 |
+
</restriction>
|
423 |
+
</complexContent>
|
424 |
+
</complexType>
|
425 |
+
|
426 |
+
<complexType name="feature">
|
427 |
+
<all>
|
428 |
+
<element name="id" type="xsd:string"/>
|
429 |
+
<element name="name" type="xsd:string"/>
|
430 |
+
</all>
|
431 |
+
</complexType>
|
432 |
+
|
433 |
+
<complexType name="featureList">
|
434 |
+
<complexContent>
|
435 |
+
<restriction base="soapenc:Array">
|
436 |
+
<xsd:attribute ref="soapenc:arrayType" wsdl:arrayType="typens:feature[]"/>
|
437 |
+
</restriction>
|
438 |
+
</complexContent>
|
439 |
+
</complexType>
|
440 |
+
|
441 |
+
<complexType name="group">
|
442 |
+
<all>
|
443 |
+
<element name="id" type="xsd:string"/>
|
444 |
+
<element name="name" type="xsd:string"/>
|
445 |
+
<element name="selected" type="xsd:string"/>
|
446 |
+
<element name="values" type="typens:featureList"/>
|
447 |
+
</all>
|
448 |
+
</complexType>
|
449 |
+
|
450 |
+
<complexType name="groupList">
|
451 |
+
<complexContent>
|
452 |
+
<restriction base="soapenc:Array">
|
453 |
+
<xsd:attribute ref="soapenc:arrayType" wsdl:arrayType="typens:group[]"/>
|
454 |
+
</restriction>
|
455 |
+
</complexContent>
|
456 |
+
</complexType>
|
457 |
+
|
458 |
+
<complexType name="price">
|
459 |
+
<all>
|
460 |
+
<element name="amount" type="xsd:double"/>
|
461 |
+
<element name="amountDefaultCurrency" type="xsd:string"/>
|
462 |
+
<element name="currency" type="xsd:string"/>
|
463 |
+
</all>
|
464 |
+
</complexType>
|
465 |
+
|
466 |
+
<complexType name="product">
|
467 |
+
<all>
|
468 |
+
<element name="id" type="xsd:string"/>
|
469 |
+
<element name="inStock" type="xsd:boolean"/>
|
470 |
+
<element name="isShipmentFree" type="xsd:boolean"/>
|
471 |
+
<element name="listPrice" type="typens:price"/>
|
472 |
+
<element name="picture" type="xsd:string"/>
|
473 |
+
<element name="pictures" type="typens:pictureList"/>
|
474 |
+
<element name="productDetailUrl" type="xsd:string"/>
|
475 |
+
<element name="additionalDetail" type="xsd:string"/>
|
476 |
+
<element name="productName" type="xsd:string"/>
|
477 |
+
<element name="productUrl" type="xsd:string"/>
|
478 |
+
<element name="shipmentInformation" type="xsd:string"/>
|
479 |
+
<element name="strikeoutPrice" type="typens:price"/>
|
480 |
+
<element name="isCampaign" type="xsd:boolean"/>
|
481 |
+
<element name="headline" type="xsd:string"/>
|
482 |
+
<!--<element name="feature" type="typens:groupList"/>-->
|
483 |
+
<element name="actions" type="typens:featureList"/>
|
484 |
+
<!--<element name="creditCardInstallments" type="typens:featureList"/>-->
|
485 |
+
<element name="variants" type="typens:groupList"/>
|
486 |
+
</all>
|
487 |
+
</complexType>
|
488 |
+
|
489 |
+
<complexType name="productList">
|
490 |
+
<complexContent>
|
491 |
+
<restriction base="soapenc:Array">
|
492 |
+
<xsd:attribute ref="soapenc:arrayType" wsdl:arrayType="typens:product[]"/>
|
493 |
+
</restriction>
|
494 |
+
</complexContent>
|
495 |
+
</complexType>
|
496 |
+
|
497 |
+
<complexType name="searchResult">
|
498 |
+
<all>
|
499 |
+
<element name="total" type="xsd:integer"/>
|
500 |
+
<element name="filters" type="typens:groupList"/>
|
501 |
+
<element name="sortList" type="typens:featureList"/>
|
502 |
+
<element name="products" type="typens:productList"/>
|
503 |
+
</all>
|
504 |
+
</complexType>
|
505 |
+
|
506 |
+
<complexType name="productGroup">
|
507 |
+
<all>
|
508 |
+
<element name="partName" type="xsd:string"/>
|
509 |
+
<element name="products" type="typens:productList"/>
|
510 |
+
</all>
|
511 |
+
</complexType>
|
512 |
+
|
513 |
+
<complexType name="productGroupList">
|
514 |
+
<complexContent>
|
515 |
+
<restriction base="soapenc:Array">
|
516 |
+
<xsd:attribute ref="soapenc:arrayType" wsdl:arrayType="typens:productGroup[]"/>
|
517 |
+
</restriction>
|
518 |
+
</complexContent>
|
519 |
+
</complexType>
|
520 |
+
|
521 |
+
<complexType name="ad">
|
522 |
+
<all>
|
523 |
+
<element name="name" type="xsd:string"/>
|
524 |
+
<element name="image" type="xsd:string"/>
|
525 |
+
<element name="type" type="xsd:string"/>
|
526 |
+
<element name="value" type="xsd:string"/>
|
527 |
+
</all>
|
528 |
+
</complexType>
|
529 |
+
|
530 |
+
<complexType name="adList">
|
531 |
+
<complexContent>
|
532 |
+
<restriction base="soapenc:Array">
|
533 |
+
<xsd:attribute ref="soapenc:arrayType" wsdl:arrayType="typens:ad[]"/>
|
534 |
+
</restriction>
|
535 |
+
</complexContent>
|
536 |
+
</complexType>
|
537 |
+
|
538 |
+
<complexType name="frontPage">
|
539 |
+
<all>
|
540 |
+
<element name="ads" type="typens:adList"/>
|
541 |
+
<element name="groups" type="typens:productGroupList"/>
|
542 |
+
</all>
|
543 |
+
</complexType>
|
544 |
+
|
545 |
+
<complexType name="category">
|
546 |
+
<all>
|
547 |
+
<element name="id" type="xsd:string"/>
|
548 |
+
<element name="name" type="xsd:string"/>
|
549 |
+
<element name="isRoot" type="xsd:boolean"/>
|
550 |
+
<element name="isLeaf" type="xsd:boolean"/>
|
551 |
+
<element name="parentCategoryId" type="xsd:string"/>
|
552 |
+
<element name="children" type="typens:categoryList"/>
|
553 |
+
</all>
|
554 |
+
</complexType>
|
555 |
+
|
556 |
+
<complexType name="categoryList">
|
557 |
+
<complexContent>
|
558 |
+
<restriction base="soapenc:Array">
|
559 |
+
<xsd:attribute ref="soapenc:arrayType" wsdl:arrayType="typens:category[]"/>
|
560 |
+
</restriction>
|
561 |
+
</complexContent>
|
562 |
+
</complexType>
|
563 |
+
|
564 |
+
</schema>
|
565 |
+
</types>
|
566 |
+
|
567 |
+
|
568 |
+
<!--catalog -->
|
569 |
+
<message name="tappzCatalogGetFrontPageRequest">
|
570 |
+
<part name="sessionId" type="xsd:string"/>
|
571 |
+
</message>
|
572 |
+
<message name="tappzCatalogGetFrontPageResponse">
|
573 |
+
<part name="frontPage" type="typens:frontPage"/>
|
574 |
+
</message>
|
575 |
+
|
576 |
+
<message name="tappzCatalogGetCategoriesRequest">
|
577 |
+
<part name="sessionId" type="xsd:string"/>
|
578 |
+
</message>
|
579 |
+
<message name="tappzCatalogGetCategoriesResponse">
|
580 |
+
<part name="category" type="typens:categoryList"/>
|
581 |
+
</message>
|
582 |
+
|
583 |
+
<message name="tappzCatalogGetCategoryRequest">
|
584 |
+
<part name="sessionId" type="xsd:string"/>
|
585 |
+
<part name="categoryId" type="xsd:string"/>
|
586 |
+
</message>
|
587 |
+
<message name="tappzCatalogGetCategoryResponse">
|
588 |
+
<part name="category" type="typens:category"/>
|
589 |
+
</message>
|
590 |
+
|
591 |
+
<message name="tappzCatalogGetProductListRequest">
|
592 |
+
<part name="sessionId" type="xsd:string"/>
|
593 |
+
<part name="phrase" type="xsd:string"/>
|
594 |
+
<part name="categoryId" type="xsd:string"/>
|
595 |
+
<part name="pageNumber" type="xsd:integer"/>
|
596 |
+
<part name="pageSize" type="xsd:integer"/>
|
597 |
+
<part name="filterQuery" type="xsd:string"/>
|
598 |
+
<part name="sort" type="xsd:string"/>
|
599 |
+
</message>
|
600 |
+
<message name="tappzCatalogGetProductListResponse">
|
601 |
+
<part name="category" type="typens:searchResult"/>
|
602 |
+
</message>
|
603 |
+
|
604 |
+
<message name="tappzCatalogGetProductRequest">
|
605 |
+
<part name="sessionId" type="xsd:string"/>
|
606 |
+
<part name="productId" type="xsd:string"/>
|
607 |
+
</message>
|
608 |
+
<message name="tappzCatalogGetProductResponse">
|
609 |
+
<part name="product" type="typens:product"/>
|
610 |
+
</message>
|
611 |
+
|
612 |
+
<message name="tappzCatalogGetRelatedProductsRequest">
|
613 |
+
<part name="sessionId" type="xsd:string"/>
|
614 |
+
<part name="productId" type="xsd:string"/>
|
615 |
+
</message>
|
616 |
+
<message name="tappzCatalogGetRelatedProductsResponse">
|
617 |
+
<part name="productList" type="typens:productList"/>
|
618 |
+
</message>
|
619 |
+
|
620 |
+
<message name="tappzCatalogGetChildProductIdRequest">
|
621 |
+
<part name="sessionId" type="xsd:string"/>
|
622 |
+
<part name="parentProductId" type="xsd:string"/>
|
623 |
+
<part name="variant" type="typens:groupList"/>
|
624 |
+
</message>
|
625 |
+
<message name="tappzCatalogGetChildProductIdResponse">
|
626 |
+
<part name="childProductId" type="xsd:string"/>
|
627 |
+
</message>
|
628 |
+
<!--catalog -->
|
629 |
+
|
630 |
+
<!--customer-->
|
631 |
+
<message name="tappzCustomerInfoRequest">
|
632 |
+
<part name="sessionId" type="xsd:string"/>
|
633 |
+
<part name="customerId" type="xsd:string"/>
|
634 |
+
</message>
|
635 |
+
<message name="tappzCustomerInfoResponse">
|
636 |
+
<part name="customer" type="typens:customer"/>
|
637 |
+
</message>
|
638 |
+
|
639 |
+
<message name="tappzCustomerLoginRequest">
|
640 |
+
<part name="sessionId" type="xsd:string"/>
|
641 |
+
<part name="username" type="xsd:string"/>
|
642 |
+
<part name="password" type="xsd:string"/>
|
643 |
+
</message>
|
644 |
+
<message name="tappzCustomerLoginResponse">
|
645 |
+
<part name="customer" type="typens:customer"/>
|
646 |
+
</message>
|
647 |
+
|
648 |
+
<message name="tappzCustomerFacebookLoginRequest">
|
649 |
+
<part name="sessionId" type="xsd:string"/>
|
650 |
+
<part name="facebookAccessToken" type="xsd:string"/>
|
651 |
+
<part name="facebookUserId" type="xsd:string"/>
|
652 |
+
</message>
|
653 |
+
<message name="tappzCustomerFacebookLoginResponse">
|
654 |
+
<part name="customer" type="typens:customer"/>
|
655 |
+
</message>
|
656 |
+
|
657 |
+
<message name="tappzCustomerRegisterRequest">
|
658 |
+
<part name="sessionId" type="xsd:string"/>
|
659 |
+
<part name="customer" type="typens:customer"/>
|
660 |
+
</message>
|
661 |
+
<message name="tappzCustomerRegisterResponse">
|
662 |
+
<part name="customer" type="typens:customer"/>
|
663 |
+
</message>
|
664 |
+
|
665 |
+
<message name="tappzCustomerUpdateRequest">
|
666 |
+
<part name="sessionId" type="xsd:string"/>
|
667 |
+
<part name="customer" type="typens:customer"/>
|
668 |
+
</message>
|
669 |
+
<message name="tappzCustomerUpdateResponse">
|
670 |
+
<part name="customer" type="typens:customer"/>
|
671 |
+
</message>
|
672 |
+
|
673 |
+
<message name="tappzCustomerLostPasswordRequest">
|
674 |
+
<part name="sessionId" type="xsd:string"/>
|
675 |
+
<part name="email" type="xsd:string"/>
|
676 |
+
</message>
|
677 |
+
<message name="tappzCustomerLostPasswordResponse">
|
678 |
+
<part name="result" type="xsd:string"/>
|
679 |
+
</message>
|
680 |
+
|
681 |
+
<message name="tappzCustomerGetUserAgreementRequest">
|
682 |
+
<part name="sessionId" type="xsd:string"/>
|
683 |
+
</message>
|
684 |
+
<message name="tappzCustomerGetUserAgreementResponse">
|
685 |
+
<part name="agreement" type="xsd:string"/>
|
686 |
+
</message>
|
687 |
+
<!--customer-->
|
688 |
+
|
689 |
+
<!--customer_address-->
|
690 |
+
<message name="tappzCustomerAddressGetListRequest">
|
691 |
+
<part name="sessionId" type="xsd:string"/>
|
692 |
+
<part name="customerId" type="xsd:string"/>
|
693 |
+
</message>
|
694 |
+
<message name="tappzCustomerAddressGetListResponse">
|
695 |
+
<part name="list" type="typens:addressList"/>
|
696 |
+
</message>
|
697 |
+
|
698 |
+
<message name="tappzCustomerAddressCreateRequest">
|
699 |
+
<part name="sessionId" type="xsd:string"/>
|
700 |
+
<part name="customerId" type="xsd:string"/>
|
701 |
+
<part name="address" type="typens:address"/>
|
702 |
+
</message>
|
703 |
+
<message name="tappzCustomerAddressCreateResponse">
|
704 |
+
<part name="address" type="typens:address"/>
|
705 |
+
</message>
|
706 |
+
|
707 |
+
<message name="tappzCustomerAddressUpdateRequest">
|
708 |
+
<part name="sessionId" type="xsd:string"/>
|
709 |
+
<part name="address" type="typens:address"/>
|
710 |
+
</message>
|
711 |
+
<message name="tappzCustomerAddressUpdateResponse">
|
712 |
+
<part name="address" type="typens:address"/>
|
713 |
+
</message>
|
714 |
+
|
715 |
+
<message name="tappzCustomerAddressDeleteRequest">
|
716 |
+
<part name="sessionId" type="xsd:string"/>
|
717 |
+
<part name="address" type="typens:address"/>
|
718 |
+
</message>
|
719 |
+
<message name="tappzCustomerAddressDeleteResponse">
|
720 |
+
<part name="addressId" type="xsd:string"/>
|
721 |
+
</message>
|
722 |
+
|
723 |
+
<message name="tappzCustomerAddressCountryListRequest">
|
724 |
+
<part name="sessionId" type="xsd:string"/>
|
725 |
+
</message>
|
726 |
+
<message name="tappzCustomerAddressCountryListResponse">
|
727 |
+
<part name="list" type="typens:locationList"/>
|
728 |
+
</message>
|
729 |
+
|
730 |
+
<message name="tappzCustomerAddressStateListRequest">
|
731 |
+
<part name="sessionId" type="xsd:string"/>
|
732 |
+
<part name="countryCode" type="xsd:string"/>
|
733 |
+
</message>
|
734 |
+
<message name="tappzCustomerAddressStateListResponse">
|
735 |
+
<part name="list" type="typens:locationList"/>
|
736 |
+
</message>
|
737 |
+
|
738 |
+
<message name="tappzCustomerAddressCityListRequest">
|
739 |
+
<part name="sessionId" type="xsd:string"/>
|
740 |
+
<part name="stateCode" type="xsd:string"/>
|
741 |
+
</message>
|
742 |
+
<message name="tappzCustomerAddressCityListResponse">
|
743 |
+
<part name="list" type="typens:locationList"/>
|
744 |
+
</message>
|
745 |
+
|
746 |
+
<message name="tappzCustomerAddressDistrictListRequest">
|
747 |
+
<part name="sessionId" type="xsd:string"/>
|
748 |
+
<part name="districtCode" type="xsd:string"/>
|
749 |
+
</message>
|
750 |
+
<message name="tappzCustomerAddressDistrictListResponse">
|
751 |
+
<part name="list" type="typens:locationList"/>
|
752 |
+
</message>
|
753 |
+
|
754 |
+
<message name="tappzCustomerAddressTownListRequest">
|
755 |
+
<part name="sessionId" type="xsd:string"/>
|
756 |
+
<part name="districtCode" type="xsd:string"/>
|
757 |
+
</message>
|
758 |
+
<message name="tappzCustomerAddressTownListResponse">
|
759 |
+
<part name="list" type="typens:locationList"/>
|
760 |
+
</message>
|
761 |
+
<!--customer_address-->
|
762 |
+
|
763 |
+
<!--customer_order-->
|
764 |
+
<message name="tappzCustomerOrderGetListRequest">
|
765 |
+
<part name="sessionId" type="xsd:string"/>
|
766 |
+
<part name="customerId" type="xsd:string"/>
|
767 |
+
</message>
|
768 |
+
<message name="tappzCustomerOrderGetListResponse">
|
769 |
+
<part name="list" type="typens:orderList"/>
|
770 |
+
</message>
|
771 |
+
|
772 |
+
<message name="tappzCustomerOrderInfoRequest">
|
773 |
+
<part name="sessionId" type="xsd:string"/>
|
774 |
+
<part name="orderId" type="xsd:string"/>
|
775 |
+
</message>
|
776 |
+
<message name="tappzCustomerOrderInfoResponse">
|
777 |
+
<part name="order" type="typens:order"/>
|
778 |
+
</message>
|
779 |
+
<!--customer_order-->
|
780 |
+
|
781 |
+
<!--basket-->
|
782 |
+
<message name="tappzBasketGetRequest">
|
783 |
+
<part name="sessionId" type="xsd:string"/>
|
784 |
+
<part name="quoteId" type="xsd:string"/>
|
785 |
+
<part name="customerId" type="xsd:string"/>
|
786 |
+
</message>
|
787 |
+
<message name="tappzBasketGetResponse">
|
788 |
+
<part name="basket" type="typens:basket"/>
|
789 |
+
</message>
|
790 |
+
|
791 |
+
<message name="tappzBasketMergeRequest">
|
792 |
+
<part name="sessionId" type="xsd:string"/>
|
793 |
+
<part name="anonymousQuoteId" type="xsd:string"/>
|
794 |
+
<part name="customerId" type="xsd:string"/>
|
795 |
+
</message>
|
796 |
+
<message name="tappzBasketMergeResponse">
|
797 |
+
<part name="basket" type="typens:basket"/>
|
798 |
+
</message>
|
799 |
+
|
800 |
+
<message name="tappzBasketUpdateItemsRequest">
|
801 |
+
<part name="sessionId" type="xsd:string"/>
|
802 |
+
<part name="quoteId" type="xsd:string"/>
|
803 |
+
<part name="update" type="typens:basketUpdateList"/>
|
804 |
+
</message>
|
805 |
+
<message name="tappzBasketUpdateItemsResponse">
|
806 |
+
<part name="basket" type="typens:basket"/>
|
807 |
+
</message>
|
808 |
+
|
809 |
+
<message name="tappzBasketSetAddressRequest">
|
810 |
+
<part name="sessionId" type="xsd:string"/>
|
811 |
+
<part name="quoteId" type="xsd:string"/>
|
812 |
+
<part name="shippingAddressId" type="xsd:string"/>
|
813 |
+
<part name="billingAddressId" type="xsd:string"/>
|
814 |
+
<part name="shippingMethodId" type="xsd:string"/>
|
815 |
+
</message>
|
816 |
+
<message name="tappzBasketSetAddressResponse">
|
817 |
+
<part name="basket" type="typens:basket"/>
|
818 |
+
</message>
|
819 |
+
|
820 |
+
<message name="tappzBasketSetGiftWrappingRequest">
|
821 |
+
<part name="sessionId" type="xsd:string"/>
|
822 |
+
<part name="quoteId" type="xsd:string"/>
|
823 |
+
<part name="isSelected" type="xsd:boolean"/>
|
824 |
+
<part name="message" type="xsd:string"/>
|
825 |
+
</message>
|
826 |
+
<message name="tappzBasketSetGiftWrappingResponse">
|
827 |
+
<part name="basket" type="typens:basket"/>
|
828 |
+
</message>
|
829 |
+
|
830 |
+
<message name="tappzBasketUseDiscountRequest">
|
831 |
+
<part name="sessionId" type="xsd:string"/>
|
832 |
+
<part name="quoteId" type="xsd:string"/>
|
833 |
+
<part name="promoCode" type="xsd:string"/>
|
834 |
+
</message>
|
835 |
+
<message name="tappzBasketUseDiscountResponse">
|
836 |
+
<part name="basket" type="typens:basket"/>
|
837 |
+
</message>
|
838 |
+
|
839 |
+
<message name="tappzBasketDeleteDiscountRequest">
|
840 |
+
<part name="sessionId" type="xsd:string"/>
|
841 |
+
<part name="quoteId" type="xsd:string"/>
|
842 |
+
</message>
|
843 |
+
<message name="tappzBasketDeleteDiscountResponse">
|
844 |
+
<part name="basket" type="typens:basket"/>
|
845 |
+
</message>
|
846 |
+
|
847 |
+
<message name="tappzBasketUseGiftChequesRequest">
|
848 |
+
<part name="sessionId" type="xsd:string"/>
|
849 |
+
<part name="quoteId" type="xsd:string"/>
|
850 |
+
<part name="code" type="xsd:string"/>
|
851 |
+
</message>
|
852 |
+
<message name="tappzBasketUseGiftChequesResponse">
|
853 |
+
<part name="basket" type="typens:basket"/>
|
854 |
+
</message>
|
855 |
+
|
856 |
+
<message name="tappzBasketDeleteGiftChequesRequest">
|
857 |
+
<part name="sessionId" type="xsd:string"/>
|
858 |
+
<part name="quoteId" type="xsd:string"/>
|
859 |
+
</message>
|
860 |
+
<message name="tappzBasketDeleteGiftChequesResponse">
|
861 |
+
<part name="basket" type="typens:basket"/>
|
862 |
+
</message>
|
863 |
+
|
864 |
+
<message name="tappzBasketUseUserPointsRequest">
|
865 |
+
<part name="sessionId" type="xsd:string"/>
|
866 |
+
<part name="quoteId" type="xsd:string"/>
|
867 |
+
<part name="points" type="xsd:string"/>
|
868 |
+
</message>
|
869 |
+
<message name="tappzBasketUseUserPointsResponse">
|
870 |
+
<part name="basket" type="typens:basket"/>
|
871 |
+
</message>
|
872 |
+
|
873 |
+
<message name="tappzBasketSelectPaymentMethodRequest">
|
874 |
+
<part name="sessionId" type="xsd:string"/>
|
875 |
+
<part name="quoteId" type="xsd:string"/>
|
876 |
+
<part name="payment" type="typens:payment"/>
|
877 |
+
</message>
|
878 |
+
<message name="tappzBasketSelectPaymentMethodResponse">
|
879 |
+
<part name="basket" type="typens:basket"/>
|
880 |
+
</message>
|
881 |
+
|
882 |
+
<message name="tappzBasketGetContractRequest">
|
883 |
+
<part name="sessionId" type="xsd:string"/>
|
884 |
+
<part name="quoteId" type="xsd:string"/>
|
885 |
+
</message>
|
886 |
+
<message name="tappzBasketGetContractResponse">
|
887 |
+
<part name="contract" type="typens:basketContract"/>
|
888 |
+
</message>
|
889 |
+
|
890 |
+
<message name="tappzBasketPurchaseCreditCardRequest">
|
891 |
+
<part name="sessionId" type="xsd:string"/>
|
892 |
+
<part name="quoteId" type="xsd:string"/>
|
893 |
+
</message>
|
894 |
+
<message name="tappzBasketPurchaseCreditCardResponse">
|
895 |
+
<part name="order" type="typens:order"/>
|
896 |
+
</message>
|
897 |
+
|
898 |
+
<message name="tappzBasketPurchaseMoneyOrderRequest">
|
899 |
+
<part name="sessionId" type="xsd:string"/>
|
900 |
+
<part name="quoteId" type="xsd:string"/>
|
901 |
+
<part name="moneyOrderType" type="xsd:string"/>
|
902 |
+
</message>
|
903 |
+
<message name="tappzBasketPurchaseMoneyOrderResponse">
|
904 |
+
<part name="order" type="typens:order"/>
|
905 |
+
</message>
|
906 |
+
|
907 |
+
<message name="tappzBasketPurchaseCashOnDeliveryRequest">
|
908 |
+
<part name="sessionId" type="xsd:string"/>
|
909 |
+
<part name="quoteId" type="xsd:string"/>
|
910 |
+
<part name="cashOnDelivery" type="typens:cashOnDelivery"/>
|
911 |
+
</message>
|
912 |
+
<message name="tappzBasketPurchaseCashOnDeliveryResponse">
|
913 |
+
<part name="order" type="typens:order"/>
|
914 |
+
</message>
|
915 |
+
|
916 |
+
<message name="tappzBasketPurchaseWithPayPalRequest">
|
917 |
+
<part name="sessionId" type="xsd:string"/>
|
918 |
+
<part name="quoteId" type="xsd:string"/>
|
919 |
+
<part name="transactionId" type="xsd:string"/>
|
920 |
+
</message>
|
921 |
+
<message name="tappzBasketPurchaseWithPayPalResponse">
|
922 |
+
<part name="order" type="typens:order"/>
|
923 |
+
</message>
|
924 |
+
|
925 |
+
<message name="tappzBasketPurchaseWithApplePayRequest">
|
926 |
+
<part name="sessionId" type="xsd:string"/>
|
927 |
+
<part name="quoteId" type="xsd:string"/>
|
928 |
+
<part name="tokenId" type="xsd:string"/>
|
929 |
+
</message>
|
930 |
+
<message name="tappzBasketPurchaseWithApplePayResponse">
|
931 |
+
<part name="order" type="typens:order"/>
|
932 |
+
</message>
|
933 |
+
<!--basket-->
|
934 |
+
|
935 |
+
<portType name="{{var wsdl.handler}}PortType">
|
936 |
+
|
937 |
+
<!-- catalog -->
|
938 |
+
<operation name="tappzCatalogGetFrontPage">
|
939 |
+
<documentation>Get front page banner and product lists</documentation>
|
940 |
+
<input message="typens:tappzCatalogGetFrontPageRequest"/>
|
941 |
+
<output message="typens:tappzCatalogGetFrontPageResponse"/>
|
942 |
+
</operation>
|
943 |
+
<operation name="tappzCatalogGetCategories">
|
944 |
+
<documentation>Get root category list</documentation>
|
945 |
+
<input message="typens:tappzCatalogGetCategoriesRequest"/>
|
946 |
+
<output message="typens:tappzCatalogGetCategoriesResponse"/>
|
947 |
+
</operation>
|
948 |
+
<operation name="tappzCatalogGetCategory">
|
949 |
+
<documentation>Get a category with children</documentation>
|
950 |
+
<input message="typens:tappzCatalogGetCategoryRequest"/>
|
951 |
+
<output message="typens:tappzCatalogGetCategoryResponse"/>
|
952 |
+
</operation>
|
953 |
+
<operation name="tappzCatalogGetProductList">
|
954 |
+
<documentation>Get product list</documentation>
|
955 |
+
<input message="typens:tappzCatalogGetProductListRequest"/>
|
956 |
+
<output message="typens:tappzCatalogGetProductListResponse"/>
|
957 |
+
</operation>
|
958 |
+
<operation name="tappzCatalogGetProduct">
|
959 |
+
<documentation>Get product details</documentation>
|
960 |
+
<input message="typens:tappzCatalogGetProductRequest"/>
|
961 |
+
<output message="typens:tappzCatalogGetProductResponse"/>
|
962 |
+
</operation>
|
963 |
+
<operation name="tappzCatalogGetRelatedProducts">
|
964 |
+
<documentation>Get related products</documentation>
|
965 |
+
<input message="typens:tappzCatalogGetRelatedProductsRequest"/>
|
966 |
+
<output message="typens:tappzCatalogGetRelatedProductsResponse"/>
|
967 |
+
</operation>
|
968 |
+
<operation name="tappzCatalogGetChildProductId">
|
969 |
+
<documentation>Get related products</documentation>
|
970 |
+
<input message="typens:tappzCatalogGetChildProductIdRequest"/>
|
971 |
+
<output message="typens:tappzCatalogGetChildProductIdResponse"/>
|
972 |
+
</operation>
|
973 |
+
<!-- catalog -->
|
974 |
+
|
975 |
+
<!--customer-->
|
976 |
+
<operation name="tappzCustomerInfo">
|
977 |
+
<documentation>Retrieve customer info</documentation>
|
978 |
+
<input message="typens:tappzCustomerInfoRequest"/>
|
979 |
+
<output message="typens:tappzCustomerInfoResponse"/>
|
980 |
+
</operation>
|
981 |
+
<operation name="tappzCustomerLogin">
|
982 |
+
<documentation>Customer login</documentation>
|
983 |
+
<input message="typens:tappzCustomerLoginRequest"/>
|
984 |
+
<output message="typens:tappzCustomerLoginResponse"/>
|
985 |
+
</operation>
|
986 |
+
<operation name="tappzCustomerFacebookLogin">
|
987 |
+
<documentation>Login with Facebook</documentation>
|
988 |
+
<input message="typens:tappzCustomerFacebookLoginRequest"/>
|
989 |
+
<output message="typens:tappzCustomerFacebookLoginResponse"/>
|
990 |
+
</operation>
|
991 |
+
<operation name="tappzCustomerRegister">
|
992 |
+
<documentation>Customer registration</documentation>
|
993 |
+
<input message="typens:tappzCustomerRegisterRequest"/>
|
994 |
+
<output message="typens:tappzCustomerRegisterResponse"/>
|
995 |
+
</operation>
|
996 |
+
<operation name="tappzCustomerUpdate">
|
997 |
+
<documentation>Customer update</documentation>
|
998 |
+
<input message="typens:tappzCustomerUpdateRequest"/>
|
999 |
+
<output message="typens:tappzCustomerUpdateResponse"/>
|
1000 |
+
</operation>
|
1001 |
+
<operation name="tappzCustomerLostPassword">
|
1002 |
+
<documentation>Send lost password email</documentation>
|
1003 |
+
<input message="typens:tappzCustomerLostPasswordRequest"/>
|
1004 |
+
<output message="typens:tappzCustomerLostPasswordResponse"/>
|
1005 |
+
</operation>
|
1006 |
+
<operation name="tappzCustomerGetUserAgreement">
|
1007 |
+
<documentation>Retrieve User Agreement</documentation>
|
1008 |
+
<input message="typens:tappzCustomerGetUserAgreementRequest"/>
|
1009 |
+
<output message="typens:tappzCustomerGetUserAgreementResponse"/>
|
1010 |
+
</operation>
|
1011 |
+
<!--customer-->
|
1012 |
+
|
1013 |
+
<!--customer_address-->
|
1014 |
+
<operation name="tappzCustomerAddressGetList">
|
1015 |
+
<documentation>Retrieve User Agreement</documentation>
|
1016 |
+
<input message="typens:tappzCustomerAddressGetListRequest"/>
|
1017 |
+
<output message="typens:tappzCustomerAddressGetListResponse"/>
|
1018 |
+
</operation>
|
1019 |
+
<operation name="tappzCustomerAddressCreate">
|
1020 |
+
<documentation>Retrieve User Agreement</documentation>
|
1021 |
+
<input message="typens:tappzCustomerAddressCreateRequest"/>
|
1022 |
+
<output message="typens:tappzCustomerAddressCreateResponse"/>
|
1023 |
+
</operation>
|
1024 |
+
<operation name="tappzCustomerAddressUpdate">
|
1025 |
+
<documentation>Retrieve User Agreement</documentation>
|
1026 |
+
<input message="typens:tappzCustomerAddressUpdateRequest"/>
|
1027 |
+
<output message="typens:tappzCustomerAddressUpdateResponse"/>
|
1028 |
+
</operation>
|
1029 |
+
<operation name="tappzCustomerAddressDelete">
|
1030 |
+
<documentation>Retrieve User Agreement</documentation>
|
1031 |
+
<input message="typens:tappzCustomerAddressDeleteRequest"/>
|
1032 |
+
<output message="typens:tappzCustomerAddressDeleteResponse"/>
|
1033 |
+
</operation>
|
1034 |
+
<operation name="tappzCustomerAddressCountryList">
|
1035 |
+
<documentation>Retrieve User Agreement</documentation>
|
1036 |
+
<input message="typens:tappzCustomerAddressCountryListRequest"/>
|
1037 |
+
<output message="typens:tappzCustomerAddressCountryListResponse"/>
|
1038 |
+
</operation>
|
1039 |
+
<operation name="tappzCustomerAddressStateList">
|
1040 |
+
<documentation>Retrieve User Agreement</documentation>
|
1041 |
+
<input message="typens:tappzCustomerAddressStateListRequest"/>
|
1042 |
+
<output message="typens:tappzCustomerAddressStateListResponse"/>
|
1043 |
+
</operation>
|
1044 |
+
<operation name="tappzCustomerAddressCityList">
|
1045 |
+
<documentation>Retrieve User Agreement</documentation>
|
1046 |
+
<input message="typens:tappzCustomerAddressCityListRequest"/>
|
1047 |
+
<output message="typens:tappzCustomerAddressCityListResponse"/>
|
1048 |
+
</operation>
|
1049 |
+
<operation name="tappzCustomerAddressDistrictList">
|
1050 |
+
<documentation>Retrieve User Agreement</documentation>
|
1051 |
+
<input message="typens:tappzCustomerAddressDistrictListRequest"/>
|
1052 |
+
<output message="typens:tappzCustomerAddressDistrictListResponse"/>
|
1053 |
+
</operation>
|
1054 |
+
<operation name="tappzCustomerAddressTownList">
|
1055 |
+
<documentation>Retrieve User Agreement</documentation>
|
1056 |
+
<input message="typens:tappzCustomerAddressTownListRequest"/>
|
1057 |
+
<output message="typens:tappzCustomerAddressTownListResponse"/>
|
1058 |
+
</operation>
|
1059 |
+
<!--customer_address-->
|
1060 |
+
|
1061 |
+
<!--customer_order-->
|
1062 |
+
<operation name="tappzCustomerOrderGetList">
|
1063 |
+
<documentation>Retrieve User Agreement</documentation>
|
1064 |
+
<input message="typens:tappzCustomerOrderGetListRequest"/>
|
1065 |
+
<output message="typens:tappzCustomerOrderGetListResponse"/>
|
1066 |
+
</operation>
|
1067 |
+
<operation name="tappzCustomerOrderInfo">
|
1068 |
+
<documentation>Retrieve User Agreement</documentation>
|
1069 |
+
<input message="typens:tappzCustomerOrderInfoRequest"/>
|
1070 |
+
<output message="typens:tappzCustomerOrderInfoResponse"/>
|
1071 |
+
</operation>
|
1072 |
+
<!--customer_order-->
|
1073 |
+
|
1074 |
+
<!--basket-->
|
1075 |
+
<operation name="tappzBasketGet">
|
1076 |
+
<documentation>Get a basket</documentation>
|
1077 |
+
<input message="typens:tappzBasketGetRequest"/>
|
1078 |
+
<output message="typens:tappzBasketGetResponse"/>
|
1079 |
+
</operation>
|
1080 |
+
<operation name="tappzBasketMerge">
|
1081 |
+
<documentation>Retrieve User Agreement</documentation>
|
1082 |
+
<input message="typens:tappzBasketMergeRequest"/>
|
1083 |
+
<output message="typens:tappzBasketMergeResponse"/>
|
1084 |
+
</operation>
|
1085 |
+
<operation name="tappzBasketUpdateItems">
|
1086 |
+
<documentation>Retrieve User Agreement</documentation>
|
1087 |
+
<input message="typens:tappzBasketUpdateItemsRequest"/>
|
1088 |
+
<output message="typens:tappzBasketUpdateItemsResponse"/>
|
1089 |
+
</operation>
|
1090 |
+
<operation name="tappzBasketSetAddress">
|
1091 |
+
<documentation>Set basket shipping, billing address and shipping method</documentation>
|
1092 |
+
<input message="typens:tappzBasketSetAddressRequest"/>
|
1093 |
+
<output message="typens:tappzBasketSetAddressResponse"/>
|
1094 |
+
</operation>
|
1095 |
+
<operation name="tappzBasketSetGiftWrapping">
|
1096 |
+
<documentation>Set basket gift wrapping properties</documentation>
|
1097 |
+
<input message="typens:tappzBasketSetGiftWrappingRequest"/>
|
1098 |
+
<output message="typens:tappzBasketSetGiftWrappingResponse"/>
|
1099 |
+
</operation>
|
1100 |
+
<operation name="tappzBasketUseDiscount">
|
1101 |
+
<documentation>Set promo code to basket</documentation>
|
1102 |
+
<input message="typens:tappzBasketUseDiscountRequest"/>
|
1103 |
+
<output message="typens:tappzBasketUseDiscountResponse"/>
|
1104 |
+
</operation>
|
1105 |
+
<operation name="tappzBasketDeleteDiscount">
|
1106 |
+
<documentation>Delete promo code of a basket</documentation>
|
1107 |
+
<input message="typens:tappzBasketDeleteDiscountRequest"/>
|
1108 |
+
<output message="typens:tappzBasketDeleteDiscountResponse"/>
|
1109 |
+
</operation>
|
1110 |
+
<operation name="tappzBasketUseGiftCheques">
|
1111 |
+
<documentation>Set a gift check to a basket</documentation>
|
1112 |
+
<input message="typens:tappzBasketUseGiftChequesRequest"/>
|
1113 |
+
<output message="typens:tappzBasketUseGiftChequesResponse"/>
|
1114 |
+
</operation>
|
1115 |
+
<operation name="tappzBasketDeleteGiftCheques">
|
1116 |
+
<documentation>Delete gift cheques of a basket</documentation>
|
1117 |
+
<input message="typens:tappzBasketDeleteGiftChequesRequest"/>
|
1118 |
+
<output message="typens:tappzBasketDeleteGiftChequesResponse"/>
|
1119 |
+
</operation>
|
1120 |
+
<operation name="tappzBasketUseUserPoints">
|
1121 |
+
<documentation>User points in a basket</documentation>
|
1122 |
+
<input message="typens:tappzBasketUseUserPointsRequest"/>
|
1123 |
+
<output message="typens:tappzBasketUseUserPointsResponse"/>
|
1124 |
+
</operation>
|
1125 |
+
<operation name="tappzBasketSelectPaymentMethod">
|
1126 |
+
<documentation>Set payment type of a basket</documentation>
|
1127 |
+
<input message="typens:tappzBasketSelectPaymentMethodRequest"/>
|
1128 |
+
<output message="typens:tappzBasketSelectPaymentMethodResponse"/>
|
1129 |
+
</operation>
|
1130 |
+
<operation name="tappzBasketGetContract">
|
1131 |
+
<documentation>Retrieve Basket Agreement</documentation>
|
1132 |
+
<input message="typens:tappzBasketGetContractRequest"/>
|
1133 |
+
<output message="typens:tappzBasketGetContractResponse"/>
|
1134 |
+
</operation>
|
1135 |
+
<operation name="tappzBasketPurchaseCreditCard">
|
1136 |
+
<documentation>Purchase basket with credit card</documentation>
|
1137 |
+
<input message="typens:tappzBasketPurchaseCreditCardRequest"/>
|
1138 |
+
<output message="typens:tappzBasketPurchaseCreditCardResponse"/>
|
1139 |
+
</operation>
|
1140 |
+
<operation name="tappzBasketPurchaseMoneyOrder">
|
1141 |
+
<documentation>Purchase basket with money order</documentation>
|
1142 |
+
<input message="typens:tappzBasketPurchaseMoneyOrderRequest"/>
|
1143 |
+
<output message="typens:tappzBasketPurchaseMoneyOrderResponse"/>
|
1144 |
+
</operation>
|
1145 |
+
<operation name="tappzBasketPurchaseCashOnDelivery">
|
1146 |
+
<documentation>Purchase basket with cash on delivery</documentation>
|
1147 |
+
<input message="typens:tappzBasketPurchaseCashOnDeliveryRequest"/>
|
1148 |
+
<output message="typens:tappzBasketPurchaseCashOnDeliveryResponse"/>
|
1149 |
+
</operation>
|
1150 |
+
<operation name="tappzBasketPurchaseWithPayPal">
|
1151 |
+
<documentation>Purchase basket with paypal</documentation>
|
1152 |
+
<input message="typens:tappzBasketPurchaseWithPayPalRequest"/>
|
1153 |
+
<output message="typens:tappzBasketPurchaseWithPayPalResponse"/>
|
1154 |
+
</operation>
|
1155 |
+
<operation name="tappzBasketPurchaseWithApplePay">
|
1156 |
+
<documentation>Purchase basket with credit card</documentation>
|
1157 |
+
<input message="typens:tappzBasketPurchaseWithApplePayRequest"/>
|
1158 |
+
<output message="typens:tappzBasketPurchaseWithApplePayResponse"/>
|
1159 |
+
</operation>
|
1160 |
+
<!--basket-->
|
1161 |
+
</portType>
|
1162 |
+
|
1163 |
+
<binding name="{{var wsdl.handler}}Binding" type="typens:{{var wsdl.handler}}PortType">
|
1164 |
+
<soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
|
1165 |
+
|
1166 |
+
<!-- catalog -->
|
1167 |
+
<operation name="tappzCatalogGetFrontPage">
|
1168 |
+
<soap:operation soapAction="urn:{{var wsdl.handler}}Action"/>
|
1169 |
+
<input>
|
1170 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1171 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1172 |
+
</input>
|
1173 |
+
<output>
|
1174 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1175 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1176 |
+
</output>
|
1177 |
+
</operation>
|
1178 |
+
<operation name="tappzCatalogGetCategories">
|
1179 |
+
<soap:operation soapAction="urn:{{var wsdl.handler}}Action"/>
|
1180 |
+
<input>
|
1181 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1182 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1183 |
+
</input>
|
1184 |
+
<output>
|
1185 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1186 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1187 |
+
</output>
|
1188 |
+
</operation>
|
1189 |
+
<operation name="tappzCatalogGetCategory">
|
1190 |
+
<soap:operation soapAction="urn:{{var wsdl.handler}}Action"/>
|
1191 |
+
<input>
|
1192 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1193 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1194 |
+
</input>
|
1195 |
+
<output>
|
1196 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1197 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1198 |
+
</output>
|
1199 |
+
</operation>
|
1200 |
+
<operation name="tappzCatalogGetProductList">
|
1201 |
+
<soap:operation soapAction="urn:{{var wsdl.handler}}Action"/>
|
1202 |
+
<input>
|
1203 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1204 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1205 |
+
</input>
|
1206 |
+
<output>
|
1207 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1208 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1209 |
+
</output>
|
1210 |
+
</operation>
|
1211 |
+
<operation name="tappzCatalogGetProduct">
|
1212 |
+
<soap:operation soapAction="urn:{{var wsdl.handler}}Action"/>
|
1213 |
+
<input>
|
1214 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1215 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1216 |
+
</input>
|
1217 |
+
<output>
|
1218 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1219 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1220 |
+
</output>
|
1221 |
+
</operation>
|
1222 |
+
<operation name="tappzCatalogGetRelatedProducts">
|
1223 |
+
<soap:operation soapAction="urn:{{var wsdl.handler}}Action"/>
|
1224 |
+
<input>
|
1225 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1226 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1227 |
+
</input>
|
1228 |
+
<output>
|
1229 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1230 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1231 |
+
</output>
|
1232 |
+
</operation>
|
1233 |
+
<operation name="tappzCatalogGetChildProductId">
|
1234 |
+
<soap:operation soapAction="urn:{{var wsdl.handler}}Action"/>
|
1235 |
+
<input>
|
1236 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1237 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1238 |
+
</input>
|
1239 |
+
<output>
|
1240 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1241 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1242 |
+
</output>
|
1243 |
+
</operation>
|
1244 |
+
<!-- catalog -->
|
1245 |
+
|
1246 |
+
<!--customer-->
|
1247 |
+
<operation name="tappzCustomerInfo">
|
1248 |
+
<soap:operation soapAction="urn:{{var wsdl.handler}}Action"/>
|
1249 |
+
<input>
|
1250 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1251 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1252 |
+
</input>
|
1253 |
+
<output>
|
1254 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1255 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1256 |
+
</output>
|
1257 |
+
</operation>
|
1258 |
+
<operation name="tappzCustomerLogin">
|
1259 |
+
<soap:operation soapAction="urn:{{var wsdl.handler}}Action"/>
|
1260 |
+
<input>
|
1261 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1262 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1263 |
+
</input>
|
1264 |
+
<output>
|
1265 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1266 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1267 |
+
</output>
|
1268 |
+
</operation>
|
1269 |
+
<operation name="tappzCustomerFacebookLogin">
|
1270 |
+
<soap:operation soapAction="urn:{{var wsdl.handler}}Action"/>
|
1271 |
+
<input>
|
1272 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1273 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1274 |
+
</input>
|
1275 |
+
<output>
|
1276 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1277 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1278 |
+
</output>
|
1279 |
+
</operation>
|
1280 |
+
<operation name="tappzCustomerRegister">
|
1281 |
+
<soap:operation soapAction="urn:{{var wsdl.handler}}Action"/>
|
1282 |
+
<input>
|
1283 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1284 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1285 |
+
</input>
|
1286 |
+
<output>
|
1287 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1288 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1289 |
+
</output>
|
1290 |
+
</operation>
|
1291 |
+
<operation name="tappzCustomerUpdate">
|
1292 |
+
<soap:operation soapAction="urn:{{var wsdl.handler}}Action"/>
|
1293 |
+
<input>
|
1294 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1295 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1296 |
+
</input>
|
1297 |
+
<output>
|
1298 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1299 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1300 |
+
</output>
|
1301 |
+
</operation>
|
1302 |
+
<operation name="tappzCustomerLostPassword">
|
1303 |
+
<soap:operation soapAction="urn:{{var wsdl.handler}}Action"/>
|
1304 |
+
<input>
|
1305 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1306 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1307 |
+
</input>
|
1308 |
+
<output>
|
1309 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1310 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1311 |
+
</output>
|
1312 |
+
</operation>
|
1313 |
+
<operation name="tappzCustomerGetUserAgreement">
|
1314 |
+
<soap:operation soapAction="urn:{{var wsdl.handler}}Action"/>
|
1315 |
+
<input>
|
1316 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1317 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1318 |
+
</input>
|
1319 |
+
<output>
|
1320 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1321 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1322 |
+
</output>
|
1323 |
+
</operation>
|
1324 |
+
<!--customer-->
|
1325 |
+
|
1326 |
+
<!--customer_address-->
|
1327 |
+
<operation name="tappzCustomerAddressGetList">
|
1328 |
+
<soap:operation soapAction="urn:{{var wsdl.handler}}Action"/>
|
1329 |
+
<input>
|
1330 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1331 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1332 |
+
</input>
|
1333 |
+
<output>
|
1334 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1335 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1336 |
+
</output>
|
1337 |
+
</operation>
|
1338 |
+
<operation name="tappzCustomerAddressCreate">
|
1339 |
+
<soap:operation soapAction="urn:{{var wsdl.handler}}Action"/>
|
1340 |
+
<input>
|
1341 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1342 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1343 |
+
</input>
|
1344 |
+
<output>
|
1345 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1346 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1347 |
+
</output>
|
1348 |
+
</operation>
|
1349 |
+
<operation name="tappzCustomerAddressUpdate">
|
1350 |
+
<soap:operation soapAction="urn:{{var wsdl.handler}}Action"/>
|
1351 |
+
<input>
|
1352 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1353 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1354 |
+
</input>
|
1355 |
+
<output>
|
1356 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1357 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1358 |
+
</output>
|
1359 |
+
</operation>
|
1360 |
+
<operation name="tappzCustomerAddressDelete">
|
1361 |
+
<soap:operation soapAction="urn:{{var wsdl.handler}}Action"/>
|
1362 |
+
<input>
|
1363 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1364 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1365 |
+
</input>
|
1366 |
+
<output>
|
1367 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1368 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1369 |
+
</output>
|
1370 |
+
</operation>
|
1371 |
+
<operation name="tappzCustomerAddressCountryList">
|
1372 |
+
<soap:operation soapAction="urn:{{var wsdl.handler}}Action"/>
|
1373 |
+
<input>
|
1374 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1375 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1376 |
+
</input>
|
1377 |
+
<output>
|
1378 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1379 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1380 |
+
</output>
|
1381 |
+
</operation>
|
1382 |
+
<operation name="tappzCustomerAddressStateList">
|
1383 |
+
<soap:operation soapAction="urn:{{var wsdl.handler}}Action"/>
|
1384 |
+
<input>
|
1385 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1386 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1387 |
+
</input>
|
1388 |
+
<output>
|
1389 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1390 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1391 |
+
</output>
|
1392 |
+
</operation>
|
1393 |
+
<operation name="tappzCustomerAddressCityList">
|
1394 |
+
<soap:operation soapAction="urn:{{var wsdl.handler}}Action"/>
|
1395 |
+
<input>
|
1396 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1397 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1398 |
+
</input>
|
1399 |
+
<output>
|
1400 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1401 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1402 |
+
</output>
|
1403 |
+
</operation>
|
1404 |
+
<operation name="tappzCustomerAddressDistrictList">
|
1405 |
+
<soap:operation soapAction="urn:{{var wsdl.handler}}Action"/>
|
1406 |
+
<input>
|
1407 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1408 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1409 |
+
</input>
|
1410 |
+
<output>
|
1411 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1412 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1413 |
+
</output>
|
1414 |
+
</operation>
|
1415 |
+
<operation name="tappzCustomerAddressTownList">
|
1416 |
+
<soap:operation soapAction="urn:{{var wsdl.handler}}Action"/>
|
1417 |
+
<input>
|
1418 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1419 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1420 |
+
</input>
|
1421 |
+
<output>
|
1422 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1423 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1424 |
+
</output>
|
1425 |
+
</operation>
|
1426 |
+
<!--customer_address-->
|
1427 |
+
|
1428 |
+
<!--customer_order-->
|
1429 |
+
<operation name="tappzCustomerOrderGetList">
|
1430 |
+
<soap:operation soapAction="urn:{{var wsdl.handler}}Action"/>
|
1431 |
+
<input>
|
1432 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1433 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1434 |
+
</input>
|
1435 |
+
<output>
|
1436 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1437 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1438 |
+
</output>
|
1439 |
+
</operation>
|
1440 |
+
<operation name="tappzCustomerOrderInfo">
|
1441 |
+
<soap:operation soapAction="urn:{{var wsdl.handler}}Action"/>
|
1442 |
+
<input>
|
1443 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1444 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1445 |
+
</input>
|
1446 |
+
<output>
|
1447 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1448 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1449 |
+
</output>
|
1450 |
+
</operation>
|
1451 |
+
<!--customer_order-->
|
1452 |
+
|
1453 |
+
<!--basket-->
|
1454 |
+
<operation name="tappzBasketGet">
|
1455 |
+
<soap:operation soapAction="urn:{{var wsdl.handler}}Action"/>
|
1456 |
+
<input>
|
1457 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1458 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1459 |
+
</input>
|
1460 |
+
<output>
|
1461 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1462 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1463 |
+
</output>
|
1464 |
+
</operation>
|
1465 |
+
<operation name="tappzBasketMerge">
|
1466 |
+
<soap:operation soapAction="urn:{{var wsdl.handler}}Action"/>
|
1467 |
+
<input>
|
1468 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1469 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1470 |
+
</input>
|
1471 |
+
<output>
|
1472 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1473 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1474 |
+
</output>
|
1475 |
+
</operation>
|
1476 |
+
<operation name="tappzBasketUpdateItems">
|
1477 |
+
<soap:operation soapAction="urn:{{var wsdl.handler}}Action"/>
|
1478 |
+
<input>
|
1479 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1480 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1481 |
+
</input>
|
1482 |
+
<output>
|
1483 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1484 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1485 |
+
</output>
|
1486 |
+
</operation>
|
1487 |
+
<operation name="tappzBasketSetAddress">
|
1488 |
+
<soap:operation soapAction="urn:{{var wsdl.handler}}Action"/>
|
1489 |
+
<input>
|
1490 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1491 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1492 |
+
</input>
|
1493 |
+
<output>
|
1494 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1495 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1496 |
+
</output>
|
1497 |
+
</operation>
|
1498 |
+
<operation name="tappzBasketSetGiftWrapping">
|
1499 |
+
<soap:operation soapAction="urn:{{var wsdl.handler}}Action"/>
|
1500 |
+
<input>
|
1501 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1502 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1503 |
+
</input>
|
1504 |
+
<output>
|
1505 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1506 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1507 |
+
</output>
|
1508 |
+
</operation>
|
1509 |
+
<operation name="tappzBasketUseDiscount">
|
1510 |
+
<soap:operation soapAction="urn:{{var wsdl.handler}}Action"/>
|
1511 |
+
<input>
|
1512 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1513 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1514 |
+
</input>
|
1515 |
+
<output>
|
1516 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1517 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1518 |
+
</output>
|
1519 |
+
</operation>
|
1520 |
+
<operation name="tappzBasketDeleteDiscount">
|
1521 |
+
<soap:operation soapAction="urn:{{var wsdl.handler}}Action"/>
|
1522 |
+
<input>
|
1523 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1524 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1525 |
+
</input>
|
1526 |
+
<output>
|
1527 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1528 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1529 |
+
</output>
|
1530 |
+
</operation>
|
1531 |
+
<operation name="tappzBasketUseGiftCheques">
|
1532 |
+
<soap:operation soapAction="urn:{{var wsdl.handler}}Action"/>
|
1533 |
+
<input>
|
1534 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1535 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1536 |
+
</input>
|
1537 |
+
<output>
|
1538 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1539 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1540 |
+
</output>
|
1541 |
+
</operation>
|
1542 |
+
<operation name="tappzBasketDeleteGiftCheques">
|
1543 |
+
<soap:operation soapAction="urn:{{var wsdl.handler}}Action"/>
|
1544 |
+
<input>
|
1545 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1546 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1547 |
+
</input>
|
1548 |
+
<output>
|
1549 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1550 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1551 |
+
</output>
|
1552 |
+
</operation>
|
1553 |
+
<operation name="tappzBasketUseUserPoints">
|
1554 |
+
<soap:operation soapAction="urn:{{var wsdl.handler}}Action"/>
|
1555 |
+
<input>
|
1556 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1557 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1558 |
+
</input>
|
1559 |
+
<output>
|
1560 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1561 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1562 |
+
</output>
|
1563 |
+
</operation>
|
1564 |
+
<operation name="tappzBasketSelectPaymentMethod">
|
1565 |
+
<soap:operation soapAction="urn:{{var wsdl.handler}}Action"/>
|
1566 |
+
<input>
|
1567 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1568 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1569 |
+
</input>
|
1570 |
+
<output>
|
1571 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1572 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1573 |
+
</output>
|
1574 |
+
</operation>
|
1575 |
+
<operation name="tappzBasketGetContract">
|
1576 |
+
<soap:operation soapAction="urn:{{var wsdl.handler}}Action"/>
|
1577 |
+
<input>
|
1578 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1579 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1580 |
+
</input>
|
1581 |
+
<output>
|
1582 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1583 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1584 |
+
</output>
|
1585 |
+
</operation>
|
1586 |
+
<operation name="tappzBasketPurchaseCreditCard">
|
1587 |
+
<soap:operation soapAction="urn:{{var wsdl.handler}}Action"/>
|
1588 |
+
<input>
|
1589 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1590 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1591 |
+
</input>
|
1592 |
+
<output>
|
1593 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1594 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1595 |
+
</output>
|
1596 |
+
</operation>
|
1597 |
+
<operation name="tappzBasketPurchaseMoneyOrder">
|
1598 |
+
<soap:operation soapAction="urn:{{var wsdl.handler}}Action"/>
|
1599 |
+
<input>
|
1600 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1601 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1602 |
+
</input>
|
1603 |
+
<output>
|
1604 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1605 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1606 |
+
</output>
|
1607 |
+
</operation>
|
1608 |
+
<operation name="tappzBasketPurchaseCashOnDelivery">
|
1609 |
+
<soap:operation soapAction="urn:{{var wsdl.handler}}Action"/>
|
1610 |
+
<input>
|
1611 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1612 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1613 |
+
</input>
|
1614 |
+
<output>
|
1615 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1616 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1617 |
+
</output>
|
1618 |
+
</operation>
|
1619 |
+
<operation name="tappzBasketPurchaseWithPayPal">
|
1620 |
+
<soap:operation soapAction="urn:{{var wsdl.handler}}Action"/>
|
1621 |
+
<input>
|
1622 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1623 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1624 |
+
</input>
|
1625 |
+
<output>
|
1626 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1627 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1628 |
+
</output>
|
1629 |
+
</operation>
|
1630 |
+
<operation name="tappzBasketPurchaseWithApplePay">
|
1631 |
+
<soap:operation soapAction="urn:{{var wsdl.handler}}Action"/>
|
1632 |
+
<input>
|
1633 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1634 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1635 |
+
</input>
|
1636 |
+
<output>
|
1637 |
+
<soap:body namespace="urn:{{var wsdl.name}}" use="encoded"
|
1638 |
+
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
|
1639 |
+
</output>
|
1640 |
+
</operation>
|
1641 |
+
<!--basket-->
|
1642 |
+
</binding>
|
1643 |
+
|
1644 |
+
<service name="{{var wsdl.name}}Service">
|
1645 |
+
<port name="{{var wsdl.handler}}Port" binding="typens:{{var wsdl.handler}}Binding">
|
1646 |
+
<soap:address location="{{var wsdl.url}}"/>
|
1647 |
+
</port>
|
1648 |
+
</service>
|
1649 |
+
|
1650 |
+
</definitions>
|
package.xml
ADDED
@@ -0,0 +1,18 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0"?>
|
2 |
+
<package>
|
3 |
+
<name>Tmob_Tappz</name>
|
4 |
+
<version>1.0.8</version>
|
5 |
+
<stability>stable</stability>
|
6 |
+
<license uri="http://opensource.org/licenses/osl-3.0.php">Open Software License (OSL)</license>
|
7 |
+
<channel>community</channel>
|
8 |
+
<extends/>
|
9 |
+
<summary>t-appz Adapter for Magento</summary>
|
10 |
+
<description>t-appz Adapter for Magento</description>
|
11 |
+
<notes>t-appz Adapter for Magento</notes>
|
12 |
+
<authors><author><name>tmobtech </name><user>tmobLabs</user><email>info@tmobtech.com</email></author></authors>
|
13 |
+
<date>2015-10-09</date>
|
14 |
+
<time>22:19:58</time>
|
15 |
+
<contents><target name="magelocal"><dir name="TmobLabs"><dir name="Tappz"><dir name="Block"><file name="Info.php" hash="f656ba90ea77040abb27cf8858a5e8bb"/></dir><dir name="Helper"><file name="Data.php" hash="8587ca8f702e61ae1b57dd7739a674e6"/></dir><dir name="Model"><dir name="Basket"><dir name="Api"><file name="V2.php" hash="e5860165902a6e3f0e29e238397d40f3"/></dir><file name="Api.php" hash="aad5e348bdb3b7667255f8f3bda5c5a4"/></dir><dir name="Catalog"><dir name="Api"><file name="V2.php" hash="d28a03e359966fa0a0a9c48940ff4b2b"/></dir><file name="Api.php" hash="27fabfd66c1fd314e21697cda624b35c"/></dir><dir name="Customer"><dir name="Address"><dir name="Api"><file name="V2.php" hash="9a3ca989261966e5d9195274311db0e6"/></dir><file name="Api.php" hash="cd8b41365f3bb1ab0dc8ef779f01cfeb"/></dir><dir name="Api"><file name="V2.php" hash="5089c4a89f24f09ff6ed41903d04d210"/></dir><file name="Api.php" hash="43be089a8ac5944c8c5919c062588283"/><dir name="Order"><dir name="Api"><file name="V2.php" hash="9a4d34b33c98d7931c86a3af64718a88"/></dir><file name="Api.php" hash="10e9ead5309d4927663d2348444873e3"/></dir></dir><dir name="System"><dir name="Config"><file name="Action.php" hash="696379a81774cc7022565d3d22c263e6"/><file name="Address.php" hash="d7aed1d204c8fa4bbf833c22ee643bc4"/><file name="Category.php" hash="eb4af019ee4494bd305195442378957e"/><file name="Customer.php" hash="14e8962dc72e73319e632e751c009193"/><file name="Divider.php" hash="3a3b599ba29e053ec9b804975cab5b21"/><file name="Enabled.php" hash="8db7b92b36d79a153fab01ceee8c53bd"/><file name="Payment.php" hash="0216068de66b431fba037923ee30a81a"/><dir name="Product"><file name="Attribute.php" hash="62800e9eed8a06444560c351a25de6e3"/></dir><file name="Store.php" hash="ac29ff3d2a9b915ed3e78e8ac4eca999"/></dir></dir></dir><dir name="etc"><file name="adminhtml.xml" hash="35aaf132195e63f958f33b59bd981b3e"/><file name="api.xml" hash="f2812af730d2d3f4ce92ef164f3b693c"/><file name="config.xml" hash="93b957b86d745252c3e9746c0df9c3c6"/><file name="system.xml" hash="9613da2141caa6a716c3e7e6d06ef16c"/><file name="wsdl.xml" hash="ee6f0a1af3cebe17f7f63fa2284ec40a"/></dir></dir></dir></target></contents>
|
16 |
+
<compatible/>
|
17 |
+
<dependencies><required><php><min>5.1.0</min><max>6.0.0</max></php></required></dependencies>
|
18 |
+
</package>
|