From 6b683d7e5ca813c5d7ac706fb6297ffdf617a238 Mon Sep 17 00:00:00 2001 From: Mohamed ELIDRISSI <67818913+elidrissidev@users.noreply.github.com> Date: Thu, 4 May 2023 10:11:10 +0100 Subject: [PATCH] Added cache to "order status" labels in Mage_Sales_Model_Order_Config (#3223) Co-authored-by: Fabrizio Balliano --- app/code/core/Mage/Sales/Model/Order/Config.php | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/app/code/core/Mage/Sales/Model/Order/Config.php b/app/code/core/Mage/Sales/Model/Order/Config.php index dac1902a3ad..7c3123b9455 100644 --- a/app/code/core/Mage/Sales/Model/Order/Config.php +++ b/app/code/core/Mage/Sales/Model/Order/Config.php @@ -28,6 +28,13 @@ class Mage_Sales_Model_Order_Config extends Mage_Core_Model_Config_Base */ protected $_stateStatuses; + /** + * Statuses array + * + * @var array + */ + protected $_statuses; + /** * States array * @@ -84,9 +91,12 @@ public function getStateDefaultStatus($state) */ public function getStatusLabel($code) { - $status = Mage::getModel('sales/order_status') - ->load($code); - return $status->getStoreLabel(); + $key = $code . '/' . Mage::app()->getStore()->getStoreId(); + if (!isset($this->_statuses[$key])) { + $status = Mage::getModel('sales/order_status')->load($code); + $this->_statuses[$key] = $status->getStoreLabel(); + } + return $this->_statuses[$key]; } /**