<?php 
    if (!empty($_REQUEST['search_terms'])) {
        ?>
			<p><?php 
        echo sprintf(__('There were no Achievements found matching &ldquo;%s.&rdquo;', 'dpa'), apply_filters('dpa_get_achievements_search_query', stripslashes($_REQUEST['search_terms'])));
        ?>
</p>
		<?php 
    } elseif (dpa_is_member_my_achievements_page() && bp_is_my_profile()) {
        ?>
			<p><?php 
        _e("You haven't unlocked any Achievements yet", 'dpa');
        ?>
</p>
		<?php 
    } elseif (dpa_is_member_my_achievements_page() && !bp_is_my_profile()) {
        ?>
			<p><?php 
        printf(__("%s hasn't unlocked any Achievements yet", 'dpa'), bp_get_displayed_user_fullname());
        ?>
</p>
		<?php 
    } else {
        ?>
			<p><?php 
        _e('Oops, no Achievements were found!', 'dpa');
        ?>
</p>
		<?php 
    }
    ?>
/**
 * The main template tag function that starts it all. Take criteria, queries the databases and paginates it
 *
 * @since 2.0
 * @param array|string $args See DPA_Achievement_Template
 * @uses DPA_Achievement_Template
 * @global DPA_Achievement_Template $achievements_template Achievements template tag object
 * @global object $bp BuddyPress global settings
 * @return bool Did any Achievements match critera?
 */
function dpa_has_achievements($args = '')
{
    global $achievements_template, $bp;
    $search_terms = '';
    $slug = '';
    $type = 'all';
    $user_id = 0;
    // User filtering
    if (!empty($bp->displayed_user->id)) {
        $user_id = $bp->displayed_user->id;
    } elseif (!empty($bp->loggedin_user->id)) {
        $user_id = $bp->loggedin_user->id;
    }
    // Type
    if ($bp->is_single_item) {
        // This might be redundant.
        $type = 'single';
        $slug = $bp->achievements->current_achievement->slug;
    }
    if (dpa_is_member_my_achievements_page() && 'all' == $type) {
        $type = 'newest';
    }
    if (!empty($_REQUEST['s'])) {
        $search_terms = stripslashes($_REQUEST['s']);
    }
    $defaults = array('skip_detail_page_result' => true, 'max' => 0, 'page' => 1, 'per_page' => 20, 'populate_extras' => true, 'search_terms' => $search_terms, 'slug' => $slug, 'type' => $type, 'user_id' => $user_id, 'action' => '');
    $r = nxt_parse_args($args, $defaults);
    extract($r);
    if ('single' != $type && dpa_is_member_my_achievements_page() || dpa_is_achievements_component() && !dpa_is_member_my_achievements_page() && $bp->loggedin_user->id && (!empty($_COOKIE['bp-achievements-scope']) && 'personal' == stripslashes($_COOKIE['bp-achievements-scope']))) {
        $type = 'unlocked';
    }
    $achievements_template = new DPA_Achievement_Template((int) $user_id, $type, (int) $page, (int) $per_page, (int) $max, $slug, $action, $search_terms, (bool) $populate_extras, (bool) $skip_detail_page_result);
    return apply_filters('dpa_has_achievements', $achievements_template->has_achievements());
}
Пример #3
0
?>

						<?php 
do_action('bp_member_options_nav');
?>
					</ul>
				</div>
			</div><!-- #item-nav -->

			<div id="item-body">
				<?php 
do_action('bp_before_member_body');
?>

				<?php 
if (dpa_is_member_my_achievements_page()) {
    ?>
					<?php 
    dpa_load_template(array('members/single/achievements/unlocked.php'));
    ?>
				<?php 
}
?>

				<?php 
do_action('bp_after_member_body');
?>

			</div><!-- #item-body -->

			<?php