From 07589da2f4a6bf6cdda1a27ca646e26a0e64e8c2 Mon Sep 17 00:00:00 2001 From: rMalie Date: Wed, 25 Apr 2012 15:58:02 +0000 Subject: [PATCH] // Add retro-compatibility support for tabs in Tab::add() method --- classes/Tab.php | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/classes/Tab.php b/classes/Tab.php index d4b65773d..2e0f926b2 100644 --- a/classes/Tab.php +++ b/classes/Tab.php @@ -76,7 +76,24 @@ class TabCore extends ObjectModel */ public function add($autodate = true, $null_values = false) { + // @retrocompatibility with old menu (before 1.5.0.9) + $retro = array( + 'AdminPayment' => 'AdminParentModules', + 'AdminOrders' => 'AdminParentOrders', + 'AdminCustomers' => 'AdminParentCustomer', + 'AdminShipping' => 'AdminParentShipping', + 'AdminPreferences' => 'AdminParentPreferences', + 'AdminStats' => 'AdminParentStats', + 'AdminEmployees' => 'AdminAdmin', + ); + $class_name = Tab::getClassNameById($this->id_parent); + if (isset($retro[$class_name])) + $this->id_parent = Tab::getIdFromClassName($retro[$class_name]); + + // Set good position for new tab $this->position = Tab::getNewLastPosition($this->id_parent); + + // Add tab if (parent::add($autodate, $null_values)) { // refresh cache when adding new tab @@ -483,4 +500,12 @@ class TabCore extends ObjectModel ORDER BY t.`id_parent` ASC '); } + + /** + * @since 1.5.0 + */ + public static function getClassNameById($id_tab) + { + return Db::getInstance()->getValue('SELECT class_name FROM '._DB_PREFIX_.'tab WHERE id_tab = '.(int)$id_tab); + } }