Ejemplo n.º 1
0
/**
 * Map IdeaStream User's profile, comments part, to BuddyPress one
 *
 * @package WP Idea Stream
 * @subpackage buddypress/functions
 *
 * @since  2.0.0
 *
 * @param  int     $user_id       the user ID
 * @param  string  $user_nicename the user nicename
 * @uses   bp_core_get_user_domain() to build BuddyPress user's base url
 * @uses   wp_idea_stream_root_slug() to get IdeaStream root slug
 * @return string                 the BuddyPressified user's profile comments url
 */
function wp_idea_stream_buddypress_get_user_comments_url($user_id = 0, $user_nicename = '')
{
    if (empty($user_id)) {
        return false;
    }
    $root_url = bp_core_get_user_domain($user_id, $user_nicename);
    if (!wp_idea_stream_get_idea_var('is_user_embed')) {
        $comments_slug = buddypress()->ideastream->idea_nav['comments']['slug'];
    } else {
        $comments_slug = wp_idea_stream_user_comments_slug();
    }
    return trailingslashit($root_url . wp_idea_stream_root_slug() . '/' . $comments_slug);
}
Ejemplo n.º 2
0
/**
 * User comments slug of the plugin
 *
 * @package WP Idea Stream
 * @subpackage admin/settings
 *
 * @since 2.0.0
 *
 * @uses   esc_attr() to sanitize the attribute
 * @uses   wp_idea_stream_user_comments_slug() to get the active slug
 * @return string HTML output
 */
function wp_idea_stream_user_comments_slug_setting_callback()
{
    ?>

	<input name="_ideastream_user_comments_slug" id="_ideastream_user_comments_slug" type="text" class="regular-text code" value="<?php 
    echo esc_attr(wp_idea_stream_user_comments_slug());
    ?>
" />

	<?php 
}
Ejemplo n.º 3
0
 /**
  * Setup the rewrite ids and slugs
  *
  * @package WP Idea Stream
  * @subpackage core/classes
  *
  * @since 2.0.0
  *
  * @uses  wp_idea_stream_user_rewrite_id()
  * @uses  wp_idea_stream_user_rates_rewrite_id()
  * @uses  wp_idea_stream_user_comments_rewrite_id()
  * @uses  wp_idea_stream_cpage_rewrite_id()
  * @uses  wp_idea_stream_action_rewrite_id()
  * @uses  wp_idea_stream_search_rewrite_id()
  * @uses  wp_idea_stream_user_slug()
  * @uses  wp_idea_stream_user_rates_slug()
  * @uses  wp_idea_stream_user_comments_slug()
  * @uses  wp_idea_stream_cpage_slug()
  * @uses  wp_idea_stream_action_slug()
  */
 private function setup_globals()
 {
     /** Rewrite ids ***************************************************************/
     $this->page_rid = 'paged';
     // WordPress built-in global var
     $this->user_rid = wp_idea_stream_user_rewrite_id();
     $this->user_rates_rid = wp_idea_stream_user_rates_rewrite_id();
     $this->user_comments_rid = wp_idea_stream_user_comments_rewrite_id();
     $this->cpage_rid = wp_idea_stream_cpage_rewrite_id();
     $this->action_rid = wp_idea_stream_action_rewrite_id();
     $this->search_rid = wp_idea_stream_search_rewrite_id();
     /** Rewrite slugs *************************************************************/
     $this->user_slug = wp_idea_stream_user_slug();
     $this->user_rates_slug = wp_idea_stream_user_rates_slug();
     $this->user_comments_slug = wp_idea_stream_user_comments_slug();
     $this->cpage_slug = wp_idea_stream_cpage_slug();
     $this->action_slug = wp_idea_stream_action_slug();
 }
Ejemplo n.º 4
0
/**
 * Builds user's profile nav
 *
 * @package WP Idea Stream
 * @subpackage users/functions
 *
 * @since 2.0.0
 * @since 2.3.0 Added the $nofilter parameter to skip filters
 *
 * @param  int $user_id User id
 * @param  string $user_nicename Optional. User nicename
 * @param  bool $nofilter. Whether to fire filters or not.
 * @uses   wp_idea_stream_users_get_user_profile_url() to get user main profile url
 * @uses   wp_idea_stream_is_user_profile_ideas() to check whether main profile is currently displayed
 * @uses   sanitize_title() to sanitize the nav slug
 * @uses   wp_idea_stream_users_get_user_comments_url() to get user comments profile url
 * @uses   wp_idea_stream_is_user_profile_comments() to check whether comments profile is currently displayed
 * @uses   wp_idea_stream_user_comments_slug() to get user comments slug
 * @uses   wp_idea_stream_is_rating_disabled() to check ratings functionnality is available
 * @uses   wp_idea_stream_users_get_user_rates_url() to get user rates profile url
 * @uses   wp_idea_stream_is_user_profile_rates() to check whether rates profile is currently displayed
 * @uses   wp_idea_stream_user_rates_slug() to get user rates slug
 * @uses   apply_filters() Calls 'wp_idea_stream_users_get_profile_nav_items' to override/add new datas
 * @return array the nav items organized in an associative array
 */
function wp_idea_stream_users_get_profile_nav_items($user_id = 0, $username = '', $nofilter = false)
{
    // Bail if no id or username are provided.
    if (empty($user_id) || empty($username)) {
        return array();
    }
    $nav_items = array('profile' => array('title' => __('Published', 'wp-idea-stream'), 'url' => wp_idea_stream_users_get_user_profile_url($user_id, $username), 'current' => wp_idea_stream_is_user_profile_ideas(), 'slug' => sanitize_title(_x('ideas', 'user ideas profile slug for BuddyPress use', 'wp-idea-stream'))), 'comments' => array('title' => __('Commented', 'wp-idea-stream'), 'url' => wp_idea_stream_users_get_user_comments_url($user_id, $username), 'current' => wp_idea_stream_is_user_profile_comments(), 'slug' => wp_idea_stream_user_comments_slug()));
    if (!wp_idea_stream_is_rating_disabled()) {
        $nav_items['rates'] = array('title' => __('Rated', 'wp-idea-stream'), 'url' => wp_idea_stream_users_get_user_rates_url($user_id, $username), 'current' => wp_idea_stream_is_user_profile_rates(), 'slug' => wp_idea_stream_user_rates_slug());
    }
    if (false === $nofilter) {
        /**
         * Filter the available user's profile nav items
         *
         * @param array  $nav_items     the nav items
         * @param int    $user_id       the user ID
         * @param string $username the username
         */
        return apply_filters('wp_idea_stream_users_get_profile_nav_items', $nav_items, $user_id, $username);
    } else {
        return $nav_items;
    }
}