Version Description
Current Version of Popup Builder is 3.4
Download this release
Release Info
Developer | Sygnoos |
Plugin | Popup Builder – Responsive WordPress Pop up |
Version | 3.41 |
Comparing to | |
See all releases |
Code changes from version 3.4 to 3.41
- com/classes/Actions.php +20 -11
- com/classes/popups/HtmlPopup.php +1 -1
- com/config/configPackage.php +1 -1
- com/helpers/AdminHelper.php +16 -2
- com/helpers/Functions.php +26 -0
- popup-builder.php +1 -1
- public/js/Newsletter.js +56 -56
- public/js/PopupBuilder.js +1 -2
- public/views/newsletter.php +53 -5
- readme.txt +6 -1
com/classes/Actions.php
CHANGED
@@ -559,6 +559,13 @@ class Actions
|
|
559 |
$fromEmail = $newsletterOptions['fromEmail'];
|
560 |
$emailMessage = $newsletterOptions['messageBody'];
|
561 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
562 |
// When email is not valid we don't continue
|
563 |
if (!preg_match('/^[a-zA-Z0-9_.-]+@[a-zA-Z0-9-]+.[a-zA-Z0-9-.]+$/', $fromEmail)) {
|
564 |
wp_clear_scheduled_hook('sgpb_send_newsletter');
|
@@ -605,13 +612,8 @@ class Actions
|
|
605 |
);
|
606 |
|
607 |
foreach ($subscribers as $subscriber) {
|
608 |
-
$patternFirstName = '/\[First name]/';
|
609 |
-
$patternLastName = '/\[Last name]/';
|
610 |
-
$patternBlogName = '/\[Blog name]/';
|
611 |
-
$patternUserName = '/\[User name]/';
|
612 |
-
$patternUnsubscribe = '/\[Unsubscribe]/';
|
613 |
-
|
614 |
$replacementId = $subscriber['id'];
|
|
|
615 |
$replacementFirstName = $subscriber['firstName'];
|
616 |
$replacementLastName = $subscriber['lastName'];
|
617 |
$replacementBlogName = $newsletterOptions['blogname'];
|
@@ -624,11 +626,18 @@ class Actions
|
|
624 |
$replacementUnsubscribe = '<br><a href="'.$replacementUnsubscribe.'">'.__('Unsubscribe', SG_POPUP_TEXT_DOMAIN).'</a>';
|
625 |
|
626 |
// Replace First name and Last name from email message
|
627 |
-
$emailMessageCustom = preg_replace($patternFirstName, $replacementFirstName, $emailMessage);
|
628 |
-
$emailMessageCustom = preg_replace($patternLastName, $replacementLastName, $emailMessageCustom);
|
629 |
-
$emailMessageCustom = preg_replace($patternBlogName, $replacementBlogName, $emailMessageCustom);
|
630 |
-
$emailMessageCustom = preg_replace($patternUserName, $replacementUserName, $emailMessageCustom);
|
631 |
-
$emailMessageCustom = preg_replace($patternUnsubscribe, $replacementUnsubscribe, $emailMessageCustom);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
632 |
$emailMessageCustom = stripslashes($emailMessageCustom);
|
633 |
|
634 |
$emailMessageCustom = apply_filters('sgpNewsletterSendingMessage', $emailMessageCustom);
|
559 |
$fromEmail = $newsletterOptions['fromEmail'];
|
560 |
$emailMessage = $newsletterOptions['messageBody'];
|
561 |
|
562 |
+
$allAvailableShortcodes = array();
|
563 |
+
$allAvailableShortcodes['patternFirstName'] = '/\[First name]/';
|
564 |
+
$allAvailableShortcodes['patternLastName'] = '/\[Last name]/';
|
565 |
+
$allAvailableShortcodes['patternBlogName'] = '/\[Blog name]/';
|
566 |
+
$allAvailableShortcodes['patternUserName'] = '/\[User name]/';
|
567 |
+
$allAvailableShortcodes['patternUnsubscribe'] = '/\[Unsubscribe]/';
|
568 |
+
|
569 |
// When email is not valid we don't continue
|
570 |
if (!preg_match('/^[a-zA-Z0-9_.-]+@[a-zA-Z0-9-]+.[a-zA-Z0-9-.]+$/', $fromEmail)) {
|
571 |
wp_clear_scheduled_hook('sgpb_send_newsletter');
|
612 |
);
|
613 |
|
614 |
foreach ($subscribers as $subscriber) {
|
|
|
|
|
|
|
|
|
|
|
|
|
615 |
$replacementId = $subscriber['id'];
|
616 |
+
$allAvailableShortcodes = apply_filters('sgpbNewsletterShortcodes', $allAvailableShortcodes, $subscriptionFormId, $replacementId);
|
617 |
$replacementFirstName = $subscriber['firstName'];
|
618 |
$replacementLastName = $subscriber['lastName'];
|
619 |
$replacementBlogName = $newsletterOptions['blogname'];
|
626 |
$replacementUnsubscribe = '<br><a href="'.$replacementUnsubscribe.'">'.__('Unsubscribe', SG_POPUP_TEXT_DOMAIN).'</a>';
|
627 |
|
628 |
// Replace First name and Last name from email message
|
629 |
+
$emailMessageCustom = preg_replace($allAvailableShortcodes['patternFirstName'], $replacementFirstName, $emailMessage);
|
630 |
+
$emailMessageCustom = preg_replace($allAvailableShortcodes['patternLastName'], $replacementLastName, $emailMessageCustom);
|
631 |
+
$emailMessageCustom = preg_replace($allAvailableShortcodes['patternBlogName'], $replacementBlogName, $emailMessageCustom);
|
632 |
+
$emailMessageCustom = preg_replace($allAvailableShortcodes['patternUserName'], $replacementUserName, $emailMessageCustom);
|
633 |
+
$emailMessageCustom = preg_replace($allAvailableShortcodes['patternUnsubscribe'], $replacementUnsubscribe, $emailMessageCustom);
|
634 |
+
if (!empty($allAvailableShortcodes['extraShortcodesWithValues'])) {
|
635 |
+
$customFields = $allAvailableShortcodes['extraShortcodesWithValues'];
|
636 |
+
foreach ($customFields as $customFieldKey => $customFieldValue) {
|
637 |
+
$finalShortcode = '/\['.$customFieldKey.']/';
|
638 |
+
$emailMessageCustom = preg_replace($finalShortcode, $customFieldValue, $emailMessageCustom);
|
639 |
+
}
|
640 |
+
}
|
641 |
$emailMessageCustom = stripslashes($emailMessageCustom);
|
642 |
|
643 |
$emailMessageCustom = apply_filters('sgpNewsletterSendingMessage', $emailMessageCustom);
|
com/classes/popups/HtmlPopup.php
CHANGED
@@ -42,4 +42,4 @@ class HtmlPopup extends SGPopup
|
|
42 |
{
|
43 |
return array();
|
44 |
}
|
45 |
-
}
|
42 |
{
|
43 |
return array();
|
44 |
}
|
45 |
+
}
|
com/config/configPackage.php
CHANGED
@@ -3,6 +3,6 @@ if (!defined('ABSPATH')) {
|
|
3 |
exit();
|
4 |
}
|
5 |
|
6 |
-
define('SG_POPUP_VERSION', '3.
|
7 |
define('SGPB_POPUP_PKG', SGPB_POPUP_PKG_FREE);
|
8 |
define('POPUP_BUILDER_BASENAME', 'popupbuilder-platinum/popup-builder.php');
|
3 |
exit();
|
4 |
}
|
5 |
|
6 |
+
define('SG_POPUP_VERSION', '3.41');
|
7 |
define('SGPB_POPUP_PKG', SGPB_POPUP_PKG_FREE);
|
8 |
define('POPUP_BUILDER_BASENAME', 'popupbuilder-platinum/popup-builder.php');
|
com/helpers/AdminHelper.php
CHANGED
@@ -4,6 +4,7 @@ use \DateTime;
|
|
4 |
use \DateTimeZone;
|
5 |
use \SgpbDataConfig;
|
6 |
use \Elementor;
|
|
|
7 |
|
8 |
class AdminHelper
|
9 |
{
|
@@ -487,7 +488,7 @@ class AdminHelper
|
|
487 |
if (!is_admin()) {
|
488 |
return true;
|
489 |
}
|
490 |
-
|
491 |
$savedUserRoles = self::getPopupPostAllowedUserRoles();
|
492 |
$currentUserRole = self::getCurrentUserRole();
|
493 |
if (!is_array($savedUserRoles) || !is_array($currentUserRole)) {
|
@@ -1653,4 +1654,17 @@ class AdminHelper
|
|
1653 |
|
1654 |
return array();
|
1655 |
}
|
1656 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4 |
use \DateTimeZone;
|
5 |
use \SgpbDataConfig;
|
6 |
use \Elementor;
|
7 |
+
use sgpbsubscriptionplus\SubscriptionPlusAdminHelper;
|
8 |
|
9 |
class AdminHelper
|
10 |
{
|
488 |
if (!is_admin()) {
|
489 |
return true;
|
490 |
}
|
491 |
+
|
492 |
$savedUserRoles = self::getPopupPostAllowedUserRoles();
|
493 |
$currentUserRole = self::getCurrentUserRole();
|
494 |
if (!is_array($savedUserRoles) || !is_array($currentUserRole)) {
|
1654 |
|
1655 |
return array();
|
1656 |
}
|
1657 |
+
|
1658 |
+
public static function getCustomFormFieldsByPopupId($popupId)
|
1659 |
+
{
|
1660 |
+
if (!class_exists('sgpbsubscriptionplus\SubscriptionPlusAdminHelper')) {
|
1661 |
+
return array();
|
1662 |
+
}
|
1663 |
+
|
1664 |
+
if (method_exists('sgpbsubscriptionplus\SubscriptionPlusAdminHelper', 'getCustomFormFieldsByPopupId')) {
|
1665 |
+
return SubscriptionPlusAdminHelper::getCustomFormFieldsByPopupId($popupId);
|
1666 |
+
}
|
1667 |
+
|
1668 |
+
return array();
|
1669 |
+
}
|
1670 |
+
}
|
com/helpers/Functions.php
CHANGED
@@ -219,4 +219,30 @@ class Functions
|
|
219 |
|
220 |
return $dir;
|
221 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
222 |
}
|
219 |
|
220 |
return $dir;
|
221 |
}
|
222 |
+
|
223 |
+
public static function getIpAddress()
|
224 |
+
{
|
225 |
+
$ipAddress = 'UNKNOWN';
|
226 |
+
|
227 |
+
if (getenv('HTTP_CLIENT_IP')) {
|
228 |
+
$ipAddress = getenv('HTTP_CLIENT_IP');
|
229 |
+
}
|
230 |
+
else if (getenv('HTTP_X_FORWARDED_FOR')) {
|
231 |
+
$ipAddress = getenv('HTTP_X_FORWARDED_FOR');
|
232 |
+
}
|
233 |
+
else if (getenv('HTTP_X_FORWARDED')) {
|
234 |
+
$ipAddress = getenv('HTTP_X_FORWARDED');
|
235 |
+
}
|
236 |
+
else if (getenv('HTTP_FORWARDED_FOR')) {
|
237 |
+
$ipAddress = getenv('HTTP_FORWARDED_FOR');
|
238 |
+
}
|
239 |
+
else if (getenv('HTTP_FORWARDED')) {
|
240 |
+
$ipAddress = getenv('HTTP_FORWARDED');
|
241 |
+
}
|
242 |
+
else if (getenv('REMOTE_ADDR')) {
|
243 |
+
$ipAddress = getenv('REMOTE_ADDR');
|
244 |
+
}
|
245 |
+
|
246 |
+
return $ipAddress;
|
247 |
+
}
|
248 |
}
|
popup-builder.php
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
* Plugin Name: Popup Builder
|
4 |
* Plugin URI: https://popup-builder.com
|
5 |
* Description: The most complete popup plugin. Html, image, iframe, shortcode, video and many other popup types. Manage popup dimensions, effects, themes and more.
|
6 |
-
* Version: 3.
|
7 |
* Author: Sygnoos
|
8 |
* Author URI: https://sygnoos.com
|
9 |
* License: GPLv2
|
3 |
* Plugin Name: Popup Builder
|
4 |
* Plugin URI: https://popup-builder.com
|
5 |
* Description: The most complete popup plugin. Html, image, iframe, shortcode, video and many other popup types. Manage popup dimensions, effects, themes and more.
|
6 |
+
* Version: 3.41
|
7 |
* Author: Sygnoos
|
8 |
* Author URI: https://sygnoos.com
|
9 |
* License: GPLv2
|
public/js/Newsletter.js
CHANGED
@@ -1,79 +1,79 @@
|
|
1 |
function SGPBNewsletter()
|
2 |
{
|
3 |
-
|
4 |
}
|
5 |
|
6 |
SGPBNewsletter.prototype.getTinymceContent = function()
|
7 |
{
|
8 |
-
|
9 |
-
|
10 |
-
|
11 |
|
12 |
-
|
13 |
};
|
14 |
|
15 |
SGPBNewsletter.prototype.init = function ()
|
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 |
jQuery(document).ready(function () {
|
78 |
new SGPBNewsletter();
|
79 |
-
});
|
1 |
function SGPBNewsletter()
|
2 |
{
|
3 |
+
this.init();
|
4 |
}
|
5 |
|
6 |
SGPBNewsletter.prototype.getTinymceContent = function()
|
7 |
{
|
8 |
+
if (jQuery('.wp-editor-wrap').hasClass('tmce-active')) {
|
9 |
+
return tinyMCE.activeEditor.getContent();
|
10 |
+
}
|
11 |
|
12 |
+
return jQuery('#sgpb-newsletter-text').val();
|
13 |
};
|
14 |
|
15 |
SGPBNewsletter.prototype.init = function ()
|
16 |
{
|
17 |
+
var sendButton = jQuery('.js-send-newsletter');
|
18 |
|
19 |
+
if (!sendButton.length) {
|
20 |
+
return false;
|
21 |
+
}
|
22 |
+
var that = this;
|
23 |
|
24 |
+
sendButton.bind('click', function(e) {
|
25 |
+
e.preventDefault();
|
26 |
+
var validationStatus = true;
|
27 |
+
var fromEmail = jQuery('.sgpb-newsletter-from-email').val();
|
28 |
+
var subscriptionFormId = jQuery('.js-sg-newsletter-forms option:selected').val();
|
29 |
+
subscriptionFormId = parseInt(subscriptionFormId);
|
30 |
+
var validateEmail = fromEmail.search(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,10})+$/);
|
31 |
|
32 |
+
if (isNaN(subscriptionFormId)) {
|
33 |
+
jQuery('.sgpb-newsletter-popup-error').removeClass('sg-hide-element');
|
34 |
+
validationStatus = false;
|
35 |
+
}
|
36 |
|
37 |
+
/*When the sent email isn't valid or the user hasn't selected any subscription form.*/
|
38 |
+
if (validateEmail == -1 ) {
|
39 |
+
validationStatus = false;
|
40 |
+
jQuery('.sgpb-newsletter-from-email-error').removeClass('sg-hide-element');
|
41 |
+
return false;
|
42 |
+
}
|
43 |
|
44 |
+
if (!validationStatus) {
|
45 |
+
return false;
|
46 |
+
}
|
47 |
+
jQuery('.sgpb-newsletter-validation').addClass('sg-hide-element');
|
48 |
|
49 |
+
var emailsInFlow = jQuery('.sgpb-emails-in-flow').val();
|
50 |
+
emailsInFlow = parseInt(emailsInFlow);
|
51 |
+
var newsletterSubject = jQuery('.sgpb-newsletter-subject').val();
|
52 |
+
var messageBody = that.getTinymceContent();
|
53 |
|
54 |
+
var data = {
|
55 |
+
nonce: SGPB_JS_PARAMS.nonce,
|
56 |
+
action: 'sgpb_send_newsletter',
|
57 |
+
newsletterData: {
|
58 |
+
subscriptionFormId: subscriptionFormId,
|
59 |
+
beforeSend: function() {
|
60 |
+
jQuery('.sgpb-js-newsletter-spinner').removeClass('sgpb-hide');
|
61 |
+
jQuery('.sgpb-newsletter-notice').addClass('sgpb-hide');
|
62 |
+
},
|
63 |
+
fromEmail: fromEmail,
|
64 |
+
emailsInFlow: emailsInFlow,
|
65 |
+
newsletterSubject: newsletterSubject,
|
66 |
+
messageBody: messageBody
|
67 |
+
}
|
68 |
+
};
|
69 |
|
70 |
+
jQuery.post(ajaxurl, data, function() {
|
71 |
+
jQuery('.sgpb-newsletter-notice').removeClass('sgpb-hide');
|
72 |
+
jQuery('.sgpb-js-newsletter-spinner').addClass('sgpb-hide');
|
73 |
+
});
|
74 |
+
});
|
75 |
};
|
76 |
|
77 |
jQuery(document).ready(function () {
|
78 |
new SGPBNewsletter();
|
79 |
+
});
|
public/js/PopupBuilder.js
CHANGED
@@ -2487,7 +2487,7 @@ SgpbEventListener.prototype.sgpbClick = function(listenerObj, eventData)
|
|
2487 |
if (typeof eventData.operator != 'undefined' && eventData.operator == 'clickActionCustomClass') {
|
2488 |
targetClick = jQuery('a[href*="#sg-popup-id-' + popupId + '"], .sg-popup-id-' + popupId + ', .sgpb-popup-id-' + popupId+', .'+eventData.value);
|
2489 |
}
|
2490 |
-
if (!targetClick.length) {
|
2491 |
continue;
|
2492 |
}
|
2493 |
var delay = parseInt(popupOptions['sgpb-popup-delay']) * 1000;
|
@@ -2496,7 +2496,6 @@ SgpbEventListener.prototype.sgpbClick = function(listenerObj, eventData)
|
|
2496 |
if (!jQuery(this).attr('data-popup-id')) {
|
2497 |
jQuery(this).attr('data-popup-id', popupId);
|
2498 |
}
|
2499 |
-
|
2500 |
jQuery(this).bind('click', function(e) {
|
2501 |
if (clickCount > 1) {
|
2502 |
return true;
|
2487 |
if (typeof eventData.operator != 'undefined' && eventData.operator == 'clickActionCustomClass') {
|
2488 |
targetClick = jQuery('a[href*="#sg-popup-id-' + popupId + '"], .sg-popup-id-' + popupId + ', .sgpb-popup-id-' + popupId+', .'+eventData.value);
|
2489 |
}
|
2490 |
+
if (!targetClick.length || !targetClick.hasClass('sg-popup-id-'+popupId )) {
|
2491 |
continue;
|
2492 |
}
|
2493 |
var delay = parseInt(popupOptions['sgpb-popup-delay']) * 1000;
|
2496 |
if (!jQuery(this).attr('data-popup-id')) {
|
2497 |
jQuery(this).attr('data-popup-id', popupId);
|
2498 |
}
|
|
|
2499 |
jQuery(this).bind('click', function(e) {
|
2500 |
if (clickCount > 1) {
|
2501 |
return true;
|
public/views/newsletter.php
CHANGED
@@ -14,6 +14,10 @@
|
|
14 |
'autocomplete' => 'off'
|
15 |
)
|
16 |
);
|
|
|
|
|
|
|
|
|
17 |
?>
|
18 |
<div class="sgpb-wrapper sgpb-newsletter">
|
19 |
<div class="row">
|
@@ -120,9 +124,16 @@
|
|
120 |
<span><?php _e('Newsletter Shortcodes', SG_POPUP_TEXT_DOMAIN); ?></span>
|
121 |
</h3>
|
122 |
<div class="sgpb-options-content">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
123 |
<div class="row form-group">
|
124 |
<div class="col-md-6">
|
125 |
-
<
|
126 |
</div>
|
127 |
<div class="col-md-6">
|
128 |
<?php _e('Subscriber First name', SG_POPUP_TEXT_DOMAIN); ?>
|
@@ -130,7 +141,7 @@
|
|
130 |
</div>
|
131 |
<div class="row form-group">
|
132 |
<div class="col-md-6">
|
133 |
-
<
|
134 |
</div>
|
135 |
<div class="col-md-6">
|
136 |
<?php _e('Subscriber Last name', SG_POPUP_TEXT_DOMAIN); ?>
|
@@ -138,7 +149,7 @@
|
|
138 |
</div>
|
139 |
<div class="row form-group">
|
140 |
<div class="col-md-6">
|
141 |
-
<
|
142 |
</div>
|
143 |
<div class="col-md-6">
|
144 |
<?php _e('Your blog name', SG_POPUP_TEXT_DOMAIN); ?>
|
@@ -146,7 +157,7 @@
|
|
146 |
</div>
|
147 |
<div class="row form-group">
|
148 |
<div class="col-md-6">
|
149 |
-
<
|
150 |
</div>
|
151 |
<div class="col-md-6">
|
152 |
<?php _e('Your user name', SG_POPUP_TEXT_DOMAIN); ?>
|
@@ -154,12 +165,49 @@
|
|
154 |
</div>
|
155 |
<div class="row form-group">
|
156 |
<div class="col-md-6">
|
157 |
-
<
|
158 |
</div>
|
159 |
<div class="col-md-6">
|
160 |
<?php _e('Unsubscribe', SG_POPUP_TEXT_DOMAIN); ?>
|
161 |
</div>
|
162 |
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
163 |
</div>
|
164 |
</div>
|
165 |
</div>
|
14 |
'autocomplete' => 'off'
|
15 |
)
|
16 |
);
|
17 |
+
|
18 |
+
reset($subscriptionIdTitle);
|
19 |
+
$defaultSelectedPopupId = key($subscriptionIdTitle);
|
20 |
+
$subscriptionPopupsCustomFields = AdminHelper::getCustomFormFieldsByPopupId($defaultSelectedPopupId);
|
21 |
?>
|
22 |
<div class="sgpb-wrapper sgpb-newsletter">
|
23 |
<div class="row">
|
124 |
<span><?php _e('Newsletter Shortcodes', SG_POPUP_TEXT_DOMAIN); ?></span>
|
125 |
</h3>
|
126 |
<div class="sgpb-options-content">
|
127 |
+
<div class="row form-group">
|
128 |
+
<div class="col-md-12">
|
129 |
+
<label>
|
130 |
+
<?php _e('Default shortcodes', SG_POPUP_TEXT_DOMAIN); ?>:
|
131 |
+
</label>
|
132 |
+
</div>
|
133 |
+
</div>
|
134 |
<div class="row form-group">
|
135 |
<div class="col-md-6">
|
136 |
+
<code><?php _e('[First name]', SG_POPUP_TEXT_DOMAIN); ?></code>
|
137 |
</div>
|
138 |
<div class="col-md-6">
|
139 |
<?php _e('Subscriber First name', SG_POPUP_TEXT_DOMAIN); ?>
|
141 |
</div>
|
142 |
<div class="row form-group">
|
143 |
<div class="col-md-6">
|
144 |
+
<code><?php _e('[Last name]', SG_POPUP_TEXT_DOMAIN); ?></code>
|
145 |
</div>
|
146 |
<div class="col-md-6">
|
147 |
<?php _e('Subscriber Last name', SG_POPUP_TEXT_DOMAIN); ?>
|
149 |
</div>
|
150 |
<div class="row form-group">
|
151 |
<div class="col-md-6">
|
152 |
+
<code><?php _e('[Blog name]', SG_POPUP_TEXT_DOMAIN); ?></code>
|
153 |
</div>
|
154 |
<div class="col-md-6">
|
155 |
<?php _e('Your blog name', SG_POPUP_TEXT_DOMAIN); ?>
|
157 |
</div>
|
158 |
<div class="row form-group">
|
159 |
<div class="col-md-6">
|
160 |
+
<code><?php _e('[User name]', SG_POPUP_TEXT_DOMAIN); ?></code>
|
161 |
</div>
|
162 |
<div class="col-md-6">
|
163 |
<?php _e('Your user name', SG_POPUP_TEXT_DOMAIN); ?>
|
165 |
</div>
|
166 |
<div class="row form-group">
|
167 |
<div class="col-md-6">
|
168 |
+
<code><?php _e('[Unsubscribe]', SG_POPUP_TEXT_DOMAIN); ?></code>
|
169 |
</div>
|
170 |
<div class="col-md-6">
|
171 |
<?php _e('Unsubscribe', SG_POPUP_TEXT_DOMAIN); ?>
|
172 |
</div>
|
173 |
</div>
|
174 |
+
<?php if (!empty($subscriptionPopupsCustomFields)) :?>
|
175 |
+
<div class="row">
|
176 |
+
<div class="col-md-6">
|
177 |
+
<label>
|
178 |
+
<?php _e('Custom fields\' shortcodes', SG_POPUP_TEXT_DOMAIN); ?>:
|
179 |
+
</label>
|
180 |
+
</div>
|
181 |
+
</div>
|
182 |
+
<div class="row form-group">
|
183 |
+
<div class="col-md-5">
|
184 |
+
</div>
|
185 |
+
<div class="col-md-6">
|
186 |
+
<img src="<?php echo SG_POPUP_IMG_URL.'ajaxSpinner.gif'; ?>" width="20px" class="sgpb-hide sgpb-js-newsletter-custom-fields-spinner">
|
187 |
+
</div>
|
188 |
+
</div>
|
189 |
+
<div class="sgpb-newsletter-custom-fields-wrapper">
|
190 |
+
<?php
|
191 |
+
foreach ($subscriptionPopupsCustomFields as $field) {
|
192 |
+
if (empty($field)) {
|
193 |
+
continue;
|
194 |
+
}
|
195 |
+
?>
|
196 |
+
|
197 |
+
<div class="row form-group">
|
198 |
+
<div class="col-md-6">
|
199 |
+
<code>[<?php echo @$field['fieldName'];?>]</code>
|
200 |
+
</div>
|
201 |
+
<div class="col-md-6">
|
202 |
+
<?php echo @$field['fieldName']; ?>
|
203 |
+
</div>
|
204 |
+
</div>
|
205 |
+
|
206 |
+
<?php
|
207 |
+
}
|
208 |
+
?>
|
209 |
+
</div>
|
210 |
+
<?php endif; ?>
|
211 |
</div>
|
212 |
</div>
|
213 |
</div>
|
readme.txt
CHANGED
@@ -9,7 +9,7 @@ Tags: popup, pop up, wordpress popup, popup maker, exit popup, popup builder, wo
|
|
9 |
Requires at least: 3.8
|
10 |
Tested up to: 5.2
|
11 |
Requires PHP: 5.3.3
|
12 |
-
Stable tag: 3.
|
13 |
License: GPLv2 or later
|
14 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
15 |
|
@@ -185,6 +185,11 @@ Go to the Popup Builder settings and set your desired options.
|
|
185 |
|
186 |
== Changelog ==
|
187 |
|
|
|
|
|
|
|
|
|
|
|
188 |
= Version 3.4 =
|
189 |
* Popup Builder post type removed from Yoast sitemap and other SEO plugins.
|
190 |
* Custom JS variable improvements.
|
9 |
Requires at least: 3.8
|
10 |
Tested up to: 5.2
|
11 |
Requires PHP: 5.3.3
|
12 |
+
Stable tag: 3.41
|
13 |
License: GPLv2 or later
|
14 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
15 |
|
185 |
|
186 |
== Changelog ==
|
187 |
|
188 |
+
= Version 3.41 =
|
189 |
+
* Added new shortcodes which can be used inside the Newsletter
|
190 |
+
* PHP > 7 notices fixed
|
191 |
+
* Code optimization and typo fixes
|
192 |
+
|
193 |
= Version 3.4 =
|
194 |
* Popup Builder post type removed from Yoast sitemap and other SEO plugins.
|
195 |
* Custom JS variable improvements.
|