diff options
Diffstat (limited to 'mod/import.php')
-rw-r--r-- | mod/import.php | 54 |
1 files changed, 4 insertions, 50 deletions
diff --git a/mod/import.php b/mod/import.php index 1d1799e00..13d684f6e 100644 --- a/mod/import.php +++ b/mod/import.php @@ -440,60 +440,14 @@ function import_post(&$a) { $saved_notification_flags = notifications_off($channel['channel_id']); - if($import_posts && array_key_exists('item',$data) && $data['item']) { - - foreach($data['item'] as $i) { - $item = get_item_elements($i); - - $r = q("select id, edited from item where mid = '%s' and uid = %d limit 1", - dbesc($item['mid']), - intval($channel['channel_id']) - ); - if($r) { - if($item['edited'] > $r[0]['edited']) { - $item['id'] = $r[0]['id']; - $item['uid'] = $channel['channel_id']; - item_store_update($item); - continue; - } - } - else { - $item['aid'] = $channel['channel_account_id']; - $item['uid'] = $channel['channel_id']; - $item_result = item_store($item); - } - - } - - } + if($import_posts && array_key_exists('item',$data) && $data['item']) + import_items($channel,$data['item']); notifications_on($channel['channel_id'],$saved_notification_flags); - if(array_key_exists('item_id',$data) && $data['item_id']) { - foreach($data['item_id'] as $i) { - $r = q("select id from item where mid = '%s' and uid = %d limit 1", - dbesc($i['mid']), - intval($channel['channel_id']) - ); - if(! $r) - continue; - $z = q("select * from item_id where service = '%s' and sid = '%s' and iid = %d and uid = %d limit 1", - dbesc($i['service']), - dbesc($i['sid']), - intval($r[0]['id']), - intval($channel['channel_id']) - ); - if(! $z) { - q("insert into item_id (iid,uid,sid,service) values(%d,%d,'%s','%s')", - intval($r[0]['id']), - intval($channel['channel_id']), - dbesc($i['sid']), - dbesc($i['service']) - ); - } - } - } + if(array_key_exists('item_id',$data) && $data['item_id']) + import_item_ids($channel,$data['item_id']); // FIXME - ensure we have a self entry if somebody is trying to pull a fast one |