We are no longer offering accounts on this server. Consider https://gitlab.freedesktop.org/ as a place to host projects.

Commit 3ff02995 authored by Evan Prodromou's avatar Evan Prodromou

more accurate activity output for system activities

parent 0692d9c0
......@@ -320,6 +320,50 @@ class ActivityPlugin extends Plugin
function onEndNoticeAsActivity($notice, &$activity)
{
switch ($notice->verb) {
case ActivityVerb::FAVORITE:
$fave = Fave::staticGet('uri', $notice->uri);
if (!empty($fave)) {
$notice = Notice::staticGet('id', $fave->notice_id);
if (!empty($notice)) {
$target = $notice->asActivity();
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;
case ActivityVerb::UNFAVORITE:
// FIXME: do something here
break;
case ActivityVerb::JOIN:
$mem = Group_member::staticGet('uri', $notice->uri);
if (!empty($mem)) {
$group = $mem->getGroup();
$activity->objects = array(ActivityObject::fromGroup($group));
}
break;
case ActivityVerb::LEAVE:
// FIXME: ????
break;
case ActivityVerb::FOLLOW:
$sub = Subscription::staticGet('uri', $notice->uri);
if (!empty($sub)) {
$profile = Profile::staticGet('id', $sub->subscribed);
if (!empty($profile)) {
$activity->objects = array(ActivityObject::fromProfile($profile));
}
}
break;
case ActivityVerb::UNFOLLOW:
// FIXME: ????
break;
}
return true;
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment