Exemple #1
0
 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();
         }
     }
 }