]> git.mxchange.org Git - friendica.git/commitdiff
Community: New option to reduce the maximum amount if posts per person.
authorMichael Vogel <icarus@dabo.de>
Tue, 10 Jun 2014 18:21:43 +0000 (20:21 +0200)
committerMichael Vogel <icarus@dabo.de>
Tue, 10 Jun 2014 18:21:43 +0000 (20:21 +0200)
mod/community.php

index 54259a81e5dae73f6a92e7c6ccf63c770be5dc06..8a2c64ad8c062347d81d09abbdd76c109b136387 100644 (file)
@@ -90,11 +90,32 @@ function community_content(&$a, $update = 0) {
                return $o;
        }
 
+       $maxpostperauthor = get_config('system','max_author_posts_community_page');
+
+       if ($maxpostperauthor != 0) {
+               $previousauthor = "";
+               $numposts = 0;
+               $s = array();
+
+               foreach ($r AS $row=>$item) {
+                       if ($previousauthor == $item["author-link"])
+                               ++$numposts;
+                       else
+                               $numposts = 0;
+
+                       $previousauthor = $item["author-link"];
+
+                       if ($numposts < $maxpostperauthor)
+                               $s[] = $item;
+               }
+       } else
+               $s = $r;
+
        // we behave the same in message lists as the search module
 
-       $o .= conversation($a,$r,'community',$update);
+       $o .= conversation($a,$s,'community',$update);
 
-       if( get_config('alt_pager', 'global') || get_pconfig(local_user(),'system','alt_pager') ) {
+       if(get_config('alt_pager', 'global') || get_pconfig(local_user(),'system','alt_pager') ) {
                $o .= alt_pager($a,count($r));
        }
        else {