/** * @param Mage_Index_Model_Event $event * @return void */ protected function _registerEvent(Mage_Index_Model_Event $event) { /* @var $entity Varien_Object */ $entity = $event->getDataObject(); // could be a catalog/product or catalog/category entity, too $eventType = $event->getType(); $attrCode = Netzarbeiter_GroupsCatalog2_Helper_Data::HIDE_GROUPS_ATTRIBUTE; if ($eventType == Mage_Index_Model_Event::TYPE_SAVE) { if ($entity->dataHasChangedFor($attrCode)) { $event->setData('entity_ids', array($entity->getId())); } } elseif ($eventType == Mage_Index_Model_Event::TYPE_MASS_ACTION) { $attributeData = $entity->getAttributesData(); if (isset($attributeData[$attrCode])) { $event->setData('entity_ids', $this->_getEntityIdsFromEntity($entity)); } } }
/** * Register indexer required data inside event object * * @param Mage_Index_Model_Event $event */ protected function _registerEvent(Mage_Index_Model_Event $event) { if ($event->getEntity() == Asm_Solr_Model_Cms_Page::ENTITY && $event->getType() == Mage_Index_Model_Event::TYPE_SAVE) { $event->setData('solr_update_page_id', $event->getDataObject()->getId()); } }