: str_replace(): Passing null to parameter #2 ($replace) of type array|string is deprecated in
use Leadin\utils\QueryParameters;
* Class for helping route around the plugin in OAuth mode.
const EXPIRED = 'leadin_expired';
const JUST_CONNECTED = 'leadin_just_connected';
const IS_NEW_PORTAL = 'is_new_portal';
const REDIRECT_NONCE = 'leadin_redirect';
const REVIEW = 'leadin_review';
* Redirect to the root of the leadin plugin with optional query parameters.
* Verified with a redirect nonce.
* @param string $page the WordPress page parameter to redirect to.
* @param array $extra_params Associative array of parameters to add to the redirected URL.
public static function redirect( $page, $extra_params = array() ) {
$redirect_params = array_merge(
array( 'page' => $page ),
array( self::REDIRECT_NONCE => wp_create_nonce( self::REDIRECT_NONCE ) ),
$redirect_url = add_query_arg(
urlencode_deep( $redirect_params ),
wp_safe_redirect( $redirect_url );
* Return a boolean if the plugin has just been connected.
* Signified by query parameter flag `leadin_just_connected`.
* @return bool True if the plugin has just connected.
public static function has_just_connected_with_oauth() {
$just_connected_param = QueryParameters::get_param(
return null !== $just_connected_param;
* Return a boolean if the plugin is being used with a new portal.
* Signified by query parameter flag `is_new_portal`.
* @return bool True if the plugin has just connected using a new portal.
public static function is_new_portal_with_oauth() {
$just_connected_param = QueryParameters::get_param(
return null !== $just_connected_param;
* Reads query param to see if request has review request query params
* @return bool True if the `leadin_review` query parameter is not empty
public static function has_review_request() {
$is_review_request = QueryParameters::get_param(
return ! empty( $is_review_request );
* Reads query param to see if request has review request query params set to true
* @return bool True if the `leadin_review` query parameter is true
public static function is_review_request() {
$is_review_request = QueryParameters::get_param(
return 'true' === $is_review_request;