diff --git a/app/code/core/Mage/Sales/Model/Order.php b/app/code/core/Mage/Sales/Model/Order.php index b561fa127c8..d6024399504 100644 --- a/app/code/core/Mage/Sales/Model/Order.php +++ b/app/code/core/Mage/Sales/Model/Order.php @@ -2353,6 +2353,11 @@ protected function _beforeSave() if (!$this->getId()) { $this->setData('protect_code', substr(md5(uniqid(mt_rand(), true) . ':' . microtime(true)), 5, 6)); } + + if ($this->getStatus() !== $this->getOrigData('status')) { + Mage::dispatchEvent('order_status_changed_before_save', ['order' => $this]); + } + return $this; } diff --git a/docs/EVENTS.md b/docs/EVENTS.md index 0c9cb7488db..a1f318916a8 100644 --- a/docs/EVENTS.md +++ b/docs/EVENTS.md @@ -237,6 +237,7 @@ | model_save_commit_after | 1.9.4.5 | | on_view_report | 1.9.4.5 | | order_cancel_after | 1.9.4.5 | + | order_status_changed_before_save | 19.5.0 / 20.1.0 | | page_block_html_topmenu_gethtml_after | 1.9.4.5 | | page_block_html_topmenu_gethtml_before | 1.9.4.5 | | payment_form_block_to_html_before | 1.9.4.5 |