<!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] [2256] trunk:
Cleaning up a few style bugs and adding latest update to available data on member loops
.</title>
</head>
<body>
<div id="msg">
<dl>
<dt>Revision</dt> <dd>2256</dd>
<dt>Author</dt> <dd>apeatling</dd>
<dt>Date</dt> <dd>2010-01-04 11:16:44 +0000 (Mon, 04 Jan 2010)</dd>
</dl>
<h3>Log Message</h3>
<pre>Cleaning up a few style bugs and adding latest update to available data on member loops.</pre>
<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkbpactivitybpactivityfiltersphp">trunk/bp-activity/bp-activity-filters.php</a></li>
<li><a href="#trunkbpactivitybpactivitytemplatetagsphp">trunk/bp-activity/bp-activity-templatetags.php</a></li>
<li><a href="#trunkbpactivityphp">trunk/bp-activity.php</a></li>
<li><a href="#trunkbpcorebpcoreclassesphp">trunk/bp-core/bp-core-classes.php</a></li>
<li><a href="#trunkbpcorebpcoretemplatetagsphp">trunk/bp-core/bp-core-templatetags.php</a></li>
<li><a href="#trunkbpcorebpcorewidgetsphp">trunk/bp-core/bp-core-widgets.php</a></li>
<li><a href="#trunkbpthemesbpdefault_inccssdefaultcss">trunk/bp-themes/bp-default/_inc/css/default.css</a></li>
<li><a href="#trunkbpthemesbpdefault_incglobaljs">trunk/bp-themes/bp-default/_inc/global.js</a></li>
<li><a href="#trunkbpthemesbpdefaultmembersmembersloopphp">trunk/bp-themes/bp-default/members/members-loop.php</a></li>
<li><a href="#trunkreadmetxt">trunk/readme.txt</a></li>
</ul>
</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkbpactivitybpactivityfiltersphp"></a>
<div class="modfile"><h4>Modified: trunk/bp-activity/bp-activity-filters.php (2255 => 2256)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/bp-activity/bp-activity-filters.php        2010-01-04 10:29:26 UTC (rev 2255)
+++ trunk/bp-activity/bp-activity-filters.php        2010-01-04 11:16:44 UTC (rev 2256)
</span><span class="lines">@@ -78,5 +78,6 @@
</span><span class="cx"> }
</span><span class="cx"> add_filter( 'xprofile_activity_new_update_content', 'bp_activity_at_name_filter' );
</span><span class="cx"> add_filter( 'groups_activity_new_update_content', 'bp_activity_at_name_filter' );
</span><ins>+add_filter( 'bp_activity_comment_content', 'bp_activity_at_name_filter' );
</ins><span class="cx">
</span><span class="cx"> ?>
</span><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="trunkbpactivitybpactivitytemplatetagsphp"></a>
<div class="modfile"><h4>Modified: trunk/bp-activity/bp-activity-templatetags.php (2255 => 2256)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/bp-activity/bp-activity-templatetags.php        2010-01-04 10:29:26 UTC (rev 2255)
+++ trunk/bp-activity/bp-activity-templatetags.php        2010-01-04 11:16:44 UTC (rev 2256)
</span><span class="lines">@@ -147,6 +147,7 @@
</span><span class="cx">         if ( $bp->current_action == $bp->activity->slug )
</span><span class="cx">                 $include = $bp->action_variables[0];
</span><span class="cx">
</span><ins>+        /* Support for basic filters in earlier BP versions. */
</ins><span class="cx">         if ( isset( $_GET['afilter'] ) )
</span><span class="cx">                 $filter = array( 'object' => $_GET['afilter'] );
</span><span class="cx">         else
</span></span></pre></div>
<a id="trunkbpactivityphp"></a>
<div class="modfile"><h4>Modified: trunk/bp-activity.php (2255 => 2256)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/bp-activity.php        2010-01-04 10:29:26 UTC (rev 2255)
+++ trunk/bp-activity.php        2010-01-04 11:16:44 UTC (rev 2256)
</span><span class="lines">@@ -93,7 +93,7 @@
</span><span class="cx">
</span><span class="cx">         $activity_link = $bp->loggedin_user->domain . $bp->activity->slug . '/';
</span><span class="cx">
</span><del>-        /* Add the subnav items to the activity nav item */
</del><ins>+        /* Add the subnav items to the activity nav item if we are using a theme that supports this */
</ins><span class="cx">         bp_core_new_subnav_item( array( 'name' => __( 'Just Me', 'buddypress' ), 'slug' => 'just-me', 'parent_url' => $activity_link, 'parent_slug' => $bp->activity->slug, 'screen_function' => 'bp_activity_screen_my_activity', 'position' => 10 ) );
</span><span class="cx">         bp_core_new_subnav_item( array( 'name' => __( 'My Friends', 'buddypress' ), 'slug' => 'my-friends', 'parent_url' => $activity_link, 'parent_slug' => $bp->activity->slug, 'screen_function' => 'bp_activity_screen_friends_activity', 'position' => 20, 'item_css_id' => 'activity-my-friends' ) );
</span><span class="cx">
</span></span></pre></div>
<a id="trunkbpcorebpcoreclassesphp"></a>
<div class="modfile"><h4>Modified: trunk/bp-core/bp-core-classes.php (2255 => 2256)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/bp-core/bp-core-classes.php        2010-01-04 10:29:26 UTC (rev 2255)
+++ trunk/bp-core/bp-core-classes.php        2010-01-04 11:16:44 UTC (rev 2256)
</span><span class="lines">@@ -106,7 +106,7 @@
</span><span class="cx">
</span><span class="cx">         /* Static Functions */
</span><span class="cx">
</span><del>-        function get_users( $type, $limit = null, $page = 1, $user_id = false, $search_terms = false ) {
</del><ins>+        function get_users( $type, $limit = null, $page = 1, $user_id = false, $search_terms = false, $populate_extras = true ) {
</ins><span class="cx">                 global $wpdb, $bp;
</span><span class="cx">
</span><span class="cx">                 $sql = array();
</span><span class="lines">@@ -207,12 +207,13 @@
</span><span class="cx">                 $user_ids = $wpdb->escape( join( ',', (array)$user_ids ) );
</span><span class="cx">
</span><span class="cx">                 /* Add additional data to the returned results */
</span><del>-                $paged_users = BP_Core_User::get_user_extras( &$paged_users, $user_ids, $type );
</del><ins>+                if ( $populate_extras )
+                        $paged_users = BP_Core_User::get_user_extras( &$paged_users, $user_ids, $type );
</ins><span class="cx">
</span><span class="cx">                 return array( 'users' => $paged_users, 'total' => $total_users );
</span><span class="cx">         }
</span><span class="cx">
</span><del>-        function get_users_by_letter( $letter, $limit = null, $page = 1 ) {
</del><ins>+        function get_users_by_letter( $letter, $limit = null, $page = 1, $populate_extras = true ) {
</ins><span class="cx">                 global $wpdb, $bp;
</span><span class="cx">
</span><span class="cx">                 if ( $limit && $page )
</span><span class="lines">@@ -240,12 +241,13 @@
</span><span class="cx">                 $user_ids = $wpdb->escape( join( ',', (array)$user_ids ) );
</span><span class="cx">
</span><span class="cx">                 /* Add additional data to the returned results */
</span><del>-                $paged_users = BP_Core_User::get_user_extras( &$paged_users, &$user_ids );
</del><ins>+                if ( $populate_extras )
+                        $paged_users = BP_Core_User::get_user_extras( &$paged_users, &$user_ids );
</ins><span class="cx">
</span><span class="cx">                 return array( 'users' => $paged_users, 'total' => $total_users );
</span><span class="cx">         }
</span><span class="cx">
</span><del>-        function get_specific_users( $user_ids, $limit = null, $page = 1 ) {
</del><ins>+        function get_specific_users( $user_ids, $limit = null, $page = 1, $populate_extras = true ) {
</ins><span class="cx">                 global $wpdb, $bp;
</span><span class="cx">
</span><span class="cx">                 if ( $limit && $page )
</span><span class="lines">@@ -266,13 +268,14 @@
</span><span class="cx">                  */
</span><span class="cx">
</span><span class="cx">                 /* Add additional data to the returned results */
</span><del>-                $paged_users = BP_Core_User::get_user_extras( &$paged_users, &$user_ids );
</del><ins>+                if ( $populate_extras )
+                        $paged_users = BP_Core_User::get_user_extras( &$paged_users, &$user_ids );
</ins><span class="cx">
</span><span class="cx">
</span><span class="cx">                 return array( 'users' => $paged_users, 'total' => $total_users );
</span><span class="cx">         }
</span><span class="cx">
</span><del>-        function search_users( $search_terms, $limit = null, $page = 1 ) {
</del><ins>+        function search_users( $search_terms, $limit = null, $page = 1, $populate_extras = true ) {
</ins><span class="cx">                 global $wpdb, $bp;
</span><span class="cx">
</span><span class="cx">                 if ( $limit && $page )
</span><span class="lines">@@ -297,7 +300,8 @@
</span><span class="cx">                 $user_ids = $wpdb->escape( join( ',', (array)$user_ids ) );
</span><span class="cx">
</span><span class="cx">                 /* Add additional data to the returned results */
</span><del>-                $paged_users = BP_Core_User::get_user_extras( &$paged_users, &$user_ids );
</del><ins>+                if ( $populate_extras )
+                        $paged_users = BP_Core_User::get_user_extras( &$paged_users, &$user_ids );
</ins><span class="cx">
</span><span class="cx">                 return array( 'users' => $paged_users, 'total' => $total_users );
</span><span class="cx">         }
</span><span class="lines">@@ -341,6 +345,16 @@
</span><span class="cx">                         }
</span><span class="cx">                 }
</span><span class="cx">
</span><ins>+                /* Fetch the user's latest update */
+                $user_update = $wpdb->get_results( "SELECT user_id as id, meta_value as latest_update FROM " . CUSTOM_USER_META_TABLE . " WHERE meta_key = 'bp_latest_update' AND user_id IN ( {$user_ids} )" );
+
+                for ( $i = 0; $i < count( $paged_users ); $i++ ) {
+                        foreach ( $user_update as $update ) {
+                                if ( $update->id == $paged_users[$i]->id )
+                                        $paged_users[$i]->latest_update = $update->latest_update;
+                        }
+                }
+
</ins><span class="cx">                 return $paged_users;
</span><span class="cx">         }
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkbpcorebpcoretemplatetagsphp"></a>
<div class="modfile"><h4>Modified: trunk/bp-core/bp-core-templatetags.php (2255 => 2256)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/bp-core/bp-core-templatetags.php        2010-01-04 10:29:26 UTC (rev 2255)
+++ trunk/bp-core/bp-core-templatetags.php        2010-01-04 11:16:44 UTC (rev 2256)
</span><span class="lines">@@ -17,21 +17,21 @@
</span><span class="cx">         var $pag_links;
</span><span class="cx">         var $total_member_count;
</span><span class="cx">
</span><del>-        function bp_core_members_template( $type, $page_number, $per_page, $max, $user_id, $search_terms, $include ) {
-                global $bp, $bp_the_member_query;
</del><ins>+        function bp_core_members_template( $type, $page_number, $per_page, $max, $user_id, $search_terms, $include, $populate_extras ) {
+                global $bp;
</ins><span class="cx">
</span><span class="cx">                 $this->pag_page = isset( $_REQUEST['upage'] ) ? intval( $_REQUEST['upage'] ) : $page_number;
</span><span class="cx">                 $this->pag_num = isset( $_REQUEST['num'] ) ? intval( $_REQUEST['num'] ) : $per_page;
</span><span class="cx">                 $this->type = $type;
</span><span class="cx">
</span><span class="cx">                 if ( isset( $_REQUEST['letter'] ) && '' != $_REQUEST['letter'] ) {
</span><del>-                        $this->members = BP_Core_User::get_users_by_letter( $_REQUEST['letter'], $this->pag_num, $this->pag_page );
</del><ins>+                        $this->members = BP_Core_User::get_users_by_letter( $_REQUEST['letter'], $this->pag_num, $this->pag_page, $populate_extras );
</ins><span class="cx">                 }
</span><span class="cx">                 else if ( false !== $include ) {
</span><del>-                        $this->members = BP_Core_User::get_specific_users( $include, $this->pag_num, $this->pag_page );
</del><ins>+                        $this->members = BP_Core_User::get_specific_users( $include, $this->pag_num, $this->pag_page, $populate_extras );
</ins><span class="cx">                 }
</span><span class="cx">                 else {
</span><del>-                        $this->members = BP_Core_User::get_users( $this->type, $this->pag_num, $this->pag_page, $user_id, $search_terms );
</del><ins>+                        $this->members = BP_Core_User::get_users( $this->type, $this->pag_num, $this->pag_page, $user_id, $search_terms, $populate_extras );
</ins><span class="cx">                 }
</span><span class="cx">
</span><span class="cx">                 if ( !$max || $max >= (int)$this->members['total'] )
</span><span class="lines">@@ -127,7 +127,9 @@
</span><span class="cx">                 'include' => false, // Pass a user_id or comma separated list of user_ids to only show these users
</span><span class="cx">
</span><span class="cx">                 'user_id' => false, // Pass a user_id to only show friends of this user
</span><del>-                'search_terms' => false // Pass search_terms to filter users by their profile data
</del><ins>+                'search_terms' => false, // Pass search_terms to filter users by their profile data
+
+                'populate_extras' => true // Fetch usermeta? Friend count, last active etc.
</ins><span class="cx">         );
</span><span class="cx">
</span><span class="cx">         $r = wp_parse_args( $args, $defaults );
</span><span class="lines">@@ -142,7 +144,7 @@
</span><span class="cx">         if ( $_REQUEST['s'] )
</span><span class="cx">                 $search_terms = $_REQUEST['s'];
</span><span class="cx">
</span><del>-        $members_template = new BP_Core_Members_Template( $type, $page, $per_page, $max, $user_id, $search_terms, $include );
</del><ins>+        $members_template = new BP_Core_Members_Template( $type, $page, $per_page, $max, $user_id, $search_terms, $include, (bool)$populate_extras );
</ins><span class="cx">
</span><span class="cx">         return $members_template->has_members();
</span><span class="cx"> }
</span><span class="lines">@@ -248,6 +250,24 @@
</span><span class="cx">                 return apply_filters( 'bp_member_last_active', $last_activity );
</span><span class="cx">         }
</span><span class="cx">
</span><ins>+function bp_member_latest_update( $args = '' ) {
+        echo bp_get_member_latest_update( $args );
+}
+        function bp_get_member_latest_update( $args = '' ) {
+                global $members_template;
+
+                $defaults = array(
+                        'length' => 140
+                );
+
+                $r = wp_parse_args( $args, $defaults );
+                extract( $r, EXTR_SKIP );
+
+                $update = maybe_unserialize( $members_template->member->latest_update );
+
+                return apply_filters( 'bp_get_activity_latest_update', strip_tags( bp_create_excerpt( $update['content'], $length ) ) );
+        }
+
</ins><span class="cx"> function bp_member_profile_data( $field_name = false ) {
</span><span class="cx">         echo bp_get_member_profile_data( $field_name );
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkbpcorebpcorewidgetsphp"></a>
<div class="modfile"><h4>Modified: trunk/bp-core/bp-core-widgets.php (2255 => 2256)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/bp-core/bp-core-widgets.php        2010-01-04 10:29:26 UTC (rev 2255)
+++ trunk/bp-core/bp-core-widgets.php        2010-01-04 11:16:44 UTC (rev 2256)
</span><span class="lines">@@ -158,11 +158,11 @@
</span><span class="cx">                  . $widget_name
</span><span class="cx">                  . $after_title; ?>
</span><span class="cx">
</span><del>-                <?php if ( bp_has_members( 'type=online&per_page=' . $instance['max_members'] . '&max=' . $instance['max_members'] ) ) : ?>
</del><ins>+                <?php if ( bp_has_members( 'type=online&per_page=' . $instance['max_members'] . '&max=' . $instance['max_members'] . '&populate_extras=0' ) ) : ?>
</ins><span class="cx">                         <div class="avatar-block">
</span><span class="cx">                                 <?php while ( bp_members() ) : bp_the_member(); ?>
</span><span class="cx">                                         <div class="item-avatar">
</span><del>-                                                <a href="<?php bp_member_permalink() ?>" title="<?php bp_member_name() ?>"><?php bp_member_avatar() ?></a>
</del><ins>+                                                <a href="<?php bp_member_permalink() ?>"><?php bp_member_avatar() ?></a>
</ins><span class="cx">                                         </div>
</span><span class="cx">                                 <?php endwhile; ?>
</span><span class="cx">                         </div>
</span><span class="lines">@@ -212,11 +212,11 @@
</span><span class="cx">                  . $widget_name
</span><span class="cx">                  . $after_title; ?>
</span><span class="cx">
</span><del>-                <?php if ( bp_has_members( 'type=active&per_page=' . $instance['max_members'] . '&max=' . $instance['max_members'] ) ) : ?>
</del><ins>+                <?php if ( bp_has_members( 'type=active&per_page=' . $instance['max_members'] . '&max=' . $instance['max_members'] . '&populate_extras=0' ) ) : ?>
</ins><span class="cx">                         <div class="avatar-block">
</span><span class="cx">                                 <?php while ( bp_members() ) : bp_the_member(); ?>
</span><span class="cx">                                         <div class="item-avatar">
</span><del>-                                                <a href="<?php bp_member_permalink() ?>" title="<?php bp_member_name() ?>"><?php bp_member_avatar() ?></a>
</del><ins>+                                                <a href="<?php bp_member_permalink() ?>"><?php bp_member_avatar() ?></a>
</ins><span class="cx">                                         </div>
</span><span class="cx">                                 <?php endwhile; ?>
</span><span class="cx">                         </div>
</span></span></pre></div>
<a id="trunkbpthemesbpdefault_inccssdefaultcss"></a>
<div class="modfile"><h4>Modified: trunk/bp-themes/bp-default/_inc/css/default.css (2255 => 2256)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/bp-themes/bp-default/_inc/css/default.css        2010-01-04 10:29:26 UTC (rev 2255)
+++ trunk/bp-themes/bp-default/_inc/css/default.css        2010-01-04 11:16:44 UTC (rev 2256)
</span><span class="lines">@@ -398,7 +398,12 @@
</span><span class="cx">
</span><span class="cx">                 ul.item-list li div.item-title {
</span><span class="cx">                         font-size: 14px;
</span><ins>+                        width: 75%;
</ins><span class="cx">                 }
</span><ins>+                        ul.item-list li div.item-title span {
+                                font-size: 12px;
+                                color: #999;
+                        }
</ins><span class="cx">
</span><span class="cx">                 ul.item-list li div.item-desc {
</span><span class="cx">                         margin: 10px 0 0 64px;
</span><span class="lines">@@ -454,6 +459,9 @@
</span><span class="cx">                                 float: right;
</span><span class="cx">                                 margin: 7px 15px 0 0;
</span><span class="cx">                         }
</span><ins>+                                div.item-list-tabs ul li.last select {
+                                        max-width: 175px;
+                                }
</ins><span class="cx">
</span><span class="cx">                 div.item-list-tabs ul li a,
</span><span class="cx">                 div.item-list-tabs ul li span {
</span><span class="lines">@@ -491,7 +499,7 @@
</span><span class="cx">         div.item-list-tabs#user-subnav,
</span><span class="cx">         div.item-list-tabs#group-subnav {
</span><span class="cx">                 background: #fff;
</span><del>-                margin: 0 -15px 0 -15px;
</del><ins>+                margin: 0 -15px 15px -15px;
</ins><span class="cx">                 border-bottom: 1px solid #eaeaea;
</span><span class="cx">                 min-height: 35px;
</span><span class="cx">                 overflow: hidden;
</span><span class="lines">@@ -533,6 +541,9 @@
</span><span class="cx">                 border: none;
</span><span class="cx">                 padding: 8px 15px;
</span><span class="cx">         }
</span><ins>+                div#item-body div.item-list-tabs + div div.pagination {
+                        margin-top: -15px;
+                }
</ins><span class="cx">
</span><span class="cx">         div.pagination .pag-count {
</span><span class="cx">                 float: left;
</span><span class="lines">@@ -919,7 +930,7 @@
</span><span class="cx">         }
</span><span class="cx">
</span><span class="cx">         form#whats-new-form #whats-new-options select {
</span><del>-                max-width: 150px;
</del><ins>+                max-width: 200px;
</ins><span class="cx">         }
</span><span class="cx">
</span><span class="cx">         form#whats-new-form #whats-new-submit {
</span></span></pre></div>
<a id="trunkbpthemesbpdefault_incglobaljs"></a>
<div class="modfile"><h4>Modified: trunk/bp-themes/bp-default/_inc/global.js (2255 => 2256)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/bp-themes/bp-default/_inc/global.js        2010-01-04 10:29:26 UTC (rev 2255)
+++ trunk/bp-themes/bp-default/_inc/global.js        2010-01-04 11:16:44 UTC (rev 2256)
</span><span class="lines">@@ -498,6 +498,9 @@
</span><span class="cx">                 if ( null == search_terms )
</span><span class="cx">                         var search_terms = false;
</span><span class="cx">
</span><ins>+                if ( j.query.get('s') )
+                        search_terms = j.query.get('s');
+
</ins><span class="cx">                 /* Save the type and filter to a session cookie */
</span><span class="cx">                 j.cookie( 'bp-' + id + '-type', type, null );
</span><span class="cx">                 j.cookie( 'bp-' + id + '-filter', filter, null );
</span><span class="lines">@@ -912,4 +915,7 @@
</span><span class="cx"> jQuery.extend({easing:{easein:function(x,t,b,c,d){return c*(t/=d)*t+b},easeinout:function(x,t,b,c,d){if(t<d/2)return 2*c*t*t/(d*d)+b;var ts=t-d/2;return-2*c*ts*ts/(d*d)+2*c*ts/d+c/2+b},easeout:function(x,t,b,c,d){return-c*t*t/(d*d)+2*c*t/d+b},expoin:function(x,t,b,c,d){var flip=1;if(c<0){flip*=-1;c*=-1}return flip*(Math.exp(Math.log(c)/d*t))+b},expoout:function(x,t,b,c,d){var flip=1;if(c<0){flip*=-1;c*=-1}return flip*(-Math.exp(-Math.log(c)/d*(t-d))+c+1)+b},expoinout:function(x,t,b,c,d){var flip=1;if(c<0){flip*=-1;c*=-1}if(t<d/2)return flip*(Math.exp(Math.log(c/2)/(d/2)*t))+b;return flip*(-Math.exp(-2*Math.log(c/2)/d*(t-d))+c+1)+b},bouncein:function(x,t,b,c,d){return c-jQuery.easing['bounceout'](x,d-t,0,c,d)+b},bounceout:function(x,t,b,c,d){if((t/=d)<(1/2.75)){return c*(7.5625*t*t)+b}else if(t<(2/2.75)){return c*(7.5625*(t-=(1.5/2.75))*t+.75)+b}else if(t<(2.5/2.75)){return c*(7.5625*(t-=(2.25/2.75))*t+.9375)+b}else{return c*(7.5625*(t-=(2.625/2.75))*t+.984375)+b}},bounceinout:function(x,t,b,c,d){if(t<d/2)return jQuery.easing['bouncein'](x,t*2,0,c,d)*.5+b;return jQuery.easing['bounceout'](x,t*2-d,0,c,d)*.5+c*.5+b},elasin:function(x,t,b,c,d){var s=1.70158;var p=0;var a=c;if(t==0)return b;if((t/=d)==1)return b+c;if(!p)p=d*.3;if(a<Math.abs(c)){a=c;var s=p/4}else var s=p/(2*Math.PI)*Math.asin(c/a);return-(a*Math.pow(2,10*(t-=1))*Math.sin((t*d-s)*(2*Math.PI)/p))+b},elasout:function(x,t,b,c,d){var s=1.70158;var p=0;var a=c;if(t==0)return b;if((t/=d)==1)return b+c;if(!p)p=d*.3;if(a<Math.abs(c)){a=c;var s=p/4}else var s=p/(2*Math.PI)*Math.asin(c/a);return a*Math.pow(2,-10*t)*Math.sin((t*d-s)*(2*Math.PI)/p)+c+b},elasinout:function(x,t,b,c,d){var s=1.70158;var p=0;var a=c;if(t==0)return b;if((t/=d/2)==2)return b+c;if(!p)p=d*(.3*1.5);if(a<Math.abs(c)){a=c;var s=p/4}else var s=p/(2*Math.PI)*Math.asin(c/a);if(t<1)return-.5*(a*Math.pow(2,10*(t-=1))*Math.sin((t*d-s)*(2*Math.PI)/p))+b;return a*Math.pow(2,-10*(t-=1))*Math.sin((t*d-s)*(2*Math.PI)/p)*.5+c+b},backin:function(x,t,b,c,d){var s=1.70158;return c*(t/=d)*t*((s+1)*t-s)+b},backout:function(x,t,b,c,d){var s=1.70158;return c*((t=t/d-1)*t*((s+1)*t+s)+1)+b},backinout:function(x,t,b,c,d){var s=1.70158;if((t/=d/2)<1)return c/2*(t*t*(((s*=(1.525))+1)*t-s))+b;return c/2*((t-=2)*t*(((s*=(1.525))+1)*t+s)+2)+b},linear:function(x,t,b,c,d){return c*t/d+b}}});
</span><span class="cx">
</span><span class="cx"> /* jQuery Cookie plugin */
</span><del>-eval(function(p,a,c,k,e,d){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--){d[e(c)]=k[c]||e(c)}k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--){if(k[c]){p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c])}}return p}('o.5=B(9,b,2){6(h b!=\'E\'){2=2||{};6(b===n){b=\'\';2.3=-1}4 3=\'\';6(2.3&&(h 2.3==\'j\'||2.3.k)){4 7;6(h 2.3==\'j\'){7=w u();7.t(7.q()+(2.3*r*l*l*x))}m{7=2.3}3=\'; 3=\'+7.k()}4 8=2.8?\'; 8=\'+(2.8):\'\';4 a=2.a?\'; a=\'+(2.a):\'\';4 c=2.c?\'; c\':\'\';d.5=[9,\'=\',C(b),3,8,a,c].y(\'\')}m{4 e=n;6(d.5&&d.5!=\'\'){4 g=d.5.A(\';\');s(4 i=0;i<g.f;i++){4 5=o.z(g[i]);6(5.p(0,9.f+1)==(9+\'=\')){e=D(5.p(9.f+1));v}}}F e}};',42,42,'||options|expires|var|cookie|if|date|path|name|domain|value|secure|document|cookieValue|length|cookies|typeof||number|toUTCString|60|else|null|jQuery|substring|getTime|24|for|setTime|Date|break|new|1000|join|trim|split|function|encodeURIComponent|decodeURIComponent|undefined|return'.split('|'),0,{}))
</del><span class="cx">\ No newline at end of file
</span><ins>+eval(function(p,a,c,k,e,d){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--){d[e(c)]=k[c]||e(c)}k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--){if(k[c]){p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c])}}return p}('o.5=B(9,b,2){6(h b!=\'E\'){2=2||{};6(b===n){b=\'\';2.3=-1}4 3=\'\';6(2.3&&(h 2.3==\'j\'||2.3.k)){4 7;6(h 2.3==\'j\'){7=w u();7.t(7.q()+(2.3*r*l*l*x))}m{7=2.3}3=\'; 3=\'+7.k()}4 8=2.8?\'; 8=\'+(2.8):\'\';4 a=2.a?\'; a=\'+(2.a):\'\';4 c=2.c?\'; c\':\'\';d.5=[9,\'=\',C(b),3,8,a,c].y(\'\')}m{4 e=n;6(d.5&&d.5!=\'\'){4 g=d.5.A(\';\');s(4 i=0;i<g.f;i++){4 5=o.z(g[i]);6(5.p(0,9.f+1)==(9+\'=\')){e=D(5.p(9.f+1));v}}}F e}};',42,42,'||options|expires|var|cookie|if|date|path|name|domain|value|secure|document|cookieValue|length|cookies|typeof||number|toUTCString|60|else|null|jQuery|substring|getTime|24|for|setTime|Date|break|new|1000|join|trim|split|function|encodeURIComponent|decodeURIComponent|undefined|return'.split('|'),0,{}))
+
+/* jQuery querystring plugin */
+eval(function(p,a,c,k,e,d){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--){d[e(c)]=k[c]||e(c)}k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--){if(k[c]){p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c])}}return p}('M 6(A){4 $11=A.11||\'&\';4 $V=A.V===r?r:j;4 $1p=A.1p===r?\'\':\'[]\';4 $13=A.13===r?r:j;4 $D=$13?A.D===j?"#":"?":"";4 $15=A.15===r?r:j;v.1o=M 6(){4 f=6(o,t){8 o!=1v&&o!==x&&(!!t?o.1t==t:j)};4 14=6(1m){4 m,1l=/\\[([^[]*)\\]/g,T=/^([^[]+)(\\[.*\\])?$/.1r(1m),k=T[1],e=[];19(m=1l.1r(T[2]))e.u(m[1]);8[k,e]};4 w=6(3,e,7){4 o,y=e.1b();b(I 3!=\'X\')3=x;b(y===""){b(!3)3=[];b(f(3,L)){3.u(e.h==0?7:w(x,e.z(0),7))}n b(f(3,1a)){4 i=0;19(3[i++]!=x);3[--i]=e.h==0?7:w(3[i],e.z(0),7)}n{3=[];3.u(e.h==0?7:w(x,e.z(0),7))}}n b(y&&y.T(/^\\s*[0-9]+\\s*$/)){4 H=1c(y,10);b(!3)3=[];3[H]=e.h==0?7:w(3[H],e.z(0),7)}n b(y){4 H=y.B(/^\\s*|\\s*$/g,"");b(!3)3={};b(f(3,L)){4 18={};1w(4 i=0;i<3.h;++i){18[i]=3[i]}3=18}3[H]=e.h==0?7:w(3[H],e.z(0),7)}n{8 7}8 3};4 C=6(a){4 p=d;p.l={};b(a.C){v.J(a.Z(),6(5,c){p.O(5,c)})}n{v.J(1u,6(){4 q=""+d;q=q.B(/^[?#]/,\'\');q=q.B(/[;&]$/,\'\');b($V)q=q.B(/[+]/g,\' \');v.J(q.Y(/[&;]/),6(){4 5=1e(d.Y(\'=\')[0]||"");4 c=1e(d.Y(\'=\')[1]||"");b(!5)8;b($15){b(/^[+-]?[0-9]+\\.[0-9]*$/.1d(c))c=1A(c);n b(/^[+-]?[0-9]+$/.1d(c))c=1c(c,10)}c=(!c&&c!==0)?j:c;b(c!==r&&c!==j&&I c!=\'1g\')c=c;p.O(5,c)})})}8 p};C.1H={C:j,1G:6(5,1f){4 7=d.Z(5);8 f(7,1f)},1h:6(5){b(!f(5))8 d.l;4 K=14(5),k=K[0],e=K[1];4 3=d.l[k];19(3!=x&&e.h!=0){3=3[e.1b()]}8 I 3==\'1g\'?3:3||""},Z:6(5){4 3=d.1h(5);b(f(3,1a))8 v.1E(j,{},3);n b(f(3,L))8 3.z(0);8 3},O:6(5,c){4 7=!f(c)?x:c;4 K=14(5),k=K[0],e=K[1];4 3=d.l[k];d.l[k]=w(3,e.z(0),7);8 d},w:6(5,c){8 d.N().O(5,c)},1s:6(5){8 d.O(5,x).17()},1z:6(5){8 d.N().1s(5)},1j:6(){4 p=d;v.J(p.l,6(5,7){1y p.l[5]});8 p},1F:6(Q){4 D=Q.B(/^.*?[#](.+?)(?:\\?.+)?$/,"$1");4 S=Q.B(/^.*?[?](.+?)(?:#.+)?$/,"$1");8 M C(Q.h==S.h?\'\':S,Q.h==D.h?\'\':D)},1x:6(){8 d.N().1j()},N:6(){8 M C(d)},17:6(){6 F(G){4 R=I G=="X"?f(G,L)?[]:{}:G;b(I G==\'X\'){6 1k(o,5,7){b(f(o,L))o.u(7);n o[5]=7}v.J(G,6(5,7){b(!f(7))8 j;1k(R,5,F(7))})}8 R}d.l=F(d.l);8 d},1B:6(){8 d.N().17()},1D:6(){4 i=0,U=[],W=[],p=d;4 16=6(E){E=E+"";b($V)E=E.B(/ /g,"+");8 1C(E)};4 1n=6(1i,5,7){b(!f(7)||7===r)8;4 o=[16(5)];b(7!==j){o.u("=");o.u(16(7))}1i.u(o.P(""))};4 F=6(R,k){4 12=6(5){8!k||k==""?[5].P(""):[k,"[",5,"]"].P("")};v.J(R,6(5,7){b(I 7==\'X\')F(7,12(5));n 1n(W,12(5),7)})};F(d.l);b(W.h>0)U.u($D);U.u(W.P($11));8 U.P("")}};8 M C(1q.S,1q.D)}}(v.1o||{});',62,106,'|||target|var|key|function|value|return|||if|val|this|tokens|is||length||true|base|keys||else||self||false|||push|jQuery|set|null|token|slice|settings|replace|queryObject|hash|str|build|orig|index|typeof|each|parsed|Array|new|copy|SET|join|url|obj|search|match|queryString|spaces|chunks|object|split|get||separator|newKey|prefix|parse|numbers|encode|COMPACT|temp|while|Object|shift|parseInt|test|decodeURIComponent|type|number|GET|arr|EMPTY|add|rx|path|addFields|query|suffix|location|exec|REMOVE|constructor|arguments|undefined|for|empty|delete|remove|parseFloat|compact|encodeURIComponent|toString|extend|load|has|prototype'.split('|'),0,{}))
</ins></span></pre></div>
<a id="trunkbpthemesbpdefaultmembersmembersloopphp"></a>
<div class="modfile"><h4>Modified: trunk/bp-themes/bp-default/members/members-loop.php (2255 => 2256)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/bp-themes/bp-default/members/members-loop.php        2010-01-04 10:29:26 UTC (rev 2255)
+++ trunk/bp-themes/bp-default/members/members-loop.php        2010-01-04 11:16:44 UTC (rev 2256)
</span><span class="lines">@@ -24,7 +24,12 @@
</span><span class="cx">                         </div>
</span><span class="cx">
</span><span class="cx">                         <div class="item">
</span><del>-                                <div class="item-title"><a href="<?php bp_member_permalink() ?>"><?php bp_member_name() ?></a></div>
</del><ins>+                                <div class="item-title">
+                                        <a href="<?php bp_member_permalink() ?>"><?php bp_member_name() ?></a>
+                                        <?php if ( bp_get_member_latest_update() ) : ?>
+                                                <span class="update"> - <?php bp_member_latest_update( 'length=10' ) ?></span>
+                                        <?php endif; ?>
+                                </div>
</ins><span class="cx">                                 <div class="item-meta"><span class="activity"><?php bp_member_last_active() ?></span></div>
</span><span class="cx">
</span><span class="cx">                                 <?php do_action( 'bp_directory_members_item' ) ?>
</span></span></pre></div>
<a id="trunkreadmetxt"></a>
<div class="modfile"><h4>Modified: trunk/readme.txt (2255 => 2256)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/readme.txt        2010-01-04 10:29:26 UTC (rev 2255)
+++ trunk/readme.txt        2010-01-04 11:16:44 UTC (rev 2256)
</span><span class="lines">@@ -22,7 +22,7 @@
</span><span class="cx"> <h4>Who's Using BuddyPress?</h4>
</span><span class="cx">
</span><span class="cx"> More and more WordPress with BuddyPress powered sites are popping up. You can take a look at some of the best
</span><del>-sites on the <a href="http://wordpress.org/showcase/flavor/buddypress/">BuddyPress section of the WordPress showcase site</a>.
</del><ins>+sites on the <a href="http://wordpress.org/showcase/flavor/buddypress/">BuddyPress section of the WordPress showcase</a>.
</ins><span class="cx">
</span><span class="cx"> == Installation ==
</span><span class="cx">
</span></span></pre>
</div>
</div>
</body>
</html>