// Fix group association on carrierwizard
This commit is contained in:
@@ -1275,5 +1275,20 @@ class CarrierCore extends ObjectModel
|
|||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function setGroups($groups, $delete = true)
|
||||||
|
{
|
||||||
|
if ($delete)
|
||||||
|
Db::getInstance()->execute('DELETE FROM '._DB_PREFIX_.'carrier_group WHERE id_carrier = '.(int)$id_carrier);
|
||||||
|
|
||||||
|
if (!count($groups))
|
||||||
|
return true;
|
||||||
|
|
||||||
|
$sql = 'INSERT INTO '._DB_PREFIX_.'carrier_group (id_carrier, id_group) VALUES ';
|
||||||
|
foreach ($groups as $id_group)
|
||||||
|
$sql .= '('.(int)$this->id.', '.(int)$id_group.'),';
|
||||||
|
|
||||||
|
return Db::getInstance()->execute(rtrim($sql, ','));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -425,8 +425,7 @@ class AdminCarrierWizardControllerCore extends AdminController
|
|||||||
)
|
)
|
||||||
));
|
));
|
||||||
$fields_value = $this->getStepFourFieldsValues($carrier);
|
$fields_value = $this->getStepFourFieldsValues($carrier);
|
||||||
|
|
||||||
|
|
||||||
// Added values of object Group
|
// Added values of object Group
|
||||||
$carrier_groups = $carrier->getGroups();
|
$carrier_groups = $carrier->getGroups();
|
||||||
$carrier_groups_ids = array();
|
$carrier_groups_ids = array();
|
||||||
@@ -741,15 +740,11 @@ class AdminCarrierWizardControllerCore extends AdminController
|
|||||||
|
|
||||||
protected function changeGroups($id_carrier, $delete = true)
|
protected function changeGroups($id_carrier, $delete = true)
|
||||||
{
|
{
|
||||||
if ($delete)
|
$carrier = new Carrier((int)$id_carrier);
|
||||||
Db::getInstance()->execute('DELETE FROM '._DB_PREFIX_.'carrier_group WHERE id_carrier = '.(int)$id_carrier);
|
if (!Validate::isLoadedObject($carrier))
|
||||||
$groups = Db::getInstance()->executeS('SELECT id_group FROM `'._DB_PREFIX_.'group`');
|
return false;
|
||||||
foreach ($groups as $group)
|
|
||||||
if (Tools::getIsset('groupBox') && in_array($group['id_group'], Tools::getValue('groupBox')))
|
return $carrier->setGroups(Tools::getValue('groupBox'));
|
||||||
return Db::getInstance()->execute('
|
|
||||||
INSERT INTO '._DB_PREFIX_.'carrier_group (id_group, id_carrier)
|
|
||||||
VALUES('.(int)$group['id_group'].','.(int)$id_carrier.')
|
|
||||||
');
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public function changeZones($id)
|
public function changeZones($id)
|
||||||
|
|||||||
Reference in New Issue
Block a user