From e9a1abd133aa3db62d17ef8bdc91e8a75f4004d3 Mon Sep 17 00:00:00 2001 From: Friendika Date: Sat, 4 Dec 2010 23:16:16 -0800 Subject: flatten conversation hierarchy to one level on import but preserve all thread info in case somebody wants to write a plugin to display as multi-level thread --- include/items.php | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) (limited to 'include') diff --git a/include/items.php b/include/items.php index 04b86ab3f..a4d3953f9 100644 --- a/include/items.php +++ b/include/items.php @@ -553,9 +553,14 @@ function item_store($arr) { // The content body has been through a lot of filtering and transport escaping by now. // We don't want to skip any filters, however a side effect of all this filtering - // is that ampersands will have been double encoded. + // is that ampersands and <> may have been double encoded, depending on which filter chain + // they came through. - $arr['body'] = str_replace('&amp;','&',$arr['body']); + $arr['body'] = str_replace( + array('&amp;','&gt;','&lt;'), + array('&' ,'>' ,'<'), + $arr['body'] + ); @@ -576,6 +581,16 @@ function item_store($arr) { ); if(count($r)) { + + // is the new message multi-level threaded? + // even though we don't support it now, preserve the info + // and re-attach to the conversation parent. + + if($r[0]['uri'] != $r[0]['parent-uri']) { + $arr['thr-parent'] = $arr['parent-uri']; + $arr['parent-uri'] = $r[0]['parent-uri']; + } + $parent_id = $r[0]['id']; $allow_cid = $r[0]['allow_cid']; $allow_gid = $r[0]['allow_gid']; -- cgit v1.2.3