function unLike() { $n2i = Notice_to_item::staticGet('notice_id', $this->notice->id); if (!empty($this->flink) && !empty($n2i)) { try { $result = $this->facebook->api(array('method' => 'stream.removeLike', 'post_id' => $n2i->item_id, 'uid' => $this->flink->foreign_id)); if (!empty($result) && result == true) { common_log(LOG_INFO, sprintf('Removed like for item: %s for %s (%d), fbuid %d', $n2i->item_id, $this->user->nickname, $this->user->id, $this->flink->foreign_id), __FILE__); } else { throw new FacebookApiException(var_export($result, true)); } } catch (FacebookApiException $e) { common_log(LOG_WARNING, sprintf('Could not remove like for Facebook item: %s for %s ' . '(%d), fbuid %d (API error: %s)', $n2i->item_id, $this->user->nickname, $this->user->id, $this->flink->foreign_id, $e), __FILE__); } } }
/** * Save a mapping between a notice and a Facebook item * * @param integer $notice_id ID of the notice in StatusNet * @param integer $item_id ID of the stream item on Facebook * * @return Notice_to_item new object for this value */ static function saveNew($notice_id, $item_id) { $n2i = Notice_to_item::staticGet('notice_id', $notice_id); if (!empty($n2i)) { return $n2i; } $n2i = Notice_to_item::staticGet('item_id', $item_id); if (!empty($n2i)) { return $n2i; } common_debug("Mapping notice {$notice_id} to Facebook item {$item_id}", __FILE__); $n2i = new Notice_to_item(); $n2i->notice_id = $notice_id; $n2i->item_id = $item_id; $n2i->created = common_sql_now(); $n2i->insert(); return $n2i; }