Version Notes
Added new validation status in adequation to the new SECUVAD contracts.
Added Paybox support.
Download this release
Release Info
Developer | Magento Core Team |
Extension | Secuvad_Official |
Version | 1.2.3 |
Comparing to | |
See all releases |
Code changes from version 1.2.2 to 1.2.3
- app/code/community/Secuvad/Core/Block/Orders/Grid.php +6 -3
- app/code/community/Secuvad/Core/Block/Orders/View/Tab/Secuvad.php +69 -0
- app/code/community/Secuvad/Core/Block/Widget/Grid/Column/Renderer/Secuvad.php +9 -1
- app/code/community/Secuvad/Core/Model/Api.php +3 -3
- app/code/community/Secuvad/Core/Model/Orders.php +9 -3
- app/code/community/Secuvad/Core/Model/Paybox/System.php +63 -0
- app/code/community/Secuvad/Core/Model/System.php +11 -0
- app/code/community/Secuvad/Core/controllers/PayboxController.php +165 -0
- app/code/community/Secuvad/Core/etc/config.xml +10 -2
- app/code/community/Secuvad/Core/sql/secuvad_setup/mysql4-install-1.2.0.php +1 -1
- app/code/community/Secuvad/Core/sql/secuvad_setup/mysql4-upgrade-1.2.2-1.2.3.php +3 -0
- app/design/adminhtml/default/default/layout/secuvad.xml +7 -1
- app/etc/modules/Secuvad_Core.xml +1 -1
- app/locale/fr_FR/Secuvad.csv +20 -16
- package.xml +8 -9
- skin/adminhtml/default/default/images/secuvad/checkclient.gif +0 -0
- skin/adminhtml/default/default/images/secuvad/wait.gif +0 -0
app/code/community/Secuvad/Core/Block/Orders/Grid.php
CHANGED
@@ -127,9 +127,12 @@ class Secuvad_Core_Block_Orders_Grid extends Mage_Adminhtml_Block_Widget_Grid
|
|
127 |
));
|
128 |
|
129 |
$tab = array( "ERROR" => Mage::helper('secuvad')->__('Error'),
|
130 |
-
"
|
131 |
-
"
|
132 |
-
"
|
|
|
|
|
|
|
133 |
$this->addColumn('secuvad_status', array(
|
134 |
'header' => Mage::helper('secuvad')->__('SECUVAD'),
|
135 |
'index' => 'secuvad_status',
|
127 |
));
|
128 |
|
129 |
$tab = array( "ERROR" => Mage::helper('secuvad')->__('Error'),
|
130 |
+
"A EXPERTISER" => Mage::helper('secuvad')->__('Awaiting check'),
|
131 |
+
"A EXPERTISER C" => Mage::helper('secuvad')->__('To be checked'),
|
132 |
+
"EN ATTENTE" => Mage::helper('secuvad')->__('Being checked'),
|
133 |
+
"VALIDE" => Mage::helper('secuvad')->__('Valid'),
|
134 |
+
"INVALIDE" => Mage::helper('secuvad')->__('Invalid'));
|
135 |
+
|
136 |
$this->addColumn('secuvad_status', array(
|
137 |
'header' => Mage::helper('secuvad')->__('SECUVAD'),
|
138 |
'index' => 'secuvad_status',
|
app/code/community/Secuvad/Core/Block/Orders/View/Tab/Secuvad.php
ADDED
@@ -0,0 +1,69 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class Secuvad_Core_Block_Orders_View_Tab_Secuvad
|
4 |
+
extends Mage_Adminhtml_Block_Sales_Order_Abstract
|
5 |
+
implements Mage_Adminhtml_Block_Widget_Tab_Interface
|
6 |
+
{
|
7 |
+
/**
|
8 |
+
* Retrieve grid url
|
9 |
+
*
|
10 |
+
* @return string
|
11 |
+
*/
|
12 |
+
public function getGridUrl()
|
13 |
+
{
|
14 |
+
return $this->getUrl('*/sales_order/transactions', array('_current' => true));
|
15 |
+
}
|
16 |
+
|
17 |
+
/**
|
18 |
+
* Retrieve grid row url
|
19 |
+
*
|
20 |
+
* @return string
|
21 |
+
*/
|
22 |
+
public function getRowUrl($item)
|
23 |
+
{
|
24 |
+
return $this->getUrl('*/sales_transactions/view', array('_current' => true, 'txn_id' => $item->getId()));
|
25 |
+
}
|
26 |
+
|
27 |
+
/**
|
28 |
+
* Retrieve tab label
|
29 |
+
*
|
30 |
+
* @return string
|
31 |
+
*/
|
32 |
+
public function getTabLabel()
|
33 |
+
{
|
34 |
+
//$item->Secuvad_advice
|
35 |
+
$html = '<img src="'.$this->getSkinUrl('images/secuvad/erreur.gif').'" title="'.Mage::helper('secuvad')->__('Error').'" alt="'.Mage::helper('secuvad')->__('Error').'">';
|
36 |
+
return "SECUVAD : ";
|
37 |
+
}
|
38 |
+
|
39 |
+
/**
|
40 |
+
* Retrieve tab title
|
41 |
+
*
|
42 |
+
* @return string
|
43 |
+
*/
|
44 |
+
public function getTabTitle()
|
45 |
+
{
|
46 |
+
return "SECUVAD : ";
|
47 |
+
}
|
48 |
+
|
49 |
+
/**
|
50 |
+
* Check whether can show tab
|
51 |
+
*
|
52 |
+
* @return bool
|
53 |
+
*/
|
54 |
+
public function canShowTab()
|
55 |
+
{
|
56 |
+
return true;
|
57 |
+
}
|
58 |
+
|
59 |
+
/**
|
60 |
+
* Check whether tab is hidden
|
61 |
+
*
|
62 |
+
* @return bool
|
63 |
+
*/
|
64 |
+
public function isHidden()
|
65 |
+
{
|
66 |
+
return(FALSE);
|
67 |
+
//return !Mage::getSingleton('admin/session')->isAllowed('sales/transactions/fetch');
|
68 |
+
}
|
69 |
+
}
|
app/code/community/Secuvad/Core/Block/Widget/Grid/Column/Renderer/Secuvad.php
CHANGED
@@ -23,10 +23,18 @@ class Secuvad_Core_Block_Widget_Grid_Column_Renderer_Secuvad extends Mage_Adminh
|
|
23 |
{
|
24 |
$html = '<img src="'.$this->getSkinUrl('images/secuvad/green.gif').'" title="'.Mage::helper('secuvad')->__('Reliable order').'" alt="'.Mage::helper('secuvad')->__('Reliable order').'">';
|
25 |
}
|
26 |
-
elseif($row->Secuvad_advice == '
|
27 |
{
|
28 |
$html = '<img src="'.$this->getSkinUrl('images/secuvad/encours.gif').'" title="'.Mage::helper('secuvad')->__('Processing order').'" alt="'.Mage::helper('secuvad')->__('Processing order').'">';
|
29 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
30 |
return ($html);
|
31 |
}
|
32 |
|
23 |
{
|
24 |
$html = '<img src="'.$this->getSkinUrl('images/secuvad/green.gif').'" title="'.Mage::helper('secuvad')->__('Reliable order').'" alt="'.Mage::helper('secuvad')->__('Reliable order').'">';
|
25 |
}
|
26 |
+
elseif($row->Secuvad_advice == 'EN ATTENTE')
|
27 |
{
|
28 |
$html = '<img src="'.$this->getSkinUrl('images/secuvad/encours.gif').'" title="'.Mage::helper('secuvad')->__('Processing order').'" alt="'.Mage::helper('secuvad')->__('Processing order').'">';
|
29 |
}
|
30 |
+
elseif($row->Secuvad_advice == 'A EXPERTISER C')
|
31 |
+
{
|
32 |
+
$html = '<img src="'.$this->getSkinUrl('images/secuvad/checkclient.gif').'" title="'.Mage::helper('secuvad')->__('To be checked by the CUSTOMER').'" alt="'.Mage::helper('secuvad')->__('To be checked by the CUSTOMER').'">';
|
33 |
+
}
|
34 |
+
elseif($row->Secuvad_advice == 'A EXPERTISER')
|
35 |
+
{
|
36 |
+
$html = '<img src="'.$this->getSkinUrl('images/secuvad/wait.gif').'" title="'.Mage::helper('secuvad')->__('To be checked by SECUVAD').'" alt="'.Mage::helper('secuvad')->__('To be checked by SECUVAD').'">';
|
37 |
+
}
|
38 |
return ($html);
|
39 |
}
|
40 |
|
app/code/community/Secuvad/Core/Model/Api.php
CHANGED
@@ -15,7 +15,7 @@ class Secuvad_Core_Model_Api extends Secuvad_Core_Model_Api_Resource
|
|
15 |
list($key,$website_id,$value) = split("::",$data);
|
16 |
$key = ereg_replace("'","\'",$key);
|
17 |
$value = ereg_replace("'","\'",$value);
|
18 |
-
|
19 |
if ($key == "SECUVAD_API_KEY")
|
20 |
{
|
21 |
// On modifie le mot de passe de l'API Secuvad
|
@@ -43,7 +43,7 @@ class Secuvad_Core_Model_Api extends Secuvad_Core_Model_Api_Resource
|
|
43 |
{
|
44 |
$contact = Mage::getModel('secuvad/functions')->get_secuvad_contact();
|
45 |
$secuvad_id = Mage::getModel('secuvad/functions')->get_secuvad_id(-1);
|
46 |
-
mail($contact,'Tentative de piratage du
|
47 |
return 'NOK';
|
48 |
}
|
49 |
}
|
@@ -97,7 +97,7 @@ class Secuvad_Core_Model_Api extends Secuvad_Core_Model_Api_Resource
|
|
97 |
$order->setData('secuvad_advice', $advice);
|
98 |
$order->setData('secuvad_status', $advice);
|
99 |
Mage::getModel('secuvad/logs')
|
100 |
-
->Log("Api response() : transaction $idtransaction -> status=$
|
101 |
}
|
102 |
}
|
103 |
$order->save();
|
15 |
list($key,$website_id,$value) = split("::",$data);
|
16 |
$key = ereg_replace("'","\'",$key);
|
17 |
$value = ereg_replace("'","\'",$value);
|
18 |
+
|
19 |
if ($key == "SECUVAD_API_KEY")
|
20 |
{
|
21 |
// On modifie le mot de passe de l'API Secuvad
|
43 |
{
|
44 |
$contact = Mage::getModel('secuvad/functions')->get_secuvad_contact();
|
45 |
$secuvad_id = Mage::getModel('secuvad/functions')->get_secuvad_id(-1);
|
46 |
+
mail($contact,'Tentative de piratage du systeme',"secuvad_id=".$secuvad_id."\nAcces non autorise a la table secuvad_config (ip=".$this->_getIpAddress().")\nLes données envoyées sont :\n\nGET :\n".print_r($_GET,true)."\n\nPOST :\n".print_r($_POST,true));
|
47 |
return 'NOK';
|
48 |
}
|
49 |
}
|
97 |
$order->setData('secuvad_advice', $advice);
|
98 |
$order->setData('secuvad_status', $advice);
|
99 |
Mage::getModel('secuvad/logs')
|
100 |
+
->Log("Api response() : transaction $idtransaction -> status=$advice");
|
101 |
}
|
102 |
}
|
103 |
$order->save();
|
app/code/community/Secuvad/Core/Model/Orders.php
CHANGED
@@ -27,11 +27,12 @@ class Secuvad_Core_Model_Orders
|
|
27 |
protected function get_flux_xml_order($order_id)
|
28 |
{
|
29 |
$order = Mage::getModel('sales/order')->load($order_id)->getData();
|
30 |
-
|
31 |
$shipping = Mage::getModel('sales/order_address')->load($order['shipping_address_id'])->getData();
|
32 |
$billing = Mage::getModel('sales/order_address')->load($order['billing_address_id'])->getData();
|
33 |
|
34 |
$payment = Mage::getModel('sales/order')->load($order_id)->getPayment()->getData();
|
|
|
35 |
$order_obj = Mage::getModel('sales/order')->load($order_id);
|
36 |
$secuvad_id = Mage::getModel('secuvad/functions')->get_secuvad_id($order_obj->getStore()->getWebsite()->getId());
|
37 |
|
@@ -257,9 +258,12 @@ class Secuvad_Core_Model_Orders
|
|
257 |
|
258 |
$nbproduits ++;
|
259 |
$item_data = $item->getData();
|
|
|
260 |
if(isset($item_data['name'])) {$reference = $item_data['name'];}
|
261 |
if(isset($item_data['qty_ordered'])) {$quantite = $item_data['qty_ordered'];}
|
262 |
-
|
|
|
|
|
263 |
|
264 |
$mage_product = Mage::getModel('catalog/product')->load($item_data['product_id']);
|
265 |
$product_data = $mage_product->getData();
|
@@ -281,7 +285,9 @@ class Secuvad_Core_Model_Orders
|
|
281 |
$category->addFieldToFilter('category_id',$cat['secuvad_category_id']);
|
282 |
}
|
283 |
$category = $category->setOrder('sort_num','asc')->getData();
|
284 |
-
|
|
|
|
|
285 |
|
286 |
$flux_xml_tmp .= "\t\t\t<produit categorie=\"".$category_id."\" reference=\"".htmlspecialchars($reference, ENT_COMPAT , 'UTF-8')."\" prix=\"$prix\" quantite=\"$quantite\"></produit>\n";
|
287 |
}
|
27 |
protected function get_flux_xml_order($order_id)
|
28 |
{
|
29 |
$order = Mage::getModel('sales/order')->load($order_id)->getData();
|
30 |
+
|
31 |
$shipping = Mage::getModel('sales/order_address')->load($order['shipping_address_id'])->getData();
|
32 |
$billing = Mage::getModel('sales/order_address')->load($order['billing_address_id'])->getData();
|
33 |
|
34 |
$payment = Mage::getModel('sales/order')->load($order_id)->getPayment()->getData();
|
35 |
+
|
36 |
$order_obj = Mage::getModel('sales/order')->load($order_id);
|
37 |
$secuvad_id = Mage::getModel('secuvad/functions')->get_secuvad_id($order_obj->getStore()->getWebsite()->getId());
|
38 |
|
258 |
|
259 |
$nbproduits ++;
|
260 |
$item_data = $item->getData();
|
261 |
+
|
262 |
if(isset($item_data['name'])) {$reference = $item_data['name'];}
|
263 |
if(isset($item_data['qty_ordered'])) {$quantite = $item_data['qty_ordered'];}
|
264 |
+
|
265 |
+
if(isset($item_data['price_incl_tax'])) {$prix = $item_data['price_incl_tax'];}
|
266 |
+
elseif(isset($item_data['price'])) {$prix = $item_data['price'];}
|
267 |
|
268 |
$mage_product = Mage::getModel('catalog/product')->load($item_data['product_id']);
|
269 |
$product_data = $mage_product->getData();
|
285 |
$category->addFieldToFilter('category_id',$cat['secuvad_category_id']);
|
286 |
}
|
287 |
$category = $category->setOrder('sort_num','asc')->getData();
|
288 |
+
if (isset($category[0]))
|
289 |
+
$category_id = $category[0]['category_id'];
|
290 |
+
else $category_id = "";
|
291 |
|
292 |
$flux_xml_tmp .= "\t\t\t<produit categorie=\"".$category_id."\" reference=\"".htmlspecialchars($reference, ENT_COMPAT , 'UTF-8')."\" prix=\"$prix\" quantite=\"$quantite\"></produit>\n";
|
293 |
}
|
app/code/community/Secuvad/Core/Model/Paybox/System.php
ADDED
@@ -0,0 +1,63 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class Secuvad_Core_Model_Paybox_System extends Mage_Paybox_Model_System
|
4 |
+
{
|
5 |
+
public function getFormFields()
|
6 |
+
{
|
7 |
+
$fieldsArr = array();
|
8 |
+
|
9 |
+
$fieldsArr = array(
|
10 |
+
'PBX_MODE' => $this->getPaymentMethod(),
|
11 |
+
'PBX_SITE' => $this->getSiteNumber(),//'1999888',
|
12 |
+
'PBX_RANG' => $this->getRang(),//'99',
|
13 |
+
'PBX_IDENTIFIANT' => $this->getIdentifiant(),//'2',
|
14 |
+
'PBX_TOTAL' => (int)($this->getOrder()->getBaseGrandTotal()*100),
|
15 |
+
'PBX_DEVISE' => $this->getCurrencyNumber(),
|
16 |
+
'PBX_CMD' => $this->getOrder()->getRealOrderId(),
|
17 |
+
'PBX_PORTEUR' => $this->getOrder()->getCustomerEmail(),
|
18 |
+
'PBX_RETOUR' => 'amount:M;ref:R;auto:A;trans:T;error:E;sign:K;bin:N;lasttwo:J;expdate:D',
|
19 |
+
'PBX_EFFECTUE' => Mage::getUrl('paybox/system/success', array('_secure' => true)),
|
20 |
+
'PBX_REFUSE' => Mage::getUrl('paybox/system/refuse', array('_secure' => true)),
|
21 |
+
'PBX_ANNULE' => Mage::getUrl('paybox/system/decline', array('_secure' => true)),
|
22 |
+
'PBX_REPONDRE_A' => Mage::getUrl('paybox/system/notify', array('_secure' => true)),
|
23 |
+
'PBX_AUTOSEULE' => $this->getPaymentAction(),
|
24 |
+
'PBX_LANGUE' => $this->getLanguage(),
|
25 |
+
'PBX_ERREUR' => Mage::getUrl('paybox/system/error', array('_secure' => true)),
|
26 |
+
'PBX_RUF1' => self::PBX_METHOD_CALL,
|
27 |
+
);
|
28 |
+
|
29 |
+
if ($this->getCartType() != 'none') {
|
30 |
+
$fieldsArr['PBX_TYPEPAIEMENT'] = $this->getPaymentType();
|
31 |
+
$fieldsArr['PBX_TYPECARTE'] = $this->getCartType();
|
32 |
+
}
|
33 |
+
|
34 |
+
if (count($apiUrls = $this->getApiUrls())) {
|
35 |
+
$fieldsArr = array_merge($fieldsArr, $this->getApiUrls());
|
36 |
+
}
|
37 |
+
if (count($timeouts = $this->getTimeouts())) {
|
38 |
+
$fieldsArr = array_merge($fieldsArr, $this->getTimeouts());
|
39 |
+
}
|
40 |
+
|
41 |
+
if ($this->getPaymentMethod() == self::PBX_FORM_HTML_METHOD) {
|
42 |
+
$fieldsArr = array_merge($fieldsArr, $this->getManagementMode());
|
43 |
+
}
|
44 |
+
|
45 |
+
if ($this->getPaymentMethod() == self::PBX_COMMAND_LINE_METHOD && $this->getPingFlag()) {
|
46 |
+
$tmpFieldsArr['PBX_PING'] = '1';
|
47 |
+
if (($pingPort = trim($this->getPingPort())) != '') {
|
48 |
+
$tmpFieldsArr['PING_PORT'] = $pingPort;
|
49 |
+
}
|
50 |
+
|
51 |
+
$fieldsArr = array_merge($fieldsArr, $tmpFieldsArr);
|
52 |
+
}
|
53 |
+
|
54 |
+
if ($this->getDebugFlag()) {
|
55 |
+
$debug = Mage::getModel('paybox/api_debug')
|
56 |
+
->setRealOrderId($this->getOrder()->getRealOrderId())
|
57 |
+
->setRequestBody(print_r($fieldsArr, 1))
|
58 |
+
->save();
|
59 |
+
}
|
60 |
+
|
61 |
+
return $fieldsArr;
|
62 |
+
}
|
63 |
+
}
|
app/code/community/Secuvad/Core/Model/System.php
ADDED
@@ -0,0 +1,11 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class Secuvad_Core_Model_System extends Mage_Paybox_Model_System
|
4 |
+
{
|
5 |
+
public function getFormFields()
|
6 |
+
{
|
7 |
+
$fieldsArr = parent::getFormFields();
|
8 |
+
$fieldsArr['PBX_RETOUR'} = 'amount:M;ref:R;auto:A;trans:T;error:E;sign:K;bin:N;lasttwo:J;expdate:D';
|
9 |
+
return($fieldsArr);
|
10 |
+
}
|
11 |
+
}
|
app/code/community/Secuvad/Core/controllers/PayboxController.php
ADDED
@@ -0,0 +1,165 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
require_once 'Mage/Paybox/controllers/SystemController.php';
|
4 |
+
|
5 |
+
class Secuvad_Core_PayboxController extends Mage_Paybox_SystemController
|
6 |
+
{
|
7 |
+
/**
|
8 |
+
* Paybox response router
|
9 |
+
*
|
10 |
+
* @param none
|
11 |
+
* @return void
|
12 |
+
*/
|
13 |
+
public function notifyAction()
|
14 |
+
{
|
15 |
+
$model = $this->getModel();
|
16 |
+
|
17 |
+
$params = $this->getRequest()->getParams();
|
18 |
+
$this->setPayboxResponse($params);
|
19 |
+
|
20 |
+
// Vérification des adresses IP des serveurs Paybox
|
21 |
+
$unauthorized_server = false;
|
22 |
+
|
23 |
+
if ($model->getConfigData('pbx_check_ip')) {
|
24 |
+
$authorized_ips = $model->getAuthorizedIps();
|
25 |
+
$unauthorized_server = true;
|
26 |
+
foreach ($authorized_ips as $authorized_ip) {
|
27 |
+
if (array_key_exists('HTTP_X_FORWARDED_FOR', $_SERVER) && $_SERVER['HTTP_X_FORWARDED_FOR'] == $authorized_ip) {
|
28 |
+
$unauthorized_server = false;
|
29 |
+
break;
|
30 |
+
}
|
31 |
+
if ($_SERVER['REMOTE_ADDR'] == $authorized_ip) {
|
32 |
+
$unauthorized_server = false;
|
33 |
+
break;
|
34 |
+
}
|
35 |
+
}
|
36 |
+
}
|
37 |
+
|
38 |
+
if (!$unauthorized_server) {
|
39 |
+
try {
|
40 |
+
$order = Mage::getModel('sales/order');
|
41 |
+
$order->loadByIncrementId($this->_payboxResponse['ref']);
|
42 |
+
|
43 |
+
if (!$order->getId()) {
|
44 |
+
Mage::throwException($this->__('There are no order.'));
|
45 |
+
}
|
46 |
+
|
47 |
+
if ((int)($order->getBaseGrandTotal()*100) != (int)$this->_payboxResponse['amount']) {
|
48 |
+
Mage::throwException($this->__('Amount is not match.'));
|
49 |
+
}
|
50 |
+
|
51 |
+
if ($this->_payboxResponse['error'] == '00000')
|
52 |
+
{
|
53 |
+
// Aucune erreur = paiement paybox accepté
|
54 |
+
if ($order->getState() == Mage_Sales_Model_Order::STATE_HOLDED)
|
55 |
+
{
|
56 |
+
$order->unhold();
|
57 |
+
}
|
58 |
+
|
59 |
+
if ($model->getConfigData('order_status_payment_accepted') == Mage_Sales_Model_Order::STATE_PROCESSING)
|
60 |
+
{
|
61 |
+
$order->setState(Mage_Sales_Model_Order::STATE_PROCESSING, $model->getConfigData('order_status_payment_accepted'), $this->__('Payment accepted by Paybox'));
|
62 |
+
}
|
63 |
+
else
|
64 |
+
{
|
65 |
+
$order->addStatusToHistory(
|
66 |
+
$model->getConfigData('order_status_payment_accepted'),
|
67 |
+
$this->__('Payment accepted by Paybox'),
|
68 |
+
true
|
69 |
+
);
|
70 |
+
}
|
71 |
+
|
72 |
+
//Enregistrement des données cc
|
73 |
+
$order_payment = $order->getPayment();
|
74 |
+
|
75 |
+
$num = substr($this->_payboxResponse['bin'], 0, 4) . " " .
|
76 |
+
substr($this->_payboxResponse['bin'], 4, 2) . "## #### ##".$this->_payboxResponse['lasttwo'];
|
77 |
+
$order_payment->setData('secuvad_cc_number', $num);
|
78 |
+
$order_payment->setData('secuvad_date_val',
|
79 |
+
substr($this->_payboxResponse['expdate'], 2, 2)."/".
|
80 |
+
substr($this->_payboxResponse['expdate'], 0, 2)); // D format AAMM
|
81 |
+
$order_payment->save();
|
82 |
+
$order->setData('secuvad_cc_number', $num);
|
83 |
+
$order->setData('secuvad_date_val',
|
84 |
+
substr($this->_payboxResponse['expdate'], 2, 2)."/".
|
85 |
+
substr($this->_payboxResponse['expdate'], 0, 2));
|
86 |
+
$order->save();
|
87 |
+
|
88 |
+
if ($order->getPayment()->getMethodInstance()->getPaymentAction() == Mage_Paybox_Model_System::PBX_PAYMENT_ACTION_ATHORIZE_CAPTURE) {
|
89 |
+
$order->getPayment()
|
90 |
+
->getMethodInstance()
|
91 |
+
->setTransactionId($this->_payboxResponse['trans']);
|
92 |
+
|
93 |
+
// Faut-il créer la facture
|
94 |
+
if ($model->getConfigData('invoice_create')) {
|
95 |
+
if ($this->_createInvoice($order)) {
|
96 |
+
$order->addStatusToHistory($order->getStatus(), $this->__('Invoice was create successfully'));
|
97 |
+
} else {
|
98 |
+
$order->addStatusToHistory($order->getStatus(), $this->__('Cann\'t create invoice'));
|
99 |
+
}
|
100 |
+
}
|
101 |
+
}
|
102 |
+
|
103 |
+
$session = $this->getCheckout();
|
104 |
+
$session->setQuoteId($session->getPayboxQuoteId(true));
|
105 |
+
$session->getQuote()->setIsActive(false)->save();
|
106 |
+
$session->unsPayboxQuoteId();
|
107 |
+
|
108 |
+
$order->sendNewOrderEmail();
|
109 |
+
$order->setEmailSent(true);
|
110 |
+
$order->save();
|
111 |
+
|
112 |
+
// Envoi du flux à Secuvad
|
113 |
+
if(Mage::getModel('secuvad/functions')->check_associations())
|
114 |
+
{
|
115 |
+
Mage::getModel('secuvad/logs')->Log("Transaction ".$order->getRealOrderId()." non transmise à SECUVAD car les associations ne sont pas complètes");
|
116 |
+
return($this);
|
117 |
+
}
|
118 |
+
|
119 |
+
//Envoi de la transaction
|
120 |
+
$orders_id[0] = $order->getId();
|
121 |
+
$flux = Mage::getModel('secuvad/orders')->get_flux_xml($orders_id);
|
122 |
+
$response = Mage::getModel('secuvad/functions')->send($flux,'bulk_transactions',$order->getStore()->getWebsite()->getId());
|
123 |
+
$order->save(Mage::getModel('secuvad/functions')->single_response($order, $response));
|
124 |
+
|
125 |
+
// On exit car en cas de réponse valide une page blanche doit être retournée
|
126 |
+
exit();
|
127 |
+
|
128 |
+
} else {
|
129 |
+
// Erreur = paiement paybox refusé
|
130 |
+
$messageError = $this->__('Customer was rejected by Paybox');
|
131 |
+
if (array_key_exists('error', $this->_payboxResponse)) {
|
132 |
+
$messageError .= ' - Code Erreur : '.$this->_payboxResponse['error'];
|
133 |
+
}
|
134 |
+
|
135 |
+
$order->addStatusToHistory(
|
136 |
+
$model->getConfigData('order_status_payment_refused'),
|
137 |
+
$messageError
|
138 |
+
);
|
139 |
+
|
140 |
+
if ($model->getConfigData('order_status_payment_refused') == Mage_Sales_Model_Order::STATE_CANCELED && $order->canCancel()) {
|
141 |
+
$order->cancel();
|
142 |
+
} else if ($model->getConfigData('order_status_payment_refused') == Mage_Sales_Model_Order::STATE_HOLDED && $order->canHold()) {
|
143 |
+
$order->hold();
|
144 |
+
}
|
145 |
+
|
146 |
+
$order->save();
|
147 |
+
}
|
148 |
+
|
149 |
+
}
|
150 |
+
catch( Exception $e ) {
|
151 |
+
$order->addStatusToHistory($order->getStatus(), $this->__('Error in order validation %s', $e->getMessage()))
|
152 |
+
->save();
|
153 |
+
$this->loadLayout();
|
154 |
+
$this->renderLayout();
|
155 |
+
}
|
156 |
+
} else {
|
157 |
+
$order = Mage::getModel('sales/order')->loadByIncrementId($this->_payboxResponse['ref']);
|
158 |
+
$order->addStatusToHistory($order->getStatus(), $this->__('Error bad IP : %s', $_SERVER['REMOTE_ADDR']))
|
159 |
+
->save();
|
160 |
+
}
|
161 |
+
|
162 |
+
$this->loadLayout();
|
163 |
+
$this->renderLayout();
|
164 |
+
}
|
165 |
+
}
|
app/code/community/Secuvad/Core/etc/config.xml
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
<config>
|
3 |
<modules>
|
4 |
<Secuvad_Core>
|
5 |
-
<version>1.2.
|
6 |
</Secuvad_Core>
|
7 |
</modules>
|
8 |
<admin>
|
@@ -109,6 +109,10 @@
|
|
109 |
<from><![CDATA[#^/ogone/api/#]]></from>
|
110 |
<to>/core/api/</to>
|
111 |
</secuvad_core_api>
|
|
|
|
|
|
|
|
|
112 |
</rewrite>
|
113 |
|
114 |
|
@@ -117,7 +121,6 @@
|
|
117 |
<observers>
|
118 |
<secuvad_observer_invoice_save_after>
|
119 |
<type>singleton</type>
|
120 |
-
<!--<class>secuvad/sales_invoice_observer</class>-->
|
121 |
<class>Secuvad_Core_Model_Sales_Invoice_Observer</class>
|
122 |
<method>salesInvoiceAfterSave</method>
|
123 |
</secuvad_observer_invoice_save_after>
|
@@ -162,6 +165,11 @@
|
|
162 |
</logs>
|
163 |
</entities>
|
164 |
</secuvad_mysql4>
|
|
|
|
|
|
|
|
|
|
|
165 |
</models>
|
166 |
|
167 |
<resources>
|
2 |
<config>
|
3 |
<modules>
|
4 |
<Secuvad_Core>
|
5 |
+
<version>1.2.3</version>
|
6 |
</Secuvad_Core>
|
7 |
</modules>
|
8 |
<admin>
|
109 |
<from><![CDATA[#^/ogone/api/#]]></from>
|
110 |
<to>/core/api/</to>
|
111 |
</secuvad_core_api>
|
112 |
+
<secuvad_core_paybox>
|
113 |
+
<from><![CDATA[#^/paybox/system/#]]></from>
|
114 |
+
<to>/core/paybox/</to>
|
115 |
+
</secuvad_core_paybox>
|
116 |
</rewrite>
|
117 |
|
118 |
|
121 |
<observers>
|
122 |
<secuvad_observer_invoice_save_after>
|
123 |
<type>singleton</type>
|
|
|
124 |
<class>Secuvad_Core_Model_Sales_Invoice_Observer</class>
|
125 |
<method>salesInvoiceAfterSave</method>
|
126 |
</secuvad_observer_invoice_save_after>
|
165 |
</logs>
|
166 |
</entities>
|
167 |
</secuvad_mysql4>
|
168 |
+
<paybox>
|
169 |
+
<rewrite>
|
170 |
+
<system>Secuvad_Core_Model_Paybox_System</system>
|
171 |
+
</rewrite>
|
172 |
+
</paybox>
|
173 |
</models>
|
174 |
|
175 |
<resources>
|
app/code/community/Secuvad/Core/sql/secuvad_setup/mysql4-install-1.2.0.php
CHANGED
@@ -70,7 +70,7 @@ $installer->run("
|
|
70 |
category_name varchar(255) NOT NULL default '',
|
71 |
sort_num int(10) unsigned NOT NULL auto_increment,
|
72 |
PRIMARY KEY (category_id),
|
73 |
-
UNIQUE KEY
|
74 |
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
|
75 |
|
76 |
DROP TABLE IF EXISTS secuvad_config;
|
70 |
category_name varchar(255) NOT NULL default '',
|
71 |
sort_num int(10) unsigned NOT NULL auto_increment,
|
72 |
PRIMARY KEY (category_id),
|
73 |
+
UNIQUE KEY U_secuvad_category_sort_num (sort_num)
|
74 |
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
|
75 |
|
76 |
DROP TABLE IF EXISTS secuvad_config;
|
app/code/community/Secuvad/Core/sql/secuvad_setup/mysql4-upgrade-1.2.2-1.2.3.php
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
$installer = $this;
|
app/design/adminhtml/default/default/layout/secuvad.xml
CHANGED
@@ -51,5 +51,11 @@
|
|
51 |
<block type="secuvad/category_typeproduct_edit" name="catproduct" template="secuvad/categorytreeformcontenair.phtml"/>
|
52 |
</reference>
|
53 |
</secuvad_category_typeproduct_index>
|
54 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
55 |
</layout>
|
51 |
<block type="secuvad/category_typeproduct_edit" name="catproduct" template="secuvad/categorytreeformcontenair.phtml"/>
|
52 |
</reference>
|
53 |
</secuvad_category_typeproduct_index>
|
54 |
+
|
55 |
+
<!--<adminhtml_sales_order_view>
|
56 |
+
<reference name="sales_order_tabs">
|
57 |
+
<action method="addTab"><name>quicksecuvad</name><block>secuvad/orders_view_tab_secuvad</block></action>
|
58 |
+
</reference>
|
59 |
+
</adminhtml_sales_order_view> -->
|
60 |
+
|
61 |
</layout>
|
app/etc/modules/Secuvad_Core.xml
CHANGED
@@ -4,7 +4,7 @@
|
|
4 |
<Secuvad_Core>
|
5 |
<active>true</active>
|
6 |
<codePool>community</codePool>
|
7 |
-
<version>1.2.
|
8 |
</Secuvad_Core>
|
9 |
</modules>
|
10 |
</config>
|
4 |
<Secuvad_Core>
|
5 |
<active>true</active>
|
6 |
<codePool>community</codePool>
|
7 |
+
<version>1.2.3</version>
|
8 |
</Secuvad_Core>
|
9 |
</modules>
|
10 |
</config>
|
app/locale/fr_FR/Secuvad.csv
CHANGED
@@ -26,14 +26,14 @@
|
|
26 |
"One of your websites is not registered","Un de vos sites marchand n'est pas enregistré"
|
27 |
"Payment not associated","L'un des modes de paiement n'est pas associé"
|
28 |
"Shipping not associated","L'un des modes de transport n'est pas associé"
|
29 |
-
"Category not associated","L'une des
|
30 |
"Data succesfully saved.","Données sauvegardées correctement."
|
31 |
|
32 |
"Date","Date"
|
33 |
"Message","Message"
|
34 |
"Delete","Supprimer"
|
35 |
"Are you sure ?","Etes-vous certain de vouloir réaliser cette action ?"
|
36 |
-
"Please select item(s)","
|
37 |
|
38 |
"Payment type","Type de paiement"
|
39 |
"Save","Enregistrer"
|
@@ -49,10 +49,10 @@
|
|
49 |
"Third-party payment","Tiers de paiement"
|
50 |
|
51 |
|
52 |
-
"Shipping type","
|
53 |
-
"Shipping methods list","Liste des
|
54 |
-
"Shipping method","
|
55 |
-
"SECUVAD Shipping type","
|
56 |
"Shipping speed","Rapidité de livraison"
|
57 |
"Express","Express"
|
58 |
"Standard","Standard"
|
@@ -65,7 +65,7 @@
|
|
65 |
|
66 |
|
67 |
"Categories configuration","Configuration des catégories"
|
68 |
-
"Apply to sub-categories","Appliquer aux sous
|
69 |
"Product type","Type de produit"
|
70 |
"Computing and Softwares","Informatique et Logiciels"
|
71 |
"Phones, Telecommunications","Téléphonie, Télécommunications"
|
@@ -83,13 +83,15 @@
|
|
83 |
"Services","Services"
|
84 |
|
85 |
"Send to SECUVAD","Envoyer à SECUVAD"
|
86 |
-
"Report fraud","
|
87 |
"Order not sent","Transaction non soumise à SECUVAD"
|
88 |
-
"Unreliable order","
|
89 |
-
"Reliable order","
|
90 |
-
"Processing order","
|
|
|
|
|
91 |
"Fraud","Impayé"
|
92 |
-
"Chargeback submitted","Impayé
|
93 |
|
94 |
"Orders","Transactions"
|
95 |
"Categories","Categories"
|
@@ -104,10 +106,12 @@
|
|
104 |
"Post data empty","Donnée POST vide"
|
105 |
"Order(s) reset done","Réinitialisation des données Secuvad de cette transaction effectuée"
|
106 |
|
107 |
-
"Fraud reported","Impayé
|
108 |
-
"
|
109 |
-
"
|
110 |
-
"
|
|
|
|
|
111 |
|
112 |
"Warning, by submitting this fraud to SECUVAD, you certify that this debt is SURE, CASH and DUE FOR PAYMENT, and that you exclusively ask SECUVAD for its recovery. Would you like to continue ?","Attention, par la transmission de cet impayé à SECUVAD, vous certifiez que votre créance est CERTAINE, LIQUIDE et EXIGIBLE, et que vous en confiez le recouvrement EXCLUSIF à SECUVAD. Souhaitez-vous poursuivre ?"
|
113 |
|
26 |
"One of your websites is not registered","Un de vos sites marchand n'est pas enregistré"
|
27 |
"Payment not associated","L'un des modes de paiement n'est pas associé"
|
28 |
"Shipping not associated","L'un des modes de transport n'est pas associé"
|
29 |
+
"Category not associated","L'une des catégories n'est pas associée"
|
30 |
"Data succesfully saved.","Données sauvegardées correctement."
|
31 |
|
32 |
"Date","Date"
|
33 |
"Message","Message"
|
34 |
"Delete","Supprimer"
|
35 |
"Are you sure ?","Etes-vous certain de vouloir réaliser cette action ?"
|
36 |
+
"Please select item(s)","Sélectionner des éléments"
|
37 |
|
38 |
"Payment type","Type de paiement"
|
39 |
"Save","Enregistrer"
|
49 |
"Third-party payment","Tiers de paiement"
|
50 |
|
51 |
|
52 |
+
"Shipping type","Modes de livraison"
|
53 |
+
"Shipping methods list","Liste des modes de livraison"
|
54 |
+
"Shipping method","Mode de livraison"
|
55 |
+
"SECUVAD Shipping type","Mode de livraison SECUVAD"
|
56 |
"Shipping speed","Rapidité de livraison"
|
57 |
"Express","Express"
|
58 |
"Standard","Standard"
|
65 |
|
66 |
|
67 |
"Categories configuration","Configuration des catégories"
|
68 |
+
"Apply to sub-categories","Appliquer aux sous-catégories"
|
69 |
"Product type","Type de produit"
|
70 |
"Computing and Softwares","Informatique et Logiciels"
|
71 |
"Phones, Telecommunications","Téléphonie, Télécommunications"
|
83 |
"Services","Services"
|
84 |
|
85 |
"Send to SECUVAD","Envoyer à SECUVAD"
|
86 |
+
"Report fraud","Transmettre un impayé"
|
87 |
"Order not sent","Transaction non soumise à SECUVAD"
|
88 |
+
"Unreliable order","Invalidée par SECUVAD"
|
89 |
+
"Reliable order","Validée par SECUVAD"
|
90 |
+
"Processing order","En cours d'expertise chez SECUVAD"
|
91 |
+
"To be checked by SECUVAD","En attente d'expertise par SECUVAD"
|
92 |
+
"To be checked by the CUSTOMER","A expertiser par le CLIENT"
|
93 |
"Fraud","Impayé"
|
94 |
+
"Chargeback submitted","Impayé transmis"
|
95 |
|
96 |
"Orders","Transactions"
|
97 |
"Categories","Categories"
|
106 |
"Post data empty","Donnée POST vide"
|
107 |
"Order(s) reset done","Réinitialisation des données Secuvad de cette transaction effectuée"
|
108 |
|
109 |
+
"Fraud reported","Impayé transmis"
|
110 |
+
"Invalid","Invalidée"
|
111 |
+
"Valid","Validée"
|
112 |
+
"Being checked","En cours d'expertise"
|
113 |
+
"Awaiting check","En attente d'expertise"
|
114 |
+
"To be checked","A expertiser"
|
115 |
|
116 |
"Warning, by submitting this fraud to SECUVAD, you certify that this debt is SURE, CASH and DUE FOR PAYMENT, and that you exclusively ask SECUVAD for its recovery. Would you like to continue ?","Attention, par la transmission de cet impayé à SECUVAD, vous certifiez que votre créance est CERTAINE, LIQUIDE et EXIGIBLE, et que vous en confiez le recouvrement EXCLUSIF à SECUVAD. Souhaitez-vous poursuivre ?"
|
117 |
|
package.xml
CHANGED
@@ -1,7 +1,7 @@
|
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>Secuvad_Official</name>
|
4 |
-
<version>1.2.
|
5 |
<stability>stable</stability>
|
6 |
<license>gpl</license>
|
7 |
<channel>community</channel>
|
@@ -9,14 +9,13 @@
|
|
9 |
<summary>Détection de commandes frauduleuses, garantie impayés et recouvrement d'impayés.</summary>
|
10 |
<description>Ce module soumet vos commandes automatiquement à Secuvad pour évaluation ; une commande peut être VALIDE ou INVALIDE (potentiellement frauduleuse), libre au commerçant de la livrer ou non.
|
11 |
|
12 |
-
Le module permet également de
|
13 |
-
<notes>
|
14 |
-
Added
|
15 |
-
|
16 |
-
<
|
17 |
-
<
|
18 |
-
<
|
19 |
-
<contents><target name="mageskin"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="images"><dir name="secuvad"><file name="attention.gif" hash="21ff0e6ba24381e63789116139180cf0"/><file name="encours.gif" hash="d0ae3817653558109a8e86bc0019105b"/><file name="erreur.gif" hash="4f24dfdde996f4aad5fbc89232a5bece"/><file name="green.gif" hash="0db2c4f24c0f0c3f7958a05181af897a"/><file name="logo secuvad.gif" hash="41a5fb1c927dfcd42bf421a57f3a9a60"/><file name="not_send.gif" hash="1aaa96fc1319e16a85b3841c840f2721"/><file name="not_sent.gif" hash="eec242544fc4dde4cf5b3038bb2c05b1"/></dir></dir></dir></dir></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="secuvad.xml" hash="f80463ac416f389a03de9c020ca3978d"/></dir><dir name="template"><dir name="secuvad"><file name="categoriestree.phtml" hash="7188384f3e2e97259f7e0f6b6f93861f"/><file name="category.phtml" hash="a283dbbe1778c67031834bca9c0fe481"/><file name="categorytreeformcontenair.phtml" hash="1b818bb058d5513d28a47b9a6535a205"/><file name="payment.phtml" hash="b295dbd8d20241871df61201ea92be85"/><file name="record.phtml" hash="321ae6785aeaa48935f6169f620ad7a9"/><file name="shipping.phtml" hash="e3716a26475ba04e4317a235b9c0ba30"/><file name="support.phtml" hash="ebb063392ab049483bcc2a3a7895aa5a"/></dir></dir></dir></dir></dir></target><target name="magelocale"><dir name="fr_FR"><file name="Secuvad.csv" hash="e37fed48bd3827f4228c463684d7f235"/></dir></target><target name="mageetc"><dir name="modules"><file name="Secuvad_Core.xml" hash="2d5c018d40478d4c59031661cd002027"/></dir></target><target name="magecommunity"><dir name="Secuvad"><dir name="Core"><dir name="Block"><dir name="Category"><dir name="Typeproduct"><dir name="Edit"><file name="Form.php" hash="486db76ab65b0c7f482f2f2d27e6965e"/></dir><file name="Edit.php" hash="cf01f54e65e58d7346c3fe354a25f219"/></dir></dir><dir name="Logs"><file name="Grid.php" hash="785df5f8695cf8f7b20720cc93588ab4"/></dir><dir name="Orders"><file name="Grid.php" hash="a8770462fa73944c4c91453453f1a379"/></dir><dir name="Tree"><file name="Abstract.php" hash="3013e48bc03951232a2ffc5fecaa5f4f"/><file name="TypeProduct.php" hash="8b35e222b83fdc759454653f499b931c"/></dir><dir name="Widget"><dir name="Grid"><dir name="Column"><dir name="Renderer"><file name="Fraud.php" hash="563db9a00222318ba4dd556783504899"/><file name="Secuvad.php" hash="1055e58dda21cdca39c8aff91062da5f"/></dir></dir></dir></dir><file name="Logs.php" hash="b7b65a4571dd5a3359e883fef6677b43"/><file name="Orders.php" hash="e664584ca0a84245ef9c0d43ece34519"/><file name="Secuvad.php" hash="289ce5411d6a7f468499b2c230ca44ae"/></dir><dir name="Controller"><dir name="Tree"><file name="Abstract.php" hash="ff617e4b343adb4c7bb227a9bc285e1f"/><file name="TypeProduct.php" hash="38fcdf70c6f93256de69f3dfc1a5eda2"/></dir></dir><dir name="controllers"><dir name="Category"><file name="TypeproductController.php" hash="e761c91ff641fa1327191c4421f278e9"/></dir><file name="ApiController.php" hash="55e191d2ea6cedc7ddf166ebcc7b648e"/><file name="CategoryController.php" hash="7b04cce25577707fe52ce0a889110ffc"/><file name="LogsController.php" hash="2b79c7ed62f901d9f7ab5655b11240dd"/><file name="OrdersController.php" hash="a98e52657ad5332528513a3be477e0fa"/><file name="PaymentController.php" hash="0abee9a954b9c055f69d1289858efb20"/><file name="RecordController.php" hash="c637bfd016d95b87a1b51882bb0f18b1"/><file name="ShippingController.php" hash="fb0cd11e310d87f6ae9fe93acac88f91"/><file name="SpplusController.php" hash="62e86b0b2c981c58f7fe5098de9079c1"/><file name="StandardController.php" hash="90f9759ac2ccf9dbfe197f2a147d704b"/><file name="SupportController.php" hash="35aca7138042e6e20e3b57454526c2cb"/></dir><dir name="etc"><file name="api.xml" hash="87641156c9945f4eee0b805c5a48e992"/><file name="config.xml" hash="e767374424dea2062cb4a596a9d814c1"/></dir><dir name="Helper"><file name="Data.php" hash="fd430008d4d055968fd141aef9d35fae"/></dir><dir name="Model"><dir name="Api"><file name="Resource.php" hash="2b699b206d89e21866b7785e726d64fd"/></dir><dir name="Category"><file name="Association.php" hash="4f7307b4534da5d2c1953f1669418fc2"/><file name="Category.php" hash="4e0ac35e3cc30de29ef5613207cf0b07"/><file name="CategoryConfig.php" hash="1541e8c0a80feda93ac1c8b02bdb7407"/></dir><dir name="Configuration"><file name="Config.php" hash="ddec0ccd6cfcb8f71ce3ee6e433607d4"/></dir><dir name="Mysql4"><dir name="Category"><dir name="Association"><file name="Collection.php" hash="04060fc7d2c250efe44f8c8bcc8b6333"/></dir><dir name="Category"><file name="Collection.php" hash="31b712992b4a36af5a0ed64d4fc7b80c"/></dir><file name="Association.php" hash="5c8dfd1736cf0ec1e34ae05d86a517a0"/><file name="Category.php" hash="5d36c0f0f442b90352ea7082b7488972"/></dir><dir name="Configuration"><dir name="Config"><file name="Collection.php" hash="21472d7c12890f37785e181e0b669303"/></dir><file name="Config.php" hash="5b33de688a7c1073bd2936210c02fd5d"/></dir><dir name="Logs"><file name="Collection.php" hash="bccf0306b184a8919a87a1cfbc9c19e4"/></dir><dir name="Orders"><file name="Collection.php" hash="fdc3206681cd8516c639bfca864ccafc"/></dir><dir name="Payment"><dir name="Association"><file name="Collection.php" hash="7b83f01b0fc6b224064c108b464a09c3"/></dir><dir name="Payment"><file name="Collection.php" hash="038f2890fd62ba5873099ae89b1a761c"/></dir><file name="Association.php" hash="73e7a5eae0bcb23cd95c50c53cbe4a63"/><file name="Payment.php" hash="022649b3eebbf071202daa65fd97b066"/></dir><dir name="Shipping"><dir name="Association"><file name="Collection.php" hash="f3039a1dc4da9bbcabd4e6a5672db2af"/></dir><dir name="Transport"><file name="Collection.php" hash="e31e73ad8b505f946da07632fecd775c"/></dir><dir name="TransportDelay"><file name="Collection.php" hash="e62e389e2b41ac58bc8d2c28dd5fe6e3"/></dir><file name="Association.php" hash="e6c2a03d6c42c79ee9db6f29e8a22e21"/><file name="Transport.php" hash="c491f085e009ccf9681c14f0778a6753"/><file name="TransportDelay.php" hash="e02ffd3b28bb0931db2448a7c818d559"/></dir><file name="Abstract.php" hash="a823b320cd8c51b748e064b9119ab2e8"/><file name="Logs.php" hash="244942612504f433a0b7f2d242bd88a0"/><file name="Orders.php" hash="ecc48f6be218aedfe4be4bbb03e4af77"/><file name="Setup.php" hash="460c10e5c6a477f0308e2540537f3aac"/></dir><dir name="Payment"><file name="Association.php" hash="11e21d2e02b3b3d55400be41c69c3414"/><file name="Payment.php" hash="64d20a9588fb08bc524ddb059c18830a"/><file name="PaymentConfig.php" hash="4e56f43bfb4a602aa044e0e4d1516171"/></dir><dir name="Sales"><dir name="Invoice"><file name="Observer.php" hash="22f094e29c3ed81a89f1de0690b962d0"/></dir></dir><dir name="Shipping"><file name="Association.php" hash="3d51ead13bc06f91772db3df7243c5f8"/><file name="ShippingConfig.php" hash="e6f72e9221bb1d156ec48024d918f4ac"/><file name="Transport.php" hash="fc307af682fce5cc3745243fd8eced1f"/><file name="TransportDelay.php" hash="ffd1266d57e47830307c8edc9364f3b2"/></dir><file name="Api.php" hash="7550e5cc317551d79e75117f543b1f49"/><file name="Fraud.php" hash="bc8712c607d425ae265c329266b3245a"/><file name="Functions.php" hash="e12eb2caa2b88bdf754e816b66c5059a"/><file name="Logs.php" hash="a838d991cb8e00d1e5ae247289c94010"/><file name="Orders.php" hash="e90f7d8f480a824377fefa1849e90138"/><file name="Record.php" hash="2c963bc4b256318ce2c75d93ac964fc2"/><file name="Support.php" hash="1b71d9453efde0812a20a8401a1e110c"/></dir><dir name="sql"><dir name="secuvad_setup"><file name="mysql4-install-1.2.0.php" hash="2946bd340827a9237a3fef2e1ab3f2ab"/><file name="mysql4-uninstall-1.2.0.php" hash="40af4201373892cfad73a1f1c9517772"/><file name="mysql4-upgrade-1.2.0-1.2.1.php" hash="3ea69d93ace824cd0198a5d456753284"/></dir></dir><file name="Default.php" hash="7b0b8cd94b771547f0fff9bbabf80d20"/></dir></dir></target></contents>
|
20 |
<compatible/>
|
21 |
<dependencies/>
|
22 |
</package>
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>Secuvad_Official</name>
|
4 |
+
<version>1.2.3</version>
|
5 |
<stability>stable</stability>
|
6 |
<license>gpl</license>
|
7 |
<channel>community</channel>
|
9 |
<summary>Détection de commandes frauduleuses, garantie impayés et recouvrement d'impayés.</summary>
|
10 |
<description>Ce module soumet vos commandes automatiquement à Secuvad pour évaluation ; une commande peut être VALIDE ou INVALIDE (potentiellement frauduleuse), libre au commerçant de la livrer ou non.
|
11 |
|
12 |
+
Le module permet également de soumettre les commandes impayées (généralement pour contestation du porteur de la carte de paiement) et d'en demander le recouvrement par Secuvad.</description>
|
13 |
+
<notes>Added new validation status in adequation to the new SECUVAD contracts.
|
14 |
+
Added Paybox support.</notes>
|
15 |
+
<authors><author><name>SECUVAD</name><user>auto-converted</user><email>magento@secuvad.com</email></author></authors>
|
16 |
+
<date>2011-01-12</date>
|
17 |
+
<time>11:25:25</time>
|
18 |
+
<contents><target name="mageskin"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="images"><dir name="secuvad"><file name="attention.gif" hash="21ff0e6ba24381e63789116139180cf0"/><file name="checkclient.gif" hash="9401025d89a0377aa3d844e7f8686165"/><file name="encours.gif" hash="d0ae3817653558109a8e86bc0019105b"/><file name="erreur.gif" hash="4f24dfdde996f4aad5fbc89232a5bece"/><file name="green.gif" hash="0db2c4f24c0f0c3f7958a05181af897a"/><file name="logo secuvad.gif" hash="41a5fb1c927dfcd42bf421a57f3a9a60"/><file name="not_send.gif" hash="1aaa96fc1319e16a85b3841c840f2721"/><file name="not_sent.gif" hash="eec242544fc4dde4cf5b3038bb2c05b1"/><file name="wait.gif" hash="a45c8b57a8c1b7d07ab1bf37afdbc1e9"/></dir></dir></dir></dir></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="secuvad.xml" hash="63fa23f485989a6a0c19be6741556132"/></dir><dir name="template"><dir name="secuvad"><file name="categoriestree.phtml" hash="7188384f3e2e97259f7e0f6b6f93861f"/><file name="category.phtml" hash="a283dbbe1778c67031834bca9c0fe481"/><file name="categorytreeformcontenair.phtml" hash="1b818bb058d5513d28a47b9a6535a205"/><file name="payment.phtml" hash="b295dbd8d20241871df61201ea92be85"/><file name="record.phtml" hash="321ae6785aeaa48935f6169f620ad7a9"/><file name="shipping.phtml" hash="e3716a26475ba04e4317a235b9c0ba30"/><file name="support.phtml" hash="ebb063392ab049483bcc2a3a7895aa5a"/></dir></dir></dir></dir></dir></target><target name="magelocale"><dir name="fr_FR"><file name="Secuvad.csv" hash="4e204d9143c8f406bc374825dab586d2"/></dir></target><target name="mageetc"><dir name="modules"><file name="Secuvad_Core.xml" hash="899d1b84d64cade01ea8de99afc1ebd2"/></dir></target><target name="magecommunity"><dir name="Secuvad"><dir name="Core"><dir name="Block"><dir name="Category"><dir name="Typeproduct"><dir name="Edit"><file name="Form.php" hash="486db76ab65b0c7f482f2f2d27e6965e"/></dir><file name="Edit.php" hash="cf01f54e65e58d7346c3fe354a25f219"/></dir></dir><dir name="Logs"><file name="Grid.php" hash="785df5f8695cf8f7b20720cc93588ab4"/></dir><dir name="Orders"><dir name="View"><dir name="Tab"><file name="Secuvad.php" hash="a3a2f6e71601328ddd80ee0661912c09"/></dir></dir><file name="Grid.php" hash="46c7d541ba4354536075ac7108194435"/></dir><dir name="Tree"><file name="Abstract.php" hash="3013e48bc03951232a2ffc5fecaa5f4f"/><file name="TypeProduct.php" hash="8b35e222b83fdc759454653f499b931c"/></dir><dir name="Widget"><dir name="Grid"><dir name="Column"><dir name="Renderer"><file name="Fraud.php" hash="563db9a00222318ba4dd556783504899"/><file name="Secuvad.php" hash="3d7ce70c2d8c2ae591bae50d7f416ac1"/></dir></dir></dir></dir><file name="Logs.php" hash="b7b65a4571dd5a3359e883fef6677b43"/><file name="Orders.php" hash="e664584ca0a84245ef9c0d43ece34519"/><file name="Secuvad.php" hash="289ce5411d6a7f468499b2c230ca44ae"/></dir><dir name="Controller"><dir name="Tree"><file name="Abstract.php" hash="ff617e4b343adb4c7bb227a9bc285e1f"/><file name="TypeProduct.php" hash="38fcdf70c6f93256de69f3dfc1a5eda2"/></dir></dir><dir name="controllers"><dir name="Category"><file name="TypeproductController.php" hash="e761c91ff641fa1327191c4421f278e9"/></dir><file name="ApiController.php" hash="55e191d2ea6cedc7ddf166ebcc7b648e"/><file name="CategoryController.php" hash="7b04cce25577707fe52ce0a889110ffc"/><file name="LogsController.php" hash="2b79c7ed62f901d9f7ab5655b11240dd"/><file name="OrdersController.php" hash="a98e52657ad5332528513a3be477e0fa"/><file name="PayboxController.php" hash="f4b48685ede8a5f4617fefaf85bae8bc"/><file name="PaymentController.php" hash="0abee9a954b9c055f69d1289858efb20"/><file name="RecordController.php" hash="c637bfd016d95b87a1b51882bb0f18b1"/><file name="ShippingController.php" hash="fb0cd11e310d87f6ae9fe93acac88f91"/><file name="SpplusController.php" hash="62e86b0b2c981c58f7fe5098de9079c1"/><file name="StandardController.php" hash="90f9759ac2ccf9dbfe197f2a147d704b"/><file name="SupportController.php" hash="35aca7138042e6e20e3b57454526c2cb"/></dir><dir name="etc"><file name="api.xml" hash="87641156c9945f4eee0b805c5a48e992"/><file name="config.xml" hash="56a9613731c6e04dda2c17ecdfea4a5b"/></dir><dir name="Helper"><file name="Data.php" hash="fd430008d4d055968fd141aef9d35fae"/></dir><dir name="Model"><dir name="Api"><file name="Resource.php" hash="2b699b206d89e21866b7785e726d64fd"/></dir><dir name="Category"><file name="Association.php" hash="4f7307b4534da5d2c1953f1669418fc2"/><file name="Category.php" hash="4e0ac35e3cc30de29ef5613207cf0b07"/><file name="CategoryConfig.php" hash="1541e8c0a80feda93ac1c8b02bdb7407"/></dir><dir name="Configuration"><file name="Config.php" hash="ddec0ccd6cfcb8f71ce3ee6e433607d4"/></dir><dir name="Mysql4"><dir name="Category"><dir name="Association"><file name="Collection.php" hash="04060fc7d2c250efe44f8c8bcc8b6333"/></dir><dir name="Category"><file name="Collection.php" hash="31b712992b4a36af5a0ed64d4fc7b80c"/></dir><file name="Association.php" hash="5c8dfd1736cf0ec1e34ae05d86a517a0"/><file name="Category.php" hash="5d36c0f0f442b90352ea7082b7488972"/></dir><dir name="Configuration"><dir name="Config"><file name="Collection.php" hash="21472d7c12890f37785e181e0b669303"/></dir><file name="Config.php" hash="5b33de688a7c1073bd2936210c02fd5d"/></dir><dir name="Logs"><file name="Collection.php" hash="bccf0306b184a8919a87a1cfbc9c19e4"/></dir><dir name="Orders"><file name="Collection.php" hash="fdc3206681cd8516c639bfca864ccafc"/></dir><dir name="Payment"><dir name="Association"><file name="Collection.php" hash="7b83f01b0fc6b224064c108b464a09c3"/></dir><dir name="Payment"><file name="Collection.php" hash="038f2890fd62ba5873099ae89b1a761c"/></dir><file name="Association.php" hash="73e7a5eae0bcb23cd95c50c53cbe4a63"/><file name="Payment.php" hash="022649b3eebbf071202daa65fd97b066"/></dir><dir name="Shipping"><dir name="Association"><file name="Collection.php" hash="f3039a1dc4da9bbcabd4e6a5672db2af"/></dir><dir name="Transport"><file name="Collection.php" hash="e31e73ad8b505f946da07632fecd775c"/></dir><dir name="TransportDelay"><file name="Collection.php" hash="e62e389e2b41ac58bc8d2c28dd5fe6e3"/></dir><file name="Association.php" hash="e6c2a03d6c42c79ee9db6f29e8a22e21"/><file name="Transport.php" hash="c491f085e009ccf9681c14f0778a6753"/><file name="TransportDelay.php" hash="e02ffd3b28bb0931db2448a7c818d559"/></dir><file name="Abstract.php" hash="a823b320cd8c51b748e064b9119ab2e8"/><file name="Logs.php" hash="244942612504f433a0b7f2d242bd88a0"/><file name="Orders.php" hash="ecc48f6be218aedfe4be4bbb03e4af77"/><file name="Setup.php" hash="460c10e5c6a477f0308e2540537f3aac"/></dir><dir name="Paybox"><file name="System.php" hash="4098e42585d3d6ce72089b73d59f57ff"/></dir><dir name="Payment"><file name="Association.php" hash="11e21d2e02b3b3d55400be41c69c3414"/><file name="Payment.php" hash="64d20a9588fb08bc524ddb059c18830a"/><file name="PaymentConfig.php" hash="4e56f43bfb4a602aa044e0e4d1516171"/></dir><dir name="Sales"><dir name="Invoice"><file name="Observer.php" hash="22f094e29c3ed81a89f1de0690b962d0"/></dir></dir><dir name="Shipping"><file name="Association.php" hash="3d51ead13bc06f91772db3df7243c5f8"/><file name="ShippingConfig.php" hash="e6f72e9221bb1d156ec48024d918f4ac"/><file name="Transport.php" hash="fc307af682fce5cc3745243fd8eced1f"/><file name="TransportDelay.php" hash="ffd1266d57e47830307c8edc9364f3b2"/></dir><file name="Api.php" hash="9ce1d63ab7b12a52e8438be04c30ddd4"/><file name="Fraud.php" hash="bc8712c607d425ae265c329266b3245a"/><file name="Functions.php" hash="e12eb2caa2b88bdf754e816b66c5059a"/><file name="Logs.php" hash="a838d991cb8e00d1e5ae247289c94010"/><file name="Orders.php" hash="89819f79b272c4024396bf66ed4a4bef"/><file name="Record.php" hash="2c963bc4b256318ce2c75d93ac964fc2"/><file name="Support.php" hash="1b71d9453efde0812a20a8401a1e110c"/><file name="System.php" hash="c22c4915a5cad328c3e907d42688dce0"/></dir><dir name="sql"><dir name="secuvad_setup"><file name="mysql4-install-1.2.0.php" hash="2ac15b314729dc0df319d270cfb61f78"/><file name="mysql4-uninstall-1.2.0.php" hash="40af4201373892cfad73a1f1c9517772"/><file name="mysql4-upgrade-1.2.0-1.2.1.php" hash="3ea69d93ace824cd0198a5d456753284"/><file name="mysql4-upgrade-1.2.2-1.2.3.php" hash="3ea69d93ace824cd0198a5d456753284"/></dir></dir><file name="Default.php" hash="7b0b8cd94b771547f0fff9bbabf80d20"/></dir></dir></target></contents>
|
|
|
19 |
<compatible/>
|
20 |
<dependencies/>
|
21 |
</package>
|
skin/adminhtml/default/default/images/secuvad/checkclient.gif
ADDED
Binary file
|
skin/adminhtml/default/default/images/secuvad/wait.gif
ADDED
Binary file
|