X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=lib%2Factivity.php;h=9282461c1ccce4a29ef3c769191fcd3d426d32c2;hb=3d334451c45bd93b222d58155404786ee0667a0e;hp=eaa7cf1c2d499b0a55915d4d229ff7fb6eeb0671;hpb=f4c0cff032799f695b04821265f9921ecb773ad7;p=quix0rs-gnu-social.git diff --git a/lib/activity.php b/lib/activity.php index eaa7cf1c2d..9282461c1c 100644 --- a/lib/activity.php +++ b/lib/activity.php @@ -107,6 +107,7 @@ class Activity public $selfLink; // public $editLink; // public $generator; // ActivityObject representing the generating application + /** * Turns a regular old Atom into a magical activity * @@ -244,6 +245,9 @@ class Activity if (!empty($targetEl)) { $this->target = new ActivityObject($targetEl); + } elseif (ActivityUtils::compareVerbs($this->verb, array(ActivityVerb::FAVORITE))) { + // StatusNet didn't send a 'target' for their Favorite atom entries + $this->target = clone($this->objects[0]); } $this->summary = ActivityUtils::childContent($entry, 'summary'); @@ -576,8 +580,8 @@ class Activity if (!empty($this->link)) { $xs->element('link', array('rel' => 'alternate', - 'type' => 'text/html'), - $this->link); + 'type' => 'text/html', + 'href' => $this->link)); } } @@ -624,10 +628,19 @@ class Activity if (!empty($this->context->conversation)) { $xs->element('link', array('rel' => ActivityContext::CONVERSATION, 'href' => $this->context->conversation)); + $xs->element(ActivityContext::CONVERSATION, null, $this->context->conversation); + /* Since we use XMLWriter we just use the previously hardcoded prefix for ostatus, + otherwise we should use something like this: + $xs->elementNS(array(ActivityContext::OSTATUS => 'ostatus'), // namespace + 'conversation', // tag (or the element name from ActivityContext::CONVERSATION) + null, // attributes + $this->context->conversation); // content + */ } - foreach ($this->context->attention as $attnURI) { + foreach ($this->context->attention as $attnURI=>$type) { $xs->element('link', array('rel' => ActivityContext::MENTIONED, + ActivityContext::OBJECTTYPE => $type, // FIXME: undocumented 'href' => $attnURI)); }