PluginProbe
FireBox – WooCommerce Popup Builder, Exit Intent Popup, Email Optin & Cart Abandonment / 3.1.12
FireBox – WooCommerce Popup Builder, Exit Intent Popup, Email Optin & Cart Abandonment v3.1.12
3.1.13 3.1.12 3.1.11 3.1.10 3.1.9 3.1.8 3.1.7 trunk 1.0.0 1.0.1 1.0.10 1.0.11 1.0.12 1.0.13 1.0.14 1.0.2 1.0.3 1.0.4 1.0.5 1.0.6 1.0.7 1.0.8 1.0.9 1.1.0 1.1.1 All 122 releases
firebox / Inc / Core / Analytics / QueryBuilders / Revenue / RevenueQueryStrategyFactory.php

RevenueQueryStrategyFactory.php in FireBox – WooCommerce Popup Builder, Exit Intent Popup, Email Optin & Cart Abandonment 3.1.12, at Inc/Core/Analytics/QueryBuilders/Revenue/RevenueQueryStrategyFactory.php

57 lines 1.5 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /**
3 * @package FireBox
4 * @version 3.1.12 Free
5 *
6 * @author FirePlugins <info@fireplugins.com>
7 * @link https://www.fireplugins.com
8 * @copyright Copyright © 2026 FirePlugins All Rights Reserved
9 * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later
10 */
11
12 namespace FireBox\Core\Analytics\QueryBuilders\Revenue;
13
14 use FireBox\Core\Analytics\QueryBuilders\Interfaces\QueryStrategyInterface;
15
16 if (!defined('ABSPATH'))
17 {
18 exit; // Exit if accessed directly.
19 }
20
21 class RevenueQueryStrategyFactory
22 {
23 public static function create($queryType, $metric): QueryStrategyInterface
24 {
25 switch ($queryType)
26 {
27 case 'top_campaigns':
28 case 'top_campaign':
29 return new TopCampaignStrategy($metric);
30 case 'countries':
31 return new CountriesStrategy($metric);
32 case 'referrers':
33 return new ReferrersStrategy($metric);
34 case 'devices':
35 return new DevicesStrategy($metric);
36 case 'pages':
37 return new PagesStrategy($metric);
38 case 'dayofweek':
39 case 'day_of_week':
40 return new DayOfWeekStrategy($metric);
41 case 'weekly':
42 return new WeeklyStrategy($metric);
43 case 'monthly':
44 return new MonthlyStrategy($metric);
45 case 'attribution_breakdown':
46 return new AttributionBreakdownStrategy($metric);
47 case 'attribution_breakdown_by_period':
48 return new AttributionBreakdownByPeriodStrategy($metric);
49 case 'count':
50 return new CountStrategy($metric);
51 case 'list':
52 default:
53 return new ListStrategy($metric);
54 }
55 }
56 }
57