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>
|
