Version Notes
1.5.0.0.22.1 version of package
internal svn revision #121425
Download this release
Release Info
Developer | Magento Core Team |
Extension | Magento_Mobile |
Version | 1.5.0.0.22.1 |
Comparing to | |
See all releases |
Code changes from version 1.4.2.0.22.1 to 1.5.0.0.22.1
- app/code/core/Mage/XmlConnect/Block/Cart.php +1 -1
- app/code/core/Mage/XmlConnect/Block/Cart/Crosssell.php +2 -1
- app/code/core/Mage/XmlConnect/Block/Cart/Item/Renderer.php +26 -13
- app/code/core/Mage/XmlConnect/Block/Cart/Paypal/Mep/Totals.php +1 -1
- app/code/core/Mage/XmlConnect/Block/Cart/Totals.php +0 -1
- app/code/core/Mage/XmlConnect/Block/Catalog/Category.php +3 -1
- app/code/core/Mage/XmlConnect/Block/Catalog/Product.php +10 -7
- app/code/core/Mage/XmlConnect/Block/Catalog/Product/Options.php +2 -2
- app/code/core/Mage/XmlConnect/Block/Catalog/Product/Options/Bundle.php +1 -2
- app/code/core/Mage/XmlConnect/Block/Catalog/Product/Options/Configurable.php +1 -2
- app/code/core/Mage/XmlConnect/Block/Catalog/Product/Options/Grouped.php +1 -2
- app/code/core/Mage/XmlConnect/Block/Catalog/Product/Price/Bundle.php +12 -34
- app/code/core/Mage/XmlConnect/Block/Checkout/Order/Review/Info.php +3 -5
- app/code/core/Mage/XmlConnect/Block/Checkout/Payment/Method/Info/Authorizenet.php +39 -1
- app/code/core/Mage/XmlConnect/Block/Checkout/Payment/Method/List.php +2 -4
- app/code/core/Mage/XmlConnect/Block/Checkout/Shipping/Method/Available.php +3 -3
- app/code/core/Mage/XmlConnect/Block/Customer/Address/List.php +4 -2
- app/code/core/Mage/XmlConnect/Block/Customer/Order/List.php +23 -8
- app/code/core/Mage/XmlConnect/Block/Review/Form.php +46 -23
- app/code/core/Mage/XmlConnect/Block/Wishlist.php +15 -14
- app/code/core/Mage/XmlConnect/Helper/Data.php +4 -5
- app/code/core/Mage/XmlConnect/Helper/Image.php +2 -1
- app/code/core/Mage/XmlConnect/Model/Corefix/Checkout/Session.php +0 -137
- app/code/core/Mage/XmlConnect/Model/Corefix/Checkout/Type/Onepage.php +0 -465
- app/code/core/Mage/XmlConnect/Model/Corefix/Sales/Quote.php +0 -427
- app/code/core/Mage/XmlConnect/Model/Payment/Method/Paypal/Mecl.php +12 -0
- app/code/core/Mage/XmlConnect/Model/Paypal/Mep/Checkout.php +2 -3
- app/code/core/Mage/XmlConnect/Model/Simplexml/Element.php +6 -2
- app/code/core/Mage/XmlConnect/controllers/CartController.php +1 -1
- app/code/core/Mage/XmlConnect/controllers/CheckoutController.php +4 -4
- app/code/core/Mage/XmlConnect/controllers/Paypal/MepController.php +4 -6
- app/code/core/Mage/XmlConnect/controllers/WishlistController.php +23 -6
- app/design/adminhtml/default/default/template/xmlconnect/mobile/notification_helper.phtml +6 -6
- package.xml +5 -5
app/code/core/Mage/XmlConnect/Block/Cart.php
CHANGED
@@ -91,7 +91,7 @@ class Mage_XmlConnect_Block_Cart extends Mage_Checkout_Block_Cart_Abstract
|
|
91 |
) {
|
92 |
$inclPrice = $_incl + $item->getWeeeTaxAppliedAmount();
|
93 |
} else {
|
94 |
-
$inclPrice
|
95 |
}
|
96 |
}
|
97 |
$exclPrice = Mage::helper('xmlconnect')->formatPriceForXml($exclPrice);
|
91 |
) {
|
92 |
$inclPrice = $_incl + $item->getWeeeTaxAppliedAmount();
|
93 |
} else {
|
94 |
+
$inclPrice = $_incl - $item->getWeeeTaxDisposition();
|
95 |
}
|
96 |
}
|
97 |
$exclPrice = Mage::helper('xmlconnect')->formatPriceForXml($exclPrice);
|
app/code/core/Mage/XmlConnect/Block/Cart/Crosssell.php
CHANGED
@@ -83,7 +83,8 @@ class Mage_XmlConnect_Block_Cart_Crosssell extends Mage_Checkout_Block_Cart_Cros
|
|
83 |
}
|
84 |
|
85 |
if ($this->getChild('product_price')) {
|
86 |
-
$this->getChild('product_price')->setProduct($product)
|
|
|
87 |
->collectProductPrices();
|
88 |
}
|
89 |
|
83 |
}
|
84 |
|
85 |
if ($this->getChild('product_price')) {
|
86 |
+
$this->getChild('product_price')->setProduct($product)
|
87 |
+
->setProductXmlObj($itemXmlObj)
|
88 |
->collectProductPrices();
|
89 |
}
|
90 |
|
app/code/core/Mage/XmlConnect/Block/Cart/Item/Renderer.php
CHANGED
@@ -55,10 +55,14 @@ class Mage_XmlConnect_Block_Cart_Item_Renderer extends Mage_Checkout_Block_Cart_
|
|
55 |
$value = null;
|
56 |
}
|
57 |
|
58 |
-
$optionsXmlObj->addCustomChild(
|
59 |
-
'
|
60 |
-
|
61 |
-
|
|
|
|
|
|
|
|
|
62 |
}
|
63 |
}
|
64 |
|
@@ -84,7 +88,8 @@ class Mage_XmlConnect_Block_Cart_Item_Renderer extends Mage_Checkout_Block_Cart_
|
|
84 |
if ($this->helper('tax')->displayCartPriceExclTax() || $this->helper('tax')->displayCartBothPrices()) {
|
85 |
if (Mage::helper('weee')->typeOfDisplay($_item, array(0, 1, 4), 'sales')
|
86 |
&& $_item->getWeeeTaxAppliedAmount()) {
|
87 |
-
$exclPrice = $_item->getRowTotal()
|
|
|
88 |
+ $_item->getWeeeTaxRowDisposition();
|
89 |
} else {
|
90 |
$exclPrice = $_item->getRowTotal();
|
@@ -207,10 +212,14 @@ class Mage_XmlConnect_Block_Cart_Item_Renderer extends Mage_Checkout_Block_Cart_
|
|
207 |
$amount = $tax['amount'];
|
208 |
}
|
209 |
|
210 |
-
$weeeXmlObj->addCustomChild(
|
211 |
-
'
|
212 |
-
|
213 |
-
|
|
|
|
|
|
|
|
|
214 |
}
|
215 |
} elseif ($_item->getWeeeTaxAppliedAmount()
|
216 |
&& ($typeOfDisplay2 || Mage::helper('weee')->typeOfDisplay($_item, 4, 'sales'))
|
@@ -223,10 +232,14 @@ class Mage_XmlConnect_Block_Cart_Item_Renderer extends Mage_Checkout_Block_Cart_
|
|
223 |
$amount = $tax['amount_incl_tax'];
|
224 |
}
|
225 |
|
226 |
-
$weeeXmlObj->addCustomChild(
|
227 |
-
'
|
228 |
-
|
229 |
-
|
|
|
|
|
|
|
|
|
230 |
}
|
231 |
}
|
232 |
|
55 |
$value = null;
|
56 |
}
|
57 |
|
58 |
+
$optionsXmlObj->addCustomChild(
|
59 |
+
'option',
|
60 |
+
$value,
|
61 |
+
array(
|
62 |
+
'label' => $this->htmlEscape($_option['label']),
|
63 |
+
'value' => $_formattedOptionValue['value']
|
64 |
+
)
|
65 |
+
);
|
66 |
}
|
67 |
}
|
68 |
|
88 |
if ($this->helper('tax')->displayCartPriceExclTax() || $this->helper('tax')->displayCartBothPrices()) {
|
89 |
if (Mage::helper('weee')->typeOfDisplay($_item, array(0, 1, 4), 'sales')
|
90 |
&& $_item->getWeeeTaxAppliedAmount()) {
|
91 |
+
$exclPrice = $_item->getRowTotal()
|
92 |
+
+ $_item->getWeeeTaxAppliedRowAmount()
|
93 |
+ $_item->getWeeeTaxRowDisposition();
|
94 |
} else {
|
95 |
$exclPrice = $_item->getRowTotal();
|
212 |
$amount = $tax['amount'];
|
213 |
}
|
214 |
|
215 |
+
$weeeXmlObj->addCustomChild(
|
216 |
+
'item',
|
217 |
+
null,
|
218 |
+
array(
|
219 |
+
'name' => $tax['title'],
|
220 |
+
'amount' => $this->_formatPrice($amount)
|
221 |
+
)
|
222 |
+
);
|
223 |
}
|
224 |
} elseif ($_item->getWeeeTaxAppliedAmount()
|
225 |
&& ($typeOfDisplay2 || Mage::helper('weee')->typeOfDisplay($_item, 4, 'sales'))
|
232 |
$amount = $tax['amount_incl_tax'];
|
233 |
}
|
234 |
|
235 |
+
$weeeXmlObj->addCustomChild(
|
236 |
+
'item',
|
237 |
+
null,
|
238 |
+
array(
|
239 |
+
'name' => $tax['title'],
|
240 |
+
'amount' => $this->_formatPrice($amount)
|
241 |
+
)
|
242 |
+
);
|
243 |
}
|
244 |
}
|
245 |
|
app/code/core/Mage/XmlConnect/Block/Cart/Paypal/Mep/Totals.php
CHANGED
@@ -43,7 +43,7 @@ class Mage_XmlConnect_Block_Cart_Paypal_Mep_Totals extends Mage_Checkout_Block_C
|
|
43 |
/** @var $paypalCart Mage_Paypal_Model_Cart */
|
44 |
$paypalCart = Mage::getModel('paypal/cart', array($this->getQuote()));
|
45 |
/** @var $totalsXmlObj Mage_XmlConnect_Model_Simplexml_Element */
|
46 |
-
$totalsXmlObj
|
47 |
foreach ($paypalCart->getTotals(true) as $code => $amount) {
|
48 |
$currencyAmount = $this->helper('core')->currency($amount, false, false);
|
49 |
$totalsXmlObj->addChild($code, sprintf('%01.2F', $currencyAmount));
|
43 |
/** @var $paypalCart Mage_Paypal_Model_Cart */
|
44 |
$paypalCart = Mage::getModel('paypal/cart', array($this->getQuote()));
|
45 |
/** @var $totalsXmlObj Mage_XmlConnect_Model_Simplexml_Element */
|
46 |
+
$totalsXmlObj = Mage::getModel('xmlconnect/simplexml_element', '<cart_totals></cart_totals>');
|
47 |
foreach ($paypalCart->getTotals(true) as $code => $amount) {
|
48 |
$currencyAmount = $this->helper('core')->currency($amount, false, false);
|
49 |
$totalsXmlObj->addChild($code, sprintf('%01.2F', $currencyAmount));
|
app/code/core/Mage/XmlConnect/Block/Cart/Totals.php
CHANGED
@@ -100,7 +100,6 @@ class Mage_XmlConnect_Block_Cart_Totals extends Mage_Checkout_Block_Cart_Totals
|
|
100 |
$title,
|
101 |
$grandTotalExlTax
|
102 |
);
|
103 |
-
|
104 |
$code = $code . '_incl_tax';
|
105 |
$title = $this->__('Grand Total (Incl. Tax)');
|
106 |
}
|
100 |
$title,
|
101 |
$grandTotalExlTax
|
102 |
);
|
|
|
103 |
$code = $code . '_incl_tax';
|
104 |
$title = $this->__('Grand Total (Incl. Tax)');
|
105 |
}
|
app/code/core/Mage/XmlConnect/Block/Catalog/Category.php
CHANGED
@@ -88,7 +88,9 @@ class Mage_XmlConnect_Block_Catalog_Category extends Mage_XmlConnect_Block_Catal
|
|
88 |
}
|
89 |
$icon = Mage::helper('xmlconnect/catalog_category_image')
|
90 |
->initialize($item, 'thumbnail')
|
91 |
-
->resize(
|
|
|
|
|
92 |
|
93 |
$iconXml = $itemXmlObj->addChild('icon', $icon);
|
94 |
|
88 |
}
|
89 |
$icon = Mage::helper('xmlconnect/catalog_category_image')
|
90 |
->initialize($item, 'thumbnail')
|
91 |
+
->resize(
|
92 |
+
Mage::helper('xmlconnect/image')->getImageSizeForContent('category')
|
93 |
+
);
|
94 |
|
95 |
$iconXml = $itemXmlObj->addChild('icon', $icon);
|
96 |
|
app/code/core/Mage/XmlConnect/Block/Catalog/Product.php
CHANGED
@@ -61,9 +61,7 @@ class Mage_XmlConnect_Block_Catalog_Product extends Mage_XmlConnect_Block_Catalo
|
|
61 |
$propertyToResizeName = 'image';
|
62 |
}
|
63 |
|
64 |
-
$icon = clone Mage::helper('catalog/image')
|
65 |
-
->init($product, $propertyToResizeName)
|
66 |
-
->resize($imageToResize);
|
67 |
|
68 |
$iconXml = $item->addChild('icon', $icon);
|
69 |
|
@@ -97,8 +95,14 @@ class Mage_XmlConnect_Block_Catalog_Product extends Mage_XmlConnect_Block_Catalo
|
|
97 |
Mage::getModel('review/review')->getEntitySummary($product, Mage::app()->getStore()->getId());
|
98 |
}
|
99 |
|
100 |
-
$item->addChild(
|
101 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
102 |
|
103 |
if ($this->getChild('product_price')) {
|
104 |
$this->getChild('product_price')->setProduct($product)->setProductXmlObj($item)
|
@@ -154,8 +158,7 @@ class Mage_XmlConnect_Block_Catalog_Product extends Mage_XmlConnect_Block_Catalo
|
|
154 |
}
|
155 |
}
|
156 |
|
157 |
-
$productOptions = $this->getChild('xmlconnect.catalog.product.options')
|
158 |
-
->getProductOptionsXmlObject($product);
|
159 |
if ($productOptions instanceof Mage_XmlConnect_Model_Simplexml_Element) {
|
160 |
$productXmlObj->appendChild($productOptions);
|
161 |
}
|
61 |
$propertyToResizeName = 'image';
|
62 |
}
|
63 |
|
64 |
+
$icon = clone Mage::helper('catalog/image')->init($product, $propertyToResizeName)->resize($imageToResize);
|
|
|
|
|
65 |
|
66 |
$iconXml = $item->addChild('icon', $icon);
|
67 |
|
95 |
Mage::getModel('review/review')->getEntitySummary($product, Mage::app()->getStore()->getId());
|
96 |
}
|
97 |
|
98 |
+
$item->addChild(
|
99 |
+
'rating_summary',
|
100 |
+
round((int)$product->getRatingSummary()->getRatingSummary() / 10)
|
101 |
+
);
|
102 |
+
$item->addChild(
|
103 |
+
'reviews_count',
|
104 |
+
$product->getRatingSummary()->getReviewsCount()
|
105 |
+
);
|
106 |
|
107 |
if ($this->getChild('product_price')) {
|
108 |
$this->getChild('product_price')->setProduct($product)->setProductXmlObj($item)
|
158 |
}
|
159 |
}
|
160 |
|
161 |
+
$productOptions = $this->getChild('xmlconnect.catalog.product.options')->getProductOptionsXmlObject($product);
|
|
|
162 |
if ($productOptions instanceof Mage_XmlConnect_Model_Simplexml_Element) {
|
163 |
$productXmlObj->appendChild($productOptions);
|
164 |
}
|
app/code/core/Mage/XmlConnect/Block/Catalog/Product/Options.php
CHANGED
@@ -60,7 +60,7 @@ class Mage_XmlConnect_Block_Catalog_Product_Options extends Mage_XmlConnect_Bloc
|
|
60 |
}
|
61 |
|
62 |
/**
|
63 |
-
* Create
|
64 |
*
|
65 |
* @param Mage_Catalog_Model_Product $product
|
66 |
* @return Mage_XmlConnect_Model_Simplexml_Element
|
@@ -179,7 +179,7 @@ class Mage_XmlConnect_Block_Catalog_Product_Options extends Mage_XmlConnect_Bloc
|
|
179 |
}
|
180 |
|
181 |
/**
|
182 |
-
* Create
|
183 |
*
|
184 |
* @param Mage_Catalog_Model_Product $product
|
185 |
* @return Mage_XmlConnect_Model_Simplexml_Element | false
|
60 |
}
|
61 |
|
62 |
/**
|
63 |
+
* Create produc custom options Mage_XmlConnect_Model_Simplexml_Element object
|
64 |
*
|
65 |
* @param Mage_Catalog_Model_Product $product
|
66 |
* @return Mage_XmlConnect_Model_Simplexml_Element
|
179 |
}
|
180 |
|
181 |
/**
|
182 |
+
* Create product custom options Mage_XmlConnect_Model_Simplexml_Element object
|
183 |
*
|
184 |
* @param Mage_Catalog_Model_Product $product
|
185 |
* @return Mage_XmlConnect_Model_Simplexml_Element | false
|
app/code/core/Mage/XmlConnect/Block/Catalog/Product/Options/Bundle.php
CHANGED
@@ -31,8 +31,7 @@
|
|
31 |
* @package Mage_XmlConnect
|
32 |
* @author Magento Core Team <core@magentocommerce.com>
|
33 |
*/
|
34 |
-
class Mage_XmlConnect_Block_Catalog_Product_Options_Bundle
|
35 |
-
extends Mage_XmlConnect_Block_Catalog_Product_Options
|
36 |
{
|
37 |
/**
|
38 |
* Generate bundle product options xml
|
31 |
* @package Mage_XmlConnect
|
32 |
* @author Magento Core Team <core@magentocommerce.com>
|
33 |
*/
|
34 |
+
class Mage_XmlConnect_Block_Catalog_Product_Options_Bundle extends Mage_XmlConnect_Block_Catalog_Product_Options
|
|
|
35 |
{
|
36 |
/**
|
37 |
* Generate bundle product options xml
|
app/code/core/Mage/XmlConnect/Block/Catalog/Product/Options/Configurable.php
CHANGED
@@ -31,8 +31,7 @@
|
|
31 |
* @package Mage_XmlConnect
|
32 |
* @author Magento Core Team <core@magentocommerce.com>
|
33 |
*/
|
34 |
-
class Mage_XmlConnect_Block_Catalog_Product_Options_Configurable
|
35 |
-
extends Mage_XmlConnect_Block_Catalog_Product_Options
|
36 |
{
|
37 |
/**
|
38 |
* Generate bundle product options xml
|
31 |
* @package Mage_XmlConnect
|
32 |
* @author Magento Core Team <core@magentocommerce.com>
|
33 |
*/
|
34 |
+
class Mage_XmlConnect_Block_Catalog_Product_Options_Configurable extends Mage_XmlConnect_Block_Catalog_Product_Options
|
|
|
35 |
{
|
36 |
/**
|
37 |
* Generate bundle product options xml
|
app/code/core/Mage/XmlConnect/Block/Catalog/Product/Options/Grouped.php
CHANGED
@@ -31,8 +31,7 @@
|
|
31 |
* @package Mage_XmlConnect
|
32 |
* @author Magento Core Team <core@magentocommerce.com>
|
33 |
*/
|
34 |
-
class Mage_XmlConnect_Block_Catalog_Product_Options_Grouped
|
35 |
-
extends Mage_XmlConnect_Block_Catalog_Product_Options
|
36 |
{
|
37 |
/**
|
38 |
* Generate bundle product options xml
|
31 |
* @package Mage_XmlConnect
|
32 |
* @author Magento Core Team <core@magentocommerce.com>
|
33 |
*/
|
34 |
+
class Mage_XmlConnect_Block_Catalog_Product_Options_Grouped extends Mage_XmlConnect_Block_Catalog_Product_Options
|
|
|
35 |
{
|
36 |
/**
|
37 |
* Generate bundle product options xml
|
app/code/core/Mage/XmlConnect/Block/Catalog/Product/Price/Bundle.php
CHANGED
@@ -110,12 +110,10 @@ class Mage_XmlConnect_Block_Catalog_Product_Price_Bundle
|
|
110 |
}
|
111 |
$weeeItemXmlObj = $weeeXmlObj->addChild('item');
|
112 |
$weeeItemXmlObj->addAttribute(
|
113 |
-
'name',
|
114 |
-
$weeeItemXmlObj->escapeXml($_weeeTaxAttribute->getName())
|
115 |
);
|
116 |
$weeeItemXmlObj->addAttribute(
|
117 |
-
'amount',
|
118 |
-
$_coreHelper->currency($amount, true, false)
|
119 |
);
|
120 |
}
|
121 |
}
|
@@ -142,13 +140,9 @@ class Mage_XmlConnect_Block_Catalog_Product_Price_Bundle
|
|
142 |
}
|
143 |
$weeeItemXmlObj = $weeeXmlObj->addChild('item');
|
144 |
$weeeItemXmlObj->addAttribute(
|
145 |
-
'name',
|
146 |
-
$weeeItemXmlObj->escapeXml($_weeeTaxAttribute->getName())
|
147 |
-
);
|
148 |
-
$weeeItemXmlObj->addAttribute(
|
149 |
-
'amount',
|
150 |
-
$_coreHelper->currency($amount, true, false)
|
151 |
);
|
|
|
152 |
}
|
153 |
}
|
154 |
if ($_weeeHelper->typeOfDisplay($product, 2) && $_weeeTaxAmount) {
|
@@ -182,13 +176,9 @@ class Mage_XmlConnect_Block_Catalog_Product_Price_Bundle
|
|
182 |
}
|
183 |
$weeeItemXmlObj = $weeeXmlObj->addChild('item');
|
184 |
$weeeItemXmlObj->addAttribute(
|
185 |
-
'name',
|
186 |
-
$weeeItemXmlObj->escapeXml($_weeeTaxAttribute->getName())
|
187 |
-
);
|
188 |
-
$weeeItemXmlObj->addAttribute(
|
189 |
-
'amount',
|
190 |
-
$_coreHelper->currency($amount, true, false)
|
191 |
);
|
|
|
192 |
}
|
193 |
}
|
194 |
$priceXmlObj->addAttribute(
|
@@ -214,13 +204,9 @@ class Mage_XmlConnect_Block_Catalog_Product_Price_Bundle
|
|
214 |
}
|
215 |
$weeeItemXmlObj = $weeeXmlObj->addChild('item');
|
216 |
$weeeItemXmlObj->addAttribute(
|
217 |
-
'name',
|
218 |
-
$weeeItemXmlObj->escapeXml($_weeeTaxAttribute->getName())
|
219 |
-
);
|
220 |
-
$weeeItemXmlObj->addAttribute(
|
221 |
-
'amount',
|
222 |
-
$_coreHelper->currency($amount, true, false)
|
223 |
);
|
|
|
224 |
}
|
225 |
}
|
226 |
if ($_weeeHelper->typeOfDisplay($product, 2) && $_weeeTaxAmount) {
|
@@ -263,24 +249,16 @@ class Mage_XmlConnect_Block_Catalog_Product_Price_Bundle
|
|
263 |
}
|
264 |
$weeeItemXmlObj = $weeeXmlObj->addChild('item');
|
265 |
$weeeItemXmlObj->addAttribute(
|
266 |
-
'name',
|
267 |
-
$weeeItemXmlObj->escapeXml($_weeeTaxAttribute->getName())
|
268 |
-
);
|
269 |
-
$weeeItemXmlObj->addAttribute(
|
270 |
-
'amount',
|
271 |
-
$_coreHelper->currency($amount, true, false)
|
272 |
);
|
|
|
273 |
}
|
274 |
}
|
275 |
$priceXmlObj->addAttribute(
|
276 |
-
'to_including_tax',
|
277 |
-
$_coreHelper->currency($_maximalPriceInclTax, true, false)
|
278 |
);
|
279 |
} else {
|
280 |
-
$priceXmlObj->addAttribute(
|
281 |
-
'to',
|
282 |
-
$_coreHelper->currency($_maximalPriceTax, true, false)
|
283 |
-
);
|
284 |
if ($_weeeTaxAmount && $product->getPriceType() == 1
|
285 |
&& $_weeeHelper->typeOfDisplay($product, array(2, 1, 4))
|
286 |
) {
|
110 |
}
|
111 |
$weeeItemXmlObj = $weeeXmlObj->addChild('item');
|
112 |
$weeeItemXmlObj->addAttribute(
|
113 |
+
'name', $weeeItemXmlObj->escapeXml($_weeeTaxAttribute->getName())
|
|
|
114 |
);
|
115 |
$weeeItemXmlObj->addAttribute(
|
116 |
+
'amount', $_coreHelper->currency($amount, true, false)
|
|
|
117 |
);
|
118 |
}
|
119 |
}
|
140 |
}
|
141 |
$weeeItemXmlObj = $weeeXmlObj->addChild('item');
|
142 |
$weeeItemXmlObj->addAttribute(
|
143 |
+
'name', $weeeItemXmlObj->escapeXml($_weeeTaxAttribute->getName())
|
|
|
|
|
|
|
|
|
|
|
144 |
);
|
145 |
+
$weeeItemXmlObj->addAttribute('amount', $_coreHelper->currency($amount, true, false));
|
146 |
}
|
147 |
}
|
148 |
if ($_weeeHelper->typeOfDisplay($product, 2) && $_weeeTaxAmount) {
|
176 |
}
|
177 |
$weeeItemXmlObj = $weeeXmlObj->addChild('item');
|
178 |
$weeeItemXmlObj->addAttribute(
|
179 |
+
'name', $weeeItemXmlObj->escapeXml($_weeeTaxAttribute->getName())
|
|
|
|
|
|
|
|
|
|
|
180 |
);
|
181 |
+
$weeeItemXmlObj->addAttribute('amount', $_coreHelper->currency($amount, true, false));
|
182 |
}
|
183 |
}
|
184 |
$priceXmlObj->addAttribute(
|
204 |
}
|
205 |
$weeeItemXmlObj = $weeeXmlObj->addChild('item');
|
206 |
$weeeItemXmlObj->addAttribute(
|
207 |
+
'name', $weeeItemXmlObj->escapeXml($_weeeTaxAttribute->getName())
|
|
|
|
|
|
|
|
|
|
|
208 |
);
|
209 |
+
$weeeItemXmlObj->addAttribute('amount', $_coreHelper->currency($amount, true, false));
|
210 |
}
|
211 |
}
|
212 |
if ($_weeeHelper->typeOfDisplay($product, 2) && $_weeeTaxAmount) {
|
249 |
}
|
250 |
$weeeItemXmlObj = $weeeXmlObj->addChild('item');
|
251 |
$weeeItemXmlObj->addAttribute(
|
252 |
+
'name', $weeeItemXmlObj->escapeXml($_weeeTaxAttribute->getName())
|
|
|
|
|
|
|
|
|
|
|
253 |
);
|
254 |
+
$weeeItemXmlObj->addAttribute('amount', $_coreHelper->currency($amount, true, false));
|
255 |
}
|
256 |
}
|
257 |
$priceXmlObj->addAttribute(
|
258 |
+
'to_including_tax', $_coreHelper->currency($_maximalPriceInclTax, true, false)
|
|
|
259 |
);
|
260 |
} else {
|
261 |
+
$priceXmlObj->addAttribute('to', $_coreHelper->currency($_maximalPriceTax, true, false));
|
|
|
|
|
|
|
262 |
if ($_weeeTaxAmount && $product->getPriceType() == 1
|
263 |
&& $_weeeHelper->typeOfDisplay($product, array(2, 1, 4))
|
264 |
) {
|
app/code/core/Mage/XmlConnect/Block/Checkout/Order/Review/Info.php
CHANGED
@@ -31,8 +31,7 @@
|
|
31 |
* @package Mage_XmlConnect
|
32 |
* @author Magento Core Team <core@magentocommerce.com>
|
33 |
*/
|
34 |
-
class Mage_XmlConnect_Block_Checkout_Order_Review_Info
|
35 |
-
extends Mage_Checkout_Block_Onepage_Review_Info
|
36 |
{
|
37 |
/**
|
38 |
* Render order review items
|
@@ -42,7 +41,7 @@ class Mage_XmlConnect_Block_Checkout_Order_Review_Info
|
|
42 |
protected function _toHtml()
|
43 |
{
|
44 |
$itemsXmlObj = Mage::getModel('xmlconnect/simplexml_element', '<products></products>');
|
45 |
-
$quote = Mage::getSingleton('
|
46 |
|
47 |
/* @var $item Mage_Sales_Model_Quote_Item */
|
48 |
foreach ($this->getItems() as $item) {
|
@@ -74,8 +73,7 @@ class Mage_XmlConnect_Block_Checkout_Order_Review_Info
|
|
74 |
if ($this->helper('tax')->displayCartPriceExclTax() || $this->helper('tax')->displayCartBothPrices()) {
|
75 |
$typeOfDisplay = Mage::helper('weee')->typeOfDisplay($item, array(0, 1, 4), 'sales');
|
76 |
if ($typeOfDisplay && $item->getWeeeTaxAppliedAmount()) {
|
77 |
-
$exclPrice = $item->getCalculationPrice()
|
78 |
-
+ $item->getWeeeTaxAppliedAmount()
|
79 |
+ $item->getWeeeTaxDisposition();
|
80 |
} else {
|
81 |
$exclPrice = $item->getCalculationPrice();
|
31 |
* @package Mage_XmlConnect
|
32 |
* @author Magento Core Team <core@magentocommerce.com>
|
33 |
*/
|
34 |
+
class Mage_XmlConnect_Block_Checkout_Order_Review_Info extends Mage_Checkout_Block_Onepage_Review_Info
|
|
|
35 |
{
|
36 |
/**
|
37 |
* Render order review items
|
41 |
protected function _toHtml()
|
42 |
{
|
43 |
$itemsXmlObj = Mage::getModel('xmlconnect/simplexml_element', '<products></products>');
|
44 |
+
$quote = Mage::getSingleton('checkout/session')->getQuote();
|
45 |
|
46 |
/* @var $item Mage_Sales_Model_Quote_Item */
|
47 |
foreach ($this->getItems() as $item) {
|
73 |
if ($this->helper('tax')->displayCartPriceExclTax() || $this->helper('tax')->displayCartBothPrices()) {
|
74 |
$typeOfDisplay = Mage::helper('weee')->typeOfDisplay($item, array(0, 1, 4), 'sales');
|
75 |
if ($typeOfDisplay && $item->getWeeeTaxAppliedAmount()) {
|
76 |
+
$exclPrice = $item->getCalculationPrice() + $item->getWeeeTaxAppliedAmount()
|
|
|
77 |
+ $item->getWeeeTaxDisposition();
|
78 |
} else {
|
79 |
$exclPrice = $item->getCalculationPrice();
|
app/code/core/Mage/XmlConnect/Block/Checkout/Payment/Method/Info/Authorizenet.php
CHANGED
@@ -32,6 +32,44 @@
|
|
32 |
* @author Magento Core Team <core@magentocommerce.com>
|
33 |
*/
|
34 |
class Mage_XmlConnect_Block_Checkout_Payment_Method_Info_Authorizenet
|
35 |
-
extends
|
36 |
{
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
37 |
}
|
32 |
* @author Magento Core Team <core@magentocommerce.com>
|
33 |
*/
|
34 |
class Mage_XmlConnect_Block_Checkout_Payment_Method_Info_Authorizenet
|
35 |
+
extends Mage_Paygate_Block_Authorizenet_Info_Cc
|
36 |
{
|
37 |
+
/**
|
38 |
+
* Add Authorizenet info to order XML object
|
39 |
+
*
|
40 |
+
* @param Mage_XmlConnect_Model_Simplexml_Element $orderItemXmlObj
|
41 |
+
* @return Mage_XmlConnect_Model_Simplexml_Element
|
42 |
+
*/
|
43 |
+
public function addPaymentInfoToXmlObj(Mage_XmlConnect_Model_Simplexml_Element $orderItemXmlObj)
|
44 |
+
{
|
45 |
+
$orderItemXmlObj->addAttribute('type', $this->getMethod()->getCode());
|
46 |
+
if (!$this->getHideTitle()) {
|
47 |
+
$orderItemXmlObj->addAttribute(
|
48 |
+
'title',
|
49 |
+
$orderItemXmlObj->xmlAttribute($this->getMethod()->getTitle())
|
50 |
+
);
|
51 |
+
}
|
52 |
+
|
53 |
+
$cards = $this->getCards();
|
54 |
+
$showCount = count($cards) > 1;
|
55 |
+
|
56 |
+
foreach ($cards as $key => $card) {
|
57 |
+
$creditCard = $orderItemXmlObj->addCustomChild(
|
58 |
+
'item',
|
59 |
+
null,
|
60 |
+
array(
|
61 |
+
'label' => $showCount ? $this->__('Credit Card %s', $key + 1) : $this->__('Credit Card')
|
62 |
+
)
|
63 |
+
);
|
64 |
+
foreach ($card as $label => $value) {
|
65 |
+
$creditCard->addCustomChild(
|
66 |
+
'item',
|
67 |
+
implode($this->getValueAsArray($value, true), PHP_EOL),
|
68 |
+
array(
|
69 |
+
'label' => $label
|
70 |
+
)
|
71 |
+
);
|
72 |
+
}
|
73 |
+
}
|
74 |
+
}
|
75 |
}
|
app/code/core/Mage/XmlConnect/Block/Checkout/Payment/Method/List.php
CHANGED
@@ -80,7 +80,7 @@ class Mage_XmlConnect_Block_Checkout_Payment_Method_List
|
|
80 |
*/
|
81 |
public function getQuote()
|
82 |
{
|
83 |
-
return Mage::getSingleton('
|
84 |
}
|
85 |
|
86 |
/**
|
@@ -314,9 +314,7 @@ class Mage_XmlConnect_Block_Checkout_Payment_Method_List
|
|
314 |
$renderer->addPaymentFormToXmlObj($methodItemXmlObj);
|
315 |
}
|
316 |
if (!count($usedMethods)) {
|
317 |
-
Mage::throwException(
|
318 |
-
$this->__('Sorry, no payment options are available for this order at this time.')
|
319 |
-
);
|
320 |
}
|
321 |
return $methodsXmlObj->asNiceXml();
|
322 |
}
|
80 |
*/
|
81 |
public function getQuote()
|
82 |
{
|
83 |
+
return Mage::getSingleton('checkout/session')->getQuote();
|
84 |
}
|
85 |
|
86 |
/**
|
314 |
$renderer->addPaymentFormToXmlObj($methodItemXmlObj);
|
315 |
}
|
316 |
if (!count($usedMethods)) {
|
317 |
+
Mage::throwException($this->__('Sorry, no payment options are available for this order at this time.'));
|
|
|
|
|
318 |
}
|
319 |
return $methodsXmlObj->asNiceXml();
|
320 |
}
|
app/code/core/Mage/XmlConnect/Block/Checkout/Shipping/Method/Available.php
CHANGED
@@ -27,9 +27,9 @@
|
|
27 |
/**
|
28 |
* One page checkout shipping methods xml renderer
|
29 |
*
|
30 |
-
* @category
|
31 |
-
* @package
|
32 |
-
* @author
|
33 |
*/
|
34 |
class Mage_XmlConnect_Block_Checkout_Shipping_Method_Available
|
35 |
extends Mage_Checkout_Block_Onepage_Shipping_Method_Available
|
27 |
/**
|
28 |
* One page checkout shipping methods xml renderer
|
29 |
*
|
30 |
+
* @category Mage
|
31 |
+
* @package Mage_XmlConnect
|
32 |
+
* @author Magento Core Team <core@magentocommerce.com>
|
33 |
*/
|
34 |
class Mage_XmlConnect_Block_Checkout_Shipping_Method_Available
|
35 |
extends Mage_Checkout_Block_Onepage_Shipping_Method_Available
|
app/code/core/Mage/XmlConnect/Block/Customer/Address/List.php
CHANGED
@@ -82,8 +82,10 @@ class Mage_XmlConnect_Block_Customer_Address_List extends Mage_Core_Block_Templa
|
|
82 |
* @return array
|
83 |
*/
|
84 |
public function prepareAddressData(
|
85 |
-
Mage_Customer_Model_Address $address,
|
86 |
-
|
|
|
|
|
87 |
if (!$address) {
|
88 |
return array();
|
89 |
}
|
82 |
* @return array
|
83 |
*/
|
84 |
public function prepareAddressData(
|
85 |
+
Mage_Customer_Model_Address $address,
|
86 |
+
Mage_XmlConnect_Model_Simplexml_Element $item
|
87 |
+
)
|
88 |
+
{
|
89 |
if (!$address) {
|
90 |
return array();
|
91 |
}
|
app/code/core/Mage/XmlConnect/Block/Customer/Order/List.php
CHANGED
@@ -47,11 +47,19 @@ class Mage_XmlConnect_Block_Customer_Order_List extends Mage_Core_Block_Template
|
|
47 |
{
|
48 |
$ordersXmlObj = Mage::getModel('xmlconnect/simplexml_element', '<orders></orders>');
|
49 |
|
50 |
-
$orders = Mage::getResourceModel('sales/order_collection')
|
51 |
-
->
|
52 |
-
->addFieldToFilter(
|
53 |
-
'
|
54 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
55 |
|
56 |
$orders->getSelect()->limit(self::ORDERS_LIST_LIMIT, 0);
|
57 |
$orders->load();
|
@@ -65,9 +73,16 @@ class Mage_XmlConnect_Block_Customer_Order_List extends Mage_Core_Block_Template
|
|
65 |
if ($_order->getShippingAddress()) {
|
66 |
$item->addChild('ship_to', $ordersXmlObj->escapeXml($_order->getShippingAddress()->getName()));
|
67 |
}
|
68 |
-
$item->addChild(
|
69 |
-
|
70 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
71 |
$item->addChild('status', $_order->getStatusLabel());
|
72 |
}
|
73 |
}
|
47 |
{
|
48 |
$ordersXmlObj = Mage::getModel('xmlconnect/simplexml_element', '<orders></orders>');
|
49 |
|
50 |
+
$orders = Mage::getResourceModel('sales/order_collection')
|
51 |
+
->addFieldToSelect('*')
|
52 |
+
->addFieldToFilter(
|
53 |
+
'customer_id',
|
54 |
+
Mage::getSingleton('customer/session')->getCustomer()->getId()
|
55 |
+
)
|
56 |
+
->addFieldToFilter(
|
57 |
+
'state',
|
58 |
+
array(
|
59 |
+
'in' => Mage::getSingleton('sales/order_config')->getVisibleOnFrontStates()
|
60 |
+
)
|
61 |
+
)
|
62 |
+
->setOrder('created_at', 'desc');
|
63 |
|
64 |
$orders->getSelect()->limit(self::ORDERS_LIST_LIMIT, 0);
|
65 |
$orders->load();
|
73 |
if ($_order->getShippingAddress()) {
|
74 |
$item->addChild('ship_to', $ordersXmlObj->escapeXml($_order->getShippingAddress()->getName()));
|
75 |
}
|
76 |
+
$item->addChild(
|
77 |
+
'total',
|
78 |
+
$_order->getOrderCurrency()->formatPrecision(
|
79 |
+
$_order->getGrandTotal(),
|
80 |
+
2,
|
81 |
+
array(),
|
82 |
+
false,
|
83 |
+
false
|
84 |
+
)
|
85 |
+
);
|
86 |
$item->addChild('status', $_order->getStatusLabel());
|
87 |
}
|
88 |
}
|
app/code/core/Mage/XmlConnect/Block/Review/Form.php
CHANGED
@@ -59,15 +59,21 @@ class Mage_XmlConnect_Block_Review_Form extends Mage_Core_Block_Template
|
|
59 |
}
|
60 |
|
61 |
if ($this->getRatings()) {
|
62 |
-
$ratingsFieldset = $xmlReview->addCustomChild(
|
63 |
-
'
|
64 |
-
|
|
|
|
|
65 |
|
66 |
foreach ($this->getRatings() as $rating) {
|
67 |
-
$ratingField = $ratingsFieldset->addField(
|
68 |
-
'
|
69 |
-
'
|
70 |
-
|
|
|
|
|
|
|
|
|
71 |
foreach ($rating->getOptions() as $option) {
|
72 |
$ratingField->addCustomChild('value', $option->getId());
|
73 |
}
|
@@ -75,19 +81,31 @@ class Mage_XmlConnect_Block_Review_Form extends Mage_Core_Block_Template
|
|
75 |
}
|
76 |
|
77 |
$reviewFieldset = $xmlReview->addCustomChild('fieldset');
|
78 |
-
$reviewFieldset->addField(
|
79 |
-
'
|
80 |
-
'
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
|
85 |
-
|
86 |
-
)
|
87 |
-
$reviewFieldset->addField(
|
88 |
-
'
|
89 |
-
'
|
90 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
91 |
|
92 |
return $xmlReview->asNiceXml();
|
93 |
}
|
@@ -100,9 +118,14 @@ class Mage_XmlConnect_Block_Review_Form extends Mage_Core_Block_Template
|
|
100 |
public function getRatings()
|
101 |
{
|
102 |
if (is_null($this->_ratings)) {
|
103 |
-
$this->_ratings = Mage::getModel('rating/rating')
|
104 |
-
->
|
105 |
-
->
|
|
|
|
|
|
|
|
|
|
|
106 |
|
107 |
if (!$this->_ratings->getSize()) {
|
108 |
$this->_ratings = false;
|
59 |
}
|
60 |
|
61 |
if ($this->getRatings()) {
|
62 |
+
$ratingsFieldset = $xmlReview->addCustomChild(
|
63 |
+
'fieldset',
|
64 |
+
null,
|
65 |
+
array('label' => $this->__('How do you rate this product?'))
|
66 |
+
);
|
67 |
|
68 |
foreach ($this->getRatings() as $rating) {
|
69 |
+
$ratingField = $ratingsFieldset->addField(
|
70 |
+
'ratings[' . $rating->getId() . ']',
|
71 |
+
'radio',
|
72 |
+
array(
|
73 |
+
'label' => $rating->getRatingCode(),
|
74 |
+
'required' => 'true'
|
75 |
+
)
|
76 |
+
);
|
77 |
foreach ($rating->getOptions() as $option) {
|
78 |
$ratingField->addCustomChild('value', $option->getId());
|
79 |
}
|
81 |
}
|
82 |
|
83 |
$reviewFieldset = $xmlReview->addCustomChild('fieldset');
|
84 |
+
$reviewFieldset->addField(
|
85 |
+
'nickname',
|
86 |
+
'text',
|
87 |
+
array(
|
88 |
+
'label' => $this->__('Nickname'),
|
89 |
+
'required' => 'true',
|
90 |
+
'value' => $nickname
|
91 |
+
)
|
92 |
+
);
|
93 |
+
$reviewFieldset->addField(
|
94 |
+
'title',
|
95 |
+
'text',
|
96 |
+
array(
|
97 |
+
'label' => $this->__('Summary of Your Review'),
|
98 |
+
'required' => 'true'
|
99 |
+
)
|
100 |
+
);
|
101 |
+
$reviewFieldset->addField(
|
102 |
+
'detail',
|
103 |
+
'textarea',
|
104 |
+
array(
|
105 |
+
'label' => $this->__('Review'),
|
106 |
+
'required' => 'true'
|
107 |
+
)
|
108 |
+
);
|
109 |
|
110 |
return $xmlReview->asNiceXml();
|
111 |
}
|
118 |
public function getRatings()
|
119 |
{
|
120 |
if (is_null($this->_ratings)) {
|
121 |
+
$this->_ratings = Mage::getModel('rating/rating')
|
122 |
+
->getResourceCollection()
|
123 |
+
->addEntityFilter('product')
|
124 |
+
->setPositionOrder()
|
125 |
+
->addRatingPerStoreName(Mage::app()->getStore()->getId())
|
126 |
+
->setStoreFilter(Mage::app()->getStore()->getId())
|
127 |
+
->load()
|
128 |
+
->addOptionToItems();
|
129 |
|
130 |
if (!$this->_ratings->getSize()) {
|
131 |
$this->_ratings = false;
|
app/code/core/Mage/XmlConnect/Block/Wishlist.php
CHANGED
@@ -66,22 +66,23 @@ class Mage_XmlConnect_Block_Wishlist extends Mage_Wishlist_Block_Customer_Wishli
|
|
66 |
foreach ($this->getWishlistItems() as $item) {
|
67 |
/** @var $item Mage_Wishlist_Model_Item */
|
68 |
$itemXmlObj = $wishlistXmlObj->addChild('item');
|
|
|
69 |
$itemXmlObj->addChild('item_id', $item->getWishlistItemId());
|
70 |
$itemXmlObj->addChild('entity_id', $item->getProductId());
|
71 |
-
$itemXmlObj->addChild('entity_type_id', $item->getTypeId());
|
72 |
$itemXmlObj->addChild('name', $wishlistXmlObj->escapeXml($item->getName()));
|
73 |
-
$itemXmlObj->addChild('in_stock', (int)$item->getStockItem()->getIsInStock());
|
74 |
-
$itemXmlObj->addChild('is_salable', (int)$item->isSalable());
|
75 |
/**
|
76 |
* If product type is grouped than it has options as its grouped items
|
77 |
*/
|
78 |
-
if ($item->getTypeId() == Mage_Catalog_Model_Product_Type_Grouped::TYPE_CODE
|
79 |
-
|| $item->getTypeId() == Mage_Catalog_Model_Product_Type_Configurable::TYPE_CODE) {
|
80 |
-
$item->setHasOptions(true);
|
81 |
}
|
82 |
-
$itemXmlObj->addChild('has_options', (int)$item->getHasOptions());
|
83 |
|
84 |
-
$icon = $this->helper('catalog/image')->init($item, 'small_image')
|
85 |
->resize(Mage::helper('xmlconnect/image')->getImageSizeForContent('product_small'));
|
86 |
|
87 |
$iconXml = $itemXmlObj->addChild('icon', $icon);
|
@@ -89,24 +90,24 @@ class Mage_XmlConnect_Block_Wishlist extends Mage_Wishlist_Block_Customer_Wishli
|
|
89 |
$file = Mage::helper('xmlconnect')->urlToPath($icon);
|
90 |
$iconXml->addAttribute('modification_time', filemtime($file));
|
91 |
|
92 |
-
$description = $wishlistXmlObj->escapeXml($item->
|
93 |
$itemXmlObj->addChild('description', $description);
|
94 |
|
95 |
$addedDate = $wishlistXmlObj->escapeXml($this->getFormatedDate($item->getAddedAt()));
|
96 |
$itemXmlObj->addChild('added_date', $addedDate);
|
97 |
|
98 |
if ($this->getChild('product_price')) {
|
99 |
-
$this->getChild('product_price')->setProduct($item)->setProductXmlObj($itemXmlObj)
|
100 |
->collectProductPrices();
|
101 |
}
|
102 |
|
103 |
-
if (!$item->getRatingSummary()) {
|
104 |
Mage::getModel('review/review')
|
105 |
-
->getEntitySummary($item, Mage::app()->getStore()->getId());
|
106 |
}
|
107 |
-
$ratingSummary = (int)$item->getRatingSummary()->getRatingSummary();
|
108 |
$itemXmlObj->addChild('rating_summary', round($ratingSummary / 10));
|
109 |
-
$itemXmlObj->addChild('reviews_count', $item->getRatingSummary()->getReviewsCount());
|
110 |
}
|
111 |
}
|
112 |
|
66 |
foreach ($this->getWishlistItems() as $item) {
|
67 |
/** @var $item Mage_Wishlist_Model_Item */
|
68 |
$itemXmlObj = $wishlistXmlObj->addChild('item');
|
69 |
+
|
70 |
$itemXmlObj->addChild('item_id', $item->getWishlistItemId());
|
71 |
$itemXmlObj->addChild('entity_id', $item->getProductId());
|
72 |
+
$itemXmlObj->addChild('entity_type_id', $item->getProduct()->getTypeId());
|
73 |
$itemXmlObj->addChild('name', $wishlistXmlObj->escapeXml($item->getName()));
|
74 |
+
$itemXmlObj->addChild('in_stock', (int)$item->getProduct()->getStockItem()->getIsInStock());
|
75 |
+
$itemXmlObj->addChild('is_salable', (int)$item->getProduct()->isSalable());
|
76 |
/**
|
77 |
* If product type is grouped than it has options as its grouped items
|
78 |
*/
|
79 |
+
if ($item->getProduct()->getTypeId() == Mage_Catalog_Model_Product_Type_Grouped::TYPE_CODE
|
80 |
+
|| $item->getProduct()->getTypeId() == Mage_Catalog_Model_Product_Type_Configurable::TYPE_CODE) {
|
81 |
+
$item->getProduct()->setHasOptions(true);
|
82 |
}
|
83 |
+
$itemXmlObj->addChild('has_options', (int)$item->getProduct()->getHasOptions());
|
84 |
|
85 |
+
$icon = $this->helper('catalog/image')->init($item->getProduct(), 'small_image')
|
86 |
->resize(Mage::helper('xmlconnect/image')->getImageSizeForContent('product_small'));
|
87 |
|
88 |
$iconXml = $itemXmlObj->addChild('icon', $icon);
|
90 |
$file = Mage::helper('xmlconnect')->urlToPath($icon);
|
91 |
$iconXml->addAttribute('modification_time', filemtime($file));
|
92 |
|
93 |
+
$description = $wishlistXmlObj->escapeXml($item->getDescription());
|
94 |
$itemXmlObj->addChild('description', $description);
|
95 |
|
96 |
$addedDate = $wishlistXmlObj->escapeXml($this->getFormatedDate($item->getAddedAt()));
|
97 |
$itemXmlObj->addChild('added_date', $addedDate);
|
98 |
|
99 |
if ($this->getChild('product_price')) {
|
100 |
+
$this->getChild('product_price')->setProduct($item->getProduct())->setProductXmlObj($itemXmlObj)
|
101 |
->collectProductPrices();
|
102 |
}
|
103 |
|
104 |
+
if (!$item->getProduct()->getRatingSummary()) {
|
105 |
Mage::getModel('review/review')
|
106 |
+
->getEntitySummary($item->getProduct(), Mage::app()->getStore()->getId());
|
107 |
}
|
108 |
+
$ratingSummary = (int)$item->getProduct()->getRatingSummary()->getRatingSummary();
|
109 |
$itemXmlObj->addChild('rating_summary', round($ratingSummary / 10));
|
110 |
+
$itemXmlObj->addChild('reviews_count', $item->getProduct()->getRatingSummary()->getReviewsCount());
|
111 |
}
|
112 |
}
|
113 |
|
app/code/core/Mage/XmlConnect/Helper/Data.php
CHANGED
@@ -48,7 +48,9 @@ class Mage_XmlConnect_Helper_Data extends Mage_Core_Helper_Abstract
|
|
48 |
*
|
49 |
* @var array
|
50 |
*/
|
51 |
-
protected $_excludedXmlConfigKeys = array(
|
|
|
|
|
52 |
|
53 |
/**
|
54 |
* Application names array
|
@@ -276,10 +278,7 @@ class Mage_XmlConnect_Helper_Data extends Mage_Core_Helper_Abstract
|
|
276 |
Varien_Profiler::stop('TEST: ' . __METHOD__);
|
277 |
|
278 |
if (count($options)) {
|
279 |
-
$options[] = array(
|
280 |
-
'value' => 'NEW_COUNTRIES',
|
281 |
-
'label' => 'New Territories As Added'
|
282 |
-
);
|
283 |
}
|
284 |
|
285 |
return $options;
|
48 |
*
|
49 |
* @var array
|
50 |
*/
|
51 |
+
protected $_excludedXmlConfigKeys = array(
|
52 |
+
'notifications/applicationMasterSecret',
|
53 |
+
);
|
54 |
|
55 |
/**
|
56 |
* Application names array
|
278 |
Varien_Profiler::stop('TEST: ' . __METHOD__);
|
279 |
|
280 |
if (count($options)) {
|
281 |
+
$options[] = array('value' => 'NEW_COUNTRIES', 'label' => 'New Territories As Added');
|
|
|
|
|
|
|
282 |
}
|
283 |
|
284 |
return $options;
|
app/code/core/Mage/XmlConnect/Helper/Image.php
CHANGED
@@ -88,7 +88,8 @@ class Mage_XmlConnect_Helper_Image extends Mage_Core_Helper_Abstract
|
|
88 |
try {
|
89 |
$this->_forcedConvertPng($field);
|
90 |
|
91 |
-
$uploader
|
|
|
92 |
$uploader->setAllowedExtensions(array('jpg', 'jpeg', 'gif', 'png'));
|
93 |
$uploader->setAllowRenameFiles(true);
|
94 |
$uploader->save($uploadDir);
|
88 |
try {
|
89 |
$this->_forcedConvertPng($field);
|
90 |
|
91 |
+
/** @var $uploader Mage_Core_Model_File_Uploader */
|
92 |
+
$uploader = Mage::getModel('core/file_uploader', $field);
|
93 |
$uploader->setAllowedExtensions(array('jpg', 'jpeg', 'gif', 'png'));
|
94 |
$uploader->setAllowRenameFiles(true);
|
95 |
$uploader->save($uploadDir);
|
app/code/core/Mage/XmlConnect/Model/Corefix/Checkout/Session.php
DELETED
@@ -1,137 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* Magento
|
4 |
-
*
|
5 |
-
* NOTICE OF LICENSE
|
6 |
-
*
|
7 |
-
* This source file is subject to the Open Software License (OSL 3.0)
|
8 |
-
* that is bundled with this package in the file LICENSE.txt.
|
9 |
-
* It is also available through the world-wide-web at this URL:
|
10 |
-
* http://opensource.org/licenses/osl-3.0.php
|
11 |
-
* If you did not receive a copy of the license and are unable to
|
12 |
-
* obtain it through the world-wide-web, please send an email
|
13 |
-
* to license@magentocommerce.com so we can send you a copy immediately.
|
14 |
-
*
|
15 |
-
* DISCLAIMER
|
16 |
-
*
|
17 |
-
* Do not edit or add to this file if you wish to upgrade Magento to newer
|
18 |
-
* versions in the future. If you wish to customize Magento for your
|
19 |
-
* needs please refer to http://www.magentocommerce.com for more information.
|
20 |
-
*
|
21 |
-
* @category Mage
|
22 |
-
* @package Mage_XmlConnect
|
23 |
-
* @copyright Copyright (c) 2010 Magento Inc. (http://www.magentocommerce.com)
|
24 |
-
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
25 |
-
*/
|
26 |
-
|
27 |
-
/**
|
28 |
-
* Override the original Checkout session model
|
29 |
-
* The represented methods are overridden to fix Core bug:
|
30 |
-
* Order review - no data verifying in "Billing address" and "Shiping address" fields
|
31 |
-
*
|
32 |
-
* @author Magento Core Team <core@magentocommerce.com>
|
33 |
-
*/
|
34 |
-
class Mage_XmlConnect_Model_Corefix_Checkout_Session extends Mage_Checkout_Model_Session
|
35 |
-
{
|
36 |
-
/**
|
37 |
-
* Get checkout quote instance by current session
|
38 |
-
* Core fix
|
39 |
-
*
|
40 |
-
* @return Mage_XmlConnect_Model_Corefix_Sales_Quote
|
41 |
-
*/
|
42 |
-
public function getQuote()
|
43 |
-
{
|
44 |
-
if ($this->_quote === null) {
|
45 |
-
$quote = Mage::getModel('xmlconnect/corefix_sales_quote')
|
46 |
-
->setStoreId(Mage::app()->getStore()->getId());
|
47 |
-
|
48 |
-
/** @var $quote Mage_XmlConnect_Model_Corefix_Sales_Quote */
|
49 |
-
if ($this->getQuoteId()) {
|
50 |
-
$quote->loadActive($this->getQuoteId());
|
51 |
-
if ($quote->getId()) {
|
52 |
-
/**
|
53 |
-
* If current currency code of quote is not equal current currency code of store,
|
54 |
-
* need recalculate totals of quote. It is possible if customer use currency switcher or
|
55 |
-
* store switcher.
|
56 |
-
*/
|
57 |
-
if ($quote->getQuoteCurrencyCode() != Mage::app()->getStore()->getCurrentCurrencyCode()) {
|
58 |
-
$quote->setStore(Mage::app()->getStore());
|
59 |
-
$quote->collectTotals()->save();
|
60 |
-
/**
|
61 |
-
* We mast to create new quote object, because collectTotals()
|
62 |
-
* can to create links with other objects.
|
63 |
-
*/
|
64 |
-
$quote = Mage::getModel('xmlconnect/corefix_sales_quote')
|
65 |
-
->setStoreId(Mage::app()->getStore()->getId());
|
66 |
-
$quote->load($this->getQuoteId());
|
67 |
-
}
|
68 |
-
} else {
|
69 |
-
$this->setQuoteId(null);
|
70 |
-
}
|
71 |
-
}
|
72 |
-
|
73 |
-
$customerSession = Mage::getSingleton('customer/session');
|
74 |
-
|
75 |
-
if (!$this->getQuoteId()) {
|
76 |
-
if ($customerSession->isLoggedIn()) {
|
77 |
-
$quote->loadByCustomer($customerSession->getCustomer());
|
78 |
-
$this->setQuoteId($quote->getId());
|
79 |
-
} else {
|
80 |
-
$quote->setIsCheckoutCart(true);
|
81 |
-
Mage::dispatchEvent('checkout_quote_init', array('quote' => $quote));
|
82 |
-
}
|
83 |
-
}
|
84 |
-
|
85 |
-
if ($this->getQuoteId()) {
|
86 |
-
if ($customerSession->isLoggedIn()) {
|
87 |
-
$quote->setCustomer($customerSession->getCustomer());
|
88 |
-
}
|
89 |
-
}
|
90 |
-
|
91 |
-
$quote->setStore(Mage::app()->getStore());
|
92 |
-
$this->_quote = $quote;
|
93 |
-
}
|
94 |
-
|
95 |
-
if ($remoteAddr = Mage::helper('core/http')->getRemoteAddr()) {
|
96 |
-
$this->_quote->setRemoteIp($remoteAddr);
|
97 |
-
$xForwardIp = Mage::app()->getRequest()->getServer('HTTP_X_FORWARDED_FOR');
|
98 |
-
$this->_quote->setXForwardedFor($xForwardIp);
|
99 |
-
}
|
100 |
-
return $this->_quote;
|
101 |
-
}
|
102 |
-
|
103 |
-
/**
|
104 |
-
* Load data for customer quote and merge with current quote
|
105 |
-
* Core fix
|
106 |
-
*
|
107 |
-
* @return Mage_XmlConnect_Model_Corefix_Checkout_Session
|
108 |
-
*/
|
109 |
-
public function loadCustomerQuote()
|
110 |
-
{
|
111 |
-
if (!Mage::getSingleton('customer/session')->getCustomerId()) {
|
112 |
-
return $this;
|
113 |
-
}
|
114 |
-
$customerQuote = Mage::getModel('xmlconnect/corefix_sales_quote')
|
115 |
-
->setStoreId(Mage::app()->getStore()->getId())
|
116 |
-
->loadByCustomer(Mage::getSingleton('customer/session')->getCustomerId());
|
117 |
-
|
118 |
-
if ($customerQuote->getId() && $this->getQuoteId() != $customerQuote->getId()) {
|
119 |
-
if ($this->getQuoteId()) {
|
120 |
-
$customerQuote->merge($this->getQuote())
|
121 |
-
->collectTotals()
|
122 |
-
->save();
|
123 |
-
}
|
124 |
-
|
125 |
-
$this->setQuoteId($customerQuote->getId());
|
126 |
-
|
127 |
-
if ($this->_quote) {
|
128 |
-
$this->_quote->delete();
|
129 |
-
}
|
130 |
-
$this->_quote = $customerQuote;
|
131 |
-
} else {
|
132 |
-
$this->getQuote()->setCustomer(Mage::getSingleton('customer/session')->getCustomer())
|
133 |
-
->save();
|
134 |
-
}
|
135 |
-
return $this;
|
136 |
-
}
|
137 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
app/code/core/Mage/XmlConnect/Model/Corefix/Checkout/Type/Onepage.php
DELETED
@@ -1,465 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* Magento
|
4 |
-
*
|
5 |
-
* NOTICE OF LICENSE
|
6 |
-
*
|
7 |
-
* This source file is subject to the Open Software License (OSL 3.0)
|
8 |
-
* that is bundled with this package in the file LICENSE.txt.
|
9 |
-
* It is also available through the world-wide-web at this URL:
|
10 |
-
* http://opensource.org/licenses/osl-3.0.php
|
11 |
-
* If you did not receive a copy of the license and are unable to
|
12 |
-
* obtain it through the world-wide-web, please send an email
|
13 |
-
* to license@magentocommerce.com so we can send you a copy immediately.
|
14 |
-
*
|
15 |
-
* DISCLAIMER
|
16 |
-
*
|
17 |
-
* Do not edit or add to this file if you wish to upgrade Magento to newer
|
18 |
-
* versions in the future. If you wish to customize Magento for your
|
19 |
-
* needs please refer to http://www.magentocommerce.com for more information.
|
20 |
-
*
|
21 |
-
* @category Mage
|
22 |
-
* @package Mage_XmlConnect
|
23 |
-
* @copyright Copyright (c) 2010 Magento Inc. (http://www.magentocommerce.com)
|
24 |
-
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
25 |
-
*/
|
26 |
-
|
27 |
-
/**
|
28 |
-
* Override the original One page checkout processing model
|
29 |
-
* The represented methods are overridden to fix Core bug:
|
30 |
-
* Order review - no data verifying in "Billing address" and "Shiping address" fields
|
31 |
-
*
|
32 |
-
* @author Magento Core Team <core@magentocommerce.com>
|
33 |
-
*/
|
34 |
-
class Mage_XmlConnect_Model_Corefix_Checkout_Type_Onepage extends Mage_Checkout_Model_Type_Onepage
|
35 |
-
{
|
36 |
-
/**
|
37 |
-
* Class constructor
|
38 |
-
* Set customer already exists message
|
39 |
-
* Core fix
|
40 |
-
*/
|
41 |
-
public function __construct()
|
42 |
-
{
|
43 |
-
$this->_helper = Mage::helper('checkout');
|
44 |
-
$this->_customerEmailExistsMessage = $this->_helper->__('There is already a customer registered using this email address. Please login using this email address or enter a different email address to register your account.');
|
45 |
-
$this->_checkoutSession = Mage::getSingleton('xmlconnect/corefix_checkout_session');
|
46 |
-
$this->_customerSession = Mage::getSingleton('customer/session');
|
47 |
-
}
|
48 |
-
|
49 |
-
/**
|
50 |
-
* Save billing address information to quote
|
51 |
-
* This method is called by One Page Checkout JS (AJAX) while saving the billing information.
|
52 |
-
* Core fix
|
53 |
-
*
|
54 |
-
* @param array $data
|
55 |
-
* @param int $customerAddressId
|
56 |
-
* @return array
|
57 |
-
*/
|
58 |
-
public function saveBilling($data, $customerAddressId)
|
59 |
-
{
|
60 |
-
if (empty($data)) {
|
61 |
-
return array('error' => -1, 'message' => $this->_helper->__('Invalid data.'));
|
62 |
-
}
|
63 |
-
|
64 |
-
$address = $this->getQuote()->getBillingAddress();
|
65 |
-
/** @var $addressForm Mage_Customer_Model_Form */
|
66 |
-
$addressForm = Mage::getModel('customer/form');
|
67 |
-
$addressForm->setFormCode('customer_address_edit')
|
68 |
-
->setEntityType('customer_address')
|
69 |
-
->setIsAjaxRequest(Mage::app()->getRequest()->isAjax());
|
70 |
-
|
71 |
-
if (!empty($customerAddressId)) {
|
72 |
-
$customerAddress = Mage::getModel('customer/address')->load($customerAddressId);
|
73 |
-
if ($customerAddress->getId()) {
|
74 |
-
if ($customerAddress->getCustomerId() != $this->getQuote()->getCustomerId()) {
|
75 |
-
return array(
|
76 |
-
'error' => 1,
|
77 |
-
'message' => $this->_helper->__('Customer Address is not valid.')
|
78 |
-
);
|
79 |
-
}
|
80 |
-
|
81 |
-
$address->importCustomerAddress($customerAddress)->setSaveInAddressBook(0);
|
82 |
-
$addressForm->setEntity($address);
|
83 |
-
$addressErrors = $addressForm->validateData($address->getData());
|
84 |
-
if ($addressErrors !== true) {
|
85 |
-
return array('error' => 1, 'message' => $addressErrors);
|
86 |
-
}
|
87 |
-
}
|
88 |
-
} else {
|
89 |
-
$addressForm->setEntity($address);
|
90 |
-
// emulate request object
|
91 |
-
$addressData = $addressForm->extractData($addressForm->prepareRequest($data));
|
92 |
-
$addressErrors = $addressForm->validateData($addressData);
|
93 |
-
if ($addressErrors !== true) {
|
94 |
-
return array('error' => 1, 'message' => $addressErrors);
|
95 |
-
}
|
96 |
-
$addressForm->compactData($addressData);
|
97 |
-
|
98 |
-
// Additional form data, not fetched by extractData (as it fetches only attributes)
|
99 |
-
$address->setSaveInAddressBook(empty($data['save_in_address_book']) ? 0 : 1);
|
100 |
-
}
|
101 |
-
|
102 |
-
// validate billing address
|
103 |
-
if (($validateRes = $address->validate()) !== true) {
|
104 |
-
return array('error' => 1, 'message' => $validateRes);
|
105 |
-
}
|
106 |
-
|
107 |
-
$address->implodeStreetAddress();
|
108 |
-
|
109 |
-
if (true !== ($result = $this->_validateCustomerData($data))) {
|
110 |
-
return $result;
|
111 |
-
}
|
112 |
-
|
113 |
-
if (!$this->getQuote()->getCustomerId() && self::METHOD_REGISTER == $this->getQuote()->getCheckoutMethod()) {
|
114 |
-
if ($this->_customerEmailExists($address->getEmail(), Mage::app()->getWebsite()->getId())) {
|
115 |
-
return array('error' => 1, 'message' => $this->_customerEmailExistsMessage);
|
116 |
-
}
|
117 |
-
}
|
118 |
-
|
119 |
-
if (!$this->getQuote()->isVirtual()) {
|
120 |
-
/**
|
121 |
-
* Billing address using otions
|
122 |
-
*/
|
123 |
-
$usingCase = isset($data['use_for_shipping']) ? (int)$data['use_for_shipping'] : 0;
|
124 |
-
|
125 |
-
switch($usingCase) {
|
126 |
-
case 0:
|
127 |
-
$shipping = $this->getQuote()->getShippingAddress();
|
128 |
-
$shipping->setSameAsBilling(0);
|
129 |
-
break;
|
130 |
-
case 1:
|
131 |
-
$billing = clone $address;
|
132 |
-
$billing->unsAddressId()->unsAddressType();
|
133 |
-
$shipping = $this->getQuote()->getShippingAddress();
|
134 |
-
$shippingMethod = $shipping->getShippingMethod();
|
135 |
-
$shipping->addData($billing->getData())
|
136 |
-
->setSameAsBilling(1)
|
137 |
-
->setSaveInAddressBook(0)
|
138 |
-
->setShippingMethod($shippingMethod)
|
139 |
-
->setCollectShippingRates(true);
|
140 |
-
$this->getCheckout()->setStepData('shipping', 'complete', true);
|
141 |
-
break;
|
142 |
-
}
|
143 |
-
}
|
144 |
-
|
145 |
-
$this->getQuote()->collectTotals();
|
146 |
-
$this->getQuote()->save();
|
147 |
-
|
148 |
-
$this->getCheckout()
|
149 |
-
->setStepData('billing', 'allow', true)
|
150 |
-
->setStepData('billing', 'complete', true)
|
151 |
-
->setStepData('shipping', 'allow', true);
|
152 |
-
|
153 |
-
return array();
|
154 |
-
}
|
155 |
-
|
156 |
-
/**
|
157 |
-
* Validate customer data and set some its data for further usage in quote
|
158 |
-
* Will return either true or array with error messages
|
159 |
-
* Core fix
|
160 |
-
*
|
161 |
-
* @param array $data
|
162 |
-
* @return bool | array
|
163 |
-
*/
|
164 |
-
protected function _validateCustomerData(array $data)
|
165 |
-
{
|
166 |
-
/** @var $customerForm Mage_Customer_Model_Form */
|
167 |
-
$customerForm = Mage::getModel('customer/form');
|
168 |
-
$customerForm->setFormCode('checkout_register')
|
169 |
-
->setIsAjaxRequest(Mage::app()->getRequest()->isAjax());
|
170 |
-
|
171 |
-
$quote = $this->getQuote();
|
172 |
-
if ($quote->getCustomerId()) {
|
173 |
-
$customer = $quote->getCustomer();
|
174 |
-
$customerForm->setEntity($customer);
|
175 |
-
$customerData = $quote->getCustomer()->getData();
|
176 |
-
} else {
|
177 |
-
/** @var $customer Mage_Customer_Model_Customer */
|
178 |
-
$customer = Mage::getModel('customer/customer');
|
179 |
-
$customerForm->setEntity($customer);
|
180 |
-
$customerRequest = $customerForm->prepareRequest($data);
|
181 |
-
$customerData = $customerForm->extractData($customerRequest);
|
182 |
-
}
|
183 |
-
|
184 |
-
$customerErrors = $customerForm->validateData($customerData);
|
185 |
-
if ($customerErrors !== true) {
|
186 |
-
return array(
|
187 |
-
'error' => -1,
|
188 |
-
'message' => implode(', ', $customerErrors)
|
189 |
-
);
|
190 |
-
}
|
191 |
-
|
192 |
-
if ($quote->getCustomerId()) {
|
193 |
-
return true;
|
194 |
-
}
|
195 |
-
|
196 |
-
$customerForm->compactData($customerData);
|
197 |
-
|
198 |
-
if ($quote->getCheckoutMethod() == self::METHOD_REGISTER) {
|
199 |
-
// set customer password
|
200 |
-
$customer->setPassword($customerRequest->getParam('customer_password'));
|
201 |
-
$customer->setConfirmation($customerRequest->getParam('confirm_password'));
|
202 |
-
} else {
|
203 |
-
// emulate customer password for quest
|
204 |
-
$password = $customer->generatePassword();
|
205 |
-
$customer->setPassword($password);
|
206 |
-
$customer->setConfirmation($password);
|
207 |
-
}
|
208 |
-
|
209 |
-
$result = $customer->validate();
|
210 |
-
if (true !== $result && is_array($result)) {
|
211 |
-
return array(
|
212 |
-
'error' => -1,
|
213 |
-
'message' => implode(', ', $result)
|
214 |
-
);
|
215 |
-
}
|
216 |
-
|
217 |
-
if ($quote->getCheckoutMethod() == self::METHOD_REGISTER) {
|
218 |
-
// save customer encrypted password in quote
|
219 |
-
$quote->setPasswordHash($customer->encryptPassword($customer->getPassword()));
|
220 |
-
}
|
221 |
-
|
222 |
-
// copy customer/guest email to address
|
223 |
-
$quote->getBillingAddress()->setEmail($customer->getEmail());
|
224 |
-
|
225 |
-
// copy customer data to quote
|
226 |
-
Mage::helper('core')->copyFieldset('customer_account', 'to_quote', $customer, $quote);
|
227 |
-
|
228 |
-
return true;
|
229 |
-
}
|
230 |
-
|
231 |
-
/**
|
232 |
-
* Save checkout shipping address
|
233 |
-
* Core fix
|
234 |
-
*
|
235 |
-
* @param array $data
|
236 |
-
* @param int $customerAddressId
|
237 |
-
* @return array
|
238 |
-
*/
|
239 |
-
public function saveShipping($data, $customerAddressId)
|
240 |
-
{
|
241 |
-
if (empty($data)) {
|
242 |
-
return array('error' => -1, 'message' => $this->_helper->__('Invalid data.'));
|
243 |
-
}
|
244 |
-
$address = $this->getQuote()->getShippingAddress();
|
245 |
-
|
246 |
-
/** @var $addressForm Mage_Customer_Model_Form */
|
247 |
-
$addressForm = Mage::getModel('customer/form');
|
248 |
-
$addressForm->setFormCode('customer_address_edit')
|
249 |
-
->setEntityType('customer_address')
|
250 |
-
->setIsAjaxRequest(Mage::app()->getRequest()->isAjax());
|
251 |
-
|
252 |
-
if (!empty($customerAddressId)) {
|
253 |
-
/** @var $customerAddress Mage_Customer_Model_Address */
|
254 |
-
$customerAddress = Mage::getModel('customer/address')->load($customerAddressId);
|
255 |
-
if ($customerAddress->getId()) {
|
256 |
-
if ($customerAddress->getCustomerId() != $this->getQuote()->getCustomerId()) {
|
257 |
-
return array(
|
258 |
-
'error' => 1,
|
259 |
-
'message' => $this->_helper->__('Customer Address is not valid.')
|
260 |
-
);
|
261 |
-
}
|
262 |
-
|
263 |
-
$address->importCustomerAddress($customerAddress)->setSaveInAddressBook(0);
|
264 |
-
$addressForm->setEntity($address);
|
265 |
-
$addressErrors = $addressForm->validateData($address->getData());
|
266 |
-
if ($addressErrors !== true) {
|
267 |
-
return array('error' => 1, 'message' => $addressErrors);
|
268 |
-
}
|
269 |
-
}
|
270 |
-
} else {
|
271 |
-
$addressForm->setEntity($address);
|
272 |
-
// emulate request object
|
273 |
-
$addressData = $addressForm->extractData($addressForm->prepareRequest($data));
|
274 |
-
$addressErrors = $addressForm->validateData($addressData);
|
275 |
-
if ($addressErrors !== true) {
|
276 |
-
return array('error' => 1, 'message' => $addressErrors);
|
277 |
-
}
|
278 |
-
$addressForm->compactData($addressData);
|
279 |
-
|
280 |
-
// Additional form data, not fetched by extractData (as it fetches only attributes)
|
281 |
-
$address->setSaveInAddressBook(empty($data['save_in_address_book']) ? 0 : 1);
|
282 |
-
$address->setSameAsBilling(empty($data['same_as_billing']) ? 0 : 1);
|
283 |
-
}
|
284 |
-
|
285 |
-
$address->implodeStreetAddress();
|
286 |
-
$address->setCollectShippingRates(true);
|
287 |
-
|
288 |
-
if (($validateRes = $address->validate()) !== true) {
|
289 |
-
return array('error' => 1, 'message' => $validateRes);
|
290 |
-
}
|
291 |
-
|
292 |
-
$this->getQuote()->collectTotals()->save();
|
293 |
-
|
294 |
-
$this->getCheckout()
|
295 |
-
->setStepData('shipping', 'complete', true)
|
296 |
-
->setStepData('shipping_method', 'allow', true);
|
297 |
-
|
298 |
-
return array();
|
299 |
-
}
|
300 |
-
|
301 |
-
/**
|
302 |
-
* Specify quote payment method
|
303 |
-
* Core fix
|
304 |
-
*
|
305 |
-
* @param array $data
|
306 |
-
* @return array
|
307 |
-
*/
|
308 |
-
public function savePayment($data)
|
309 |
-
{
|
310 |
-
if (empty($data)) {
|
311 |
-
return array('error' => -1, 'message' => $this->_helper->__('Invalid data.'));
|
312 |
-
}
|
313 |
-
$quote = $this->getQuote();
|
314 |
-
if ($quote->isVirtual()) {
|
315 |
-
$quote->getBillingAddress()->setPaymentMethod(isset($data['method']) ? $data['method'] : null);
|
316 |
-
} else {
|
317 |
-
$quote->getShippingAddress()->setPaymentMethod(isset($data['method']) ? $data['method'] : null);
|
318 |
-
}
|
319 |
-
|
320 |
-
// shipping totals may be affected by payment method
|
321 |
-
if (!$quote->isVirtual() && $quote->getShippingAddress()) {
|
322 |
-
$quote->getShippingAddress()->setCollectShippingRates(true);
|
323 |
-
}
|
324 |
-
|
325 |
-
$payment = $quote->getPayment();
|
326 |
-
$payment->importData($data);
|
327 |
-
|
328 |
-
$quote->save();
|
329 |
-
|
330 |
-
$this->getCheckout()
|
331 |
-
->setStepData('payment', 'complete', true)
|
332 |
-
->setStepData('review', 'allow', true);
|
333 |
-
|
334 |
-
return array();
|
335 |
-
}
|
336 |
-
|
337 |
-
/**
|
338 |
-
* Prepare quote for customer order submit
|
339 |
-
* Core fix
|
340 |
-
*
|
341 |
-
* @return void
|
342 |
-
*/
|
343 |
-
protected function _prepareCustomerQuote()
|
344 |
-
{
|
345 |
-
$quote = $this->getQuote();
|
346 |
-
$billing = $quote->getBillingAddress();
|
347 |
-
$shipping = $quote->isVirtual() ? null : $quote->getShippingAddress();
|
348 |
-
|
349 |
-
$customer = $this->getCustomerSession()->getCustomer();
|
350 |
-
if (!$billing->getCustomerId() || $billing->getSaveInAddressBook()) {
|
351 |
-
$customerBilling = $billing->exportCustomerAddress();
|
352 |
-
$customer->addAddress($customerBilling);
|
353 |
-
$billing->setCustomerAddress($customerBilling);
|
354 |
-
}
|
355 |
-
if ($shipping && !$shipping->getSameAsBilling()
|
356 |
-
&& (!$shipping->getCustomerId() || $shipping->getSaveInAddressBook())
|
357 |
-
) {
|
358 |
-
$customerShipping = $shipping->exportCustomerAddress();
|
359 |
-
$customer->addAddress($customerShipping);
|
360 |
-
$shipping->setCustomerAddress($customerShipping);
|
361 |
-
}
|
362 |
-
|
363 |
-
if (isset($customerBilling) && !$customer->getDefaultBilling()) {
|
364 |
-
$customerBilling->setIsDefaultBilling(true);
|
365 |
-
}
|
366 |
-
if ($shipping && isset($customerShipping) && !$customer->getDefaultShipping()) {
|
367 |
-
$customerShipping->setIsDefaultShipping(true);
|
368 |
-
} elseif (isset($customerBilling) && !$customer->getDefaultShipping()) {
|
369 |
-
$customerBilling->setIsDefaultShipping(true);
|
370 |
-
}
|
371 |
-
$quote->setCustomer($customer);
|
372 |
-
}
|
373 |
-
|
374 |
-
/**
|
375 |
-
* Create order based on checkout type. Create customer if necessary.
|
376 |
-
*
|
377 |
-
* @return Mage_XmlConnect_Model_Corefix_Checkout_Type_Onepage
|
378 |
-
*/
|
379 |
-
public function saveOrder()
|
380 |
-
{
|
381 |
-
$this->validate();
|
382 |
-
$isNewCustomer = false;
|
383 |
-
switch ($this->getCheckoutMethod()) {
|
384 |
-
case self::METHOD_GUEST:
|
385 |
-
$this->_prepareGuestQuote();
|
386 |
-
break;
|
387 |
-
case self::METHOD_REGISTER:
|
388 |
-
$this->_prepareNewCustomerQuote();
|
389 |
-
$isNewCustomer = true;
|
390 |
-
break;
|
391 |
-
default:
|
392 |
-
$this->_prepareCustomerQuote();
|
393 |
-
break;
|
394 |
-
}
|
395 |
-
|
396 |
-
/** @var $service Mage_Sales_Model_Service_Quote */
|
397 |
-
$service = Mage::getModel('sales/service_quote', $this->getQuote());
|
398 |
-
$service->submitAll();
|
399 |
-
|
400 |
-
if ($isNewCustomer) {
|
401 |
-
try {
|
402 |
-
$this->_involveNewCustomer();
|
403 |
-
} catch (Exception $e) {
|
404 |
-
Mage::logException($e);
|
405 |
-
}
|
406 |
-
}
|
407 |
-
|
408 |
-
$this->_checkoutSession->setLastQuoteId($this->getQuote()->getId())
|
409 |
-
->setLastSuccessQuoteId($this->getQuote()->getId())
|
410 |
-
->clearHelperData();
|
411 |
-
|
412 |
-
$order = $service->getOrder();
|
413 |
-
if ($order) {
|
414 |
-
Mage::dispatchEvent(
|
415 |
-
'checkout_type_onepage_save_order_after',
|
416 |
-
array('order' => $order, 'quote' => $this->getQuote())
|
417 |
-
);
|
418 |
-
|
419 |
-
/**
|
420 |
-
* a flag to set that there will be redirect to third party after confirmation
|
421 |
-
* eg: paypal standard ipn
|
422 |
-
*/
|
423 |
-
$redirectUrl = $this->getQuote()->getPayment()->getOrderPlaceRedirectUrl();
|
424 |
-
/**
|
425 |
-
* we only want to send to customer about new order when there is no redirect to third party
|
426 |
-
*/
|
427 |
-
if (!$redirectUrl) {
|
428 |
-
try {
|
429 |
-
$order->sendNewOrderEmail();
|
430 |
-
} catch (Exception $e) {
|
431 |
-
Mage::logException($e);
|
432 |
-
}
|
433 |
-
}
|
434 |
-
|
435 |
-
// add order information to the session
|
436 |
-
$this->_checkoutSession->setLastOrderId($order->getId())
|
437 |
-
->setRedirectUrl($redirectUrl)
|
438 |
-
->setLastRealOrderId($order->getIncrementId());
|
439 |
-
|
440 |
-
// as well a billing agreement can be created
|
441 |
-
$agreement = $order->getPayment()->getBillingAgreement();
|
442 |
-
if ($agreement) {
|
443 |
-
$this->_checkoutSession->setLastBillingAgreementId($agreement->getId());
|
444 |
-
}
|
445 |
-
}
|
446 |
-
|
447 |
-
// add recurring profiles information to the session
|
448 |
-
$profiles = $service->getRecurringPaymentProfiles();
|
449 |
-
if ($profiles) {
|
450 |
-
$ids = array();
|
451 |
-
foreach ($profiles as $profile) {
|
452 |
-
$ids[] = $profile->getId();
|
453 |
-
}
|
454 |
-
$this->_checkoutSession->setLastRecurringProfileIds($ids);
|
455 |
-
// TODO: send recurring profile emails
|
456 |
-
}
|
457 |
-
|
458 |
-
Mage::dispatchEvent(
|
459 |
-
'checkout_submit_all_after',
|
460 |
-
array('order' => $order, 'quote' => $this->getQuote(), 'recurring_profiles' => $profiles)
|
461 |
-
);
|
462 |
-
|
463 |
-
return $this;
|
464 |
-
}
|
465 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
app/code/core/Mage/XmlConnect/Model/Corefix/Sales/Quote.php
DELETED
@@ -1,427 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* Magento
|
4 |
-
*
|
5 |
-
* NOTICE OF LICENSE
|
6 |
-
*
|
7 |
-
* This source file is subject to the Open Software License (OSL 3.0)
|
8 |
-
* that is bundled with this package in the file LICENSE.txt.
|
9 |
-
* It is also available through the world-wide-web at this URL:
|
10 |
-
* http://opensource.org/licenses/osl-3.0.php
|
11 |
-
* If you did not receive a copy of the license and are unable to
|
12 |
-
* obtain it through the world-wide-web, please send an email
|
13 |
-
* to license@magentocommerce.com so we can send you a copy immediately.
|
14 |
-
*
|
15 |
-
* DISCLAIMER
|
16 |
-
*
|
17 |
-
* Do not edit or add to this file if you wish to upgrade Magento to newer
|
18 |
-
* versions in the future. If you wish to customize Magento for your
|
19 |
-
* needs please refer to http://www.magentocommerce.com for more information.
|
20 |
-
*
|
21 |
-
* @category Mage
|
22 |
-
* @package Mage_XmlConnect
|
23 |
-
* @copyright Copyright (c) 2010 Magento Inc. (http://www.magentocommerce.com)
|
24 |
-
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
25 |
-
*/
|
26 |
-
|
27 |
-
/**
|
28 |
-
* Override the original Quote model
|
29 |
-
* The represented methods are overridden to fix Core bug:
|
30 |
-
* Order review - no data verifying in "Billing address" and "Shiping address" fields
|
31 |
-
*
|
32 |
-
* Supported events:
|
33 |
-
* sales_quote_load_after
|
34 |
-
* sales_quote_save_before
|
35 |
-
* sales_quote_save_after
|
36 |
-
* sales_quote_delete_before
|
37 |
-
* sales_quote_delete_after
|
38 |
-
*
|
39 |
-
* @author Magento Core Team <core@magentocommerce.com>
|
40 |
-
*/
|
41 |
-
class Mage_XmlConnect_Model_Corefix_Sales_Quote extends Mage_Sales_Model_Quote
|
42 |
-
{
|
43 |
-
/**
|
44 |
-
* Loading quote by identifier
|
45 |
-
* Core fix
|
46 |
-
*
|
47 |
-
* @param int $quoteId
|
48 |
-
* @return Mage_XmlConnect_Model_Corefix_Sales_Quote
|
49 |
-
*/
|
50 |
-
public function loadByIdWithoutStore($quoteId)
|
51 |
-
{
|
52 |
-
$this->_getResource()->loadByIdWithoutStore($this, $quoteId);
|
53 |
-
$this->_afterLoad();
|
54 |
-
return $this;
|
55 |
-
}
|
56 |
-
|
57 |
-
/**
|
58 |
-
* Assign customer model object data to quote
|
59 |
-
* Core fix
|
60 |
-
*
|
61 |
-
* @param Mage_Customer_Model_Customer $customer
|
62 |
-
* @return Mage_XmlConnect_Model_Corefix_Sales_Quote
|
63 |
-
*/
|
64 |
-
public function assignCustomer(Mage_Customer_Model_Customer $customer)
|
65 |
-
{
|
66 |
-
return $this->assignCustomerWithAddressChange($customer);
|
67 |
-
}
|
68 |
-
|
69 |
-
/**
|
70 |
-
* Assign customer model to quote with billing and shipping address change
|
71 |
-
* Core fix
|
72 |
-
*
|
73 |
-
* @param Mage_Customer_Model_Customer $customer
|
74 |
-
* @param Mage_Sales_Model_Quote_Address $billingAddress
|
75 |
-
* @param Mage_Sales_Model_Quote_Address $shippingAddress
|
76 |
-
* @return Mage_XmlConnect_Model_Corefix_Sales_Quote
|
77 |
-
*/
|
78 |
-
public function assignCustomerWithAddressChange(
|
79 |
-
Mage_Customer_Model_Customer $customer,
|
80 |
-
Mage_Sales_Model_Quote_Address $billingAddress = null,
|
81 |
-
Mage_Sales_Model_Quote_Address $shippingAddress = null
|
82 |
-
)
|
83 |
-
{
|
84 |
-
if ($customer->getId()) {
|
85 |
-
$this->setCustomer($customer);
|
86 |
-
|
87 |
-
if (!is_null($billingAddress)) {
|
88 |
-
$this->setBillingAddress($billingAddress);
|
89 |
-
} else {
|
90 |
-
$defaultBillingAddress = $customer->getDefaultBillingAddress();
|
91 |
-
if ($defaultBillingAddress && $defaultBillingAddress->getId()) {
|
92 |
-
$billingAddress = Mage::getModel('sales/quote_address')
|
93 |
-
->importCustomerAddress($defaultBillingAddress);
|
94 |
-
$this->setBillingAddress($billingAddress);
|
95 |
-
}
|
96 |
-
}
|
97 |
-
|
98 |
-
if (is_null($shippingAddress)) {
|
99 |
-
$defaultShippingAddress = $customer->getDefaultShippingAddress();
|
100 |
-
if ($defaultShippingAddress && $defaultShippingAddress->getId()) {
|
101 |
-
$shippingAddress = Mage::getModel('sales/quote_address')
|
102 |
-
->importCustomerAddress($defaultShippingAddress);
|
103 |
-
} else {
|
104 |
-
$shippingAddress = Mage::getModel('sales/quote_address');
|
105 |
-
}
|
106 |
-
}
|
107 |
-
$this->setShippingAddress($shippingAddress);
|
108 |
-
}
|
109 |
-
|
110 |
-
return $this;
|
111 |
-
}
|
112 |
-
|
113 |
-
/**
|
114 |
-
* Retrieve customer group id
|
115 |
-
* Core fix
|
116 |
-
*
|
117 |
-
* @return int
|
118 |
-
*/
|
119 |
-
public function getCustomerGroupId()
|
120 |
-
{
|
121 |
-
if ($this->getCustomerId()) {
|
122 |
-
return ($this->getData('customer_group_id'))
|
123 |
-
? $this->getData('customer_group_id')
|
124 |
-
: $this->getCustomer()->getGroupId();
|
125 |
-
} else {
|
126 |
-
return Mage_Customer_Model_Group::NOT_LOGGED_IN_ID;
|
127 |
-
}
|
128 |
-
}
|
129 |
-
|
130 |
-
/**
|
131 |
-
* Checking product exist in Quote
|
132 |
-
* Core fix
|
133 |
-
*
|
134 |
-
* @param int $productId
|
135 |
-
* @return bool
|
136 |
-
*/
|
137 |
-
public function hasProductId($productId)
|
138 |
-
{
|
139 |
-
foreach ($this->getAllItems() as $item) {
|
140 |
-
if ($item->getProductId() == $productId) {
|
141 |
-
return true;
|
142 |
-
}
|
143 |
-
}
|
144 |
-
return false;
|
145 |
-
}
|
146 |
-
|
147 |
-
/**
|
148 |
-
* Remove quote item by item identifier
|
149 |
-
* Core fix
|
150 |
-
*
|
151 |
-
* @param int $itemId
|
152 |
-
* @return Mage_XmlConnect_Model_Corefix_Sales_Quote
|
153 |
-
*/
|
154 |
-
public function removeItem($itemId)
|
155 |
-
{
|
156 |
-
$item = $this->getItemById($itemId);
|
157 |
-
if ($item) {
|
158 |
-
$item->setQuote($this);
|
159 |
-
/**
|
160 |
-
* If we remove item from quote - we can't use multishipping mode
|
161 |
-
*/
|
162 |
-
$this->setIsMultiShipping(false);
|
163 |
-
$item->isDeleted(true);
|
164 |
-
if ($item->getHasChildren()) {
|
165 |
-
foreach ($item->getChildren() as $child) {
|
166 |
-
$child->isDeleted(true);
|
167 |
-
}
|
168 |
-
}
|
169 |
-
Mage::dispatchEvent('sales_quote_remove_item', array('quote_item' => $item));
|
170 |
-
}
|
171 |
-
return $this;
|
172 |
-
}
|
173 |
-
|
174 |
-
/**
|
175 |
-
* Advanced func to add product to quote - processing mode can be specified there.
|
176 |
-
* Returns error message if product type instance can't prepare product.
|
177 |
-
* Core fix
|
178 |
-
*
|
179 |
-
* @param Mage_Catalog_Model_Product $product
|
180 |
-
* @param null | float | Varien_Object $request
|
181 |
-
* @param null | string $processMode
|
182 |
-
* @throws Mage_Core_Exception
|
183 |
-
* @return Mage_Sales_Model_Quote_Item | string
|
184 |
-
*/
|
185 |
-
public function addProductAdvanced(Mage_Catalog_Model_Product $product, $request = null, $processMode = null)
|
186 |
-
{
|
187 |
-
if ($request === null) {
|
188 |
-
$request = 1;
|
189 |
-
}
|
190 |
-
if (is_numeric($request)) {
|
191 |
-
$request = new Varien_Object(array('qty' => $request));
|
192 |
-
}
|
193 |
-
if (!($request instanceof Varien_Object)) {
|
194 |
-
Mage::throwException(Mage::helper('sales')->__('Invalid request for adding product to quote.'));
|
195 |
-
}
|
196 |
-
|
197 |
-
$cartCandidates = $product->getTypeInstance(true)
|
198 |
-
->prepareForCartAdvanced($request, $product, $processMode);
|
199 |
-
|
200 |
-
/**
|
201 |
-
* Error message
|
202 |
-
*/
|
203 |
-
if (is_string($cartCandidates)) {
|
204 |
-
return $cartCandidates;
|
205 |
-
}
|
206 |
-
|
207 |
-
/**
|
208 |
-
* If prepare process return one object
|
209 |
-
*/
|
210 |
-
if (!is_array($cartCandidates)) {
|
211 |
-
$cartCandidates = array($cartCandidates);
|
212 |
-
}
|
213 |
-
|
214 |
-
$parentItem = null;
|
215 |
-
$errors = array();
|
216 |
-
$items = array();
|
217 |
-
foreach ($cartCandidates as $candidate) {
|
218 |
-
$item = $this->_addCatalogProduct($candidate, $candidate->getCartQty());
|
219 |
-
$items[] = $item;
|
220 |
-
|
221 |
-
/**
|
222 |
-
* As parent item we should always use the item of first added product
|
223 |
-
*/
|
224 |
-
if (!$parentItem) {
|
225 |
-
$parentItem = $item;
|
226 |
-
}
|
227 |
-
if ($parentItem && $candidate->getParentProductId() && !$item->getId()) {
|
228 |
-
$item->setParentItem($parentItem);
|
229 |
-
}
|
230 |
-
|
231 |
-
/**
|
232 |
-
* We specify qty after we know about parent (for stock)
|
233 |
-
*/
|
234 |
-
$item->addQty($candidate->getCartQty());
|
235 |
-
|
236 |
-
// collect errors instead of throwing first one
|
237 |
-
if ($item->getHasError()) {
|
238 |
-
$errors[] = $item->getMessage();
|
239 |
-
}
|
240 |
-
}
|
241 |
-
if (!empty($errors)) {
|
242 |
-
Mage::throwException(implode("\n", $errors));
|
243 |
-
}
|
244 |
-
|
245 |
-
Mage::dispatchEvent('sales_quote_product_add_after', array('items' => $items));
|
246 |
-
|
247 |
-
return $item;
|
248 |
-
}
|
249 |
-
|
250 |
-
|
251 |
-
/**
|
252 |
-
* Add product to quote
|
253 |
-
* return error message if product type instance can't prepare product
|
254 |
-
* Core fix
|
255 |
-
*
|
256 |
-
* @param mixed $product
|
257 |
-
* @param null | float | Varien_Object $request
|
258 |
-
* @return Mage_Sales_Model_Quote_Item | string
|
259 |
-
*/
|
260 |
-
public function addProduct(Mage_Catalog_Model_Product $product, $request = null)
|
261 |
-
{
|
262 |
-
return $this->addProductAdvanced($product, $request, Mage_Catalog_Model_Product_Type_Abstract::PROCESS_MODE_FULL);
|
263 |
-
}
|
264 |
-
|
265 |
-
/**
|
266 |
-
* Adding catalog product object data to quote
|
267 |
-
* Core fix
|
268 |
-
*
|
269 |
-
* @param Mage_Catalog_Model_Product $product
|
270 |
-
* @return Mage_Sales_Model_Quote_Item
|
271 |
-
*/
|
272 |
-
protected function _addCatalogProduct(Mage_Catalog_Model_Product $product, $qty = 1)
|
273 |
-
{
|
274 |
-
$newItem = false;
|
275 |
-
$item = $this->getItemByProduct($product);
|
276 |
-
if (!$item) {
|
277 |
-
$item = Mage::getModel('sales/quote_item');
|
278 |
-
$item->setQuote($this);
|
279 |
-
if (Mage::app()->getStore()->isAdmin()) {
|
280 |
-
$item->setStoreId($this->getStore()->getId());
|
281 |
-
} else {
|
282 |
-
$item->setStoreId(Mage::app()->getStore()->getId());
|
283 |
-
}
|
284 |
-
$newItem = true;
|
285 |
-
}
|
286 |
-
|
287 |
-
/**
|
288 |
-
* We can't modify existing child items
|
289 |
-
*/
|
290 |
-
if ($item->getId() && $product->getParentProductId()) {
|
291 |
-
return $item;
|
292 |
-
}
|
293 |
-
|
294 |
-
$item->setOptions($product->getCustomOptions())
|
295 |
-
->setProduct($product);
|
296 |
-
|
297 |
-
// Add only item that is not in quote already (there can be other new or already saved item
|
298 |
-
if ($newItem) {
|
299 |
-
$this->addItem($item);
|
300 |
-
}
|
301 |
-
|
302 |
-
return $item;
|
303 |
-
}
|
304 |
-
|
305 |
-
/**
|
306 |
-
* Updates quote item with new configuration
|
307 |
-
*
|
308 |
-
* $params sets how current item configuration must be taken into account and additional options.
|
309 |
-
* It's passed to Mage_Catalog_Helper_Product->addParamsToBuyRequest() to compose resulting buyRequest.
|
310 |
-
*
|
311 |
-
* Basically it can hold
|
312 |
-
* - 'current_config', Varien_Object or array - current buyRequest that configures product in this item,
|
313 |
-
* used to restore currently attached files
|
314 |
-
* - 'files_prefix': string[a-z0-9_] - prefix that was added at frontend to names of file options (file inputs), so they won't
|
315 |
-
* intersect with other submitted options
|
316 |
-
*
|
317 |
-
* For more options see Mage_Catalog_Helper_Product->addParamsToBuyRequest()
|
318 |
-
*
|
319 |
-
* Core fix
|
320 |
-
*
|
321 |
-
* @param int $itemId
|
322 |
-
* @param Varien_Object $buyRequest
|
323 |
-
* @param null | array | Varien_Object $params
|
324 |
-
* @throws Mage_Core_Exception
|
325 |
-
* @return Mage_Sales_Model_Quote_Item
|
326 |
-
*
|
327 |
-
* @see Mage_Catalog_Helper_Product::addParamsToBuyRequest()
|
328 |
-
*/
|
329 |
-
public function updateItem($itemId, $buyRequest, $params = null)
|
330 |
-
{
|
331 |
-
$item = $this->getItemById($itemId);
|
332 |
-
if (!$item) {
|
333 |
-
Mage::throwException(Mage::helper('sales')->__('Wrong quote item id to update configuration.'));
|
334 |
-
}
|
335 |
-
$productId = $item->getProduct()->getId();
|
336 |
-
|
337 |
-
//We need to create new clear product instance with same $productId
|
338 |
-
//to set new option values from $buyRequest
|
339 |
-
$product = Mage::getModel('catalog/product')
|
340 |
-
->setStoreId($this->getStore()->getId())
|
341 |
-
->load($productId);
|
342 |
-
|
343 |
-
if (!$params) {
|
344 |
-
$params = new Varien_Object();
|
345 |
-
} elseif (is_array($params)) {
|
346 |
-
$params = new Varien_Object($params);
|
347 |
-
}
|
348 |
-
$params->setCurrentConfig($item->getBuyRequest());
|
349 |
-
$buyRequest = Mage::helper('catalog/product')->addParamsToBuyRequest($buyRequest, $params);
|
350 |
-
|
351 |
-
$resultItem = $this->addProduct($product, $buyRequest);
|
352 |
-
|
353 |
-
if (is_string($resultItem)) {
|
354 |
-
Mage::throwException($resultItem);
|
355 |
-
}
|
356 |
-
|
357 |
-
if ($resultItem->getParentItem()) {
|
358 |
-
$resultItem = $resultItem->getParentItem();
|
359 |
-
}
|
360 |
-
|
361 |
-
if ($resultItem->getId() != $itemId) {
|
362 |
-
/**
|
363 |
-
* Product configuration didn't stick to original quote item
|
364 |
-
* It either has same configuration as some other quote item's product or completely new configuration
|
365 |
-
*/
|
366 |
-
$this->removeItem($itemId);
|
367 |
-
|
368 |
-
$items = $this->getAllItems();
|
369 |
-
foreach ($items as $item) {
|
370 |
-
if (($item->getProductId() == $productId) && ($item->getId() != $resultItem->getId())) {
|
371 |
-
if ($resultItem->compare($item)) {
|
372 |
-
// Product configuration is same as in other quote item
|
373 |
-
$resultItem->setQty($resultItem->getQty() + $item->getQty());
|
374 |
-
$this->removeItem($item->getId());
|
375 |
-
break;
|
376 |
-
}
|
377 |
-
}
|
378 |
-
}
|
379 |
-
} else {
|
380 |
-
$resultItem->setQty($buyRequest->getQty());
|
381 |
-
}
|
382 |
-
|
383 |
-
return $resultItem;
|
384 |
-
}
|
385 |
-
|
386 |
-
/**
|
387 |
-
* Retrieve quote item by product id
|
388 |
-
* Core fix
|
389 |
-
*
|
390 |
-
* @param Mage_Catalog_Model_Product $product
|
391 |
-
* @return Mage_Sales_Model_Quote_Item | false
|
392 |
-
*/
|
393 |
-
public function getItemByProduct($product)
|
394 |
-
{
|
395 |
-
foreach ($this->getAllItems() as $item) {
|
396 |
-
if ($item->representProduct($product)) {
|
397 |
-
return $item;
|
398 |
-
}
|
399 |
-
}
|
400 |
-
return false;
|
401 |
-
}
|
402 |
-
|
403 |
-
/**
|
404 |
-
* Check quote for virtual product only
|
405 |
-
* Core fix
|
406 |
-
*
|
407 |
-
* @return bool
|
408 |
-
*/
|
409 |
-
public function isVirtual()
|
410 |
-
{
|
411 |
-
$isVirtual = true;
|
412 |
-
$countItems = 0;
|
413 |
-
foreach ($this->getItemsCollection() as $_item) {
|
414 |
-
/** @var $_item Mage_Sales_Model_Quote_Item */
|
415 |
-
if ($_item->isDeleted() || $_item->getParentItemId()) {
|
416 |
-
continue;
|
417 |
-
}
|
418 |
-
$countItems ++;
|
419 |
-
if (!$_item->getProduct()->getIsVirtual()) {
|
420 |
-
$isVirtual = false;
|
421 |
-
break;
|
422 |
-
}
|
423 |
-
}
|
424 |
-
return $countItems == 0 ? false : $isVirtual;
|
425 |
-
}
|
426 |
-
|
427 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
app/code/core/Mage/XmlConnect/Model/Payment/Method/Paypal/Mecl.php
CHANGED
@@ -46,6 +46,18 @@ class Mage_XmlConnect_Model_Payment_Method_Paypal_Mecl
|
|
46 |
*/
|
47 |
protected $_code = self::MECL_METHOD_CODE;
|
48 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
49 |
/**
|
50 |
* Check whether payment method can be used
|
51 |
*
|
46 |
*/
|
47 |
protected $_code = self::MECL_METHOD_CODE;
|
48 |
|
49 |
+
/**
|
50 |
+
* Can use method for a frontend checkout
|
51 |
+
*
|
52 |
+
* @var bool
|
53 |
+
*/
|
54 |
+
protected $_canUseCheckout = false;
|
55 |
+
|
56 |
+
protected $_canUseInternal = false;
|
57 |
+
protected $_canUseForMultishipping = false;
|
58 |
+
protected $_isInitializeNeeded = false;
|
59 |
+
protected $_canManageRecurringProfiles = false;
|
60 |
+
|
61 |
/**
|
62 |
* Check whether payment method can be used
|
63 |
*
|
app/code/core/Mage/XmlConnect/Model/Paypal/Mep/Checkout.php
CHANGED
@@ -74,11 +74,10 @@ class Mage_XmlConnect_Model_Paypal_Mep_Checkout
|
|
74 |
*
|
75 |
* @throws Mage_Core_Exception
|
76 |
* @param array $params
|
77 |
-
* @return void
|
78 |
*/
|
79 |
public function __construct($params = array())
|
80 |
{
|
81 |
-
$this->_checkoutSession = Mage::getSingleton('
|
82 |
if (isset($params['quote']) && $params['quote'] instanceof Mage_Sales_Model_Quote) {
|
83 |
$this->_quote = $params['quote'];
|
84 |
} else {
|
@@ -115,7 +114,7 @@ class Mage_XmlConnect_Model_Paypal_Mep_Checkout
|
|
115 |
$this->_quote->assignCustomer($customer);
|
116 |
}
|
117 |
if (!Mage::getSingleton('customer/session')->isLoggedIn()
|
118 |
-
&& Mage::getSingleton('
|
119 |
) {
|
120 |
$this->_prepareGuestQuote();
|
121 |
}
|
74 |
*
|
75 |
* @throws Mage_Core_Exception
|
76 |
* @param array $params
|
|
|
77 |
*/
|
78 |
public function __construct($params = array())
|
79 |
{
|
80 |
+
$this->_checkoutSession = Mage::getSingleton('checkout/session');
|
81 |
if (isset($params['quote']) && $params['quote'] instanceof Mage_Sales_Model_Quote) {
|
82 |
$this->_quote = $params['quote'];
|
83 |
} else {
|
114 |
$this->_quote->assignCustomer($customer);
|
115 |
}
|
116 |
if (!Mage::getSingleton('customer/session')->isLoggedIn()
|
117 |
+
&& Mage::getSingleton('checkout/session')->getQuote()->isAllowedGuestCheckout()
|
118 |
) {
|
119 |
$this->_prepareGuestQuote();
|
120 |
}
|
app/code/core/Mage/XmlConnect/Model/Simplexml/Element.php
CHANGED
@@ -43,7 +43,7 @@ class Mage_XmlConnect_Model_Simplexml_Element extends Varien_Simplexml_Element
|
|
43 |
{
|
44 |
if (sizeof($source->children())) {
|
45 |
/**
|
46 |
-
* @
|
47 |
*/
|
48 |
if (version_compare(phpversion(), '5.2.4', '<') === true) {
|
49 |
$name = $source->children()->getName();
|
@@ -104,7 +104,7 @@ class Mage_XmlConnect_Model_Simplexml_Element extends Varien_Simplexml_Element
|
|
104 |
*
|
105 |
* @param string $value
|
106 |
* @param bool $stripTags
|
107 |
-
* @return string|null
|
108 |
*/
|
109 |
public function xmlAttribute($value = null, $stripTags = true)
|
110 |
{
|
@@ -112,6 +112,10 @@ class Mage_XmlConnect_Model_Simplexml_Element extends Varien_Simplexml_Element
|
|
112 |
$value = $this;
|
113 |
}
|
114 |
$value = (string)$value;
|
|
|
|
|
|
|
|
|
115 |
$value = str_replace(array('&', '"', '<', '>'), array('&', '"', '<', '>'), $value);
|
116 |
return $value;
|
117 |
}
|
43 |
{
|
44 |
if (sizeof($source->children())) {
|
45 |
/**
|
46 |
+
* @link http://bugs.php.net/bug.php?id=41867 , fixed in 5.2.4
|
47 |
*/
|
48 |
if (version_compare(phpversion(), '5.2.4', '<') === true) {
|
49 |
$name = $source->children()->getName();
|
104 |
*
|
105 |
* @param string $value
|
106 |
* @param bool $stripTags
|
107 |
+
* @return string|Mage_XmlConnect_Model_Simplexml_Element|null
|
108 |
*/
|
109 |
public function xmlAttribute($value = null, $stripTags = true)
|
110 |
{
|
112 |
$value = $this;
|
113 |
}
|
114 |
$value = (string)$value;
|
115 |
+
|
116 |
+
if ($stripTags) {
|
117 |
+
$value = Mage::helper('core')->stripTags($value);
|
118 |
+
}
|
119 |
$value = str_replace(array('&', '"', '<', '>'), array('&', '"', '<', '>'), $value);
|
120 |
return $value;
|
121 |
}
|
app/code/core/Mage/XmlConnect/controllers/CartController.php
CHANGED
@@ -476,7 +476,7 @@ class Mage_XmlConnect_CartController extends Mage_XmlConnect_Controller_Action
|
|
476 |
*/
|
477 |
protected function _getSession()
|
478 |
{
|
479 |
-
return Mage::getSingleton('
|
480 |
}
|
481 |
|
482 |
/**
|
476 |
*/
|
477 |
protected function _getSession()
|
478 |
{
|
479 |
+
return Mage::getSingleton('checkout/session');
|
480 |
}
|
481 |
|
482 |
/**
|
app/code/core/Mage/XmlConnect/controllers/CheckoutController.php
CHANGED
@@ -42,7 +42,7 @@ class Mage_XmlConnect_CheckoutController extends Mage_XmlConnect_Controller_Acti
|
|
42 |
{
|
43 |
parent::preDispatch();
|
44 |
if (!Mage::getSingleton('customer/session')->isLoggedIn()
|
45 |
-
&& !Mage::getSingleton('
|
46 |
) {
|
47 |
$this->setFlag('', self::FLAG_NO_DISPATCH, true);
|
48 |
$this->_message(
|
@@ -57,11 +57,11 @@ class Mage_XmlConnect_CheckoutController extends Mage_XmlConnect_Controller_Acti
|
|
57 |
/**
|
58 |
* Get one page checkout model
|
59 |
*
|
60 |
-
* @return
|
61 |
*/
|
62 |
public function getOnepage()
|
63 |
{
|
64 |
-
return Mage::getSingleton('
|
65 |
}
|
66 |
|
67 |
/**
|
@@ -88,7 +88,7 @@ class Mage_XmlConnect_CheckoutController extends Mage_XmlConnect_Controller_Acti
|
|
88 |
$this->_message($error, self::MESSAGE_STATUS_ERROR);
|
89 |
return;
|
90 |
}
|
91 |
-
Mage::getSingleton('
|
92 |
$this->getOnepage()->initCheckout();
|
93 |
|
94 |
try {
|
42 |
{
|
43 |
parent::preDispatch();
|
44 |
if (!Mage::getSingleton('customer/session')->isLoggedIn()
|
45 |
+
&& !Mage::getSingleton('checkout/session')->getQuote()->isAllowedGuestCheckout()
|
46 |
) {
|
47 |
$this->setFlag('', self::FLAG_NO_DISPATCH, true);
|
48 |
$this->_message(
|
57 |
/**
|
58 |
* Get one page checkout model
|
59 |
*
|
60 |
+
* @return Mage_Checkout_Model_Type_Onepage
|
61 |
*/
|
62 |
public function getOnepage()
|
63 |
{
|
64 |
+
return Mage::getSingleton('checkout/type_onepage');
|
65 |
}
|
66 |
|
67 |
/**
|
88 |
$this->_message($error, self::MESSAGE_STATUS_ERROR);
|
89 |
return;
|
90 |
}
|
91 |
+
Mage::getSingleton('checkout/session')->setCartWasUpdated(false);
|
92 |
$this->getOnepage()->initCheckout();
|
93 |
|
94 |
try {
|
app/code/core/Mage/XmlConnect/controllers/Paypal/MepController.php
CHANGED
@@ -56,7 +56,7 @@ class Mage_XmlConnect_Paypal_MepController extends Mage_XmlConnect_Controller_Ac
|
|
56 |
{
|
57 |
parent::preDispatch();
|
58 |
if (!Mage::getSingleton('customer/session')->isLoggedIn()
|
59 |
-
&& !Mage::getSingleton('
|
60 |
) {
|
61 |
$this->setFlag('', self::FLAG_NO_DISPATCH, true);
|
62 |
$this->_message(
|
@@ -200,10 +200,6 @@ class Mage_XmlConnect_Paypal_MepController extends Mage_XmlConnect_Controller_Ac
|
|
200 |
->setCollectShippingRates(true)
|
201 |
->save();
|
202 |
|
203 |
-
if (isset($data['region'])) {
|
204 |
-
$data['region_id'] = $data['region'];
|
205 |
-
}
|
206 |
-
|
207 |
$result = $this->_checkout->saveShippingMethod($data);
|
208 |
if (!isset($result['error'])) {
|
209 |
/** @var $message Mage_XmlConnect_Model_Simplexml_Element */
|
@@ -312,6 +308,7 @@ class Mage_XmlConnect_Paypal_MepController extends Mage_XmlConnect_Controller_Ac
|
|
312 |
$text .= $this->__('Your order # is: %s. ', $orderId);
|
313 |
$text .= $this->__('You will receive an order confirmation email with details of your order and a link to track its progress.');
|
314 |
$message->addChild('text', $text);
|
|
|
315 |
$message->addChild('order_id', $orderId);
|
316 |
$this->getResponse()->setBody($message->asNiceXml());
|
317 |
return;
|
@@ -331,6 +328,7 @@ class Mage_XmlConnect_Paypal_MepController extends Mage_XmlConnect_Controller_Ac
|
|
331 |
*/
|
332 |
protected function _initCheckout()
|
333 |
{
|
|
|
334 |
$quote = $this->_getQuote();
|
335 |
if (!$quote->hasItems() || $quote->getHasError()) {
|
336 |
Mage::throwException($this->__('Unable to initialize MEP Checkout.'));
|
@@ -351,7 +349,7 @@ class Mage_XmlConnect_Paypal_MepController extends Mage_XmlConnect_Controller_Ac
|
|
351 |
*/
|
352 |
protected function _getCheckoutSession()
|
353 |
{
|
354 |
-
return Mage::getSingleton('
|
355 |
}
|
356 |
|
357 |
/**
|
56 |
{
|
57 |
parent::preDispatch();
|
58 |
if (!Mage::getSingleton('customer/session')->isLoggedIn()
|
59 |
+
&& !Mage::getSingleton('checkout/session')->getQuote()->isAllowedGuestCheckout()
|
60 |
) {
|
61 |
$this->setFlag('', self::FLAG_NO_DISPATCH, true);
|
62 |
$this->_message(
|
200 |
->setCollectShippingRates(true)
|
201 |
->save();
|
202 |
|
|
|
|
|
|
|
|
|
203 |
$result = $this->_checkout->saveShippingMethod($data);
|
204 |
if (!isset($result['error'])) {
|
205 |
/** @var $message Mage_XmlConnect_Model_Simplexml_Element */
|
308 |
$text .= $this->__('Your order # is: %s. ', $orderId);
|
309 |
$text .= $this->__('You will receive an order confirmation email with details of your order and a link to track its progress.');
|
310 |
$message->addChild('text', $text);
|
311 |
+
|
312 |
$message->addChild('order_id', $orderId);
|
313 |
$this->getResponse()->setBody($message->asNiceXml());
|
314 |
return;
|
328 |
*/
|
329 |
protected function _initCheckout()
|
330 |
{
|
331 |
+
|
332 |
$quote = $this->_getQuote();
|
333 |
if (!$quote->hasItems() || $quote->getHasError()) {
|
334 |
Mage::throwException($this->__('Unable to initialize MEP Checkout.'));
|
349 |
*/
|
350 |
protected function _getCheckoutSession()
|
351 |
{
|
352 |
+
return Mage::getSingleton('checkout/session');
|
353 |
}
|
354 |
|
355 |
/**
|
app/code/core/Mage/XmlConnect/controllers/WishlistController.php
CHANGED
@@ -43,7 +43,11 @@ class Mage_XmlConnect_WishlistController extends Mage_XmlConnect_Controller_Acti
|
|
43 |
parent::preDispatch();
|
44 |
if (!$this->_getCustomerSession()->isLoggedIn()) {
|
45 |
$this->setFlag('', self::FLAG_NO_DISPATCH, true);
|
46 |
-
$this->_message(
|
|
|
|
|
|
|
|
|
47 |
return ;
|
48 |
}
|
49 |
}
|
@@ -87,8 +91,18 @@ class Mage_XmlConnect_WishlistController extends Mage_XmlConnect_Controller_Acti
|
|
87 |
public function indexAction()
|
88 |
{
|
89 |
$this->_getWishlist();
|
90 |
-
|
91 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
92 |
}
|
93 |
|
94 |
/**
|
@@ -117,10 +131,11 @@ class Mage_XmlConnect_WishlistController extends Mage_XmlConnect_Controller_Acti
|
|
117 |
}
|
118 |
|
119 |
try {
|
120 |
-
$
|
|
|
121 |
if (strlen(trim((string)$request->getParam('description')))) {
|
122 |
$result->setDescription($request->getParam('description'))
|
123 |
-
|
124 |
}
|
125 |
$wishlist->save();
|
126 |
|
@@ -128,7 +143,8 @@ class Mage_XmlConnect_WishlistController extends Mage_XmlConnect_Controller_Acti
|
|
128 |
'wishlist_add_product',
|
129 |
array(
|
130 |
'wishlist' => $wishlist,
|
131 |
-
'product' => $product
|
|
|
132 |
)
|
133 |
);
|
134 |
|
@@ -141,6 +157,7 @@ class Mage_XmlConnect_WishlistController extends Mage_XmlConnect_Controller_Acti
|
|
141 |
} catch (Mage_Core_Exception $e) {
|
142 |
$this->_message($e->getMessage(), self::MESSAGE_STATUS_ERROR);
|
143 |
} catch (Exception $e) {
|
|
|
144 |
$this->_message(
|
145 |
$this->__('An error occurred while adding item to wishlist.'),
|
146 |
self::MESSAGE_STATUS_ERROR
|
43 |
parent::preDispatch();
|
44 |
if (!$this->_getCustomerSession()->isLoggedIn()) {
|
45 |
$this->setFlag('', self::FLAG_NO_DISPATCH, true);
|
46 |
+
$this->_message(
|
47 |
+
$this->__('Customer not logged in.'),
|
48 |
+
self::MESSAGE_STATUS_ERROR,
|
49 |
+
array('logged_in' => '0')
|
50 |
+
);
|
51 |
return ;
|
52 |
}
|
53 |
}
|
91 |
public function indexAction()
|
92 |
{
|
93 |
$this->_getWishlist();
|
94 |
+
try {
|
95 |
+
$this->loadLayout(false);
|
96 |
+
$this->renderLayout();
|
97 |
+
} catch (Mage_Core_Exception $e) {
|
98 |
+
$this->_message($e->getMessage(), self::MESSAGE_STATUS_ERROR);
|
99 |
+
} catch (Exception $e) {
|
100 |
+
Mage::logException($e);
|
101 |
+
$this->_message(
|
102 |
+
$this->__('An error occurred while loading wishlist.'),
|
103 |
+
self::MESSAGE_STATUS_ERROR
|
104 |
+
);
|
105 |
+
}
|
106 |
}
|
107 |
|
108 |
/**
|
131 |
}
|
132 |
|
133 |
try {
|
134 |
+
$buyRequest = new Varien_Object($this->getRequest()->getParams());
|
135 |
+
$result = $wishlist->addNewItem($product, $buyRequest);
|
136 |
if (strlen(trim((string)$request->getParam('description')))) {
|
137 |
$result->setDescription($request->getParam('description'))
|
138 |
+
->save();
|
139 |
}
|
140 |
$wishlist->save();
|
141 |
|
143 |
'wishlist_add_product',
|
144 |
array(
|
145 |
'wishlist' => $wishlist,
|
146 |
+
'product' => $product,
|
147 |
+
'item' => $result
|
148 |
)
|
149 |
);
|
150 |
|
157 |
} catch (Mage_Core_Exception $e) {
|
158 |
$this->_message($e->getMessage(), self::MESSAGE_STATUS_ERROR);
|
159 |
} catch (Exception $e) {
|
160 |
+
Mage::logException($e);
|
161 |
$this->_message(
|
162 |
$this->__('An error occurred while adding item to wishlist.'),
|
163 |
self::MESSAGE_STATUS_ERROR
|
app/design/adminhtml/default/default/template/xmlconnect/mobile/notification_helper.phtml
CHANGED
@@ -4,10 +4,10 @@
|
|
4 |
*
|
5 |
* NOTICE OF LICENSE
|
6 |
*
|
7 |
-
* This source file is subject to the
|
8 |
-
* that is bundled with this package in the file
|
9 |
* It is also available through the world-wide-web at this URL:
|
10 |
-
* http://opensource.org/licenses/
|
11 |
* If you did not receive a copy of the license and are unable to
|
12 |
* obtain it through the world-wide-web, please send an email
|
13 |
* to license@magentocommerce.com so we can send you a copy immediately.
|
@@ -18,10 +18,10 @@
|
|
18 |
* versions in the future. If you wish to customize Magento for your
|
19 |
* needs please refer to http://www.magentocommerce.com for more information.
|
20 |
*
|
21 |
-
* @category
|
22 |
-
* @package
|
23 |
* @copyright Copyright (c) 2010 Magento Inc. (http://www.magentocommerce.com)
|
24 |
-
* @license http://opensource.org/licenses/
|
25 |
*/
|
26 |
?>
|
27 |
<div class="notification-global notification-global-notice">
|
4 |
*
|
5 |
* NOTICE OF LICENSE
|
6 |
*
|
7 |
+
* This source file is subject to the Academic Free License (AFL 3.0)
|
8 |
+
* that is bundled with this package in the file LICENSE_AFL.txt.
|
9 |
* It is also available through the world-wide-web at this URL:
|
10 |
+
* http://opensource.org/licenses/afl-3.0.php
|
11 |
* If you did not receive a copy of the license and are unable to
|
12 |
* obtain it through the world-wide-web, please send an email
|
13 |
* to license@magentocommerce.com so we can send you a copy immediately.
|
18 |
* versions in the future. If you wish to customize Magento for your
|
19 |
* needs please refer to http://www.magentocommerce.com for more information.
|
20 |
*
|
21 |
+
* @category design
|
22 |
+
* @package default_default
|
23 |
* @copyright Copyright (c) 2010 Magento Inc. (http://www.magentocommerce.com)
|
24 |
+
* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
|
25 |
*/
|
26 |
?>
|
27 |
<div class="notification-global notification-global-notice">
|
package.xml
CHANGED
@@ -1,19 +1,19 @@
|
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>Magento_Mobile</name>
|
4 |
-
<version>1.
|
5 |
<stability>stable</stability>
|
6 |
<license>mixed</license>
|
7 |
<channel>community</channel>
|
8 |
<extends/>
|
9 |
<summary>Magento Mobile Xml Interface</summary>
|
10 |
<description>An integration magento with mobile applications (e.g. iPhone, Android, iPad)</description>
|
11 |
-
<notes>1.
|
12 |
internal svn revision #121425</notes>
|
13 |
<authors><author><name>Magento Core Team</name><user>auto-converted</user><email>core@magentocommerce.com</email></author></authors>
|
14 |
<date>2011-12-29</date>
|
15 |
-
<time>10:
|
16 |
-
<contents><target name="mageskin"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="images"><dir name="xmlconnect"><dir name="design_default"><file name="accordion_open.png" hash="4c89d903ebbc61ee295ef64a60724b10"/><file name="accordion_open_android.png" hash="7ef2f1d193990c3f4c2c90aae9ab3281"/><file name="accordion_open_android_l.png" hash="bc27688afbfd866c618477ea2c7bf0ee"/><file name="accordion_open_android_p.png" hash="2e4549cba575c12ef2a39c12e9ffe173"/><file name="accordion_open_ipad_l.png" hash="dcdda97da6556393b972d6dae8d6bac5"/><file name="accordion_open_ipad_p.png" hash="55cca08a0ab79047961858789ff8c3a7"/><file name="banner_1_2.png" hash="0637d31df6b5a434c9a332ee46122ef4"/><file name="banner_android.png" hash="02695661b8e50e1a001c3369622f322f"/><file name="banner_ipad.png" hash="c1d59a6ec67da1bb76c5142453da7acf"/><file name="banner_ipad_l.png" hash="04e850d481a9ae902f33fd8c1f89cbf0"/><file name="smallIcon_1_6.png" hash="c1ce9e289eaf2c0504d502928693bd89"/></dir><dir name="mobile_preview"><dir name="android"><file name="background_home_landscape.jpg" hash="1f79a1f42ca4e2cf6010ab6c3ef66aa4"/><file name="background_portrait.jpg" hash="197b15e6455ad1a85e1bad6595371fa3"/><file name="bg_button_up.gif" hash="204f590a88933c930b7fc92963accfab"/><file name="bg_catalog_filters.png" hash="7464191ebaf576b73a3c021eb1cfcc25"/><file name="bg_catalog_filters_shadow.png" hash="5021ad60917190026d85fae1d33bdaa9"/><file name="bg_cat_item.png" hash="2859b45c387b66243d4af2ba973b2ae1"/><file name="bg_frame.gif" hash="7062ed9b7563fc658f49ce7cfdd34f1c"/><file name="bg_header.png" hash="d4a46c8850d1d89259921b1c28b5bce1"/><file name="bg_header_catalog.png" hash="c1080cd18a89e21da18fdc6955bf6230"/><file name="bg_header_home.png" hash="dfce0445ca7c7a45c7914a986b596ce0"/><file name="bg_home_header.png" hash="8bc1887a0c5760cc47b77b8a7a320426"/><file name="bg_logo.png" hash="02695661b8e50e1a001c3369622f322f"/><file name="bg_page.png" hash="d65f1d123655c2eaf3bb4a1e6035a08d"/><file name="bg_star.png" hash="fc6de6c4e0ed3478b8840e1ab81da725"/><file name="bg_star_empty.png" hash="3f0421fb8c8f6c4be6ca501168a881e8"/><file name="bg_status_bar.png" hash="52b41106451ac34672f82338bbc5370c"/><file name="ico_account.png" hash="c1fd338c74fcf483155acbd37c430807"/><file name="ico_home.png" hash="2de37f640463b354d68945320bfe3e4f"/><file name="ico_search.png" hash="8b0dd17a3e9c3328e66204fe379c66aa"/><file name="product_image.png" hash="dd975b128ba303e0ae2adc9772e0433c"/><file name="product_image_1.jpg" hash="8994979d4dcc1f339c73cd1f44398a7d"/><file name="product_image_2.jpg" hash="26d6599bdb35d80b25a1e903b40cfa19"/><file name="product_image_3.jpg" hash="d7c6d05196a84341afe0025d01b9dc61"/><file name="product_image_4.jpg" hash="2a88ead3dbbeff1d40168db692841f2f"/></dir><dir name="custom_icons"><file name="account.png" hash="0498d73e47ed47179e5546dc15c17dc7"/><file name="actionsBg.jpg" hash="ee3db742cbec9a436ba46118c8a01303"/><file name="addToCart.png" hash="e33876648546e99d875ca92bd2cd78e9"/><file name="addToWishlist.png" hash="1018602b7c5e0e11f0427ace96fd7d52"/><file name="background.gif" hash="bd92833eb2eb32e4a0282cea153ac13f"/><file name="buttons.gif" hash="0cd19a9d9178976906161ea100cba958"/><file name="cart.png" hash="815b4c64fae21b4c162525ece76dc44d"/><file name="home.png" hash="9e473791b022b7c2dfc7d29b1b6de887"/><file name="image-bg.png" hash="14bde5cf8b00dc5f6c60e52a0fa964dc"/><file name="logo-small.png" hash="9b3477a4552bcb878b4943aae5351622"/><file name="rowBgIcon.gif" hash="9ee89b961ae2bb047672ba5d2d2677c6"/><file name="search.png" hash="10bfa7ec3361ce7cbcc5d25087f181eb"/><file name="shop.png" hash="e6639a9fdc143363da82a7d78e126f1c"/><file name="star-active.png" hash="d4ab959a92bda610527a3e3942c4c0b0"/><file name="star-inactive.png" hash="f7fb99710be4c03ac23b1206f20e761d"/><file name="tellAFriend.png" hash="46f8ef48b29f245977d66d9312d87e70"/><file name="viewDetails.png" hash="9bacc63bcc483d3db5614a026d9391f6"/><file name="viewGallery.png" hash="304f3d03949d07055bc056359fe17763"/></dir><dir name="gradients"><file name="footer.png" hash="31a2feed50ef9c8637b412c4211f8300"/><file name="header.png" hash="5386da930a944cd75562216249cce08a"/><file name="header2.png" hash="ad5a2dc6ec93914e925cfe2d43fb30a2"/><file name="header3.png" hash="920ad8c6903e90323a57fb02dca37280"/><file name="item-bg.png" hash="a14886d1f9e14284ac6b4f1b61e68646"/><file name="sort-bg.png" hash="b8053bb772e849909e5b87e4fd1ebbe4"/></dir><dir name="icons"><file name="account.png" hash="0498d73e47ed47179e5546dc15c17dc7"/><file name="cart.png" hash="815b4c64fae21b4c162525ece76dc44d"/><file name="home.png" hash="9e473791b022b7c2dfc7d29b1b6de887"/><file name="more.png" hash="f3662ae29923b87eba3a729192aa3df3"/><file name="page.png" hash="2291d77f21de042040bc0864be40138b"/><file name="search.png" hash="10bfa7ec3361ce7cbcc5d25087f181eb"/><file name="shop.png" hash="e6639a9fdc143363da82a7d78e126f1c"/></dir><dir name="ipad"><file name="background_home_landscape.jpg" hash="9e3ef117985113b804531142d539b60a"/><file name="background_portrait.jpg" hash="bdf9e034fd30b923086e6c622ea10451"/><file name="banner_image.png" hash="693bb9d118155a146b21ce9fcfba08da"/><file name="banner_image_l.png" hash="a070a40d57610b5cc7160fe894482a1c"/><file name="bg_catalog_header_hor.png" hash="f61a67aa288e1b8a8df7b4d4527c662e"/><file name="bg_content.jpg" hash="70ddfc8959d878d1231dc7cbee4a063c"/><file name="bg_filters_buttons.png" hash="02fcb0ed7a7268e9f64ebaf06235bc09"/><file name="bg_filters_tooltip.png" hash="3b05ca6e585acd3d766be01eeaa23d47"/><file name="bg_filters_wrap.png" hash="31288784fe95c67de9b45b44458b4155"/><file name="bg_filter_button.png" hash="728f1cd358446881ffd863eff12204a1"/><file name="bg_header.png" hash="e2cf5a575a27e6e4533e3c85e3472a82"/><file name="bg_home_content.jpg" hash="1d55a198279e4f2b163c98c18f699646"/><file name="bg_home_header.png" hash="00f2fbf96d2b915dcbcd921b0301ef3f"/><file name="bg_home_header_hor.png" hash="9bfef728ece003d5b3433d2623ea168c"/><file name="bg_home_products.png" hash="ac6a8a79b959a0c8298b1f607c0f0af8"/><file name="bg_home_shadow.png" hash="c54b071ca3e97a6ee67588ef74b7b44e"/><file name="bg_home_shadow_hor.png" hash="0d21a99c5c749d0e5070e3585ff4a23f"/><file name="bg_product_image.png" hash="4da74325c1a4ee1ca19b414e5d590f75"/><file name="bg_search.png" hash="6ee08d05d0c4ef9ed64b9914b821f408"/><file name="bg_sections.jpg" hash="0ee90005663aced09a9ce6385bdbce2c"/><file name="bg_status_bar.png" hash="17124d9d392bb8e37b202c80a595df54"/><file name="bg_status_bar_hor.png" hash="bd4a9f11ecb1c896145267731d8a951d"/><file name="i_cart.png" hash="1bbe0a0e54eed5bb14b9bfcce83da758"/><file name="i_info.png" hash="3f0fda8b294b67bf698badbcaa99150b"/><file name="i_login.png" hash="deb4089bdc61582c78c90ef192d577e8"/><file name="i_remove.png" hash="4923eb5e76b3c6ba6df5c667db816a0c"/><file name="logo.png" hash="49c19f59b459b6c0b3b99daa3fe7f932"/><file name="logo_big.png" hash="693bb9d118155a146b21ce9fcfba08da"/><file name="product_image.jpg" hash="2bb6c69129bcb18dc93e9f48605647c6"/><file name="sections_arrow.png" hash="7db7144083a31882e8a62cb9579f478f"/><file name="stars.png" hash="70d38cd9883d70e4f6b21ac4874b9868"/></dir><dir name="slider"><file name="actionsBg.jpg" hash="ee3db742cbec9a436ba46118c8a01303"/><file name="addToCart.png" hash="2a146be4bc63713df19cc353e030d44f"/><file name="addToWishlist.png" hash="9b23a4e0d9acfc79f314e9082f14c4de"/><file name="tellAFriend.png" hash="b7600fa2ae52bdb1d6bb86fe4d9f1773"/><file name="viewDetails.png" hash="90cf37c6dbbee1861350b4c05469e3ae"/><file name="viewGallery.png" hash="304f3d03949d07055bc056359fe17763"/></dir><dir name="sort_buttons"><file name="bg_button.png" hash="87d0f1b123f01c3aea3cb8a2b146306e"/><file name="buttons.gif" hash="2f14f1a3f0fb38790779c992a58654ae"/><file name="buttons.png" hash="b4a3f17370e03bf5d2a5cdf7800c25a7"/><file name="button_up.gif" hash="7ad527f99b9975d5634fb2d5cc99e6b3"/><file name="center-active.png" hash="5903988cd458cd794f23a212d51aa725"/><file name="center-inactive.png" hash="135b46aaa5c3b131a5a7e9c45c004e06"/><file name="filters.png" hash="3837ab6fcfe959833dd998533db1ca7f"/><file name="left-active.png" hash="86e94441b96a0d27d0b0a7e5108f86ed"/><file name="left-inactive.png" hash="0ddcb75aa9971cca39a5a65b4bdff8c4"/><file name="right-active.png" hash="320740ff608187301b06a96eab2f9e8e"/><file name="right-inactive.png" hash="cac4b39ab380353ffd5fdbcedb6e0a0a"/></dir><file name="1.gif" hash="817fd84187db3eee00799b0acf316457"/><file name="2.gif" hash="1a842d8f3ac25cfcdeab6c86dd8fea89"/><file name="3.gif" hash="207cd55e968c284bd52c86efdcdda1c7"/><file name="actionsBackground.png" hash="11faa8baee72f3e6a9a02a83915c8658"/><file name="actionsBg.png" hash="9acccd1980f17006942d74a718ebd7da"/><file name="arrow.png" hash="837259a7c365e46034dca728bffe9070"/><file name="background.gif" hash="bd92833eb2eb32e4a0282cea153ac13f"/><file name="background.png" hash="3717f4b4ba725701e2a0604129a3a815"/><file name="banner.png" hash="0637d31df6b5a434c9a332ee46122ef4"/><file name="btn-l.png" hash="92b2454528e9d39119038777cf53329c"/><file name="btn-r.png" hash="8c6aa9fd9203bc10822e0505f11e0c4d"/><file name="buttons.php" hash="a04839d41cf73d4c70b498ec75ff2bd4"/><file name="circle.png" hash="f4c116cb0554bf936d3b9ee38b7f3d1f"/><file name="grid.png" hash="23faa3f5572cdeb597c2bceedd93a7f8"/><file name="image-bg.png" hash="a588b9cced95a25fc18e28c775d9a001"/><file name="imageFrame.php" hash="f5a1298dfc6cb70cb486b55820f5ab21"/><file name="info.png" hash="3f0d2ed85b81e8251f294457c6bfa404"/><file name="lightStar.php" hash="cba0a7c5f28a1bbc764761f4fc581fe3"/><file name="lightStar.png" hash="b5dc40d5b793dae6a069357f49cccc24"/><file name="lightStar2.png" hash="75928926a6112540c9cb073157cb7d95"/><file name="lines-h.png" hash="ea3d95812c9838affc6df2f3a3cb1977"/><file name="lines-v.png" hash="9e3ffee29ba28477d50da9642019bc0a"/><file name="login-btn-left-alt.png" hash="71bb6c7d24252aace27bee711d7616f4"/><file name="login-btn-left.png" hash="cbbf9afc6e9fc433f57270e88b63f351"/><file name="login-btn-right.png" hash="438fcc598d012bf6d33184e95accfd24"/><file name="login-btn.png" hash="051ee2c1a8ce3f7b8de3293cd2e2ed85"/><file name="logo-small.png" hash="9b3477a4552bcb878b4943aae5351622"/><file name="logo_25.png" hash="ba41ed568d916175c32803b614442447"/><file name="men.png" hash="46d7d1773118ef0a27353e8a9f6719fe"/><file name="mm-frame.gif" hash="eebf30806f1dbf2118e7ec39a016c86d"/><file name="mobile-catalog.css" hash="80cbd74984354df2d86f4ad68b9123a3"/><file name="mobile-home.css" hash="b57641c73c4eae08e0a02cd7291d9465"/><file name="rowBgIcon.gif" hash="9ee89b961ae2bb047672ba5d2d2677c6"/><file name="slider.gif" hash="c6b87bf15b85b18c0515e2cbefaabe60"/><file name="smallIcon.png" hash="e76d2a6364042f41b3f35fc8cdc9c0ee"/><file name="star-active.png" hash="d4ab959a92bda610527a3e3942c4c0b0"/><file name="star-inactive.png" hash="f7fb99710be4c03ac23b1206f20e761d"/><file name="t-shirt.gif" hash="7505efdaabf13c4f8e26f7cfe15c8c96"/><file name="t-shirt.png" hash="46d7d1773118ef0a27353e8a9f6719fe"/><file name="women.png" hash="46d7d1773118ef0a27353e8a9f6719fe"/><file name="youth.png" hash="46d7d1773118ef0a27353e8a9f6719fe"/></dir><file name="dropdown-arrow.gif" hash="332e99ca6b4d1e0d39972e04fb0b2395"/><file name="empty.png" hash="23dc9dc3c4751f83c2df7a5c42668824"/><file name="full-arrow-left.gif" hash="8ec91b60d38d1a16cba7670f2088a5c7"/><file name="full-arrow.gif" hash="36ddff0fca1c7d8900cb3633e0a30cea"/><file name="gel_green.png" hash="591959d831e8e42c9175d12a88f0bae2"/><file name="gel_red.png" hash="db442c023014df9da32b84bc1bb5a39f"/><file name="l-arrow.gif" hash="ee49f7eab64657b5131953acef0238fd"/><file name="loading.gif" hash="5d25806dac7cbee5f894b13144783866"/><file name="r-arrow.gif" hash="d0429a9781e915fc9d9ca8875c470d32"/><file name="small_logo.gif" hash="d5c8be7c0f16aac2549759c0228492d6"/><file name="swatch_black.gif" hash="fd31d6a3a435c8ad1f7c43f346bb47e4"/><file name="swatch_custom.gif" hash="fb34791a48366957a141e12b563888c2"/><file name="swatch_default.gif" hash="fb34791a48366957a141e12b563888c2"/><file name="swatch_funk_leaf.gif" hash="f1d3ba87efb742b47da879a6f48909c4"/><file name="swatch_hot_red.gif" hash="d9363d45dc2993c2fdc3ea43c5b6f71c"/><file name="swatch_sky_blue.gif" hash="ded1455db119d09a3aedd7474fd1875a"/><file name="swatch_user_custom.gif" hash="a24f31421a1ff56d1be0845f9a7c7020"/><file name="switch-arrow.gif" hash="dc7243962b341f366cd072d486687e6a"/><file name="tab_account.png" hash="27101fbaa78a07426be4768acc4c53ff"/><file name="tab_account_android.png" hash="77605cbc87f75ca17e91a5393765ceb1"/><file name="tab_account_ipad.png" hash="2997de5402195d0720309b73c6446fab"/><file name="tab_cart.png" hash="e803f760ee81cb35183f1122f388b774"/><file name="tab_cart_android.png" hash="477e97f8d03ea8aa674e952709f86578"/><file name="tab_empty.png" hash="bdd4cc355566e8861b2c45424ad94516"/><file name="tab_home.png" hash="dfa104e4da74e4a55d3c98d6ee0f7122"/><file name="tab_home_active.png" hash="bba5eb9bb724c84c1ede9e6f4bec3575"/><file name="tab_home_android.png" hash="1fefc6b070cc21b31b43194a7d85f9d9"/><file name="tab_info_android.png" hash="67fc19d8d926f7aede482f5a7083fc71"/><file name="tab_more.png" hash="2803359cb3e795bf67457e727aa16020"/><file name="tab_page.png" hash="ca05dbc42f944b8d4255f6675f6dd93a"/><file name="tab_search.png" hash="2cf29dbe325558353621b4241543204f"/><file name="tab_search_android.png" hash="932c2c568872fd9e119367c887f0539a"/><file name="tab_shop.png" hash="f36be0d3d27f2b37626247d3f6a55e2a"/><file name="tab_shop_active.png" hash="de907d6a52d477d4319649f9b0e2e4aa"/><file name="tab_shop_android.png" hash="e119fcd20f8cba856d550a64d775ddbb"/><file name="tmp-icon.gif" hash="58b759aecf3bdae26d5aaff7a0be5c90"/><file name="xmlconnect_tab.png" hash="cd99a7e01a42a6c82d866f7684faeb95"/></dir></dir><dir name="xmlconnect"><dir name="fonts"><file name="android_icons-webfont.eot" hash="2fc917efbfb3c933ccfddc108ef05f33"/><file name="android_icons-webfont.svg" hash="e8cb2b5ef019bbc2885c97ed0caaf2a0"/><file name="android_icons-webfont.ttf" hash="bc567dd7a381093fbb652c58cbad9430"/><file name="android_icons-webfont.woff" hash="8310b54d55bf84a8a3f3a86c22a51aef"/><file name="stars-webfont.eot" hash="019beb4b8ec19447657cf3106138bbe3"/><file name="stars-webfont.svg" hash="20cf0312c0b951d173d4531ea18abc6f"/><file name="stars-webfont.ttf" hash="d63d95e9adaf775f410437535622bf60"/><file name="stars-webfont.woff" hash="526d9756131c94139f0f1df5272197fd"/></dir><file name="boxes.css" hash="9afcff3669e4286e565894da7f7ee4e3"/><file name="dropdown.css" hash="e5388a1fd90df2a2e3860516adef0367"/><file name="mobile-android.css" hash="c932d2898a1ffd5545cfd76699260125"/><file name="mobile-catalog.css" hash="ca7c4c2c7643ca1249e00bbd45980fd2"/><file name="mobile-home.css" hash="b10c97acf5ac07c40d1db72b9d413841"/><file name="mobile-ipad-catalog.css" hash="2b35f47bb153c659640dd37beac277f1"/><file name="mobile-ipad-home.css" hash="270c8e4c8111de6c6173f9b6883c85ec"/><file name="styles.css" hash="c87a56ddc3001a2e357d648695855f5f"/></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="images"><dir name="xmlconnect"><dir name="catalog"><dir name="category"><dir name="placeholder"><file name="image.jpg" hash="097ab8a3051bc037ea3de0e17f440540"/><file name="small_image.jpg" hash="f825d16f97a640453553c79c48ebaa73"/><file name="thumbnail.jpg" hash="b2b682d28a08a748a73d2cda70ab5a57"/></dir></dir></dir><file name="tab_account.png" hash="0498d73e47ed47179e5546dc15c17dc7"/><file name="tab_cart.png" hash="9055ba76e256a51d3fee53a8c41d5226"/><file name="tab_home.png" hash="07d0af93e167b9366d3d4fb3d6cdb31c"/><file name="tab_more.png" hash="b9fc21feb8d7655bc9c2985c37b0de2f"/><file name="tab_page.png" hash="ca05dbc42f944b8d4255f6675f6dd93a"/><file name="tab_search.png" hash="25e880eb2a4d06828e2e1c3f32d22400"/><file name="tab_shop.png" hash="fe602fc2e7093efef5ecc0b027a32d91"/></dir></dir></dir></dir></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="xmlconnect.xml" hash="3bcc520298d90ea72c85de89a44e607b"/></dir><dir name="template"><dir name="xmlconnect"><dir name="edit"><dir name="tab"><dir name="design"><dir name="preview"><file name="catalog_android.phtml" hash="591050ccc493b364fb895055c986cd86"/><file name="catalog_hor_ipad.phtml" hash="a289faccee351af884d5628ecb07a5c3"/><file name="catalog_ipad.phtml" hash="ebe5ed4da38c4b16263c1f3b5d3c95c4"/><file name="catalog_iphone.phtml" hash="3446aa0942ef6e1fd4846b68c0141ae1"/><file name="home_android.phtml" hash="f3ec85295af00953503dd0dfd3b07715"/><file name="home_hor_ipad.phtml" hash="bb06939e0ce07a268a09c6fb62c6e368"/><file name="home_ipad.phtml" hash="fc1622ae6ce681b96e5f9394259f57a6"/><file name="home_iphone.phtml" hash="55f8d4382b9c55787f4b8f7645c92b70"/><file name="productinfo_iphone.phtml" hash="99c2fd2107ad06e625384b56182fd316"/><file name="tab_items_android.phtml" hash="d0b925bbc89f510aac004ffc1b33062a"/><file name="tab_items_ipad.phtml" hash="8ca8d864408bb880b6f6a9999b0e4d26"/><file name="tab_items_iphone.phtml" hash="406b98b55565fb58c1a3e3dc90922d6e"/></dir><file name="preview_android.phtml" hash="665e283d03607df92a19b704a6249091"/><file name="preview_ipad.phtml" hash="65ffa0ca65f4ec79cae7fc0ccc26455b"/><file name="preview_iphone.phtml" hash="bf8058aeec27e381c3843d239ac82180"/></dir><file name="design.phtml" hash="78814e106947fefd781c9d25de89ace2"/></dir></dir><dir name="form"><dir name="element"><dir name="country"><file name="androidmarket.phtml" hash="053e69572e7b8850f3f96f22c5d5f9f7"/><file name="istore.phtml" hash="275af872365061838828011b0398db02"/></dir><file name="addrow.phtml" hash="46fddf6c4b452a6c529499de2c2f1323"/><file name="app_tabs_android.phtml" hash="92df75ceecedd911eed98ae8703ac83a"/><file name="app_tabs_ipad.phtml" hash="43649f88a29fe3691e5525d5c32756fe"/><file name="app_tabs_iphone.phtml" hash="4936c1e64fe3da857b1108ab44a8598d"/><file name="themes.phtml" hash="9eb56bd1ce4651b28fe8f40fcdde48ed"/></dir></dir><dir name="mobile"><file name="notification_helper.phtml" hash="bbcefff164d2368dbfb373d3b580563b"/></dir><dir name="submission"><file name="app_icons_preview.phtml" hash="4d4f0f78338338d15605777df69be0e7"/><file name="container.phtml" hash="c576009dd87ddd55ce8b023587128806"/></dir><dir name="template"><file name="preview.phtml" hash="bd26b9a350f430e4a6905133db031bfc"/></dir></dir></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><file name="xmlconnect.xml" hash="ea972c3a22b447b702eec153a3f3a874"/></dir><dir name="template"><dir name="xmlconnect"><dir name="pbridge"><file name="result.phtml" hash="412b98ba988d6049098414f8cbce09b6"/></dir></dir></dir></dir></dir></dir></target><target name="magelocale"><dir name="en_US"><file name="Mage_XmlConnect.csv" hash="29db96ab0fe9b5ec94dac6542a3ab618"/></dir></target><target name="mageweb"><dir name="js"><dir name="jscolor"><file name="arrow.gif" hash="5034704a76cd55c1cbcbc58ea6bf523f"/><file name="cross.gif" hash="ba9a274b9323753cd95bc3b1eb2f4e5f"/><file name="demo.html" hash="edf71251cb2be20322d2efb00aee86a6"/><file name="hs.png" hash="fefa1a03d92ebad25c88dca94a0b63db"/><file name="hv.png" hash="990d71cada17da100653636cf8490884"/><file name="jscolor.js" hash="b65a1505390592ac6c0177d6b84774e0"/></dir></dir></target><target name="magecore"><dir name="Mage"><dir name="XmlConnect"><dir name="Block"><dir name="Adminhtml"><dir name="History"><file name="Grid.php" hash="6308d26ad2e05740eb6991e3257000bb"/></dir><dir name="Mobile"><dir name="Edit"><dir name="Tab"><dir name="Design"><dir name="Accordion"><file name="Images.php" hash="5229cee37fc9cc89dbd8f32b3a4434e6"/><file name="Tabs.php" hash="caf8302b277ea18303213d43764ed28e"/><file name="Themes.php" hash="9d6dec2260396ad8798202ee1ba6eddc"/></dir><file name="Accordion.php" hash="daf3ddb3a6c9229dad32279e4b691b1a"/><file name="Preview.php" hash="dd1c33fc43745d2158a29fe542233b44"/><file name="Themes.php" hash="6ae0e49f82cc094f5dd9315887f9e14d"/></dir><dir name="Submission"><file name="History.php" hash="1bf1ca22e91880a17bd0020baecd4c8f"/></dir><file name="Cache.php" hash="607618d233c5dab9415475b4ad61bb59"/><file name="Content.php" hash="2e67d807374eecdafac94823cfdc63cb"/><file name="Design.php" hash="f90d65ffa27e94916da616afc8e221f2"/><file name="Flurryanalytics.php" hash="89ad25f1adf60b1e4232ba29f7f5ad64"/><file name="General.php" hash="4bf60b4d629f4b9952998ae4070ab623"/><file name="Notification.php" hash="beae607b96d8b6f98cd7022185cc8bdd"/><file name="Payment.php" hash="0b7f6bd130dcab67f25f6e91450d2c65"/><file name="Settings.php" hash="82c672adcaafe6e795268fe86340925f"/><file name="Social.php" hash="995bb1c3f994ca89bc71d1d2aaadf0d7"/></dir><file name="Form.php" hash="9e9957b476bbd1fb3952c4e4b706b2df"/><file name="Submission.php" hash="029403d08204bd9f964adc98af0d435a"/><file name="Tabs.php" hash="0d72c2e64a1173c2992c7a8f3dbf11f8"/></dir><dir name="Form"><dir name="Element"><file name="Addrow.php" hash="71e222b534aa23880065618cda412260"/><file name="Color.php" hash="24c6b153ce8f2649b1a05477f4c3e7b8"/><file name="Country.php" hash="3b83f00f657eb7dd867ea75f4abdf88d"/><file name="Datetime.php" hash="92cf9dfafa11da7d8ab75c9423925bd5"/><file name="Font.php" hash="dec4888c88e4c6dbbf76486267e38518"/><file name="Image.php" hash="cf494edb2cc4527d622a8091247d304a"/><file name="Page.php" hash="825acf20d00a34454c66a4c951452b69"/><file name="Tabs.php" hash="6115f3e6782e47c8949c55be4475bdd7"/><file name="Theme.php" hash="21fee731b3a652cf71f08abbff175c05"/></dir></dir><dir name="Grid"><dir name="Renderer"><file name="Bool.php" hash="f1baaf5e240ca3cc63a6da9935175790"/><file name="Type.php" hash="b6337cfe77db1a45ff431143055e405f"/></dir></dir><dir name="Preview"><file name="Content.php" hash="69bf38fd148410c3814beacf1317b5c7"/><file name="Tabitems.php" hash="e5e0f60bc074765c8cefd99f78832711"/></dir><dir name="Submission"><dir name="Renderer"><dir name="Country"><file name="Androidmarket.php" hash="481eac62f66724a28a582d134252fda7"/><file name="Istore.php" hash="ce072e5248b0c2fe715f50542df3370c"/></dir></dir><dir name="Tab"><dir name="Container"><file name="Submission.php" hash="94ec8a46ff9c9271c03df4850690ca89"/></dir><file name="Container.php" hash="bd10d3d94dbe4d422e84be6fe2c1ace6"/></dir><file name="Form.php" hash="aa5991aeba94abc34a4818afb8b6cf8d"/><file name="Tabs.php" hash="030ddf84029b44dd6093fad755d4e7e9"/></dir><dir name="Widget"><file name="Form.php" hash="2bd91c9af96eaf42d1484b263857772b"/></dir><file name="Edit.php" hash="bb11de03ea1b302fb38a06013bfb8b1a"/><file name="Grid.php" hash="8ca26959087f2a12d5f9aa3bf1fc650b"/><file name="Submission.php" hash="c37035f19250ddcbf3e8c8b3227f99d8"/></dir><dir name="Queue"><dir name="Edit"><file name="Form.php" hash="b19085649fc95114bb14f9e2770f84ce"/></dir><dir name="Grid"><dir name="Renderer"><file name="Action.php" hash="06c1c06834fad162e09badd802066148"/><file name="Application.php" hash="874a8634ffd63025061bb74833bab9d8"/><file name="Id.php" hash="5a3bd6f7130ff4354884635d1246452c"/><file name="Msgtitle.php" hash="0b4710291f331cf3840cad4ccc26ca09"/><file name="Pushtitle.php" hash="e0725a10e0150cb9c6719a41712a15b5"/><file name="Status.php" hash="3b6d6c7d3104f0201e2431bad9bafacb"/><file name="Template.php" hash="31d623d9873431816847dc246466904e"/></dir></dir><file name="Edit.php" hash="917d5a952c18c9c718587a51f899681f"/><file name="Grid.php" hash="4129ef90b9c3a79e4492f49569025b36"/></dir><dir name="Template"><dir name="Edit"><file name="Form.php" hash="6f333660b1365f657d45eb95f17d3f11"/></dir><dir name="Grid"><dir name="Renderer"><file name="Application.php" hash="cdae7056f704834da9e400277411ac0b"/></dir></dir><dir name="Preview"><file name="Form.php" hash="1e374a00f79d85e3f14c7342577dcef7"/></dir><file name="Edit.php" hash="063f75ad4a742fff0223e1c8442b4a97"/><file name="Grid.php" hash="3f53fcf95cd6aaadfeecc8fde7d2c925"/><file name="Preview.php" hash="891acec6c53c94b2f2dbc892c9fb80dc"/></dir><file name="History.php" hash="d00a4acfccbd558e64ffe4eecb731d9a"/><file name="Mobile.php" hash="8b65767102a85340128f9388a96b6cf2"/><file name="Queue.php" hash="e13f7f2fa44867d5580b7d0e38542bae"/><file name="Template.php" hash="2a577c9a452528e44f69b730cef9f9a1"/></dir><dir name="Cart"><dir name="Item"><dir name="Renderer"><file name="Configurable.php" hash="55eb93a62e002ec0c6c1778d13cab566"/><file name="Grouped.php" hash="46290fe4e7338f0640022f591f0dfb25"/></dir><file name="Renderer.php" hash="466dea340ab205b668c68cfcc9a8381c"/></dir><dir name="Paypal"><dir name="Mecl"><file name="Details.php" hash="6a49316d593a0dd7ed1cfb18449533a2"/><file name="Review.php" hash="650c4907b56681e8f083d5d68962429a"/><file name="Shippingmethods.php" hash="b2973168b72ad1d7f5872394cfab3be2"/></dir><dir name="Mep"><file name="Totals.php" hash="2a792eade2e508c362ae636a6f08433a"/></dir></dir><file name="Crosssell.php" hash="b66c8c6397fea089fe1a886365d8e332"/><file name="Info.php" hash="574c54a69e4cd9007cd290f6676d65b1"/><file name="Totals.php" hash="d663af881a2de7140afb8f6f2aeafc9d"/></dir><dir name="Catalog"><dir name="Category"><file name="Info.php" hash="9dd1d0109dd30edb081e8102c0edc0ab"/></dir><dir name="Product"><dir name="Options"><file name="Bundle.php" hash="417d3066a8c984913d0f02a634ae5990"/><file name="Configurable.php" hash="013597b77cc865f6aa85f3b52d28e8c5"/><file name="Giftcard.php" hash="118eaa05629f5d6d0b930c635c436e1b"/><file name="Grouped.php" hash="211fc47f8b1ef5c9831fc933710c5181"/><file name="Simple.php" hash="d3fac669f96f237994e17ec48f45f207"/><file name="Virtual.php" hash="1d92b50e412eb3b524989b91047866be"/></dir><dir name="Price"><file name="Bundle.php" hash="7b02ebcd20d892c23040bcdf68594ce1"/><file name="Default.php" hash="5f6964db4ff14d0bad5a4bd3d81a7b1f"/><file name="Giftcard.php" hash="0a4406e3cf6ce2614b11ffffe861419f"/></dir><dir name="Review"><file name="List.php" hash="cf4dd3ff039ce29b48bbb02a1123cf48"/></dir><file name="Attributes.php" hash="c05c430e5b9ddd720699810701b9aab7"/><file name="Gallery.php" hash="90dde1dd4788129c61ddc2a407b53393"/><file name="List.php" hash="8855bcc844ed9cd9fc27536a038eb2e2"/><file name="Options.php" hash="8b2042174b1e0084028de1faf8d087a8"/><file name="Price.php" hash="0d2a385ad233ddc0d8396b5ca518c1f7"/><file name="Related.php" hash="e8a9c85bb1202f96e37f09eef35f23b9"/><file name="Review.php" hash="050803ea65e033deed0119190c3a6b2f"/></dir><dir name="Search"><file name="Suggest.php" hash="694a443827045d13f36faf1ccd5a209f"/></dir><file name="Category.php" hash="f5ba3a9be52be5a3dbe987b2936f7c05"/><file name="Filters.php" hash="7b127377b15ab68802f8a923fe12457f"/><file name="Product.php" hash="34e8a7589dc3ac311d1f6913132269e1"/><file name="Search.php" hash="9529e7700aac595162fdeabe712fad28"/></dir><dir name="Checkout"><dir name="Address"><file name="Billing.php" hash="6197d08fe7a8b02ac6b7dfebee4697f1"/><file name="Form.php" hash="0b7bc7b45da55fef44b2cfd6b5570192"/><file name="Shipping.php" hash="4ea2e1b74eea75c067402e874698284f"/></dir><dir name="Order"><dir name="Review"><file name="Info.php" hash="492108bf0ba3de7aab36c44a8287473f"/></dir><file name="Review.php" hash="8ff677073d7ed80c5b3a614f081525c3"/></dir><dir name="Payment"><dir name="Method"><dir name="Info"><dir name="Paypal"><file name="Abstract.php" hash="eecd9663dd46170f031403489fedac04"/><file name="Express.php" hash="39ca54d07363a21ebf229aaebec3b43b"/><file name="Mecl.php" hash="b9b729c007d612130a18f5dc7ba86ffc"/></dir><dir name="Pbridge"><dir name="Paypal"><file name="Direct.php" hash="11e9b36e36405e189d1c06fec7636c1f"/></dir><dir name="Paypaluk"><file name="Direct.php" hash="c38fcd3cd36895aa497f1219a6dec898"/></dir><file name="Authorizenet.php" hash="cf5211dedc06d6b04846afbb4b4d4d63"/><file name="Verisign.php" hash="91d69684cb6ac34dcb4021035eebaa0e"/></dir><file name="Authorizenet.php" hash="d298098b471a0f799cbbc0501de81bcc"/><file name="Ccsave.php" hash="1293a63444fc5fc6f7e3b5bdce6d4b3c"/><file name="Checkmo.php" hash="fe242a4b553c97aca5efc7e39297c038"/><file name="Free.php" hash="52e2e116a868d5ac7cdb92446ccb9a97"/><file name="Purchaseorder.php" hash="bac365deb5b3558a0d8097d4e5417ff1"/></dir><dir name="Paypal"><file name="Direct.php" hash="05c0d9c1b3d8f57517b884840df0e3bb"/><file name="Payflow.php" hash="a4c64680185e88465a02030b001ce13b"/></dir><dir name="Pbridge"><file name="Abstract.php" hash="dbb02cdcb87999369b4a1943b6bc937b"/><file name="Authorizenet.php" hash="162304f1a2fcfb2bc9c92dc237609c7e"/><file name="Paypal.php" hash="696dc7a3f6c2ae3dbfeed07d202950b8"/><file name="Paypaluk.php" hash="0a536fb05595ca453f61206460290673"/><file name="Verisign.php" hash="ac966ac970a2682f5a2e6550b38234b4"/></dir><file name="Authorizenet.php" hash="b5759b2cc22e8a3af770d30ab2a5e4a5"/><file name="Ccsave.php" hash="d309eea8c6caee17c30842485f9fa50d"/><file name="Checkmo.php" hash="2eab8d64fda491a82c7d45f2b7d08025"/><file name="List.php" hash="03d487d0b52d74d2384867a37a902013"/><file name="Purchaseorder.php" hash="954fcdbf2ea90f26e7c1ccdacf6c358c"/></dir></dir><dir name="Pbridge"><file name="Result.php" hash="36e50da241533ff7b6a1723f9380955c"/></dir><dir name="Shipping"><dir name="Method"><file name="Available.php" hash="a5058fa4f96a18d3e0d1bdfd48771fea"/><file name="Avaliable.php" hash="158864e02b649fd2b8e46c288334e7f6"/></dir></dir><file name="Agreements.php" hash="55888ff73730fa75d912d5da0ccdaf5c"/></dir><dir name="Cms"><file name="Page.php" hash="c313dfacd7ec573fd368dd16f6b27e77"/></dir><dir name="Customer"><dir name="Address"><file name="Form.php" hash="5b1d2d21070851bdf08abceb33b0110b"/><file name="List.php" hash="39f48c6ea51a062804424eac3836343d"/></dir><dir name="Form"><dir name="Renderer"><file name="Boolean.php" hash="b0d44c40031c33eb745c6fb083c8dc89"/><file name="Date.php" hash="4736c5297e42d5e7fab0e774621404d7"/><file name="File.php" hash="58f6e57392bc59e1da3fed66f72347a2"/><file name="Image.php" hash="9bc7912da0785550d74b06cce6c9508a"/><file name="Multiline.php" hash="95b60b5e57159ddb135dc04735b4a95c"/><file name="Multiselect.php" hash="42593dfde88fccbef918f3fbc251857b"/><file name="Select.php" hash="7dc00e458b3a597b1648cad6bc27bb2b"/><file name="Text.php" hash="306b809aa46e8223159207a6c0af5e62"/><file name="Textarea.php" hash="433372a193997217402e088782c8bbca"/></dir></dir><dir name="Order"><dir name="Item"><dir name="Renderer"><file name="Bundle.php" hash="bbdd153b287048af0f8c82ba65a2db11"/><file name="Default.php" hash="3c9d7ee2c9706fbadf540e728527c38f"/><file name="Downloadable.php" hash="b7181b2775939c2436c02baa85a1658a"/><file name="Giftcard.php" hash="d0d8e40206e0248f006932606ef3673a"/><file name="Grouped.php" hash="62e51c1aa3fbde5c7cef0f4c47042618"/></dir></dir><dir name="Totals"><dir name="Customerbalance"><file name="Refunded.php" hash="3e914d57eeead8089c18a854ce5c1479"/></dir><file name="Customerbalance.php" hash="8e4bb1223a493e5da4feed076ec8b421"/><file name="Giftcards.php" hash="2c8a2e3125903f7bf36f222e49fb9278"/><file name="Tax.php" hash="f4c8bfed2d3fb616897b8bfe4f0c1f3b"/></dir><file name="Details.php" hash="afce96b7b2ed1cf1e9c734f56c0ed6cc"/><file name="Items.php" hash="d413636c4b44ed2695cc3c47d01f4afb"/><file name="List.php" hash="c4eea2528d246c685c69c0a0c61d1eb2"/><file name="Totals.php" hash="51a5e731114e884a4abe008f11956080"/></dir><file name="Form.php" hash="657a4d5b50a9772cf9ca186cd3a417d3"/><file name="GiftcardCheck.php" hash="8be2d2976a0f26f196dcbf3efd526bea"/><file name="Storecredit.php" hash="4b474edade192b17dcedd85ecfe67485"/></dir><dir name="Review"><file name="Form.php" hash="c348b7840a95095d9a75f1ea68d24cc6"/></dir><file name="Cart.php" hash="656acecc7392d3a7b27849f3e421993d"/><file name="Catalog.php" hash="afcbc956ff73bc85bc4611e0c500e23e"/><file name="Configuration.php" hash="59fc6a0fb6e25940fb2d87b58c49c7f1"/><file name="Home.php" hash="c3895dcacd1acc18caa80a181a390a52"/><file name="Wishlist.php" hash="c704ab5ac50e5b00fb13beb9650fcdc6"/></dir><dir name="Controller"><file name="Action.php" hash="37773c040e4013371544239aea5cc9da"/></dir><dir name="controllers"><dir name="Adminhtml"><file name="MobileController.php" hash="5d1fd6c141d30dde5ff6fa0bf39cc150"/></dir><dir name="Paypal"><file name="MeclController.php" hash="fb71a4d237ac247a91dc9f5d7004181c"/><file name="MepController.php" hash="dfbeeb47a8660ad8dd929d573137e6f7"/></dir><file name="CartController.php" hash="4c7e140d74b8fa286a9e2c57ac34222f"/><file name="CatalogController.php" hash="d82538985b1b88c73943deb66f82faa9"/><file name="CheckoutController.php" hash="e74de3d8813cdaaf349ae844160a888c"/><file name="CmsController.php" hash="361fe45962259aeb554c3c05f35d54ec"/><file name="ConfigurationController.php" hash="2c0a6a94075f059519840572bfbda706"/><file name="CustomerController.php" hash="e48d0443acbd731c6ed7a5b6c0f14a44"/><file name="IndexController.php" hash="c39be37ba7b6b7b72a26fa0e2ef47e2e"/><file name="PbridgeController.php" hash="c7268ab4986d54ef7711390b3b7b45cd"/><file name="ReviewController.php" hash="a7cd9a6fbbc182faf55c399974de99b4"/><file name="WishlistController.php" hash="65fc6c8142abcad9bda30c080020e2ec"/></dir><dir name="etc"><dir name="themes"><file name="custom.xml" hash="cba253341e035e5892cc3ed577fae710"/><file name="default.xml" hash="7a23e5840bd5a7a1f3cf4b9d16c30d63"/><file name="funk_leaf.xml" hash="d143fb6570214bdf5489e5f53770eded"/><file name="hot_red.xml" hash="f6480993958f16e4206048172985ca06"/><file name="sky_blue.xml" hash="cb128be3f0ef9088b23d3947daf29cf8"/></dir><file name="adminhtml.xml" hash="33642773574f36356937e18a3043589f"/><file name="config.xml" hash="4df35ed4df8da133afab08b3015c8a0a"/><file name="system.xml" hash="759fbe862cf96d79eca093de0dd68320"/></dir><dir name="Helper"><dir name="Catalog"><dir name="Category"><file name="Image.php" hash="0ee0ee7e164bd3d4010b12a07e2e75ab"/></dir></dir><dir name="Customer"><dir name="Form"><file name="Renderer.php" hash="699e9e71cea5b32ea290b9a203cc2ab0"/></dir><file name="Order.php" hash="f029067e3a3213a995af2c5df05b59ed"/></dir><file name="Android.php" hash="25010379b5d9786b4c22bf32892ea7a2"/><file name="Data.php" hash="75df46fa92711053241c41797b75e4b7"/><file name="Image.php" hash="b3998639aa8aba116c2a952de38e3dae"/><file name="Ipad.php" hash="921d412fe4579adf77280362652a0d8b"/><file name="Iphone.php" hash="ed7f28e8a85ce206fd10be26b0ae1e31"/><file name="Payment.php" hash="5b54eccc95ea5c57d8c9ef5d934bc094"/><file name="Theme.php" hash="8b58268b3c755efb662c27ef7fba8136"/></dir><dir name="Model"><dir name="Adminhtml"><dir name="System"><dir name="Config"><dir name="Backend"><dir name="Currency"><file name="Default.php" hash="758caf789cef878fb21f4551d7858463"/></dir><file name="Baseurl.php" hash="65f8ab647d9ab17eac023da2ab9a8b8d"/></dir></dir></dir></dir><dir name="Catalog"><dir name="Category"><dir name="Media"><file name="Config.php" hash="fd88aeb90a45d8c0c6392cf5f8f70dc8"/></dir><file name="Image.php" hash="1b2bace07cc99d365ee038960c9877a9"/></dir></dir><dir name="Corefix"><dir name="Checkout"><dir name="Type"><file name="Onepage.php" hash="bda31415e3f2dc31e41a4f3ba0ac0bc8"/></dir><file name="Session.php" hash="741c09fdbf105ec0fce818b6fac05eed"/></dir><dir name="Sales"><file name="Quote.php" hash="941ef4c3d2af0c97edb76c7bd20d4a60"/></dir></dir><dir name="Input"><dir name="Filter"><file name="MaliciousCode.php" hash="d5d500781af7b07e11baf5cbef0eb0ce"/></dir></dir><dir name="Mysql4"><dir name="Application"><file name="Collection.php" hash="2be10e2eb68fd639fefaca00ab871707"/></dir><dir name="Cms"><dir name="Page"><file name="Collection.php" hash="096d160ee850caa72e432938ae2b40be"/></dir></dir><dir name="ConfigData"><file name="Collection.php" hash="cca431230655fd7f85bd4c866018e997"/></dir><dir name="Filter"><file name="Collection.php" hash="9a03d40ddc51c62d5570521c6692046b"/></dir><dir name="History"><file name="Collection.php" hash="51ad48285cdde01f4c72df81aab88a39"/></dir><dir name="Queue"><file name="Collection.php" hash="4e9ddc30978a23485d4ebc0a82525981"/></dir><dir name="Template"><file name="Collection.php" hash="b24088ed79ec2ae5e832e0c1ab7bfada"/></dir><file name="Application.php" hash="754902c7551a817d2a37bc5894b45e74"/><file name="ConfigData.php" hash="5f7515094ff90df80ff428535e2f548f"/><file name="History.php" hash="7f98de19717b14af7f661eba1d0e7290"/><file name="Queue.php" hash="b2965b8e71ea9a552af0282259441ba8"/><file name="Setup.php" hash="cd7c56fb9a87d2bf3d69c4802692b671"/><file name="Template.php" hash="8c4b78bfd4869ec4424610f9a433e5e2"/></dir><dir name="Payment"><dir name="Method"><dir name="Paypal"><file name="Config.php" hash="bceb1a29c8f22fcd8ac576c99615446c"/><file name="Mecl.php" hash="ec1d6a834811e6e07d43294c5a2085a0"/><file name="Mep.php" hash="5ed8f4b4348885b04d05dfd30ca5414c"/></dir></dir></dir><dir name="Paypal"><dir name="Mecl"><file name="Checkout.php" hash="3d95962fabb68583110851c1feab0958"/></dir><dir name="Mep"><file name="Checkout.php" hash="dde91935f23031addcf0d5b8fc44645b"/></dir></dir><dir name="Preview"><file name="Abstract.php" hash="d06405e2c57270ac210a5961034065a8"/><file name="Android.php" hash="e5274a740dc0afaedd881f6479ffbdef"/><file name="Ipad.php" hash="98200566632dde66b5ac40991a781d18"/><file name="Iphone.php" hash="9739bf1fd78c1377faa91042af30a045"/></dir><dir name="Simplexml"><dir name="Form"><dir name="Element"><dir name="Renderer"><file name="Interface.php" hash="9b314b65fe1eeb81ccfc6ed6047c8e5e"/></dir><dir name="Validator"><file name="Abstract.php" hash="145396845cf2f7d4f27291cc16e57f55"/><file name="Rule.php" hash="c632915311d7f0913ef76b1d40fac395"/></dir><file name="Abstract.php" hash="72f79ef1701e5666c7d5d97509efefea"/><file name="Checkbox.php" hash="9de46a951f58eaf77328589b91da2fef"/><file name="Collection.php" hash="7ee2575d3dfd6800da0df80bfeab55f5"/><file name="CountryListSelect.php" hash="93fc2ec9b73c2583e41d74ca6ddc11f7"/><file name="Date.php" hash="6fe4f1fb15550526221d7030fafea071"/><file name="Email.php" hash="2bff11cf0cd07abf6ea042e414d6d899"/><file name="Fieldset.php" hash="24ec910f64e0da488ada268c4f5da50d"/><file name="File.php" hash="d089c6caee1a04a3a9a0b5af84caf154"/><file name="Image.php" hash="500204087a9c2b3eff2ae603be71552d"/><file name="Multiline.php" hash="c9ab79577fd28be36b24ec006e1fd457"/><file name="Multiselect.php" hash="d5a3f2dc6eec83dbc367e79f1f30581f"/><file name="Select.php" hash="94da9503599604da1dbf2dbc03af9c72"/><file name="Text.php" hash="d6a4b452f7219cc5da07867fd3d8cc48"/><file name="Textarea.php" hash="e82df346b8046ae24a8efe23ea965069"/><file name="Validator.php" hash="00870fbba161e9a2d49a69d4f3229d1d"/></dir><file name="Abstract.php" hash="9abcf326213c39cf374163e422d94759"/></dir><file name="Element.php" hash="96fb5165e8a08a241c7ac40188103009"/><file name="Form.php" hash="0ae8eea47cc9a7b38e7154d2d536fc1e"/></dir><file name="Application.php" hash="5a38363e67cf2148fba1eb5a20a1f7db"/><file name="ConfigData.php" hash="bf6289065cc32ff9d9d4f460991b4fe9"/><file name="History.php" hash="0eb86f02d6f85f23419457229e6c525c"/><file name="Observer.php" hash="c8d3d58742b21f7dab04d41ae0d26fe1"/><file name="Queue.php" hash="87669399632961eee5bf5cba47fef40e"/><file name="Tabs.php" hash="2b6ea4c0c21dc059990aa2216172412d"/><file name="Template.php" hash="e5ce25084397ff36b94e3d177b6bf8b2"/><file name="Theme.php" hash="29cb0e46b9bc1fa823b48a14cc264083"/></dir><dir name="sql"><dir name="xmlconnect_setup"><file name="mysql4-data-upgrade-1.4.0.13-1.4.0.14.php" hash="4080ff59c5bea460530f4eeaa5ab1e4b"/><file name="mysql4-install-1.4.0.8.php" hash="d722f3f741af029773ebaf514c522b0f"/><file name="mysql4-upgrade-1.4.0.8-1.4.0.9.php" hash="7f6bc966e741f00c44919aa6d4307b8c"/><file name="mysql4-upgrade-1.4.0.9-1.4.0.10.php" hash="b7fec601f2bf620e60c7284c2cf6634e"/><file name="mysql4-upgrade-1.4.0.10-1.4.0.11.php" hash="cf2afadfee0b21d1c2d02071303edfc1"/><file name="mysql4-upgrade-1.4.0.11-1.4.0.12.php" hash="a1333a0c415cbc398cdd0671ab539102"/><file name="mysql4-upgrade-1.4.0.12-1.4.0.13.php" hash="a07f66c79bb1df1208c9000c3496ada1"/><file name="mysql4-upgrade-1.4.0.13-1.4.0.14.php" hash="3852cdcfa482f19981a2e8e1092909bf"/></dir></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="Mage_XmlConnect.xml" hash="f57b14eccad90152c221e4f090a8801b"/></dir></target><target name="magemedia"><dir name="xmlconnect"><dir name="custom"><file name="ok.gif" hash="398f81b3983f802a99932eaf97ee0806"/></dir><dir name="original"><file name="ok.gif" hash="398f81b3983f802a99932eaf97ee0806"/></dir></dir></target></contents>
|
17 |
<compatible/>
|
18 |
-
<dependencies><required><package><name>Mage_Core_Modules</name><channel>community</channel><min>1.
|
19 |
</package>
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>Magento_Mobile</name>
|
4 |
+
<version>1.5.0.0.22.1</version>
|
5 |
<stability>stable</stability>
|
6 |
<license>mixed</license>
|
7 |
<channel>community</channel>
|
8 |
<extends/>
|
9 |
<summary>Magento Mobile Xml Interface</summary>
|
10 |
<description>An integration magento with mobile applications (e.g. iPhone, Android, iPad)</description>
|
11 |
+
<notes>1.5.0.0.22.1 version of package
|
12 |
internal svn revision #121425</notes>
|
13 |
<authors><author><name>Magento Core Team</name><user>auto-converted</user><email>core@magentocommerce.com</email></author></authors>
|
14 |
<date>2011-12-29</date>
|
15 |
+
<time>10:43:37</time>
|
16 |
+
<contents><target name="mageskin"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="images"><dir name="xmlconnect"><dir name="design_default"><file name="accordion_open.png" hash="4c89d903ebbc61ee295ef64a60724b10"/><file name="accordion_open_android.png" hash="7ef2f1d193990c3f4c2c90aae9ab3281"/><file name="accordion_open_android_l.png" hash="bc27688afbfd866c618477ea2c7bf0ee"/><file name="accordion_open_android_p.png" hash="2e4549cba575c12ef2a39c12e9ffe173"/><file name="accordion_open_ipad_l.png" hash="dcdda97da6556393b972d6dae8d6bac5"/><file name="accordion_open_ipad_p.png" hash="55cca08a0ab79047961858789ff8c3a7"/><file name="banner_1_2.png" hash="0637d31df6b5a434c9a332ee46122ef4"/><file name="banner_android.png" hash="02695661b8e50e1a001c3369622f322f"/><file name="banner_ipad.png" hash="c1d59a6ec67da1bb76c5142453da7acf"/><file name="banner_ipad_l.png" hash="04e850d481a9ae902f33fd8c1f89cbf0"/><file name="smallIcon_1_6.png" hash="c1ce9e289eaf2c0504d502928693bd89"/></dir><dir name="mobile_preview"><dir name="android"><file name="background_home_landscape.jpg" hash="1f79a1f42ca4e2cf6010ab6c3ef66aa4"/><file name="background_portrait.jpg" hash="197b15e6455ad1a85e1bad6595371fa3"/><file name="bg_button_up.gif" hash="204f590a88933c930b7fc92963accfab"/><file name="bg_catalog_filters.png" hash="7464191ebaf576b73a3c021eb1cfcc25"/><file name="bg_catalog_filters_shadow.png" hash="5021ad60917190026d85fae1d33bdaa9"/><file name="bg_cat_item.png" hash="2859b45c387b66243d4af2ba973b2ae1"/><file name="bg_frame.gif" hash="7062ed9b7563fc658f49ce7cfdd34f1c"/><file name="bg_header.png" hash="d4a46c8850d1d89259921b1c28b5bce1"/><file name="bg_header_catalog.png" hash="c1080cd18a89e21da18fdc6955bf6230"/><file name="bg_header_home.png" hash="dfce0445ca7c7a45c7914a986b596ce0"/><file name="bg_home_header.png" hash="8bc1887a0c5760cc47b77b8a7a320426"/><file name="bg_logo.png" hash="02695661b8e50e1a001c3369622f322f"/><file name="bg_page.png" hash="d65f1d123655c2eaf3bb4a1e6035a08d"/><file name="bg_star.png" hash="fc6de6c4e0ed3478b8840e1ab81da725"/><file name="bg_star_empty.png" hash="3f0421fb8c8f6c4be6ca501168a881e8"/><file name="bg_status_bar.png" hash="52b41106451ac34672f82338bbc5370c"/><file name="ico_account.png" hash="c1fd338c74fcf483155acbd37c430807"/><file name="ico_home.png" hash="2de37f640463b354d68945320bfe3e4f"/><file name="ico_search.png" hash="8b0dd17a3e9c3328e66204fe379c66aa"/><file name="product_image.png" hash="dd975b128ba303e0ae2adc9772e0433c"/><file name="product_image_1.jpg" hash="8994979d4dcc1f339c73cd1f44398a7d"/><file name="product_image_2.jpg" hash="26d6599bdb35d80b25a1e903b40cfa19"/><file name="product_image_3.jpg" hash="d7c6d05196a84341afe0025d01b9dc61"/><file name="product_image_4.jpg" hash="2a88ead3dbbeff1d40168db692841f2f"/></dir><dir name="custom_icons"><file name="account.png" hash="0498d73e47ed47179e5546dc15c17dc7"/><file name="actionsBg.jpg" hash="ee3db742cbec9a436ba46118c8a01303"/><file name="addToCart.png" hash="e33876648546e99d875ca92bd2cd78e9"/><file name="addToWishlist.png" hash="1018602b7c5e0e11f0427ace96fd7d52"/><file name="background.gif" hash="bd92833eb2eb32e4a0282cea153ac13f"/><file name="buttons.gif" hash="0cd19a9d9178976906161ea100cba958"/><file name="cart.png" hash="815b4c64fae21b4c162525ece76dc44d"/><file name="home.png" hash="9e473791b022b7c2dfc7d29b1b6de887"/><file name="image-bg.png" hash="14bde5cf8b00dc5f6c60e52a0fa964dc"/><file name="logo-small.png" hash="9b3477a4552bcb878b4943aae5351622"/><file name="rowBgIcon.gif" hash="9ee89b961ae2bb047672ba5d2d2677c6"/><file name="search.png" hash="10bfa7ec3361ce7cbcc5d25087f181eb"/><file name="shop.png" hash="e6639a9fdc143363da82a7d78e126f1c"/><file name="star-active.png" hash="d4ab959a92bda610527a3e3942c4c0b0"/><file name="star-inactive.png" hash="f7fb99710be4c03ac23b1206f20e761d"/><file name="tellAFriend.png" hash="46f8ef48b29f245977d66d9312d87e70"/><file name="viewDetails.png" hash="9bacc63bcc483d3db5614a026d9391f6"/><file name="viewGallery.png" hash="304f3d03949d07055bc056359fe17763"/></dir><dir name="gradients"><file name="footer.png" hash="31a2feed50ef9c8637b412c4211f8300"/><file name="header.png" hash="5386da930a944cd75562216249cce08a"/><file name="header2.png" hash="ad5a2dc6ec93914e925cfe2d43fb30a2"/><file name="header3.png" hash="920ad8c6903e90323a57fb02dca37280"/><file name="item-bg.png" hash="a14886d1f9e14284ac6b4f1b61e68646"/><file name="sort-bg.png" hash="b8053bb772e849909e5b87e4fd1ebbe4"/></dir><dir name="icons"><file name="account.png" hash="0498d73e47ed47179e5546dc15c17dc7"/><file name="cart.png" hash="815b4c64fae21b4c162525ece76dc44d"/><file name="home.png" hash="9e473791b022b7c2dfc7d29b1b6de887"/><file name="more.png" hash="f3662ae29923b87eba3a729192aa3df3"/><file name="page.png" hash="2291d77f21de042040bc0864be40138b"/><file name="search.png" hash="10bfa7ec3361ce7cbcc5d25087f181eb"/><file name="shop.png" hash="e6639a9fdc143363da82a7d78e126f1c"/></dir><dir name="ipad"><file name="background_home_landscape.jpg" hash="9e3ef117985113b804531142d539b60a"/><file name="background_portrait.jpg" hash="bdf9e034fd30b923086e6c622ea10451"/><file name="banner_image.png" hash="693bb9d118155a146b21ce9fcfba08da"/><file name="banner_image_l.png" hash="a070a40d57610b5cc7160fe894482a1c"/><file name="bg_catalog_header_hor.png" hash="f61a67aa288e1b8a8df7b4d4527c662e"/><file name="bg_content.jpg" hash="70ddfc8959d878d1231dc7cbee4a063c"/><file name="bg_filters_buttons.png" hash="02fcb0ed7a7268e9f64ebaf06235bc09"/><file name="bg_filters_tooltip.png" hash="3b05ca6e585acd3d766be01eeaa23d47"/><file name="bg_filters_wrap.png" hash="31288784fe95c67de9b45b44458b4155"/><file name="bg_filter_button.png" hash="728f1cd358446881ffd863eff12204a1"/><file name="bg_header.png" hash="e2cf5a575a27e6e4533e3c85e3472a82"/><file name="bg_home_content.jpg" hash="1d55a198279e4f2b163c98c18f699646"/><file name="bg_home_header.png" hash="00f2fbf96d2b915dcbcd921b0301ef3f"/><file name="bg_home_header_hor.png" hash="9bfef728ece003d5b3433d2623ea168c"/><file name="bg_home_products.png" hash="ac6a8a79b959a0c8298b1f607c0f0af8"/><file name="bg_home_shadow.png" hash="c54b071ca3e97a6ee67588ef74b7b44e"/><file name="bg_home_shadow_hor.png" hash="0d21a99c5c749d0e5070e3585ff4a23f"/><file name="bg_product_image.png" hash="4da74325c1a4ee1ca19b414e5d590f75"/><file name="bg_search.png" hash="6ee08d05d0c4ef9ed64b9914b821f408"/><file name="bg_sections.jpg" hash="0ee90005663aced09a9ce6385bdbce2c"/><file name="bg_status_bar.png" hash="17124d9d392bb8e37b202c80a595df54"/><file name="bg_status_bar_hor.png" hash="bd4a9f11ecb1c896145267731d8a951d"/><file name="i_cart.png" hash="1bbe0a0e54eed5bb14b9bfcce83da758"/><file name="i_info.png" hash="3f0fda8b294b67bf698badbcaa99150b"/><file name="i_login.png" hash="deb4089bdc61582c78c90ef192d577e8"/><file name="i_remove.png" hash="4923eb5e76b3c6ba6df5c667db816a0c"/><file name="logo.png" hash="49c19f59b459b6c0b3b99daa3fe7f932"/><file name="logo_big.png" hash="693bb9d118155a146b21ce9fcfba08da"/><file name="product_image.jpg" hash="2bb6c69129bcb18dc93e9f48605647c6"/><file name="sections_arrow.png" hash="7db7144083a31882e8a62cb9579f478f"/><file name="stars.png" hash="70d38cd9883d70e4f6b21ac4874b9868"/></dir><dir name="slider"><file name="actionsBg.jpg" hash="ee3db742cbec9a436ba46118c8a01303"/><file name="addToCart.png" hash="2a146be4bc63713df19cc353e030d44f"/><file name="addToWishlist.png" hash="9b23a4e0d9acfc79f314e9082f14c4de"/><file name="tellAFriend.png" hash="b7600fa2ae52bdb1d6bb86fe4d9f1773"/><file name="viewDetails.png" hash="90cf37c6dbbee1861350b4c05469e3ae"/><file name="viewGallery.png" hash="304f3d03949d07055bc056359fe17763"/></dir><dir name="sort_buttons"><file name="bg_button.png" hash="87d0f1b123f01c3aea3cb8a2b146306e"/><file name="buttons.gif" hash="2f14f1a3f0fb38790779c992a58654ae"/><file name="buttons.png" hash="b4a3f17370e03bf5d2a5cdf7800c25a7"/><file name="button_up.gif" hash="7ad527f99b9975d5634fb2d5cc99e6b3"/><file name="center-active.png" hash="5903988cd458cd794f23a212d51aa725"/><file name="center-inactive.png" hash="135b46aaa5c3b131a5a7e9c45c004e06"/><file name="filters.png" hash="3837ab6fcfe959833dd998533db1ca7f"/><file name="left-active.png" hash="86e94441b96a0d27d0b0a7e5108f86ed"/><file name="left-inactive.png" hash="0ddcb75aa9971cca39a5a65b4bdff8c4"/><file name="right-active.png" hash="320740ff608187301b06a96eab2f9e8e"/><file name="right-inactive.png" hash="cac4b39ab380353ffd5fdbcedb6e0a0a"/></dir><file name="1.gif" hash="817fd84187db3eee00799b0acf316457"/><file name="2.gif" hash="1a842d8f3ac25cfcdeab6c86dd8fea89"/><file name="3.gif" hash="207cd55e968c284bd52c86efdcdda1c7"/><file name="actionsBackground.png" hash="11faa8baee72f3e6a9a02a83915c8658"/><file name="actionsBg.png" hash="9acccd1980f17006942d74a718ebd7da"/><file name="arrow.png" hash="837259a7c365e46034dca728bffe9070"/><file name="background.gif" hash="bd92833eb2eb32e4a0282cea153ac13f"/><file name="background.png" hash="3717f4b4ba725701e2a0604129a3a815"/><file name="banner.png" hash="0637d31df6b5a434c9a332ee46122ef4"/><file name="btn-l.png" hash="92b2454528e9d39119038777cf53329c"/><file name="btn-r.png" hash="8c6aa9fd9203bc10822e0505f11e0c4d"/><file name="buttons.php" hash="a04839d41cf73d4c70b498ec75ff2bd4"/><file name="circle.png" hash="f4c116cb0554bf936d3b9ee38b7f3d1f"/><file name="grid.png" hash="23faa3f5572cdeb597c2bceedd93a7f8"/><file name="image-bg.png" hash="a588b9cced95a25fc18e28c775d9a001"/><file name="imageFrame.php" hash="f5a1298dfc6cb70cb486b55820f5ab21"/><file name="info.png" hash="3f0d2ed85b81e8251f294457c6bfa404"/><file name="lightStar.php" hash="cba0a7c5f28a1bbc764761f4fc581fe3"/><file name="lightStar.png" hash="b5dc40d5b793dae6a069357f49cccc24"/><file name="lightStar2.png" hash="75928926a6112540c9cb073157cb7d95"/><file name="lines-h.png" hash="ea3d95812c9838affc6df2f3a3cb1977"/><file name="lines-v.png" hash="9e3ffee29ba28477d50da9642019bc0a"/><file name="login-btn-left-alt.png" hash="71bb6c7d24252aace27bee711d7616f4"/><file name="login-btn-left.png" hash="cbbf9afc6e9fc433f57270e88b63f351"/><file name="login-btn-right.png" hash="438fcc598d012bf6d33184e95accfd24"/><file name="login-btn.png" hash="051ee2c1a8ce3f7b8de3293cd2e2ed85"/><file name="logo-small.png" hash="9b3477a4552bcb878b4943aae5351622"/><file name="logo_25.png" hash="ba41ed568d916175c32803b614442447"/><file name="men.png" hash="46d7d1773118ef0a27353e8a9f6719fe"/><file name="mm-frame.gif" hash="eebf30806f1dbf2118e7ec39a016c86d"/><file name="mobile-catalog.css" hash="80cbd74984354df2d86f4ad68b9123a3"/><file name="mobile-home.css" hash="b57641c73c4eae08e0a02cd7291d9465"/><file name="rowBgIcon.gif" hash="9ee89b961ae2bb047672ba5d2d2677c6"/><file name="slider.gif" hash="c6b87bf15b85b18c0515e2cbefaabe60"/><file name="smallIcon.png" hash="e76d2a6364042f41b3f35fc8cdc9c0ee"/><file name="star-active.png" hash="d4ab959a92bda610527a3e3942c4c0b0"/><file name="star-inactive.png" hash="f7fb99710be4c03ac23b1206f20e761d"/><file name="t-shirt.gif" hash="7505efdaabf13c4f8e26f7cfe15c8c96"/><file name="t-shirt.png" hash="46d7d1773118ef0a27353e8a9f6719fe"/><file name="women.png" hash="46d7d1773118ef0a27353e8a9f6719fe"/><file name="youth.png" hash="46d7d1773118ef0a27353e8a9f6719fe"/></dir><file name="dropdown-arrow.gif" hash="332e99ca6b4d1e0d39972e04fb0b2395"/><file name="empty.png" hash="23dc9dc3c4751f83c2df7a5c42668824"/><file name="full-arrow-left.gif" hash="8ec91b60d38d1a16cba7670f2088a5c7"/><file name="full-arrow.gif" hash="36ddff0fca1c7d8900cb3633e0a30cea"/><file name="gel_green.png" hash="591959d831e8e42c9175d12a88f0bae2"/><file name="gel_red.png" hash="db442c023014df9da32b84bc1bb5a39f"/><file name="l-arrow.gif" hash="ee49f7eab64657b5131953acef0238fd"/><file name="loading.gif" hash="5d25806dac7cbee5f894b13144783866"/><file name="r-arrow.gif" hash="d0429a9781e915fc9d9ca8875c470d32"/><file name="small_logo.gif" hash="d5c8be7c0f16aac2549759c0228492d6"/><file name="swatch_black.gif" hash="fd31d6a3a435c8ad1f7c43f346bb47e4"/><file name="swatch_custom.gif" hash="fb34791a48366957a141e12b563888c2"/><file name="swatch_default.gif" hash="fb34791a48366957a141e12b563888c2"/><file name="swatch_funk_leaf.gif" hash="f1d3ba87efb742b47da879a6f48909c4"/><file name="swatch_hot_red.gif" hash="d9363d45dc2993c2fdc3ea43c5b6f71c"/><file name="swatch_sky_blue.gif" hash="ded1455db119d09a3aedd7474fd1875a"/><file name="swatch_user_custom.gif" hash="a24f31421a1ff56d1be0845f9a7c7020"/><file name="switch-arrow.gif" hash="dc7243962b341f366cd072d486687e6a"/><file name="tab_account.png" hash="27101fbaa78a07426be4768acc4c53ff"/><file name="tab_account_android.png" hash="77605cbc87f75ca17e91a5393765ceb1"/><file name="tab_account_ipad.png" hash="2997de5402195d0720309b73c6446fab"/><file name="tab_cart.png" hash="e803f760ee81cb35183f1122f388b774"/><file name="tab_cart_android.png" hash="477e97f8d03ea8aa674e952709f86578"/><file name="tab_empty.png" hash="bdd4cc355566e8861b2c45424ad94516"/><file name="tab_home.png" hash="dfa104e4da74e4a55d3c98d6ee0f7122"/><file name="tab_home_active.png" hash="bba5eb9bb724c84c1ede9e6f4bec3575"/><file name="tab_home_android.png" hash="1fefc6b070cc21b31b43194a7d85f9d9"/><file name="tab_info_android.png" hash="67fc19d8d926f7aede482f5a7083fc71"/><file name="tab_more.png" hash="2803359cb3e795bf67457e727aa16020"/><file name="tab_page.png" hash="ca05dbc42f944b8d4255f6675f6dd93a"/><file name="tab_search.png" hash="2cf29dbe325558353621b4241543204f"/><file name="tab_search_android.png" hash="932c2c568872fd9e119367c887f0539a"/><file name="tab_shop.png" hash="f36be0d3d27f2b37626247d3f6a55e2a"/><file name="tab_shop_active.png" hash="de907d6a52d477d4319649f9b0e2e4aa"/><file name="tab_shop_android.png" hash="e119fcd20f8cba856d550a64d775ddbb"/><file name="tmp-icon.gif" hash="58b759aecf3bdae26d5aaff7a0be5c90"/><file name="xmlconnect_tab.png" hash="cd99a7e01a42a6c82d866f7684faeb95"/></dir></dir><dir name="xmlconnect"><dir name="fonts"><file name="android_icons-webfont.eot" hash="2fc917efbfb3c933ccfddc108ef05f33"/><file name="android_icons-webfont.svg" hash="e8cb2b5ef019bbc2885c97ed0caaf2a0"/><file name="android_icons-webfont.ttf" hash="bc567dd7a381093fbb652c58cbad9430"/><file name="android_icons-webfont.woff" hash="8310b54d55bf84a8a3f3a86c22a51aef"/><file name="stars-webfont.eot" hash="019beb4b8ec19447657cf3106138bbe3"/><file name="stars-webfont.svg" hash="20cf0312c0b951d173d4531ea18abc6f"/><file name="stars-webfont.ttf" hash="d63d95e9adaf775f410437535622bf60"/><file name="stars-webfont.woff" hash="526d9756131c94139f0f1df5272197fd"/></dir><file name="boxes.css" hash="9afcff3669e4286e565894da7f7ee4e3"/><file name="dropdown.css" hash="e5388a1fd90df2a2e3860516adef0367"/><file name="mobile-android.css" hash="c932d2898a1ffd5545cfd76699260125"/><file name="mobile-catalog.css" hash="ca7c4c2c7643ca1249e00bbd45980fd2"/><file name="mobile-home.css" hash="b10c97acf5ac07c40d1db72b9d413841"/><file name="mobile-ipad-catalog.css" hash="2b35f47bb153c659640dd37beac277f1"/><file name="mobile-ipad-home.css" hash="270c8e4c8111de6c6173f9b6883c85ec"/><file name="styles.css" hash="c87a56ddc3001a2e357d648695855f5f"/></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="images"><dir name="xmlconnect"><dir name="catalog"><dir name="category"><dir name="placeholder"><file name="image.jpg" hash="097ab8a3051bc037ea3de0e17f440540"/><file name="small_image.jpg" hash="f825d16f97a640453553c79c48ebaa73"/><file name="thumbnail.jpg" hash="b2b682d28a08a748a73d2cda70ab5a57"/></dir></dir></dir><file name="tab_account.png" hash="0498d73e47ed47179e5546dc15c17dc7"/><file name="tab_cart.png" hash="9055ba76e256a51d3fee53a8c41d5226"/><file name="tab_home.png" hash="07d0af93e167b9366d3d4fb3d6cdb31c"/><file name="tab_more.png" hash="b9fc21feb8d7655bc9c2985c37b0de2f"/><file name="tab_page.png" hash="ca05dbc42f944b8d4255f6675f6dd93a"/><file name="tab_search.png" hash="25e880eb2a4d06828e2e1c3f32d22400"/><file name="tab_shop.png" hash="fe602fc2e7093efef5ecc0b027a32d91"/></dir></dir></dir></dir></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="xmlconnect.xml" hash="3bcc520298d90ea72c85de89a44e607b"/></dir><dir name="template"><dir name="xmlconnect"><dir name="edit"><dir name="tab"><dir name="design"><dir name="preview"><file name="catalog_android.phtml" hash="591050ccc493b364fb895055c986cd86"/><file name="catalog_hor_ipad.phtml" hash="a289faccee351af884d5628ecb07a5c3"/><file name="catalog_ipad.phtml" hash="ebe5ed4da38c4b16263c1f3b5d3c95c4"/><file name="catalog_iphone.phtml" hash="3446aa0942ef6e1fd4846b68c0141ae1"/><file name="home_android.phtml" hash="f3ec85295af00953503dd0dfd3b07715"/><file name="home_hor_ipad.phtml" hash="bb06939e0ce07a268a09c6fb62c6e368"/><file name="home_ipad.phtml" hash="fc1622ae6ce681b96e5f9394259f57a6"/><file name="home_iphone.phtml" hash="55f8d4382b9c55787f4b8f7645c92b70"/><file name="productinfo_iphone.phtml" hash="99c2fd2107ad06e625384b56182fd316"/><file name="tab_items_android.phtml" hash="d0b925bbc89f510aac004ffc1b33062a"/><file name="tab_items_ipad.phtml" hash="8ca8d864408bb880b6f6a9999b0e4d26"/><file name="tab_items_iphone.phtml" hash="406b98b55565fb58c1a3e3dc90922d6e"/></dir><file name="preview_android.phtml" hash="665e283d03607df92a19b704a6249091"/><file name="preview_ipad.phtml" hash="65ffa0ca65f4ec79cae7fc0ccc26455b"/><file name="preview_iphone.phtml" hash="bf8058aeec27e381c3843d239ac82180"/></dir><file name="design.phtml" hash="78814e106947fefd781c9d25de89ace2"/></dir></dir><dir name="form"><dir name="element"><dir name="country"><file name="androidmarket.phtml" hash="053e69572e7b8850f3f96f22c5d5f9f7"/><file name="istore.phtml" hash="275af872365061838828011b0398db02"/></dir><file name="addrow.phtml" hash="46fddf6c4b452a6c529499de2c2f1323"/><file name="app_tabs_android.phtml" hash="92df75ceecedd911eed98ae8703ac83a"/><file name="app_tabs_ipad.phtml" hash="43649f88a29fe3691e5525d5c32756fe"/><file name="app_tabs_iphone.phtml" hash="4936c1e64fe3da857b1108ab44a8598d"/><file name="themes.phtml" hash="9eb56bd1ce4651b28fe8f40fcdde48ed"/></dir></dir><dir name="mobile"><file name="notification_helper.phtml" hash="db58d2fce2f496bfdaa7d04954627efd"/></dir><dir name="submission"><file name="app_icons_preview.phtml" hash="4d4f0f78338338d15605777df69be0e7"/><file name="container.phtml" hash="c576009dd87ddd55ce8b023587128806"/></dir><dir name="template"><file name="preview.phtml" hash="bd26b9a350f430e4a6905133db031bfc"/></dir></dir></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><file name="xmlconnect.xml" hash="ea972c3a22b447b702eec153a3f3a874"/></dir><dir name="template"><dir name="xmlconnect"><dir name="pbridge"><file name="result.phtml" hash="412b98ba988d6049098414f8cbce09b6"/></dir></dir></dir></dir></dir></dir></target><target name="magelocale"><dir name="en_US"><file name="Mage_XmlConnect.csv" hash="29db96ab0fe9b5ec94dac6542a3ab618"/></dir></target><target name="mageweb"><dir name="js"><dir name="jscolor"><file name="arrow.gif" hash="5034704a76cd55c1cbcbc58ea6bf523f"/><file name="cross.gif" hash="ba9a274b9323753cd95bc3b1eb2f4e5f"/><file name="demo.html" hash="edf71251cb2be20322d2efb00aee86a6"/><file name="hs.png" hash="fefa1a03d92ebad25c88dca94a0b63db"/><file name="hv.png" hash="990d71cada17da100653636cf8490884"/><file name="jscolor.js" hash="b65a1505390592ac6c0177d6b84774e0"/></dir></dir></target><target name="magecore"><dir name="Mage"><dir name="XmlConnect"><dir name="Block"><dir name="Adminhtml"><dir name="History"><file name="Grid.php" hash="6308d26ad2e05740eb6991e3257000bb"/></dir><dir name="Mobile"><dir name="Edit"><dir name="Tab"><dir name="Design"><dir name="Accordion"><file name="Images.php" hash="5229cee37fc9cc89dbd8f32b3a4434e6"/><file name="Tabs.php" hash="caf8302b277ea18303213d43764ed28e"/><file name="Themes.php" hash="9d6dec2260396ad8798202ee1ba6eddc"/></dir><file name="Accordion.php" hash="daf3ddb3a6c9229dad32279e4b691b1a"/><file name="Preview.php" hash="dd1c33fc43745d2158a29fe542233b44"/><file name="Themes.php" hash="6ae0e49f82cc094f5dd9315887f9e14d"/></dir><dir name="Submission"><file name="History.php" hash="1bf1ca22e91880a17bd0020baecd4c8f"/></dir><file name="Cache.php" hash="607618d233c5dab9415475b4ad61bb59"/><file name="Content.php" hash="2e67d807374eecdafac94823cfdc63cb"/><file name="Design.php" hash="f90d65ffa27e94916da616afc8e221f2"/><file name="Flurryanalytics.php" hash="89ad25f1adf60b1e4232ba29f7f5ad64"/><file name="General.php" hash="4bf60b4d629f4b9952998ae4070ab623"/><file name="Notification.php" hash="beae607b96d8b6f98cd7022185cc8bdd"/><file name="Payment.php" hash="0b7f6bd130dcab67f25f6e91450d2c65"/><file name="Settings.php" hash="82c672adcaafe6e795268fe86340925f"/><file name="Social.php" hash="995bb1c3f994ca89bc71d1d2aaadf0d7"/></dir><file name="Form.php" hash="9e9957b476bbd1fb3952c4e4b706b2df"/><file name="Submission.php" hash="029403d08204bd9f964adc98af0d435a"/><file name="Tabs.php" hash="0d72c2e64a1173c2992c7a8f3dbf11f8"/></dir><dir name="Form"><dir name="Element"><file name="Addrow.php" hash="71e222b534aa23880065618cda412260"/><file name="Color.php" hash="24c6b153ce8f2649b1a05477f4c3e7b8"/><file name="Country.php" hash="3b83f00f657eb7dd867ea75f4abdf88d"/><file name="Datetime.php" hash="92cf9dfafa11da7d8ab75c9423925bd5"/><file name="Font.php" hash="dec4888c88e4c6dbbf76486267e38518"/><file name="Image.php" hash="cf494edb2cc4527d622a8091247d304a"/><file name="Page.php" hash="825acf20d00a34454c66a4c951452b69"/><file name="Tabs.php" hash="6115f3e6782e47c8949c55be4475bdd7"/><file name="Theme.php" hash="21fee731b3a652cf71f08abbff175c05"/></dir></dir><dir name="Grid"><dir name="Renderer"><file name="Bool.php" hash="f1baaf5e240ca3cc63a6da9935175790"/><file name="Type.php" hash="b6337cfe77db1a45ff431143055e405f"/></dir></dir><dir name="Preview"><file name="Content.php" hash="69bf38fd148410c3814beacf1317b5c7"/><file name="Tabitems.php" hash="e5e0f60bc074765c8cefd99f78832711"/></dir><dir name="Submission"><dir name="Renderer"><dir name="Country"><file name="Androidmarket.php" hash="481eac62f66724a28a582d134252fda7"/><file name="Istore.php" hash="ce072e5248b0c2fe715f50542df3370c"/></dir></dir><dir name="Tab"><dir name="Container"><file name="Submission.php" hash="94ec8a46ff9c9271c03df4850690ca89"/></dir><file name="Container.php" hash="bd10d3d94dbe4d422e84be6fe2c1ace6"/></dir><file name="Form.php" hash="aa5991aeba94abc34a4818afb8b6cf8d"/><file name="Tabs.php" hash="030ddf84029b44dd6093fad755d4e7e9"/></dir><dir name="Widget"><file name="Form.php" hash="2bd91c9af96eaf42d1484b263857772b"/></dir><file name="Edit.php" hash="bb11de03ea1b302fb38a06013bfb8b1a"/><file name="Grid.php" hash="8ca26959087f2a12d5f9aa3bf1fc650b"/><file name="Submission.php" hash="c37035f19250ddcbf3e8c8b3227f99d8"/></dir><dir name="Queue"><dir name="Edit"><file name="Form.php" hash="b19085649fc95114bb14f9e2770f84ce"/></dir><dir name="Grid"><dir name="Renderer"><file name="Action.php" hash="06c1c06834fad162e09badd802066148"/><file name="Application.php" hash="874a8634ffd63025061bb74833bab9d8"/><file name="Id.php" hash="5a3bd6f7130ff4354884635d1246452c"/><file name="Msgtitle.php" hash="0b4710291f331cf3840cad4ccc26ca09"/><file name="Pushtitle.php" hash="e0725a10e0150cb9c6719a41712a15b5"/><file name="Status.php" hash="3b6d6c7d3104f0201e2431bad9bafacb"/><file name="Template.php" hash="31d623d9873431816847dc246466904e"/></dir></dir><file name="Edit.php" hash="917d5a952c18c9c718587a51f899681f"/><file name="Grid.php" hash="4129ef90b9c3a79e4492f49569025b36"/></dir><dir name="Template"><dir name="Edit"><file name="Form.php" hash="6f333660b1365f657d45eb95f17d3f11"/></dir><dir name="Grid"><dir name="Renderer"><file name="Application.php" hash="cdae7056f704834da9e400277411ac0b"/></dir></dir><dir name="Preview"><file name="Form.php" hash="1e374a00f79d85e3f14c7342577dcef7"/></dir><file name="Edit.php" hash="063f75ad4a742fff0223e1c8442b4a97"/><file name="Grid.php" hash="3f53fcf95cd6aaadfeecc8fde7d2c925"/><file name="Preview.php" hash="891acec6c53c94b2f2dbc892c9fb80dc"/></dir><file name="History.php" hash="d00a4acfccbd558e64ffe4eecb731d9a"/><file name="Mobile.php" hash="8b65767102a85340128f9388a96b6cf2"/><file name="Queue.php" hash="e13f7f2fa44867d5580b7d0e38542bae"/><file name="Template.php" hash="2a577c9a452528e44f69b730cef9f9a1"/></dir><dir name="Cart"><dir name="Item"><dir name="Renderer"><file name="Configurable.php" hash="55eb93a62e002ec0c6c1778d13cab566"/><file name="Grouped.php" hash="46290fe4e7338f0640022f591f0dfb25"/></dir><file name="Renderer.php" hash="9085653f9e59a1f70ca9c23d6df83a4b"/></dir><dir name="Paypal"><dir name="Mecl"><file name="Details.php" hash="6a49316d593a0dd7ed1cfb18449533a2"/><file name="Review.php" hash="650c4907b56681e8f083d5d68962429a"/><file name="Shippingmethods.php" hash="b2973168b72ad1d7f5872394cfab3be2"/></dir><dir name="Mep"><file name="Totals.php" hash="93443d605d376447177cdb541561801f"/></dir></dir><file name="Crosssell.php" hash="0c1db847be1d7b7bbfbc043d2f4bb348"/><file name="Info.php" hash="574c54a69e4cd9007cd290f6676d65b1"/><file name="Totals.php" hash="d7504ced47770d9791e68e91b120c26c"/></dir><dir name="Catalog"><dir name="Category"><file name="Info.php" hash="9dd1d0109dd30edb081e8102c0edc0ab"/></dir><dir name="Product"><dir name="Options"><file name="Bundle.php" hash="53a6852f89eacf99a8092982beec72b3"/><file name="Configurable.php" hash="7ea31d8474deded21ce8b9a3044e5d16"/><file name="Giftcard.php" hash="118eaa05629f5d6d0b930c635c436e1b"/><file name="Grouped.php" hash="676430aba221de564397677d105d7e0a"/><file name="Simple.php" hash="d3fac669f96f237994e17ec48f45f207"/><file name="Virtual.php" hash="1d92b50e412eb3b524989b91047866be"/></dir><dir name="Price"><file name="Bundle.php" hash="52c7302ed4b38b0397b90d095c91d49c"/><file name="Default.php" hash="5f6964db4ff14d0bad5a4bd3d81a7b1f"/><file name="Giftcard.php" hash="0a4406e3cf6ce2614b11ffffe861419f"/></dir><dir name="Review"><file name="List.php" hash="cf4dd3ff039ce29b48bbb02a1123cf48"/></dir><file name="Attributes.php" hash="c05c430e5b9ddd720699810701b9aab7"/><file name="Gallery.php" hash="90dde1dd4788129c61ddc2a407b53393"/><file name="List.php" hash="8855bcc844ed9cd9fc27536a038eb2e2"/><file name="Options.php" hash="4f68f22500907d076831e188a09ec621"/><file name="Price.php" hash="0d2a385ad233ddc0d8396b5ca518c1f7"/><file name="Related.php" hash="e8a9c85bb1202f96e37f09eef35f23b9"/><file name="Review.php" hash="050803ea65e033deed0119190c3a6b2f"/></dir><dir name="Search"><file name="Suggest.php" hash="694a443827045d13f36faf1ccd5a209f"/></dir><file name="Category.php" hash="7344d02ee2a8c768c142d23970853393"/><file name="Filters.php" hash="7b127377b15ab68802f8a923fe12457f"/><file name="Product.php" hash="62a4e19f4509134e44fa50f540c61af1"/><file name="Search.php" hash="9529e7700aac595162fdeabe712fad28"/></dir><dir name="Checkout"><dir name="Address"><file name="Billing.php" hash="6197d08fe7a8b02ac6b7dfebee4697f1"/><file name="Form.php" hash="0b7bc7b45da55fef44b2cfd6b5570192"/><file name="Shipping.php" hash="4ea2e1b74eea75c067402e874698284f"/></dir><dir name="Order"><dir name="Review"><file name="Info.php" hash="c503b03f667cb2d8b4569677016d6ff1"/></dir><file name="Review.php" hash="8ff677073d7ed80c5b3a614f081525c3"/></dir><dir name="Payment"><dir name="Method"><dir name="Info"><dir name="Paypal"><file name="Abstract.php" hash="eecd9663dd46170f031403489fedac04"/><file name="Express.php" hash="39ca54d07363a21ebf229aaebec3b43b"/><file name="Mecl.php" hash="b9b729c007d612130a18f5dc7ba86ffc"/></dir><dir name="Pbridge"><dir name="Paypal"><file name="Direct.php" hash="11e9b36e36405e189d1c06fec7636c1f"/></dir><dir name="Paypaluk"><file name="Direct.php" hash="c38fcd3cd36895aa497f1219a6dec898"/></dir><file name="Authorizenet.php" hash="cf5211dedc06d6b04846afbb4b4d4d63"/><file name="Verisign.php" hash="91d69684cb6ac34dcb4021035eebaa0e"/></dir><file name="Authorizenet.php" hash="6ab4881c9f8a724772010f1b5ac52413"/><file name="Ccsave.php" hash="1293a63444fc5fc6f7e3b5bdce6d4b3c"/><file name="Checkmo.php" hash="fe242a4b553c97aca5efc7e39297c038"/><file name="Free.php" hash="52e2e116a868d5ac7cdb92446ccb9a97"/><file name="Purchaseorder.php" hash="bac365deb5b3558a0d8097d4e5417ff1"/></dir><dir name="Paypal"><file name="Direct.php" hash="05c0d9c1b3d8f57517b884840df0e3bb"/><file name="Payflow.php" hash="a4c64680185e88465a02030b001ce13b"/></dir><dir name="Pbridge"><file name="Abstract.php" hash="dbb02cdcb87999369b4a1943b6bc937b"/><file name="Authorizenet.php" hash="162304f1a2fcfb2bc9c92dc237609c7e"/><file name="Paypal.php" hash="696dc7a3f6c2ae3dbfeed07d202950b8"/><file name="Paypaluk.php" hash="0a536fb05595ca453f61206460290673"/><file name="Verisign.php" hash="ac966ac970a2682f5a2e6550b38234b4"/></dir><file name="Authorizenet.php" hash="b5759b2cc22e8a3af770d30ab2a5e4a5"/><file name="Ccsave.php" hash="d309eea8c6caee17c30842485f9fa50d"/><file name="Checkmo.php" hash="2eab8d64fda491a82c7d45f2b7d08025"/><file name="List.php" hash="31d99e77da7215cab05796cec5e32677"/><file name="Purchaseorder.php" hash="954fcdbf2ea90f26e7c1ccdacf6c358c"/></dir></dir><dir name="Pbridge"><file name="Result.php" hash="36e50da241533ff7b6a1723f9380955c"/></dir><dir name="Shipping"><dir name="Method"><file name="Available.php" hash="1b7a437e6178fd11499e49d9e04c9499"/><file name="Avaliable.php" hash="158864e02b649fd2b8e46c288334e7f6"/></dir></dir><file name="Agreements.php" hash="55888ff73730fa75d912d5da0ccdaf5c"/></dir><dir name="Cms"><file name="Page.php" hash="c313dfacd7ec573fd368dd16f6b27e77"/></dir><dir name="Customer"><dir name="Address"><file name="Form.php" hash="5b1d2d21070851bdf08abceb33b0110b"/><file name="List.php" hash="8356a63ab08159ee3d3b5c88941691b1"/></dir><dir name="Form"><dir name="Renderer"><file name="Boolean.php" hash="b0d44c40031c33eb745c6fb083c8dc89"/><file name="Date.php" hash="4736c5297e42d5e7fab0e774621404d7"/><file name="File.php" hash="58f6e57392bc59e1da3fed66f72347a2"/><file name="Image.php" hash="9bc7912da0785550d74b06cce6c9508a"/><file name="Multiline.php" hash="95b60b5e57159ddb135dc04735b4a95c"/><file name="Multiselect.php" hash="42593dfde88fccbef918f3fbc251857b"/><file name="Select.php" hash="7dc00e458b3a597b1648cad6bc27bb2b"/><file name="Text.php" hash="306b809aa46e8223159207a6c0af5e62"/><file name="Textarea.php" hash="433372a193997217402e088782c8bbca"/></dir></dir><dir name="Order"><dir name="Item"><dir name="Renderer"><file name="Bundle.php" hash="bbdd153b287048af0f8c82ba65a2db11"/><file name="Default.php" hash="3c9d7ee2c9706fbadf540e728527c38f"/><file name="Downloadable.php" hash="b7181b2775939c2436c02baa85a1658a"/><file name="Giftcard.php" hash="d0d8e40206e0248f006932606ef3673a"/><file name="Grouped.php" hash="62e51c1aa3fbde5c7cef0f4c47042618"/></dir></dir><dir name="Totals"><dir name="Customerbalance"><file name="Refunded.php" hash="3e914d57eeead8089c18a854ce5c1479"/></dir><file name="Customerbalance.php" hash="8e4bb1223a493e5da4feed076ec8b421"/><file name="Giftcards.php" hash="2c8a2e3125903f7bf36f222e49fb9278"/><file name="Tax.php" hash="f4c8bfed2d3fb616897b8bfe4f0c1f3b"/></dir><file name="Details.php" hash="afce96b7b2ed1cf1e9c734f56c0ed6cc"/><file name="Items.php" hash="d413636c4b44ed2695cc3c47d01f4afb"/><file name="List.php" hash="ee5b1f5b8be7f4eb4e2e465e844f424d"/><file name="Totals.php" hash="51a5e731114e884a4abe008f11956080"/></dir><file name="Form.php" hash="657a4d5b50a9772cf9ca186cd3a417d3"/><file name="GiftcardCheck.php" hash="8be2d2976a0f26f196dcbf3efd526bea"/><file name="Storecredit.php" hash="4b474edade192b17dcedd85ecfe67485"/></dir><dir name="Review"><file name="Form.php" hash="926259d9bc8327c97a4cbe94def1a03a"/></dir><file name="Cart.php" hash="5e7fdd48329dc308cf9549a4b427a6d2"/><file name="Catalog.php" hash="afcbc956ff73bc85bc4611e0c500e23e"/><file name="Configuration.php" hash="59fc6a0fb6e25940fb2d87b58c49c7f1"/><file name="Home.php" hash="c3895dcacd1acc18caa80a181a390a52"/><file name="Wishlist.php" hash="4fd0b6b39ed2727818e688025d94eb3c"/></dir><dir name="Controller"><file name="Action.php" hash="37773c040e4013371544239aea5cc9da"/></dir><dir name="controllers"><dir name="Adminhtml"><file name="MobileController.php" hash="5d1fd6c141d30dde5ff6fa0bf39cc150"/></dir><dir name="Paypal"><file name="MeclController.php" hash="fb71a4d237ac247a91dc9f5d7004181c"/><file name="MepController.php" hash="2be98561a9fc87151109541b2516e9c0"/></dir><file name="CartController.php" hash="d65db2f5bc64f23c70ed22c0c79600f5"/><file name="CatalogController.php" hash="d82538985b1b88c73943deb66f82faa9"/><file name="CheckoutController.php" hash="80f6a74bb5dd03a9d82b325ca3bbfe08"/><file name="CmsController.php" hash="361fe45962259aeb554c3c05f35d54ec"/><file name="ConfigurationController.php" hash="2c0a6a94075f059519840572bfbda706"/><file name="CustomerController.php" hash="e48d0443acbd731c6ed7a5b6c0f14a44"/><file name="IndexController.php" hash="c39be37ba7b6b7b72a26fa0e2ef47e2e"/><file name="PbridgeController.php" hash="c7268ab4986d54ef7711390b3b7b45cd"/><file name="ReviewController.php" hash="a7cd9a6fbbc182faf55c399974de99b4"/><file name="WishlistController.php" hash="0130e34c122bab5b9d64803febb2aaa2"/></dir><dir name="etc"><dir name="themes"><file name="custom.xml" hash="cba253341e035e5892cc3ed577fae710"/><file name="default.xml" hash="7a23e5840bd5a7a1f3cf4b9d16c30d63"/><file name="funk_leaf.xml" hash="d143fb6570214bdf5489e5f53770eded"/><file name="hot_red.xml" hash="f6480993958f16e4206048172985ca06"/><file name="sky_blue.xml" hash="cb128be3f0ef9088b23d3947daf29cf8"/></dir><file name="adminhtml.xml" hash="33642773574f36356937e18a3043589f"/><file name="config.xml" hash="4df35ed4df8da133afab08b3015c8a0a"/><file name="system.xml" hash="759fbe862cf96d79eca093de0dd68320"/></dir><dir name="Helper"><dir name="Catalog"><dir name="Category"><file name="Image.php" hash="0ee0ee7e164bd3d4010b12a07e2e75ab"/></dir></dir><dir name="Customer"><dir name="Form"><file name="Renderer.php" hash="699e9e71cea5b32ea290b9a203cc2ab0"/></dir><file name="Order.php" hash="f029067e3a3213a995af2c5df05b59ed"/></dir><file name="Android.php" hash="25010379b5d9786b4c22bf32892ea7a2"/><file name="Data.php" hash="e9d6c74e212624188568f2920caaef4e"/><file name="Image.php" hash="40ea38416f7bb1c1c7cc66f8b1af0ec7"/><file name="Ipad.php" hash="921d412fe4579adf77280362652a0d8b"/><file name="Iphone.php" hash="ed7f28e8a85ce206fd10be26b0ae1e31"/><file name="Payment.php" hash="5b54eccc95ea5c57d8c9ef5d934bc094"/><file name="Theme.php" hash="8b58268b3c755efb662c27ef7fba8136"/></dir><dir name="Model"><dir name="Adminhtml"><dir name="System"><dir name="Config"><dir name="Backend"><dir name="Currency"><file name="Default.php" hash="758caf789cef878fb21f4551d7858463"/></dir><file name="Baseurl.php" hash="65f8ab647d9ab17eac023da2ab9a8b8d"/></dir></dir></dir></dir><dir name="Catalog"><dir name="Category"><dir name="Media"><file name="Config.php" hash="fd88aeb90a45d8c0c6392cf5f8f70dc8"/></dir><file name="Image.php" hash="1b2bace07cc99d365ee038960c9877a9"/></dir></dir><dir name="Input"><dir name="Filter"><file name="MaliciousCode.php" hash="d5d500781af7b07e11baf5cbef0eb0ce"/></dir></dir><dir name="Mysql4"><dir name="Application"><file name="Collection.php" hash="2be10e2eb68fd639fefaca00ab871707"/></dir><dir name="Cms"><dir name="Page"><file name="Collection.php" hash="096d160ee850caa72e432938ae2b40be"/></dir></dir><dir name="ConfigData"><file name="Collection.php" hash="cca431230655fd7f85bd4c866018e997"/></dir><dir name="Filter"><file name="Collection.php" hash="9a03d40ddc51c62d5570521c6692046b"/></dir><dir name="History"><file name="Collection.php" hash="51ad48285cdde01f4c72df81aab88a39"/></dir><dir name="Queue"><file name="Collection.php" hash="4e9ddc30978a23485d4ebc0a82525981"/></dir><dir name="Template"><file name="Collection.php" hash="b24088ed79ec2ae5e832e0c1ab7bfada"/></dir><file name="Application.php" hash="754902c7551a817d2a37bc5894b45e74"/><file name="ConfigData.php" hash="5f7515094ff90df80ff428535e2f548f"/><file name="History.php" hash="7f98de19717b14af7f661eba1d0e7290"/><file name="Queue.php" hash="b2965b8e71ea9a552af0282259441ba8"/><file name="Setup.php" hash="cd7c56fb9a87d2bf3d69c4802692b671"/><file name="Template.php" hash="8c4b78bfd4869ec4424610f9a433e5e2"/></dir><dir name="Payment"><dir name="Method"><dir name="Paypal"><file name="Config.php" hash="bceb1a29c8f22fcd8ac576c99615446c"/><file name="Mecl.php" hash="54c7fa2f6c2798a7c322919f860fb31c"/><file name="Mep.php" hash="5ed8f4b4348885b04d05dfd30ca5414c"/></dir></dir></dir><dir name="Paypal"><dir name="Mecl"><file name="Checkout.php" hash="3d95962fabb68583110851c1feab0958"/></dir><dir name="Mep"><file name="Checkout.php" hash="e5d9a3f5bf7fe229fad33851121b32ee"/></dir></dir><dir name="Preview"><file name="Abstract.php" hash="d06405e2c57270ac210a5961034065a8"/><file name="Android.php" hash="e5274a740dc0afaedd881f6479ffbdef"/><file name="Ipad.php" hash="98200566632dde66b5ac40991a781d18"/><file name="Iphone.php" hash="9739bf1fd78c1377faa91042af30a045"/></dir><dir name="Simplexml"><dir name="Form"><dir name="Element"><dir name="Renderer"><file name="Interface.php" hash="9b314b65fe1eeb81ccfc6ed6047c8e5e"/></dir><dir name="Validator"><file name="Abstract.php" hash="145396845cf2f7d4f27291cc16e57f55"/><file name="Rule.php" hash="c632915311d7f0913ef76b1d40fac395"/></dir><file name="Abstract.php" hash="72f79ef1701e5666c7d5d97509efefea"/><file name="Checkbox.php" hash="9de46a951f58eaf77328589b91da2fef"/><file name="Collection.php" hash="7ee2575d3dfd6800da0df80bfeab55f5"/><file name="CountryListSelect.php" hash="93fc2ec9b73c2583e41d74ca6ddc11f7"/><file name="Date.php" hash="6fe4f1fb15550526221d7030fafea071"/><file name="Email.php" hash="2bff11cf0cd07abf6ea042e414d6d899"/><file name="Fieldset.php" hash="24ec910f64e0da488ada268c4f5da50d"/><file name="File.php" hash="d089c6caee1a04a3a9a0b5af84caf154"/><file name="Image.php" hash="500204087a9c2b3eff2ae603be71552d"/><file name="Multiline.php" hash="c9ab79577fd28be36b24ec006e1fd457"/><file name="Multiselect.php" hash="d5a3f2dc6eec83dbc367e79f1f30581f"/><file name="Select.php" hash="94da9503599604da1dbf2dbc03af9c72"/><file name="Text.php" hash="d6a4b452f7219cc5da07867fd3d8cc48"/><file name="Textarea.php" hash="e82df346b8046ae24a8efe23ea965069"/><file name="Validator.php" hash="00870fbba161e9a2d49a69d4f3229d1d"/></dir><file name="Abstract.php" hash="9abcf326213c39cf374163e422d94759"/></dir><file name="Element.php" hash="ae5371037a96954026a9f4bf9d9929a4"/><file name="Form.php" hash="0ae8eea47cc9a7b38e7154d2d536fc1e"/></dir><file name="Application.php" hash="5a38363e67cf2148fba1eb5a20a1f7db"/><file name="ConfigData.php" hash="bf6289065cc32ff9d9d4f460991b4fe9"/><file name="History.php" hash="0eb86f02d6f85f23419457229e6c525c"/><file name="Observer.php" hash="c8d3d58742b21f7dab04d41ae0d26fe1"/><file name="Queue.php" hash="87669399632961eee5bf5cba47fef40e"/><file name="Tabs.php" hash="2b6ea4c0c21dc059990aa2216172412d"/><file name="Template.php" hash="e5ce25084397ff36b94e3d177b6bf8b2"/><file name="Theme.php" hash="29cb0e46b9bc1fa823b48a14cc264083"/></dir><dir name="sql"><dir name="xmlconnect_setup"><file name="mysql4-data-upgrade-1.4.0.13-1.4.0.14.php" hash="4080ff59c5bea460530f4eeaa5ab1e4b"/><file name="mysql4-install-1.4.0.8.php" hash="d722f3f741af029773ebaf514c522b0f"/><file name="mysql4-upgrade-1.4.0.8-1.4.0.9.php" hash="7f6bc966e741f00c44919aa6d4307b8c"/><file name="mysql4-upgrade-1.4.0.9-1.4.0.10.php" hash="b7fec601f2bf620e60c7284c2cf6634e"/><file name="mysql4-upgrade-1.4.0.10-1.4.0.11.php" hash="cf2afadfee0b21d1c2d02071303edfc1"/><file name="mysql4-upgrade-1.4.0.11-1.4.0.12.php" hash="a1333a0c415cbc398cdd0671ab539102"/><file name="mysql4-upgrade-1.4.0.12-1.4.0.13.php" hash="a07f66c79bb1df1208c9000c3496ada1"/><file name="mysql4-upgrade-1.4.0.13-1.4.0.14.php" hash="3852cdcfa482f19981a2e8e1092909bf"/></dir></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="Mage_XmlConnect.xml" hash="f57b14eccad90152c221e4f090a8801b"/></dir></target><target name="magemedia"><dir name="xmlconnect"><dir name="custom"><file name="ok.gif" hash="398f81b3983f802a99932eaf97ee0806"/></dir><dir name="original"><file name="ok.gif" hash="398f81b3983f802a99932eaf97ee0806"/></dir></dir></target></contents>
|
17 |
<compatible/>
|
18 |
+
<dependencies><required><package><name>Mage_Core_Modules</name><channel>community</channel><min>1.5.0.1</min><max>1.6.0.0</max></package></required></dependencies>
|
19 |
</package>
|