at path:
ROOT
/
wp-content
/
plugins
/
optinmonster
/
OMAPI
/
RevenueAttribution.php
run:
R
W
Run
EasyDigitalDownloads
DIR
2025-12-13 10:18:03
R
W
Run
Elementor
DIR
2025-12-13 10:18:03
R
W
Run
Integrations
DIR
2025-12-13 10:18:03
R
W
Run
MemberPress
DIR
2025-12-13 10:18:02
R
W
Run
Plugins
DIR
2025-12-13 10:18:03
R
W
Run
Promos
DIR
2025-12-13 10:18:03
R
W
Run
Rules
DIR
2025-12-13 10:18:02
R
W
Run
Shortcodes
DIR
2025-12-13 10:18:03
R
W
Run
WPForms
DIR
2025-12-13 10:18:02
R
W
Run
WooCommerce
DIR
2025-12-13 10:18:02
R
W
Run
Actions.php
6.96 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Ajax.php
1.46 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Api.php
14.17 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
ApiAuth.php
2.41 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
ApiKey.php
5.08 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
AssetLoader.php
5.59 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
BaseRestApi.php
6.65 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Blocks.php
12.81 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
ClassicEditor.php
6.92 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
ConstantContact.php
7.42 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Debug.php
4.35 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
EasyDigitalDownloads.php
9.33 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Elementor.php
5.36 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Inserter.php
11.29 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
InstallSkin.php
1.35 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
InstallSkinCompat.php
1.36 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
MailPoet.php
13.36 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
MemberPress.php
4.12 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Menu.php
16.88 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Notifications.php
18.47 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
OmuApi.php
4.03 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Output.php
24.28 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Pages.php
17.61 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Partners.php
5.43 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Plugins.php
24.34 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Promos.php
1.11 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Refresh.php
5.75 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
RestApi.php
38.58 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
RevenueAttribution.php
2.97 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Review.php
1.45 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Rules.php
23.44 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Save.php
10.8 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Shortcode.php
3.58 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Sites.php
8.35 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Support.php
8.25 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Type.php
2.44 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Urls.php
8.64 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Utils.php
7.41 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Validate.php
9.06 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
WPForms.php
2.6 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Welcome.php
4.81 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Widget.php
6.5 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
WooCommerce.php
19.58 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
WpErrorException.php
714 By
2025-11-20 19:51:54
R
W
Run
Delete
Rename
error_log
up
📄
RevenueAttribution.php
Save
<?php /** * Revenue attribution class. * * @since 2.6.13 * * @package OMAPI * @author Thomas Griffin */ // Exit if accessed directly. if ( ! defined( 'ABSPATH' ) ) { exit; } /** * The Revenue Attribution class. * * @since 2.6.13 */ class OMAPI_RevenueAttribution { /** * Holds the class object. * * @since 2.6.13 * * @var object */ public static $instance; /** * Path to the file. * * @since 2.6.13 * * @var string */ public $file = __FILE__; /** * Holds the base class object. * * @since 2.6.13 * * @var object */ public $base; /** * Primary class constructor. * * @since 2.6.13 */ public function __construct() { // Set our object. $this->set(); } /** * Sets our object instance and base class instance. * * @since 2.6.13 */ public function set() { self::$instance = $this; $this->base = OMAPI::get_instance(); } /** * Maybe stores revenue attribution data when a purchase is successful. * * @since 2.6.13 * * @param array $data An array of revenue attribution data to store. * * @return bool|WP_Error True if successful, WP_Error or false otherwise. */ public function store( $data = array() ) { // If revenue attribution is not turned on, return early. $ra = $this->base->get_revenue_attribution(); if ( empty( $ra['enabled'] ) || empty( $ra['currency'] ) ) { return false; } // If we can't find the account ID, return early. $accountId = $this->base->get_option( 'accountId' ); if ( empty( $accountId ) ) { return false; } // Build and send the request. $api = OMAPI_Api::build( 'v2', 'revenue/' . $accountId, 'POST' ); return $api->request( $data ); } /** * Returns revenue attribution data. * * @since 2.6.13 * * @return array An array of revenue attribution data. */ public function get_revenue_data() { // If we don't have any cookies set for OM campaigns, return early. if ( empty( $_COOKIE['_omra'] ) ) { return array(); } // If revenue attribution is not turned on, return early. $ra = $this->base->get_revenue_attribution(); if ( empty( $ra['enabled'] ) || empty( $ra['currency'] ) ) { return array(); } // Loop through and prepare the campaign data. If it is empty, return early. $campaign_data = json_decode( stripslashes( rawurldecode( $_COOKIE['_omra'] ) ), true ); if ( empty( $campaign_data ) ) { return array(); } // Sanitize the campaign data before sending it back. $sanitized_campaigns = array(); foreach ( $campaign_data as $campaign_id => $action ) { $sanitized_campaigns[ esc_html( $campaign_id ) ] = esc_html( $action ); } // Return the default revenue attribution data. Additional revenue // data should be returned from the integration itself (such as // the total, transaction ID, etc.). return array( 'campaigns' => $sanitized_campaigns, 'currency' => esc_html( $ra['currency'] ), 'device' => wp_is_mobile() ? 'mobile' : 'desktop', 'type' => 'sale', ); } }