File: /var/www/vhosts/uyarreklam.com.tr/httpdocs/providers.tar
class-wp-sitemaps-posts.php 0000644 00000016525 15153243560 0012014 0 ustar 00 <?php
/**
* Sitemaps: WP_Sitemaps_Posts class
*
* Builds the sitemaps for the 'post' object type.
*
* @package WordPress
* @subpackage Sitemaps
* @since 5.5.0
*/
/**
* Posts XML sitemap provider.
*
* @since 5.5.0
*/
class WP_Sitemaps_Posts extends WP_Sitemaps_Provider {
/**
* WP_Sitemaps_Posts constructor.
*
* @since 5.5.0
*/
public function __construct() {
$this->name = 'posts';
$this->object_type = 'post';
}
/**
* Returns the public post types, which excludes nav_items and similar types.
* Attachments are also excluded. This includes custom post types with public = true.
*
* @since 5.5.0
*
* @return WP_Post_Type[] Array of registered post type objects keyed by their name.
*/
public function get_object_subtypes() {
$post_types = get_post_types( array( 'public' => true ), 'objects' );
unset( $post_types['attachment'] );
$post_types = array_filter( $post_types, 'is_post_type_viewable' );
/**
* Filters the list of post object sub types available within the sitemap.
*
* @since 5.5.0
*
* @param WP_Post_Type[] $post_types Array of registered post type objects keyed by their name.
*/
return apply_filters( 'wp_sitemaps_post_types', $post_types );
}
/**
* Gets a URL list for a post type sitemap.
*
* @since 5.5.0
* @since 5.9.0 Renamed `$post_type` to `$object_subtype` to match parent class
* for PHP 8 named parameter support.
*
* @param int $page_num Page of results.
* @param string $object_subtype Optional. Post type name. Default empty.
*
* @return array[] Array of URL information for a sitemap.
*/
public function get_url_list( $page_num, $object_subtype = '' ) {
// Restores the more descriptive, specific name for use within this method.
$post_type = $object_subtype;
// Bail early if the queried post type is not supported.
$supported_types = $this->get_object_subtypes();
if ( ! isset( $supported_types[ $post_type ] ) ) {
return array();
}
/**
* Filters the posts URL list before it is generated.
*
* Returning a non-null value will effectively short-circuit the generation,
* returning that value instead.
*
* @since 5.5.0
*
* @param array[]|null $url_list The URL list. Default null.
* @param string $post_type Post type name.
* @param int $page_num Page of results.
*/
$url_list = apply_filters(
'wp_sitemaps_posts_pre_url_list',
null,
$post_type,
$page_num
);
if ( null !== $url_list ) {
return $url_list;
}
$args = $this->get_posts_query_args( $post_type );
$args['paged'] = $page_num;
$query = new WP_Query( $args );
$url_list = array();
/*
* Add a URL for the homepage in the pages sitemap.
* Shows only on the first page if the reading settings are set to display latest posts.
*/
if ( 'page' === $post_type && 1 === $page_num && 'posts' === get_option( 'show_on_front' ) ) {
// Extract the data needed for home URL to add to the array.
$sitemap_entry = array(
'loc' => home_url( '/' ),
);
/*
* Get the most recent posts displayed on the homepage,
* and then sort them by their modified date to find
* the date the homepage was approximately last updated.
*/
$latest_posts = new WP_Query(
array(
'post_type' => 'post',
'post_status' => 'publish',
'orderby' => 'date',
'order' => 'DESC',
'no_found_rows' => true,
'update_post_meta_cache' => false,
'update_post_term_cache' => false,
)
);
if ( ! empty( $latest_posts->posts ) ) {
$posts = wp_list_sort( $latest_posts->posts, 'post_modified_gmt', 'DESC' );
$sitemap_entry['lastmod'] = wp_date( DATE_W3C, strtotime( $posts[0]->post_modified_gmt ) );
}
/**
* Filters the sitemap entry for the home page when the 'show_on_front' option equals 'posts'.
*
* @since 5.5.0
*
* @param array $sitemap_entry Sitemap entry for the home page.
*/
$sitemap_entry = apply_filters( 'wp_sitemaps_posts_show_on_front_entry', $sitemap_entry );
$url_list[] = $sitemap_entry;
}
foreach ( $query->posts as $post ) {
$sitemap_entry = array(
'loc' => get_permalink( $post ),
'lastmod' => wp_date( DATE_W3C, strtotime( $post->post_modified_gmt ) ),
);
/**
* Filters the sitemap entry for an individual post.
*
* @since 5.5.0
*
* @param array $sitemap_entry Sitemap entry for the post.
* @param WP_Post $post Post object.
* @param string $post_type Name of the post_type.
*/
$sitemap_entry = apply_filters( 'wp_sitemaps_posts_entry', $sitemap_entry, $post, $post_type );
$url_list[] = $sitemap_entry;
}
return $url_list;
}
/**
* Gets the max number of pages available for the object type.
*
* @since 5.5.0
* @since 5.9.0 Renamed `$post_type` to `$object_subtype` to match parent class
* for PHP 8 named parameter support.
*
* @param string $object_subtype Optional. Post type name. Default empty.
* @return int Total number of pages.
*/
public function get_max_num_pages( $object_subtype = '' ) {
if ( empty( $object_subtype ) ) {
return 0;
}
// Restores the more descriptive, specific name for use within this method.
$post_type = $object_subtype;
/**
* Filters the max number of pages before it is generated.
*
* Passing a non-null value will short-circuit the generation,
* returning that value instead.
*
* @since 5.5.0
*
* @param int|null $max_num_pages The maximum number of pages. Default null.
* @param string $post_type Post type name.
*/
$max_num_pages = apply_filters( 'wp_sitemaps_posts_pre_max_num_pages', null, $post_type );
if ( null !== $max_num_pages ) {
return $max_num_pages;
}
$args = $this->get_posts_query_args( $post_type );
$args['fields'] = 'ids';
$args['no_found_rows'] = false;
$query = new WP_Query( $args );
$min_num_pages = ( 'page' === $post_type && 'posts' === get_option( 'show_on_front' ) ) ? 1 : 0;
return isset( $query->max_num_pages ) ? max( $min_num_pages, $query->max_num_pages ) : 1;
}
/**
* Returns the query args for retrieving posts to list in the sitemap.
*
* @since 5.5.0
* @since 6.1.0 Added `ignore_sticky_posts` default parameter.
*
* @param string $post_type Post type name.
* @return array Array of WP_Query arguments.
*/
protected function get_posts_query_args( $post_type ) {
/**
* Filters the query arguments for post type sitemap queries.
*
* @see WP_Query for a full list of arguments.
*
* @since 5.5.0
* @since 6.1.0 Added `ignore_sticky_posts` default parameter.
*
* @param array $args Array of WP_Query arguments.
* @param string $post_type Post type name.
*/
$args = apply_filters(
'wp_sitemaps_posts_query_args',
array(
'orderby' => 'ID',
'order' => 'ASC',
'post_type' => $post_type,
'posts_per_page' => wp_sitemaps_get_max_urls( $this->object_type ),
'post_status' => array( 'publish' ),
'no_found_rows' => true,
'update_post_term_cache' => false,
'update_post_meta_cache' => false,
'ignore_sticky_posts' => true, // Sticky posts will still appear, but they won't be moved to the front.
),
$post_type
);
return $args;
}
}
class-wp-sitemaps-taxonomies.php 0000644 00000013413 15153243560 0013023 0 ustar 00 <?php
/**
* Sitemaps: WP_Sitemaps_Taxonomies class
*
* Builds the sitemaps for the 'taxonomy' object type.
*
* @package WordPress
* @subpackage Sitemaps
* @since 5.5.0
*/
/**
* Taxonomies XML sitemap provider.
*
* @since 5.5.0
*/
class WP_Sitemaps_Taxonomies extends WP_Sitemaps_Provider {
/**
* WP_Sitemaps_Taxonomies constructor.
*
* @since 5.5.0
*/
public function __construct() {
$this->name = 'taxonomies';
$this->object_type = 'term';
}
/**
* Returns all public, registered taxonomies.
*
* @since 5.5.0
*
* @return WP_Taxonomy[] Array of registered taxonomy objects keyed by their name.
*/
public function get_object_subtypes() {
$taxonomies = get_taxonomies( array( 'public' => true ), 'objects' );
$taxonomies = array_filter( $taxonomies, 'is_taxonomy_viewable' );
/**
* Filters the list of taxonomy object subtypes available within the sitemap.
*
* @since 5.5.0
*
* @param WP_Taxonomy[] $taxonomies Array of registered taxonomy objects keyed by their name.
*/
return apply_filters( 'wp_sitemaps_taxonomies', $taxonomies );
}
/**
* Gets a URL list for a taxonomy sitemap.
*
* @since 5.5.0
* @since 5.9.0 Renamed `$taxonomy` to `$object_subtype` to match parent class
* for PHP 8 named parameter support.
*
* @param int $page_num Page of results.
* @param string $object_subtype Optional. Taxonomy name. Default empty.
* @return array[] Array of URL information for a sitemap.
*/
public function get_url_list( $page_num, $object_subtype = '' ) {
// Restores the more descriptive, specific name for use within this method.
$taxonomy = $object_subtype;
$supported_types = $this->get_object_subtypes();
// Bail early if the queried taxonomy is not supported.
if ( ! isset( $supported_types[ $taxonomy ] ) ) {
return array();
}
/**
* Filters the taxonomies URL list before it is generated.
*
* Returning a non-null value will effectively short-circuit the generation,
* returning that value instead.
*
* @since 5.5.0
*
* @param array[]|null $url_list The URL list. Default null.
* @param string $taxonomy Taxonomy name.
* @param int $page_num Page of results.
*/
$url_list = apply_filters(
'wp_sitemaps_taxonomies_pre_url_list',
null,
$taxonomy,
$page_num
);
if ( null !== $url_list ) {
return $url_list;
}
$url_list = array();
// Offset by how many terms should be included in previous pages.
$offset = ( $page_num - 1 ) * wp_sitemaps_get_max_urls( $this->object_type );
$args = $this->get_taxonomies_query_args( $taxonomy );
$args['fields'] = 'all';
$args['offset'] = $offset;
$taxonomy_terms = new WP_Term_Query( $args );
if ( ! empty( $taxonomy_terms->terms ) ) {
foreach ( $taxonomy_terms->terms as $term ) {
$term_link = get_term_link( $term, $taxonomy );
if ( is_wp_error( $term_link ) ) {
continue;
}
$sitemap_entry = array(
'loc' => $term_link,
);
/**
* Filters the sitemap entry for an individual term.
*
* @since 5.5.0
* @since 6.0.0 Added `$term` argument containing the term object.
*
* @param array $sitemap_entry Sitemap entry for the term.
* @param int $term_id Term ID.
* @param string $taxonomy Taxonomy name.
* @param WP_Term $term Term object.
*/
$sitemap_entry = apply_filters( 'wp_sitemaps_taxonomies_entry', $sitemap_entry, $term->term_id, $taxonomy, $term );
$url_list[] = $sitemap_entry;
}
}
return $url_list;
}
/**
* Gets the max number of pages available for the object type.
*
* @since 5.5.0
* @since 5.9.0 Renamed `$taxonomy` to `$object_subtype` to match parent class
* for PHP 8 named parameter support.
*
* @param string $object_subtype Optional. Taxonomy name. Default empty.
* @return int Total number of pages.
*/
public function get_max_num_pages( $object_subtype = '' ) {
if ( empty( $object_subtype ) ) {
return 0;
}
// Restores the more descriptive, specific name for use within this method.
$taxonomy = $object_subtype;
/**
* Filters the max number of pages for a taxonomy sitemap before it is generated.
*
* Passing a non-null value will short-circuit the generation,
* returning that value instead.
*
* @since 5.5.0
*
* @param int|null $max_num_pages The maximum number of pages. Default null.
* @param string $taxonomy Taxonomy name.
*/
$max_num_pages = apply_filters( 'wp_sitemaps_taxonomies_pre_max_num_pages', null, $taxonomy );
if ( null !== $max_num_pages ) {
return $max_num_pages;
}
$term_count = wp_count_terms( $this->get_taxonomies_query_args( $taxonomy ) );
return (int) ceil( $term_count / wp_sitemaps_get_max_urls( $this->object_type ) );
}
/**
* Returns the query args for retrieving taxonomy terms to list in the sitemap.
*
* @since 5.5.0
*
* @param string $taxonomy Taxonomy name.
* @return array Array of WP_Term_Query arguments.
*/
protected function get_taxonomies_query_args( $taxonomy ) {
/**
* Filters the taxonomy terms query arguments.
*
* Allows modification of the taxonomy query arguments before querying.
*
* @see WP_Term_Query for a full list of arguments
*
* @since 5.5.0
*
* @param array $args Array of WP_Term_Query arguments.
* @param string $taxonomy Taxonomy name.
*/
$args = apply_filters(
'wp_sitemaps_taxonomies_query_args',
array(
'taxonomy' => $taxonomy,
'orderby' => 'term_order',
'number' => wp_sitemaps_get_max_urls( $this->object_type ),
'hide_empty' => true,
'hierarchical' => false,
'update_term_meta_cache' => false,
),
$taxonomy
);
return $args;
}
}
class-wp-sitemaps-users.php 0000644 00000010131 15153243560 0011770 0 ustar 00 <?php
/**
* Sitemaps: WP_Sitemaps_Users class
*
* Builds the sitemaps for the 'user' object type.
*
* @package WordPress
* @subpackage Sitemaps
* @since 5.5.0
*/
/**
* Users XML sitemap provider.
*
* @since 5.5.0
*/
class WP_Sitemaps_Users extends WP_Sitemaps_Provider {
/**
* WP_Sitemaps_Users constructor.
*
* @since 5.5.0
*/
public function __construct() {
$this->name = 'users';
$this->object_type = 'user';
}
/**
* Gets a URL list for a user sitemap.
*
* @since 5.5.0
*
* @param int $page_num Page of results.
* @param string $object_subtype Optional. Not applicable for Users but
* required for compatibility with the parent
* provider class. Default empty.
* @return array[] Array of URL information for a sitemap.
*/
public function get_url_list( $page_num, $object_subtype = '' ) {
/**
* Filters the users URL list before it is generated.
*
* Returning a non-null value will effectively short-circuit the generation,
* returning that value instead.
*
* @since 5.5.0
*
* @param array[]|null $url_list The URL list. Default null.
* @param int $page_num Page of results.
*/
$url_list = apply_filters(
'wp_sitemaps_users_pre_url_list',
null,
$page_num
);
if ( null !== $url_list ) {
return $url_list;
}
$args = $this->get_users_query_args();
$args['paged'] = $page_num;
$query = new WP_User_Query( $args );
$users = $query->get_results();
$url_list = array();
foreach ( $users as $user ) {
$sitemap_entry = array(
'loc' => get_author_posts_url( $user->ID ),
);
/**
* Filters the sitemap entry for an individual user.
*
* @since 5.5.0
*
* @param array $sitemap_entry Sitemap entry for the user.
* @param WP_User $user User object.
*/
$sitemap_entry = apply_filters( 'wp_sitemaps_users_entry', $sitemap_entry, $user );
$url_list[] = $sitemap_entry;
}
return $url_list;
}
/**
* Gets the max number of pages available for the object type.
*
* @since 5.5.0
*
* @see WP_Sitemaps_Provider::max_num_pages
*
* @param string $object_subtype Optional. Not applicable for Users but
* required for compatibility with the parent
* provider class. Default empty.
* @return int Total page count.
*/
public function get_max_num_pages( $object_subtype = '' ) {
/**
* Filters the max number of pages for a user sitemap before it is generated.
*
* Returning a non-null value will effectively short-circuit the generation,
* returning that value instead.
*
* @since 5.5.0
*
* @param int|null $max_num_pages The maximum number of pages. Default null.
*/
$max_num_pages = apply_filters( 'wp_sitemaps_users_pre_max_num_pages', null );
if ( null !== $max_num_pages ) {
return $max_num_pages;
}
$args = $this->get_users_query_args();
$query = new WP_User_Query( $args );
$total_users = $query->get_total();
return (int) ceil( $total_users / wp_sitemaps_get_max_urls( $this->object_type ) );
}
/**
* Returns the query args for retrieving users to list in the sitemap.
*
* @since 5.5.0
*
* @return array Array of WP_User_Query arguments.
*/
protected function get_users_query_args() {
$public_post_types = get_post_types(
array(
'public' => true,
)
);
// We're not supporting sitemaps for author pages for attachments and pages.
unset( $public_post_types['attachment'] );
unset( $public_post_types['page'] );
/**
* Filters the query arguments for authors with public posts.
*
* Allows modification of the authors query arguments before querying.
*
* @see WP_User_Query for a full list of arguments
*
* @since 5.5.0
*
* @param array $args Array of WP_User_Query arguments.
*/
$args = apply_filters(
'wp_sitemaps_users_query_args',
array(
'has_published_posts' => array_keys( $public_post_types ),
'number' => wp_sitemaps_get_max_urls( $this->object_type ),
)
);
return $args;
}
}
class-abstract-lite-metabox.php 0000644 00000013724 15155166270 0012572 0 ustar 00 <?php
/**
* This file contains class that will be extended by other
* providers metabox classes.
*
* @since 8.7.0
*
* @package MonsterInsights
* @subpackage MonsterInsights_User_Journey
*/
abstract class MonsterInsights_User_Journey_Lite_Metabox {
/**
* URL to assets folder.
*
* @since 8.7.0
*
* @var string
*/
public $assets_url = MONSTERINSIGHTS_PLUGIN_URL . 'lite/includes/admin/user-journey/assets/';
/**
* Get Currently loaded provider name.
*
* @return string
* @since 8.7.0
*
*/
abstract protected function get_provider();
/**
* Metabox Title.
*
* @return void
* @since 8.7.0
*
*/
protected function metabox_title() {
return '';
}
/**
* Contains HTML to display inside the metabox
*
* @return void
* @since 8.7.0
*
*/
public function metabox_html() {
$image = $this->assets_url . 'img/Frame.png';
$utm_provider = $this->get_provider() . '-user-journey';
$learn_more = monsterinsights_get_upgrade_link( $utm_provider, 'lite-user-journey', 'https://monsterinsights.com' );
$upgrade_link = monsterinsights_get_upgrade_link( $utm_provider, 'lite-user-journey', 'https://monsterinsights.com/lite' );
?>
<!-- User Journey metabox -->
<?php $this->metabox_title(); ?>
<div id="monsterinsights-user-journey-lite-metabox-container">
<div class="monsterinsights-lite-uj-backdrop-pic"
style="background-image: url( '<?php echo esc_url( $this->assets_url ); ?>img/user-journey-backdrop.png' )"></div>
<div id="monsterinsights-lite-entry-user-journey" class="postbox">
<div class="monsterinsights-lite-uj-container desktop">
<div class="monsterinsights-lite-uj-modal-head">
<h3><?php esc_html_e( 'Unlock User Journey', 'monsterinsights' ); ?></h3>
</div>
<div class="monsterinsights-lite-uj-modal-content">
<div class="monsterinsights-lite-modal-left">
<h4><?php esc_html_e( 'With MonsterInsights Pro, See Each Step Your Visitor Took Before Purchasing From Your Website.', 'monsterinsights' ); ?></h4>
<p>
<?php
// Translators: strong tag to make text bold, link to website to learn more
echo sprintf(
esc_html__('%1$sPlus%2$s, upgrading to pro will unlock %3$sall%4$s of advanced reports, tracking, and integrations. %5$sLearn more about Pro%6$s', 'monsterinsights'),
'<strong>',
'</strong>',
'<strong>',
'</strong>',
'<a target="_blank" href="' . esc_url($learn_more) . '" title="'. esc_attr__('Upgrade', 'monsterinsights') .'">',
'</a>'
); ?>
</p>
<a target="_blank" href="<?php echo esc_url( $upgrade_link ); ?>" title=""
class="monsterinsights-uj-button monsterinsights-button">
<?php esc_html_e( 'Upgrade and Unlock', 'monsterinsights' ); ?>
<svg width="13" height="15" viewBox="0 0 13 15" fill="none"
xmlns="http://www.w3.org/2000/svg">
<path
d="M11.3125 7.25H4.53125V4.43359C4.53125 3.36719 5.37891 2.46484 6.47266 2.4375C7.56641 2.4375 8.46875 3.33984 8.46875 4.40625V4.84375C8.46875 5.22656 8.74219 5.5 9.125 5.5H10C10.3555 5.5 10.6562 5.22656 10.6562 4.84375V4.40625C10.6562 2.10938 8.76953 0.25 6.47266 0.25C4.17578 0.277344 2.34375 2.16406 2.34375 4.46094V7.25H1.6875C0.949219 7.25 0.375 7.85156 0.375 8.5625V12.9375C0.375 13.6758 0.949219 14.25 1.6875 14.25H11.3125C12.0234 14.25 12.625 13.6758 12.625 12.9375V8.5625C12.625 7.85156 12.0234 7.25 11.3125 7.25Z"
fill="white"/>
</svg>
</a>
</div>
<div class="monsterinsights-lite-modal-right">
<img src="<?php echo esc_url( $image ); ?>" alt="Frame"/>
</div>
</div>
</div>
<div class="monsterinsights-lite-uj-container mobile">
<div class="monsterinsights-lite-uj-modal-content">
<div class="monsterinsights-lite-modal-left">
<h4><?php esc_html_e( 'User Journey', 'monsterinsights' ); ?></h4>
<p><?php esc_html_e( 'See each step your visitor took before purchasing from your site', 'monsterinsights' ); ?></p>
</div>
</div>
</div>
</div>
<div class="monsterinsights-lite-uj-upgrade">
<p>
<svg width="11" height="11" viewBox="0 0 11 11" fill="none" xmlns="http://www.w3.org/2000/svg">
<path
d="M5.395 10.039C4.745 10.039 4.134 9.91767 3.562 9.675C2.99 9.42367 2.48733 9.08133 2.054 8.648C1.62067 8.206 1.27833 7.699 1.027 7.127C0.784333 6.555 0.663 5.93967 0.663 5.281C0.663 4.61367 0.784333 3.994 1.027 3.422C1.27833 2.84133 1.62067 2.33867 2.054 1.914C2.48733 1.48067 2.99 1.147 3.562 0.912999C4.134 0.670333 4.745 0.548999 5.395 0.548999C6.06233 0.548999 6.682 0.674666 7.254 0.926C7.83467 1.16867 8.34167 1.511 8.775 1.953C9.20833 2.38633 9.54633 2.889 9.789 3.461C10.0317 4.02433 10.153 4.631 10.153 5.281C10.153 5.93967 10.0273 6.555 9.776 7.127C9.53333 7.699 9.19533 8.206 8.762 8.648C8.32867 9.08133 7.82167 9.42367 7.241 9.675C6.669 9.91767 6.05367 10.039 5.395 10.039ZM2.821 8.765L5.395 6.893L7.995 8.765L7.007 5.827L9.399 4.215H6.461L5.395 1.043L4.355 4.215H1.417L3.809 5.827L2.821 8.765Z"
fill="#31862D"/>
</svg>
<?php esc_html_e( 'This is a PRO feature.', 'monsterinsights' ); ?>
<a target="_blank" href="<?php echo esc_url( $upgrade_link ); ?>"
title=""><?php esc_html_e( 'Upgrade', 'monsterinsights' ); ?></a>
</p>
</div>
</div>
<?php
}
/**
* Check if an array is a valid array and not empty.
* This will also check if a key exists inside an array
* if the param is set to true.
*
* @param array $array Array to check.
* @param string $key Array key to check.
* @param boolean $check_key Wether to check the key or not.
*
* @return boolean
* @since 8.7.0
*
*/
public static function is_valid_array( $array, $key, $check_key = false ) {
if ( is_array( $array ) ) {
if ( ! empty( $array ) ) {
if ( $check_key ) {
if ( array_key_exists( $key, $array ) ) {
return true;
} else {
return false;
}
}
return true;
} else {
return false;
}
}
return false;
}
}
edd.php 0000644 00000003507 15155166270 0006026 0 ustar 00 <?php
/**
* This file contains the code to display metabox for EDD Admin Orders Page.
*
* @since 8.7.0
*
* @package MonsterInsights
* @subpackage MonsterInsights_User_Journey
*/
/**
* Class to add metabox to EDD admin order page.
*
* @since 8.7.0
*/
class MonsterInsights_Lite_User_Journey_EDD_Metabox extends MonsterInsights_User_Journey_Lite_Metabox {
/**
* Class constructor.
*
* @since 8.7.0
*/
public function __construct() {
add_action( 'edd_view_order_details_main_after', array( $this, 'add_user_journey_metabox' ), 10, 1 );
}
/**
* Check if we are on EDD edit order screen.
*
* @return bool
* @since 8.7.0
*
*/
public function is_edd_order_screen() {
if ( ! $this->is_valid_array( $_GET, 'page', true ) ) {
return false;
}
if ( ! $this->is_valid_array( $_GET, 'view', true ) ) {
return false;
}
if ( ! $this->is_valid_array( $_GET, 'id', true ) ) {
return false;
}
if ( 'edd-payment-history' !== $_GET['page'] && 'view-order-details' !== $_GET['view'] ) { // phpcs:ignore
return false;
}
return true;
}
/**
* Current Provider Name.
*
* @return string
* @since 8.7.0
*
*/
protected function get_provider() {
return 'edd';
}
/**
* Add metabox
*
* @param int $order_id EDD Order ID.
*
* @return void
* @since 8.7.0
*
*/
public function add_user_journey_metabox( $order_id ) {
if ( ! $this->is_edd_order_screen() ) {
return;
}
$this->metabox_html();
}
/**
* Metabox Title.
*
* @return void
* @since 8.7.0
*
*/
protected function metabox_title() {
?>
<div class="monsterinsights-uj-metabox-title">
<h2><?php esc_html_e( 'User Journey by MonsterInsights', 'monsterinsights' ); ?></h2>
</div>
<?php
}
}
if ( class_exists( 'Easy_Digital_Downloads' ) ) {
new MonsterInsights_Lite_User_Journey_EDD_Metabox();
}
givewp.php 0000644 00000003734 15155166270 0006575 0 ustar 00 <?php
/**
* This file contains the code to display metabox for GiveWP Admin Orders Page.
*
* @since 8.7.0
*
* @package MonsterInsights
* @subpackage MonsterInsights_User_Journey
*/
/**
* Class to add metabox to GiveWP admin order page.
*
* @since 8.7.0
*/
class MonsterInsights_Lite_User_Journey_GiveWP_Metabox extends MonsterInsights_User_Journey_Lite_Metabox {
/**
* Class constructor.
*
* @since 8.7.0
*/
public function __construct() {
add_action( 'give_view_donation_details_billing_after', array( $this, 'add_user_journey_metabox' ), 10, 1 );
}
/**
* Check if we are on GiveWP order screen.
*
* @return array
* @since 8.7.0
*
*/
public function is_givewp_order_screen() {
if ( ! $this->is_valid_array( $_GET, 'view', true ) ) {
return false;
}
if ( ! $this->is_valid_array( $_GET, 'id', true ) ) {
return false;
}
if ( ! $this->is_valid_array( $_GET, 'post_type', true ) ) {
return false;
}
if ( ! $this->is_valid_array( $_GET, 'page', true ) ) {
return false;
}
if ( 'give_forms' !== $_GET['post_type'] && 'give-payment-history' !== $_GET['page'] && 'view-payment-details' !== $_GET['view'] ) { // phpcs:ignore
return false;
}
return true;
}
/**
* Current Provider Name.
*
* @return string
* @since 8.7.0
*
*/
protected function get_provider() {
return 'givewp';
}
/**
* Add metabox
*
* @param int $payment_id Order ID of GiveWP.
*
* @return void
* @since 8.7.0
*
*/
public function add_user_journey_metabox( $payment_id ) {
if ( ! $this->is_givewp_order_screen() ) {
return;
}
$this->metabox_html();
}
/**
* Metabox Title.
*
* @return void
* @since 8.7.0
*
*/
protected function metabox_title() {
?>
<div class="monsterinsights-uj-metabox-title">
<h2><?php esc_html_e( 'User Journey by MonsterInsights', 'monsterinsights' ); ?></h2>
</div>
<?php
}
}
if ( function_exists( 'give' ) ) {
new MonsterInsights_Lite_User_Journey_GiveWP_Metabox();
}
index.php 0000644 00000000101 15155166270 0006364 0 ustar 00 <?php
//Nothing to see here
header( 'HTTP/1.0 403 Forbidden' );
lifterlms.php 0000644 00000002555 15155166270 0007275 0 ustar 00 <?php
/**
* This file contains the code to display metabox for LifterLMS Admin Orders Page.
*
* @since 8.7.0
*
* @package MonsterInsights
* @subpackage MonsterInsights_User_Journey
*/
/**
* Class to add metabox to LifterLMS admin order page.
*
* @since 8.7.0
*/
class MonsterInsights_Lite_User_Journey_LifterLMS_Metabox extends MonsterInsights_User_Journey_Lite_Metabox {
/**
* Class constructor.
*
* @since 8.7.0
*/
public function __construct() {
add_action( 'add_meta_boxes', array( $this, 'add_user_journey_metabox' ) );
}
/**
* Add metabox
*
* @return void
* @since 8.7.0
*
* @uses add_meta_boxes WP Hook
*
*/
public function add_user_journey_metabox() {
add_meta_box(
'lifterlms-monsterinsights-lite-user-journey-metabox',
esc_html__( 'User Journey by MonsterInsights', 'monsterinsights' ),
array( $this, 'display_meta_box' ),
'llms_order',
'normal',
'core'
);
}
/**
* Current Provider Name.
*
* @return string
* @since 8.7.0
*
*/
protected function get_provider() {
return 'lifterlms';
}
/**
* Display metabox HTML.
*
* @param object $post LifterLMS Order custom post
*
* @return void
* @since 8.7.0
*
*/
public function display_meta_box( $post ) {
$this->metabox_html();
}
}
if ( function_exists( 'llms' ) ) {
new MonsterInsights_Lite_User_Journey_LifterLMS_Metabox();
}
memberpress.php 0000644 00000003602 15155166270 0007612 0 ustar 00 <?php
/**
* This file contains the code to display metabox for MemberPress Admin Orders Page.
*
* @since 8.7.0
*
* @package MonsterInsights
* @subpackage MonsterInsights_User_Journey
*/
/**
* Class to add metabox to MemberPress admin order page.
*
* @since 8.7.0
*/
class MonsterInsights_Lite_User_Journey_MemberPress_Metabox extends MonsterInsights_User_Journey_Lite_Metabox {
/**
* Class constructor.
*
* @since 8.7.0
*/
public function __construct() {
add_action( 'mepr_edit_transaction_table_after', array( $this, 'add_user_journey_metabox' ), 10 );
}
/**
* Check if we are on MemberPress edit order screen.
*
* @return boolean
* @since 8.7.0
*
*/
public function is_memberpress_order_screen() {
if ( ! $this->is_valid_array( $_GET, 'page', true ) ) {
return false;
}
if ( ! $this->is_valid_array( $_GET, 'action', true ) ) {
return false;
}
if ( ! $this->is_valid_array( $_GET, 'id', true ) ) {
return false;
}
if ( 'memberpress-trans' !== $_GET['page'] && 'edit' !== $_GET['action'] ) { // phpcs:ignore
return false;
}
return true;
}
/**
* Current Provider Name.
*
* @return string
* @since 8.7.0
*
*/
protected function get_provider() {
return 'memberpress';
}
/**
* Add metabox
*
* @return void
* @since 8.7.0
*
*/
public function add_user_journey_metabox( $txn ) {
if ( ! $this->is_memberpress_order_screen() ) {
return;
}
?>
<tr>
<td colspan="2">
<?php $this->metabox_html(); ?>
</td>
</tr>
<?php
}
/**
* Metabox Title.
*
* @return void
* @since 8.7.0
*
*/
protected function metabox_title() {
?>
<div class="monsterinsights-uj-metabox-title">
<h2><?php esc_html_e( 'User Journey by MonsterInsights', 'monsterinsights' ); ?></h2>
</div>
<?php
}
}
if ( defined( 'MEPR_VERSION' ) ) {
new MonsterInsights_Lite_User_Journey_MemberPress_Metabox();
}
restrict-content-pro.php 0000644 00000004143 15155166270 0011374 0 ustar 00 <?php
/**
* This file contains the code to display metabox for Restrict Content Pro Admin Orders Page.
*
* @since 8.7.0
*
* @package MonsterInsights
* @subpackage MonsterInsights_User_Journey
*/
/**
* Class to add metabox to Restrict Content Pro admin order page.
*
* @since 8.7.0
*/
class MonsterInsights_Lite_User_Journey_Restrict_Content_Pro_Metabox extends MonsterInsights_User_Journey_Lite_Metabox {
/**
* Class constructor.
*
* @since 8.7.0
*/
public function __construct() {
add_action( 'rcp_edit_payment_after', array( $this, 'add_user_journey_metabox' ), 10, 3 );
}
/**
* Check if we are on RCP Edit Order page.
*
* @return boolean
* @since 8.7.0
*
*/
public function is_rcp_order_screen() {
if ( ! $this->is_valid_array( $_GET, 'page', true ) ) {
return false;
}
if ( ! $this->is_valid_array( $_GET, 'payment_id', true ) ) {
return false;
}
if ( ! $this->is_valid_array( $_GET, 'view', true ) ) {
return false;
}
if ( 'rcp-payments' !== $_GET['page'] && 'edit-payment' !== $_GET['view'] ) { // phpcs:ignore
return false;
}
return true;
}
/**
* Current Provider Name.
*
* @return string
* @since 8.7.0
*
*/
protected function get_provider() {
return 'restrict-content-pro';
}
/**
* Add metabox
*
* @param object $payment RCP Payment Object
* @param object $membership_level RCP Membership level Object
* @param object $uer WordPress User Info from RCP
*
* @return void
* @since 8.7.0
*
*/
public function add_user_journey_metabox( $payment, $membership_level, $user ) {
if ( ! $this->is_rcp_order_screen() ) {
return;
}
?>
<tr>
<td colspan="2">
<?php $this->metabox_html(); ?>
</td>
</tr>
<?php
}
/**
* Metabox Title.
*
* @return void
* @since 8.7.0
*
*/
protected function metabox_title() {
?>
<div class="monsterinsights-uj-metabox-title">
<h2><?php esc_html_e( 'User Journey by MonsterInsights', 'monsterinsights' ); ?></h2>
</div>
<?php
}
}
if ( class_exists( 'Restrict_Content_Pro' ) ) {
new MonsterInsights_Lite_User_Journey_Restrict_Content_Pro_Metabox();
}
woocommerce.php 0000644 00000002606 15155166270 0007610 0 ustar 00 <?php
/**
* This file contains the code to display metabox for WooCommerce Admin Orders Page.
*
* @since 8.5.0
*
* @package MonsterInsights
* @subpackage MonsterInsights_User_Journey
*/
/**
* Class to add metabox to woocommerce admin order page.
*
* @since 8.5.0
*/
class MonsterInsights_Lite_User_Journey_WooCommerce_Metabox extends MonsterInsights_User_Journey_Lite_Metabox {
/**
* Class constructor.
*
* @since 8.5.0
*/
public function __construct() {
add_action( 'add_meta_boxes', array( $this, 'add_user_journey_metabox' ) );
}
/**
* Current Provider Name.
*
* @return string
* @since 8.7.0
*
*/
protected function get_provider() {
return 'woocommerce';
}
/**
* Add metabox
*
* @return void
* @since 8.5.0
*
* @uses add_meta_boxes WP Hook
*
*/
public function add_user_journey_metabox() {
add_meta_box(
'woocommerce-monsterinsights-lite-user-journey-metabox',
esc_html__( 'User Journey by MonsterInsights', 'monsterinsights' ),
array( $this, 'display_meta_box' ),
'shop_order',
'normal',
'core'
);
}
/**
* Display metabox HTML.
*
* @param object $post WooCommerce Order custom post
*
* @return void
* @since 8.5.0
*
*/
public function display_meta_box( $post ) {
$this->metabox_html( $post );
}
}
if ( class_exists( 'WooCommerce' ) ) {
new MonsterInsights_Lite_User_Journey_WooCommerce_Metabox();
}