]> git.mxchange.org Git - quix0rs-gnu-social.git/commitdiff
Set object_type to ActivityObject::NOTE on notices imported from Twitter. Previously...
authorNym Coy <nymcoy@gmail.com>
Tue, 9 Aug 2016 15:32:57 +0000 (21:02 +0530)
committerNym Coy <nymcoy@gmail.com>
Tue, 9 Aug 2016 15:32:57 +0000 (21:02 +0530)
plugins/TwitterBridge/TwitterBridgePlugin.php
plugins/TwitterBridge/lib/twitterimport.php

index 0a887168539bfac69cf671bc6e47c71aad1c2293..5bf63a394674ac8a18114bfbd7adb9d349d5b46c 100644 (file)
@@ -570,4 +570,28 @@ class TwitterBridgePlugin extends Plugin
 
         return true;
     }
+    
+    /**
+     * Set the object_type field of previously imported Twitter notices to
+     * ActivityObject::NOTE if they are unset. Null object_type caused a notice
+     * not to show on the timeline.
+     */
+    public function onEndUpgrade()
+    {
+       printfnq("Ensuring all Twitter notices have an object_type...");
+       
+       $notice = new Notice();
+       $notice->whereAdd("source='twitter'");
+       $notice->whereAdd('object_type IS NULL');
+       
+       if ($notice->find()) {
+               while ($notice->fetch()) {
+                       $orig = Notice::getKV('id', $notice->id);
+                       $notice->object_type = ActivityObject::NOTE;
+                       $notice->update($orig);
+               }
+       }
+       
+       printfnq("DONE.\n");
+    }
 }
index fe11695c1f41785a342965d3cea668145498bd6e..cdbe4a3a6918a755d1c24a85c7f3441906ba6545 100644 (file)
@@ -137,7 +137,10 @@ class TwitterImport
                                           'twitter',
                                           array('repeat_of' => $original->id,
                                                 'uri' => $statusUri,
-                                                'is_local' => Notice::GATEWAY));
+                                                'is_local' => Notice::GATEWAY,
+                                                       'object_type' => ActivityObject::NOTE,
+                                                       'verb' => ActivityVerb::POST
+                                          ));
                 common_log(LOG_INFO, "Saved {$repeat->id} as a repeat of {$original->id}");
                 Notice_to_status::saveNew($repeat->id, $statusId);
                 return $repeat;
@@ -146,18 +149,19 @@ class TwitterImport
 
         $notice = new Notice();
 
-        $notice->profile_id = $profile->id;
-        $notice->uri        = $statusUri;
-        $notice->url        = $statusUri;
-        $notice->verb       = ActivityVerb::POST;
-        $notice->created    = strftime(
+        $notice->profile_id    = $profile->id;
+        $notice->uri           = $statusUri;
+        $notice->url           = $statusUri;
+        $notice->verb          = ActivityVerb::POST;
+        $notice->object_type   = ActivityObject::NOTE;
+        $notice->created       = strftime(
             '%Y-%m-%d %H:%M:%S',
             strtotime($status->created_at)
         );
 
-        $notice->source     = 'twitter';
+        $notice->source        = 'twitter';
 
-        $notice->reply_to   = null;
+        $notice->reply_to      = null;
 
         $replyTo = twitter_id($status, 'in_reply_to_status_id');
         if (!empty($replyTo)) {