bebeboutik/modules/ant_changeaddress/ajax.php
Marion Muszynski 9d79455930 fix trad
2016-12-21 12:50:35 +01:00

88 lines
4.1 KiB
PHP

<?php
require_once(dirname(__FILE__).'../../../config/config.inc.php');
require_once(dirname(__FILE__).'../../../init.php');
require_once(dirname(__FILE__).'../../../modules/ant_changeaddress/ant_changeaddress.php');
$ant_changeaddress = new Ant_Changeaddress();
if($cookie->isLogged() && Tools::getValue('id_order')) {
if(Tools::getValue('getPR')
&& ($mode = Tools::getValue('mode'))
&& ($h_xcoords = (float) Tools::getValue('h_xcoords'))
&& ($h_ycoords = (float) Tools::getValue('h_ycoords'))) {
$pr_list = array();
header('Content-Type: text/json');
die(json_encode(Db::getInstance()->ExecuteS('
SELECT *
FROM `'._DB_PREFIX_.'lapostews_pr`
WHERE `ycoords` >= '.(float) $h_ycoords.' - 0.02
AND `ycoords` <= '.(float) $h_ycoords.' + 0.02
AND `xcoords` >= '.(float) $h_xcoords.' - 0.01
AND `xcoords` <= '.(float) $h_xcoords.' + 0.01
AND (`type` = "'.$mode.'"'.($mode == "BPR"?' OR `type` = "CDI"':'').')
')));
}
if(Tools::getValue('getAD')
&& ($id_address = Tools::getValue('id_address'))
&& ($id_cart = Tools::getValue('id_cart'))) {
$errors = array();
$order_cart = new Cart((int)$id_cart);
$delivery = new Address((int)$id_address);
$prefix_postcode = substr($delivery->postcode, 0 ,2);
// Checking CANARIES
if ($delivery->id_country == 6
&& (intval($prefix_postcode) == 35 || intval($prefix_postcode) == 38)
) {
$errors[] = Tools::displayError('Lo sentimos, en estos momentos no distribuimos nuestros productos en Canarias. Si deseas más información, puedes contactar con el Servicio de atención al cliente o llamar al 902 044 399.');
}
// Checking CEUTA/MELINA
$ceuta = array(51001, 51002, 51003, 51004, 51005, 51070, 51071, 51080);
if ($delivery->id_country == 6 && (in_array(intval($delivery->postcode),$ceuta))
) {
$errors[] = Tools::displayError('Lo sentimos, en estos momentos no distribuimos nuestros productos en Ceuta. Si deseas más información, puedes contactar con el Servicio de atención al cliente o llamar al 902 044 399.');
}
$melina = array(52001, 52002, 52003, 52004, 52005, 52006, 52070, 52071, 52080);
if ($delivery->id_country == 6 && (in_array(intval($delivery->postcode),$melina))
) {
$errors[] = Tools::displayError('Lo sentimos, en estos momentos no distribuimos nuestros productos en Melina. Si deseas más información, puedes contactar con el Servicio de atención al cliente o llamar al 902 044 399.');
}
// Checking DOM-TOM
$prefix_postcode = substr($delivery->postcode, 0 ,3);
$domtom = array(971,972,973,974,975,976,984,986,987,988);
if ($delivery->id_country == 8 && (in_array(intval($prefix_postcode),$domtom))
) {
$errors[] = Tools::displayError('Nous sommes désolé, nous ne livrons pas dans le DOM-TOM');
}
// Checking only in france
$products_only_fr = array();
foreach($order_cart->getProducts() as $product) {
if(($sale = Sale::getSaleFromCategory($product['id_category_default'])) !== NULL) {
// shipping only in france
if($sale->shipping_fr == 1 && $delivery->id_country != 8) {
$errors[] = Tools::displayError('Votre commande contient des produits expédiés uniquement en France');
}
}
}
if(empty($errors)) {
$change_address = $ant_changeaddress->getAddress($id_address);
$html = '';
foreach ($change_address as $key => $value) {
$html .= '<li>'.$value.'</li>';
}
header('Content-Type: text/json');
die(json_encode(array("error"=>"false","text" => $html)));
} else {
header('Content-Type: text/json');
die(json_encode(array("error"=>"true","text" => implode("</br>", $errors) )));
}
}
die(json_encode('error1'));
} else {
die(json_encode('error'));
}