Skip to content

Commit 3027792

Browse files
Merge pull request #25 from magmodules/fix/inventory-observer
Check on differences in new and original inventory item data
2 parents 1746e53 + eac2c39 commit 3027792

File tree

1 file changed

+9
-2
lines changed
  • app/code/community/Magmodules/Channableapi/Model

1 file changed

+9
-2
lines changed

app/code/community/Magmodules/Channableapi/Model/Observer.php

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -116,8 +116,15 @@ public function cataloginventory_stock_item_save_after(Varien_Event_Observer $ob
116116

117117
try {
118118
$item = $observer->getEvent()->getItem();
119-
if ($item->getStockStatusChangedAuto() || ($item->getQtyCorrection() != 0)) {
120-
$itemModel->invalidateProduct($item->getProductId(), $type);
119+
$itemOrg = $observer->getEvent()->getItem()->getOrigData();
120+
$compareFields = array('qty', 'is_in_stock', 'manage_stock', 'use_config_manage_stock');
121+
foreach ($compareFields as $key) {
122+
$org = isset($itemOrg[$key]) ? (int)$itemOrg[$key] : null;
123+
$new = isset($item[$key]) ? (int)$item[$key] : null;
124+
if (($org !== null && $new !== null) && $new !== $org) {
125+
$itemModel->invalidateProduct($item->getProductId(), $type);
126+
break;
127+
}
121128
}
122129
} catch (\Exception $e) {
123130
$itemModel->addTolog('cataloginventory_stock_item_save_after', $e->getMessage(), 2);

0 commit comments

Comments
 (0)