From 868bc4adb697da295b5aff223f4eb990bd4896c1 Mon Sep 17 00:00:00 2001 From: vChabot Date: Tue, 27 Dec 2011 13:37:39 +0000 Subject: [PATCH] // BugFix : No affectation to groups when creating category --- controllers/admin/AdminCarriersController.php | 6 ++++++ .../admin/AdminCategoriesController.php | 18 ++++++++++++------ controllers/admin/AdminCustomersController.php | 8 ++++++++ 3 files changed, 26 insertions(+), 6 deletions(-) diff --git a/controllers/admin/AdminCarriersController.php b/controllers/admin/AdminCarriersController.php index 9a8bf7233..e807810d8 100644 --- a/controllers/admin/AdminCarriersController.php +++ b/controllers/admin/AdminCarriersController.php @@ -581,6 +581,12 @@ class AdminCarriersControllerCore extends AdminController $carrier_groups_ids[] = $carrier_group['id_group']; $groups = Group::getGroups($this->context->language->id); + // if empty $carrier_groups_ids : object creation : we set the default groups + if (empty($carrier_groups_ids)) + { + $preselected = array(Configuration::get('PS_UNIDENTIFIED_GROUP'), Configuration::get('PS_GUEST_GROUP'), Configuration::get('PS_CUSTOMER_GROUP')); + $carrier_groups_ids = array_merge($carrier_groups_ids, $preselected); + } foreach ($groups as $group) $this->fields_value['groupBox_'.$group['id_group']] = Tools::getValue('groupBox_'.$group['id_group'], (in_array($group['id_group'], $carrier_groups_ids))); } diff --git a/controllers/admin/AdminCategoriesController.php b/controllers/admin/AdminCategoriesController.php index c6de4923c..2fb718cf8 100644 --- a/controllers/admin/AdminCategoriesController.php +++ b/controllers/admin/AdminCategoriesController.php @@ -308,15 +308,21 @@ class AdminCategoriesControllerCore extends AdminController ); // Added values of object Group - $carrier_groups = $obj->getGroups(); - $carrier_groups_ids = array(); - if (is_array($carrier_groups)) - foreach ($carrier_groups as $carrier_group) - $carrier_groups_ids[] = $carrier_group['id_group']; + $category_groups = $obj->getGroups(); + $category_groups_ids = array(); + if (is_array($category_groups)) + foreach ($category_groups as $category_group) + $category_groups_ids[] = $category_group['id_group']; $groups = Group::getGroups($this->context->language->id); + // if empty $carrier_groups_ids : object creation : we set the default groups + if (empty($category_groups_ids)) + { + $preselected = array(Configuration::get('PS_UNIDENTIFIED_GROUP'), Configuration::get('PS_GUEST_GROUP'), Configuration::get('PS_CUSTOMER_GROUP')); + $category_groups_ids = array_merge($category_groups_ids, $preselected); + } foreach ($groups as $group) - $this->fields_value['groupBox_'.$group['id_group']] = Tools::getValue('groupBox_'.$group['id_group'], (in_array($group['id_group'], $carrier_groups_ids))); + $this->fields_value['groupBox_'.$group['id_group']] = Tools::getValue('groupBox_'.$group['id_group'], (in_array($group['id_group'], $category_groups_ids))); return parent::renderForm(); } diff --git a/controllers/admin/AdminCustomersController.php b/controllers/admin/AdminCustomersController.php index d5dc1472c..6df94d3d9 100644 --- a/controllers/admin/AdminCustomersController.php +++ b/controllers/admin/AdminCustomersController.php @@ -491,6 +491,14 @@ class AdminCustomersControllerCore extends AdminController if (is_array($customer_groups)) foreach ($customer_groups as $customer_group) $customer_groups_ids[] = $customer_group; + + // if empty $carrier_groups_ids : object creation : we set the default groups + if (empty($customer_groups_ids)) + { + $preselected = array(Configuration::get('PS_UNIDENTIFIED_GROUP'), Configuration::get('PS_GUEST_GROUP'), Configuration::get('PS_CUSTOMER_GROUP')); + $customer_groups_ids = array_merge($customer_groups_ids, $preselected); + } + foreach ($groups as $group) $this->fields_value['groupBox_'.$group['id_group']] = Tools::getValue('groupBox_'.$group['id_group'], in_array($group['id_group'], $customer_groups_ids));