]> git.mxchange.org Git - quix0rs-gnu-social.git/commitdiff
put local id, href and such in ostatus:conversation element
authorMikael Nordfeldth <mmn@hethane.se>
Mon, 18 Apr 2016 14:09:36 +0000 (16:09 +0200)
committerMikael Nordfeldth <mmn@hethane.se>
Mon, 18 Apr 2016 14:09:36 +0000 (16:09 +0200)
lib/activity.php

index 3128088ca21b45772ff844e60ce98cc14378888d..b733ff97aaee568c040341d05e398e8955a9ba92 100644 (file)
@@ -625,9 +625,20 @@ 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);
+                $convattr = [];
+                $conv = Conversation::getKV('uri', $this->context->conversation);
+                if ($conv instanceof Conversation) {
+                    $convattr['href'] = $conv->getUrl();
+                    $convattr['local_id'] = $conv->getID();
+                    $convattr['ref'] = $conv->getUri();
+                    $xs->element('link', array('rel' => ActivityContext::CONVERSATION,
+                                                'href' => $convattr['href']));
+                } else {
+                    $convattr['ref'] = $this->context->conversation;
+                }
+                $xs->element(ActivityContext::CONVERSATION,
+                                $convattr,
+                                $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