Beispiel #1
0
/**
 * Forces the BP Profile Pages to be 1 Column
 * 
 * @package lsx
 * @subpackage jetpack
 * @category infinite scroll
 */
function lsx_buddypress_page_columns($layout)
{
    if (bp_is_profile_component() || bp_is_settings_component() || bp_is_activity_component() || bp_is_group() || bp_is_messages_component() || bp_is_members_directory() || bp_is_groups_directory() || bp_is_groups_component() || bp_is_members_component()) {
        $layout = '1c';
    }
    return $layout;
}
function bp_checkins_foursquare_user_actions()
{
    global $bp;
    if (!bp_checkins_is_foursquare_ready()) {
        return;
    }
    if (bp_is_current_component('checkins') && !bp_displayed_user_id() && !bp_current_action() && !empty($_GET['code'])) {
        $referer = trailingslashit(bp_loggedin_user_domain() . bp_get_settings_slug()) . 'checkins-settings';
        $foursquare_auth_user = new Bp_Checkins_Foursquare_Oauth();
        $foursquare_user = $foursquare_auth_user->token_url($_GET['code']);
        if ($foursquare_user['type'] == 'error') {
            bp_core_add_message($foursquare_user['message'], 'error');
        } else {
            update_user_meta($bp->loggedin_user->id, 'foursquare_latest_timestamp', current_time('timestamp'));
            bp_core_add_message($foursquare_user['message']);
        }
        bp_core_redirect($referer);
    }
    if (bp_is_settings_component() && bp_displayed_user_id() && 'checkins-settings' == bp_current_action() && !empty($_GET['update'])) {
        $referer = trailingslashit(bp_loggedin_user_domain() . bp_get_settings_slug()) . 'checkins-settings';
        if ((int) bp_get_option('foursquare-user-import')) {
            return false;
        }
        $user_import = new Bp_Checkins_Foursquare_Import($bp->loggedin_user->id);
        $user_import_do = $user_import->user_import();
        if ($user_import_do['type'] == 'error') {
            bp_core_add_message($user_import_do['message'], 'error');
        } else {
            bp_core_add_message($user_import_do['message']);
        }
        bp_core_redirect($referer);
    }
}
/**
 * Customize the body class, according to the currently displayed BP content.
 *
 * Uses the above is_() functions to output a body class for each scenario.
 *
 * @since 1.1.0
 *
 * @param array      $wp_classes     The body classes coming from WP.
 * @param array|bool $custom_classes Classes that were passed to get_body_class().
 * @return array $classes The BP-adjusted body classes.
 */
function bp_get_the_body_class($wp_classes = array(), $custom_classes = false)
{
    $bp_classes = array();
    /* Pages *************************************************************/
    if (is_front_page()) {
        $bp_classes[] = 'home-page';
    }
    if (bp_is_directory()) {
        $bp_classes[] = 'directory';
    }
    if (bp_is_single_item()) {
        $bp_classes[] = 'single-item';
    }
    /* Components ********************************************************/
    if (!bp_is_blog_page()) {
        if (bp_is_user_profile()) {
            $bp_classes[] = 'xprofile';
        }
        if (bp_is_activity_component()) {
            $bp_classes[] = 'activity';
        }
        if (bp_is_blogs_component()) {
            $bp_classes[] = 'blogs';
        }
        if (bp_is_messages_component()) {
            $bp_classes[] = 'messages';
        }
        if (bp_is_friends_component()) {
            $bp_classes[] = 'friends';
        }
        if (bp_is_groups_component()) {
            $bp_classes[] = 'groups';
        }
        if (bp_is_settings_component()) {
            $bp_classes[] = 'settings';
        }
    }
    /* User **************************************************************/
    if (bp_is_user()) {
        $bp_classes[] = 'bp-user';
        // Add current user member types.
        if ($member_types = bp_get_member_type(bp_displayed_user_id(), false)) {
            foreach ($member_types as $member_type) {
                $bp_classes[] = sprintf('member-type-%s', esc_attr($member_type));
            }
        }
    }
    if (!bp_is_directory()) {
        if (bp_is_user_blogs()) {
            $bp_classes[] = 'my-blogs';
        }
        if (bp_is_user_groups()) {
            $bp_classes[] = 'my-groups';
        }
        if (bp_is_user_activity()) {
            $bp_classes[] = 'my-activity';
        }
    } else {
        if (bp_get_current_member_type()) {
            $bp_classes[] = 'type';
        }
    }
    if (bp_is_my_profile()) {
        $bp_classes[] = 'my-account';
    }
    if (bp_is_user_profile()) {
        $bp_classes[] = 'my-profile';
    }
    if (bp_is_user_friends()) {
        $bp_classes[] = 'my-friends';
    }
    if (bp_is_user_messages()) {
        $bp_classes[] = 'my-messages';
    }
    if (bp_is_user_recent_commments()) {
        $bp_classes[] = 'recent-comments';
    }
    if (bp_is_user_recent_posts()) {
        $bp_classes[] = 'recent-posts';
    }
    if (bp_is_user_change_avatar()) {
        $bp_classes[] = 'change-avatar';
    }
    if (bp_is_user_profile_edit()) {
        $bp_classes[] = 'profile-edit';
    }
    if (bp_is_user_friends_activity()) {
        $bp_classes[] = 'friends-activity';
    }
    if (bp_is_user_groups_activity()) {
        $bp_classes[] = 'groups-activity';
    }
    /* Messages **********************************************************/
    if (bp_is_messages_inbox()) {
        $bp_classes[] = 'inbox';
    }
    if (bp_is_messages_sentbox()) {
        $bp_classes[] = 'sentbox';
    }
    if (bp_is_messages_compose_screen()) {
        $bp_classes[] = 'compose';
    }
    if (bp_is_notices()) {
        $bp_classes[] = 'notices';
    }
    if (bp_is_user_friend_requests()) {
        $bp_classes[] = 'friend-requests';
    }
    if (bp_is_create_blog()) {
        $bp_classes[] = 'create-blog';
    }
    /* Groups ************************************************************/
    if (bp_is_group()) {
        $bp_classes[] = 'group-' . groups_get_current_group()->slug;
        // Add current group types.
        if ($group_types = bp_groups_get_group_type(bp_get_current_group_id(), false)) {
            foreach ($group_types as $group_type) {
                $bp_classes[] = sprintf('group-type-%s', esc_attr($group_type));
            }
        }
    }
    if (bp_is_group_leave()) {
        $bp_classes[] = 'leave-group';
    }
    if (bp_is_group_invites()) {
        $bp_classes[] = 'group-invites';
    }
    if (bp_is_group_members()) {
        $bp_classes[] = 'group-members';
    }
    if (bp_is_group_forum_topic()) {
        $bp_classes[] = 'group-forum-topic';
    }
    if (bp_is_group_forum_topic_edit()) {
        $bp_classes[] = 'group-forum-topic-edit';
    }
    if (bp_is_group_forum()) {
        $bp_classes[] = 'group-forum';
    }
    if (bp_is_group_admin_page()) {
        $bp_classes[] = 'group-admin';
        $bp_classes[] = bp_get_group_current_admin_tab();
    }
    if (bp_is_group_create()) {
        $bp_classes[] = 'group-create';
        $bp_classes[] = bp_get_groups_current_create_step();
    }
    if (bp_is_group_home()) {
        $bp_classes[] = 'group-home';
    }
    if (bp_is_single_activity()) {
        $bp_classes[] = 'activity-permalink';
    }
    /* Registration ******************************************************/
    if (bp_is_register_page()) {
        $bp_classes[] = 'registration';
    }
    if (bp_is_activation_page()) {
        $bp_classes[] = 'activation';
    }
    /* Current Component & Action ****************************************/
    if (!bp_is_blog_page()) {
        $bp_classes[] = bp_current_component();
        $bp_classes[] = bp_current_action();
    }
    /* Clean up ***********************************************************/
    // Add BuddyPress class if we are within a BuddyPress page.
    if (!bp_is_blog_page()) {
        $bp_classes[] = 'buddypress';
    }
    // Merge WP classes with BuddyPress classes and remove any duplicates.
    $classes = array_unique(array_merge((array) $bp_classes, (array) $wp_classes));
    /**
     * Filters the BuddyPress classes to be added to body_class()
     *
     * @since 1.1.0
     *
     * @param array $classes        Array of body classes to add.
     * @param array $bp_classes     Array of BuddyPress-based classes.
     * @param array $wp_classes     Array of WordPress-based classes.
     * @param array $custom_classes Array of classes that were passed to get_body_class().
     */
    return apply_filters('bp_get_the_body_class', $classes, $bp_classes, $wp_classes, $custom_classes);
}
function bp_get_the_body_class($nxt_classes, $custom_classes = false)
{
    $bp_classes = array();
    /** Pages *************************************************************/
    if (is_front_page()) {
        $bp_classes[] = 'home-page';
    }
    if (bp_is_directory()) {
        $bp_classes[] = 'directory';
    }
    if (bp_is_single_item()) {
        $bp_classes[] = 'single-item';
    }
    /** Components ********************************************************/
    if (!bp_is_blog_page()) {
        if (bp_is_user_profile()) {
            $bp_classes[] = 'xprofile';
        }
        if (bp_is_activity_component()) {
            $bp_classes[] = 'activity';
        }
        if (bp_is_blogs_component()) {
            $bp_classes[] = 'blogs';
        }
        if (bp_is_messages_component()) {
            $bp_classes[] = 'messages';
        }
        if (bp_is_friends_component()) {
            $bp_classes[] = 'friends';
        }
        if (bp_is_groups_component()) {
            $bp_classes[] = 'groups';
        }
        if (bp_is_settings_component()) {
            $bp_classes[] = 'settings';
        }
    }
    /** User **************************************************************/
    if (!bp_is_directory()) {
        if (bp_is_user_blogs()) {
            $bp_classes[] = 'my-blogs';
        }
        if (bp_is_user_groups()) {
            $bp_classes[] = 'my-groups';
        }
        if (bp_is_user_activity()) {
            $bp_classes[] = 'my-activity';
        }
    }
    if (bp_is_my_profile()) {
        $bp_classes[] = 'my-account';
    }
    if (bp_is_user_profile()) {
        $bp_classes[] = 'my-profile';
    }
    if (bp_is_user_friends()) {
        $bp_classes[] = 'my-friends';
    }
    if (bp_is_user_messages()) {
        $bp_classes[] = 'my-messages';
    }
    if (bp_is_user_recent_commments()) {
        $bp_classes[] = 'recent-comments';
    }
    if (bp_is_user_recent_posts()) {
        $bp_classes[] = 'recent-posts';
    }
    if (bp_is_user_change_avatar()) {
        $bp_classes[] = 'change-avatar';
    }
    if (bp_is_user_profile_edit()) {
        $bp_classes[] = 'profile-edit';
    }
    if (bp_is_user_friends_activity()) {
        $bp_classes[] = 'friends-activity';
    }
    if (bp_is_user_groups_activity()) {
        $bp_classes[] = 'groups-activity';
    }
    if (is_user_logged_in()) {
        $bp_classes[] = 'logged-in';
    }
    /** Messages **********************************************************/
    if (bp_is_messages_inbox()) {
        $bp_classes[] = 'inbox';
    }
    if (bp_is_messages_sentbox()) {
        $bp_classes[] = 'sentbox';
    }
    if (bp_is_messages_compose_screen()) {
        $bp_classes[] = 'compose';
    }
    if (bp_is_notices()) {
        $bp_classes[] = 'notices';
    }
    if (bp_is_user_friend_requests()) {
        $bp_classes[] = 'friend-requests';
    }
    if (bp_is_create_blog()) {
        $bp_classes[] = 'create-blog';
    }
    /** Groups ************************************************************/
    if (bp_is_group_leave()) {
        $bp_classes[] = 'leave-group';
    }
    if (bp_is_group_invites()) {
        $bp_classes[] = 'group-invites';
    }
    if (bp_is_group_members()) {
        $bp_classes[] = 'group-members';
    }
    if (bp_is_group_forum_topic()) {
        $bp_classes[] = 'group-forum-topic';
    }
    if (bp_is_group_forum_topic_edit()) {
        $bp_classes[] = 'group-forum-topic-edit';
    }
    if (bp_is_group_forum()) {
        $bp_classes[] = 'group-forum';
    }
    if (bp_is_group_admin_page()) {
        $bp_classes[] = 'group-admin';
    }
    if (bp_is_group_create()) {
        $bp_classes[] = 'group-create';
    }
    if (bp_is_group_home()) {
        $bp_classes[] = 'group-home';
    }
    if (bp_is_single_activity()) {
        $bp_classes[] = 'activity-permalink';
    }
    /** Registration ******************************************************/
    if (bp_is_register_page()) {
        $bp_classes[] = 'registration';
    }
    if (bp_is_activation_page()) {
        $bp_classes[] = 'activation';
    }
    /** Current Component & Action ****************************************/
    if (!bp_is_blog_page()) {
        $bp_classes[] = bp_current_component();
        $bp_classes[] = bp_current_action();
    }
    /** Clean up***********************************************************/
    // We don't want NXTClass blog classes to appear on non-blog pages.
    if (!bp_is_blog_page()) {
        // Preserve any custom classes already set
        if (!empty($custom_classes)) {
            $nxt_classes = (array) $custom_classes;
        } else {
            $nxt_classes = array();
        }
    }
    // Merge nxt classes with BP classes
    $classes = array_merge((array) $bp_classes, (array) $nxt_classes);
    // Remove any duplicates
    $classes = array_unique($classes);
    return apply_filters('bp_get_the_body_class', $classes, $bp_classes, $nxt_classes, $custom_classes);
}
/**
 * Checks if the user/super admin is on the delete account screen
 *
 * @package WP Idea Stream
 * @subpackage buddypress/functions
 *
 * @since  2.0.0
 *
 * @uses   bp_is_settings_component() to check if on the settings component
 * @uses   bp_is_current_action() to check for a specific BuddyPress action
 * @uses   bp_is_my_profile() to check if the user is on his self profile
 * @uses   is_super_admin() to check if the user has delete capabilities on all WordPress configs
 * @return bool true if on the delete account screen, false otherwise
 */
function wp_idea_stream_buddypress_is_delete_account()
{
    $retval = false;
    if (bp_is_settings_component() && bp_is_current_action('delete-account') && (bp_is_my_profile() || is_super_admin())) {
        $retval = true;
    }
    return (bool) apply_filters('wp_idea_stream_buddypress_is_delete_account', $retval);
}
Beispiel #6
0
 /**
  *
  */
 function miss_is_bp()
 {
     if (function_exists('bp_is_group') && (bp_is_blog_page() || bp_is_my_profile() || bp_is_my_profile() || is_front_page() || bp_is_component_front_page('activity') || bp_is_directory() || bp_is_profile_component() || bp_is_activity_component() || bp_is_blogs_component() || bp_is_messages_component() || bp_is_friends_component() || bp_is_groups_component() || bp_is_settings_component() || bp_is_user_activity() || bp_is_user_friends_activity() || bp_is_activity_permalink() || bp_is_user_profile() || bp_is_profile_edit() || bp_is_change_avatar() || bp_is_user_groups() || bp_is_group() || bp_is_group_home() || bp_is_group_create() || bp_is_group_admin_page() || bp_is_group_forum() || bp_is_group_activity() || bp_is_group_forum_topic() || bp_is_group_forum_topic_edit() || bp_is_group_members() || bp_is_group_invites() || bp_is_group_membership_request() || bp_is_group_leave() || bp_is_group_single() || bp_is_user_blogs() || bp_is_user_recent_posts() || bp_is_user_recent_commments() || bp_is_create_blog() || bp_is_user_friends() || bp_is_friend_requests() || bp_is_user_messages() || bp_is_messages_inbox() || bp_is_messages_sentbox() || bp_is_notices() || bp_is_messages_compose_screen() || bp_is_activation_page() || bp_is_register_page())) {
         return true;
     }
     return false;
 }
function bp_get_the_body_class($wp_classes = array(), $custom_classes = false)
{
    $bp_classes = array();
    /** Pages *************************************************************/
    if (is_front_page()) {
        $bp_classes[] = 'home-page';
    }
    if (bp_is_directory()) {
        $bp_classes[] = 'directory';
    }
    if (bp_is_single_item()) {
        $bp_classes[] = 'single-item';
    }
    /** Components ********************************************************/
    if (!bp_is_blog_page()) {
        if (bp_is_user_profile()) {
            $bp_classes[] = 'xprofile';
        }
        if (bp_is_activity_component()) {
            $bp_classes[] = 'activity';
        }
        if (bp_is_blogs_component()) {
            $bp_classes[] = 'blogs';
        }
        if (bp_is_messages_component()) {
            $bp_classes[] = 'messages';
        }
        if (bp_is_friends_component()) {
            $bp_classes[] = 'friends';
        }
        if (bp_is_groups_component()) {
            $bp_classes[] = 'groups';
        }
        if (bp_is_settings_component()) {
            $bp_classes[] = 'settings';
        }
    }
    /** User **************************************************************/
    if (bp_is_user()) {
        $bp_classes[] = 'bp-user';
    }
    if (!bp_is_directory()) {
        if (bp_is_user_blogs()) {
            $bp_classes[] = 'my-blogs';
        }
        if (bp_is_user_groups()) {
            $bp_classes[] = 'my-groups';
        }
        if (bp_is_user_activity()) {
            $bp_classes[] = 'my-activity';
        }
    }
    if (bp_is_my_profile()) {
        $bp_classes[] = 'my-account';
    }
    if (bp_is_user_profile()) {
        $bp_classes[] = 'my-profile';
    }
    if (bp_is_user_friends()) {
        $bp_classes[] = 'my-friends';
    }
    if (bp_is_user_messages()) {
        $bp_classes[] = 'my-messages';
    }
    if (bp_is_user_recent_commments()) {
        $bp_classes[] = 'recent-comments';
    }
    if (bp_is_user_recent_posts()) {
        $bp_classes[] = 'recent-posts';
    }
    if (bp_is_user_change_avatar()) {
        $bp_classes[] = 'change-avatar';
    }
    if (bp_is_user_profile_edit()) {
        $bp_classes[] = 'profile-edit';
    }
    if (bp_is_user_friends_activity()) {
        $bp_classes[] = 'friends-activity';
    }
    if (bp_is_user_groups_activity()) {
        $bp_classes[] = 'groups-activity';
    }
    /** Messages **********************************************************/
    if (bp_is_messages_inbox()) {
        $bp_classes[] = 'inbox';
    }
    if (bp_is_messages_sentbox()) {
        $bp_classes[] = 'sentbox';
    }
    if (bp_is_messages_compose_screen()) {
        $bp_classes[] = 'compose';
    }
    if (bp_is_notices()) {
        $bp_classes[] = 'notices';
    }
    if (bp_is_user_friend_requests()) {
        $bp_classes[] = 'friend-requests';
    }
    if (bp_is_create_blog()) {
        $bp_classes[] = 'create-blog';
    }
    /** Groups ************************************************************/
    if (bp_is_group()) {
        $bp_classes[] = 'group-' . groups_get_current_group()->slug;
    }
    if (bp_is_group_leave()) {
        $bp_classes[] = 'leave-group';
    }
    if (bp_is_group_invites()) {
        $bp_classes[] = 'group-invites';
    }
    if (bp_is_group_members()) {
        $bp_classes[] = 'group-members';
    }
    if (bp_is_group_forum_topic()) {
        $bp_classes[] = 'group-forum-topic';
    }
    if (bp_is_group_forum_topic_edit()) {
        $bp_classes[] = 'group-forum-topic-edit';
    }
    if (bp_is_group_forum()) {
        $bp_classes[] = 'group-forum';
    }
    if (bp_is_group_admin_page()) {
        $bp_classes[] = 'group-admin';
        $bp_classes[] = bp_get_group_current_admin_tab();
    }
    if (bp_is_group_create()) {
        $bp_classes[] = 'group-create';
        $bp_classes[] = bp_get_groups_current_create_step();
    }
    if (bp_is_group_home()) {
        $bp_classes[] = 'group-home';
    }
    if (bp_is_single_activity()) {
        $bp_classes[] = 'activity-permalink';
    }
    /** Registration ******************************************************/
    if (bp_is_register_page()) {
        $bp_classes[] = 'registration';
    }
    if (bp_is_activation_page()) {
        $bp_classes[] = 'activation';
    }
    /** Current Component & Action ****************************************/
    if (!bp_is_blog_page()) {
        $bp_classes[] = bp_current_component();
        $bp_classes[] = bp_current_action();
    }
    /** Clean up ***********************************************************/
    // Add BuddyPress class if we are within a BuddyPress page
    if (!bp_is_blog_page()) {
        $bp_classes[] = 'buddypress';
    }
    // Merge WP classes with BuddyPress classes and remove any duplicates
    $classes = array_unique(array_merge((array) $bp_classes, (array) $wp_classes));
    return apply_filters('bp_get_the_body_class', $classes, $bp_classes, $wp_classes, $custom_classes);
}
Beispiel #8
0
 /**
  * Similar to the post_class() function, but for BP. This is NOT used by core Suffusion, but is useful for child themes using BP.
  * This might be defined by the Suffusion BuddyPress Pack for BP users of Suffusion, but is included conditionally here so
  * that the theme and the plugin can be used independently of each other and so that one version of Suffusion can work with an older
  * version of the BP pack.
  *
  * @since 3.6.7
  * @param bool $custom
  * @param bool $echo
  * @return bool|string
  */
 function suffusion_bp_content_class($custom = false, $echo = true)
 {
     if (!function_exists('bp_is_group')) {
         return false;
     }
     $css = array();
     $css[] = 'post';
     if (function_exists('bp_is_profile_component') && bp_is_profile_component()) {
         $css[] = 'profile-component';
     }
     if (function_exists('bp_is_activity_component') && bp_is_activity_component()) {
         $css[] = 'activity-component';
     }
     if (function_exists('bp_is_blogs_component') && bp_is_blogs_component()) {
         $css[] = 'blogs-component';
     }
     if (function_exists('bp_is_messages_component') && bp_is_messages_component()) {
         $css[] = 'messages-component';
     }
     if (function_exists('bp_is_friends_component') && bp_is_friends_component()) {
         $css[] = 'friends-component';
     }
     if (function_exists('bp_is_groups_component') && bp_is_groups_component()) {
         $css[] = 'groups-component';
     }
     if (function_exists('bp_is_settings_component') && bp_is_settings_component()) {
         $css[] = 'settings-component';
     }
     if (function_exists('bp_is_member') && bp_is_member()) {
         $css[] = 'member';
     }
     if (function_exists('bp_is_user_activity') && bp_is_user_activity()) {
         $css[] = 'user-activity';
     }
     if (function_exists('bp_is_user_friends_activity') && bp_is_user_friends_activity()) {
         $css[] = 'user-friends-activity';
     }
     if (function_exists('bp_is_activity_permalink') && bp_is_activity_permalink()) {
         $css[] = 'activity-permalink';
     }
     if (function_exists('bp_is_user_profile') && bp_is_user_profile()) {
         $css[] = 'user-profile';
     }
     if (function_exists('bp_is_profile_edit') && bp_is_profile_edit()) {
         $css[] = 'profile-edit';
     }
     if (function_exists('bp_is_change_avatar') && bp_is_change_avatar()) {
         $css[] = 'change-avatar';
     }
     if (function_exists('bp_is_user_groups') && bp_is_user_groups()) {
         $css[] = 'user-groups';
     }
     if (function_exists('bp_is_group') && bp_is_group()) {
         $css[] = 'group';
     }
     if (function_exists('bp_is_group_home') && bp_is_group_home()) {
         $css[] = 'group-home';
     }
     if (function_exists('bp_is_group_create') && bp_is_group_create()) {
         $css[] = 'group-create';
     }
     if (function_exists('bp_is_group_admin_page') && bp_is_group_admin_page()) {
         $css[] = 'group-admin-page';
     }
     if (function_exists('bp_is_group_forum') && bp_is_group_forum()) {
         $css[] = 'group-forum';
     }
     if (function_exists('bp_is_group_activity') && bp_is_group_activity()) {
         $css[] = 'group-activity';
     }
     if (function_exists('bp_is_group_forum_topic') && bp_is_group_forum_topic()) {
         $css[] = 'group-forum-topic';
     }
     if (function_exists('bp_is_group_forum_topic_edit') && bp_is_group_forum_topic_edit()) {
         $css[] = 'group-forum-topic-edit';
     }
     if (function_exists('bp_is_group_members') && bp_is_group_members()) {
         $css[] = 'group-members';
     }
     if (function_exists('bp_is_group_invites') && bp_is_group_invites()) {
         $css[] = 'group-invites';
     }
     if (function_exists('bp_is_group_membership_request') && bp_is_group_membership_request()) {
         $css[] = 'group-membership-request';
     }
     if (function_exists('bp_is_group_leave') && bp_is_group_leave()) {
         $css[] = 'group-leave';
     }
     if (function_exists('bp_is_group_single') && bp_is_group_single()) {
         $css[] = 'group-single';
     }
     if (function_exists('bp_is_user_blogs') && bp_is_user_blogs()) {
         $css[] = 'user-blogs';
     }
     if (function_exists('bp_is_user_recent_posts') && bp_is_user_recent_posts()) {
         $css[] = 'user-recent-posts';
     }
     if (function_exists('bp_is_user_recent_commments') && bp_is_user_recent_commments()) {
         $css[] = 'user-recent-commments';
     }
     if (function_exists('bp_is_create_blog') && bp_is_create_blog()) {
         $css[] = 'create-blog';
     }
     if (function_exists('bp_is_user_friends') && bp_is_user_friends()) {
         $css[] = 'user-friends';
     }
     if (function_exists('bp_is_friend_requests') && bp_is_friend_requests()) {
         $css[] = 'friend-requests';
     }
     if (function_exists('bp_is_user_messages') && bp_is_user_messages()) {
         $css[] = 'user-messages';
     }
     if (function_exists('bp_is_messages_inbox') && bp_is_messages_inbox()) {
         $css[] = 'messages-inbox';
     }
     if (function_exists('bp_is_messages_sentbox') && bp_is_messages_sentbox()) {
         $css[] = 'messages-sentbox';
     }
     if (function_exists('bp_is_notices') && bp_is_notices()) {
         $css[] = 'notices';
     }
     if (function_exists('bp_is_messages_compose_screen') && bp_is_messages_compose_screen()) {
         $css[] = 'messages-compose-screen';
     }
     if (function_exists('bp_is_single_item') && bp_is_single_item()) {
         $css[] = 'single-item';
     }
     if (function_exists('bp_is_activation_page') && bp_is_activation_page()) {
         $css[] = 'activation-page';
     }
     if (function_exists('bp_is_register_page') && bp_is_register_page()) {
         $css[] = 'register-page';
     }
     $css[] = 'fix';
     if (is_array($custom)) {
         foreach ($custom as $class) {
             if (!in_array($class, $css)) {
                 $css[] = esc_attr($class);
             }
         }
     } else {
         if ($custom != false) {
             $css[] = $custom;
         }
     }
     $css_class = implode(' ', $css);
     if ($echo) {
         echo ' class="' . $css_class . '" ';
     }
     return ' class="' . $css_class . '" ';
 }
function ass_user_unsubscribe_action()
{
    if (get_option('ass-global-unsubscribe-link') != 'yes' || !bp_is_settings_component() || !isset($_GET['ass_unsubscribe'])) {
        return;
    }
    check_admin_referer('ass_unsubscribe_all');
    ass_unsubscribe_user();
    if (bp_is_my_profile()) {
        bp_core_add_message(__('You have been unsubscribed from all groups notifications.', 'bp-ass'), 'success');
    } else {
        bp_core_add_message(__("This user's has been unsubscribed from all groups notifications.", 'bp-ass'), 'success');
    }
    bp_core_redirect(bp_displayed_user_domain() . bp_get_settings_slug() . '/notifications/');
}
/**
 * Handles the changing and saving of user email addressos and passwords
 * 
 * We do quite a bit of logic and error handling here to make sure that users
 * do not accidentally lock themselves out of their accounts. We also try to
 * provide as accurate of feedback as possible without exposing anyone else's
 * inforation to them.
 * 
 * Special considerations are made for super admins that are able to edit any
 * users accounts already, without knowing their existing password.
 *
 * @global BuddyPress $bp
 * @return If no reason to proceed
 */
function bp_core_screen_general_settings()
{
    global $bp;
    // 404 if there are any additional action variables attached
    if (bp_action_variables()) {
        bp_do_404();
        return;
    }
    /** Handle Form ***********************************************************/
    if ('POST' === strtoupper($_SERVER['REQUEST_METHOD'])) {
        // Bail if not in settings
        if (!bp_is_settings_component() || !bp_is_current_action('general')) {
            return;
        }
        // Define local defaults
        $email_error = false;
        // invalid|blocked|taken|empty|false
        $pass_error = false;
        // invalid|mismatch|empty|false
        $pass_changed = false;
        // true if the user changes their password
        $email_changed = false;
        // true if the user changes their email
        $feedback_type = 'error';
        // success|error
        $feedback = array();
        // array of strings for feedback
        // Nonce check
        check_admin_referer('bp_settings_general');
        // Validate the user again for the current password when making a big change
        if (is_super_admin() || !empty($_POST['pwd']) && nxt_check_password($_POST['pwd'], $bp->displayed_user->userdata->user_pass, bp_displayed_user_id())) {
            $update_user = get_userdata(bp_displayed_user_id());
            /** Email Change Attempt ******************************************/
            if (!empty($_POST['email'])) {
                // What is missing from the profile page vs signup - lets double check the goodies
                $user_email = sanitize_email(esc_html(trim($_POST['email'])));
                // User is changing email address
                if ($bp->displayed_user->userdata->user_email != $user_email) {
                    // Is email valid
                    if (!is_email($user_email)) {
                        $email_error = 'invalid';
                    }
                    // Get blocked email domains
                    $limited_email_domains = get_site_option('limited_email_domains', 'buddypress');
                    // If blocked email domains exist, see if this is one of them
                    if (is_array($limited_email_domains) && empty($limited_email_domains) == false) {
                        $emaildomain = substr($user_email, 1 + strpos($user_email, '@'));
                        if (in_array($emaildomain, (array) $limited_email_domains) == false) {
                            $email_error = 'blocked';
                        }
                    }
                    // No errors, and email address doesn't match
                    if (false === $email_error && email_exists($user_email)) {
                        $email_error = 'taken';
                    }
                    // Yay we made it!
                    if (false === $email_error) {
                        $update_user->user_email = $user_email;
                        $email_changed = true;
                    }
                    // No change
                } else {
                    $email_error = false;
                }
                // Email address cannot be empty
            } else {
                $email_error = 'empty';
            }
            /** Password Change Attempt ***************************************/
            if (!empty($_POST['pass1']) && !empty($_POST['pass2'])) {
                // Password change attempt is successful
                if ($_POST['pass1'] == $_POST['pass2'] && !strpos(" " . $_POST['pass1'], "\\")) {
                    $update_user->user_pass = $_POST['pass1'];
                    $pass_changed = true;
                    // Password change attempt was unsuccessful
                } else {
                    $pass_error = 'mismatch';
                }
                // Both password fields were empty
            } elseif (empty($_POST['pass1']) && empty($_POST['pass2'])) {
                $pass_error = false;
                // One of the password boxes was left empty
            } elseif (empty($_POST['pass1']) && !empty($_POST['pass2']) || !empty($_POST['pass1']) && empty($_POST['pass2'])) {
                $pass_error = 'empty';
            }
            // The structure of the $update_user object changed in nxt 3.3, but
            // nxt_update_user() still expects the old format
            if (isset($update_user->data) && is_object($update_user->data)) {
                $update_user = $update_user->data;
                $update_user = get_object_vars($update_user);
                // Unset the password field to prevent it from emptying out the
                // user's user_pass field in the database.
                // @see nxt_update_user()
                if (false === $pass_changed) {
                    unset($update_user['user_pass']);
                }
            }
            // Make sure these changes are in $bp for the current page load
            if (false === $email_error && false === $pass_error && nxt_update_user($update_user)) {
                $bp->displayed_user->userdata = bp_core_get_core_userdata(bp_displayed_user_id());
            }
            // Password Error
        } else {
            $pass_error = 'invalid';
        }
        // Email feedback
        switch ($email_error) {
            case 'invalid':
                $feedback['email_invalid'] = __('That email address is invalid. Check the formatting and try again.', 'buddypress');
                break;
            case 'blocked':
                $feedback['email_blocked'] = __('That email address is currently unavailable for use.', 'buddypress');
                break;
            case 'taken':
                $feedback['email_taken'] = __('That email address is already taken.', 'buddypress');
                break;
            case 'empty':
                $feedback['email_empty'] = __('Email address cannot be empty.', 'buddypress');
                break;
            case false:
                // No change
                break;
        }
        // Password feedback
        switch ($pass_error) {
            case 'invalid':
                $feedback['pass_error'] = __('Your current password is invalid.', 'buddypress');
                break;
            case 'mismatch':
                $feedback['pass_mismatch'] = __('The new password fields did not match.', 'buddypress');
                break;
            case 'empty':
                $feedback['pass_empty'] = __('One of the password fields was empty.', 'buddypress');
                break;
            case false:
                // No change
                break;
        }
        // No errors so show a simple success message
        if ((false === $email_error || false == $pass_error) && (true === $pass_changed || true === $email_changed)) {
            $feedback[] = __('Your settings have been saved.', 'buddypress');
            $feedback_type = 'success';
            // Some kind of errors occurred
        } elseif ((false === $email_error || false === $pass_error) && (false === $pass_changed || false === $email_changed)) {
            if (bp_is_my_profile()) {
                $feedback['nochange'] = __('No changes were made to your account.', 'buddypress');
            } else {
                $feedback['nochange'] = __('No changes were made to this account.', 'buddypress');
            }
        }
        // Set the feedback
        bp_core_add_message(implode('</p><p>', $feedback), $feedback_type);
        // Execute additional code
        do_action('bp_core_general_settings_after_save');
        // Redirect to prevent issues with browser back button
        bp_core_redirect(trailingslashit(bp_displayed_user_domain() . bp_get_settings_slug() . '/general'));
        // Load the template
    } else {
        bp_core_load_template(apply_filters('bp_core_screen_general_settings', 'members/single/settings/general'));
    }
}
/**
 * Check if this is a BuddyPress page or not.
 * Returns true or false (boolean)
 */
function shoestrap_is_bp()
{
    $bp = false;
    /** Pages *************************************************************/
    if (!$bp && bp_is_directory()) {
        $bp = true;
    } elseif (!$bp && bp_is_single_item()) {
        $bp = true;
    } elseif (!$bp && bp_is_user_profile()) {
        $bp = true;
    } elseif (!$bp && bp_is_activity_component()) {
        $bp = true;
    } elseif (!$bp && bp_is_blogs_component()) {
        $bp = true;
    } elseif (!$bp && bp_is_messages_component()) {
        $bp = true;
    } elseif (!$bp && bp_is_friends_component()) {
        $bp = true;
    } elseif (!$bp && bp_is_groups_component()) {
        $bp = true;
    } elseif (!$bp && bp_is_settings_component()) {
        $bp = true;
    } elseif (!$bp && bp_is_user()) {
        $bp = true;
    } elseif (!$bp && bp_is_user_blogs()) {
        $bp = true;
    } elseif (!$bp && bp_is_user_groups()) {
        $bp = true;
    } elseif (!$bp && bp_is_user_activity()) {
        $bp = true;
    } elseif (!$bp && bp_is_my_profile()) {
        $bp = true;
    } elseif (!$bp && bp_is_user_profile()) {
        $bp = true;
    } elseif (!$bp && bp_is_user_friends()) {
        $bp = true;
    } elseif (!$bp && bp_is_user_messages()) {
        $bp = true;
    } elseif (!$bp && bp_is_user_recent_commments()) {
        $bp = true;
    } elseif (!$bp && bp_is_user_recent_posts()) {
        $bp = true;
    } elseif (!$bp && bp_is_user_change_avatar()) {
        $bp = true;
    } elseif (!$bp && bp_is_user_profile_edit()) {
        $bp = true;
    } elseif (!$bp && bp_is_user_friends_activity()) {
        $bp = true;
    } elseif (!$bp && bp_is_user_groups_activity()) {
        $bp = true;
    } elseif (!$bp && is_user_logged_in()) {
        $bp = true;
    } elseif (!$bp && bp_is_messages_inbox()) {
        $bp = true;
    } elseif (!$bp && bp_is_messages_sentbox()) {
        $bp = true;
    } elseif (!$bp && bp_is_messages_compose_screen()) {
        $bp = true;
    } elseif (!$bp && bp_is_notices()) {
        $bp = true;
    } elseif (!$bp && bp_is_user_friend_requests()) {
        $bp = true;
    } elseif (!$bp && bp_is_create_blog()) {
        $bp = true;
    } elseif (!$bp && bp_is_group_leave()) {
        $bp = true;
    } elseif (!$bp && bp_is_group_invites()) {
        $bp = true;
    } elseif (!$bp && bp_is_group_members()) {
        $bp = true;
    } elseif (!$bp && bp_is_group_forum_topic()) {
        $bp = true;
    } elseif (!$bp && bp_is_group_forum_topic_edit()) {
        $bp = true;
    } elseif (!$bp && bp_is_group_forum()) {
        $bp = true;
    } elseif (!$bp && bp_is_group_admin_page()) {
        $bp = true;
    } elseif (!$bp && bp_is_group_create()) {
        $bp = true;
    } elseif (!$bp && bp_is_group_home()) {
        $bp = true;
    } elseif (!$bp && bp_is_single_activity()) {
        $bp = true;
    } elseif (!$bp && bp_is_register_page()) {
        $bp = true;
    } elseif (!$bp && bp_is_activation_page()) {
        $bp = true;
    } elseif (!$bp && !bp_is_blog_page()) {
        $bp = true;
    }
    return $bp;
}
/**
 * Get content width
 */
function get_content_width($site_width)
{
    global $cap, $post, $bp;
    if ($cap->cc_responsive_enable) {
        $cap->rightsidebar_width = 225;
        $cap->leftsidebar_width = 225;
    }
    $cap->archive_template = $cap->archive_template == 'full-width' && defined('is_pro') ? $cap->archive_template : $cap->sidebar_position;
    if (defined('BP_VERSION') && bp_is_user() && check_value($cap->bp_profile_sidebars, 'none', '==')) {
        return $site_width;
    } else {
        if (defined('BP_VERSION') && bp_is_user() && check_value($cap->bp_profile_sidebars, 'default', '!=')) {
            if (check_value($cap->bp_profile_sidebars, 'left', '==') || check_value($cap->bp_profile_sidebars, 'left and right', '==')) {
                $site_width -= $cap->leftsidebar_width;
            }
            if (check_value($cap->bp_profile_sidebars, 'right', '==') || check_value($cap->bp_profile_sidebars, 'left and right', '==')) {
                $site_width -= $cap->rightsidebar_width;
            }
            return $site_width;
        } else {
            if ((!is_page() || is_page('search') || is_search()) && !is_archive() || function_exists('is_bbpress') && is_bbpress() && !is_archive()) {
                $tpl = !empty($post) ? get_post_meta($post->ID, '_wp_page_template', TRUE) : FALSE;
                $tpl = empty($tpl) ? 'default' : $tpl;
                $affected = FALSE;
                if (check_value($cap->bp_profile_sidebars, 'default', '==') && $tpl == 'full-width.php') {
                    return $site_width;
                }
                if (check_value($cap->bp_profile_sidebars, 'default', '==') && ($tpl == '_pro/tpl-left-and-right-sidebar.php' || $tpl == '_pro/tpl-left-sidebar.php')) {
                    $site_width -= $cap->leftsidebar_width;
                    $affected = TRUE;
                }
                if (check_value($cap->bp_profile_sidebars, 'default', '==') && ($tpl == '_pro/tpl-left-and-right-sidebar.php' || $tpl == '_pro/tpl-right-sidebar.php')) {
                    $site_width -= $cap->rightsidebar_width;
                    $affected = TRUE;
                }
                if ($affected) {
                    return $site_width;
                }
                if (check_value($cap->bp_profile_sidebars, 'none', '==')) {
                    return $site_width;
                } elseif (check_value($cap->bp_profile_sidebars, 'left', '==') || check_value($cap->bp_profile_sidebars, 'default', '==') && check_value($cap->sidebar_position, 'left', '==')) {
                    $site_width -= $cap->leftsidebar_width;
                }
                if (check_value($cap->bp_profile_sidebars, 'right', '==') || check_value($cap->bp_profile_sidebars, 'default', '==') && check_value($cap->sidebar_position, 'right', '===')) {
                    $site_width -= $cap->rightsidebar_width;
                } else {
                    if (check_value($cap->bp_profile_sidebars, 'left and right', '==') || check_value($cap->bp_profile_sidebars, 'default', '==') && check_value($cap->sidebar_position, 'left and right', '==')) {
                        $site_width = $site_width - $cap->rightsidebar_width - $cap->leftsidebar_width;
                    }
                }
                return $site_width;
            } elseif (is_archive()) {
                if (defined('is_pro') && ($cap->archive_template == 'full-width' || check_value($cap->archive_template, 'full-width', '=='))) {
                    return $site_width;
                }
                if (is_archive() && ($cap->archive_template == 'left' || $cap->archive_template == 'left and right' || check_value($cap->archive_template, 'left', '==') || check_value($cap->archive_template, 'left and right', '=='))) {
                    $site_width -= $cap->leftsidebar_width;
                }
                if ($cap->archive_template == "right" || $cap->archive_template == "left and right" || check_value($cap->archive_template, 'right', '==') || check_value($cap->archive_template, 'left and right', '==')) {
                    $site_width -= $cap->rightsidebar_width;
                }
            } else {
                if (isset($post)) {
                    $detect = new TK_WP_Detect();
                    $component = explode('-', $detect->tk_get_page_type());
                    if (!empty($component[2])) {
                        if ($component[2] == 'groups' && !empty($component[3]) && (property_exists($bp, 'unfiltered_uri') && !empty($bp->unfiltered_uri[0]) && $bp->unfiltered_uri[0] != 'members')) {
                            if ($cap->bp_groups_sidebars == 'default' && check_value($cap->sidebar_position, 'left and right', '==') || $cap->bp_groups_sidebars == 'left' || $cap->bp_groups_sidebars == __('left', 'cc') || $cap->bp_groups_sidebars == 'left and right' || check_value($cap->bp_groups_sidebars, 'left and right', '==')) {
                                $site_width -= $cap->leftsidebar_width;
                            }
                            if ($cap->bp_groups_sidebars == 'default' || $cap->bp_groups_sidebars == 'right' || check_value($cap->bp_groups_sidebars, 'right', '==') || $cap->bp_groups_sidebars == 'left and right' || check_value($cap->bp_groups_sidebars, 'left and right', '==')) {
                                $site_width -= $cap->rightsidebar_width;
                            }
                            return $site_width;
                        } elseif (property_exists($bp, 'unfiltered_uri') && !empty($bp->unfiltered_uri[0]) && $bp->unfiltered_uri[0] == 'members' || bp_is_activity_component() || bp_is_profile_component() || bp_is_messages_component() || bp_is_friends_component() || bp_is_settings_component()) {
                            if (($cap->bp_profile_sidebars == 'default' || check_value($cap->sidebar_position, 'default', '==')) && ($cap->bp_profile_sidebars == 'left and right' || check_value($cap->sidebar_position, 'left and right', '==') || check_value($cap->sidebar_position, 'left', '==') || $cap->sidebar_position == 'left') || $cap->bp_profile_sidebars == 'left' || check_value($cap->bp_profile_sidebars, 'left', '==') || $cap->bp_profile_sidebars == 'left and right' || check_value($cap->bp_profile_sidebars, 'left and right', '==')) {
                                $site_width -= $cap->leftsidebar_width;
                            }
                            if (($cap->bp_profile_sidebars == "default" || check_value($cap->bp_profile_sidebars, 'default', '==')) && ($cap->sidebar_position == "right" || check_value($cap->sidebar_position, 'right', '==') || $cap->sidebar_position == "left and right" || check_value($cap->sidebar_position, 'left and right', '==')) || $cap->bp_profile_sidebars == 'right' || check_value($cap->bp_profile_sidebars, 'right', '==') || $cap->bp_profile_sidebars == 'left and right' || check_value($cap->bp_profile_sidebars, 'left and right', '==')) {
                                $site_width -= $cap->rightsidebar_width;
                            }
                            return $site_width;
                        } elseif ($component[2] == 'members') {
                            if (check_value($cap->sidebar_position, 'left and right', '==') || check_value($cap->sidebar_position, 'default', '==')) {
                                $site_width -= $cap->leftsidebar_width;
                            }
                            if (check_value($cap->sidebar_position, 'left and right', '==') || check_value($cap->sidebar_position, 'right', '==')) {
                                $site_width -= $cap->rightsidebar_width;
                            }
                            return $site_width;
                        } else {
                            if ($component[2] != 'forums') {
                                if (check_value($cap->sidebar_position, 'left and right', '==') || check_value($cap->sidebar_position, 'default', '==')) {
                                    $site_width -= $cap->leftsidebar_width;
                                }
                                if (check_value($cap->sidebar_position, 'left and right', '==') || check_value($cap->sidebar_position, 'right', '==')) {
                                    $site_width -= $cap->rightsidebar_width;
                                }
                                return $site_width;
                            }
                        }
                    }
                    $width_change = FALSE;
                    $tmp = get_post_meta($post->ID, '_wp_page_template', true);
                    if ($tmp == 'full-width.php') {
                        return $site_width;
                    }
                    // page template - if empty use "default" here...
                    if ($tmp == '') {
                        $tmp = 'default';
                    }
                    //page template
                    if ($tmp == '_pro/tpl-left-and-right-sidebar.php' || $tmp == '_pro/tpl-search-right-and-left-sidebar.php' || $tmp == '_pro/tpl-left-sidebar.php' || $tmp == '_pro/tpl-search-left-sidebar.php') {
                        $site_width -= $cap->leftsidebar_width;
                        $width_change = TRUE;
                    }
                    if ($tmp == '_pro/tpl-left-and-right-sidebar.php' || $tmp == '_pro/tpl-search-right-and-left-sidebar.php' || $tmp == '_pro/tpl-right-sidebar.php' || $tmp == '_pro/tpl-search-right-sidebar.php') {
                        $site_width -= $cap->rightsidebar_width;
                        $width_change = TRUE;
                    }
                    if ($width_change) {
                        return $site_width;
                    }
                    //global settings
                    if (check_value($cap->sidebar_position, 'left', '==') || check_value($cap->sidebar_position, 'left and right', '==')) {
                        $site_width -= $cap->leftsidebar_width;
                        $width_change = TRUE;
                    }
                    if (check_value($cap->sidebar_position, 'right', '===') || check_value($cap->sidebar_position, 'left and right', '==')) {
                        $site_width -= $cap->rightsidebar_width;
                        $width_change = TRUE;
                    }
                    if ($width_change) {
                        return $site_width;
                    }
                }
            }
        }
    }
    return $site_width;
}
function bp_checkins_load_gmap3()
{
    if (bp_checkins_is_activity_or_friends() || bp_checkins_is_directory() || bp_checkins_is_group_checkins_area()) {
        wp_enqueue_script('google-maps', 'http://maps.google.com/maps/api/js?sensor=false');
        wp_enqueue_script('gmap3', BP_CHECKINS_PLUGIN_URL_JS . '/gmap3.min.js', array('jquery'));
        wp_enqueue_style('bpcistyle', BP_CHECKINS_PLUGIN_URL_CSS . '/bpcinstyle.css');
        if (!empty($_GET['map']) && $_GET['map'] == 1) {
            global $bpci_lat, $bpci_lng;
            $bpci_lat = bp_activity_get_meta(bp_current_action(), 'bpci_activity_lat');
            $bpci_lng = bp_activity_get_meta(bp_current_action(), 'bpci_activity_lng');
            if (!empty($bpci_lat) && !empty($bpci_lng)) {
                add_action('wp_head', 'bp_checkins_item_map');
            }
        } elseif (bp_checkins_show_friends_checkins()) {
            wp_enqueue_script('bp-ckeckins-friends', BP_CHECKINS_PLUGIN_URL_JS . '/bp-checkins-friends.js');
        } else {
            if (bp_checkins_is_directory() || bp_checkins_is_group_checkins_area()) {
                wp_enqueue_script('bp-ckeckins-dir', BP_CHECKINS_PLUGIN_URL_JS . '/bp-checkins-dir.js');
                bp_checkins_localize_script('dir');
            } else {
                wp_enqueue_script('bp-ckeckins', BP_CHECKINS_PLUGIN_URL_JS . '/bp-checkins.js');
                bp_checkins_localize_script('activity');
            }
        }
        if (bp_is_single_activity()) {
            add_action('wp_footer', 'bp_checkins_img_trick');
        }
    }
    if (bp_displayed_user_id() && bp_is_settings_component() && bp_is_current_action('checkins-settings')) {
        wp_enqueue_style('bpcistyle', BP_CHECKINS_PLUGIN_URL_CSS . '/bpcinstyle.css');
    }
}
 /**
  * footer: add the sidebar and their default widgets to the right sidebar
  *
  * located: footer.php do_action( 'sidebar_left' )
  *
  * @package Custom Community
  * @since 1.8.3
  */
 function sidebar_right()
 {
     global $cap, $post, $bp;
     $tmp = !empty($post) ? get_post_meta($post->ID, '_wp_page_template', true) : '';
     if (defined('BP_VERSION') && bp_is_user() && ($cap->bp_profile_sidebars == __('none', 'cc') || $cap->bp_profile_sidebars == __('left', 'cc'))) {
         return;
     }
     if (defined('BP_VERSION') && bp_is_group() && ($cap->bp_groups_sidebars == __('none', 'cc') || $cap->bp_groups_sidebars == __('left', 'cc'))) {
         return;
     }
     if (function_exists('is_bbpress') && (is_bbpress() && defined('BP_VERSION') && !bp_is_user() && !bp_is_group()) && ($cap->sidebar_position == __('left', 'cc') || $cap->sidebar_position == __('full-width', 'cc'))) {
         return;
     } else {
         if (function_exists('is_bbpress') && (is_bbpress() && defined('BP_VERSION') && !bp_is_user() && !bp_is_group()) && ($cap->sidebar_position == __('right', 'cc') || $cap->sidebar_position == __('left and right', 'cc'))) {
             locate_template(array('sidebar.php'), true);
             return;
         }
     }
     if ($tmp == 'full-width.php' || $tmp == 'tpl-search-full-width.php' || $tmp == 'left-sidebar.php' || $tmp == '_pro/tpl-left-sidebar.php') {
         return;
     }
     if ($tmp == 'left-and-right-sidebar.php' || $tmp == 'right-sidebar.php' || $tmp == '_pro/tpl-left-and-right-sidebar.php' || $tmp == '_pro/tpl-search-right-and-left-sidebar.php' || $tmp == '_pro/tpl-right-sidebar.php' || $tmp == '_pro/tpl-search-right-sidebar.php') {
         locate_template(array('sidebar.php'), true);
         return;
     }
     $component = explode('-', $this->detect->tk_get_page_type());
     if (!empty($component[2])) {
         if ($component[2] == 'groups' && !empty($component[3]) && $bp->unfiltered_uri[0] != 'members') {
             if ($cap->bp_groups_sidebars == 'right' || $cap->bp_groups_sidebars == __('right', 'cc') || $cap->bp_groups_sidebars == 'left and right' || $cap->bp_groups_sidebars == __('left and right', 'cc')) {
                 locate_template(array('groups/single/group-sidebar-right.php'), true);
             } elseif (($cap->bp_groups_sidebars == "default" || $cap->bp_groups_sidebars == __("default", 'cc')) && ($cap->sidebar_position == "right" || $cap->sidebar_position == __("right", 'cc')) || ($cap->sidebar_position == "left and right" || $cap->sidebar_position == __("left and right", 'cc')) && ($cap->bp_groups_sidebars == "default" || $cap->bp_groups_sidebars == __("default", 'cc'))) {
                 locate_template(array('sidebar.php'), true);
             }
             return;
         } elseif ($bp->unfiltered_uri[0] == 'members' || bp_is_activity_component() || bp_is_profile_component() || bp_is_messages_component() || bp_is_friends_component() || bp_is_settings_component()) {
             if ($cap->bp_profile_sidebars == 'right' || $cap->bp_profile_sidebars == __('right', 'cc') || $cap->bp_profile_sidebars == 'left and right' || $cap->bp_profile_sidebars == __('left and right', 'cc')) {
                 locate_template(array('members/single/member-sidebar-right.php'), true);
             } elseif (($cap->bp_profile_sidebars == "default" || $cap->bp_profile_sidebars == __("default", 'cc')) && ($cap->sidebar_position == "right" || $cap->sidebar_position == __("right", 'cc')) || ($cap->sidebar_position == "left and right" || $cap->sidebar_position == __("left and right", 'cc')) && ($cap->bp_profile_sidebars == "default" || $cap->bp_profile_sidebars == __("default", 'cc'))) {
                 locate_template(array('sidebar.php'), true);
             }
             return;
         } else {
             if ($cap->sidebar_position == "right" || $cap->sidebar_position == __("right", 'cc') || $cap->sidebar_position == "left and right" || $cap->sidebar_position == __("left and right", 'cc')) {
                 locate_template(array('sidebar.php'), true);
                 return;
             }
         }
     } elseif (empty($component[2]) && !is_archive() && !is_page()) {
         if ($cap->sidebar_position == "right" || $cap->sidebar_position == __("right", 'cc') || $cap->sidebar_position == "left and right" || $cap->sidebar_position == __("left and right", 'cc')) {
             locate_template(array('sidebar.php'), true);
             return;
         }
     }
     $cap->archive_template = $cap->archive_template == 'full-width' && defined('is_pro') ? $cap->archive_template : $cap->sidebar_position;
     if (is_archive() && ($cap->archive_template == "right" || $cap->archive_template == "left and right" || $cap->archive_template == __("right", 'cc') || $cap->archive_template == __("left and right", 'cc'))) {
         locate_template(array('sidebar.php'), true);
         return;
     } else {
         if (!is_page() && ($cap->archive_template == "left" || $cap->archive_template == __("left", 'cc') || $cap->archive_template == 'full-width' || $cap->archive_template == __('full-width', 'cc'))) {
             return;
         }
     }
     if ($cap->sidebar_position == __('left and right', 'cc') || $cap->sidebar_position == __('right', 'cc')) {
         locate_template(array('sidebar.php'), true);
         return;
     }
 }
/**
 * Process email change verification or cancel requests.
 *
 * @since 2.1.0
 */
function bp_settings_verify_email_change()
{
    if (!bp_is_settings_component()) {
        return;
    }
    if (!bp_is_my_profile()) {
        return;
    }
    $redirect_to = trailingslashit(bp_displayed_user_domain() . bp_get_settings_slug());
    // Email change is being verified
    if (isset($_GET['verify_email_change'])) {
        $pending_email = bp_get_user_meta(bp_displayed_user_id(), 'pending_email_change', true);
        // Bail if the hash provided doesn't match the one saved in the database
        if (urldecode($_GET['verify_email_change']) !== $pending_email['hash']) {
            return;
        }
        $email_changed = wp_update_user(array('ID' => bp_displayed_user_id(), 'user_email' => trim($pending_email['newemail'])));
        if ($email_changed) {
            // Delete object cache for displayed user
            wp_cache_delete('bp_core_userdata_' . bp_displayed_user_id(), 'bp');
            // Delete the pending email change key
            bp_delete_user_meta(bp_displayed_user_id(), 'pending_email_change');
            // Post a success message and redirect
            bp_core_add_message(__('You have successfully verified your new email address.', 'buddypress'));
        } else {
            // Unknown error
            bp_core_add_message(__('There was a problem verifying your new email address. Please try again.', 'buddypress'), 'error');
        }
        bp_core_redirect($redirect_to);
        die;
        // Email change is being dismissed
    } elseif (!empty($_GET['dismiss_email_change'])) {
        bp_delete_user_meta(bp_displayed_user_id(), 'pending_email_change');
        bp_core_add_message(__('You have successfully dismissed your pending email change.', 'buddypress'));
        bp_core_redirect($redirect_to);
        die;
    }
}
Beispiel #16
0
 function body_class($wp_classes, $custom_classes = false)
 {
     global $bp;
     $bp_classes = array();
     if (bp_is_directory()) {
         $bp_classes[] = 'directory';
     } elseif (bp_is_single_item()) {
         $bp_classes[] = 'single-item';
     } elseif (bp_is_activity_component() || $this->show_activity_page) {
         $bp_classes[] = 'activity';
     }
     if ($this->adminbar && $this->theme->have_adminbar()) {
         $bp_classes[] = 'adminbar';
     }
     if (!is_page() && is_front_page() && is_file(CHILD_DIR . '/home.php')) {
         $bp_classes[] = 'home';
     }
     if ($this->show_activity_page) {
         $bp_classes[] = 'internal-page';
     } elseif (!bp_is_blog_page()) {
         $wp_classes = array();
         if (!bp_is_directory()) {
             $bp_classes[] = 'internal-page';
         }
         if (bp_is_user_profile()) {
             $bp_classes[] = 'profile';
         } elseif (bp_is_blogs_component()) {
             $bp_classes[] = 'blogs';
         } elseif (bp_is_messages_component()) {
             $bp_classes[] = 'messages';
         } elseif (bp_is_friends_component()) {
             $bp_classes[] = 'friends';
         } elseif (bp_is_groups_component()) {
             $bp_classes[] = 'groups';
         } elseif (bp_is_settings_component()) {
             $bp_classes[] = 'settings';
         }
     }
     if (is_user_logged_in()) {
         $bp_classes[] = 'logged-in';
         if (!bp_is_directory()) {
             if (bp_is_user_friends()) {
                 $bp_classes[] = 'my-friends';
             } elseif (bp_is_user_activity()) {
                 $bp_classes[] = 'my-activity';
             } elseif (bp_is_user_blogs()) {
                 $bp_classes[] = 'my-blogs';
             } elseif (bp_is_user_groups()) {
                 $bp_classes[] = 'my-groups';
             } elseif (bp_is_messages_inbox()) {
                 $bp_classes[] = 'inbox';
             } elseif (bp_is_messages_sentbox()) {
                 $bp_classes[] = 'sentbox';
             } elseif (bp_is_messages_compose_screen()) {
                 $bp_classes[] = 'compose';
             } elseif (bp_is_notices()) {
                 $bp_classes[] = 'notices';
             } elseif (bp_is_user_friend_requests()) {
                 $bp_classes[] = 'friend-requests';
             } elseif (bp_is_create_blog()) {
                 $bp_classes[] = 'create-blog';
             } elseif (bp_is_group_leave()) {
                 $bp_classes[] = 'leave-group';
             } elseif (bp_is_group_invites()) {
                 $bp_classes[] = 'group-invites';
             } elseif (bp_is_group_forum_topic_edit()) {
                 $bp_classes[] = 'group-forum-topic-edit';
             } elseif (bp_is_group_admin_page()) {
                 $bp_classes[] = 'group-admin';
             } elseif (bp_is_group_create()) {
                 $bp_classes[] = 'group-create';
             } elseif (bp_is_user_change_avatar()) {
                 $bp_classes[] = 'change-avatar';
             } elseif (bp_is_user_profile_edit()) {
                 $bp_classes[] = 'profile-edit';
             }
         }
     } else {
         $bp_classes[] = 'visitor';
     }
     if (bp_is_group_members()) {
         $bp_classes[] = 'group-members';
     } elseif (bp_is_group_home()) {
         $bp_classes[] = 'group-home';
     } elseif (bp_is_group_forum()) {
         $bp_classes[] = 'group-forum';
         if (bp_is_group_forum_topic()) {
             $bp_classes[] = 'group-forum-topic';
         }
     } else {
         if (bp_is_user_recent_commments()) {
             $bp_classes[] = 'recent-comments';
         }
         if (bp_is_user_recent_posts()) {
             $bp_classes[] = 'recent-posts';
         }
         if (bp_is_user_friends_activity()) {
             $bp_classes[] = 'friends-activity';
         } elseif (bp_is_single_activity()) {
             $bp_classes[] = 'activity-permalink';
         } elseif (bp_is_register_page()) {
             $bp_classes[] = 'registration';
         } elseif (bp_is_activation_page()) {
             $bp_classes[] = 'activation';
         }
     }
     /* Add the current_component, current_action into the bp classes */
     if (!bp_is_blog_page()) {
         if (!empty($bp->current_component)) {
             $bp_classes[] = $bp->current_component;
         }
         if (!empty($bp->current_action)) {
             $bp_classes[] = $bp->current_action;
         }
     }
     if ((!bp_is_blog_page() || is_home()) && !empty($custom_classes)) {
         $wp_classes = (array) $custom_classes;
     }
     /* Merge WP classes with BP classes */
     $classes = array_merge((array) $bp_classes, (array) $wp_classes);
     /* Remove any duplicates */
     $classes = array_unique($classes);
     return apply_filters('bp_get_the_body_class', $classes, $bp_classes, $wp_classes, $custom_classes);
 }
/**
 * Handles the deleting of a user
 */
function bp_settings_action_delete_account()
{
    // Bail if not a POST action
    if ('POST' !== strtoupper($_SERVER['REQUEST_METHOD'])) {
        return;
    }
    // Bail if no submit action
    if (!isset($_POST['delete-account-understand'])) {
        return;
    }
    // Bail if not in settings
    if (!bp_is_settings_component() || !bp_is_current_action('delete-account')) {
        return false;
    }
    // 404 if there are any additional action variables attached
    if (bp_action_variables()) {
        bp_do_404();
        return;
    }
    // Bail if account deletion is disabled
    if (bp_disable_account_deletion() && !bp_current_user_can('delete_users')) {
        return false;
    }
    // Nonce check
    check_admin_referer('delete-account');
    // Get username now because it might be gone soon!
    $username = bp_get_displayed_user_fullname();
    // delete the users account
    if (bp_core_delete_account(bp_displayed_user_id())) {
        // Add feedback ater deleting a user
        bp_core_add_message(sprintf(__('%s was successfully deleted.', 'buddypress'), $username), 'success');
        // Redirect to the root domain
        bp_core_redirect(bp_get_root_domain());
    }
}
Beispiel #18
0
	function bp_get_the_body_class( $wp_classes, $custom_classes = false ) {
		global $bp;

		if ( bp_is_front_page() )
			$bp_classes[] = 'home-page';

		if ( bp_is_directory() )
			$bp_classes[] = 'directory';

		if ( bp_is_user_profile() && !bp_is_blog_page() )
			$bp_classes[] = 'profile';

		if ( bp_is_activity_component() && !bp_is_blog_page() || ( bp_is_activity_front_page() && bp_is_front_page() ) )
			$bp_classes[] = 'activity';

		if ( bp_is_blogs_component() && !bp_is_blog_page()  )
			$bp_classes[] = 'blogs';

		if ( bp_is_messages_component() && !bp_is_blog_page()  )
			$bp_classes[] = 'messages';

		if ( bp_is_friends_component() && !bp_is_blog_page()  )
			$bp_classes[] = 'friends';

		if ( bp_is_groups_component() && !bp_is_blog_page()  )
			$bp_classes[] = 'groups';

		if ( bp_is_settings_component() && !bp_is_blog_page()  )
			$bp_classes[] = 'settings';

		if ( bp_is_single_item() )
			$bp_classes[] = 'single-item';

		if ( bp_is_messages_inbox() )
			$bp_classes[] = 'inbox';

		if ( bp_is_messages_sentbox() )
			$bp_classes[] = 'sentbox';

		if ( bp_is_messages_compose_screen() )
			$bp_classes[] = 'compose';

		if ( bp_is_notices() )
			$bp_classes[] = 'notices';

		if ( bp_is_friend_requests() )
			$bp_classes[] = 'friend-requests';

		if ( bp_is_user_friends() )
			$bp_classes[] = 'my-friends';

		if ( bp_is_create_blog() )
			$bp_classes[] = 'create-blog';

		if ( bp_is_user_recent_commments() )
			$bp_classes[] = 'recent-comments';

		if ( bp_is_user_recent_posts() )
			$bp_classes[] = 'recent-posts';

		if ( bp_is_user_blogs() && !bp_is_directory() )
			$bp_classes[] = 'my-blogs';

		if ( bp_is_user_groups() && !bp_is_directory() )
			$bp_classes[] = 'my-groups';

		if ( bp_is_group_leave() )
			$bp_classes[] = 'leave-group';

		if ( bp_is_group_invites() )
			$bp_classes[] = 'group-invites';

		if ( bp_is_group_members() )
			$bp_classes[] = 'group-members';

		if ( bp_is_group_forum_topic() )
			$bp_classes[] = 'group-forum-topic';

		if ( bp_is_group_forum_topic_edit() )
			$bp_classes[] = 'group-forum-topic-edit';

		if ( bp_is_group_forum() )
			$bp_classes[] = 'group-forum';

		if ( bp_is_group_admin_page() )
			$bp_classes[] = 'group-admin';

		if ( bp_is_group_create() )
			$bp_classes[] = 'group-create';

		if ( bp_is_group_home() )
			$bp_classes[] = 'group-home';

		if ( bp_is_change_avatar() )
			$bp_classes[] = 'change-avatar';

		if ( bp_is_profile_edit() )
			$bp_classes[] = 'profile-edit';

		if ( bp_is_user_friends_activity() )
			$bp_classes[] = 'friends-activity';

		if ( bp_is_user_activity() && !bp_is_directory() )
			$bp_classes[] = 'my-activity';

		if ( bp_is_activity_permalink() )
			$bp_classes[] = 'activity-permalink';

		if ( bp_is_register_page() )
			$bp_classes[] = 'registration';

		if ( bp_is_activation_page() )
			$bp_classes[] = 'activation';

		if ( is_user_logged_in() )
			$bp_classes[] = 'logged-in';

		/* Add the current_component, current_action into the bp classes */
		if ( !bp_is_blog_page() ) {
			if ( !empty( $bp->current_component ) )
				$bp_classes[] = $bp->current_component;

			if ( !empty( $bp->current_action ) )
				$bp_classes[] = $bp->current_action;
		}

		/* We don't want WordPress blog classes to appear on non-blog pages. */
		if ( !bp_is_blog_page() || is_home() ) {
			/* Preserve any custom classes already set */
			if ( !empty( $custom_classes ) )
				$wp_classes = (array) $custom_classes;
			else
				$wp_classes = array();
		}

		/* Merge WP classes with BP classes */
		$classes = array_merge( (array) $bp_classes, (array) $wp_classes );

		/* Remove any duplicates */
		$classes = array_unique( $classes );

		return apply_filters( 'bp_get_the_body_class', $classes, $bp_classes, $wp_classes, $custom_classes );
	}