Email Subscribers & Newsletters - Version 5.3.9

Version Description

  • New: Added WooCommerce email template support in workflows
  • Fix: Template gallery not working with WordPress v4.9 and lower

=

Download this release

Release Info

Developer Icegram
Plugin Icon 128x128 Email Subscribers & Newsletters
Version 5.3.9
Comparing to
See all releases

Code changes from version 5.3.8 to 5.3.9

email-subscribers.php CHANGED
@@ -3,7 +3,7 @@
3
  * Plugin Name: Email Subscribers & Newsletters
4
  * Plugin URI: https://www.icegram.com/
5
  * Description: Add subscription forms on website, send HTML newsletters & automatically notify subscribers about new blog posts once it is published.
6
- * Version: 5.3.8
7
  * Author: Icegram
8
  * Author URI: https://www.icegram.com/
9
  * Requires at least: 3.9
@@ -187,7 +187,7 @@ if ( 'premium' === $ig_es_plan ) {
187
  /* ***************************** Initial Compatibility Work (End) ******************* */
188
 
189
  if ( ! defined( 'ES_PLUGIN_VERSION' ) ) {
190
- define( 'ES_PLUGIN_VERSION', '5.3.8' );
191
  }
192
 
193
  // Plugin Folder Path.
3
  * Plugin Name: Email Subscribers & Newsletters
4
  * Plugin URI: https://www.icegram.com/
5
  * Description: Add subscription forms on website, send HTML newsletters & automatically notify subscribers about new blog posts once it is published.
6
+ * Version: 5.3.9
7
  * Author: Icegram
8
  * Author URI: https://www.icegram.com/
9
  * Requires at least: 3.9
187
  /* ***************************** Initial Compatibility Work (End) ******************* */
188
 
189
  if ( ! defined( 'ES_PLUGIN_VERSION' ) ) {
190
+ define( 'ES_PLUGIN_VERSION', '5.3.9' );
191
  }
192
 
193
  // Plugin Folder Path.
lite/admin/class-es-gallery.php CHANGED
@@ -61,7 +61,11 @@ if ( ! class_exists( 'ES_Gallery' ) ) {
61
  'post_digest_campaign_type' => esc_attr( IG_CAMPAIGN_TYPE_POST_DIGEST ),
62
  );
63
 
64
- wp_register_script( 'ig-es-main-js', plugins_url( '/dist/main.js', __FILE__ ), array(), '2.0.4', true );
 
 
 
 
65
  wp_enqueue_script( 'ig-es-main-js' );
66
 
67
  wp_localize_script( 'ig-es-main-js', 'ig_es_main_js_data', $main_js_data );
61
  'post_digest_campaign_type' => esc_attr( IG_CAMPAIGN_TYPE_POST_DIGEST ),
62
  );
63
 
64
+ if ( ! wp_script_is( 'wp-i18n' ) ) {
65
+ wp_enqueue_script( 'wp-i18n' );
66
+ }
67
+
68
+ wp_register_script( 'ig-es-main-js', plugins_url( '/dist/main.js', __FILE__ ), array( 'mithril' ), '2.0.4', true );
69
  wp_enqueue_script( 'ig-es-main-js' );
70
 
71
  wp_localize_script( 'ig-es-main-js', 'ig_es_main_js_data', $main_js_data );
lite/admin/dist/main.js CHANGED
@@ -105,7 +105,7 @@ eval("// extracted by mini-css-extract-plugin\n\n//# sourceURL=webpack:///./lite
105
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
106
 
107
  "use strict";
108
- eval("__webpack_require__.r(__webpack_exports__);\n/* WEBPACK VAR INJECTION */(function(global) {/* harmony import */ var _css_style_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../css/style.css */ \"./lite/admin/css/style.css\");\n/* harmony import */ var _css_style_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_style_css__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _src_views_GalleryItemsPage__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./src/views/GalleryItemsPage */ \"./lite/admin/js/src/views/GalleryItemsPage.js\");\n\n\nglobal.__ = wp.i18n.__;\nglobal._x = wp.i18n._x;\nglobal.sprintf = wp.i18n.sprintf;\nvar campaignGalleryItemsWrapper = document.querySelector('#ig-es-campaign-gallery-items-wrapper');\nvar campaignType = location.search.split('campaign-type=')[1];\nvar campaignId = location.search.split('campaign-id=')[1];\n\nif ('undefined' === typeof campaignType) {\n campaignType = ig_es_main_js_data.post_notification_campaign_type;\n}\n\nif ('undefined' === typeof campaignId) {\n campaignId = 0;\n}\n\nm.mount(campaignGalleryItemsWrapper, {\n view: function view() {\n return m(_src_views_GalleryItemsPage__WEBPACK_IMPORTED_MODULE_1__[\"default\"], {\n campaignId: campaignId,\n campaignType: campaignType\n });\n }\n});\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./../../../node_modules/webpack/buildin/global.js */ \"./node_modules/webpack/buildin/global.js\")))\n\n//# sourceURL=webpack:///./lite/admin/js/main.js?");
109
 
110
  /***/ }),
111
 
@@ -177,7 +177,7 @@ eval("__webpack_require__.r(__webpack_exports__);\nvar GalleryItemPreview = {\n
177
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
178
 
179
  "use strict";
180
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _models_GalleryItems__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../models/GalleryItems */ \"./lite/admin/js/src/models/GalleryItems.js\");\n/* harmony import */ var _GalleryItem__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./GalleryItem */ \"./lite/admin/js/src/views/GalleryItem.js\");\n/* harmony import */ var _GalleryItemFilter__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./GalleryItemFilter */ \"./lite/admin/js/src/views/GalleryItemFilter.js\");\n/* harmony import */ var _GalleryItemPreview__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./GalleryItemPreview */ \"./lite/admin/js/src/views/GalleryItemPreview.js\");\n/* harmony import */ var _EditorChoicePopup__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./EditorChoicePopup */ \"./lite/admin/js/src/views/EditorChoicePopup.js\");\n/* harmony import */ var _Loader__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./Loader */ \"./lite/admin/js/src/views/Loader.js\");\n\n\n\n\n\n\nvar GalleryItemsPage = {\n canShowEditorChoicePopup: false,\n activeFilters: [],\n oninit: function oninit(vnode) {\n _models_GalleryItems__WEBPACK_IMPORTED_MODULE_0__[\"default\"].loadItems();\n var campaignType = vnode.attrs.campaignType;\n\n if (!GalleryItemsPage.activeFilters.type) {\n GalleryItemsPage.activeFilters.type = [];\n }\n\n if (!GalleryItemsPage.activeFilters.editor_type) {\n GalleryItemsPage.activeFilters.editor_type = [ig_es_main_js_data.classic_editor_slug, ig_es_main_js_data.dnd_editor_slug]; // GalleryItemsPage.activeFilters.editor_type.push();\n // GalleryItemsPage.activeFilters.editor_type.push(ig_es_main_js_data.dnd_editor_slug);\n }\n\n if (GalleryItemsPage.activeFilters.type.length >= 0 && GalleryItemsPage.activeFilters.type.indexOf(campaignType) === -1) {\n GalleryItemsPage.activeFilters.type.push(campaignType);\n var isPostNotificationCampaign = campaignType === ig_es_main_js_data.post_notification_campaign_type;\n\n if (isPostNotificationCampaign) {\n GalleryItemsPage.activeFilters.type.push(ig_es_main_js_data.post_digest_campaign_type);\n }\n }\n },\n showPreview: function showPreview(id) {\n _models_GalleryItems__WEBPACK_IMPORTED_MODULE_0__[\"default\"].loadTemplatePreviewData(id).then(function (response) {\n _GalleryItemPreview__WEBPACK_IMPORTED_MODULE_3__[\"default\"].previewHTML = response.data.template_html;\n });\n },\n showEditorChoicePopup: function showEditorChoicePopup() {\n GalleryItemsPage.canShowEditorChoicePopup = true;\n },\n hideEditorChoicePopup: function hideEditorChoicePopup() {\n GalleryItemsPage.canShowEditorChoicePopup = false;\n },\n setActiveFilters: function setActiveFilters(filter, filterVal) {\n if (!GalleryItemsPage.activeFilters[filter]) {\n GalleryItemsPage.activeFilters[filter] = [];\n }\n\n if (GalleryItemsPage.activeFilters[filter].indexOf(filterVal) > -1) {\n GalleryItemsPage.activeFilters[filter] = GalleryItemsPage.activeFilters[filter].filter(function (e) {\n return e !== filterVal;\n });\n } else {\n GalleryItemsPage.activeFilters[filter].push(filterVal);\n }\n },\n clearAllActiveFilters: function clearAllActiveFilters() {\n GalleryItemsPage.activeFilters.type = [];\n GalleryItemsPage.activeFilters.editor_type = [];\n },\n view: function view(vnode) {\n var campaignType = vnode.attrs.campaignType;\n var sortedGalleryItems = _models_GalleryItems__WEBPACK_IMPORTED_MODULE_0__[\"default\"].items;\n\n if (_models_GalleryItems__WEBPACK_IMPORTED_MODULE_0__[\"default\"].items.length > 0) {\n console.log(Object.keys(GalleryItemsPage.activeFilters).length);\n\n if (Object.keys(GalleryItemsPage.activeFilters).length > 0 || Object.keys(GalleryItemsPage.activeFilters).length > 0) {\n if (GalleryItemsPage.activeFilters.type.length > 0) {\n sortedGalleryItems = _models_GalleryItems__WEBPACK_IMPORTED_MODULE_0__[\"default\"].items.filter(function (item) {\n return GalleryItemsPage.activeFilters.type.includes(item.type);\n });\n }\n\n if (GalleryItemsPage.activeFilters.editor_type.length > 0) {\n sortedGalleryItems = sortedGalleryItems.filter(function (item) {\n return GalleryItemsPage.activeFilters.editor_type.includes(item.editor_type);\n });\n } // if( GalleryItemsPage.activeFilters['type'] !== undefined && GalleryItemsPage.activeFilters['type'].length <= 0 && GalleryItemsPage.activeFilters['editor_type'] !== undefined && GalleryItemsPage.activeFilters['editor_type'].length <= 0 ){\n // sortedGalleryItems = GalleryItems.items;\n // }\n\n }\n }\n\n return m(\"section\", null, _Loader__WEBPACK_IMPORTED_MODULE_5__[\"default\"].showLoader ? m(_Loader__WEBPACK_IMPORTED_MODULE_5__[\"default\"], null) : null, m(_GalleryItemFilter__WEBPACK_IMPORTED_MODULE_2__[\"default\"], null), m(\"section\", {\n class: \"overflow-hidden text-gray-700 \"\n }, m(\"div\", {\n class: \"container px-5 py-2 mx-auto lg:pt-12 lg:px-24\"\n }, m(\"div\", {\n class: \"grid grid-cols-4 gap-4\"\n }, m(\"div\", {\n class: \"\"\n }, m(\"div\", {\n class: \"h-full border-2 border-gray-200 border-opacity-60 rounded-lg overflow-hidden\"\n }, m(\"svg\", {\n alt: \"{item.title}\",\n xmlns: \"http://www.w3.org/2000/svg\",\n class: \"h-40 w-full\",\n fill: \"none\",\n viewBox: \"0 0 24 24\",\n stroke: \"#d2d6dc\",\n \"stroke-width\": \"2\"\n }, m(\"path\", {\n \"stroke-linecap\": \"round\",\n \"stroke-linejoin\": \"round\",\n d: \"M12 6v6m0 0v6m0-6h6m-6 0H6\"\n })), m(\"div\", {\n class: \"p-4 bg-white h-28 mt-8\"\n }, m(\"h4\", {\n href: \"#\",\n onclick: function onclick() {\n GalleryItemsPage.showEditorChoicePopup();\n },\n class: \"title-font text-lg font-medium text-gray-900 mb-3 sm:truncate cursor-pointer hover:underline mt-6\"\n }, __('Create from scratch', 'email-subscribers'))))), sortedGalleryItems.map(function (item, key) {\n if (ig_es_main_js_data.post_digest_campaign_type === item.type) {\n campaignType = item.type;\n }\n\n return m(_GalleryItem__WEBPACK_IMPORTED_MODULE_1__[\"default\"], {\n key: key,\n item: item,\n campaignType: campaignType,\n campaignId: vnode.attrs.campaignId\n });\n })))), _GalleryItemPreview__WEBPACK_IMPORTED_MODULE_3__[\"default\"].previewHTML !== '' ? m(_GalleryItemPreview__WEBPACK_IMPORTED_MODULE_3__[\"default\"], null) : '', GalleryItemsPage.canShowEditorChoicePopup ? m(_EditorChoicePopup__WEBPACK_IMPORTED_MODULE_4__[\"default\"], {\n campaignType: vnode.attrs.campaignType\n }) : '');\n }\n};\n/* harmony default export */ __webpack_exports__[\"default\"] = (GalleryItemsPage);\n\n//# sourceURL=webpack:///./lite/admin/js/src/views/GalleryItemsPage.js?");
181
 
182
  /***/ }),
183
 
105
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
106
 
107
  "use strict";
108
+ eval("__webpack_require__.r(__webpack_exports__);\n/* WEBPACK VAR INJECTION */(function(global) {/* harmony import */ var _css_style_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../css/style.css */ \"./lite/admin/css/style.css\");\n/* harmony import */ var _css_style_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_style_css__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _src_views_GalleryItemsPage__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./src/views/GalleryItemsPage */ \"./lite/admin/js/src/views/GalleryItemsPage.js\");\n\n\n\nif ('undefined' !== typeof wp.i18n) {\n global.__ = wp.i18n.__;\n} else {\n // Create a dummy fallback function incase i18n library isn't available.\n global.__ = function (text, textDomain) {\n return text;\n };\n}\n\nvar campaignGalleryItemsWrapper = document.querySelector('#ig-es-campaign-gallery-items-wrapper');\nvar campaignType = location.search.split('campaign-type=')[1];\nvar campaignId = location.search.split('campaign-id=')[1];\n\nif ('undefined' === typeof campaignType) {\n campaignType = ig_es_main_js_data.post_notification_campaign_type;\n}\n\nif ('undefined' === typeof campaignId) {\n campaignId = 0;\n}\n\nm.mount(campaignGalleryItemsWrapper, {\n view: function view() {\n return m(_src_views_GalleryItemsPage__WEBPACK_IMPORTED_MODULE_1__[\"default\"], {\n campaignId: campaignId,\n campaignType: campaignType\n });\n }\n});\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./../../../node_modules/webpack/buildin/global.js */ \"./node_modules/webpack/buildin/global.js\")))\n\n//# sourceURL=webpack:///./lite/admin/js/main.js?");
109
 
110
  /***/ }),
111
 
177
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
178
 
179
  "use strict";
180
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _models_GalleryItems__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../models/GalleryItems */ \"./lite/admin/js/src/models/GalleryItems.js\");\n/* harmony import */ var _GalleryItem__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./GalleryItem */ \"./lite/admin/js/src/views/GalleryItem.js\");\n/* harmony import */ var _GalleryItemFilter__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./GalleryItemFilter */ \"./lite/admin/js/src/views/GalleryItemFilter.js\");\n/* harmony import */ var _GalleryItemPreview__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./GalleryItemPreview */ \"./lite/admin/js/src/views/GalleryItemPreview.js\");\n/* harmony import */ var _EditorChoicePopup__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./EditorChoicePopup */ \"./lite/admin/js/src/views/EditorChoicePopup.js\");\n/* harmony import */ var _Loader__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./Loader */ \"./lite/admin/js/src/views/Loader.js\");\n\n\n\n\n\n\nvar GalleryItemsPage = {\n canShowEditorChoicePopup: false,\n activeFilters: [],\n oninit: function oninit(vnode) {\n _models_GalleryItems__WEBPACK_IMPORTED_MODULE_0__[\"default\"].loadItems();\n var campaignType = vnode.attrs.campaignType;\n\n if (!GalleryItemsPage.activeFilters.type) {\n GalleryItemsPage.activeFilters.type = [];\n }\n\n if (!GalleryItemsPage.activeFilters.editor_type) {\n GalleryItemsPage.activeFilters.editor_type = [ig_es_main_js_data.classic_editor_slug, ig_es_main_js_data.dnd_editor_slug]; // GalleryItemsPage.activeFilters.editor_type.push();\n // GalleryItemsPage.activeFilters.editor_type.push(ig_es_main_js_data.dnd_editor_slug);\n }\n\n if (GalleryItemsPage.activeFilters.type.length >= 0 && GalleryItemsPage.activeFilters.type.indexOf(campaignType) === -1) {\n GalleryItemsPage.activeFilters.type.push(campaignType);\n var isPostNotificationCampaign = campaignType === ig_es_main_js_data.post_notification_campaign_type;\n\n if (isPostNotificationCampaign) {\n GalleryItemsPage.activeFilters.type.push(ig_es_main_js_data.post_digest_campaign_type);\n }\n }\n },\n showPreview: function showPreview(id) {\n _models_GalleryItems__WEBPACK_IMPORTED_MODULE_0__[\"default\"].loadTemplatePreviewData(id).then(function (response) {\n _GalleryItemPreview__WEBPACK_IMPORTED_MODULE_3__[\"default\"].previewHTML = response.data.template_html;\n });\n },\n showEditorChoicePopup: function showEditorChoicePopup() {\n GalleryItemsPage.canShowEditorChoicePopup = true;\n },\n hideEditorChoicePopup: function hideEditorChoicePopup() {\n GalleryItemsPage.canShowEditorChoicePopup = false;\n },\n setActiveFilters: function setActiveFilters(filter, filterVal) {\n if (!GalleryItemsPage.activeFilters[filter]) {\n GalleryItemsPage.activeFilters[filter] = [];\n }\n\n if (GalleryItemsPage.activeFilters[filter].indexOf(filterVal) > -1) {\n GalleryItemsPage.activeFilters[filter] = GalleryItemsPage.activeFilters[filter].filter(function (e) {\n return e !== filterVal;\n });\n } else {\n GalleryItemsPage.activeFilters[filter].push(filterVal);\n }\n },\n clearAllActiveFilters: function clearAllActiveFilters() {\n GalleryItemsPage.activeFilters.type = [];\n GalleryItemsPage.activeFilters.editor_type = [];\n },\n view: function view(vnode) {\n var campaignType = vnode.attrs.campaignType;\n var sortedGalleryItems = _models_GalleryItems__WEBPACK_IMPORTED_MODULE_0__[\"default\"].items;\n\n if (_models_GalleryItems__WEBPACK_IMPORTED_MODULE_0__[\"default\"].items.length > 0) {\n if (Object.keys(GalleryItemsPage.activeFilters).length > 0 || Object.keys(GalleryItemsPage.activeFilters).length > 0) {\n if (GalleryItemsPage.activeFilters.type.length > 0) {\n sortedGalleryItems = _models_GalleryItems__WEBPACK_IMPORTED_MODULE_0__[\"default\"].items.filter(function (item) {\n return GalleryItemsPage.activeFilters.type.includes(item.type);\n });\n }\n\n if (GalleryItemsPage.activeFilters.editor_type.length > 0) {\n sortedGalleryItems = sortedGalleryItems.filter(function (item) {\n return GalleryItemsPage.activeFilters.editor_type.includes(item.editor_type);\n });\n } // if( GalleryItemsPage.activeFilters['type'] !== undefined && GalleryItemsPage.activeFilters['type'].length <= 0 && GalleryItemsPage.activeFilters['editor_type'] !== undefined && GalleryItemsPage.activeFilters['editor_type'].length <= 0 ){\n // sortedGalleryItems = GalleryItems.items;\n // }\n\n }\n }\n\n return m(\"section\", null, _Loader__WEBPACK_IMPORTED_MODULE_5__[\"default\"].showLoader ? m(_Loader__WEBPACK_IMPORTED_MODULE_5__[\"default\"], null) : null, m(_GalleryItemFilter__WEBPACK_IMPORTED_MODULE_2__[\"default\"], null), m(\"section\", {\n class: \"overflow-hidden text-gray-700 \"\n }, m(\"div\", {\n class: \"container px-5 py-2 mx-auto lg:pt-12 lg:px-24\"\n }, m(\"div\", {\n class: \"grid grid-cols-4 gap-4\"\n }, m(\"div\", {\n class: \"\"\n }, m(\"div\", {\n class: \"h-full border-2 border-gray-200 border-opacity-60 rounded-lg overflow-hidden\"\n }, m(\"svg\", {\n alt: \"{item.title}\",\n xmlns: \"http://www.w3.org/2000/svg\",\n class: \"h-40 w-full\",\n fill: \"none\",\n viewBox: \"0 0 24 24\",\n stroke: \"#d2d6dc\",\n \"stroke-width\": \"2\"\n }, m(\"path\", {\n \"stroke-linecap\": \"round\",\n \"stroke-linejoin\": \"round\",\n d: \"M12 6v6m0 0v6m0-6h6m-6 0H6\"\n })), m(\"div\", {\n class: \"p-4 bg-white h-28 mt-8\"\n }, m(\"h4\", {\n href: \"#\",\n onclick: function onclick() {\n GalleryItemsPage.showEditorChoicePopup();\n },\n class: \"title-font text-lg font-medium text-gray-900 mb-3 sm:truncate cursor-pointer hover:underline mt-6\"\n }, __('Create from scratch', 'email-subscribers'))))), sortedGalleryItems.map(function (item, key) {\n if (ig_es_main_js_data.post_digest_campaign_type === item.type) {\n campaignType = item.type;\n }\n\n return m(_GalleryItem__WEBPACK_IMPORTED_MODULE_1__[\"default\"], {\n key: key,\n item: item,\n campaignType: campaignType,\n campaignId: vnode.attrs.campaignId\n });\n })))), _GalleryItemPreview__WEBPACK_IMPORTED_MODULE_3__[\"default\"].previewHTML !== '' ? m(_GalleryItemPreview__WEBPACK_IMPORTED_MODULE_3__[\"default\"], null) : '', GalleryItemsPage.canShowEditorChoicePopup ? m(_EditorChoicePopup__WEBPACK_IMPORTED_MODULE_4__[\"default\"], {\n campaignType: vnode.attrs.campaignType\n }) : '');\n }\n};\n/* harmony default export */ __webpack_exports__[\"default\"] = (GalleryItemsPage);\n\n//# sourceURL=webpack:///./lite/admin/js/src/views/GalleryItemsPage.js?");
181
 
182
  /***/ }),
183
 
lite/admin/js/email-subscribers-admin.js CHANGED
@@ -1476,8 +1476,10 @@
1476
  let content_container = $('#workflow-email-preview-container');
1477
  let content_loader_container = $('#workflow-email-preview-loader');
1478
 
1479
- let content = $('textarea[name="ig_es_workflow_data[actions][' + action_id + '][ig-es-email-content]"]').val();
1480
- let subject = $('textarea[name="ig_es_workflow_data[actions][' + action_id + '][ig-es-email-subject]"]').val();
 
 
1481
 
1482
  if (!content) {
1483
  alert(ig_es_js_data.i18n_data.empty_template_message);
@@ -1490,6 +1492,8 @@
1490
  'security': ig_es_js_data.security,
1491
  'content': content,
1492
  'subject': subject,
 
 
1493
  'action_id': action_id,
1494
  'preview_type': 'inline',
1495
  'trigger': $('select[name="ig_es_workflow_data[trigger_name]"]').val()
@@ -1534,6 +1538,18 @@
1534
  $('#workflow-email-preview-popup').addClass('hidden');
1535
  $('#workflow-email-preview-popup').css('visibility', 'hidden');
1536
  });
 
 
 
 
 
 
 
 
 
 
 
 
1537
 
1538
  $('#ig_es_workflow_save #publish').on('click', function(e){
1539
  let trigger_name = $('.js-trigger-select').val();
1476
  let content_container = $('#workflow-email-preview-container');
1477
  let content_loader_container = $('#workflow-email-preview-loader');
1478
 
1479
+ let content = $('textarea[name="ig_es_workflow_data[actions][' + action_id + '][ig-es-email-content]"]').val();
1480
+ let subject = $('input[name="ig_es_workflow_data[actions][' + action_id + '][ig-es-email-subject]"]').val();
1481
+ let template = $('select[name="ig_es_workflow_data[actions][' + action_id + '][ig-es-email-template]"]').val();
1482
+ let heading = $('input[name="ig_es_workflow_data[actions][' + action_id + '][ig-es-email-heading]"]').val();
1483
 
1484
  if (!content) {
1485
  alert(ig_es_js_data.i18n_data.empty_template_message);
1492
  'security': ig_es_js_data.security,
1493
  'content': content,
1494
  'subject': subject,
1495
+ 'template': template,
1496
+ 'heading': heading,
1497
  'action_id': action_id,
1498
  'preview_type': 'inline',
1499
  'trigger': $('select[name="ig_es_workflow_data[trigger_name]"]').val()
1538
  $('#workflow-email-preview-popup').addClass('hidden');
1539
  $('#workflow-email-preview-popup').css('visibility', 'hidden');
1540
  });
1541
+
1542
+ $('.ig-es-actions-container').on('change', 'select[data-name="ig-es-email-template"]', function (e) {
1543
+ let selected_email_template = $(this).val();
1544
+ let $action = $(this).closest('.ig-es-action').first();
1545
+ let is_woocommerce_template = 'woocommerce' === selected_email_template;
1546
+
1547
+ if ( is_woocommerce_template ) {
1548
+ $action.find('tr[data-name="ig-es-email-heading"]').show();
1549
+ } else {
1550
+ $action.find('tr[data-name="ig-es-email-heading"]').hide();
1551
+ }
1552
+ });
1553
 
1554
  $('#ig_es_workflow_save #publish').on('click', function(e){
1555
  let trigger_name = $('.js-trigger-select').val();
lite/admin/js/main.js CHANGED
@@ -1,9 +1,14 @@
1
  import '../css/style.css';
2
  import GalleryItemsPage from './src/views/GalleryItemsPage';
3
 
4
- global.__ = wp.i18n.__;
5
- global._x = wp.i18n._x;
6
- global.sprintf = wp.i18n.sprintf;
 
 
 
 
 
7
 
8
  const campaignGalleryItemsWrapper = document.querySelector('#ig-es-campaign-gallery-items-wrapper');
9
 
1
  import '../css/style.css';
2
  import GalleryItemsPage from './src/views/GalleryItemsPage';
3
 
4
+ if ( 'undefined' !== typeof wp.i18n ) {
5
+ global.__ = wp.i18n.__;
6
+ } else {
7
+ // Create a dummy fallback function incase i18n library isn't available.
8
+ global.__ = ( text, textDomain ) => {
9
+ return text;
10
+ }
11
+ }
12
 
13
  const campaignGalleryItemsWrapper = document.querySelector('#ig-es-campaign-gallery-items-wrapper');
14
 
lite/includes/es-core-functions.php CHANGED
@@ -862,8 +862,8 @@ if ( ! function_exists( 'ig_es_get_strip_excluded_tags' ) ) {
862
  * @since 5.3.8
863
  */
864
  function ig_es_get_strip_excluded_tags() {
865
- $excluded_tags = array( '<style>', '<p>', '<em>', '<span>', '<b>', '<strong>', '<i>', '<a>', '<ul>', '<ol>', '<li>', '<br>', '<blockquote>' );
866
- return $excluded_tags;
867
  }
868
  }
869
 
862
  * @since 5.3.8
863
  */
864
  function ig_es_get_strip_excluded_tags() {
865
+ $excluded_tags = array( '<style>', '<p>', '<em>', '<span>', '<b>', '<strong>', '<i>', '<a>', '<ul>', '<ol>', '<li>', '<br>', '<br/>', '<blockquote>', '<header>', '<footer>' );
866
+ return apply_filters( 'ig_es_strip_excluded_tags', $excluded_tags ) ;
867
  }
868
  }
869
 
lite/includes/workflows/actions/abstracts/class-ig-es-action-send-email-abstract.php CHANGED
@@ -37,7 +37,7 @@ abstract class ES_Action_Send_Email_Abstract extends ES_Workflow_Action {
37
  public function load_fields() {
38
  $send_to = new ES_Text();
39
  $send_to->set_name( 'ig-es-send-to' );
40
- $send_to->set_title( __( 'Send To', 'email-subscribers' ) );
41
  $send_to->set_description( __( 'Enter emails here or use variable such as {{EMAIL}}. Multiple emails can be separated by commas.', 'email-subscribers' ) );
42
  $send_to->set_placeholder( __( 'E.g. {{EMAIL}}, admin@example.com', 'email-subscribers' ) );
43
  $send_to->set_required();
37
  public function load_fields() {
38
  $send_to = new ES_Text();
39
  $send_to->set_name( 'ig-es-send-to' );
40
+ $send_to->set_title( __( 'Send to', 'email-subscribers' ) );
41
  $send_to->set_description( __( 'Enter emails here or use variable such as {{EMAIL}}. Multiple emails can be separated by commas.', 'email-subscribers' ) );
42
  $send_to->set_placeholder( __( 'E.g. {{EMAIL}}, admin@example.com', 'email-subscribers' ) );
43
  $send_to->set_required();
lite/includes/workflows/actions/class-es-action-send-email.php CHANGED
@@ -38,18 +38,56 @@ if ( ! class_exists( 'ES_Action_Send_Email' ) ) {
38
  * @since 4.5.3
39
  */
40
  public function load_fields() {
 
 
 
41
  parent::load_fields();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
42
 
43
  $tracking_campaign_id = $this->get_option( 'ig-es-tracking-campaign-id', false );
44
 
45
- if ( empty($tracking_campaign_id) ) {
46
  $tracking_campaign_id = uniqid();
47
  }
48
 
49
  $email_content = new ES_WP_Editor();
50
  $email_content->set_id( 'ig-es-workflow-email-content-' . $tracking_campaign_id );
51
  $email_content->set_name( 'ig-es-email-content' );
52
- $email_content->set_title( __( 'Email Content', 'email-subscribers' ) );
53
  $email_content->set_required();
54
 
55
  $this->add_field( $email_content );
@@ -72,8 +110,12 @@ if ( ! class_exists( 'ES_Action_Send_Email' ) ) {
72
  * @return mixed|null
73
  */
74
  public function load_preview() {
75
- $email_content = $this->get_option( 'ig-es-email-content', true, true );
76
- $email_content = wpautop( $email_content );
 
 
 
 
77
  $current_user = wp_get_current_user();
78
 
79
  return ES_Common::replace_keywords_with_fallback( $email_content, array(
@@ -92,8 +134,10 @@ if ( ! class_exists( 'ES_Action_Send_Email' ) ) {
92
  public function run() {
93
 
94
  $recipients = $this->get_option( 'ig-es-send-to', true );
95
- $email_content = $this->get_option( 'ig-es-email-content', true, true );
96
  $subject = $this->get_option( 'ig-es-email-subject', true );
 
 
 
97
  $tracking_enabled = $this->get_option( 'ig-es-email-tracking-enabled', false );
98
  $tracking_campaign_id = $this->get_option( 'ig-es-tracking-campaign-id', false );
99
 
@@ -155,7 +199,7 @@ if ( ! class_exists( 'ES_Action_Send_Email' ) ) {
155
 
156
  }
157
 
158
-
159
 
160
  $es_mailer = ES()->mailer;
161
 
@@ -173,6 +217,24 @@ if ( ! class_exists( 'ES_Action_Send_Email' ) ) {
173
 
174
  $es_mailer->send( $subject, $email_content, $recipients, $data );
175
  }
176
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
177
  }
178
  }
38
  * @since 4.5.3
39
  */
40
  public function load_fields() {
41
+
42
+ global $ig_es_tracker;
43
+
44
  parent::load_fields();
45
+
46
+ $is_woocommerce_active = $ig_es_tracker::is_plugin_activated( 'woocommerce/woocommerce.php' );
47
+ if ( $is_woocommerce_active ) {
48
+
49
+ $email_template_field = new ES_Select( false );
50
+ $email_template_field->set_name( 'ig-es-email-template' );
51
+ $email_template_field->set_title( __( 'Email styling', 'email-subscribers' ) );
52
+ $email_template_field->set_description( __( 'Select which style to use when formatting the email.', 'email-subscribers' ) );
53
+
54
+ $email_template_field_options = array(
55
+ 'none' => __( 'None', 'email-subscribers' ),
56
+ 'woocommerce' => 'WooCommerce email styling',
57
+ );
58
+
59
+ $email_template_field->set_options( $email_template_field_options );
60
+ $email_template_field->set_required();
61
+
62
+ $this->add_field( $email_template_field );
63
+
64
+ $email_heading_field = new ES_Text();
65
+ $email_heading_field->set_name( 'ig-es-email-heading' );
66
+ $email_heading_field->set_title( __( 'Email heading', 'email-subscribers' ) );
67
+ $email_heading_field->set_description( __( 'Enter text to be shown in email header area.', 'email-subscribers' ) );
68
+ $email_heading_field->set_required();
69
+
70
+ $email_template = $this->get_option( 'ig-es-email-template', false );
71
+
72
+ $is_wocoomerce_template = 'woocommerce' === $email_template;
73
+ if ( ! $is_wocoomerce_template ) {
74
+ $email_heading_field->add_container_classes( 'hidden' );
75
+ }
76
+
77
+ $this->add_field( $email_heading_field );
78
+ }
79
+
80
 
81
  $tracking_campaign_id = $this->get_option( 'ig-es-tracking-campaign-id', false );
82
 
83
+ if ( empty( $tracking_campaign_id ) ) {
84
  $tracking_campaign_id = uniqid();
85
  }
86
 
87
  $email_content = new ES_WP_Editor();
88
  $email_content->set_id( 'ig-es-workflow-email-content-' . $tracking_campaign_id );
89
  $email_content->set_name( 'ig-es-email-content' );
90
+ $email_content->set_title( __( 'Email content', 'email-subscribers' ) );
91
  $email_content->set_required();
92
 
93
  $this->add_field( $email_content );
110
  * @return mixed|null
111
  */
112
  public function load_preview() {
113
+ $email_content = $this->get_option( 'ig-es-email-content', true, true );
114
+ $email_template = $this->get_option( 'ig-es-email-template', false );
115
+ $email_heading = $this->get_option( 'ig-es-email-heading', false );
116
+ $email_content = wpautop( $email_content );
117
+
118
+ $email_content = $this->add_template_styling( $email_content, $email_heading, $email_template );
119
  $current_user = wp_get_current_user();
120
 
121
  return ES_Common::replace_keywords_with_fallback( $email_content, array(
134
  public function run() {
135
 
136
  $recipients = $this->get_option( 'ig-es-send-to', true );
 
137
  $subject = $this->get_option( 'ig-es-email-subject', true );
138
+ $email_template = $this->get_option( 'ig-es-email-template', false );
139
+ $email_heading = $this->get_option( 'ig-es-email-heading', false );
140
+ $email_content = $this->get_option( 'ig-es-email-content', true, true );
141
  $tracking_enabled = $this->get_option( 'ig-es-email-tracking-enabled', false );
142
  $tracking_campaign_id = $this->get_option( 'ig-es-tracking-campaign-id', false );
143
 
199
 
200
  }
201
 
202
+ $email_content = $this->add_template_styling( $email_content, $email_heading, $email_template );
203
 
204
  $es_mailer = ES()->mailer;
205
 
217
 
218
  $es_mailer->send( $subject, $email_content, $recipients, $data );
219
  }
220
+ }
221
+
222
+ /**
223
+ * Add template styling to email content.
224
+ */
225
+ public function add_template_styling( $email_content, $email_heading = '', $email_template = 'none' ) {
226
+
227
+ if ( 'woocommerce' === $email_template ) {
228
+
229
+ // Make sure WC function exisists before calling it.
230
+ if ( function_exists( 'WC' ) ) {
231
+ $email_content = WC()->mailer()->wrap_message( $email_heading, $email_content );
232
+ $wc_email = new WC_Email();
233
+ $email_content = $wc_email->style_inline( $email_content );
234
+ }
235
+ }
236
+
237
+ return $email_content;
238
+ }
239
  }
240
  }
lite/includes/workflows/admin/class-es-workflow-admin-edit.php CHANGED
@@ -81,11 +81,15 @@ class ES_Workflow_Admin_Edit {
81
  $subject = ig_es_get_request_data( 'subject', '' );
82
  $content = ig_es_get_request_data( 'content', '', false );
83
  $trigger = ig_es_get_request_data( 'trigger', '' );
 
 
84
 
85
  $content = ES_Workflow_Action_Preview::get_preview( $trigger, array(
86
  'action_name' => 'ig_es_send_email',
87
  'ig-es-send-to' => '',
88
  'ig-es-email-subject' => $subject,
 
 
89
  'ig-es-email-content' => $content,
90
  'ig-es-tracking-campaign-id' => ''
91
  ) );
@@ -110,11 +114,15 @@ class ES_Workflow_Admin_Edit {
110
  $trigger = ig_es_get_request_data( 'trigger' );
111
  $content = ig_es_get_request_data( 'content', '', false );
112
  $subject = ig_es_get_request_data( 'subject', '' );
 
 
113
 
114
  $response['preview_html'] = ES_Workflow_Action_Preview::get_preview( $trigger, array(
115
  'action_name' => 'ig_es_send_email',
116
  'ig-es-send-to' => '',
117
  'ig-es-email-subject' => $subject,
 
 
118
  'ig-es-email-content' => $content,
119
  'ig-es-tracking-campaign-id' => ''
120
  ) );
81
  $subject = ig_es_get_request_data( 'subject', '' );
82
  $content = ig_es_get_request_data( 'content', '', false );
83
  $trigger = ig_es_get_request_data( 'trigger', '' );
84
+ $template = ig_es_get_request_data( 'template', '' );
85
+ $heading = ig_es_get_request_data( 'heading', '' );
86
 
87
  $content = ES_Workflow_Action_Preview::get_preview( $trigger, array(
88
  'action_name' => 'ig_es_send_email',
89
  'ig-es-send-to' => '',
90
  'ig-es-email-subject' => $subject,
91
+ 'ig-es-email-template' => $template,
92
+ 'ig-es-email-heading' => $heading,
93
  'ig-es-email-content' => $content,
94
  'ig-es-tracking-campaign-id' => ''
95
  ) );
114
  $trigger = ig_es_get_request_data( 'trigger' );
115
  $content = ig_es_get_request_data( 'content', '', false );
116
  $subject = ig_es_get_request_data( 'subject', '' );
117
+ $template = ig_es_get_request_data( 'template', '' );
118
+ $heading = ig_es_get_request_data( 'heading', '' );
119
 
120
  $response['preview_html'] = ES_Workflow_Action_Preview::get_preview( $trigger, array(
121
  'action_name' => 'ig_es_send_email',
122
  'ig-es-send-to' => '',
123
  'ig-es-email-subject' => $subject,
124
+ 'ig-es-email-template' => $template,
125
+ 'ig-es-email-heading' => $heading,
126
  'ig-es-email-content' => $content,
127
  'ig-es-tracking-campaign-id' => ''
128
  ) );
lite/includes/workflows/admin/views/action-fields.php CHANGED
@@ -49,7 +49,7 @@ foreach ( $fields as $field ) :
49
  }
50
  ?>
51
 
52
- <tr class="ig-es-table__row"
53
  data-name="<?php echo esc_attr( $field->get_name() ); ?>"
54
  data-type="<?php echo esc_attr( $field->get_type() ); ?>"
55
  data-required="<?php echo (int) $field->get_required(); ?> ">
49
  }
50
  ?>
51
 
52
+ <tr class="ig-es-table__row <?php echo esc_attr( $field->get_container_classes() ); ?>"
53
  data-name="<?php echo esc_attr( $field->get_name() ); ?>"
54
  data-type="<?php echo esc_attr( $field->get_type() ); ?>"
55
  data-required="<?php echo (int) $field->get_required(); ?> ">
lite/includes/workflows/fields/class-es-field.php CHANGED
@@ -88,6 +88,15 @@ abstract class ES_Field {
88
  */
89
  protected $classes = array();
90
 
 
 
 
 
 
 
 
 
 
91
  /**
92
  * Extra attributes that will appended to the HTML field element.
93
  *
@@ -303,6 +312,37 @@ abstract class ES_Field {
303
  return $this->classes;
304
  }
305
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
306
 
307
  /**
308
  * Get extra attributes for field.
88
  */
89
  protected $classes = array();
90
 
91
+ /**
92
+ * Container element classes
93
+ *
94
+ * @since 5.3.9
95
+ *
96
+ * @var array
97
+ */
98
+ protected $container_classes = array();
99
+
100
  /**
101
  * Extra attributes that will appended to the HTML field element.
102
  *
312
  return $this->classes;
313
  }
314
 
315
+ /**
316
+ *
317
+ * Add container field classes
318
+ *
319
+ * @since 5.3.9
320
+ *
321
+ * @param string $container_classes container field classes.
322
+ *
323
+ * @return $this
324
+ */
325
+ public function add_container_classes( $container_classes ) {
326
+ $this->container_classes = array_merge( $this->container_classes, explode( ' ', $container_classes ) );
327
+ return $this;
328
+ }
329
+
330
+
331
+ /**
332
+ * Get container field classes
333
+ *
334
+ * @since 5.3.9
335
+ *
336
+ * @param bool $implode Should implode.
337
+ *
338
+ * @return array|string
339
+ */
340
+ public function get_container_classes( $implode = true ) {
341
+ if ( $implode ) {
342
+ return implode( ' ', $this->container_classes );
343
+ }
344
+ return $this->container_classes;
345
+ }
346
 
347
  /**
348
  * Get extra attributes for field.
lite/language.php CHANGED
@@ -984,14 +984,18 @@ __( 'Manage Custom Fields', 'email-subscribers' ),
984
  __( 'Want to add more form fields?', 'email-subscribers' ),
985
  __( ' The test email did not reach our test server. Did you get any test emails on your email? This could be a temporary problem, but it can also mean that emails are getting stuck on your server, or getting rejected by recipients.', 'email-subscribers' ),
986
  __( 'Other', 'email-subscribers' ),
987
- __( 'Send To', 'email-subscribers' ),
988
  __( 'Enter emails here or use variable such as {{EMAIL}}. Multiple emails can be separated by commas.', 'email-subscribers' ),
989
  __( 'E.g. {{EMAIL}}, admin@example.com', 'email-subscribers' ),
990
  __( 'Email subject', 'email-subscribers' ),
991
  __( 'Select List', 'email-subscribers' ),
992
  __( 'Delete Contact', 'email-subscribers' ),
993
  __( 'Send Email', 'email-subscribers' ),
994
- __( 'Email Content', 'email-subscribers' ),
 
 
 
 
995
  __( 'Track opens and clicks', 'email-subscribers' ),
996
  __( 'Update Contact', 'email-subscribers' ),
997
  __( 'Variable not found.', 'email-subscribers' ),
984
  __( 'Want to add more form fields?', 'email-subscribers' ),
985
  __( ' The test email did not reach our test server. Did you get any test emails on your email? This could be a temporary problem, but it can also mean that emails are getting stuck on your server, or getting rejected by recipients.', 'email-subscribers' ),
986
  __( 'Other', 'email-subscribers' ),
987
+ __( 'Send to', 'email-subscribers' ),
988
  __( 'Enter emails here or use variable such as {{EMAIL}}. Multiple emails can be separated by commas.', 'email-subscribers' ),
989
  __( 'E.g. {{EMAIL}}, admin@example.com', 'email-subscribers' ),
990
  __( 'Email subject', 'email-subscribers' ),
991
  __( 'Select List', 'email-subscribers' ),
992
  __( 'Delete Contact', 'email-subscribers' ),
993
  __( 'Send Email', 'email-subscribers' ),
994
+ __( 'Email styling', 'email-subscribers' ),
995
+ __( 'Select which style to use when formatting the email.', 'email-subscribers' ),
996
+ __( 'Email heading', 'email-subscribers' ),
997
+ __( 'Enter text to be shown in email header area.', 'email-subscribers' ),
998
+ __( 'Email content', 'email-subscribers' ),
999
  __( 'Track opens and clicks', 'email-subscribers' ),
1000
  __( 'Update Contact', 'email-subscribers' ),
1001
  __( 'Variable not found.', 'email-subscribers' ),
lite/languages/email-subscribers.pot CHANGED
@@ -2,14 +2,14 @@
2
  # This file is distributed under the same license as the Email Subscribers & Newsletters plugin.
3
  msgid ""
4
  msgstr ""
5
- "Project-Id-Version: Email Subscribers & Newsletters 5.3.8\n"
6
  "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/email-subscribers\n"
7
  "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
8
  "Language-Team: LANGUAGE <LL@li.org>\n"
9
  "MIME-Version: 1.0\n"
10
  "Content-Type: text/plain; charset=UTF-8\n"
11
  "Content-Transfer-Encoding: 8bit\n"
12
- "POT-Creation-Date: 2022-03-24T04:57:00+01:00\n"
13
  "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
14
  "X-Generator: WP-CLI 2.4.0\n"
15
  "X-Domain: email-subscribers\n"
@@ -281,7 +281,7 @@ msgstr ""
281
 
282
  #: lite/admin/class-email-subscribers-admin.php:334
283
  #: lite/includes/pro-features.php:191
284
- #: lite/includes/workflows/admin/class-es-workflow-admin-edit.php:325
285
  #: lite/includes/workflows/class-es-workflows-table.php:53
286
  #: lite/includes/workflows/class-es-workflows-table.php:276
287
  #: lite/includes/workflows/class-es-workflows-table.php:291
@@ -451,7 +451,7 @@ msgstr ""
451
  #: lite/admin/class-es-campaign-admin.php:343
452
  #: lite/includes/classes/class-es-newsletters.php:296
453
  #: lite/includes/classes/class-es-post-notifications.php:546
454
- #: lite/includes/workflows/admin/class-es-workflow-admin-edit.php:385
455
  #: lite/includes/workflows/admin/views/meta-box-save.php:68
456
  msgid "Save"
457
  msgstr ""
@@ -2072,6 +2072,7 @@ msgid "All"
2072
  msgstr ""
2073
 
2074
  #: lite/includes/classes/class-es-campaigns-table.php:371
 
2075
  #: starter/starter-class-email-subscribers.php:391
2076
  msgid "None"
2077
  msgstr ""
@@ -3446,7 +3447,7 @@ msgid "Copy"
3446
  msgstr ""
3447
 
3448
  #: lite/includes/classes/class-es-tools.php:78
3449
- #: lite/includes/workflows/admin/class-es-workflow-admin-edit.php:96
3450
  msgid "Email has been sent. Please check your inbox"
3451
  msgstr ""
3452
 
@@ -4302,7 +4303,7 @@ msgid "Other"
4302
  msgstr ""
4303
 
4304
  #: lite/includes/workflows/actions/abstracts/class-ig-es-action-send-email-abstract.php:40
4305
- msgid "Send To"
4306
  msgstr ""
4307
 
4308
  #: lite/includes/workflows/actions/abstracts/class-ig-es-action-send-email-abstract.php:41
@@ -4331,11 +4332,27 @@ msgstr ""
4331
  msgid "Send Email"
4332
  msgstr ""
4333
 
 
 
 
 
4334
  #: lite/includes/workflows/actions/class-es-action-send-email.php:52
4335
- msgid "Email Content"
 
 
 
 
 
 
 
 
 
 
 
 
4336
  msgstr ""
4337
 
4338
- #: lite/includes/workflows/actions/class-es-action-send-email.php:59
4339
  msgid "Track opens and clicks"
4340
  msgstr ""
4341
 
@@ -4351,28 +4368,28 @@ msgstr ""
4351
  msgid "Workflow could not be created. Please try again."
4352
  msgstr ""
4353
 
4354
- #: lite/includes/workflows/admin/class-es-workflow-admin-edit.php:313
4355
  msgid " Add New Workflow"
4356
  msgstr ""
4357
 
4358
- #: lite/includes/workflows/admin/class-es-workflow-admin-edit.php:315
4359
  msgid " Edit Workflow"
4360
  msgstr ""
4361
 
4362
- #: lite/includes/workflows/admin/class-es-workflow-admin-edit.php:352
4363
  msgid "Add title"
4364
  msgstr ""
4365
 
4366
- #: lite/includes/workflows/admin/class-es-workflow-admin-edit.php:383
4367
  #: lite/includes/workflows/admin/views/meta-box-trigger.php:68
4368
  msgid "Trigger"
4369
  msgstr ""
4370
 
4371
- #: lite/includes/workflows/admin/class-es-workflow-admin-edit.php:384
4372
  msgid "Actions"
4373
  msgstr ""
4374
 
4375
- #: lite/includes/workflows/admin/class-es-workflow-admin-edit.php:386
4376
  msgid "Placeholders"
4377
  msgstr ""
4378
 
@@ -6595,7 +6612,7 @@ msgstr ""
6595
  msgid "Clear all filters"
6596
  msgstr ""
6597
 
6598
- #: lite/admin/js/src/views/GalleryItemsPage.js:107
6599
  msgid "Create from scratch"
6600
  msgstr ""
6601
 
2
  # This file is distributed under the same license as the Email Subscribers & Newsletters plugin.
3
  msgid ""
4
  msgstr ""
5
+ "Project-Id-Version: Email Subscribers & Newsletters 5.3.9\n"
6
  "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/email-subscribers\n"
7
  "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
8
  "Language-Team: LANGUAGE <LL@li.org>\n"
9
  "MIME-Version: 1.0\n"
10
  "Content-Type: text/plain; charset=UTF-8\n"
11
  "Content-Transfer-Encoding: 8bit\n"
12
+ "POT-Creation-Date: 2022-03-29T16:36:55+02:00\n"
13
  "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
14
  "X-Generator: WP-CLI 2.4.0\n"
15
  "X-Domain: email-subscribers\n"
281
 
282
  #: lite/admin/class-email-subscribers-admin.php:334
283
  #: lite/includes/pro-features.php:191
284
+ #: lite/includes/workflows/admin/class-es-workflow-admin-edit.php:333
285
  #: lite/includes/workflows/class-es-workflows-table.php:53
286
  #: lite/includes/workflows/class-es-workflows-table.php:276
287
  #: lite/includes/workflows/class-es-workflows-table.php:291
451
  #: lite/admin/class-es-campaign-admin.php:343
452
  #: lite/includes/classes/class-es-newsletters.php:296
453
  #: lite/includes/classes/class-es-post-notifications.php:546
454
+ #: lite/includes/workflows/admin/class-es-workflow-admin-edit.php:393
455
  #: lite/includes/workflows/admin/views/meta-box-save.php:68
456
  msgid "Save"
457
  msgstr ""
2072
  msgstr ""
2073
 
2074
  #: lite/includes/classes/class-es-campaigns-table.php:371
2075
+ #: lite/includes/workflows/actions/class-es-action-send-email.php:55
2076
  #: starter/starter-class-email-subscribers.php:391
2077
  msgid "None"
2078
  msgstr ""
3447
  msgstr ""
3448
 
3449
  #: lite/includes/classes/class-es-tools.php:78
3450
+ #: lite/includes/workflows/admin/class-es-workflow-admin-edit.php:100
3451
  msgid "Email has been sent. Please check your inbox"
3452
  msgstr ""
3453
 
4303
  msgstr ""
4304
 
4305
  #: lite/includes/workflows/actions/abstracts/class-ig-es-action-send-email-abstract.php:40
4306
+ msgid "Send to"
4307
  msgstr ""
4308
 
4309
  #: lite/includes/workflows/actions/abstracts/class-ig-es-action-send-email-abstract.php:41
4332
  msgid "Send Email"
4333
  msgstr ""
4334
 
4335
+ #: lite/includes/workflows/actions/class-es-action-send-email.php:51
4336
+ msgid "Email styling"
4337
+ msgstr ""
4338
+
4339
  #: lite/includes/workflows/actions/class-es-action-send-email.php:52
4340
+ msgid "Select which style to use when formatting the email."
4341
+ msgstr ""
4342
+
4343
+ #: lite/includes/workflows/actions/class-es-action-send-email.php:66
4344
+ msgid "Email heading"
4345
+ msgstr ""
4346
+
4347
+ #: lite/includes/workflows/actions/class-es-action-send-email.php:67
4348
+ msgid "Enter text to be shown in email header area."
4349
+ msgstr ""
4350
+
4351
+ #: lite/includes/workflows/actions/class-es-action-send-email.php:90
4352
+ msgid "Email content"
4353
  msgstr ""
4354
 
4355
+ #: lite/includes/workflows/actions/class-es-action-send-email.php:97
4356
  msgid "Track opens and clicks"
4357
  msgstr ""
4358
 
4368
  msgid "Workflow could not be created. Please try again."
4369
  msgstr ""
4370
 
4371
+ #: lite/includes/workflows/admin/class-es-workflow-admin-edit.php:321
4372
  msgid " Add New Workflow"
4373
  msgstr ""
4374
 
4375
+ #: lite/includes/workflows/admin/class-es-workflow-admin-edit.php:323
4376
  msgid " Edit Workflow"
4377
  msgstr ""
4378
 
4379
+ #: lite/includes/workflows/admin/class-es-workflow-admin-edit.php:360
4380
  msgid "Add title"
4381
  msgstr ""
4382
 
4383
+ #: lite/includes/workflows/admin/class-es-workflow-admin-edit.php:391
4384
  #: lite/includes/workflows/admin/views/meta-box-trigger.php:68
4385
  msgid "Trigger"
4386
  msgstr ""
4387
 
4388
+ #: lite/includes/workflows/admin/class-es-workflow-admin-edit.php:392
4389
  msgid "Actions"
4390
  msgstr ""
4391
 
4392
+ #: lite/includes/workflows/admin/class-es-workflow-admin-edit.php:394
4393
  msgid "Placeholders"
4394
  msgstr ""
4395
 
6612
  msgid "Clear all filters"
6613
  msgstr ""
6614
 
6615
+ #: lite/admin/js/src/views/GalleryItemsPage.js:106
6616
  msgid "Create from scratch"
6617
  msgstr ""
6618
 
readme.txt CHANGED
@@ -6,7 +6,7 @@ Tags: email marketing, subscription, autoresponder, post notification, welcome e
6
  Requires at least: 3.9
7
  Tested up to: 5.9.1
8
  Requires PHP: 5.6
9
- Stable tag: 5.3.8
10
  License: GPLv3
11
  License URI: http://www.gnu.org/licenses
12
 
@@ -310,15 +310,18 @@ Refer [here](https://www.icegram.com/documentation/es-faq/).
310
 
311
  == Upgrade Notice ==
312
 
313
- = 5.3.8 =
314
 
315
- * New: Added predefined workflows
316
- * New: Email template gallery improvements
317
- * Fix: Sequence were not getting sent on time in some cases
318
- * Fix: Styling was not properly getting applied to the post excerpt in campaigns
319
 
320
  == Changelog ==
321
 
 
 
 
 
 
322
  **5.3.8 (24.03.2022)**
323
 
324
  * New: Added predefined workflows
6
  Requires at least: 3.9
7
  Tested up to: 5.9.1
8
  Requires PHP: 5.6
9
+ Stable tag: 5.3.9
10
  License: GPLv3
11
  License URI: http://www.gnu.org/licenses
12
 
310
 
311
  == Upgrade Notice ==
312
 
313
+ = 5.3.9 =
314
 
315
+ * New: Added WooCommerce email template support in workflows
316
+ * Fix: Template gallery not working with WordPress v4.9 and lower
 
 
317
 
318
  == Changelog ==
319
 
320
+ **5.3.9 (30.03.2022)**
321
+
322
+ * New: Added WooCommerce email template support in workflows
323
+ * Fix: Template gallery not working with WordPress v4.9 and lower
324
+
325
  **5.3.8 (24.03.2022)**
326
 
327
  * New: Added predefined workflows