[-] FO : Fix bug #PSCFV-9171, can not order with a unactivated country
This commit is contained in:
1 parent
a28a8598ba
commit
95e46afc99
2 files changed
+10
-2
No files matched your search
@@ -237,6 +237,8 @@ class AddressCore extends ObjectModel
|
|||||||
*/
|
*/
|
||||||
public static function getZoneById($id_address)
|
public static function getZoneById($id_address)
|
||||||
{
|
{
|
||||||
|
if(!isset($id_address) || empty($id_address))
|
||||||
|
return false;
|
||||||
if (isset(self::$_idZones[$id_address]))
|
if (isset(self::$_idZones[$id_address]))
|
||||||
return self::$_idZones[$id_address];
|
return self::$_idZones[$id_address];
|
||||||
|
|
||||||
@@ -259,6 +261,9 @@ class AddressCore extends ObjectModel
|
|||||||
*/
|
*/
|
||||||
public static function isCountryActiveById($id_address)
|
public static function isCountryActiveById($id_address)
|
||||||
{
|
{
|
||||||
|
if(!isset($id_address) || empty($id_address))
|
||||||
|
return false;
|
||||||
|
|
||||||
if (!$result = Db::getInstance(_PS_USE_SQL_SLAVE_)->getRow('
|
if (!$result = Db::getInstance(_PS_USE_SQL_SLAVE_)->getRow('
|
||||||
SELECT c.`active`
|
SELECT c.`active`
|
||||||
FROM `'._DB_PREFIX_.'address` a
|
FROM `'._DB_PREFIX_.'address` a
|
||||||
|
|||||||
@@ -399,10 +399,11 @@ class ParentOrderControllerCore extends FrontController
|
|||||||
|
|
||||||
// Getting a list of formated address fields with associated values
|
// Getting a list of formated address fields with associated values
|
||||||
$formatedAddressFieldsValuesList = array();
|
$formatedAddressFieldsValuesList = array();
|
||||||
foreach ($customerAddresses as $address)
|
foreach ($customerAddresses as $i => $address)
|
||||||
{
|
{
|
||||||
|
if (!Address::isCountryActiveById((int)($address['id_address'])))
|
||||||
|
unset($customerAddresses[$i]);
|
||||||
$tmpAddress = new Address($address['id_address']);
|
$tmpAddress = new Address($address['id_address']);
|
||||||
|
|
||||||
$formatedAddressFieldsValuesList[$address['id_address']]['ordered_fields'] = AddressFormat::getOrderedAddressFields($address['id_country']);
|
$formatedAddressFieldsValuesList[$address['id_address']]['ordered_fields'] = AddressFormat::getOrderedAddressFields($address['id_country']);
|
||||||
$formatedAddressFieldsValuesList[$address['id_address']]['formated_fields_values'] = AddressFormat::getFormattedAddressFieldsValues(
|
$formatedAddressFieldsValuesList[$address['id_address']]['formated_fields_values'] = AddressFormat::getFormattedAddressFieldsValues(
|
||||||
$tmpAddress,
|
$tmpAddress,
|
||||||
@@ -459,6 +460,8 @@ class ParentOrderControllerCore extends FrontController
|
|||||||
{
|
{
|
||||||
$address = new Address($this->context->cart->id_address_delivery);
|
$address = new Address($this->context->cart->id_address_delivery);
|
||||||
$id_zone = Address::getZoneById($address->id);
|
$id_zone = Address::getZoneById($address->id);
|
||||||
|
if (!Address::isCountryActiveById((int)($this->context->cart->id_address_delivery)) || !Address::isCountryActiveById((int)($this->context->cart->id_address_invoice)))
|
||||||
|
Tools::redirect('index.php?controller=order&step=1');
|
||||||
$carriers = $this->context->cart->simulateCarriersOutput();
|
$carriers = $this->context->cart->simulateCarriersOutput();
|
||||||
$checked = $this->context->cart->simulateCarrierSelectedOutput();
|
$checked = $this->context->cart->simulateCarrierSelectedOutput();
|
||||||
$delivery_option_list = $this->context->cart->getDeliveryOptionList();
|
$delivery_option_list = $this->context->cart->getDeliveryOptionList();
|
||||||
|
|||||||
Reference in new issue
Block a user