From ded3b0cd5e5c5d60df7c4fbf50e98f0eaef91576 Mon Sep 17 00:00:00 2001 From: DamienMetzger Date: Tue, 27 Nov 2012 12:01:13 +0100 Subject: [PATCH] [-] BO : improved error display on admincarriers #PSCFV-5660 --- controllers/admin/AdminCarriersController.php | 66 ++++++++++--------- 1 file changed, 35 insertions(+), 31 deletions(-) diff --git a/controllers/admin/AdminCarriersController.php b/controllers/admin/AdminCarriersController.php index 989457d84..273e3f242 100644 --- a/controllers/admin/AdminCarriersController.php +++ b/controllers/admin/AdminCarriersController.php @@ -467,43 +467,47 @@ class AdminCarriersControllerCore extends AdminController /* Object update */ if (isset($id) && !empty($id)) { - if ($this->tabAccess['edit'] === '1') - { - $current_carrier = new Carrier($id); - if (!Validate::isLoadedObject($current_carrier)) - throw new PrestaShopException('Cannot load Carrier object'); - - // Duplicate current Carrier - $new_carrier = $current_carrier->duplicateObject(); - if (Validate::isLoadedObject($new_carrier)) + try { + if ($this->tabAccess['edit'] === '1') { - // Set flag deteled to true for historization - $current_carrier->deleted = true; - $current_carrier->update(); + $current_carrier = new Carrier($id); + if (!Validate::isLoadedObject($current_carrier)) + throw new PrestaShopException('Cannot load Carrier object'); + + // Duplicate current Carrier + $new_carrier = $current_carrier->duplicateObject(); + if (Validate::isLoadedObject($new_carrier)) + { + // Set flag deteled to true for historization + $current_carrier->deleted = true; + $current_carrier->update(); - // Fill the new carrier object - $this->copyFromPost($new_carrier, $this->table); - $new_carrier->position = $current_carrier->position; - $new_carrier->update(); + // Fill the new carrier object + $this->copyFromPost($new_carrier, $this->table); + $new_carrier->position = $current_carrier->position; + $new_carrier->update(); - $this->updateAssoShop($new_carrier->id); - $new_carrier->copyCarrierData((int)$current_carrier->id); - $this->changeGroups($new_carrier->id); - // Call of hooks - Hook::exec('actionCarrierUpdate', array( - 'id_carrier' => (int)$current_carrier->id, - 'carrier' => $new_carrier - )); - $this->postImage($new_carrier->id); - $this->changeZones($new_carrier->id); - $new_carrier->setTaxRulesGroup((int)Tools::getValue('id_tax_rules_group')); - Tools::redirectAdmin(self::$currentIndex.'&id_'.$this->table.'='.$current_carrier->id.'&conf=4&token='.$this->token); + $this->updateAssoShop($new_carrier->id); + $new_carrier->copyCarrierData((int)$current_carrier->id); + $this->changeGroups($new_carrier->id); + // Call of hooks + Hook::exec('actionCarrierUpdate', array( + 'id_carrier' => (int)$current_carrier->id, + 'carrier' => $new_carrier + )); + $this->postImage($new_carrier->id); + $this->changeZones($new_carrier->id); + $new_carrier->setTaxRulesGroup((int)Tools::getValue('id_tax_rules_group')); + Tools::redirectAdmin(self::$currentIndex.'&id_'.$this->table.'='.$current_carrier->id.'&conf=4&token='.$this->token); + } + else + $this->errors[] = Tools::displayError('An error occurred while updating object.').' '.$this->table.''; } else - $this->errors[] = Tools::displayError('An error occurred while updating object.').' '.$this->table.''; + $this->errors[] = Tools::displayError('You do not have permission to edit here.'); + } catch (PrestaShopException $e) { + $this->errors[] = $e->getMessage(); } - else - $this->errors[] = Tools::displayError('You do not have permission to edit here.'); } /* Object creation */