public function onCoreLikeDeleteBefore($event) { $like = $event->getPayload(); if (isset($like) && !empty($like)) { if (in_array($like->resource_type, $this->_getModuleItems())) { $popularityTbl = new Book_Model_DbTable_Popularities(); $popularitySelect = $popularityTbl->select(); $popularitySelect->where('resource_id = ?', $like->resource_id); $popularitySelect->where('resource_type = ?', $like->resource_type); $item = $popularityTbl->fetchRow($popularitySelect); if (empty($item)) { $item = $popularityTbl->getObject($like->resource_type, $like->resource_id); } $item->like_count = $item->like_count - 1; $item->point = $item->point - self::LIKE_POINT; $item->save(); } } }