Skip to:
Content

BuddyPress.org

Changeset 2702 for trunk/bp-groups.php


Ignore:
Timestamp:
02/12/2010 02:14:20 PM (16 years ago)
Author:
apeatling
Message:

Fixing up API so it is consistent for get_users, get_groups and get_blogs.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/bp-groups.php

    r2700 r2702  
    17211721/*** Group Fetching, Filtering & Searching  *************************************/
    17221722
    1723 function groups_get_all( $limit = null, $page = 1, $only_public = false, $sort_by = false, $order = false ) {
    1724     return BP_Groups_Group::get_all( $limit, $page, $only_public, $sort_by, $order );
    1725 }
    1726 
    1727 /***
    1728  * All of the following get_() functions will return groups for the site globally.
    1729  * If you pass a $user_id then the groups will be restricted to only those that the
    1730  * user has joined.
    1731  */
    1732 function groups_get_newest( $limit = null, $page = 1, $user_id = false, $search_terms = false, $populate_extras = true ) {
    1733     return BP_Groups_Group::get_newest( $limit, $page, $user_id, $search_terms, $populate_extras );
    1734 }
    1735 
    1736 function groups_get_active( $limit = null, $page = 1, $user_id = false, $search_terms = false, $populate_extras = true ) {
    1737     return BP_Groups_Group::get_active( $limit, $page, $user_id, $search_terms, $populate_extras );
    1738 }
    1739 
    1740 function groups_get_popular( $limit = null, $page = 1, $user_id = false, $search_terms = false, $populate_extras = true ) {
    1741     return BP_Groups_Group::get_popular( $limit, $page, $user_id, $search_terms, $populate_extras );
    1742 }
    1743 
    1744 function groups_get_random_groups( $limit = null, $page = 1, $user_id = false, $search_terms = false, $populate_extras = true ) {
    1745     return BP_Groups_Group::get_random( $limit, $page, $user_id, $search_terms, $populate_extras );
    1746 }
    1747 
    1748 function groups_get_alphabetically( $limit = null, $page = 1, $user_id = false, $search_terms = false, $populate_extras = true ) {
    1749     return BP_Groups_Group::get_alphabetically( $limit, $page, $user_id, $search_terms, $populate_extras );
    1750 }
    1751 
    1752 function groups_get_by_most_forum_topics( $limit = null, $page = 1, $user_id = false, $search_terms = false, $populate_extras = true ) {
    1753     return BP_Groups_Group::get_by_most_forum_topics( $limit, $page, $user_id, $search_terms, $populate_extras );
    1754 }
    1755 
    1756 function groups_get_by_most_forum_posts( $limit = null, $page = 1, $user_id = false, $search_terms = false, $populate_extras = true ) {
    1757     return BP_Groups_Group::get_by_most_forum_posts( $limit, $page, $user_id, $search_terms, $populate_extras );
     1723function groups_get_groups( $args = '' ) {
     1724    global $bp;
     1725
     1726    $defaults = array(
     1727        'type' => 'active', // active, newest, alphabetical, random, popular, most-forum-topics or most-forum-posts
     1728        'user_id' => false, // Pass a user_id to limit to only groups that this user is a member of
     1729        'search_terms' => false, // Limit to groups that match these search terms
     1730
     1731        'per_page' => 20, // The number of results to return per page
     1732        'page' => 1, // The page to return if limiting per page
     1733        'populate_extras' => true, // Fetch meta such as is_banned and is_member
     1734    );
     1735
     1736    $params = wp_parse_args( $args, $defaults );
     1737    extract( $params, EXTR_SKIP );
     1738
     1739    switch ( $type ) {
     1740        case 'active': default:
     1741            $groups = BP_Groups_Group::get_active( $limit, $page, $user_id, $search_terms, $populate_extras );
     1742            break;
     1743        case 'newest':
     1744            $groups = BP_Groups_Group::get_newest( $limit, $page, $user_id, $search_terms, $populate_extras );
     1745            break;
     1746        case 'popular':
     1747            $groups = BP_Groups_Group::get_popular( $limit, $page, $user_id, $search_terms, $populate_extras );
     1748            break;
     1749        case 'alphabetical':
     1750            $groups = BP_Groups_Group::get_alphabetically( $limit, $page, $user_id, $search_terms, $populate_extras );
     1751            break;
     1752        case 'random':
     1753            $groups = BP_Groups_Group::get_random( $limit, $page, $user_id, $search_terms, $populate_extras );
     1754            break;
     1755        case 'most-forum-topics':
     1756            $groups = BP_Groups_Group::get_by_most_forum_topics( $limit, $page, $user_id, $search_terms, $populate_extras );
     1757            break;
     1758        case 'most-forum-posts':
     1759            $groups = BP_Groups_Group::get_by_most_forum_posts( $limit, $page, $user_id, $search_terms, $populate_extras );
     1760            break;
     1761    }
     1762
     1763    return apply_filters( 'groups_get_groups', $groups, &$params );
    17581764}
    17591765
     
    17761782}
    17771783
    1778 function groups_get_recently_joined_for_user( $user_id = false, $pag_num = false, $pag_page = false, $filter = false ) {
    1779     global $bp;
    1780 
    1781     if ( !$user_id )
    1782         $user_id = $bp->displayed_user->id;
    1783 
    1784     return BP_Groups_Member::get_recently_joined( $user_id, $pag_num, $pag_page, $filter );
    1785 }
    1786 
    1787 function groups_get_user_is_admin_of( $user_id = false, $pag_num = false, $pag_page = false, $filter = false ) {
    1788     global $bp;
    1789 
    1790     if ( !$user_id )
    1791         $user_id = $bp->displayed_user->id;
    1792 
    1793     return BP_Groups_Member::get_is_admin_of( $user_id, $pag_num, $pag_page, $filter );
    1794 }
    1795 
    1796 function groups_get_user_is_mod_of( $user_id = false, $pag_num = false, $pag_page = false, $filter = false ) {
    1797     global $bp;
    1798 
    1799     if ( !$user_id )
    1800         $user_id = $bp->displayed_user->id;
    1801 
    1802     return BP_Groups_Member::get_is_mod_of( $user_id, $pag_num, $pag_page, $filter );
    1803 }
    1804 
    18051784function groups_total_groups_for_user( $user_id = false ) {
    18061785    global $bp;
     
    18151794
    18161795    return $count;
    1817 }
    1818 
    1819 function groups_search_groups( $search_terms, $pag_num_per_page = 5, $pag_page = 1, $sort_by = false, $order = false ) {
    1820     return BP_Groups_Group::search_groups( $search_terms, $pag_num_per_page, $pag_page, $sort_by, $order );
    1821 }
    1822 
    1823 function groups_filter_user_groups( $filter, $user_id = false, $order = false, $pag_num_per_page = 5, $pag_page = 1 ) {
    1824     return BP_Groups_Group::filter_user_groups( $filter, $user_id, $order, $pag_num_per_page, $pag_page );
    18251796}
    18261797
Note: See TracChangeset for help on using the changeset viewer.