This repository was archived by the owner on Oct 21, 2025. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 8
Expand file tree
/
Copy pathpremium-cta.php
More file actions
145 lines (126 loc) · 5.77 KB
/
Copy pathpremium-cta.php
File metadata and controls
145 lines (126 loc) · 5.77 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
<?php
/***************
* Premium CTA *
***************/
// CTA Markup function, contains logic to disable CTA when Sprout Invoices Pro is active and allows for dynamic URLs for the UTM codes
function si_premium_cta( $url ) {
if ( ! is_plugin_active( 'sprout-invoices-pro/sprout-invoices-pro.php' ) ) {
echo( '<div class="si_premium_cta">' );
printf(
__( 'You're using the free version of Sprout Invoices. <a href="%1$s" target="_blank"><b>Upgrade today</b></a> to unlock more features.' , 'sprout-invoices' ),
esc_url( $url )
);
echo( '</div>' );
}
}
// Fetches the request URI for current page without Site or Home URLs
function current_page() {
global $pagenow;
$current_slug = $pagenow . '?' . $_SERVER['QUERY_STRING'];
return $current_slug;
}
// Stores request URI information for use in switch statement to supply different UTM codes depending on the URL
$admin_url = current_page();
// Switch statement to add individual UTM codes to each admin page
switch ($admin_url) {
// Invoices
case 'edit.php?post_type=sa_invoice':
function si_utm() {
si_premium_cta( 'https://sproutinvoices.com/inplugin-upgrade/invoices?utm_source=Invoices&utm_medium=Top%20Banner&utm_campaign=In%20Plugin%20Upgrade' );
}
add_action( 'all_admin_notices' , 'si_utm' );
break;
// Add Invoice
case 'post-new.php?post_type=sa_invoice':
function si_utm() {
si_premium_cta( 'https://sproutinvoices.com/inplugin-upgrade/invoices?utm_source=Add%20Invoice&utm_medium=Top%20Banner&utm_campaign=In%20Plugin%20Upgrade' );
}
add_action( 'all_admin_notices' , 'si_utm' );
break;
// Payments
case 'edit.php?post_type=sa_invoice&page=sprout-apps%2Finvoice_payments':
function si_utm() {
si_premium_cta( 'https://sproutinvoices.com/inplugin-upgrade/invoices?utm_source=Payments&utm_medium=Top%20Banner&utm_campaign=In%20Plugin%20Upgrade' );
}
add_action( 'all_admin_notices' , 'si_utm' );
break;
// Clients
case 'edit.php?post_type=sa_client':
function si_utm() {
si_premium_cta( 'https://sproutinvoices.com/inplugin-upgrade/invoices?utm_source=Clients&utm_medium=Top%20Banner&utm_campaign=In%20Plugin%20Upgrade' );
}
add_action( 'all_admin_notices' , 'si_utm' );
break;
//Projects
case 'edit.php?post_type=sa_project':
function si_utm() {
si_premium_cta( 'https://sproutinvoices.com/inplugin-upgrade/invoices?utm_source=Projects&utm_medium=Top%20Banner&utm_campaign=In%20Plugin%20Upgrade' );
}
add_action( 'all_admin_notices' , 'si_utm' );
break;
// Estimates
case 'edit.php?post_type=sa_estimate':
function si_utm() {
si_premium_cta( 'https://sproutinvoices.com/inplugin-upgrade/estimates?utm_source=All%20Estimates&utm_medium=Top%20Banner&utm_campaign=In%20Plugin%20Upgrade' );
}
add_action( 'all_admin_notices' , 'si_utm' );
break;
// Add Estimate
case 'post-new.php?post_type=sa_estimate':
function si_utm() {
si_premium_cta( 'https://sproutinvoices.com/inplugin-upgrade/estimates?utm_source=Estimates&utm_medium=Top%20Banner&utm_campaign=In%20Plugin%20Upgrade' );
}
add_action( 'all_admin_notices' , 'si_utm' );
break;
// Getting Started
case 'admin.php?page=sprout-invoices':
function si_utm() {
si_premium_cta( 'https://sproutinvoices.com/inplugin-upgrade/sprout?utm_source=Getting%20Started&utm_medium=Top%20Banner&utm_campaign=In%20Plugin%20Upgrade' );
}
add_action( 'all_admin_notices', 'si_utm' );
break;
// General Settings
case 'admin.php?page=sprout-invoices-settings':
function si_utm() {
si_premium_cta( 'https://sproutinvoices.com/inplugin-upgrade/sprout?utm_source=General%20Settings&utm_medium=Top%20Banner&utm_campaign=In%20Plugin%20Upgrade' );
}
add_action( 'all_admin_notices', 'si_utm' );
break;
// Payment Settings
case 'admin.php?page=sprout-invoices-payments':
function si_utm() {
si_premium_cta( 'https://sproutinvoices.com/inplugin-upgrade/sprout?utm_source=Payment%20Settings&utm_medium=Top%20Banner&utm_campaign=In%20Plugin%20Upgrade' );
}
add_action( 'all_admin_notices', 'si_utm' );
break;
// Notifications
case 'admin.php?page=sprout-invoices-notifications':
function si_utm() {
si_premium_cta( 'https://sproutinvoices.com/inplugin-upgrade/sprout?utm_source=Notifications&utm_medium=Top%20Banner&utm_campaign=In%20Plugin%20Upgrade' );
}
add_action( 'all_admin_notices', 'si_utm' );
break;
// Add-ons
case 'admin.php?page=sprout-invoices-addons':
function si_utm() {
si_premium_cta( 'https://sproutinvoices.com/inplugin-upgrade/sprout?utm_source=Add%20Ons&utm_medium=Top%20Banner&utm_campaign=In%20Plugin%20Upgrade' );
}
add_action( 'all_admin_notices', 'si_utm' );
break;
// Reports
case 'admin.php?page=sprout-invoices-reports':
function si_utm() {
si_premium_cta( 'https://sproutinvoices.com/inplugin-upgrade/sprout?utm_source=Reports&utm_medium=Top%20Banner&utm_campaign=In%20Plugin%20Upgrade' );
}
add_action( 'all_admin_notices', 'si_utm' );
break;
// Import
case 'admin.php?page=sprout-invoices-import':
function si_utm() {
si_premium_cta( 'https://sproutinvoices.com/inplugin-upgrade/sprout?utm_source=Import&utm_medium=Top%20Banner&utm_campaign=In%20Plugin%20Upgrade' );
}
add_action( 'all_admin_notices', 'si_utm' );
break;
default:
return;
}