diff options
author | Fabio Comuni <fabrix.xm@gmail.com> | 2012-01-06 09:10:21 +0100 |
---|---|---|
committer | Fabio Comuni <fabrix.xm@gmail.com> | 2012-01-06 09:10:21 +0100 |
commit | a9670cbb7d2cab644ee9d499aade98164f92631a (patch) | |
tree | f136b6448ecd23ec7c987bf26b8d49be25a8aca5 /include/conversation.php | |
parent | 93563370c96848948d28ed39e13284ebaf7f430a (diff) | |
parent | 53878625f6ecc014283cefbd84f92b6f1294b8a3 (diff) | |
download | volse-hubzilla-a9670cbb7d2cab644ee9d499aade98164f92631a.tar.gz volse-hubzilla-a9670cbb7d2cab644ee9d499aade98164f92631a.tar.bz2 volse-hubzilla-a9670cbb7d2cab644ee9d499aade98164f92631a.zip |
Merge remote-tracking branch 'friendica/master'
Diffstat (limited to 'include/conversation.php')
-rw-r--r-- | include/conversation.php | 35 |
1 files changed, 23 insertions, 12 deletions
diff --git a/include/conversation.php b/include/conversation.php index 26430d645..37fe32de1 100644 --- a/include/conversation.php +++ b/include/conversation.php @@ -910,25 +910,35 @@ function conv_sort($arr,$order) { elseif(stristr($order,'commented')) usort($parents,'sort_thr_commented'); - foreach($parents as $x) - $x['children'] = array(); + if(count($parents)) + foreach($parents as $x) + $x['children'] = array(); foreach($arr as $x) { if($x['id'] != $x['parent']) { $p = find_thread_parent_index($parents,$x); - $parents[$p]['children'][] = $x; + if($p !== false) + $parents[$p]['children'][] = $x; } } - foreach($parents as $x) - if(count($x['children'])) - usort($x['children'],'sort_thr_created_rev'); + if(count($parents)) { + foreach($parents as $k => $v) { + if(count($parents[$k]['children'])) { + $y = $parents[$k]['children']; + usort($y,'sort_thr_created_rev'); + $parents[$k]['children'] = $y; + } + } + } $ret = array(); - foreach($parents as $x) { - $ret[] = $x; - if(count($x['children'])) - foreach($x['children'] as $y) - $ret[] = $y; + if(count($parents)) { + foreach($parents as $x) { + $ret[] = $x; + if(count($x['children'])) + foreach($x['children'] as $y) + $ret[] = $y; + } } return $ret; @@ -951,4 +961,5 @@ function find_thread_parent_index($arr,$x) { foreach($arr as $k => $v) if($v['id'] == $x['parent']) return $k; -} + return false; +}
\ No newline at end of file |