<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" /><style type="text/css"><!--
#msg dl { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt;  }
#msg dl a { font-weight: bold}
#msg dl a:link    { color:#fc3; }
#msg dl a:active  { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fc0 solid; padding: 6px; }
#msg ul, pre { overflow: auto; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff  {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<title>[BuddyPress] [1921] trunk: Added &quot;most active group forums&quot;
  to forum directory.</title>
</head>
<body>

<div id="msg">
<dl>
<dt>Revision</dt> <dd>1921</dd>
<dt>Author</dt> <dd>apeatling</dd>
<dt>Date</dt> <dd>2009-09-22 20:45:43 +0000 (Tue, 22 Sep 2009)</dd>
</dl>

<h3>Log Message</h3>
<pre>Added &quot;most active group forums&quot; to forum directory.</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkbpforumsphp">trunk/bp-forums.php</a></li>
<li><a href="#trunkbpgroupsbpgroupsclassesphp">trunk/bp-groups/bp-groups-classes.php</a></li>
<li><a href="#trunkbpgroupsbpgroupstemplatetagsphp">trunk/bp-groups/bp-groups-templatetags.php</a></li>
<li><a href="#trunkbpgroupsphp">trunk/bp-groups.php</a></li>
<li><a href="#trunkbpthemesbpdefault_inccssscreencss">trunk/bp-themes/bp-default/_inc/css/screen.css</a></li>
<li><a href="#trunkbpthemesbpsnparentdirectoriesforumsindexphp">trunk/bp-themes/bp-sn-parent/directories/forums/index.php</a></li>
<li><a href="#trunkbpthemesbpsnparentdirectoriesgroupsgroupsloopphp">trunk/bp-themes/bp-sn-parent/directories/groups/groups-loop.php</a></li>
<li><a href="#trunkbpthemesbpsnparentdirectoriesgroupsindexphp">trunk/bp-themes/bp-sn-parent/directories/groups/index.php</a></li>
</ul>

<h3>Removed Paths</h3>
<ul>
<li><a href="#trunkbpforumsbpforumsclassesphp">trunk/bp-forums/bp-forums-classes.php</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkbpforumsbpforumsclassesphp"></a>
<div class="delfile"><h4>Deleted: trunk/bp-forums/bp-forums-classes.php (1920 => 1921)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/bp-forums/bp-forums-classes.php        2009-09-22 18:01:55 UTC (rev 1920)
+++ trunk/bp-forums/bp-forums-classes.php        2009-09-22 20:45:43 UTC (rev 1921)
</span><span class="lines">@@ -1,5 +0,0 @@
</span><del>-&lt;?php
-
-
-
-?&gt;
</del><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="trunkbpforumsphp"></a>
<div class="modfile"><h4>Modified: trunk/bp-forums.php (1920 => 1921)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/bp-forums.php        2009-09-22 18:01:55 UTC (rev 1920)
+++ trunk/bp-forums.php        2009-09-22 20:45:43 UTC (rev 1921)
</span><span class="lines">@@ -10,7 +10,6 @@
</span><span class="cx"> if ( !defined( 'BB_PATH' ) )
</span><span class="cx">         require ( BP_PLUGIN_DIR . '/bp-forums/bp-forums-bbpress.php' );
</span><span class="cx"> 
</span><del>-require ( BP_PLUGIN_DIR . '/bp-forums/bp-forums-classes.php' );
</del><span class="cx"> require ( BP_PLUGIN_DIR . '/bp-forums/bp-forums-templatetags.php' );
</span><span class="cx"> require ( BP_PLUGIN_DIR . '/bp-forums/bp-forums-filters.php' );
</span><span class="cx"> 
</span><span class="lines">@@ -79,11 +78,41 @@
</span><span class="cx"> }
</span><span class="cx"> add_action( 'admin_menu', 'bp_forums_add_admin_menu' );
</span><span class="cx"> 
</span><ins>+/* Forum Functions */
+
</ins><span class="cx"> function bp_forums_get_forum( $forum_id ) {
</span><span class="cx">         do_action( 'bbpress_init' );
</span><span class="cx">         return bb_get_forum( $forum_id );
</span><span class="cx"> }
</span><span class="cx"> 
</span><ins>+function bp_forums_new_forum( $args = '' ) {
+        do_action( 'bbpress_init' );
+        
+        $defaults = array( 
+                'forum_name' =&gt; '', 
+                'forum_desc' =&gt; '', 
+                'forum_parent_id' =&gt; BP_FORUMS_PARENT_FORUM_ID, 
+                'forum_order' =&gt; false, 
+                'forum_is_category' =&gt; 0
+        );
+
+        $r = wp_parse_args( $args, $defaults );
+        extract( $r, EXTR_SKIP );
+        
+        return bb_new_forum( array( 'forum_name' =&gt; stripslashes( $forum_name ), 'forum_desc' =&gt; stripslashes( $forum_desc ), 'forum_parent' =&gt; $forum_parent_id, 'forum_order' =&gt; $forum_order, 'forum_is_category' =&gt; $forum_is_category ) );
+}
+
+function bp_forums_get_forum_topicpost_count( $forum_id ) {
+        global $wpdb, $bbdb;
+        
+        do_action( 'bbpress_init' );
+
+        /* Need to find a bbPress function that does this */
+        return $wpdb-&gt;get_results( $wpdb-&gt;prepare( &quot;SELECT topics, posts from {$bbdb-&gt;forums} WHERE forum_id = %d&quot;, $forum_id ) );
+}
+
+/* Topic Functions */
+
</ins><span class="cx"> function bp_forums_get_forum_topics( $args = '' ) {
</span><span class="cx">         global $bp;
</span><span class="cx">         
</span><span class="lines">@@ -142,44 +171,6 @@
</span><span class="cx">         return bb_get_id_from_slug( 'topic', $topic_slug );
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-function bp_forums_get_topic_posts( $args = '' ) {
-        do_action( 'bbpress_init' );
-        
-        $defaults = array( 
-                'topic_id' =&gt; false, 
-                'page' =&gt; 1,
-                'per_page' =&gt; 15,
-                'order' =&gt; 'ASC'
-        );
-
-        $args = wp_parse_args( $args, $defaults );
-
-        $query = new BB_Query( 'post', $args, 'get_thread' );
-        return $query-&gt;results;
-}
-
-function bp_forums_get_post( $post_id ) {
-        do_action( 'bbpress_init' );
-        return bb_get_post( $post_id );
-}
-
-function bp_forums_new_forum( $args = '' ) {
-        do_action( 'bbpress_init' );
-        
-        $defaults = array( 
-                'forum_name' =&gt; '', 
-                'forum_desc' =&gt; '', 
-                'forum_parent_id' =&gt; BP_FORUMS_PARENT_FORUM_ID, 
-                'forum_order' =&gt; false, 
-                'forum_is_category' =&gt; 0
-        );
-
-        $r = wp_parse_args( $args, $defaults );
-        extract( $r, EXTR_SKIP );
-        
-        return bb_new_forum( array( 'forum_name' =&gt; stripslashes( $forum_name ), 'forum_desc' =&gt; stripslashes( $forum_desc ), 'forum_parent' =&gt; $forum_parent_id, 'forum_order' =&gt; $forum_order, 'forum_is_category' =&gt; $forum_is_category ) );
-}
-
</del><span class="cx"> function bp_forums_new_topic( $args = '' ) {
</span><span class="cx">         global $bp;
</span><span class="cx">         
</span><span class="lines">@@ -299,6 +290,29 @@
</span><span class="cx">         return bb_delete_topic( $topic_id, 1 );
</span><span class="cx"> }
</span><span class="cx"> 
</span><ins>+/* Post Functions */ 
+
+function bp_forums_get_topic_posts( $args = '' ) {
+        do_action( 'bbpress_init' );
+        
+        $defaults = array( 
+                'topic_id' =&gt; false, 
+                'page' =&gt; 1,
+                'per_page' =&gt; 15,
+                'order' =&gt; 'ASC'
+        );
+
+        $args = wp_parse_args( $args, $defaults );
+
+        $query = new BB_Query( 'post', $args, 'get_thread' );
+        return $query-&gt;results;
+}
+
+function bp_forums_get_post( $post_id ) {
+        do_action( 'bbpress_init' );
+        return bb_get_post( $post_id );
+}
+
</ins><span class="cx"> function bp_forums_delete_post( $args = '' ) {
</span><span class="cx">         global $bp;
</span><span class="cx">         
</span></span></pre></div>
<a id="trunkbpgroupsbpgroupsclassesphp"></a>
<div class="modfile"><h4>Modified: trunk/bp-groups/bp-groups-classes.php (1920 => 1921)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/bp-groups/bp-groups-classes.php        2009-09-22 18:01:55 UTC (rev 1920)
+++ trunk/bp-groups/bp-groups-classes.php        2009-09-22 20:45:43 UTC (rev 1921)
</span><span class="lines">@@ -322,7 +322,7 @@
</span><span class="cx">                 }
</span><span class="cx">                 
</span><span class="cx">                 $paged_requests = $wpdb-&gt;get_results( $wpdb-&gt;prepare( &quot;SELECT * FROM {$bp-&gt;groups-&gt;table_name_members} WHERE group_id = %d AND is_confirmed = 0 AND inviter_id = 0{$pag_sql}&quot;, $group_id ) );
</span><del>-                $total_requests = $wpdb-&gt;get_var( $wpdb-&gt;prepare( &quot;SELECT count(id) FROM {$bp-&gt;groups-&gt;table_name_members} WHERE group_id = %d AND is_confirmed = 0 AND inviter_id = 0&quot;, $group_id ) );
</del><ins>+                $total_requests = $wpdb-&gt;get_var( $wpdb-&gt;prepare( &quot;SELECT COUNT(id) FROM {$bp-&gt;groups-&gt;table_name_members} WHERE group_id = %d AND is_confirmed = 0 AND inviter_id = 0&quot;, $group_id ) );
</ins><span class="cx"> 
</span><span class="cx">                 return array( 'requests' =&gt; $paged_requests, 'total' =&gt; $total_requests );
</span><span class="cx">         }
</span><span class="lines">@@ -335,7 +335,7 @@
</span><span class="cx">                 }
</span><span class="cx">                 
</span><span class="cx">                 $paged_groups = $wpdb-&gt;get_results( $wpdb-&gt;prepare( &quot;SELECT id as group_id FROM {$bp-&gt;groups-&gt;table_name} WHERE status != 'hidden' ORDER BY date_created DESC {$pag_sql}&quot; ) );
</span><del>-                $total_groups = $wpdb-&gt;get_var( $wpdb-&gt;prepare( &quot;SELECT count(id) FROM {$bp-&gt;groups-&gt;table_name} WHERE status != 'hidden' ORDER BY date_created DESC&quot;, $limit ) );
</del><ins>+                $total_groups = $wpdb-&gt;get_var( $wpdb-&gt;prepare( &quot;SELECT COUNT(id) FROM {$bp-&gt;groups-&gt;table_name} WHERE status != 'hidden' ORDER BY date_created DESC&quot;, $limit ) );
</ins><span class="cx"> 
</span><span class="cx">                 return array( 'groups' =&gt; $paged_groups, 'total' =&gt; $total_groups );
</span><span class="cx">         }
</span><span class="lines">@@ -347,8 +347,8 @@
</span><span class="cx">                         $pag_sql = $wpdb-&gt;prepare( &quot; LIMIT %d, %d&quot;, intval( ( $page - 1 ) * $limit), intval( $limit ) );
</span><span class="cx">                 }
</span><span class="cx">                 
</span><del>-                $paged_groups = $wpdb-&gt;get_results( $wpdb-&gt;prepare( &quot;SELECT group_id FROM {$bp-&gt;groups-&gt;table_name_groupmeta} gm, {$bp-&gt;groups-&gt;table_name} g WHERE g.id = gm.group_id AND g.status != 'hidden' AND gm.meta_key = 'last_activity' ORDER BY CONVERT(gm.meta_value, SIGNED) DESC {$pag_sql}&quot;, $limit ) );
-                $total_groups = count( $wpdb-&gt;get_results( $wpdb-&gt;prepare( &quot;SELECT group_id FROM {$bp-&gt;groups-&gt;table_name_groupmeta} gm, {$bp-&gt;groups-&gt;table_name} g WHERE g.id = gm.group_id AND g.status != 'hidden' AND gm.meta_key = 'last_activity' ORDER BY CONVERT(gm.meta_value, SIGNED) DESC&quot;, $limit ) ) );
</del><ins>+                $paged_groups = $wpdb-&gt;get_results( $wpdb-&gt;prepare( &quot;SELECT group_id FROM {$bp-&gt;groups-&gt;table_name_groupmeta} gm, {$bp-&gt;groups-&gt;table_name} g WHERE g.id = gm.group_id AND g.status != 'hidden' AND gm.meta_key = 'last_activity' ORDER BY CONVERT(gm.meta_value, SIGNED) DESC {$pag_sql}&quot; ) );
+                $total_groups = $wpdb-&gt;get_var( $wpdb-&gt;prepare( &quot;SELECT COUNT(group_id) FROM {$bp-&gt;groups-&gt;table_name_groupmeta} gm, {$bp-&gt;groups-&gt;table_name} g WHERE g.id = gm.group_id AND g.status != 'hidden' AND gm.meta_key = 'last_activity' ORDER BY CONVERT(gm.meta_value, SIGNED) DESC&quot; ) );
</ins><span class="cx"> 
</span><span class="cx">                 return array( 'groups' =&gt; $paged_groups, 'total' =&gt; $total_groups );
</span><span class="cx">         }
</span><span class="lines">@@ -360,21 +360,21 @@
</span><span class="cx">                         $pag_sql = $wpdb-&gt;prepare( &quot; LIMIT %d, %d&quot;, intval( ( $page - 1 ) * $limit), intval( $limit ) );
</span><span class="cx">                 }
</span><span class="cx">                         
</span><del>-                $paged_groups = $wpdb-&gt;get_results( $wpdb-&gt;prepare( &quot;SELECT gm.group_id FROM {$bp-&gt;groups-&gt;table_name_groupmeta} gm, {$bp-&gt;groups-&gt;table_name} g WHERE g.id = gm.group_id AND g.status != 'hidden' AND gm.meta_key = 'total_member_count' ORDER BY CONVERT(gm.meta_value, SIGNED) DESC {$pag_sql}&quot;, $limit ) );
-                $total_groups = count( $wpdb-&gt;get_results( $wpdb-&gt;prepare( &quot;SELECT gm.group_id FROM {$bp-&gt;groups-&gt;table_name_groupmeta} gm, {$bp-&gt;groups-&gt;table_name} g WHERE g.id = gm.group_id AND g.status != 'hidden' AND gm.meta_key = 'total_member_count' ORDER BY CONVERT(gm.meta_value, SIGNED) DESC&quot;, $limit ) ) );
</del><ins>+                $paged_groups = $wpdb-&gt;get_results( $wpdb-&gt;prepare( &quot;SELECT gm.group_id FROM {$bp-&gt;groups-&gt;table_name_groupmeta} gm, {$bp-&gt;groups-&gt;table_name} g WHERE g.id = gm.group_id AND g.status != 'hidden' AND gm.meta_key = 'total_member_count' ORDER BY CONVERT(gm.meta_value, SIGNED) DESC {$pag_sql}&quot; ) );
+                $total_groups = $wpdb-&gt;get_var( $wpdb-&gt;prepare( &quot;SELECT COUNT(gm.group_id) FROM {$bp-&gt;groups-&gt;table_name_groupmeta} gm, {$bp-&gt;groups-&gt;table_name} g WHERE g.id = gm.group_id AND g.status != 'hidden' AND gm.meta_key = 'total_member_count' ORDER BY CONVERT(gm.meta_value, SIGNED) DESC&quot; ) );
</ins><span class="cx"> 
</span><span class="cx">                 return array( 'groups' =&gt; $paged_groups, 'total' =&gt; $total_groups );
</span><span class="cx">         }
</span><span class="cx">         
</span><del>-        function get_by_most_forum_posts( $limit = null, $page = null ) {
-                global $wpdb, $bp;
</del><ins>+        function get_by_most_forum_topics( $limit = null, $page = null ) {
+                global $wpdb, $bp, $bbdb;
</ins><span class="cx">                 
</span><span class="cx">                 if ( $limit &amp;&amp; $page ) {
</span><span class="cx">                         $pag_sql = $wpdb-&gt;prepare( &quot; LIMIT %d, %d&quot;, intval( ( $page - 1 ) * $limit), intval( $limit ) );
</span><span class="cx">                 }
</span><span class="cx">                         
</span><del>-                $paged_groups = $wpdb-&gt;get_results( $wpdb-&gt;prepare( &quot;SELECT gm.group_id FROM {$bp-&gt;groups-&gt;table_name_groupmeta} gm, {$bp-&gt;groups-&gt;table_name} g WHERE g.id = gm.group_id AND g.status != 'hidden' AND gm.meta_key = 'total_member_count' ORDER BY CONVERT(gm.meta_value, SIGNED) DESC {$pag_sql}&quot;, $limit ) );
-                $total_groups = count( $wpdb-&gt;get_results( $wpdb-&gt;prepare( &quot;SELECT gm.group_id FROM {$bp-&gt;groups-&gt;table_name_groupmeta} gm, {$bp-&gt;groups-&gt;table_name} g WHERE g.id = gm.group_id AND g.status != 'hidden' AND gm.meta_key = 'total_member_count' ORDER BY CONVERT(gm.meta_value, SIGNED) DESC&quot;, $limit ) ) );
</del><ins>+                $paged_groups = $wpdb-&gt;get_results( $wpdb-&gt;prepare( &quot;SELECT DISTINCT gm.group_id FROM {$bbdb-&gt;topics} AS t, {$bp-&gt;groups-&gt;table_name} AS g LEFT JOIN {$bp-&gt;groups-&gt;table_name_groupmeta} AS gm ON g.id = gm.group_id WHERE (gm.meta_key = 'forum_id' AND gm.meta_value = t.forum_id) AND g.status = 'public' AND t.topic_status = '0' AND t.topic_sticky = '0' GROUP BY t.forum_id ORDER BY COUNT(t.topic_posts) DESC {$pag_sql}&quot; ) );
+                $total_groups = $wpdb-&gt;get_var( $wpdb-&gt;prepare( &quot;SELECT DISTINCT COUNT(gm.group_id) FROM {$bbdb-&gt;topics} AS t, {$bp-&gt;groups-&gt;table_name} AS g LEFT JOIN {$bp-&gt;groups-&gt;table_name_groupmeta} AS gm ON g.id = gm.group_id WHERE (gm.meta_key = 'forum_id' AND gm.meta_value = t.forum_id) AND g.status = 'public' AND t.topic_status = '0' AND t.topic_sticky = '0' GROUP BY t.forum_id ORDER BY COUNT(t.topic_posts) DESC&quot; ) );
</ins><span class="cx"> 
</span><span class="cx">                 return array( 'groups' =&gt; $paged_groups, 'total' =&gt; $total_groups );                
</span><span class="cx">         }
</span></span></pre></div>
<a id="trunkbpgroupsbpgroupstemplatetagsphp"></a>
<div class="modfile"><h4>Modified: trunk/bp-groups/bp-groups-templatetags.php (1920 => 1921)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/bp-groups/bp-groups-templatetags.php        2009-09-22 18:01:55 UTC (rev 1920)
+++ trunk/bp-groups/bp-groups-templatetags.php        2009-09-22 20:45:43 UTC (rev 1921)
</span><span class="lines">@@ -1832,9 +1832,9 @@
</span><span class="cx">                                         $this-&gt;groups = groups_get_popular( $this-&gt;pag_num, $this-&gt;pag_page );
</span><span class="cx">                                         break;        
</span><span class="cx"> 
</span><del>-                                case 'most-forum-posts':
-                                        $this-&gt;groups = groups_get_by_most_forum_posts( $this-&gt;pag_num, $this-&gt;pag_page );
-                                        break;                
</del><ins>+                                case 'most-forum-topics':
+                                        $this-&gt;groups = groups_get_by_most_forum_topics( $this-&gt;pag_num, $this-&gt;pag_page );
+                                        break;
</ins><span class="cx">                         }
</span><span class="cx">                 }
</span><span class="cx">                 
</span><span class="lines">@@ -2032,6 +2032,7 @@
</span><span class="cx"> 
</span><span class="cx">                 return apply_filters( 'bp_get_the_site_group_name', bp_get_group_name( $site_groups_template-&gt;group ) );
</span><span class="cx">         }
</span><ins>+        
</ins><span class="cx"> 
</span><span class="cx"> function bp_the_site_group_last_active() {
</span><span class="cx">         echo bp_get_the_site_group_last_active();
</span><span class="lines">@@ -2063,7 +2064,7 @@
</span><span class="cx">         function bp_get_the_site_group_description_excerpt() {
</span><span class="cx">                 global $site_groups_template;
</span><span class="cx"> 
</span><del>-                return apply_filters( 'bp_get_the_site_group_description_excerpt', bp_create_excerpt( bp_get_group_description( $site_groups_template-&gt;group, false ), 35 ) );        
</del><ins>+                return apply_filters( 'bp_get_the_site_group_description_excerpt', bp_create_excerpt( bp_get_group_description( $site_groups_template-&gt;group, false ), 25 ) );        
</ins><span class="cx">         }
</span><span class="cx"> 
</span><span class="cx"> function bp_the_site_group_date_created() {
</span><span class="lines">@@ -2096,6 +2097,74 @@
</span><span class="cx">                 return apply_filters( 'bp_get_the_site_group_type', bp_get_group_type( $site_groups_template-&gt;group ) );
</span><span class="cx">         }
</span><span class="cx"> 
</span><ins>+function bp_the_site_group_forum_topic_count( $args = '' ) {
+        echo bp_get_the_site_group_forum_topic_count( $args );
+}
+        function bp_get_the_site_group_forum_topic_count( $args = '' ) {
+                global $site_groups_template;
+
+                $defaults = array(
+                        'showtext' =&gt; false
+                );
+
+                $r = wp_parse_args( $args, $defaults );
+                extract( $r, EXTR_SKIP );
+
+                if ( !$forum_id = groups_get_groupmeta( $site_groups_template-&gt;group-&gt;id, 'forum_id' ) )
+                        return false;
+
+                if ( !function_exists( 'bp_forums_get_forum_topicpost_count' ) )
+                        return false;
+                        
+                if ( !$site_groups_template-&gt;group-&gt;forum_counts )
+                        $site_groups_template-&gt;group-&gt;forum_counts = bp_forums_get_forum_topicpost_count( (int)$forum_id );
+
+                if ( (bool) $showtext ) {
+                        if ( 1 == (int) $site_groups_template-&gt;group-&gt;forum_counts[0]-&gt;topics )
+                                $total_topics = sprintf( __( '%d topic'), (int) $site_groups_template-&gt;group-&gt;forum_counts[0]-&gt;topics );
+                        else
+                                $total_topics = sprintf( __( '%d topics'), (int) $site_groups_template-&gt;group-&gt;forum_counts[0]-&gt;topics );        
+                } else {
+                        $total_topics = (int) $site_groups_template-&gt;group-&gt;forum_counts[0]-&gt;topics;
+                }
+                
+                return apply_filters( 'bp_get_the_site_group_forum_topic_count', $total_topics, (bool)$showtext );
+        }
+
+function bp_the_site_group_forum_post_count( $args = '' ) {
+        echo bp_get_the_site_group_forum_post_count( $args );
+}
+        function bp_get_the_site_group_forum_post_count( $args = '' ) {
+                global $site_groups_template;
+                
+                $defaults = array(
+                        'showtext' =&gt; false
+                );
+
+                $r = wp_parse_args( $args, $defaults );
+                extract( $r, EXTR_SKIP );
+                
+                if ( !$forum_id = groups_get_groupmeta( $site_groups_template-&gt;group-&gt;id, 'forum_id' ) )
+                        return false;
+
+                if ( !function_exists( 'bp_forums_get_forum_topicpost_count' ) )
+                        return false;
+                        
+                if ( !$site_groups_template-&gt;group-&gt;forum_counts )
+                        $site_groups_template-&gt;group-&gt;forum_counts = bp_forums_get_forum_topicpost_count( (int)$forum_id );
+
+                if ( (bool) $showtext ) {
+                        if ( 1 == (int) $site_groups_template-&gt;group-&gt;forum_counts[0]-&gt;posts )
+                                $total_posts = sprintf( __( '%d post'), (int) $site_groups_template-&gt;group-&gt;forum_counts[0]-&gt;posts );
+                        else
+                                $total_posts = sprintf( __( '%d posts'), (int) $site_groups_template-&gt;group-&gt;forum_counts[0]-&gt;posts );        
+                } else {
+                        $total_posts = (int) $site_groups_template-&gt;group-&gt;forum_counts[0]-&gt;posts;
+                }
+                
+                return apply_filters( 'bp_get_the_site_group_forum_post_count', $total_posts, (bool)$showtext );
+        }
+
</ins><span class="cx"> function bp_the_site_group_hidden_fields() {
</span><span class="cx">         if ( isset( $_REQUEST['s'] ) ) {
</span><span class="cx">                 echo '&lt;input type=&quot;hidden&quot; id=&quot;search_terms&quot; value=&quot;' . attribute_escape( $_REQUEST['s'] ) . '&quot; name=&quot;search_terms&quot; /&gt;';
</span></span></pre></div>
<a id="trunkbpgroupsphp"></a>
<div class="modfile"><h4>Modified: trunk/bp-groups.php (1920 => 1921)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/bp-groups.php        2009-09-22 18:01:55 UTC (rev 1920)
+++ trunk/bp-groups.php        2009-09-22 20:45:43 UTC (rev 1921)
</span><span class="lines">@@ -1864,8 +1864,8 @@
</span><span class="cx">         return BP_Groups_Group::get_random( $limit, $page );
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-function groups_get_by_most_forum_posts( $limit = null, $page = 1 ) {
-        return BP_Groups_Group::get_by_most_forum_posts( $limit, $page );
</del><ins>+function groups_get_by_most_forum_topics( $limit = null, $page = 1 ) {
+        return BP_Groups_Group::get_by_most_forum_topics( $limit, $page );
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> function groups_get_user_groups( $user_id = false, $pag_num = false, $pag_page = false ) {
</span></span></pre></div>
<a id="trunkbpthemesbpdefault_inccssscreencss"></a>
<div class="modfile"><h4>Modified: trunk/bp-themes/bp-default/_inc/css/screen.css (1920 => 1921)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/bp-themes/bp-default/_inc/css/screen.css        2009-09-22 18:01:55 UTC (rev 1920)
+++ trunk/bp-themes/bp-default/_inc/css/screen.css        2009-09-22 20:45:43 UTC (rev 1921)
</span><span class="lines">@@ -830,7 +830,6 @@
</span><span class="cx">         border-bottom: 1px solid #FFE8C4;
</span><span class="cx">         display: inline-block;
</span><span class="cx">         font: normal 0.9em &quot;Lucida Grande&quot;, &quot;Lucida Sans Unicode&quot;, Tahoma, Verdana, sans-serif !important;
</span><del>-        max-width: 60%;
</del><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> div.avatar-block {
</span><span class="lines">@@ -1005,6 +1004,7 @@
</span><span class="cx"> .post p.date, .small, h3 span {
</span><span class="cx">         color: #888;
</span><span class="cx">         font-size: 0.95em;
</span><ins>+        margin: 5px 0 15px 0;
</ins><span class="cx"> }
</span><span class="cx">         .post p.date em {
</span><span class="cx">                 color: #f7740a;
</span><span class="lines">@@ -1658,6 +1658,34 @@
</span><span class="cx">                 border-width: 3px !important; 
</span><span class="cx">         }
</span><span class="cx"> 
</span><ins>+div#popular-group-forum-listing {
+        overflow: hidden;
+}
+        div#popular-group-forum-listing div.group-forum {
+                width: 47%;
+                float: left;
+                min-height: 60px;
+                background: url( ../images/message_thread_back.gif ) top left repeat-x;
+                padding: 15px 1.5%;
+        }
+                div.group-forum div.item-avatar {
+                        float: left;
+                }
+                
+                div.group-forum div.item {
+                        margin-left: 70px;
+                }
+                        div.group-forum div.item div.item-title {
+                                font-size: 1.2em;
+                                font-family: Georgia, times, serif;
+                        }
+                        
+                        div.group-forum div.desc {
+                                font-size: 0.95em;
+                                color: #888;
+                                margin-top: 5px;
+                        }
+
</ins><span class="cx"> /**** FRIENDS *****************/
</span><span class="cx"> 
</span><span class="cx"> ul#friend-list li {
</span></span></pre></div>
<a id="trunkbpthemesbpsnparentdirectoriesforumsindexphp"></a>
<div class="modfile"><h4>Modified: trunk/bp-themes/bp-sn-parent/directories/forums/index.php (1920 => 1921)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/bp-themes/bp-sn-parent/directories/forums/index.php        2009-09-22 18:01:55 UTC (rev 1920)
+++ trunk/bp-themes/bp-sn-parent/directories/forums/index.php        2009-09-22 20:45:43 UTC (rev 1921)
</span><span class="lines">@@ -8,6 +8,36 @@
</span><span class="cx">         
</span><span class="cx">                         &lt;form action=&quot;&lt;?php echo site_url() . '/' ?&gt;&quot; method=&quot;post&quot; id=&quot;forums-directory-form&quot;&gt;
</span><span class="cx"> 
</span><ins>+                                &lt;?php if ( bp_has_site_groups( 'type=most-forum-topics&amp;max=6' ) ) : ?&gt;
+
+                                        &lt;div id=&quot;popular-group-forum-listing&quot;&gt;
+                                                &lt;h3&gt;&lt;?php _e( 'Popular Group Forums', 'buddypress' ) ?&gt;&lt;/h3&gt;
+        
+                                                &lt;?php do_action( 'bp_before_directory_popular_group_forums' ) ?&gt;                
+
+                                                &lt;?php while ( bp_site_groups() ) : bp_the_site_group(); ?&gt;
+
+                                                        &lt;div class=&quot;group-forum&quot;&gt;
+                                                                &lt;div class=&quot;item-avatar&quot;&gt;
+                                                                        &lt;a href=&quot;&lt;?php bp_the_site_group_link() ?&gt;/forum/&quot;&gt;&lt;?php bp_the_site_group_avatar_thumb() ?&gt;&lt;/a&gt;
+                                                                &lt;/div&gt;
+
+                                                                &lt;div class=&quot;item&quot;&gt;
+                                                                        &lt;div class=&quot;item-title&quot;&gt;&lt;a href=&quot;&lt;?php bp_the_site_group_link() ?&gt;/forum/&quot;&gt;&lt;?php bp_the_site_group_name() ?&gt;&lt;/a&gt; (&lt;?php bp_the_site_group_forum_topic_count( 'showtext=true' ) ?&gt;, &lt;?php bp_the_site_group_forum_post_count( 'showtext=true' ) ?&gt;)&lt;/div&gt;
+                                                                        &lt;div class=&quot;item-meta desc&quot;&gt;&lt;?php bp_the_site_group_description_excerpt() ?&gt;&lt;/div&gt;
+
+                                                                        &lt;?php do_action( 'bp_directory_popular_group_forums_item' ) ?&gt;
+                                                                &lt;/div&gt;
+                                                        &lt;/div&gt;
+
+                                                &lt;?php endwhile; ?&gt;
+
+                                                &lt;?php do_action( 'bp_after_directory_popular_group_forums' ) ?&gt;                
+        
+                                        &lt;/div&gt;
+                                        
+                                &lt;?php endif; ?&gt;
+
</ins><span class="cx">                                 &lt;div id=&quot;forums-directory-listing&quot; class=&quot;directory-listing&quot;&gt;
</span><span class="cx">                                         &lt;h3&gt;&lt;?php _e( 'Latest Forum Topics', 'buddypress' ) ?&gt;&lt;/h3&gt;
</span><span class="cx">                                         
</span></span></pre></div>
<a id="trunkbpthemesbpsnparentdirectoriesgroupsgroupsloopphp"></a>
<div class="modfile"><h4>Modified: trunk/bp-themes/bp-sn-parent/directories/groups/groups-loop.php (1920 => 1921)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/bp-themes/bp-sn-parent/directories/groups/groups-loop.php        2009-09-22 18:01:55 UTC (rev 1920)
+++ trunk/bp-themes/bp-sn-parent/directories/groups/groups-loop.php        2009-09-22 20:45:43 UTC (rev 1921)
</span><span class="lines">@@ -26,7 +26,7 @@
</span><span class="cx">                                 &lt;div class=&quot;item-title&quot;&gt;&lt;a href=&quot;&lt;?php bp_the_site_group_link() ?&gt;&quot;&gt;&lt;?php bp_the_site_group_name() ?&gt;&lt;/a&gt;&lt;/div&gt;
</span><span class="cx">                                 &lt;div class=&quot;item-meta&quot;&gt;&lt;span class=&quot;activity&quot;&gt;&lt;?php bp_the_site_group_last_active() ?&gt;&lt;/span&gt;&lt;/div&gt;
</span><span class="cx"> 
</span><del>-                                &lt;div class=&quot;item-meta desc&quot;&gt;&lt;?php bp_the_site_group_description() ?&gt;&lt;/div&gt;
</del><ins>+                                &lt;div class=&quot;item-meta desc&quot;&gt;&lt;?php bp_the_site_group_description_excerpt() ?&gt;&lt;/div&gt;
</ins><span class="cx"> 
</span><span class="cx">                                 &lt;?php do_action( 'bp_directory_groups_item' ) ?&gt;
</span><span class="cx">                         &lt;/div&gt;
</span></span></pre></div>
<a id="trunkbpthemesbpsnparentdirectoriesgroupsindexphp"></a>
<div class="modfile"><h4>Modified: trunk/bp-themes/bp-sn-parent/directories/groups/index.php (1920 => 1921)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/bp-themes/bp-sn-parent/directories/groups/index.php        2009-09-22 18:01:55 UTC (rev 1920)
+++ trunk/bp-themes/bp-sn-parent/directories/groups/index.php        2009-09-22 20:45:43 UTC (rev 1921)
</span><span class="lines">@@ -104,7 +104,7 @@
</span><span class="cx">                                                         
</span><span class="cx">                                                                         &lt;div class=&quot;field-name&quot;&gt;
</span><span class="cx">                                                                                 &lt;strong&gt;&lt;?php _e( 'Description:', 'buddypress' ) ?&gt;&lt;/strong&gt;
</span><del>-                                                                                &lt;?php bp_the_site_group_description() ?&gt;
</del><ins>+                                                                                &lt;?php bp_the_site_group_description_excerpt() ?&gt;
</ins><span class="cx">                                                                         &lt;/div&gt;
</span><span class="cx">                                                                 &lt;/div&gt;
</span><span class="cx">                                                 
</span></span></pre>
</div>
</div>

</body>
</html>