aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--include/externals.php19
1 files changed, 19 insertions, 0 deletions
diff --git a/include/externals.php b/include/externals.php
index e7e9504a0..96644d68d 100644
--- a/include/externals.php
+++ b/include/externals.php
@@ -64,6 +64,25 @@ function externals_run($argv, $argc){
$results = process_delivery(array('hash' => 'undefined'), get_item_elements($message),
array(array('hash' => $sys['xchan_hash'])), false, true);
$total ++;
+ $z = q("select id from item where mid = '%s' and uid = %d limit 1",
+ dbesc($message['message_id']),
+ intval($sys['channel_id'])
+ );
+ if($z) {
+ $flag_bits = ITEM_WALL|ITEM_ORIGIN|ITEM_UPLINK;
+ // preserve the source
+
+ $r = q("update item set source_xchan = owner_xchan where id = %d limit 1",
+ intval($z[0]['id'])
+ );
+
+ $r = q("update item set item_flags = ( item_flags | %d ), owner_xchan = '%s'
+ where id = %d limit 1",
+ intval($flag_bits),
+ dbesc($sys['xchan_hash']),
+ intval($z[0]['id'])
+ );
+ }
}
logger('externals: import_public_posts: ' . $total . ' messages imported', LOGGER_DEBUG);
}