function cp_redirect_membership()
{
    global $current_user, $cp_options;
    $current_requirement = false;
    $redirect_user = false;
    $current_user = wp_get_current_user();
    //code added by rj starts(user login redirect to membership form)
    if (!is_user_logged_in()) {
        wp_redirect(CP_LOGIN);
    }
    //code added by rj ends
    if (!$cp_options->enable_membership_packs) {
        return;
    }
    if (isset($_POST['cat'])) {
        $current_requirement = get_membership_requirement($_POST['cat']);
    }
    if ($cp_options->required_membership_type == 'all') {
        $current_requirement = 'all';
    }
    if (!$current_requirement) {
        return;
    }
    $current_membership = !empty($current_user->active_membership_pack) ? get_pack($current_user->active_membership_pack) : false;
    if (!$current_membership || empty($current_user->membership_expires)) {
        $redirect_user = true;
    } else {
        if (!stristr($current_membership->pack_type, 'required') || appthemes_days_between_dates($current_user->membership_expires) < 0) {
            $redirect_user = true;
        }
    }
    if ($redirect_user) {
        $redirect_url = add_query_arg(array('membership' => 'required', 'cat' => $current_requirement), CP_MEMBERSHIP_PURCHASE_URL);
        wp_redirect($redirect_url);
        exit;
    }
}
Пример #2
0
auth_redirect_login();
// grabs the user info and puts into vars
global $current_user, $app_abbr;
$current_user = wp_get_current_user();
// don't cache the headers
// nocache_headers();
// this is needed for IE to work with the go back button
header("Cache-control: private");
//if membership required to post, and no membership is active on logged in user, redirect to membership page
if (isset($current_user->active_membership_pack)) {
    $current_membership = get_pack($current_user->active_membership_pack);
} else {
    $current_membership = false;
}
if (isset($_POST['cat'])) {
    $current_requirement = get_membership_requirement($_POST['cat']);
}
//if requirement is found, but required is not in the users pack type, fail and redirect to membership page.
if (isset($current_requirement) && $current_requirement && get_option($app_abbr . '_enable_membership_packs') == 'yes') {
    //if no membership, or if membership but not a membership that satisfies required memberships, or if membership expired
    if (!isset($current_membership->pack_type) || !isset($current_user->membership_expires) || isset($current_membership->pack_type) && !stristr($current_membership->pack_type, 'required') || appthemes_days_between_dates($current_user->membership_expires) < 0) {
        wp_redirect(CP_MEMBERSHIP_PURCHASE_URL . '?membership=required&cat=' . $current_requirement);
        exit;
    }
}
// needed for file uploading to work
if (defined('ABSPATH')) {
    require_once ABSPATH . 'wp-admin/includes/file.php';
    require_once ABSPATH . 'wp-admin/includes/image.php';
} else {
    require_once '../wp-admin/includes/file.php';
Пример #3
0
function cp_redirect_membership()
{
    global $current_user, $app_abbr;
    $current_user = wp_get_current_user();
    //if membership required to post, and no membership is active on logged in user, redirect to membership page
    $current_membership = isset($current_user->active_membership_pack) ? get_pack($current_user->active_membership_pack) : false;
    if (isset($_POST['cat'])) {
        $current_requirement = get_membership_requirement($_POST['cat']);
    }
    if (get_option($app_abbr . '_required_membership_type') == 'all') {
        $current_requirement = 'all';
    }
    //if requirement is found, but required is not in the users pack type, fail and redirect to membership page.
    if (isset($current_requirement) && $current_requirement && get_option($app_abbr . '_enable_membership_packs') == 'yes') {
        //if no membership, or if membership but not a membership that satisfies required memberships, or if membership expired
        if (!isset($current_membership->pack_type) || !isset($current_user->membership_expires) || isset($current_membership->pack_type) && !stristr($current_membership->pack_type, 'required') || appthemes_days_between_dates($current_user->membership_expires) < 0) {
            $redirect_url = add_query_arg(array('membership' => 'required', 'cat' => $current_requirement), CP_MEMBERSHIP_PURCHASE_URL);
            wp_redirect($redirect_url);
            exit;
        }
    }
}
Пример #4
0
/**
 * Checks and redirects to membership purchase page if not meet membership requirement.
 *
 * @return void
 */
function cp_redirect_membership()
{
    global $current_user, $cp_options;
    $current_requirement = false;
    if (!$cp_options->enable_membership_packs) {
        return;
    }
    if (isset($_POST['cat'])) {
        $current_requirement = get_membership_requirement($_POST['cat']);
    }
    if ($cp_options->required_membership_type == 'all') {
        $current_requirement = 'all';
    }
    if (!$current_requirement) {
        return;
    }
    $current_membership = cp_get_user_membership_package($current_user->ID);
    if (!$current_membership || !$current_membership->pack_satisfies_required) {
        $redirect_url = add_query_arg(array('membership' => 'required', 'cat' => $current_requirement), CP_MEMBERSHIP_PURCHASE_URL);
        wp_redirect($redirect_url);
        exit;
    }
}