/**
 * Restricting content to registered users and or user roles
 *
 * @since
 * @access public
 *
 * @param $atts
 * @param $content
 * @return mixed|void
 */
function rcp_restrict_shortcode($atts, $content = null)
{
    $atts = shortcode_atts(array('userlevel' => 'none', 'message' => '', 'paid' => false, 'level' => 0, 'subscription' => ''), $atts, 'restrict');
    global $rcp_options, $user_ID;
    if (strlen(trim($atts['message'])) > 0) {
        $teaser = $atts['message'];
    } elseif ($atts['paid']) {
        $teaser = $rcp_options['paid_message'];
    } else {
        $teaser = $rcp_options['free_message'];
    }
    $subscription = array_map('trim', explode(',', $atts['subscription']));
    $has_access = false;
    if ($atts['paid']) {
        if (rcp_is_active($user_ID) && rcp_user_has_access($user_ID, $atts['level'])) {
            $has_access = true;
        }
        $classes = 'rcp_restricted rcp_paid_only';
    } else {
        if (rcp_user_has_access($user_ID, $atts['level'])) {
            $has_access = true;
        }
        $classes = 'rcp_restricted';
    }
    if (!empty($subscription) && !empty($subscription[0])) {
        if (!in_array(rcp_get_subscription_id($user_ID), $subscription) || in_array(rcp_get_subscription_id($user_ID), $subscription) && rcp_is_expired($user_ID)) {
            $has_access = false;
        }
    }
    if ($atts['userlevel'] === 'admin' && !current_user_can('switch_themes')) {
        $has_access = false;
    }
    if ($atts['userlevel'] === 'editor' && !current_user_can('moderate_comments')) {
        $has_access = false;
    }
    if ($atts['userlevel'] === 'author' && !current_user_can('upload_files')) {
        $has_access = false;
    }
    if ($atts['userlevel'] === 'contributor' && !current_user_can('edit_posts')) {
        $has_access = false;
    }
    if ($atts['userlevel'] === 'subscriber' && !current_user_can('read')) {
        $has_access = false;
    }
    if ($atts['userlevel'] === 'none' && !is_user_logged_in()) {
        $has_access = false;
    }
    if (current_user_can('manage_options')) {
        $has_access = true;
    }
    $has_access = (bool) apply_filters('rcp_restrict_shortcode_has_access', $has_access, $user_ID, $atts);
    if ($has_access) {
        return apply_filters('rcp_restrict_shortcode_return', $content);
    } else {
        return '<div class="' . $classes . '">' . rcp_format_teaser($teaser) . '</div>';
    }
}
/**
 * EDD Forum Sidebar
 *
 * @since		1.0.0
 * @return		void
 */
function edd_bbp_sidebar()
{
    global $post;
    $user_id = get_the_author_meta('ID');
    $user_data = get_userdata($user_id);
    ?>
	<div class="box">

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

		<h3><?php 
    echo get_the_author_meta('first_name') . '  ' . get_the_author_meta('last_name');
    ?>
</h3>
		<p class="bbp-user-forum-role"><?php 
    printf('Forum Role: %s', bbp_get_user_display_role($user_id));
    ?>
</p>
		<p class="bbp-user-topic-count"><?php 
    printf('Topics Started: %s', bbp_get_user_topic_count_raw($user_id));
    ?>
</p>
		<p class="bbp-user-reply-count"><?php 
    printf('Replies Created: %s', bbp_get_user_reply_count_raw($user_id));
    ?>
</p>

		<div class="rcp_support_status">
			<h4>Priority Support Access</h4>
			<?php 
    if (function_exists('rcp_is_active')) {
        if (rcp_is_active($user_id)) {
            ?>
				<p>Has <strong>Priority Support</strong> access.</p>
			<?php 
        } elseif (rcp_is_expired($user_id)) {
            ?>
				<p><strong>Priority Support</strong> access has <span style="color:red;">expired</span>.</p>
			<?php 
        } else {
            ?>
				<p>Has no priority support accesss</p>
			<?php 
        }
    }
    ?>
		</div><!-- /.rcp_support_status -->

		<div class="edd_users_purchases">
			<h4>User's Purchases:</h4>
			<?php 
    $purchases = edd_get_users_purchases($user_data->user_email, 100, false, 'any');
    if ($purchases) {
        echo '<ul>';
        foreach ($purchases as $purchase) {
            echo '<li>';
            echo '<strong><a href="' . admin_url('edit.php?post_type=download&page=edd-payment-history&view=view-order-details&id=' . $purchase->ID) . '">#' . $purchase->ID . ' - ' . edd_get_payment_status($purchase, true) . '</a></strong><br/>';
            $downloads = edd_get_payment_meta_downloads($purchase->ID);
            foreach ($downloads as $download) {
                echo get_the_title($download['id']) . ' - ' . date('F j, Y', strtotime($purchase->post_date)) . '<br/>';
            }
            if (function_exists('edd_software_licensing')) {
                $licenses = edd_software_licensing()->get_licenses_of_purchase($purchase->ID);
                if ($licenses) {
                    echo '<strong>Licenses:</strong><br/>';
                    foreach ($licenses as $license) {
                        $key = edd_software_licensing()->get_license_key($license->ID);
                        echo '<a href="' . admin_url('edit.php?post_type=download&page=edd-licenses&s=' . $key) . '">' . $key . '</a>';
                        echo ' - ' . edd_software_licensing()->get_license_status($license->ID);
                        echo '<br/>';
                    }
                }
                echo '<hr/>';
            }
            echo '</li>';
        }
        echo '</ul>';
    } else {
        echo '<p>This user has never purchased anything.</p>';
    }
    ?>
		</div>
	</div>
	<?php 
}
Example #3
0
		<tr>
			<td><?php 
rcp_print_status();
?>
</td>
			<td><?php 
echo rcp_get_subscription();
?>
</td>
			<td><?php 
echo rcp_get_expiration_date();
?>
</td>
			<td>
				<?php 
if ((rcp_is_expired($user_ID) || !rcp_is_recurring($user_ID) || rcp_get_status($user_ID) == 'cancelled') && rcp_subscription_upgrade_possible($user_ID)) {
    echo '<a href="' . esc_url(get_permalink($rcp_options['registration_page'])) . '" title="' . __('Renew your subscription', 'rcp') . '" class="rcp_sub_details_renew">' . __('Renew your subscription', 'rcp') . '</a>';
} elseif (!rcp_is_active($user_ID) && rcp_subscription_upgrade_possible($user_ID)) {
    echo '<a href="' . esc_url(get_permalink($rcp_options['registration_page'])) . '" title="' . __('Upgrade your subscription', 'rcp') . '" class="rcp_sub_details_renew">' . __('Upgrade your subscription', 'rcp') . '</a>';
} elseif (rcp_is_active($user_ID) && rcp_is_paypal_subscriber()) {
    echo '<a href="https://www.paypal.com/cgi-bin/customerprofileweb?cmd=_manage-paylist" target="_blank" title="' . __('Cancel your subscription', 'rcp') . '">' . __('Cancel your subscription', 'rcp') . '</a>';
}
do_action('rcp_subscription_details_action_links');
?>
			</td>
		</tr>
	</tbody>
</table>
<table class="rcp-table" id="rcp-payment-history">
	<thead>
		<tr>
function rcp_get_status($user_id)
{
    $status = get_user_meta($user_id, 'rcp_status', true);
    // double check that the status and expiration match. Update if needed
    if ($status == 'active' && rcp_is_expired($user_id)) {
        rcp_set_status($user_id, 'expired');
        $status = 'expired';
    }
    if ($status == '') {
        $status = __('free', 'rcp');
    }
    return $status;
}
/**
 * Add priority support status to users
 *
 * @since        1.0.0
 * @return        void
 */
function wi_bbp_add_user_priority_support_status()
{
    if (!current_user_can('moderate')) {
        return;
    } elseif (!function_exists('rcp_get_status')) {
        return;
    }
    $user_id = bbp_get_displayed_user_field('ID');
    echo '<div class="rcp_support_status">';
    echo '<h4>Priority Support Access</h4>';
    if (rcp_is_active($user_id)) {
        echo '<p>Has <strong>Priority Support</strong> access.</p>';
    } elseif (rcp_is_expired($user_id)) {
        echo '<p><strong>Priority Support</strong> access has <span style="color:red;">expired</span>.</p>';
    } else {
        echo '<p>Has no priority support accesss</p>';
    }
    echo '</div>';
}
<?php 
}
?>
<table class="rcp-table" id="rcp-account-overview">
	<thead>
		<tr>
			<th><?php 
_e('Status', 'rcp');
?>
</th>
			<th><?php 
_e('Subscription', 'rcp');
?>
</th>
			<?php 
if (rcp_is_recurring() && !rcp_is_expired()) {
    ?>
			<th><?php 
    _e('Renewal Date', 'rcp');
    ?>
</th>
			<?php 
} else {
    ?>
			<th><?php 
    _e('Expiration', 'rcp');
    ?>
</th>
			<?php 
}
?>