$adapter = null;
switch ($notice->verb) {
- case ActivityVerb::FAVORITE:
- case ActivityVerb::UNFAVORITE:
- $adapter = new SystemListItem($nli);
- break;
case ActivityVerb::JOIN:
$adapter = new JoinListItem($nli);
break;
case ActivityVerb::LEAVE:
- $adapter = new JoinListItem($nli);
+ $adapter = new LeaveListItem($nli);
break;
case ActivityVerb::FOLLOW:
$adapter = new FollowListItem($nli);
return true;
}
- function onEndNoticeAsActivity($notice, &$activity)
+ public function onEndNoticeAsActivity(Notice $stored, Activity $act, Profile $scoped=null)
{
- switch ($notice->verb) {
- case ActivityVerb::FAVORITE:
- $fave = Fave::getKV('uri', $notice->uri);
- if (!empty($fave)) {
- $notice = Notice::getKV('id', $fave->notice_id);
- if (!empty($notice)) {
- $cur = common_current_user();
- $target = $notice->asActivity($cur);
- if ($target->verb == ActivityVerb::POST) {
- // "I like the thing you posted"
- $activity->objects = $target->objects;
- } else {
- // "I like that you did whatever you did"
- $activity->objects = array($target);
- }
- }
- }
- break;
+ switch ($stored->verb) {
case ActivityVerb::UNFAVORITE:
// FIXME: do something here
break;
case ActivityVerb::JOIN:
- $mem = Group_member::getKV('uri', $notice->uri);
- if (!empty($mem)) {
+ $mem = Group_member::getKV('uri', $stored->getUri());
+ if ($mem instanceof Group_member) {
$group = $mem->getGroup();
- $activity->objects = array(ActivityObject::fromGroup($group));
+ $act->title = $stored->getTitle();
+ $act->objects = array(ActivityObject::fromGroup($group));
}
break;
case ActivityVerb::LEAVE:
// FIXME: ????
break;
case ActivityVerb::FOLLOW:
- $sub = Subscription::getKV('uri', $notice->uri);
- if (!empty($sub)) {
+ $sub = Subscription::getKV('uri', $stored->uri);
+ if ($sub instanceof Subscription) {
$profile = Profile::getKV('id', $sub->subscribed);
- if (!empty($profile)) {
- $activity->objects = array($profile->asActivityObject());
+ if ($profile instanceof Profile) {
+ $act->title = $stored->getTitle();
+ $act->objects = array($profile->asActivityObject());
}
}
break;
return true;
}
- function onPluginVersion(&$versions)
+ function onPluginVersion(array &$versions)
{
$versions[] = array('name' => 'Activity',
'version' => self::VERSION,