Skip to:
Content

BuddyPress.org

Ticket #1150: 1150.001.2.diff

File 1150.001.2.diff, 3.9 KB (added by cnorris23, 9 years ago)
  • bp-themes/bp-default/groups/index.php

     
    1818
    1919                <form action="" method="post" id="groups-directory-form" class="dir-form">
    2020
    21                         <h3><?php _e( 'Groups Directory', 'buddypress' ); ?><?php if ( is_user_logged_in() ) : ?> &nbsp;<a class="button" href="<?php echo trailingslashit( bp_get_root_domain() . '/' . bp_get_groups_root_slug() . '/create' ); ?>"><?php _e( 'Create a Group', 'buddypress' ); ?></a><?php endif; ?></h3>
     21                        <h3><?php _e( 'Groups Directory', 'buddypress' ); ?><?php if ( is_user_logged_in() && bp_user_can_create_groups() ) : ?> &nbsp;<a class="button" href="<?php echo trailingslashit( bp_get_root_domain() . '/' . bp_get_groups_root_slug() . '/create' ); ?>"><?php _e( 'Create a Group', 'buddypress' ); ?></a><?php endif; ?></h3>
    2222
    2323                        <div id="group-dir-search" class="dir-search" role="search">
    2424
     
    2626
    2727                        </div><!-- #group-dir-search -->
    2828
     29                        <?php do_action( 'template_notices' ); ?>
     30
    2931                        <div class="item-list-tabs" role="navigation">
    3032                                <ul>
    3133                                        <li class="selected" id="groups-all"><a href="<?php echo trailingslashit( bp_get_root_domain() . '/' . bp_get_groups_root_slug() ); ?>"><?php printf( __( 'All Groups (%s)', 'buddypress' ), bp_get_total_group_count() ); ?></a></li>
  • bp-core/admin/bp-core-admin.php

     
    183183
    184184                                        <?php endif; ?>
    185185
     186                                        <?php if ( bp_is_active( 'groups' ) ) : ?>
     187
     188                                                <tr>
     189                                                        <th scope="row"><?php _e( 'Restrict group creation to Site Admins?', 'buddypress' ) ?>:</th>
     190                                                        <td>
     191                                                                <input type="radio" name="bp-admin[bp_restrict_group_creation]"<?php checked( '1', (int)get_site_option( 'bp_restrict_group_creation', '0' ) ); ?>id="bp-restrict-group-creation" value="1" /> <?php _e( 'Yes', 'buddypress' ) ?> &nbsp;
     192                                                                <input type="radio" name="bp-admin[bp_restrict_group_creation]"<?php checked( '0', (int)get_site_option( 'bp_restrict_group_creation', '0' ) ); ?>id="bp-restrict-group-creation" value="0" /> <?php _e( 'No', 'buddypress' ) ?>
     193                                                        </td>
     194                                                </tr>
     195
     196                                        <?php endif; ?>
     197
    186198                                        <?php do_action( 'bp_core_admin_screen_fields' ) ?>
    187199
    188200                                </tbody>
  • bp-groups/bp-groups-actions.php

     
    1919        if ( !is_user_logged_in() )
    2020                return false;
    2121
     22        if ( !bp_user_can_create_groups() ) {
     23                bp_core_add_message( __( 'Sorry, you are not allowed to create groups.', 'buddypress' ), 'error' );
     24                bp_core_redirect( trailingslashit( bp_get_root_domain() . '/' . $bp->groups->root_slug ) );
     25        }
     26
    2227        // Make sure creation steps are in the right order
    2328        groups_action_sort_creation_steps();
    2429
  • bp-groups/bp-groups-template.php

     
    17241724 * Group Creation Process Template Tags
    17251725 **/
    17261726
     1727/**
     1728 * Determine if the current logged in user can create groups.
     1729 *
     1730 * @since BuddyPress {unknown}
     1731 *
     1732 * @uses apply_filters() To call 'bp_user_can_create_groups'.
     1733 * @uses get_site_option() To retrieve value of 'bp_restrict_group_creation'. Defaults to 0.
     1734 * @uses is_super_admin() To determine if current user if super admin.
     1735 *
     1736 * @return bool True if user can create groups. False otherwise.
     1737 */
     1738function bp_user_can_create_groups() {
     1739        return apply_filters( 'bp_user_can_create_groups', ( ! (int) get_site_option( 'bp_restrict_group_creation', 0 ) || is_super_admin() ) );
     1740}
     1741
    17271742function bp_group_creation_tabs() {
    17281743        global $bp;
    17291744