Version Notes
delivery method issue resolved
Download this release
Release Info
Developer | Christian Sanchez |
Extension | Payair_gate |
Version | 4.0.0.31 |
Comparing to | |
See all releases |
Code changes from version 4.0.0.27 to 4.0.0.31
app/code/community/Payair/Gate/Block/Paymentjs.php
CHANGED
@@ -11,7 +11,8 @@ class Payair_Gate_Block_Paymentjs extends Mage_Core_Block_Template
|
|
11 |
*/
|
12 |
|
13 |
protected function _toHtml() {
|
14 |
-
|
|
|
15 |
|
16 |
return $js;
|
17 |
}
|
11 |
*/
|
12 |
|
13 |
protected function _toHtml() {
|
14 |
+
//$js = '<script type="text/javascript" src="'.$this->getSkinUrl("js/payair/payaircheckout.js").'"></script>';
|
15 |
+
$js = '';
|
16 |
|
17 |
return $js;
|
18 |
}
|
app/code/community/Payair/Gate/controllers/IndexController.php
CHANGED
@@ -53,7 +53,7 @@ class Payair_Gate_IndexController extends Mage_Core_Controller_Front_Action {
|
|
53 |
"attributes" => $this->getAttributes($product_obj)
|
54 |
);
|
55 |
|
56 |
-
|
57 |
if ( count($related_products_id_array) > 0 ) {
|
58 |
foreach ( $related_products_id_array as $related_product_id ) {
|
59 |
$related_product = $this->loadProduct($related_product_id); // Load related Product by Product Id
|
@@ -72,7 +72,7 @@ class Payair_Gate_IndexController extends Mage_Core_Controller_Front_Action {
|
|
72 |
"sortOrder" => "1"
|
73 |
);
|
74 |
}
|
75 |
-
}
|
76 |
|
77 |
$response_array = array(
|
78 |
"statusCode" => "SUCCESS",
|
@@ -85,12 +85,6 @@ class Payair_Gate_IndexController extends Mage_Core_Controller_Front_Action {
|
|
85 |
$this->sendResponse($response_json, 'item Action');
|
86 |
}
|
87 |
|
88 |
-
private function sendResponse($data, $controller_name) {
|
89 |
-
Mage::log("\n send response from " . $controller_name . "\n" . print_r($data, true), null, $this->log_file);
|
90 |
-
$this->getResponse()->setHeader('Content-type', 'application/json', true);
|
91 |
-
echo $data;
|
92 |
-
}
|
93 |
-
|
94 |
/**
|
95 |
* The function which take control over the web service request for Cart sync
|
96 |
*/
|
@@ -229,15 +223,13 @@ class Payair_Gate_IndexController extends Mage_Core_Controller_Front_Action {
|
|
229 |
$address->implodeStreetAddress();
|
230 |
$quoteObj->getShippingAddress()->setCollectShippingRates(true)->collectShippingRates();
|
231 |
$available_shipping_methods = $quoteObj->getShippingAddress()->getShippingRatesCollection();
|
|
|
|
|
232 |
if ( is_array( $this->getRequestCollection('chosenDeliveryMethod') ) && count ( $this->getRequestCollection('chosenDeliveryMethod') > 0 ) ) {
|
233 |
$chosenDeliveryMethod = $this->getRequestCollection('chosenDeliveryMethod'); // get chosen delivery method data from payair request array
|
234 |
-
}
|
235 |
-
$chosenDeliveryMethod = '';
|
236 |
-
$chosenDeliveryMethodName = '';
|
237 |
-
}
|
238 |
-
|
239 |
if ( is_array( $chosenDeliveryMethod ) && ( count( $chosenDeliveryMethod ) > 0 ) ) {
|
240 |
-
$chosenDeliveryMethodId = $chosenDeliveryMethod['
|
241 |
$chosenDeliveryMethodName = $chosenDeliveryMethod['name'];
|
242 |
|
243 |
/*Load the Shipping Rate Model by its ID*/
|
@@ -319,7 +311,7 @@ class Payair_Gate_IndexController extends Mage_Core_Controller_Front_Action {
|
|
319 |
$totalVat = $this->request->totalVat;
|
320 |
$deliveryMethods = $this->getRequestCollection('chosenDeliveryMethod'); // get delivery methods for request array
|
321 |
|
322 |
-
$method_id = $deliveryMethods['
|
323 |
|
324 |
if ( empty( $method_id ) ) {
|
325 |
// Get the very first shipping method ID
|
@@ -555,6 +547,11 @@ class Payair_Gate_IndexController extends Mage_Core_Controller_Front_Action {
|
|
555 |
|
556 |
$receipt_msg_top = Mage::getStoreConfig('payment/gate/gate_order_info_top', $this->getStoreId());
|
557 |
$receipt_msg_bottom = Mage::getStoreConfig('payment/gate/gate_order_info_bottom', $this->getStoreId());
|
|
|
|
|
|
|
|
|
|
|
558 |
|
559 |
$response_array = array(
|
560 |
"statusCode" => "SUCCESS",
|
@@ -563,8 +560,7 @@ class Payair_Gate_IndexController extends Mage_Core_Controller_Front_Action {
|
|
563 |
"transactionStatusMessage" => $transactionStatusMessage,
|
564 |
"payairExternalReference" => $payairExternalReference,
|
565 |
"orderReference" => $orderReference,
|
566 |
-
"
|
567 |
-
"receiptMsgBottom" => $receipt_msg_bottom,
|
568 |
"payairReference" => $payairReference,
|
569 |
"cart" => $products,
|
570 |
"chosenDeliveryMethods" => $deliveryMethods
|
@@ -666,6 +662,7 @@ class Payair_Gate_IndexController extends Mage_Core_Controller_Front_Action {
|
|
666 |
return ($fp) ? $flocal->read($_fileToImportLocal) : '';
|
667 |
}
|
668 |
|
|
|
669 |
/**
|
670 |
* handle JSON request from the payair server
|
671 |
*
|
@@ -674,11 +671,24 @@ class Payair_Gate_IndexController extends Mage_Core_Controller_Front_Action {
|
|
674 |
*/
|
675 |
private function getServiceRequest() {
|
676 |
$json = file_get_contents('php://input');
|
677 |
-
//$json = '{"reference":"14","user":{"firstName":"Deepak","lastName":"Kumar","email":"deepakk@chetu.com","address1":"Dragarbrunnsgatan","city":"Anchorage","zip":"99501","country":"US","phoneNr":"9990976911","state":"Alaska","locale":"en_GB"},"cart":[]}';
|
678 |
$json = utf8_encode($json);
|
679 |
Mage::log("\n Request JSON is : \n" . print_r($json, true), null, $this->log_file);
|
680 |
return json_decode($json);
|
681 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
682 |
|
683 |
/**
|
684 |
* The function Return the first method ID
|
@@ -1482,12 +1492,12 @@ class Payair_Gate_IndexController extends Mage_Core_Controller_Front_Action {
|
|
1482 |
|
1483 |
$deliveryMethodArray[] = array(
|
1484 |
"name" => $method['carrier_title'], //$method['carrier']
|
1485 |
-
"description" => $method['
|
1486 |
"amount" => $this->getFormattedPrice($method['price']),
|
1487 |
"vatPercent" => 0,
|
1488 |
"type" => "OTHER",
|
1489 |
"vat" => 0,
|
1490 |
-
"customIdentifier" => $method['
|
1491 |
"chosen" => $chosen,
|
1492 |
"sortOrder" => ( $sort_order > 0 ) ? $sort_order : 1
|
1493 |
);
|
53 |
"attributes" => $this->getAttributes($product_obj)
|
54 |
);
|
55 |
|
56 |
+
/*$related_products_id_array = $product_obj->getRelatedProductIds(); // Get Related Products
|
57 |
if ( count($related_products_id_array) > 0 ) {
|
58 |
foreach ( $related_products_id_array as $related_product_id ) {
|
59 |
$related_product = $this->loadProduct($related_product_id); // Load related Product by Product Id
|
72 |
"sortOrder" => "1"
|
73 |
);
|
74 |
}
|
75 |
+
} */
|
76 |
|
77 |
$response_array = array(
|
78 |
"statusCode" => "SUCCESS",
|
85 |
$this->sendResponse($response_json, 'item Action');
|
86 |
}
|
87 |
|
|
|
|
|
|
|
|
|
|
|
|
|
88 |
/**
|
89 |
* The function which take control over the web service request for Cart sync
|
90 |
*/
|
223 |
$address->implodeStreetAddress();
|
224 |
$quoteObj->getShippingAddress()->setCollectShippingRates(true)->collectShippingRates();
|
225 |
$available_shipping_methods = $quoteObj->getShippingAddress()->getShippingRatesCollection();
|
226 |
+
$chosenDeliveryMethod = '';
|
227 |
+
$chosenDeliveryMethodName = '';
|
228 |
if ( is_array( $this->getRequestCollection('chosenDeliveryMethod') ) && count ( $this->getRequestCollection('chosenDeliveryMethod') > 0 ) ) {
|
229 |
$chosenDeliveryMethod = $this->getRequestCollection('chosenDeliveryMethod'); // get chosen delivery method data from payair request array
|
230 |
+
}
|
|
|
|
|
|
|
|
|
231 |
if ( is_array( $chosenDeliveryMethod ) && ( count( $chosenDeliveryMethod ) > 0 ) ) {
|
232 |
+
$chosenDeliveryMethodId = (int)$chosenDeliveryMethod['description'];
|
233 |
$chosenDeliveryMethodName = $chosenDeliveryMethod['name'];
|
234 |
|
235 |
/*Load the Shipping Rate Model by its ID*/
|
311 |
$totalVat = $this->request->totalVat;
|
312 |
$deliveryMethods = $this->getRequestCollection('chosenDeliveryMethod'); // get delivery methods for request array
|
313 |
|
314 |
+
$method_id = $deliveryMethods['description']; // get method id
|
315 |
|
316 |
if ( empty( $method_id ) ) {
|
317 |
// Get the very first shipping method ID
|
547 |
|
548 |
$receipt_msg_top = Mage::getStoreConfig('payment/gate/gate_order_info_top', $this->getStoreId());
|
549 |
$receipt_msg_bottom = Mage::getStoreConfig('payment/gate/gate_order_info_bottom', $this->getStoreId());
|
550 |
+
$receipt_data = array(
|
551 |
+
array("name" => "infoTop", "value" => $receipt_msg_top),
|
552 |
+
array("name" => "infoBottom", "value" => $receipt_msg_bottom)
|
553 |
+
);
|
554 |
+
|
555 |
|
556 |
$response_array = array(
|
557 |
"statusCode" => "SUCCESS",
|
560 |
"transactionStatusMessage" => $transactionStatusMessage,
|
561 |
"payairExternalReference" => $payairExternalReference,
|
562 |
"orderReference" => $orderReference,
|
563 |
+
"customReceiptData" => $receipt_data,
|
|
|
564 |
"payairReference" => $payairReference,
|
565 |
"cart" => $products,
|
566 |
"chosenDeliveryMethods" => $deliveryMethods
|
662 |
return ($fp) ? $flocal->read($_fileToImportLocal) : '';
|
663 |
}
|
664 |
|
665 |
+
|
666 |
/**
|
667 |
* handle JSON request from the payair server
|
668 |
*
|
671 |
*/
|
672 |
private function getServiceRequest() {
|
673 |
$json = file_get_contents('php://input');
|
|
|
674 |
$json = utf8_encode($json);
|
675 |
Mage::log("\n Request JSON is : \n" . print_r($json, true), null, $this->log_file);
|
676 |
return json_decode($json);
|
677 |
}
|
678 |
+
|
679 |
+
|
680 |
+
/**
|
681 |
+
* send JSON request to the payair server
|
682 |
+
*
|
683 |
+
* @param string $data, $controller_name
|
684 |
+
* @return
|
685 |
+
*/
|
686 |
+
|
687 |
+
private function sendResponse($data, $controller_name) {
|
688 |
+
Mage::log("\n send response from " . $controller_name . "\n" . print_r($data, true), null, $this->log_file);
|
689 |
+
$this->getResponse()->setHeader('Content-type', 'application/json', true);
|
690 |
+
echo $data;
|
691 |
+
}
|
692 |
|
693 |
/**
|
694 |
* The function Return the first method ID
|
1492 |
|
1493 |
$deliveryMethodArray[] = array(
|
1494 |
"name" => $method['carrier_title'], //$method['carrier']
|
1495 |
+
"description" => $method['rate_id'],
|
1496 |
"amount" => $this->getFormattedPrice($method['price']),
|
1497 |
"vatPercent" => 0,
|
1498 |
"type" => "OTHER",
|
1499 |
"vat" => 0,
|
1500 |
+
"customIdentifier" => $method['carrier'],
|
1501 |
"chosen" => $chosen,
|
1502 |
"sortOrder" => ( $sort_order > 0 ) ? $sort_order : 1
|
1503 |
);
|
js/payair/category.js
CHANGED
@@ -338,7 +338,7 @@ function drawPayairButton()
|
|
338 |
}
|
339 |
else
|
340 |
{
|
341 |
-
text = '<img onMouseOver="this.style.opacity = 0.75;" onmouseout="this.style.opacity = 1;" src="' + getPayairLocation() + 'img/payair_button.png" onClick="redirectByProduct(); return false;" style="cursor: pointer;">';
|
342 |
}
|
343 |
// Apply string to target:
|
344 |
document.getElementById(target).innerHTML=text;
|
@@ -359,9 +359,9 @@ function getStoreFallback() {
|
|
359 |
return fallbackUrl;
|
360 |
}
|
361 |
|
362 |
-
function redirectByProduct() {
|
363 |
|
364 |
-
var varStatus = Payair_DATA.getVarStatus();
|
365 |
var v_id;
|
366 |
|
367 |
if (varStatus[0] === '0') {
|
338 |
}
|
339 |
else
|
340 |
{
|
341 |
+
text = '<img onMouseOver="this.style.opacity = 0.75;" onmouseout="this.style.opacity = 1;" src="' + getPayairLocation() + 'img/payair_button.png" onClick="redirectByProduct('+Payair_DATA.articleID+'); return false;" style="cursor: pointer;">';
|
342 |
}
|
343 |
// Apply string to target:
|
344 |
document.getElementById(target).innerHTML=text;
|
359 |
return fallbackUrl;
|
360 |
}
|
361 |
|
362 |
+
function redirectByProduct(articleID) {
|
363 |
|
364 |
+
var varStatus = Payair_DATA.getVarStatus(articleID);
|
365 |
var v_id;
|
366 |
|
367 |
if (varStatus[0] === '0') {
|
package.xml
CHANGED
@@ -1,18 +1,18 @@
|
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>Payair_gate</name>
|
4 |
-
<version>4.0.0.
|
5 |
<stability>stable</stability>
|
6 |
<license>GPL</license>
|
7 |
<channel>community</channel>
|
8 |
<extends/>
|
9 |
<summary>Payair payment gateway version 4</summary>
|
10 |
<description>Simplified and secure shopping solution for your customers. Allows checkout in less than 10 seconds.</description>
|
11 |
-
<notes>
|
12 |
<authors><author><name>Christian Sanchez</name><user>payair</user><email>christian.sanchez@payair.com</email></author></authors>
|
13 |
-
<date>2013-10-
|
14 |
-
<time>
|
15 |
-
<contents><target name="mageetc"><dir name="modules"><file name="Payair_Gate.xml" hash="ab09c7de9ca9ce3629379a8375ae7fc3"/><file name="Payair_Adminhtml.xml" hash="051013e3888ebf812048921073dae688"/></dir></target><target name="magecommunity"><dir name="Payair"><dir name="Gate"><dir name="Block"><file name="Paycheckout.php" hash="80d88175ae9a5e5070e9c18e40bb6249"/><file name="Paymentjs.php" hash="
|
16 |
<compatible/>
|
17 |
<dependencies><required><php><min>5.2.0</min><max>6.0.0</max></php></required></dependencies>
|
18 |
</package>
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>Payair_gate</name>
|
4 |
+
<version>4.0.0.31</version>
|
5 |
<stability>stable</stability>
|
6 |
<license>GPL</license>
|
7 |
<channel>community</channel>
|
8 |
<extends/>
|
9 |
<summary>Payair payment gateway version 4</summary>
|
10 |
<description>Simplified and secure shopping solution for your customers. Allows checkout in less than 10 seconds.</description>
|
11 |
+
<notes>delivery method issue resolved</notes>
|
12 |
<authors><author><name>Christian Sanchez</name><user>payair</user><email>christian.sanchez@payair.com</email></author></authors>
|
13 |
+
<date>2013-10-14</date>
|
14 |
+
<time>12:32:50</time>
|
15 |
+
<contents><target name="mageetc"><dir name="modules"><file name="Payair_Gate.xml" hash="ab09c7de9ca9ce3629379a8375ae7fc3"/><file name="Payair_Adminhtml.xml" hash="051013e3888ebf812048921073dae688"/></dir></target><target name="magecommunity"><dir name="Payair"><dir name="Gate"><dir name="Block"><file name="Paycheckout.php" hash="80d88175ae9a5e5070e9c18e40bb6249"/><file name="Paymentjs.php" hash="5159d42ec21867f00f6df5cb9164e3a9"/><file name="Payproduct.php" hash="aa7ae8f31495bdc5a86c4a5103affd9f"/></dir><dir name="Helper"><file name="Data.php" hash="d57a44055ef38461cb28fe3879db9d4b"/></dir><dir name="Model"><file name="Checkout.php" hash="393cb22fb500e95d79ab254c0464b56f"/><file name="Display.php" hash="9f7c3918df8535f1256759271e50f86e"/><file name="Environment.php" hash="f131e5aa46136420acbaffcbef41a10b"/><file name="Observer.php" hash="65a788233ddee12440477d940d8ca927"/><dir name="Order"><dir name="Api"><file name="V2.php" hash="918fdca710f1e424093bc6e8f386bf3c"/></dir><file name="Api.php" hash="73bf707e89776d73fb7acba455bb157e"/></dir><file name="Payair.php" hash="99d39c96bbfdb533249f7746f882c057"/><file name="RestConnect_Model_Oauth_Client.php" hash="2b25cd997acb20d8b67cb2443357bb5c"/></dir><dir name="controllers"><file name="IndexController.php" hash="c322cabcb99eca7ed2ef8c01a6ad5516"/></dir><dir name="etc"><file name="config.xml" hash="cf1b4df4baf2e1d7fec1fe995f8fa4d3"/><file name="system.xml" hash="5fda863ccaf4ccc70e92f00fbfc7bc2f"/></dir></dir></dir></target><target name="magedesign"><dir name="frontend"><dir name="default"><dir name="default"><dir name="template"><dir name="gate"><file name="button.phtml" hash="fae99d344c5a3900c6bf52104b633e17"/><file name="checkout.phtml" hash="06b37288aafb0a4da7d735dc89c93804"/><file name="product.phtml" hash="cac4a0d9dbc33f80086042c8868e5918"/></dir></dir><dir name="layout"><file name="payair.xml" hash="6f4ee086cddac14e810cec8503a7fb3e"/></dir></dir></dir></dir></target><target name="mageskin"><dir name="frontend"><dir name="default"><dir name="default"><dir name="css"><file name="payair.css" hash="9faab5311b422d70708626ac641251ea"/></dir><dir name="js"><dir name="payair"><file name="payaircheckout.js" hash="d37d8ae1ddb2dee75ced96bc1db970c9"/></dir></dir></dir></dir></dir></target><target name="magemedia"><dir name="payair"><file name="android_video_thumb_small.png" hash="21253916e7b3141eaf6993e6962bc798"/><file name="express_checkout_banner_v3.png" hash="e5ea47cbd4545abd43e4fae504ebdea2"/><file name="express_checkout_bg_383.png" hash="72de32e7645b966296c321a421ccee84"/><file name="test.html" hash="bbc041d0154bebdd5413af6fe993a2ee"/></dir></target><target name="mageweb"><dir name="js"><dir name="payair"><file name="category.js" hash="1a85e88186f9e917494c618630e955e7"/></dir></dir></target></contents>
|
16 |
<compatible/>
|
17 |
<dependencies><required><php><min>5.2.0</min><max>6.0.0</max></php></required></dependencies>
|
18 |
</package>
|