call post_local hooks prior to storing a post that is going to be sourced. There are some fields in the actual stored item that may change when we start the second delivery chain so a few plugins may not deal with these items correctly. Since we only source public items these effects will be slight.

This commit is contained in:
friendica 2015-02-25 03:14:49 -08:00
parent 2a2cc309ce
commit 1a071ea4f0
2 changed files with 9 additions and 0 deletions

View File

@ -3136,6 +3136,8 @@ function start_delivery_chain($channel,$item,$item_id,$parent) {
intval($item_id)
);
if($r)
proc_run('php','include/notifier.php','tgroup',$item_id);
else

View File

@ -1680,6 +1680,13 @@ function process_delivery($sender,$arr,$deliveries,$relay,$public = false,$reque
else {
$arr['aid'] = $channel['channel_account_id'];
$arr['uid'] = $channel['channel_id'];
// if it's a sourced post, call the post_local hooks as if it were
// posted locally so that crosspost connectors will be triggered.
if(check_item_source($arr['uid'],$arr))
call_hooks('post_local',$arr);
$item_result = item_store($arr);
$item_id = 0;
if($item_result['success']) {