Version Notes
*Made PTP default for better lineitem listings
*Added multi-currency support
*Removed shipping address from intangible sales
*Removed mark shipping requirement
Download this release
Release Info
Developer | Magento Core Team |
Extension | Craig_Tco |
Version | 2.2.0 |
Comparing to | |
See all releases |
Code changes from version 2.1.7 to 2.2.0
app/code/local/Craig/Tco/Model/Checkout.php
CHANGED
@@ -50,11 +50,7 @@ class Craig_Tco_Model_Checkout extends Mage_Payment_Model_Method_Abstract {
|
|
50 |
|
51 |
//get purchase routine URL
|
52 |
public function getUrl() {
|
53 |
-
|
54 |
-
$url = "https://www.2checkout.com/checkout/spurchase";
|
55 |
-
} else {
|
56 |
-
$url = "https://www.2checkout.com/checkout/purchase";
|
57 |
-
}
|
58 |
return $url;
|
59 |
}
|
60 |
|
@@ -94,6 +90,7 @@ class Craig_Tco_Model_Checkout extends Mage_Payment_Model_Method_Abstract {
|
|
94 |
$taxFull = $order->getFullTaxInfo();
|
95 |
$ship_method = $order->getShipping_description();
|
96 |
$coupon = $order->getCoupon_code();
|
|
|
97 |
$i = 1;
|
98 |
//get products
|
99 |
if ($items) {
|
@@ -106,7 +103,8 @@ class Craig_Tco_Model_Checkout extends Mage_Payment_Model_Method_Abstract {
|
|
106 |
$lineitems['li_'.$i.'_quantity'] = $item->getQtyToInvoice();
|
107 |
$lineitems['li_'.$i.'_name'] = $item->getName();
|
108 |
$lineitems['li_'.$i.'_description'] = $item->getDescription();
|
109 |
-
|
|
|
110 |
$i++;
|
111 |
}
|
112 |
}
|
@@ -116,6 +114,7 @@ class Craig_Tco_Model_Checkout extends Mage_Payment_Model_Method_Abstract {
|
|
116 |
$lineitems['li_'.$i.'_type'] = 'tax';
|
117 |
$lineitems['li_'.$i.'_name'] = $rate['rates']['0']['code'];
|
118 |
$lineitems['li_'.$i.'_price'] = round($rate['amount'], 2);
|
|
|
119 |
$i++;
|
120 |
}
|
121 |
}
|
@@ -123,7 +122,8 @@ class Craig_Tco_Model_Checkout extends Mage_Payment_Model_Method_Abstract {
|
|
123 |
if ($ship_method) {
|
124 |
$lineitems['li_'.$i.'_type'] = 'shipping';
|
125 |
$lineitems['li_'.$i.'_name'] = $order->getShipping_description();
|
126 |
-
$lineitems['li_'.$i.'_price'] = round($order->
|
|
|
127 |
$i++;
|
128 |
}
|
129 |
//get coupons
|
@@ -131,11 +131,48 @@ class Craig_Tco_Model_Checkout extends Mage_Payment_Model_Method_Abstract {
|
|
131 |
$lineitems['li_'.$i.'_type'] = 'coupon';
|
132 |
$lineitems['li_'.$i.'_name'] = $order->getCoupon_code();
|
133 |
$lineitems['li_'.$i.'_price'] = trim(round($order->getBase_discount_amount(), 2), '-');
|
|
|
134 |
$i++;
|
135 |
}
|
136 |
return $lineitems;
|
137 |
}
|
138 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
139 |
//get tax data
|
140 |
public function getTaxData() {
|
141 |
$order_id = $this->getCheckout()->getLastRealOrderId();
|
@@ -157,11 +194,11 @@ class Craig_Tco_Model_Checkout extends Mage_Payment_Model_Method_Abstract {
|
|
157 |
public function getFormFields() {
|
158 |
$order_id = $this->getCheckout()->getLastRealOrderId();
|
159 |
$order = Mage::getModel('sales/order')->loadByIncrementId($order_id);
|
160 |
-
$amount = round($order->
|
161 |
$a = $this->getQuote()->getShippingAddress();
|
162 |
$b = $this->getQuote()->getBillingAddress();
|
163 |
$country = $b->getCountry();
|
164 |
-
$currency_code = $
|
165 |
$shipping = round($order->getShippingAmount(), 2);
|
166 |
$weight = round($order->getWeight(), 2);
|
167 |
$ship_method = $order->getShipping_description();
|
@@ -199,32 +236,26 @@ class Craig_Tco_Model_Checkout extends Mage_Payment_Model_Method_Abstract {
|
|
199 |
$tcoFields['ship_city'] = $a->getCity();
|
200 |
$tcoFields['ship_state'] = $a->getRegion();
|
201 |
$tcoFields['ship_zip'] = $a->getPostcode();
|
202 |
-
} else {
|
203 |
-
$tcoFields['ship_name'] = $b->getFirstname() . ' ' . $b->getLastname();
|
204 |
-
$tcoFields['ship_country'] = $b->getCountry();
|
205 |
-
$tcoFields['ship_street_address'] = $b->getStreet1();
|
206 |
-
$tcoFields['ship_street_address2'] = $b->getStreet2();
|
207 |
-
$tcoFields['ship_city'] = $b->getCity();
|
208 |
-
$tcoFields['ship_state'] = $b->getRegion();
|
209 |
-
$tcoFields['ship_zip'] = $b->getPostcode();
|
210 |
-
}
|
211 |
-
$tcoFields['2co_tax'] = $tax;
|
212 |
$tcoFields['sh_cost'] = $shipping;
|
213 |
$tcoFields['sh_weight'] = $weight;
|
214 |
$tcoFields['ship_method'] = $ship_method;
|
|
|
|
|
215 |
$tcoFields['2co_cart_type'] = 'magento';
|
216 |
$tcoFields['x_Receipt_Link_URL'] = Mage::getUrl('tco/redirect/success', array('_secure' => true));
|
217 |
$tcoFields['demo'] = $this->getDemo();
|
|
|
218 |
|
219 |
//Check Integration mode
|
220 |
-
|
221 |
-
$
|
222 |
-
|
223 |
-
|
224 |
-
|
225 |
-
|
226 |
-
|
227 |
-
|
|
|
228 |
}
|
229 |
return $result;
|
230 |
}
|
50 |
|
51 |
//get purchase routine URL
|
52 |
public function getUrl() {
|
53 |
+
$url = "https://www.2checkout.com/checkout/purchase";
|
|
|
|
|
|
|
|
|
54 |
return $url;
|
55 |
}
|
56 |
|
90 |
$taxFull = $order->getFullTaxInfo();
|
91 |
$ship_method = $order->getShipping_description();
|
92 |
$coupon = $order->getCoupon_code();
|
93 |
+
$lineitem_total = 0;
|
94 |
$i = 1;
|
95 |
//get products
|
96 |
if ($items) {
|
103 |
$lineitems['li_'.$i.'_quantity'] = $item->getQtyToInvoice();
|
104 |
$lineitems['li_'.$i.'_name'] = $item->getName();
|
105 |
$lineitems['li_'.$i.'_description'] = $item->getDescription();
|
106 |
+
$lineitems['li_'.$i.'_price'] = number_format($item->getPrice(), 2, '.', '');
|
107 |
+
$lineitem_total += number_format($item->getPrice(), 2, '.', '');
|
108 |
$i++;
|
109 |
}
|
110 |
}
|
114 |
$lineitems['li_'.$i.'_type'] = 'tax';
|
115 |
$lineitems['li_'.$i.'_name'] = $rate['rates']['0']['code'];
|
116 |
$lineitems['li_'.$i.'_price'] = round($rate['amount'], 2);
|
117 |
+
$lineitem_total += round($rate['amount'], 2);
|
118 |
$i++;
|
119 |
}
|
120 |
}
|
122 |
if ($ship_method) {
|
123 |
$lineitems['li_'.$i.'_type'] = 'shipping';
|
124 |
$lineitems['li_'.$i.'_name'] = $order->getShipping_description();
|
125 |
+
$lineitems['li_'.$i.'_price'] = round($order->getShippingAmount(), 2);
|
126 |
+
$lineitem_total += round($order->getShippingAmount(), 2);
|
127 |
$i++;
|
128 |
}
|
129 |
//get coupons
|
131 |
$lineitems['li_'.$i.'_type'] = 'coupon';
|
132 |
$lineitems['li_'.$i.'_name'] = $order->getCoupon_code();
|
133 |
$lineitems['li_'.$i.'_price'] = trim(round($order->getBase_discount_amount(), 2), '-');
|
134 |
+
$lineitem_total -= trim(round($order->getBase_discount_amount(), 2), '-');
|
135 |
$i++;
|
136 |
}
|
137 |
return $lineitems;
|
138 |
}
|
139 |
|
140 |
+
//check total
|
141 |
+
public function checkTotal() {
|
142 |
+
$items = $this->getQuote()->getAllItems();
|
143 |
+
$order_id = $this->getCheckout()->getLastRealOrderId();
|
144 |
+
$order = Mage::getModel('sales/order')->loadByIncrementId($order_id);
|
145 |
+
$taxFull = $order->getFullTaxInfo();
|
146 |
+
$ship_method = $order->getShipping_description();
|
147 |
+
$coupon = $order->getCoupon_code();
|
148 |
+
$lineitem_total = 0;
|
149 |
+
$i = 1;
|
150 |
+
//get products
|
151 |
+
if ($items) {
|
152 |
+
foreach($items as $item){
|
153 |
+
if ($item->getParentItem()) {
|
154 |
+
continue;
|
155 |
+
}
|
156 |
+
$lineitem_total += number_format($item->getPrice(), 2, '.', '');
|
157 |
+
}
|
158 |
+
}
|
159 |
+
//get taxes
|
160 |
+
if ($taxFull) {
|
161 |
+
foreach($taxFull as $rate){
|
162 |
+
$lineitem_total += round($rate['amount'], 2);
|
163 |
+
}
|
164 |
+
}
|
165 |
+
//get shipping
|
166 |
+
if ($ship_method) {
|
167 |
+
$lineitem_total += round($order->getShippingAmount(), 2);
|
168 |
+
}
|
169 |
+
//get coupons
|
170 |
+
if ($coupon) {
|
171 |
+
$lineitem_total -= trim(round($order->getBase_discount_amount(), 2), '-');
|
172 |
+
}
|
173 |
+
return $lineitem_total;
|
174 |
+
}
|
175 |
+
|
176 |
//get tax data
|
177 |
public function getTaxData() {
|
178 |
$order_id = $this->getCheckout()->getLastRealOrderId();
|
194 |
public function getFormFields() {
|
195 |
$order_id = $this->getCheckout()->getLastRealOrderId();
|
196 |
$order = Mage::getModel('sales/order')->loadByIncrementId($order_id);
|
197 |
+
$amount = round($order->getGrandTotal(), 2);
|
198 |
$a = $this->getQuote()->getShippingAddress();
|
199 |
$b = $this->getQuote()->getBillingAddress();
|
200 |
$country = $b->getCountry();
|
201 |
+
$currency_code = $order->getOrderCurrencyCode();
|
202 |
$shipping = round($order->getShippingAmount(), 2);
|
203 |
$weight = round($order->getWeight(), 2);
|
204 |
$ship_method = $order->getShipping_description();
|
236 |
$tcoFields['ship_city'] = $a->getCity();
|
237 |
$tcoFields['ship_state'] = $a->getRegion();
|
238 |
$tcoFields['ship_zip'] = $a->getPostcode();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
239 |
$tcoFields['sh_cost'] = $shipping;
|
240 |
$tcoFields['sh_weight'] = $weight;
|
241 |
$tcoFields['ship_method'] = $ship_method;
|
242 |
+
}
|
243 |
+
$tcoFields['2co_tax'] = $tax;
|
244 |
$tcoFields['2co_cart_type'] = 'magento';
|
245 |
$tcoFields['x_Receipt_Link_URL'] = Mage::getUrl('tco/redirect/success', array('_secure' => true));
|
246 |
$tcoFields['demo'] = $this->getDemo();
|
247 |
+
$tcoFields['currency_code'] = $currency_code;
|
248 |
|
249 |
//Check Integration mode
|
250 |
+
$lineitem_total = $this->checkTotal();
|
251 |
+
if ($lineitem_total != $amount) {
|
252 |
+
$tcoFields['id_type'] = '1';
|
253 |
+
$tcoFields['total'] = $amount;
|
254 |
+
$tcoFields['cart_order_id'] = $order_id;
|
255 |
+
$result = $productData + $taxData + $tcoFields;
|
256 |
+
} else {
|
257 |
+
$tcoFields['mode'] = '2CO';
|
258 |
+
$result = $tcoFields + $lineitemData;
|
259 |
}
|
260 |
return $result;
|
261 |
}
|
app/code/local/Craig/Tco/Model/Observer.php
CHANGED
@@ -42,43 +42,5 @@ class Craig_Tco_Model_Observer {
|
|
42 |
$response = $http->read();
|
43 |
}
|
44 |
}
|
45 |
-
|
46 |
-
public function mark_order_as_shipped(Varien_Object $payment) {
|
47 |
-
|
48 |
-
$integration = Mage::getStoreConfig('payment/tco/integration');
|
49 |
-
|
50 |
-
if ($integration == '1') {
|
51 |
-
|
52 |
-
$order = $payment->getInvoice()->getOrder()->getData();
|
53 |
-
$invoice_comment = $payment->getInvoice()->getCommentsCollection()->toArray();
|
54 |
-
|
55 |
-
if(isset($invoice_comment['items'][0]['comment'])){
|
56 |
-
$comment = $invoice_comment['items'][0]['comment'];
|
57 |
-
} else {
|
58 |
-
$comment = 'Order shipped by seller.';
|
59 |
-
}
|
60 |
-
|
61 |
-
$username = Mage::getStoreConfig('payment/tco/username');
|
62 |
-
$password = Mage::getStoreConfig('payment/tco/password');
|
63 |
-
$auth = 'Basic ' . base64_encode($username . ':' . $password);
|
64 |
-
|
65 |
-
$data = array();
|
66 |
-
$data['sale_id'] = $order['ext_order_id'];
|
67 |
-
$data['comment'] = $comment;
|
68 |
-
$data['tracking_number'] = 'See shipping comments.';
|
69 |
-
$data['reauthorize'] = '1';
|
70 |
-
|
71 |
-
$headers = array(
|
72 |
-
'Authorization: ' . $auth,
|
73 |
-
'Accept: application/xml'
|
74 |
-
);
|
75 |
-
|
76 |
-
$url = 'https://www.2checkout.com/api/sales/mark_shipped';
|
77 |
-
|
78 |
-
$http = new Varien_Http_Adapter_Curl();
|
79 |
-
$http->write('POST', $url, '1.1', $headers, $data);
|
80 |
-
$response = $http->read();
|
81 |
-
}
|
82 |
-
}
|
83 |
}
|
84 |
?>
|
42 |
$response = $http->read();
|
43 |
}
|
44 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
45 |
}
|
46 |
?>
|
app/code/local/Craig/Tco/etc/config.xml
CHANGED
@@ -24,7 +24,7 @@
|
|
24 |
<config>
|
25 |
<modules>
|
26 |
<Craig_Tco>
|
27 |
-
<version>2.
|
28 |
</Craig_Tco>
|
29 |
</modules>
|
30 |
<global>
|
@@ -64,7 +64,6 @@
|
|
64 |
</tco_read>
|
65 |
</resources>
|
66 |
<events>
|
67 |
-
<!-- **** This is the event that it will execute on => sales_order_creditmemo_refund*** -->
|
68 |
<sales_order_creditmemo_refund>
|
69 |
<observers>
|
70 |
<issue_creditmemo_refund>
|
@@ -75,16 +74,6 @@
|
|
75 |
</observers>
|
76 |
</sales_order_creditmemo_refund>
|
77 |
|
78 |
-
<!-- **** This is the event that it will execute on => sales_order_invoice_pay*** -->
|
79 |
-
<sales_order_invoice_pay>
|
80 |
-
<observers>
|
81 |
-
<mark_order_as_shipped>
|
82 |
-
<type>singleton</type>
|
83 |
-
<class>Craig_Tco_Model_Observer</class>
|
84 |
-
<method>mark_order_as_shipped</method>
|
85 |
-
</mark_order_as_shipped>
|
86 |
-
</observers>
|
87 |
-
</sales_order_invoice_pay>
|
88 |
</events>
|
89 |
</global>
|
90 |
<frontend>
|
24 |
<config>
|
25 |
<modules>
|
26 |
<Craig_Tco>
|
27 |
+
<version>2.2.0</version>
|
28 |
</Craig_Tco>
|
29 |
</modules>
|
30 |
<global>
|
64 |
</tco_read>
|
65 |
</resources>
|
66 |
<events>
|
|
|
67 |
<sales_order_creditmemo_refund>
|
68 |
<observers>
|
69 |
<issue_creditmemo_refund>
|
74 |
</observers>
|
75 |
</sales_order_creditmemo_refund>
|
76 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
77 |
</events>
|
78 |
</global>
|
79 |
<frontend>
|
app/code/local/Craig/Tco/etc/system.xml
CHANGED
@@ -61,7 +61,7 @@
|
|
61 |
</sid>
|
62 |
<username translate="label">
|
63 |
<label>API Username</label>
|
64 |
-
<comment>Required if
|
65 |
<frontend_type>text</frontend_type>
|
66 |
<sort_order>4</sort_order>
|
67 |
<show_in_default>1</show_in_default>
|
@@ -70,7 +70,7 @@
|
|
70 |
</username>
|
71 |
<password translate="label">
|
72 |
<label>API Password</label>
|
73 |
-
<comment>Required if
|
74 |
<frontend_type>text</frontend_type>
|
75 |
<sort_order>5</sort_order>
|
76 |
<show_in_default>1</show_in_default>
|
@@ -86,26 +86,6 @@
|
|
86 |
<show_in_website>1</show_in_website>
|
87 |
<show_in_store>0</show_in_store>
|
88 |
</secret_word>
|
89 |
-
<submit_url translate="label">
|
90 |
-
<label>Use Single Page Checkout</label>
|
91 |
-
<comment>Select "Yes" for 2Checkout single page checkout or select "No" for 2Checkout standard checkout. Please note that 2Checkout will revert to the standard checkout routine if Pass Through Products are enabled.</comment>
|
92 |
-
<frontend_type>select</frontend_type>
|
93 |
-
<source_model>adminhtml/system_config_source_yesno</source_model>
|
94 |
-
<sort_order>7</sort_order>
|
95 |
-
<show_in_default>1</show_in_default>
|
96 |
-
<show_in_website>1</show_in_website>
|
97 |
-
<show_in_store>0</show_in_store>
|
98 |
-
</submit_url>
|
99 |
-
<integration translate="label">
|
100 |
-
<label>Use Pass Through Products</label>
|
101 |
-
<comment>**IMPORTANT** Requires API Username and Password. Select 'Yes' for cleaner 2Checkout lineitem listings (Does not support non-coupon Shopping Cart Price Rules and orders containing tangible items must be invoiced through Magento with in 7 days of being placed to bill the customers card.</comment>
|
102 |
-
<frontend_type>select</frontend_type>
|
103 |
-
<sort_order>8</sort_order>
|
104 |
-
<source_model>adminhtml/system_config_source_yesno</source_model>
|
105 |
-
<show_in_default>1</show_in_default>
|
106 |
-
<show_in_website>1</show_in_website>
|
107 |
-
<show_in_store>0</show_in_store>
|
108 |
-
</integration>
|
109 |
<refund translate="label">
|
110 |
<label>Live Refunds</label>
|
111 |
<comment>**IMPORTANT** Requires API Username and Password. Select 'Yes' to enable live refunds through 2Checkout when sending credit memos in Magento. This will actually issue refunds for the credit memo amount.</comment>
|
@@ -131,9 +111,7 @@
|
|
131 |
<comment>Automatically issues magento invoice after
|
132 |
2Checkout fraud review passes. If you are
|
133 |
offering downloadable products this would
|
134 |
-
enable downloads
|
135 |
-
Through Products this would mark the sale as
|
136 |
-
shipped at 2Checkout.</comment>
|
137 |
<frontend_type>select</frontend_type>
|
138 |
<sort_order>11</sort_order>
|
139 |
<source_model>adminhtml/system_config_source_yesno</source_model>
|
@@ -147,9 +125,7 @@
|
|
147 |
<comment>Automatically issues magento invoice
|
148 |
when sale is processed by 2Checkout. If you are
|
149 |
offering downloadable products this would
|
150 |
-
enable downloads
|
151 |
-
Through Products this would mark the sale as
|
152 |
-
shipped at 2Checkout.</comment>
|
153 |
<frontend_type>select</frontend_type>
|
154 |
<sort_order>12</sort_order>
|
155 |
<source_model>adminhtml/system_config_source_yesno</source_model>
|
61 |
</sid>
|
62 |
<username translate="label">
|
63 |
<label>API Username</label>
|
64 |
+
<comment>Required if 'Live Refunds' is set to 'Yes'.</comment>
|
65 |
<frontend_type>text</frontend_type>
|
66 |
<sort_order>4</sort_order>
|
67 |
<show_in_default>1</show_in_default>
|
70 |
</username>
|
71 |
<password translate="label">
|
72 |
<label>API Password</label>
|
73 |
+
<comment>Required if 'Live Refunds' is set to 'Yes'.</comment>
|
74 |
<frontend_type>text</frontend_type>
|
75 |
<sort_order>5</sort_order>
|
76 |
<show_in_default>1</show_in_default>
|
86 |
<show_in_website>1</show_in_website>
|
87 |
<show_in_store>0</show_in_store>
|
88 |
</secret_word>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
89 |
<refund translate="label">
|
90 |
<label>Live Refunds</label>
|
91 |
<comment>**IMPORTANT** Requires API Username and Password. Select 'Yes' to enable live refunds through 2Checkout when sending credit memos in Magento. This will actually issue refunds for the credit memo amount.</comment>
|
111 |
<comment>Automatically issues magento invoice after
|
112 |
2Checkout fraud review passes. If you are
|
113 |
offering downloadable products this would
|
114 |
+
enable downloads.</comment>
|
|
|
|
|
115 |
<frontend_type>select</frontend_type>
|
116 |
<sort_order>11</sort_order>
|
117 |
<source_model>adminhtml/system_config_source_yesno</source_model>
|
125 |
<comment>Automatically issues magento invoice
|
126 |
when sale is processed by 2Checkout. If you are
|
127 |
offering downloadable products this would
|
128 |
+
enable downloads</comment>
|
|
|
|
|
129 |
<frontend_type>select</frontend_type>
|
130 |
<sort_order>12</sort_order>
|
131 |
<source_model>adminhtml/system_config_source_yesno</source_model>
|
package.xml
CHANGED
@@ -1,18 +1,21 @@
|
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>Craig_Tco</name>
|
4 |
-
<version>2.
|
5 |
<stability>stable</stability>
|
6 |
<license uri="http://www.opensource.org/licenses/osl-3.0.php">OSL v3.0</license>
|
7 |
<channel>community</channel>
|
8 |
<extends/>
|
9 |
<summary>2Checkout Payment Extension</summary>
|
10 |
<description>Official 2Checkout Payment Extension</description>
|
11 |
-
<notes
|
|
|
|
|
|
|
12 |
<authors><author><name>Craig Christenson</name><user>auto-converted</user><email>christensoncraig@gmail.com</email></author></authors>
|
13 |
-
<date>2012-
|
14 |
-
<time>
|
15 |
-
<contents><target name="mageetc"><dir name="modules"><file name="Craig_Tco.xml" hash="4a6e92678d9b2a310af880d35a4c355f"/></dir></target><target name="magedesign"><dir name="frontend"><dir name="base"><dir name="default"><dir name="template"><dir name="tco"><file name="form.phtml" hash="08ae585e158550d0a5dccbed3d37758d"/><file name="info.phtml" hash="b714a7398773adc71ea086024dfc96b1"/></dir></dir></dir></dir></dir></target><target name="magelocal"><dir name="Craig"><dir name="Tco"><dir name="Block"><file name="Form.php" hash="b552018543f57090c42784d939004dd4"/><file name="Info.php" hash="ceb4ec03e4de3e4f1dafaf5d7da9b982"/><file name="Redirect.php" hash="e2809d56d51bdc74367dad8da77ac563"/></dir><dir name="controllers"><file name="NotificationController.php" hash="c978c760f0ee234a371ace1853353ccf"/><file name="RedirectController.php" hash="6dd5e6460c5454da1e37be35de7b4ec7"/></dir><dir name="etc"><file name="config.xml" hash="
|
16 |
<compatible/>
|
17 |
<dependencies/>
|
18 |
</package>
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>Craig_Tco</name>
|
4 |
+
<version>2.2.0</version>
|
5 |
<stability>stable</stability>
|
6 |
<license uri="http://www.opensource.org/licenses/osl-3.0.php">OSL v3.0</license>
|
7 |
<channel>community</channel>
|
8 |
<extends/>
|
9 |
<summary>2Checkout Payment Extension</summary>
|
10 |
<description>Official 2Checkout Payment Extension</description>
|
11 |
+
<notes>*Made PTP default for better lineitem listings
|
12 |
+
*Added multi-currency support
|
13 |
+
*Removed shipping address from intangible sales
|
14 |
+
*Removed mark shipping requirement</notes>
|
15 |
<authors><author><name>Craig Christenson</name><user>auto-converted</user><email>christensoncraig@gmail.com</email></author></authors>
|
16 |
+
<date>2012-11-30</date>
|
17 |
+
<time>15:15:21</time>
|
18 |
+
<contents><target name="mageetc"><dir name="modules"><file name="Craig_Tco.xml" hash="4a6e92678d9b2a310af880d35a4c355f"/></dir></target><target name="magedesign"><dir name="frontend"><dir name="base"><dir name="default"><dir name="template"><dir name="tco"><file name="form.phtml" hash="08ae585e158550d0a5dccbed3d37758d"/><file name="info.phtml" hash="b714a7398773adc71ea086024dfc96b1"/></dir></dir></dir></dir></dir></target><target name="magelocal"><dir name="Craig"><dir name="Tco"><dir name="Block"><file name="Form.php" hash="b552018543f57090c42784d939004dd4"/><file name="Info.php" hash="ceb4ec03e4de3e4f1dafaf5d7da9b982"/><file name="Redirect.php" hash="e2809d56d51bdc74367dad8da77ac563"/></dir><dir name="controllers"><file name="NotificationController.php" hash="c978c760f0ee234a371ace1853353ccf"/><file name="RedirectController.php" hash="6dd5e6460c5454da1e37be35de7b4ec7"/></dir><dir name="etc"><file name="config.xml" hash="dbc9281bf0137e3c19647b7d485f129c"/><file name="system.xml" hash="36c109d2906a8aa301aa1e6338988d56"/></dir><dir name="Helper"><file name="Data.php" hash="de7680011db7d6821c1f68d70a8fa684"/></dir><dir name="Model"><file name="Checkout.php" hash="1d94602fe52951ba9e6876359b9cf848"/><file name="Observer.php" hash="1451aacaa9eb8038629b2a48c842c406"/></dir></dir></dir></target></contents>
|
19 |
<compatible/>
|
20 |
<dependencies/>
|
21 |
</package>
|