| Server IP : 104.21.21.239 / Your IP : 216.73.217.39 Web Server : Apache/2.4.68 (Amazon Linux) OpenSSL/3.5.5 System : Linux ip-172-31-69-123.ec2.internal 6.1.176-223.369.amzn2023.x86_64 #1 SMP PREEMPT_DYNAMIC Fri Jul 24 13:34:27 UTC 2026 x86_64 User : ec2-user ( 1000) PHP Version : 8.4.23 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /home/home2/domains/siparentBAK/wp-content/plugins/optinmonster/OMAPI/ |
Upload File : |
<?php
/**
* Urls class.
*
* @since 2.2.0
*
* @package OMAPI
* @author Justin Sternberg
*/
// Exit if accessed directly.
if ( ! defined( 'ABSPATH' ) ) {
exit;
}
/**
* Urls class.
*
* @since 2.2.0
*/
class OMAPI_Urls {
/**
* Get the settings url.
*
* @since 2.2.0
*
* @param array $args Array of query args.
*
* @return string
*/
public static function settings( $args = array() ) {
return self::om_admin( 'settings', $args );
}
/**
* Get the campaigns url.
*
* @since 2.2.0
*
* @param array $args Array of query args.
*
* @return string
*/
public static function campaigns( $args = array() ) {
return self::om_admin( 'campaigns', $args );
}
/**
* Get the templates url.
*
* @since 2.2.0
*
* @param array $args Array of query args.
*
* @return string
*/
public static function templates( $args = array() ) {
return self::om_admin( 'templates', $args );
}
/**
* Get the OM wizard url.
*
* @since 2.2.0
*
* @param array $args Array of query args.
*
* @return string
*/
public static function wizard( $args = array() ) {
return self::om_admin( 'onboarding-wizard', $args );
}
/**
* Get the contextual OM dashboard url.
*
* @since 2.2.0
*
* @param array $args Array of query args.
*
* @return string
*/
public static function dashboard( $args = array() ) {
return self::om_admin( 'dashboard', $args );
}
/**
* Get the campaign output settings edit url.
*
* @since 2.2.0
*
* @param string $campaign_slug The campaign slug to edit.
* @param array $args Array of query args.
*
* @return string
*/
public static function campaign_output_settings( $campaign_slug, $args = array() ) {
$args = array_merge( $args, array( 'campaignId' => $campaign_slug ) );
return self::campaigns( $args );
}
/**
* Get the OM onboarding dashboard url.
*
* @since 2.2.0
*
* @param array $args Array of query args.
*
* @return string
*/
public static function onboarding( $args = array() ) {
$args = array_merge( $args, array( 'info' => true ) );
return self::dashboard( $args );
}
/**
* Get a link to an OM admin page.
*
* @since 2.2.0
*
* @param string $page Page shortened slug.
* @param array $args Array of query args.
*
* @return string
*/
public static function om_admin( $page, $args ) {
$defaults = array(
'page' => 'optin-monster-' . $page,
);
return self::admin( wp_parse_args( $args, $defaults ) );
}
/**
* Get an admin page url.
*
* @since 2.2.0
*
* @param array $args Array of query args.
*
* @return string
*/
public static function admin( $args = array() ) {
$url = add_query_arg( $args, admin_url( 'admin.php' ) );
return esc_url_raw( $url );
}
/**
* Get app url, with proper query args set to ensure going to correct account, and setting return
* query arg to come back (if relevant on the destination page).
*
* @since 2.2.0
*
* @param string $path The path on the app.
* @param string $return_url Url to return. Will default to wp_get_referer().
*
* @return string The app url.
*/
public static function om_app( $path, $return_url = '' ) {
$app_url = OPTINMONSTER_APP_URL . '/';
$final_destination = $app_url . $path;
if ( empty( $return_url ) ) {
$return_url = wp_get_referer();
if ( empty( $return_url ) ) {
$return_url = self::dashboard();
}
}
$return_url = rawurlencode( $return_url );
$final_destination = add_query_arg( 'return', $return_url, $final_destination );
$url = add_query_arg( 'redirect_to', rawurlencode( $final_destination ), $app_url );
$account_id = OMAPI::get_instance()->get_option( 'userId' );
if ( ! empty( $account_id ) ) {
$url = add_query_arg( 'accountId', $account_id, $url );
}
return $url;
}
/**
* Get upgrade url, with utm_medium param and optional feature.
*
* @since 2.4.0
*
* @param string $utm_medium The utm_medium query param.
* @param string $return_url Url to return. Will default to wp_get_referer().
*
* @return string The upgrade url.
*/
public static function upgrade( $utm_medium, $feature = 'none', $return_url = '' ) {
$path = sprintf(
'account/upgrade/?utm_source=WordPress&%1$s=pluginMenu&utm_campaign=Plugin&feature=%2$s',
$utm_medium,
$feature
);
return self::om_app( $path, $return_url );
}
/**
* Returns the API credentials for OptinMonster.
*
* @since 2.2.0
*
* @return string The API url to use for embedding on the page.
*/
public static function om_api() {
$custom_api_url = OMAPI::get_instance()->get_option( 'customApiUrl' );
return ! empty( $custom_api_url ) ? $custom_api_url : OPTINMONSTER_APIJS_URL;
}
}