function rcp_sanitize_settings($data)
{
    if (empty($data['license_key'])) {
        delete_option('rcp_license_status');
    }
    if (!empty($_POST['rcp_license_deactivate'])) {
        rcp_deactivate_license();
    } elseif (!empty($data['license_key'])) {
        rcp_activate_license();
    }
    // Make sure the [login_form] short code is on the redirect page. Users get locked out if it is not
    if (isset($data['hijack_login_url'])) {
        $page_id = absint($data['login_redirect']);
        $page = get_post($page_id);
        if (!$page || 'page' != $page->post_type) {
            unset($data['hijack_login_url']);
        }
        if (false === strpos($page->post_content, '[login_form') && false === strpos($page->post_content, '[edd_login') && false === strpos($page->post_content, '[subscription_details') && false === strpos($page->post_content, '[login')) {
            unset($data['hijack_login_url']);
        }
    }
    do_action('rcp_save_settings', $data);
    return $data;
}
Example #2
0
function rcp_sanitize_settings($data)
{
    if (empty($data['license_key'])) {
        delete_option('rcp_license_status');
    }
    if (!empty($_POST['rcp_license_deactivate'])) {
        rcp_deactivate_license();
    } elseif (!empty($data['license_key'])) {
        rcp_activate_license();
    }
    // Trim API key fields.
    $api_key_fields = array('stripe_test_secret', 'stripe_test_publishable', 'stripe_live_secret', 'stripe_live_publishable', 'twocheckout_test_private', 'twocheckout_test_publishable', 'twocheckout_live_private', 'twocheckout_live_publishable');
    foreach ($api_key_fields as $field) {
        if (!empty($data[$field])) {
            $data[$field] = trim($data[$field]);
        }
    }
    delete_transient('rcp_login_redirect_invalid');
    // Make sure the [login_form] short code is on the redirect page. Users get locked out if it is not
    if (isset($data['hijack_login_url'])) {
        $page_id = absint($data['login_redirect']);
        $page = get_post($page_id);
        if (!$page || 'page' != $page->post_type) {
            unset($data['hijack_login_url']);
        }
        if (false === strpos($page->post_content, '[login_form') && false === strpos($page->post_content, '[edd_login') && false === strpos($page->post_content, '[subscription_details') && false === strpos($page->post_content, '[login')) {
            unset($data['hijack_login_url']);
            set_transient('rcp_login_redirect_invalid', 1, MINUTE_IN_SECONDS);
        }
    }
    do_action('rcp_save_settings', $data);
    return $data;
}