Craig_Tco - Version 2.3.0

Version Notes

Adding support for Direct Checkout
Updating Refund logic to support 1.7+

Download this release

Release Info

Developer Magento Core Team
Extension Craig_Tco
Version 2.3.0
Comparing to
See all releases


Code changes from version 2.2.1 to 2.3.0

app/code/local/Craig/Tco/Block/Redirect.php CHANGED
@@ -38,14 +38,35 @@ class Craig_Tco_Block_Redirect extends Mage_Core_Block_Abstract
38
  $form->addField($field, 'hidden', array('name'=>$field, 'value'=>$value, 'size'=>200));
39
  }
40
 
41
- $html = '<html><body>';
42
- $html.= $tco->getRedirectMessage();
43
- $html.= $form->toHtml();
44
- $html.= '<br>';
45
- $html.= '<script type="text/javascript">document.getElementById("pay").submit();</script>';
46
- $html.= '</body></html>';
47
-
48
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
49
  return $html;
50
  }
51
  }
38
  $form->addField($field, 'hidden', array('name'=>$field, 'value'=>$value, 'size'=>200));
39
  }
40
 
41
+ $html = '<style type="text/css">
42
+ .col-left { display: none; }
43
+ .col-right { display: none; }
44
+ </style>';
 
 
 
45
 
46
+ if ($tco->getDisplay()) {
47
+ //inline mode
48
+ $html .= '<p style=text-align:center;><img style=text-align:center;cursor:pointer src="https://www.2checkout.com/wp-content/themes/2co/assets/images/logo_header.png" onclick="document.location.reload()" /></p><br />'.
49
+ '<p style=text-align:center;>'.$tco->getRedirectMessage().'</p><br />'.
50
+ '<p style=text-align:center;><img style=text-align:center;cursor:pointer src="https://www.2checkout.com/files/2012/07/paymentlogoshorizontal.png" onclick="document.location.reload()" /></p><br />'.
51
+ $form->toHtml();
52
+ $html.= '<script type="text/javascript" src="https://www.2checkout.com/static/checkout/javascript/direct.min.js"></script>';
53
+ $html.= '<script type="text/javascript">function formSubmit(){ document.getElementById("pay").submit();}
54
+ window.onload=function(){
55
+ formSubmit();
56
+ var elem = document.getElementById("tco_lightbox");
57
+ window.setTimeout(elem.style.display = "block", 2000);
58
+ };</script>';
59
+ } else {
60
+ //dynamic mode
61
+ $html .= '<p style=text-align:center;><img style=text-align:center;cursor:pointer src="https://www.2checkout.com/wp-content/themes/2co/assets/images/logo_header.png" onclick="document.location.reload()" /></p><br />'.
62
+ '<p style=text-align:center;>'.$tco->getRedirectMessage().'</p><br />'.
63
+ '<p style=text-align:center;><img style=text-align:center;cursor:pointer src="https://www.2checkout.com/files/2012/07/paymentlogoshorizontal.png" onclick="document.location.reload()" /></p><br />'.
64
+ $form->toHtml();
65
+ $html.= '<script type="text/javascript">function formSubmit(){ document.getElementById("pay").submit();}
66
+ window.onload=function(){
67
+ formSubmit();
68
+ };</script>';
69
+ }
70
  return $html;
71
  }
72
  }
app/code/local/Craig/Tco/Model/Checkout.php CHANGED
@@ -48,6 +48,16 @@ class Craig_Tco_Model_Checkout extends Mage_Payment_Model_Method_Abstract {
48
  return $demo;
49
  }
50
 
 
 
 
 
 
 
 
 
 
 
51
  //get purchase routine URL
52
  public function getUrl() {
53
  $url = "https://www.2checkout.com/checkout/purchase";
48
  return $demo;
49
  }
50
 
51
+ //get Checkout Display
52
+ public function getDisplay() {
53
+ if ($this->getConfigData('inline') == '1') {
54
+ $display = true;
55
+ } else {
56
+ $display = false;
57
+ }
58
+ return $display;
59
+ }
60
+
61
  //get purchase routine URL
62
  public function getUrl() {
63
  $url = "https://www.2checkout.com/checkout/purchase";
app/code/local/Craig/Tco/Model/Observer.php CHANGED
@@ -1,45 +1,52 @@
1
  <?php
2
 
3
- class Craig_Tco_Model_Observer {
4
 
5
  public function issue_creditmemo_refund(Varien_Object $payment) {
6
 
7
  $refund = Mage::getStoreConfig('payment/tco/refund');
8
 
9
  if ($refund == '1') {
10
-
11
- $creditmemo = $payment->getCreditmemo()->getOrder()->getData();
12
- $creditmemo_amount = $payment->getCreditmemo()->getData();
13
- $creditmemo_comment = $payment->getCreditmemo()->getCommentsCollection()->toArray();
14
-
15
- if(isset($creditmemo_comment['items'][0]['comment'])){
16
- $comment = $creditmemo_comment['items'][0]['comment'];
17
- } else {
18
- $comment = 'Refund issued by seller';
19
  }
20
 
21
-
22
- $username = Mage::getStoreConfig('payment/tco/username');
23
- $password = Mage::getStoreConfig('payment/tco/password');
24
- $auth = 'Basic ' . base64_encode($username . ':' . $password);
25
-
26
- $data = array();
27
- $data['sale_id'] = $creditmemo['ext_order_id'];
28
- $data['comment'] = $comment;
29
- $data['category'] = '5';
30
- $data['amount'] = $creditmemo_amount['grand_total'];
31
- $data['currency'] = 'vendor';
32
-
33
- $headers = array(
34
- 'Authorization: ' . $auth,
35
- 'Accept: application/xml'
36
- );
37
-
38
- $url = 'https://www.2checkout.com/api/sales/refund_invoice';
39
-
40
- $http = new Varien_Http_Adapter_Curl();
41
- $http->write('POST', $url, '1.1', $headers, $data);
42
- $response = $http->read();
 
 
 
 
 
 
 
 
43
  }
44
  }
45
  }
1
  <?php
2
 
3
+ class Craig_Tco_Model_Observer extends Mage_Adminhtml_Block_Template{
4
 
5
  public function issue_creditmemo_refund(Varien_Object $payment) {
6
 
7
  $refund = Mage::getStoreConfig('payment/tco/refund');
8
 
9
  if ($refund == '1') {
10
+ $creditmemo = $payment->getCreditmemo()->getOrder()->getData();
11
+ $creditmemo_amount = $payment->getCreditmemo()->getData();
12
+ $creditmemo_comment = $payment->getCreditmemo()->getCommentsCollection()->toArray();
13
+
14
+ if(isset($creditmemo_comment['items'][0]['comment'])) {
15
+ $comment = $creditmemo_comment['items'][0]['comment'];
16
+ } else {
17
+ $comment = 'Refund issued by seller';
 
18
  }
19
 
20
+ $username = Mage::getStoreConfig('payment/tco/username');
21
+ $password = Mage::getStoreConfig('payment/tco/password');
22
+ $auth = 'Basic ' . base64_encode($username . ':' . $password);
23
+
24
+ $data = array();
25
+ $data['sale_id'] = $creditmemo['ext_order_id'];
26
+ $data['comment'] = $comment;
27
+ $data['category'] = '5';
28
+ $data['amount'] = $creditmemo_amount['grand_total'];
29
+ $data['currency'] = 'vendor';
30
+
31
+ $headers = array(
32
+ 'Authorization: ' . $auth,
33
+ 'Accept: application/json'
34
+ );
35
+
36
+ $url = 'https://www.2checkout.com/api/sales/refund_invoice';
37
+
38
+ $config = array(
39
+ 'timeout' => 30
40
+ );
41
+
42
+ try {
43
+ $http = new Varien_Http_Adapter_Curl();
44
+ $http->setConfig($config);
45
+ $http->write(Zend_Http_Client::POST, $url, '1.1', $headers, $data);
46
+ $response = $http->read();
47
+ } catch (Exception $e) {
48
+ die($e->getMessage());
49
+ }
50
  }
51
  }
52
  }
app/code/local/Craig/Tco/controllers/NotificationController.php CHANGED
@@ -41,8 +41,8 @@ class Craig_Tco_NotificationController extends Mage_Core_Controller_Front_Action
41
  $order->loadByIncrementId($insMessage['vendor_order_id']);
42
  $invoice_on_fraud = Mage::getStoreConfig('payment/tco/invoice_on_fraud');
43
  $invoice_on_order = Mage::getStoreConfig('payment/tco/invoice_on_order');
44
- $hashSecretWord = Mage::getStoreConfig('payment/tco/secret_word');
45
- $hashSid = $insMessage['vendor_id'];
46
  $hashOrder = $insMessage['sale_id'];
47
  $hashInvoice = $insMessage['invoice_id'];
48
  $StringToHash = strtoupper(md5($hashOrder . $hashSid . $hashInvoice . $hashSecretWord));
@@ -54,9 +54,9 @@ class Craig_Tco_NotificationController extends Mage_Core_Controller_Front_Action
54
  } else {
55
  if ($insMessage['message_type'] == 'FRAUD_STATUS_CHANGED') {
56
  if ($insMessage['fraud_status'] == 'fail') {
57
- $order->setState(Mage_Sales_Model_Order::STATE_CANCELED, true)->addStatusHistoryComment('Order failed fraud review.')->save();
58
  } else if ($insMessage['fraud_status'] == 'pass') {
59
- $order->setState(Mage_Sales_Model_Order::STATE_PROCESSING, true)->addStatusHistoryComment('Order passed fraud review.')->save();
60
  if ($invoice_on_fraud == '1') {
61
  try {
62
  if(!$order->canInvoice()) {
41
  $order->loadByIncrementId($insMessage['vendor_order_id']);
42
  $invoice_on_fraud = Mage::getStoreConfig('payment/tco/invoice_on_fraud');
43
  $invoice_on_order = Mage::getStoreConfig('payment/tco/invoice_on_order');
44
+ $hashSecretWord = Mage::getStoreConfig('payment/tco/secret_word');
45
+ $hashSid = $insMessage['vendor_id'];
46
  $hashOrder = $insMessage['sale_id'];
47
  $hashInvoice = $insMessage['invoice_id'];
48
  $StringToHash = strtoupper(md5($hashOrder . $hashSid . $hashInvoice . $hashSecretWord));
54
  } else {
55
  if ($insMessage['message_type'] == 'FRAUD_STATUS_CHANGED') {
56
  if ($insMessage['fraud_status'] == 'fail') {
57
+ $order->setState(Mage_Sales_Model_Order::STATE_CANCELED, true)->addStatusHistoryComment('Order failed fraud review.')->save();
58
  } else if ($insMessage['fraud_status'] == 'pass') {
59
+ $order->setState(Mage_Sales_Model_Order::STATE_PROCESSING, true)->addStatusHistoryComment('Order passed fraud review.')->save();
60
  if ($invoice_on_fraud == '1') {
61
  try {
62
  if(!$order->canInvoice()) {
app/code/local/Craig/Tco/controllers/RedirectController.php CHANGED
@@ -35,16 +35,14 @@ class Craig_Tco_RedirectController extends Mage_Core_Controller_Front_Action {
35
  }
36
 
37
  public function indexAction() {
38
- $this->getResponse()
39
- ->setHeader('Content-type', 'text/html; charset=utf8')
40
- ->setBody($this->getLayout()
41
- ->createBlock('tco/redirect')
42
- ->toHtml());
43
  }
44
 
45
  public function successAction() {
46
  $post = $this->getRequest()->getPost();
47
- $insMessage = $this->getRequest()->getPost();
48
  foreach ($_REQUEST as $k => $v) {
49
  $v = htmlspecialchars($v);
50
  $v = stripslashes($v);
@@ -82,6 +80,4 @@ class Craig_Tco_RedirectController extends Mage_Core_Controller_Front_Action {
82
  }
83
  }
84
 
85
- }
86
-
87
- ?>
35
  }
36
 
37
  public function indexAction() {
38
+ $this->loadLayout();
39
+ $block = $this->getLayout()->createBlock('tco/redirect');
40
+ $this->getLayout()->getBlock('content')->append($block);
41
+ $this->renderLayout();
 
42
  }
43
 
44
  public function successAction() {
45
  $post = $this->getRequest()->getPost();
 
46
  foreach ($_REQUEST as $k => $v) {
47
  $v = htmlspecialchars($v);
48
  $v = stripslashes($v);
80
  }
81
  }
82
 
83
+ }
 
 
app/code/local/Craig/Tco/etc/system.xml CHANGED
@@ -24,7 +24,7 @@
24
  <config>
25
  <sections>
26
  <payment>
27
- <groups>
28
  <tco translate="label">
29
  <label>2Checkout</label>
30
  <frontend_type>text</frontend_type>
@@ -50,138 +50,147 @@
50
  <show_in_website>1</show_in_website>
51
  <show_in_store>0</show_in_store>
52
  </active>
53
- <sid translate="label">
54
- <label>2Checkout Account Number</label>
55
- <comment>**Required**</comment>
56
- <frontend_type>text</frontend_type>
57
- <sort_order>3</sort_order>
58
- <show_in_default>1</show_in_default>
59
- <show_in_website>1</show_in_website>
60
- <show_in_store>0</show_in_store>
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>
68
- <show_in_website>1</show_in_website>
69
- <show_in_store>0</show_in_store>
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>
77
- <show_in_website>1</show_in_website>
78
- <show_in_store>0</show_in_store>
79
- </password>
80
- <secret_word translate="label">
81
- <label>Secret Word</label>
82
- <comment>**Required** Please enter the same value that you set on your 2Checkout Site Management page.</comment>
83
- <frontend_type>text</frontend_type>
84
- <sort_order>6</sort_order>
85
- <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>
92
- <frontend_type>select</frontend_type>
93
- <sort_order>9</sort_order>
94
- <source_model>adminhtml/system_config_source_yesno</source_model>
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
- </refund>
99
- <demo translate="label">
100
- <label>2Checkout Demo Mode</label>
101
- <frontend_type>select</frontend_type>
102
- <sort_order>10</sort_order>
103
- <source_model>adminhtml/system_config_source_yesno</source_model>
104
- <show_in_default>1</show_in_default>
105
- <show_in_website>1</show_in_website>
106
- <show_in_store>0</show_in_store>
107
- </demo>
108
- <invoice_on_fraud translate="label">
109
- <label>Invoice Automatically After 2Checkout Fraud
110
- Review</label>
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>
118
- <show_in_default>1</show_in_default>
119
- <show_in_website>1</show_in_website>
120
- <show_in_store>0</show_in_store>
121
- </invoice_on_fraud>
122
- <invoice_on_order translate="label">
123
- <label>Invoice Automatically Before 2Checkout
124
  Fraud Review</label>
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>
132
- <show_in_default>1</show_in_default>
133
- <show_in_website>1</show_in_website>
134
- <show_in_store>0</show_in_store>
135
- </invoice_on_order>
136
- <allowspecific translate="label">
137
- <label>Payment Applicable From</label>
138
- <frontend_type>select</frontend_type>
139
- <sort_order>13</sort_order>
140
- <source_model>adminhtml/system_config_source_payment_allspecificcountries</source_model>
141
- <show_in_default>1</show_in_default>
142
- <show_in_website>1</show_in_website>
143
- <show_in_store>0</show_in_store>
144
- </allowspecific>
145
- <specificcountry translate="label">
146
- <label>Countries Payment Applicable From</label>
147
- <frontend_type>multiselect</frontend_type>
148
- <sort_order>14</sort_order>
149
- <source_model>adminhtml/system_config_source_country</source_model>
150
- <show_in_default>1</show_in_default>
151
- <show_in_website>1</show_in_website>
152
- <show_in_store>0</show_in_store>
153
- </specificcountry>
154
- <checkout_language translate="label">
155
- <label>Checkout Language Code</label>
156
- <comment>**Defaults to English** Enter your preferred 2Checkout language code to translate the checkout page.
157
  <![CDATA[<a href="https://www.2checkout.com/blog/knowledge-base/merchants/tech-support/multi-language-options/do-you-offer-any-languages-other-than-english/">2Checkout Language Code Reference</a>]]>
158
- </comment>
159
- <frontend_type>text</frontend_type>
160
- <sort_order>15</sort_order>
161
- <show_in_default>1</show_in_default>
162
- <show_in_website>1</show_in_website>
163
- <show_in_store>0</show_in_store>
164
- </checkout_language>
165
- <redirect_message translate="label">
166
- <label>Redirect Message</label>
167
- <comment>You will be redirected to 2Checkout in a few seconds.</comment>
168
- <frontend_type>text</frontend_type>
169
- <sort_order>15</sort_order>
170
- <show_in_default>1</show_in_default>
171
- <show_in_website>1</show_in_website>
172
- <show_in_store>0</show_in_store>
173
- </redirect_message>
174
- <sort_order translate="label">
175
- <label>Sort order</label>
176
- <frontend_type>text</frontend_type>
177
- <sort_order>16</sort_order>
178
- <show_in_default>1</show_in_default>
179
- <show_in_website>1</show_in_website>
180
- <show_in_store>0</show_in_store>
181
- </sort_order>
182
  </fields>
183
  </tco>
184
- </groups>
185
  </payment>
186
  </sections>
187
  </config>
24
  <config>
25
  <sections>
26
  <payment>
27
+ <groups>
28
  <tco translate="label">
29
  <label>2Checkout</label>
30
  <frontend_type>text</frontend_type>
50
  <show_in_website>1</show_in_website>
51
  <show_in_store>0</show_in_store>
52
  </active>
53
+ <sid translate="label">
54
+ <label>2Checkout Account Number</label>
55
+ <comment>**Required**</comment>
56
+ <frontend_type>text</frontend_type>
57
+ <sort_order>3</sort_order>
58
+ <show_in_default>1</show_in_default>
59
+ <show_in_website>1</show_in_website>
60
+ <show_in_store>0</show_in_store>
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>
68
+ <show_in_website>1</show_in_website>
69
+ <show_in_store>0</show_in_store>
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>
77
+ <show_in_website>1</show_in_website>
78
+ <show_in_store>0</show_in_store>
79
+ </password>
80
+ <secret_word translate="label">
81
+ <label>Secret Word</label>
82
+ <comment>**Required** Please enter the same value that you set on your 2Checkout Site Management page.</comment>
83
+ <frontend_type>text</frontend_type>
84
+ <sort_order>6</sort_order>
85
+ <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>
92
+ <frontend_type>select</frontend_type>
93
+ <sort_order>9</sort_order>
94
+ <source_model>adminhtml/system_config_source_yesno</source_model>
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
+ </refund>
99
+ <inline translate="label">
100
+ <label>2Checkout Inline Mode</label>
101
+ <frontend_type>select</frontend_type>
102
+ <sort_order>10</sort_order>
103
+ <source_model>adminhtml/system_config_source_yesno</source_model>
104
+ <show_in_default>1</show_in_default>
105
+ <show_in_website>1</show_in_website>
106
+ <show_in_store>0</show_in_store>
107
+ </inline>
108
+ <demo translate="label">
109
+ <label>2Checkout Demo Mode</label>
110
+ <frontend_type>select</frontend_type>
111
+ <sort_order>11</sort_order>
112
+ <source_model>adminhtml/system_config_source_yesno</source_model>
113
+ <show_in_default>1</show_in_default>
114
+ <show_in_website>1</show_in_website>
115
+ <show_in_store>0</show_in_store>
116
+ </demo>
117
+ <invoice_on_fraud translate="label">
118
+ <label>Invoice Automatically After 2Checkout Fraud
119
+ Review</label>
120
+ <comment>Automatically issues magento invoice after
121
  2Checkout fraud review passes. If you are
122
  offering downloadable products this would
123
  enable downloads.</comment>
124
+ <frontend_type>select</frontend_type>
125
+ <sort_order>12</sort_order>
126
+ <source_model>adminhtml/system_config_source_yesno</source_model>
127
+ <show_in_default>1</show_in_default>
128
+ <show_in_website>1</show_in_website>
129
+ <show_in_store>0</show_in_store>
130
+ </invoice_on_fraud>
131
+ <invoice_on_order translate="label">
132
+ <label>Invoice Automatically Before 2Checkout
133
  Fraud Review</label>
134
+ <comment>Automatically issues magento invoice
135
  when sale is processed by 2Checkout. If you are
136
  offering downloadable products this would
137
  enable downloads</comment>
138
+ <frontend_type>select</frontend_type>
139
+ <sort_order>13</sort_order>
140
+ <source_model>adminhtml/system_config_source_yesno</source_model>
141
+ <show_in_default>1</show_in_default>
142
+ <show_in_website>1</show_in_website>
143
+ <show_in_store>0</show_in_store>
144
+ </invoice_on_order>
145
+ <allowspecific translate="label">
146
+ <label>Payment Applicable From</label>
147
+ <frontend_type>select</frontend_type>
148
+ <sort_order>14</sort_order>
149
+ <source_model>adminhtml/system_config_source_payment_allspecificcountries</source_model>
150
+ <show_in_default>1</show_in_default>
151
+ <show_in_website>1</show_in_website>
152
+ <show_in_store>0</show_in_store>
153
+ </allowspecific>
154
+ <specificcountry translate="label">
155
+ <label>Countries Payment Applicable From</label>
156
+ <frontend_type>multiselect</frontend_type>
157
+ <sort_order>15</sort_order>
158
+ <source_model>adminhtml/system_config_source_country</source_model>
159
+ <show_in_default>1</show_in_default>
160
+ <show_in_website>1</show_in_website>
161
+ <show_in_store>0</show_in_store>
162
+ </specificcountry>
163
+ <checkout_language translate="label">
164
+ <label>Checkout Language Code</label>
165
+ <comment>**Defaults to English** Enter your preferred 2Checkout language code to translate the checkout page.
166
  <![CDATA[<a href="https://www.2checkout.com/blog/knowledge-base/merchants/tech-support/multi-language-options/do-you-offer-any-languages-other-than-english/">2Checkout Language Code Reference</a>]]>
167
+ </comment>
168
+ <frontend_type>text</frontend_type>
169
+ <sort_order>16</sort_order>
170
+ <show_in_default>1</show_in_default>
171
+ <show_in_website>1</show_in_website>
172
+ <show_in_store>0</show_in_store>
173
+ </checkout_language>
174
+ <redirect_message translate="label">
175
+ <label>Redirect Message</label>
176
+ <comment>You will be redirected to 2Checkout in a few seconds.</comment>
177
+ <frontend_type>text</frontend_type>
178
+ <sort_order>17</sort_order>
179
+ <show_in_default>1</show_in_default>
180
+ <show_in_website>1</show_in_website>
181
+ <show_in_store>0</show_in_store>
182
+ </redirect_message>
183
+ <sort_order translate="label">
184
+ <label>Sort order</label>
185
+ <frontend_type>text</frontend_type>
186
+ <sort_order>18</sort_order>
187
+ <show_in_default>1</show_in_default>
188
+ <show_in_website>1</show_in_website>
189
+ <show_in_store>0</show_in_store>
190
+ </sort_order>
191
  </fields>
192
  </tco>
193
+ </groups>
194
  </payment>
195
  </sections>
196
  </config>
package.xml CHANGED
@@ -1,20 +1,19 @@
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>Craig_Tco</name>
4
- <version>2.2.1</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>*Added purchase_step parameter to skip to the payment-method selection at 2Checkout.&#xD;
12
- *Added support to specify checkout language.&#xD;
13
- *Added support to customize redirect message.</notes>
14
- <authors><author><name>Craig Christenson</name><user>auto-converted</user><email>christensoncraig@gmail.com</email></author></authors>
15
- <date>2012-12-31</date>
16
- <time>12:31:32</time>
17
- <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="fb6c6d68ff2ede5d7f3b965311e908d3"/></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="ec868c128af27ef62506b78ea885221b"/><file name="system.xml" hash="f5ef53fa2b5befe1567e477b679f8557"/></dir><dir name="Helper"><file name="Data.php" hash="de7680011db7d6821c1f68d70a8fa684"/></dir><dir name="Model"><file name="Checkout.php" hash="e35ff3449234ac38d144576cd2bd6356"/><file name="Observer.php" hash="1451aacaa9eb8038629b2a48c842c406"/></dir></dir></dir></target></contents>
18
  <compatible/>
19
  <dependencies/>
20
  </package>
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>Craig_Tco</name>
4
+ <version>2.3.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>2Checkout Payment Extension</description>
11
+ <notes>Adding support for Direct Checkout&#xD;
12
+ Updating Refund logic to support 1.7+</notes>
13
+ <authors><author><name>Craig Christenson</name><user>auto-converted</user><email>cchristenson@2checkout.com</email></author></authors>
14
+ <date>2013-04-22</date>
15
+ <time>14:23:59</time>
16
+ <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="d8a2e7a91476f2c0acf1de0b11bb2316"/></dir><dir name="controllers"><file name="NotificationController.php" hash="24237131f9fd8d537a1b400fbce272f0"/><file name="RedirectController.php" hash="e3ec6f4e46f22b9a2de916d463447ae8"/></dir><dir name="etc"><file name="config.xml" hash="ec868c128af27ef62506b78ea885221b"/><file name="system.xml" hash="8b8a49a75cd220f0ae7597d70c55f156"/></dir><dir name="Helper"><file name="Data.php" hash="de7680011db7d6821c1f68d70a8fa684"/></dir><dir name="Model"><file name="Checkout.php" hash="abc306412071808aaa015f0198efc4fb"/><file name="Observer.php" hash="c24b10be82be173a91cd6b53a0cbbd18"/></dir></dir></dir></target></contents>
 
17
  <compatible/>
18
  <dependencies/>
19
  </package>