/**
 * Set the document title for IdeaStream pages
 *
 * @since  2.3.0
 *
 * @param  array  $document_title The WordPress Document title
 * @return array                  The IdeaStream Document title
 */
function wp_idea_stream_document_title_parts($document_title = array())
{
    if (!wp_idea_stream_is_ideastream()) {
        return $document_title;
    }
    $new_document_title = $document_title;
    // Reset the document title if needed
    if (!wp_idea_stream_is_single_idea()) {
        $title = (array) wp_idea_stream_title();
        // On user's profile, add some piece of info
        if (wp_idea_stream_is_user_profile() && count($title) === 1) {
            // Seeing comments of the user
            if (wp_idea_stream_is_user_profile_comments()) {
                $title[] = __('Idea Comments', 'wp-idea-stream');
                // Get the pagination page
                if (get_query_var(wp_idea_stream_cpage_rewrite_id())) {
                    $cpage = get_query_var(wp_idea_stream_cpage_rewrite_id());
                } elseif (!empty($_GET[wp_idea_stream_cpage_rewrite_id()])) {
                    $cpage = $_GET[wp_idea_stream_cpage_rewrite_id()];
                }
                if (!empty($cpage)) {
                    $title['page'] = sprintf(__('Page %s', 'wp-idea-stream'), (int) $cpage);
                }
                // Seeing Ratings for the user
            } elseif (wp_idea_stream_is_user_profile_rates()) {
                $title[] = __('Idea Ratings', 'wp-idea-stream');
                // Seeing The root profile
            } else {
                $title[] = __('Ideas', 'wp-idea-stream');
            }
        }
        // Get WordPress Separator
        $sep = apply_filters('document_title_separator', '-');
        $new_document_title['title'] = implode(" {$sep} ", array_filter($title));
    }
    // Set the site name if not already set.
    if (!isset($new_document_title['site'])) {
        $new_document_title['site'] = get_bloginfo('name', 'display');
    }
    // Unset tagline for IdeaStream Pages
    if (isset($new_document_title['tagline'])) {
        unset($new_document_title['tagline']);
    }
    return apply_filters('wp_idea_stream_document_title_parts', $new_document_title, $document_title);
}
示例#2
0
/**
 * Gets a message in case no idea was found
 *
 * @package WP Idea Stream
 * @subpackage ideas/tags
 *
 * @since 2.0.0
 *
 * @uses   wp_idea_stream_is_user_profile() to check if on a user's profile
 * @uses   wp_idea_stream_is_user_profile_rates() to check if the rates part of a user's profile
 * @uses   wp_idea_stream_users_get_displayed_user_displayname() to get the displayed user's display name
 * @uses   wp_idea_stream_is_category() to check if a category is displayed
 * @uses   wp_idea_stream_is_tag() to check if a tag is displayed
 * @uses   wp_idea_stream_is_search() to check if a search is being performed
 * @uses   wp_idea_stream_is_orderby() to check if a specific order is being requested
 * @uses   wp_idea_stream_user_can() to check for user's capability
 * @uses   wp_idea_stream_get_form_url() to get the form url to add new ideas
 * @uses   apply_filters() call 'wp_idea_stream_ideas_get_not_found' to override the output
 * @return string the message to output
 */
function wp_idea_stream_ideas_get_not_found()
{
    // general feedback
    $output = esc_html__('It looks like no idea has been submitted yet, please sign in or sign up to add yours!', 'wp-idea-stream');
    if (wp_idea_stream_is_user_profile()) {
        if (!wp_idea_stream_is_user_profile_rates()) {
            $output = sprintf(__('It looks like %s has not submitted any idea yet', 'wp-idea-stream'), wp_idea_stream_users_get_displayed_user_displayname());
            // We're viewing the idea the user rated
        } else {
            $output = sprintf(__('It looks like %s has not rated any idea yet', 'wp-idea-stream'), wp_idea_stream_users_get_displayed_user_displayname());
        }
    } else {
        if (wp_idea_stream_is_category()) {
            $output = __('It looks like no idea has been published in this category yet', 'wp-idea-stream');
        } else {
            if (wp_idea_stream_is_tag()) {
                $output = __('It looks like no idea has been marked with this tag yet', 'wp-idea-stream');
            } else {
                if (wp_idea_stream_is_search()) {
                    $output = __('It looks like no idea match your search terms.', 'wp-idea-stream');
                } else {
                    if (wp_idea_stream_is_search()) {
                        $output = __('It looks like no idea match your search terms.', 'wp-idea-stream');
                    } else {
                        if (wp_idea_stream_is_orderby('rates_count')) {
                            $output = __('It looks like no idea has been rated yet.', 'wp-idea-stream');
                        } else {
                            if (wp_idea_stream_user_can('publish_ideas')) {
                                $output = sprintf(__('It looks like no idea has been submitted yet, <a href="%s" title="Submit your idea">add yours</a>', 'wp-idea-stream'), esc_url(wp_idea_stream_get_form_url()));
                            }
                        }
                    }
                }
            }
        }
    }
    /**
     * @param  string $output the message to output
     */
    return apply_filters('wp_idea_stream_ideas_get_not_found', $output);
}
示例#3
0
/**
 * Enqueues Users description editing scripts
 *
 * @package WP Idea Stream
 * @subpackage users/functions
 *
 * @since 2.0.0
 *
 * @uses wp_idea_stream_is_ideastream() to check it's plugin's territory
 * @uses wp_idea_stream_is_current_user_profile() to check the current user is on his profile
 * @uses wp_enqueue_script() to add the script to WordPress queue
 * @uses wp_idea_stream_get_js_script() to get a specific javascript
 * @uses wp_idea_stream_get_version() to get plugin's version
 * @uses wp_localize_script() to internatianlize data used in the script
 * @uses apply_filters() Calls 'wp_idea_stream_users_current_profile_script' to override/add new datas
 */
function wp_idea_stream_users_enqueue_scripts()
{
    if (!wp_idea_stream_is_user_profile()) {
        return;
    }
    // Viewing another user's profile with no sharing dialog box doesn't need js.
    if (!wp_idea_stream_is_current_user_profile() && !wp_idea_stream_is_embed_profile()) {
        return;
    }
    $js_vars = array('is_profile' => 1);
    if (wp_idea_stream_is_current_user_profile()) {
        $js_vars['profile_editing'] = 1;
    }
    wp_enqueue_script('wp-idea-stream-script', wp_idea_stream_get_js_script('script'), array('jquery'), wp_idea_stream_get_version(), true);
    wp_localize_script('wp-idea-stream-script', 'wp_idea_stream_vars', apply_filters('wp_idea_stream_users_current_profile_script', $js_vars));
}