Email Subscribers & Newsletters - Version 3.3

Version Description

(13.06.2017) =

  • New: Merged Roles and Cron menu into Settings
  • New: Tab structure for Settings
  • Fix: Javacript error on saving composed email template
  • Update: Moved settings data from custom table to WordPress options table
  • Update: Do not allow to assign roles for Help & Info and Settings menu
  • Update: Text correction at few places
  • Update: POT file
Download this release

Release Info

Developer storeapps
Plugin Icon 128x128 Email Subscribers & Newsletters
Version 3.3
Comparing to
See all releases

Code changes from version 3.2.11 to 3.3

changelog.txt CHANGED
@@ -4,6 +4,16 @@ Author : Icegram
4
  Author URI : http://www.icegram.com/
5
  License : GPLv3
6
 
 
 
 
 
 
 
 
 
 
 
7
  ********************************Version 3.2.11************************************************************
8
 
9
  * Fix: Export filters was not generating correct data
@@ -272,8 +282,8 @@ License : GPLv3
272
 
273
  ********************************Version 2.7************************************************************
274
 
275
- * Up to plugin version 2.6 only administrator level users can manage this plugin in dashboard. From this version I have introduced new feature called Roles.
276
- * The user role can be selected using this Roles Menu. For example, If you want to give Send Email feature to Editor. Go to plugin Roles menu
277
  using administrator login and select Editor role to Send Email Menu, So that your Editor level user can access plugin Send Email menu to publish newsletter emails.
278
 
279
  ********************************Version 2.6************************************************************
@@ -315,7 +325,7 @@ using administrator login and select Editor role to Send Email Menu, So that you
315
 
316
  ********************************Version 1.9************************************************************
317
 
318
- * New option added in admin setting page to update Sent Mail Report Subject/Content. For each newsletter mail and notification mail,
319
  plugin will send one report mail to admin with default content. Now with this option, admin can update that default mail content.
320
 
321
  ********************************Version 1.8************************************************************
@@ -362,7 +372,7 @@ Call to undefined method es_cls_common::es_sent_report_html() - Fixed
362
 
363
  First version.
364
 
365
- Email subscribers plugin has options to send newsletters to subscribers. It has a separate page with HTML editor to create a HTML newsletter.
366
- Also have options to send notification email to subscribers when new posts are published to your blog. Separate page available to include and
367
- exclude categories to send notifications. Using plugin Import and Export options admins can easily import registered users and commenters to
368
  subscriptions list.
4
  Author URI : http://www.icegram.com/
5
  License : GPLv3
6
 
7
+ ********************************Version 3.3************************************************************
8
+
9
+ * New: Merged Roles and Cron menu into Settings
10
+ * New: Tab structure for Settings
11
+ * Fix: Javacript error on saving composed email template
12
+ * Update: Moved settings data from custom table to WordPress options table
13
+ * Update: Do not allow to assign roles for Help & Info and Settings menu
14
+ * Update: Text correction at few places
15
+ * Update: POT file
16
+
17
  ********************************Version 3.2.11************************************************************
18
 
19
  * Fix: Export filters was not generating correct data
282
 
283
  ********************************Version 2.7************************************************************
284
 
285
+ * Up to plugin version 2.6 only administrator level users can manage this plugin in dashboard. From this version I have introduced new feature called Roles.
286
+ * The user role can be selected using this Roles Menu. For example, If you want to give Send Email feature to Editor. Go to plugin Roles menu
287
  using administrator login and select Editor role to Send Email Menu, So that your Editor level user can access plugin Send Email menu to publish newsletter emails.
288
 
289
  ********************************Version 2.6************************************************************
325
 
326
  ********************************Version 1.9************************************************************
327
 
328
+ * New option added in admin setting page to update Sent Mail Report Subject/Content. For each newsletter mail and notification mail,
329
  plugin will send one report mail to admin with default content. Now with this option, admin can update that default mail content.
330
 
331
  ********************************Version 1.8************************************************************
372
 
373
  First version.
374
 
375
+ Email subscribers plugin has options to send newsletters to subscribers. It has a separate page with HTML editor to create a HTML newsletter.
376
+ Also have options to send notification email to subscribers when new posts are published to your blog. Separate page available to include and
377
+ exclude categories to send notifications. Using plugin Import and Export options admins can easily import registered users and commenters to
378
  subscriptions list.
classes/es-directly.php CHANGED
@@ -2,7 +2,7 @@
2
 
3
  // Exit if accessed directly
4
  if ( ! defined( 'ABSPATH' ) ) {
5
- exit;
6
  }
7
 
8
  function es_plugin_query_vars($vars) {
2
 
3
  // Exit if accessed directly
4
  if ( ! defined( 'ABSPATH' ) ) {
5
+ exit;
6
  }
7
 
8
  function es_plugin_query_vars($vars) {
classes/es-intermediate.php CHANGED
@@ -2,7 +2,7 @@
2
 
3
  // Exit if accessed directly
4
  if ( ! defined( 'ABSPATH' ) ) {
5
- exit;
6
  }
7
 
8
  class es_cls_intermediate {
@@ -74,9 +74,6 @@ class es_cls_intermediate {
74
  global $wpdb;
75
  $current_page = isset($_GET['ac']) ? $_GET['ac'] : '';
76
  switch($current_page) {
77
- case 'add':
78
- require_once(ES_DIR.'settings'.DIRECTORY_SEPARATOR.'settings-add.php');
79
- break;
80
  case 'sync':
81
  require_once(ES_DIR.'settings'.DIRECTORY_SEPARATOR.'setting-sync.php');
82
  break;
@@ -102,38 +99,6 @@ class es_cls_intermediate {
102
  }
103
  }
104
 
105
- public static function es_roles() {
106
- global $wpdb;
107
- $current_page = isset($_GET['ac']) ? $_GET['ac'] : '';
108
- switch($current_page) {
109
- case 'add':
110
- require_once(ES_DIR.'roles'.DIRECTORY_SEPARATOR.'roles-add.php');
111
- break;
112
- case 'edit':
113
- require_once(ES_DIR.'roles'.DIRECTORY_SEPARATOR.'roles-edit.php');
114
- break;
115
- default:
116
- require_once(ES_DIR.'roles'.DIRECTORY_SEPARATOR.'roles-add.php');
117
- break;
118
- }
119
- }
120
-
121
- public static function es_cron() {
122
- global $wpdb;
123
- $current_page = isset($_GET['ac']) ? $_GET['ac'] : '';
124
- switch($current_page) {
125
- case 'add':
126
- require_once(ES_DIR.'cron'.DIRECTORY_SEPARATOR.'cron-add.php');
127
- break;
128
- case 'edit':
129
- require_once(ES_DIR.'cron'.DIRECTORY_SEPARATOR.'cron-edit.php');
130
- break;
131
- default:
132
- require_once(ES_DIR.'cron'.DIRECTORY_SEPARATOR.'cron-add.php');
133
- break;
134
- }
135
- }
136
-
137
  public static function es_information() {
138
  require_once(ES_DIR.'help'.DIRECTORY_SEPARATOR.'help.php');
139
  }
2
 
3
  // Exit if accessed directly
4
  if ( ! defined( 'ABSPATH' ) ) {
5
+ exit;
6
  }
7
 
8
  class es_cls_intermediate {
74
  global $wpdb;
75
  $current_page = isset($_GET['ac']) ? $_GET['ac'] : '';
76
  switch($current_page) {
 
 
 
77
  case 'sync':
78
  require_once(ES_DIR.'settings'.DIRECTORY_SEPARATOR.'setting-sync.php');
79
  break;
99
  }
100
  }
101
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
102
  public static function es_information() {
103
  require_once(ES_DIR.'help'.DIRECTORY_SEPARATOR.'help.php');
104
  }
classes/es-register.php CHANGED
@@ -2,7 +2,7 @@
2
 
3
  // Exit if accessed directly
4
  if ( ! defined( 'ABSPATH' ) ) {
5
- exit;
6
  }
7
 
8
  class es_cls_registerhook {
@@ -12,9 +12,9 @@ class es_cls_registerhook {
12
  add_option('email-subscribers', "2.9");
13
 
14
  // Plugin tables
15
- $array_tables_to_plugin = array('es_emaillist','es_sentdetails','es_deliverreport','es_pluginconfig');
16
  $errors = array();
17
-
18
  // loading the sql file, load it and separate the queries
19
  $sql_file = ES_DIR.'sql'.DS.'es-createdb.sql';
20
  $prefix = $wpdb->prefix;
@@ -70,7 +70,7 @@ class es_cls_registerhook {
70
  if ( ! get_transient( '_es_activation_redirect' ) ) {
71
  return;
72
  }
73
-
74
  // Delete the redirect transient
75
  delete_transient( '_es_activation_redirect' );
76
 
@@ -94,10 +94,10 @@ class es_cls_registerhook {
94
  $query=str_replace('CREATE TABLE IF NOT EXISTS ','CREATE TABLE '.$prefix, $query);
95
  $query=str_replace('ENGINE=MyISAM /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci*/','', $query);
96
  $queries=explode('-- SQLQUERY ---', $query);
97
-
98
  // includes db upgrade file
99
  require_once( ABSPATH . 'wp-admin/includes/upgrade.php' );
100
-
101
  // run the queries one by one
102
  foreach($queries as $sSql) {
103
  dbDelta( $sSql );
@@ -106,13 +106,13 @@ class es_cls_registerhook {
106
  $guid = es_cls_common::es_generate_guid(60);
107
  $home_url = home_url('/');
108
  $cronurl = $home_url . "?es=cron&guid=". $guid;
109
- add_option('es_c_cronurl', $cronurl);
110
- add_option('es_cron_mailcount', "50");
111
- add_option('es_cron_adminmail', "Hi Admin, \r\n\r\nCron URL has been triggered successfully on ###DATE### for the email ###SUBJECT###. And it sent email to ###COUNT### recipient. \r\n\r\nThank You");
112
  update_option('email-subscribers', "2.9" );
113
  }
114
  }
115
-
116
  public static function es_deactivation() {
117
  // do not generate any output here
118
  }
@@ -122,54 +122,44 @@ class es_cls_registerhook {
122
  }
123
 
124
  public static function es_adminmenu() {
125
- $es_c_rolesandcapabilities = get_option('es_c_rolesandcapabilities', 'norecord');
126
  if($es_c_rolesandcapabilities == 'norecord' || $es_c_rolesandcapabilities == "") {
127
  $es_roles_subscriber = "manage_options";
128
  $es_roles_mail = "manage_options";
129
  $es_roles_notification = "manage_options";
130
  $es_roles_sendmail = "manage_options";
131
- $es_roles_setting = "manage_options";
132
  $es_roles_sentmail = "manage_options";
133
- $es_roles_help = "manage_options";
134
  } else {
135
  $es_roles_subscriber = $es_c_rolesandcapabilities['es_roles_subscriber'];
136
  $es_roles_mail = $es_c_rolesandcapabilities['es_roles_mail'];
137
  $es_roles_notification = $es_c_rolesandcapabilities['es_roles_notification'];
138
  $es_roles_sendmail = $es_c_rolesandcapabilities['es_roles_sendmail'];
139
- $es_roles_setting = $es_c_rolesandcapabilities['es_roles_setting'];
140
  $es_roles_sentmail = $es_c_rolesandcapabilities['es_roles_sentmail'];
141
- $es_roles_help = $es_c_rolesandcapabilities['es_roles_help'];
142
  }
143
 
144
- add_menu_page( __( 'Email Subscribers', 'email-subscribers' ),
145
  __( 'Email Subscribers', 'email-subscribers' ), 'admin_dashboard', 'email-subscribers', array( 'es_cls_registerhook', 'es_admin_option'), ES_URL.'images/mail.png', 51 );
146
 
147
- add_submenu_page('email-subscribers', __( 'Subscribers', ES_TDOMAIN ),
148
  __( 'Subscribers', ES_TDOMAIN ), $es_roles_subscriber, 'es-view-subscribers', array( 'es_cls_intermediate', 'es_subscribers' ));
149
 
150
- add_submenu_page('email-subscribers', __( 'Compose', ES_TDOMAIN ),
151
  __( 'Compose', ES_TDOMAIN ), $es_roles_mail, 'es-compose', array( 'es_cls_intermediate', 'es_compose' ));
152
 
153
- add_submenu_page('email-subscribers', __( 'Post Notifications', ES_TDOMAIN ),
154
  __( 'Post Notifications', ES_TDOMAIN ), $es_roles_notification, 'es-notification', array( 'es_cls_intermediate', 'es_notification' ));
155
 
156
- add_submenu_page('email-subscribers', __( 'Newsletters', ES_TDOMAIN ),
157
  __( 'Newsletters', ES_TDOMAIN ), $es_roles_sendmail, 'es-sendemail', array( 'es_cls_intermediate', 'es_sendemail' ));
158
 
159
- add_submenu_page('email-subscribers', __( 'Cron Settings', ES_TDOMAIN ),
160
- __( 'Cron Settings', ES_TDOMAIN ), $es_roles_sendmail, 'es-cron', array( 'es_cls_intermediate', 'es_cron' ));
161
-
162
- add_submenu_page('email-subscribers', __( 'Email Settings', ES_TDOMAIN ),
163
- __( 'Email Settings', ES_TDOMAIN ), $es_roles_setting, 'es-settings', array( 'es_cls_intermediate', 'es_settings' ));
164
 
165
- add_submenu_page('email-subscribers', __( 'User Roles', ES_TDOMAIN ),
166
- __( 'User Roles', ES_TDOMAIN ), 'administrator', 'es-roles', array( 'es_cls_intermediate', 'es_roles' ));
167
-
168
- add_submenu_page('email-subscribers', __( 'Reports', ES_TDOMAIN ),
169
  __( 'Reports', ES_TDOMAIN ), $es_roles_sentmail, 'es-sentmail', array( 'es_cls_intermediate', 'es_sentmail' ));
170
 
171
- add_submenu_page('email-subscribers', __( 'Help & Info', ES_TDOMAIN ),
172
- __( '<span style="color:#f18500;font-weight:bolder;">Help & Info', ES_TDOMAIN ), $es_roles_help, 'es-general-information', array( 'es_cls_intermediate', 'es_information' ));
173
  }
174
 
175
  public static function es_load_scripts() {
@@ -199,8 +189,7 @@ class es_cls_registerhook {
199
  wp_register_script( 'es-compose', ES_URL . 'compose/compose.js', '', '', true );
200
  wp_enqueue_script( 'es-compose' );
201
  $es_select_params = array(
202
- 'es_configuration_name' => _x( 'Please enter name for configuration.', 'compose-enhanced-select', ES_TDOMAIN ),
203
- 'es_configuration_template' => _x( 'Please select template for this configuration.', 'compose-enhanced-select', ES_TDOMAIN ),
204
  'es_compose_delete_record' => _x( 'Do you want to delete this record?', 'compose-enhanced-select', ES_TDOMAIN )
205
  );
206
  wp_localize_script( 'es-compose', 'es_compose_notices', $es_select_params );
@@ -235,14 +224,14 @@ class es_cls_registerhook {
235
  );
236
  wp_localize_script( 'es-sentmail', 'es_sentmail_notices', $es_select_params );
237
  break;
238
- case 'es-cron':
239
- wp_register_script( 'cron', ES_URL . 'cron/cron.js', '', '', true );
240
- wp_enqueue_script( 'cron' );
241
  $es_select_params = array(
242
  'es_cron_number' => _x( 'Please select enter number of mails you want to send per hour/trigger.', 'cron-enhanced-select', ES_TDOMAIN ),
243
  'es_cron_input_type' => _x( 'Please enter the mail count, only number.', 'cron-enhanced-select', ES_TDOMAIN )
244
  );
245
- wp_localize_script( 'cron', 'es_cron_notices', $es_select_params );
246
  break;
247
  }
248
  }
@@ -324,12 +313,12 @@ class es_cls_registerhook {
324
  if ( wp_remote_retrieve_response_code( $response ) == 200 ) {
325
  $data = $response['body'];
326
  if ( $data != 'error' ) {
327
-
328
  $message_start = substr( $data, strpos( $data,'<body>' ) + 6 );
329
  $remove = substr( $message_start, strpos( $message_start,'</body>' ) );
330
  $message = trim( str_replace( $remove, '', $message_start ) );
331
  echo ( $message );
332
- exit();
333
  }
334
  }
335
  exit();
@@ -350,28 +339,32 @@ class es_cls_registerhook {
350
  es_cls_registerhook::es_upgrade_database_for_3_2_7();
351
  }
352
 
 
 
 
 
353
  }
354
 
355
  /**
356
- * To update sync email option to remove Commented user & it's group - es_c_emailsubscribers
357
  * ES version 3.2 onwards
358
  */
359
  public static function es_upgrade_database_for_3_2() {
360
 
361
- $sync_subscribers = get_option( 'es_c_emailsubscribers' );
362
 
363
  $es_unserialized_data = maybe_unserialize($sync_subscribers);
364
  unset($es_unserialized_data['es_commented']);
365
  unset($es_unserialized_data['es_commented_group']);
366
 
367
  $es_serialized_data = serialize($es_unserialized_data);
368
- update_option( 'es_c_emailsubscribers', $es_serialized_data );
369
 
370
  update_option( 'current_sa_email_subscribers_db_version', '3.2' );
371
  }
372
 
373
  /**
374
- * To rename a few terms in compose & reports menu
375
  * ES version 3.2.7 onwards
376
  */
377
  public static function es_upgrade_database_for_3_2_7() {
@@ -379,41 +372,125 @@ class es_cls_registerhook {
379
  global $wpdb;
380
 
381
  // Compose table
382
- $wpdb->query( "UPDATE {$wpdb->prefix}es_templatetable
383
- SET es_email_type =
384
- ( CASE
385
- WHEN es_email_type = 'Static Template' THEN 'Newsletter'
386
- WHEN es_email_type = 'Dynamic Template' THEN 'Post Notification'
387
- ELSE es_email_type
388
- END ) " );
389
 
390
  // Sent Details table
391
  $wpdb->query( "UPDATE {$wpdb->prefix}es_sentdetails
392
- SET es_sent_type =
 
 
 
 
 
 
393
  ( CASE
394
- WHEN es_sent_type = 'Instant Mail' THEN 'Immediately'
395
- WHEN es_sent_type = 'Cron Mail' THEN 'Cron'
396
- ELSE es_sent_type
397
- END ),
398
- es_sent_source =
399
- ( CASE
400
- WHEN es_sent_source = 'manual' THEN 'Newsletter'
401
  WHEN es_sent_source = 'notification' THEN 'Post Notification'
402
  ELSE es_sent_source
403
  END ) " );
404
 
405
  // Delivery Reports table
406
  $wpdb->query( "UPDATE {$wpdb->prefix}es_deliverreport
407
- SET es_deliver_senttype =
408
  ( CASE
409
- WHEN es_deliver_senttype = 'Instant Mail' THEN 'Immediately'
410
  WHEN es_deliver_senttype = 'Cron Mail' THEN 'Cron'
411
  ELSE es_deliver_senttype
412
- END ) " );
413
 
414
  update_option( 'current_sa_email_subscribers_db_version', '3.2.7' );
415
  }
416
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
417
  // Function to show any notices in admin section
418
  public static function es_add_admin_notices() {
419
  ?>
@@ -441,24 +518,160 @@ class es_cls_registerhook {
441
  color: #FFF;
442
  background-color: #363b3f;
443
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
444
  </style>
445
 
446
  <?php
447
  // To show IG recommendation
448
- $active_plugins = (array) get_option('active_plugins', array());
449
- if (is_multisite()) {
450
- $active_plugins = array_merge($active_plugins, get_site_option('active_sitewide_plugins', array()));
451
- }
452
 
453
- $es_ig_notice_email_subscribers = get_option( 'es_ig_notice_email_subscribers' );
454
 
455
- if ( in_array('icegram/icegram.php', $active_plugins) || array_key_exists('icegram/icegram.php', $active_plugins) || !empty($es_ig_notice_email_subscribers) ) {
456
- return;
457
- } else {
458
- $url = wp_nonce_url(self_admin_url('update.php?action=install-plugin&plugin=' . 'icegram'), 'install-plugin_' . 'icegram');
459
- $admin_notice_text_for_ig = __( '<b>FREE</b> plugin: Quickly grow your subscribers list with beautiful and high converting optins.', ES_TDOMAIN );
460
- echo '<div class="notice notice-warning"><p>'.$admin_notice_text_for_ig.'<a style="display:inline-block" class="es-admin-btn" href="'.$url.'">'.__( 'Try Icegram', ES_TDOMAIN ).'</a><a style="display:inline-block" class="es-admin-btn es-admin-btn-secondary" href="?dismiss_admin_notice=1&option_name=es_ig_notice">'.__( 'No, I don\'t need it', ES_TDOMAIN ).'</a></p></div>';
461
- }
462
 
463
  // To show RM recommendation
464
  // $active_plugins = (array) get_option('active_plugins', array());
@@ -475,6 +688,188 @@ class es_cls_registerhook {
475
  // $admin_notice_text_for_rm = __( 'Email Subscribers recommends free plugin <b>Rainmaker</b> to collect leads instantly', ES_TDOMAIN );
476
  // echo '<div class="notice notice-warning"><p>'.$admin_notice_text_for_rm.'<a style="display:inline-block" class="es-admin-btn" href="'.$url.'">'.__( 'Yes, I want this', ES_TDOMAIN ).'</a><a style="display:inline-block" class="es-admin-btn es-admin-btn-secondary" href="?dismiss_admin_notice=1&option_name=es_rm_notice">'.__( 'No, I don\'t want it', ES_TDOMAIN ).'</a></p></div>';
477
  // }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
478
  }
479
 
480
  // Function to dismiss any admin notice
@@ -495,7 +890,7 @@ class es_cls_registerhook {
495
 
496
  function es_sync_registereduser( $user_id ) {
497
 
498
- $es_c_emailsubscribers = get_option('es_c_emailsubscribers', 'norecord');
499
 
500
  if( $es_c_emailsubscribers == 'norecord' || $es_c_emailsubscribers == "" ) {
501
  // No action is required
@@ -528,7 +923,7 @@ function es_sync_registereduser( $user_id ) {
528
  }
529
  }
530
  }
531
-
532
  class es_widget_register extends WP_Widget {
533
  function __construct() {
534
  $widget_ops = array('classname' => 'widget_text elp-widget', 'description' => __( ES_PLUGIN_DISPLAY, ES_TDOMAIN ), ES_PLUGIN_NAME);
@@ -587,7 +982,7 @@ class es_widget_register extends WP_Widget {
587
  <?php
588
  echo $args['after_widget'];
589
  }
590
-
591
  function update( $new_instance, $old_instance ) {
592
  $instance = $old_instance;
593
  $instance['es_title'] = ( ! empty( $new_instance['es_title'] ) ) ? strip_tags( $new_instance['es_title'] ) : '';
@@ -596,7 +991,7 @@ class es_widget_register extends WP_Widget {
596
  $instance['es_group'] = ( ! empty( $new_instance['es_group'] ) ) ? strip_tags( $new_instance['es_group'] ) : '';
597
  return $instance;
598
  }
599
-
600
  function form( $instance ) {
601
  $defaults = array(
602
  'es_title' => '',
@@ -631,7 +1026,7 @@ class es_widget_register extends WP_Widget {
631
  </p>
632
  <?php
633
  }
634
-
635
  function es_selected($var) {
636
  if ($var==1 || $var==true) {
637
  echo 'selected="selected"';
2
 
3
  // Exit if accessed directly
4
  if ( ! defined( 'ABSPATH' ) ) {
5
+ exit;
6
  }
7
 
8
  class es_cls_registerhook {
12
  add_option('email-subscribers', "2.9");
13
 
14
  // Plugin tables
15
+ $array_tables_to_plugin = array('es_emaillist','es_sentdetails','es_deliverreport');
16
  $errors = array();
17
+
18
  // loading the sql file, load it and separate the queries
19
  $sql_file = ES_DIR.'sql'.DS.'es-createdb.sql';
20
  $prefix = $wpdb->prefix;
70
  if ( ! get_transient( '_es_activation_redirect' ) ) {
71
  return;
72
  }
73
+
74
  // Delete the redirect transient
75
  delete_transient( '_es_activation_redirect' );
76
 
94
  $query=str_replace('CREATE TABLE IF NOT EXISTS ','CREATE TABLE '.$prefix, $query);
95
  $query=str_replace('ENGINE=MyISAM /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci*/','', $query);
96
  $queries=explode('-- SQLQUERY ---', $query);
97
+
98
  // includes db upgrade file
99
  require_once( ABSPATH . 'wp-admin/includes/upgrade.php' );
100
+
101
  // run the queries one by one
102
  foreach($queries as $sSql) {
103
  dbDelta( $sSql );
106
  $guid = es_cls_common::es_generate_guid(60);
107
  $home_url = home_url('/');
108
  $cronurl = $home_url . "?es=cron&guid=". $guid;
109
+ add_option('ig_es_cronurl', $cronurl);
110
+ add_option('ig_es_cron_mailcount', "50");
111
+ add_option('ig_es_cron_adminmail', "Hi Admin, \r\n\r\nCron URL has been triggered successfully on ###DATE### for the email ###SUBJECT###. And it sent email to ###COUNT### recipient. \r\n\r\nThank You");
112
  update_option('email-subscribers', "2.9" );
113
  }
114
  }
115
+
116
  public static function es_deactivation() {
117
  // do not generate any output here
118
  }
122
  }
123
 
124
  public static function es_adminmenu() {
125
+ $es_c_rolesandcapabilities = get_option('ig_es_rolesandcapabilities', 'norecord');
126
  if($es_c_rolesandcapabilities == 'norecord' || $es_c_rolesandcapabilities == "") {
127
  $es_roles_subscriber = "manage_options";
128
  $es_roles_mail = "manage_options";
129
  $es_roles_notification = "manage_options";
130
  $es_roles_sendmail = "manage_options";
 
131
  $es_roles_sentmail = "manage_options";
 
132
  } else {
133
  $es_roles_subscriber = $es_c_rolesandcapabilities['es_roles_subscriber'];
134
  $es_roles_mail = $es_c_rolesandcapabilities['es_roles_mail'];
135
  $es_roles_notification = $es_c_rolesandcapabilities['es_roles_notification'];
136
  $es_roles_sendmail = $es_c_rolesandcapabilities['es_roles_sendmail'];
 
137
  $es_roles_sentmail = $es_c_rolesandcapabilities['es_roles_sentmail'];
 
138
  }
139
 
140
+ add_menu_page( __( 'Email Subscribers', 'email-subscribers' ),
141
  __( 'Email Subscribers', 'email-subscribers' ), 'admin_dashboard', 'email-subscribers', array( 'es_cls_registerhook', 'es_admin_option'), ES_URL.'images/mail.png', 51 );
142
 
143
+ add_submenu_page('email-subscribers', __( 'Subscribers', ES_TDOMAIN ),
144
  __( 'Subscribers', ES_TDOMAIN ), $es_roles_subscriber, 'es-view-subscribers', array( 'es_cls_intermediate', 'es_subscribers' ));
145
 
146
+ add_submenu_page('email-subscribers', __( 'Compose', ES_TDOMAIN ),
147
  __( 'Compose', ES_TDOMAIN ), $es_roles_mail, 'es-compose', array( 'es_cls_intermediate', 'es_compose' ));
148
 
149
+ add_submenu_page('email-subscribers', __( 'Post Notifications', ES_TDOMAIN ),
150
  __( 'Post Notifications', ES_TDOMAIN ), $es_roles_notification, 'es-notification', array( 'es_cls_intermediate', 'es_notification' ));
151
 
152
+ add_submenu_page('email-subscribers', __( 'Newsletters', ES_TDOMAIN ),
153
  __( 'Newsletters', ES_TDOMAIN ), $es_roles_sendmail, 'es-sendemail', array( 'es_cls_intermediate', 'es_sendemail' ));
154
 
155
+ add_submenu_page('email-subscribers', __( 'Settings', ES_TDOMAIN ),
156
+ __( 'Settings', ES_TDOMAIN ), 'manage_options', 'es-settings', array( 'es_cls_intermediate', 'es_settings' ));
 
 
 
157
 
158
+ add_submenu_page('email-subscribers', __( 'Reports', ES_TDOMAIN ),
 
 
 
159
  __( 'Reports', ES_TDOMAIN ), $es_roles_sentmail, 'es-sentmail', array( 'es_cls_intermediate', 'es_sentmail' ));
160
 
161
+ add_submenu_page('email-subscribers', __( 'Help & Info', ES_TDOMAIN ),
162
+ __( '<span style="color:#f18500;font-weight:bolder;">Help & Info', ES_TDOMAIN ), 'edit_posts', 'es-general-information', array( 'es_cls_intermediate', 'es_information' ));
163
  }
164
 
165
  public static function es_load_scripts() {
189
  wp_register_script( 'es-compose', ES_URL . 'compose/compose.js', '', '', true );
190
  wp_enqueue_script( 'es-compose' );
191
  $es_select_params = array(
192
+ 'es_configuration_name' => _x( 'Please enter the Email Subject.', 'compose-enhanced-select', ES_TDOMAIN ),
 
193
  'es_compose_delete_record' => _x( 'Do you want to delete this record?', 'compose-enhanced-select', ES_TDOMAIN )
194
  );
195
  wp_localize_script( 'es-compose', 'es_compose_notices', $es_select_params );
224
  );
225
  wp_localize_script( 'es-sentmail', 'es_sentmail_notices', $es_select_params );
226
  break;
227
+ case 'es-settings':
228
+ wp_register_script( 'es-settings', ES_URL . 'settings/es-settings.js', '', '', true );
229
+ wp_enqueue_script( 'es-settings' );
230
  $es_select_params = array(
231
  'es_cron_number' => _x( 'Please select enter number of mails you want to send per hour/trigger.', 'cron-enhanced-select', ES_TDOMAIN ),
232
  'es_cron_input_type' => _x( 'Please enter the mail count, only number.', 'cron-enhanced-select', ES_TDOMAIN )
233
  );
234
+ wp_localize_script( 'es-settings', 'es_cron_notices', $es_select_params );
235
  break;
236
  }
237
  }
313
  if ( wp_remote_retrieve_response_code( $response ) == 200 ) {
314
  $data = $response['body'];
315
  if ( $data != 'error' ) {
316
+
317
  $message_start = substr( $data, strpos( $data,'<body>' ) + 6 );
318
  $remove = substr( $message_start, strpos( $message_start,'</body>' ) );
319
  $message = trim( str_replace( $remove, '', $message_start ) );
320
  echo ( $message );
321
+ exit();
322
  }
323
  }
324
  exit();
339
  es_cls_registerhook::es_upgrade_database_for_3_2_7();
340
  }
341
 
342
+
343
+ if ( $email_subscribers_current_db_version == '3.2.7' ) {
344
+ es_cls_registerhook::es_upgrade_database_for_3_3();
345
+ }
346
  }
347
 
348
  /**
349
+ * To update sync email option to remove Commented user & it's group - ig_es_sync_wp_users
350
  * ES version 3.2 onwards
351
  */
352
  public static function es_upgrade_database_for_3_2() {
353
 
354
+ $sync_subscribers = get_option( 'ig_es_sync_wp_users' );
355
 
356
  $es_unserialized_data = maybe_unserialize($sync_subscribers);
357
  unset($es_unserialized_data['es_commented']);
358
  unset($es_unserialized_data['es_commented_group']);
359
 
360
  $es_serialized_data = serialize($es_unserialized_data);
361
+ update_option( 'ig_es_sync_wp_users', $es_serialized_data );
362
 
363
  update_option( 'current_sa_email_subscribers_db_version', '3.2' );
364
  }
365
 
366
  /**
367
+ * To rename a few terms in compose & reports menu
368
  * ES version 3.2.7 onwards
369
  */
370
  public static function es_upgrade_database_for_3_2_7() {
372
  global $wpdb;
373
 
374
  // Compose table
375
+ $wpdb->query( "UPDATE {$wpdb->prefix}es_templatetable
376
+ SET es_email_type =
377
+ ( CASE
378
+ WHEN es_email_type = 'Static Template' THEN 'Newsletter'
379
+ WHEN es_email_type = 'Dynamic Template' THEN 'Post Notification'
380
+ ELSE es_email_type
381
+ END ) " );
382
 
383
  // Sent Details table
384
  $wpdb->query( "UPDATE {$wpdb->prefix}es_sentdetails
385
+ SET es_sent_type =
386
+ ( CASE
387
+ WHEN es_sent_type = 'Instant Mail' THEN 'Immediately'
388
+ WHEN es_sent_type = 'Cron Mail' THEN 'Cron'
389
+ ELSE es_sent_type
390
+ END ),
391
+ es_sent_source =
392
  ( CASE
393
+ WHEN es_sent_source = 'manual' THEN 'Newsletter'
 
 
 
 
 
 
394
  WHEN es_sent_source = 'notification' THEN 'Post Notification'
395
  ELSE es_sent_source
396
  END ) " );
397
 
398
  // Delivery Reports table
399
  $wpdb->query( "UPDATE {$wpdb->prefix}es_deliverreport
400
+ SET es_deliver_senttype =
401
  ( CASE
402
+ WHEN es_deliver_senttype = 'Instant Mail' THEN 'Immediately'
403
  WHEN es_deliver_senttype = 'Cron Mail' THEN 'Cron'
404
  ELSE es_deliver_senttype
405
+ END ) " );
406
 
407
  update_option( 'current_sa_email_subscribers_db_version', '3.2.7' );
408
  }
409
 
410
+ /**
411
+ * To migrate Email Settings data from custom pluginconfig table to wordpress options table and to update user roles
412
+ * ES version 3.3 onwards
413
+ */
414
+ public static function es_upgrade_database_for_3_3() {
415
+ global $wpdb;
416
+
417
+ $settings_to_rename = array(
418
+ 'es_c_fromname' => 'ig_es_fromname',
419
+ 'es_c_fromemail' => 'ig_es_fromemail',
420
+ 'es_c_mailtype' => 'ig_es_emailtype',
421
+ 'es_c_adminmailoption' => 'ig_es_notifyadmin',
422
+ 'es_c_adminemail' => 'ig_es_adminemail',
423
+ 'es_c_adminmailsubject' => 'ig_es_admin_new_sub_subject',
424
+ 'es_c_adminmailcontant' => 'ig_es_admin_new_sub_content',
425
+ 'es_c_usermailoption' => 'ig_es_welcomeemail',
426
+ 'es_c_usermailsubject' => 'ig_es_welcomesubject',
427
+ 'es_c_usermailcontant' => 'ig_es_welcomecontent',
428
+ 'es_c_optinoption' => 'ig_es_optintype',
429
+ 'es_c_optinsubject' => 'ig_es_confirmsubject',
430
+ 'es_c_optincontent' => 'ig_es_confirmcontent',
431
+ 'es_c_optinlink' => 'ig_es_optinlink',
432
+ 'es_c_unsublink' => 'ig_es_unsublink',
433
+ 'es_c_unsubtext' => 'ig_es_unsubcontent',
434
+ 'es_c_unsubhtml' => 'ig_es_unsubtext',
435
+ 'es_c_subhtml' => 'ig_es_successmsg',
436
+ 'es_c_message1' => 'ig_es_suberror',
437
+ 'es_c_message2' => 'ig_es_unsuberror',
438
+ );
439
+
440
+ $options_to_rename = array(
441
+ 'es_c_post_image_size' => 'ig_es_post_image_size',
442
+ 'es_c_sentreport' => 'ig_es_sentreport',
443
+ 'es_c_sentreport_subject' => 'ig_es_sentreport_subject',
444
+ 'es_c_rolesandcapabilities' => 'ig_es_rolesandcapabilities',
445
+ 'es_c_cronurl' => 'ig_es_cronurl',
446
+ 'es_cron_mailcount' => 'ig_es_cron_mailcount',
447
+ 'es_cron_adminmail' => 'ig_es_cron_adminmail',
448
+ 'es_c_emailsubscribers' => 'ig_es_sync_wp_users',
449
+ );
450
+
451
+ // Rename options that were previously stored
452
+ foreach ( $options_to_rename as $old_option_name => $new_option_name ) {
453
+ $option_value = get_option( $old_option_name );
454
+ if ( $option_value ) {
455
+ update_option( $new_option_name, $option_value );
456
+ delete_option( $old_option_name );
457
+ }
458
+ }
459
+
460
+ // Do not pull data for new users as there is no pluginconfig table created on activation
461
+ $table_exists = $wpdb->query( "SHOW TABLES LIKE '{$wpdb->prefix}es_pluginconfig'" );
462
+
463
+ if ( $table_exists > 0 ) {
464
+
465
+ // Pull out ES settings data of existing users and move them to options table
466
+ $settings_data = es_cls_settings::es_setting_select(1);
467
+
468
+ if ( ! empty( $settings_data ) ) {
469
+ foreach ( $settings_data as $name => $value ) {
470
+ if( array_key_exists( $name, $settings_to_rename ) ){
471
+ update_option( $settings_to_rename[ $name ], $value );
472
+ }
473
+ }
474
+ }
475
+ }
476
+
477
+ //Update User Roles Settings
478
+ $es_c_rolesandcapabilities = get_option( 'ig_es_rolesandcapabilities', 'norecord' );
479
+
480
+ if ( $es_c_rolesandcapabilities != 'norecord' ) {
481
+ $remove_roles = array( 'es_roles_setting', 'es_roles_help' );
482
+
483
+ foreach ( $es_c_rolesandcapabilities as $role_name => $role_value ) {
484
+ if ( in_array( $role_name, $remove_roles ) ) {
485
+ unset( $es_c_rolesandcapabilities[$role_name] );
486
+ }
487
+ }
488
+ update_option( 'ig_es_rolesandcapabilities', $es_c_rolesandcapabilities );
489
+ }
490
+
491
+ update_option( 'current_sa_email_subscribers_db_version', '3.3' );
492
+ }
493
+
494
  // Function to show any notices in admin section
495
  public static function es_add_admin_notices() {
496
  ?>
518
  color: #FFF;
519
  background-color: #363b3f;
520
  }
521
+ .es-form-container .es-form-feild{
522
+ display: inline-block;
523
+ }
524
+ .es-form-container .es-form-feild:not(:first-child){
525
+ margin-left: 5%;
526
+ }
527
+ .es-form-container{
528
+ background-color: rgba(52, 0, 109, 0.89) !important;
529
+ border-radius: 0.618em;
530
+ margin-top: 1%;
531
+ padding: 1em 1em 0.5em 1em;
532
+ box-shadow: 0 0 7px 0 rgba(0, 0, 0, .2);
533
+ color: #FFF;
534
+ font-size: 1.1em;
535
+ }
536
+ .es-form-wrapper{
537
+ margin-bottom:0.4em;
538
+ }
539
+ .es-form-headline div.es-mainheadline{
540
+ font-weight: bold;
541
+ font-size: 1.618em;
542
+ line-height: 1.8em;
543
+ }
544
+ .es-form-headline div.es-subheadline{
545
+ padding-bottom: 0.4em;
546
+ font-family: Georgia, Palatino, serif;
547
+ font-size: 1.2em;
548
+ color: #d4a000;
549
+ }
550
+ .es-survey-ques{
551
+ font-size:1.1em;
552
+ padding-bottom: 0.3em;
553
+ }
554
+ .es-form-feild label{
555
+ font-size:0.9em;
556
+ margin-left: 0.2em;
557
+ }
558
+ .es-button{
559
+ box-shadow: 0 1px 0 #03a025;
560
+ font-weight: bold;
561
+ height: 2em;
562
+ line-height: 1em;
563
+ }
564
+ .es-button.primary{
565
+ color: #FFFFFF!important;
566
+ border-color: #a7c53c !important;
567
+ background: #a7c53c !important;
568
+ box-shadow: none;
569
+ padding: 0 3.6em;
570
+ }
571
+ .es-button.secondary{
572
+ color: #545454!important;
573
+ border-color: #d9dcda!important;
574
+ background: rgba(243, 243, 243, 0.83) !important;
575
+ }
576
+ .es-loader-wrapper{
577
+ position: absolute;
578
+ top: 0.6em;
579
+ right: 0;
580
+ display: none;
581
+ }
582
+ .es-loader-wrapper img{
583
+ width: 60%;
584
+ }
585
+ .es-msg-wrap{
586
+ display: none;
587
+ text-align: center;
588
+ }
589
+ .es-msg-wrap .es-msg-text{
590
+ padding: 1%;
591
+ font-size: 2em;
592
+ }
593
+ .es-form-field.es-left{
594
+ margin-bottom: 0.6em;
595
+ width: 29%;
596
+ display: inline-block;
597
+ float: left;
598
+ }
599
+ .es-form-field.es-right{
600
+ margin-left: 3%;
601
+ width: 67%;
602
+ display: inline-block;
603
+ }
604
+ .es-profile-txt:before{
605
+ font-family: dashicons;
606
+ content: "\f345";
607
+ vertical-align: middle;
608
+ }
609
+ .es-profile-txt{
610
+ font-size: 0.9em;
611
+ }
612
+ .es-right-info .es-right{
613
+ width: 48%;
614
+ display: inline-block;
615
+ float: right;
616
+ }
617
+ .es-right-info .es-left{
618
+ width: 52%;
619
+ display: inline-block;
620
+ }
621
+ .es-form-wrapper form{
622
+ margin-top: 0.6em;
623
+ }
624
+ .es-right-info label{
625
+ padding: 0 0.5em 0 0;
626
+ font-size: 0.8em;
627
+ text-transform: uppercase;
628
+ color: rgba(239, 239, 239, 0.98);
629
+ }
630
+ .es-list-item{
631
+ margin-bottom: 0.9em;
632
+ }
633
+ .es-rocket{
634
+ position: absolute;
635
+ top: 3em;
636
+ right: 0%;
637
+ }
638
+ .es-rocket img{
639
+ width: 85%;
640
+ }
641
+ #es-no{
642
+ box-shadow: none;
643
+ cursor: pointer;
644
+ color: #c3bfbf;
645
+ text-decoration: underline;
646
+ width: 100%;
647
+ display: block;
648
+ }
649
+ .es-clearfix:after {
650
+ content: ".";
651
+ display: block;
652
+ clear: both;
653
+ visibility: hidden;
654
+ line-height: 0;
655
+ height: 0;
656
+ }
657
  </style>
658
 
659
  <?php
660
  // To show IG recommendation
661
+ // $active_plugins = (array) get_option('active_plugins', array());
662
+ // if (is_multisite()) {
663
+ // $active_plugins = array_merge($active_plugins, get_site_option('active_sitewide_plugins', array()));
664
+ // }
665
 
666
+ // $es_ig_notice_email_subscribers = get_option( 'es_ig_notice_email_subscribers' );
667
 
668
+ // if ( in_array('icegram/icegram.php', $active_plugins) || array_key_exists('icegram/icegram.php', $active_plugins) || !empty($es_ig_notice_email_subscribers) ) {
669
+ // return;
670
+ // } else {
671
+ // $url = wp_nonce_url(self_admin_url('update.php?action=install-plugin&plugin=' . 'icegram'), 'install-plugin_' . 'icegram');
672
+ // $admin_notice_text_for_ig = __( '<b>FREE</b> plugin: Quickly grow your subscribers list with beautiful and high converting optins.', ES_TDOMAIN );
673
+ // echo '<div class="notice notice-warning"><p>'.$admin_notice_text_for_ig.'<a style="display:inline-block" class="es-admin-btn" href="'.$url.'">'.__( 'Try Icegram', ES_TDOMAIN ).'</a><a style="display:inline-block" class="es-admin-btn es-admin-btn-secondary" href="?dismiss_admin_notice=1&option_name=es_ig_notice">'.__( 'No, I don\'t need it', ES_TDOMAIN ).'</a></p></div>';
674
+ // }
675
 
676
  // To show RM recommendation
677
  // $active_plugins = (array) get_option('active_plugins', array());
688
  // $admin_notice_text_for_rm = __( 'Email Subscribers recommends free plugin <b>Rainmaker</b> to collect leads instantly', ES_TDOMAIN );
689
  // echo '<div class="notice notice-warning"><p>'.$admin_notice_text_for_rm.'<a style="display:inline-block" class="es-admin-btn" href="'.$url.'">'.__( 'Yes, I want this', ES_TDOMAIN ).'</a><a style="display:inline-block" class="es-admin-btn es-admin-btn-secondary" href="?dismiss_admin_notice=1&option_name=es_rm_notice">'.__( 'No, I don\'t want it', ES_TDOMAIN ).'</a></p></div>';
690
  // }
691
+
692
+ // 13th June 17
693
+ $home_url = home_url();
694
+ $strlen = strlen($home_url);
695
+ $res = $strlen%10;
696
+ if($res != 1)
697
+ return;
698
+ $es_data = es_cls_dbquery::es_survey_res();
699
+ $screen = get_current_screen();
700
+ if( stripos($screen->id, 'email-subscribers' ) === false ) return;
701
+ if( get_option('es_survey_done') == 1 ) return;
702
+ ?>
703
+
704
+ <div class="es-form-container wrap">
705
+ <div class="es-form-wrapper">
706
+ <div class="es-form-headline">
707
+ <div class="es-mainheadline"><?php _e('Email Subscribers', ES_TDOMAIN); ?> <u><?php _e('is getting even better!', ES_TDOMAIN); ?></u></div>
708
+ <div class="es-subheadline"><?php _e('But I need you to', ES_TDOMAIN); ?> <strong><?php _e('help me prioritize', ES_TDOMAIN); ?></strong>! <?php _e('Please send your response today.', ES_TDOMAIN); ?></div>
709
+ </div>
710
+ <form name="es-survey-form" action="#" method="POST" accept-charset="utf-8">
711
+ <div class="es-container-1 es-clearfix">
712
+ <div class="es-form-field es-left">
713
+ <div class="es-profile">
714
+ <div class="es-profile-info">
715
+ <div style="font-size: 1.218em;padding-bottom: 0.5em;display: block;font-weight: bold;color: #ffd3a2;"><?php echo __("Here's how you use ES:",ES_TDOMAIN); ?></div>
716
+ <ul style="margin: 0 0.5em;">
717
+ <li class="es-profile-txt">
718
+ <?php
719
+ if($es_data['post_notification'] > $es_data['newsletter']){
720
+ _e('Used Post Notifications more often than Newsletter', ES_TDOMAIN);
721
+ } else if($es_data['newsletter'] > $es_data['post_notification']){
722
+ _e('Used Newsletter more often than Post Notifications', ES_TDOMAIN);
723
+ } else{
724
+ _e('Used Post Notification &amp; Newsletter equally', ES_TDOMAIN);
725
+ }
726
+ ?>
727
+ </li>
728
+ <li class="es-profile-txt"> <?php echo __('Have ',ES_TDOMAIN) .$es_data['es_active_subscribers'] . __(' Active Subscribers', ES_TDOMAIN); ?></li>
729
+ <li class="es-profile-txt"> <?php echo __('Post ',ES_TDOMAIN) .$es_data['es_avg_post_cnt'] . __(' blog per week', ES_TDOMAIN); ?></li>
730
+ <li class="es-profile-txt">
731
+ <?php
732
+ if($es_data['cron'] > $es_data['immediately']){
733
+ _e('Send mails via Cron', ES_TDOMAIN);
734
+ }else {
735
+ _e('Send mails Immediately', ES_TDOMAIN);
736
+ }
737
+ ?>
738
+ </li>
739
+ <input type="hidden" name="es_data['data']" value="<?php echo htmlentities(serialize($es_data)); ?>">
740
+ </ul>
741
+ </div>
742
+ </div>
743
+ </div>
744
+ <div class="es-form-field es-right">
745
+ <div style="font-size: 1.218em;padding-bottom: 0.5em;display: block;font-weight: bold;color: #ffd3a2;"><?php echo __('How soon do you want these new features?', ES_TDOMAIN); ?></div>
746
+ <div class="es-right-info">
747
+ <div class="es-left">
748
+ <ul style="margin-top:0;">
749
+ <li class="es-list-item"><?php _e('Beautiful Email Designs', ES_TDOMAIN); ?><br>
750
+ <label title="days"><input checked="" type="radio" name="es_data[design_tmpl]" value="0"><?php _e('Right now!', ES_TDOMAIN); ?></label>
751
+ <label title="days"><input type="radio" name="es_data[design_tmpl]" value="1"><?php _e('Soon', ES_TDOMAIN); ?></label>
752
+ <label title="days"><input type="radio" name="es_data[design_tmpl]" value="2"><?php _e('Later', ES_TDOMAIN); ?></label>
753
+ </li>
754
+ <li class="es-list-item"><?php _e('Spam Check, Scheduling... (Better Email Delivery)', ES_TDOMAIN); ?><br>
755
+ <label><input type="radio" name="es_data[email_control]" value="0"><?php _e('Right now!', ES_TDOMAIN); ?></label>
756
+ <label><input checked="" type="radio" name="es_data[email_control]" value="1"><?php _e('Soon', ES_TDOMAIN); ?></label>
757
+ <label><input type="radio" name="es_data[email_control]" value="2"><?php _e('Later', ES_TDOMAIN); ?></label>
758
+ </li>
759
+ </ul>
760
+ </div>
761
+ <div class="es-right">
762
+ <ul style="margin-top:0;">
763
+ <li class="es-list-item"><?php _e('Discard Fake / Bouncing Emails', ES_TDOMAIN); ?><br>
764
+ <label><input type="radio" name="es_data[cleanup]" value="0"><?php _e('Right now!', ES_TDOMAIN); ?></label>
765
+ <label><input checked="" type="radio" name="es_data[cleanup]" value="1"><?php _e('Soon', ES_TDOMAIN); ?></label>
766
+ <label><input type="radio" name="es_data[cleanup]" value="2"><?php _e('Later', ES_TDOMAIN); ?></label>
767
+ </li>
768
+ <li class="es-list-item"><?php _e('Advanced Reporting', ES_TDOMAIN); ?><br>
769
+ <label><input type="radio" name="es_data[report]" value="0"><?php _e('Right now!', ES_TDOMAIN); ?></label>
770
+ <label><input type="radio" name="es_data[report]" value="1"><?php _e('Soon', ES_TDOMAIN); ?></label>
771
+ <label><input checked="" type="radio" name="es_data[report]" value="2"><?php _e('Later', ES_TDOMAIN); ?></label>
772
+ </li>
773
+ </ul>
774
+ </div>
775
+ </div>
776
+ </div>
777
+ </div>
778
+ <div style="position:relative;margin: 0 auto;padding: .5em;width: 70%;text-align: center;">
779
+ <input style="width: 55%;vertical-align: middle;display: inline-block;" placeholder="Enter your email to get early access" type="email" name="es_data[email]">
780
+ <div class="" style="display: inline-block;margin-left: 0.4em;width: 23%;vertical-align: middle;">
781
+ <input data-val="yes" type="submit" id="es-yes" value="Alright, Send It All" class="es-button button primary">
782
+ </div>
783
+ <div class="es-loader-wrapper"><img src="<?php echo ES_URL ?>images/spinner-2x.gif"></div>
784
+ <a id="es-no" data-val="no" class="">Nah, I don't like improvements</a>
785
+ </div>
786
+ </form>
787
+ <div class="es-rocket"><img src="<?php echo ES_URL?>images/es-growth-rocket.png"/></div>
788
+ </div>
789
+ <div class="es-msg-wrap">
790
+ <div class="es-logo-wrapper"><img style="width:5%;" src="<?php echo ES_URL ?>images/icon-128x128.png"></div>
791
+ <div class="es-msg-text es-yes"><?php _e('Thank you!', ES_TDOMAIN); ?></div>
792
+ <div class="es-msg-text es-no"><?php _e('No issues, have a nice day!', ES_TDOMAIN); ?></div>
793
+ </div>
794
+ </div>
795
+
796
+ <script type="text/javascript">
797
+ jQuery(function () {
798
+ jQuery("form[name=es-survey-form]").on('click','.es-button, #es-no',function(e){
799
+ e.preventDefault();
800
+ jQuery("form[name=es-survey-form]").find('.es-loader-wrapper').show();
801
+ var params = jQuery("form[name=es-survey-form]").serializeArray();
802
+ var that = this;
803
+ params.push({name: 'btn-val', value: jQuery(this).data('val') });
804
+ params.push({name: 'action', value: 'es_submit_survey' });
805
+ jQuery.ajax({
806
+ method: 'POST',
807
+ type: 'text',
808
+ url: "<?php echo admin_url( 'admin-ajax.php' ); ?>",
809
+ data: params,
810
+ success: function(response) {
811
+ jQuery("form[name=es-survey-form]").find('.es-loader-wrapper').hide();
812
+ jQuery(".es-msg-wrap").show('slow');
813
+ if( jQuery(that).attr('id') =='es-no'){
814
+ jQuery(".es-msg-wrap .es-yes").hide();
815
+ }else{
816
+ jQuery(".es-msg-wrap .es-no").hide();
817
+ }
818
+ jQuery(".es-form-wrapper").hide('slow');
819
+ setTimeout(function(){
820
+ jQuery(".es-form-container").hide('slow');
821
+ }, 5000);
822
+ }
823
+ });
824
+ })
825
+
826
+ });
827
+ </script>
828
+ <?php
829
+
830
+ }
831
+
832
+ public static function es_submit_survey() {
833
+ $url = 'http://www.icegram.com/wp-admin/admin-ajax.php';
834
+ if( !empty($_POST['btn-val']) && $_POST['btn-val'] == 'no' ) {
835
+ update_option('es_survey_done', true);
836
+ }
837
+ if( !empty( $_POST ) ) {
838
+ $params = $_POST;
839
+ $params['domain'] = home_url();
840
+ } else {
841
+ exit();
842
+ }
843
+ $method = 'POST';
844
+ $qs = http_build_query( $params );
845
+
846
+ $options = array(
847
+ 'timeout' => 15,
848
+ 'method' => $method
849
+ );
850
+
851
+ if ( $method == 'POST' ) {
852
+ $options['body'] = $qs;
853
+ } else {
854
+ if ( strpos( $url, '?' ) !== false ) {
855
+ $url .= '&'.$qs;
856
+ } else {
857
+ $url .= '?'.$qs;
858
+ }
859
+ }
860
+
861
+ $response = wp_remote_request( $url, $options );
862
+ if ( wp_remote_retrieve_response_code( $response ) == 200 ) {
863
+ $data = json_decode($response['body'], true);
864
+ if ( $data != 'error' ) {
865
+ if(!empty($data) && !empty($data['success'])){
866
+ update_option('es_survey_done', true);
867
+ }
868
+ echo ( json_encode($data) );
869
+ exit();
870
+ }
871
+ }
872
+ exit();
873
  }
874
 
875
  // Function to dismiss any admin notice
890
 
891
  function es_sync_registereduser( $user_id ) {
892
 
893
+ $es_c_emailsubscribers = get_option('ig_es_sync_wp_users', 'norecord');
894
 
895
  if( $es_c_emailsubscribers == 'norecord' || $es_c_emailsubscribers == "" ) {
896
  // No action is required
923
  }
924
  }
925
  }
926
+
927
  class es_widget_register extends WP_Widget {
928
  function __construct() {
929
  $widget_ops = array('classname' => 'widget_text elp-widget', 'description' => __( ES_PLUGIN_DISPLAY, ES_TDOMAIN ), ES_PLUGIN_NAME);
982
  <?php
983
  echo $args['after_widget'];
984
  }
985
+
986
  function update( $new_instance, $old_instance ) {
987
  $instance = $old_instance;
988
  $instance['es_title'] = ( ! empty( $new_instance['es_title'] ) ) ? strip_tags( $new_instance['es_title'] ) : '';
991
  $instance['es_group'] = ( ! empty( $new_instance['es_group'] ) ) ? strip_tags( $new_instance['es_group'] ) : '';
992
  return $instance;
993
  }
994
+
995
  function form( $instance ) {
996
  $defaults = array(
997
  'es_title' => '',
1026
  </p>
1027
  <?php
1028
  }
1029
+
1030
  function es_selected($var) {
1031
  if ($var==1 || $var==true) {
1032
  echo 'selected="selected"';
classes/es-sendmail.php CHANGED
@@ -2,7 +2,7 @@
2
 
3
  // Exit if accessed directly
4
  if ( ! defined( 'ABSPATH' ) ) {
5
- exit;
6
  }
7
 
8
  class es_cls_sendmail {
@@ -13,7 +13,7 @@ class es_cls_sendmail {
13
  $subscribers = es_cls_dbquery::es_view_subscriber_bulk($idlist);
14
  es_cls_sendmail::es_sendmail("optin", $template = 0, $subscribers, $action = "optin-group", "Immediately");
15
  break;
16
-
17
  case 'single':
18
  $subscribers = es_cls_dbquery::es_view_subscriber_search($search = "", $id);
19
  es_cls_sendmail::es_sendmail("optin", $template = 0, $subscribers, $action = "optin-single", "Immediately");
@@ -28,11 +28,11 @@ class es_cls_sendmail {
28
  es_cls_sendmail::es_sendmail("welcome", $template = 0, $subscribers, $action = "welcome", 0, "Immediately");
29
  }
30
 
31
- public static function es_prepare_notification( $post_status, $original_post_status, $post_id ) {
32
  if( ( $post_status == 'publish' ) && ( $original_post_status != 'publish' ) ) {
33
  $notification = array();
34
-
35
- // $post_id is Object type containing the post information
36
  // Thus we need to get post_id from $post_id object
37
  if(is_numeric($post_id)) {
38
  $post_id = $post_id;
@@ -86,24 +86,24 @@ class es_cls_sendmail {
86
  $replaceto = array("<ul>", "</ul>", "<li>" ,"</li>", "<ol>", "</ol>", "</h2>", "</h1>");
87
  $count = 1;
88
 
89
- $settings = es_cls_settings::es_setting_select(1);
90
- if( trim($settings['es_c_fromname']) == "" || trim($settings['es_c_fromemail']) == '' ) {
91
  get_currentuserinfo();
92
  $sender_name = $user_login;
93
  $sender_email = $user_email;
94
  } else {
95
- $sender_name = stripslashes($settings['es_c_fromname']);
96
- $sender_email = $settings['es_c_fromemail'];
97
  }
98
 
99
- if( $settings['es_c_mailtype'] == "WP HTML MAIL" || $settings['es_c_mailtype'] == "PHP HTML MAIL" ) {
100
  $htmlmail = true;
101
  }
102
 
103
- if( $settings['es_c_mailtype'] == "WP HTML MAIL" || $settings['es_c_mailtype'] == "WP PLAINTEXT MAIL" ) { // check this code
104
  $wpmail = true;
105
  }
106
-
107
  $headers = "From: \"$sender_name\" <$sender_email>\n";
108
  $headers .= "Return-Path: <" . $sender_email . ">\n";
109
  $headers .= "Reply-To: \"" . $sender_name . "\" <" . $sender_email . ">\n";
@@ -119,21 +119,21 @@ class es_cls_sendmail {
119
 
120
  $url = home_url('/');
121
  $viewstatus = '<img src="'.$url.'?es=viewstatus&delvid=###DELVIID###" width="1" height="1" />';
122
-
123
  foreach ($crondeliveryqueue as $crondelivery) {
124
  $es_email_id = $crondelivery['es_deliver_emailid'];
125
  $es_deliver_id = $crondelivery['es_deliver_id'];
126
  $subscriber = es_cls_dbquery::es_view_subscriber_search("", $es_email_id);
127
  if(count($subscriber) > 0) {
128
- $unsublink = $settings['es_c_unsublink'];
129
  $unsublink = str_replace("###DBID###", $subscriber[0]["es_email_id"], $unsublink);
130
  $unsublink = str_replace("###EMAIL###", $subscriber[0]["es_email_mail"], $unsublink);
131
  $unsublink = str_replace("###GUID###", $subscriber[0]["es_email_guid"], $unsublink);
132
  $unsublink = $unsublink . "&cache=".$cacheid;
133
-
134
- $unsubtext = stripslashes($settings['es_c_unsubtext']);
135
  $unsubtext = str_replace("###LINK###", $unsublink , $unsubtext);
136
- if ( $settings['es_c_mailtype'] == "WP HTML MAIL" || $settings['es_c_mailtype'] == "PHP HTML MAIL" ) {
137
  $unsubtext = '<br><br>' . $unsubtext;
138
  } else {
139
  $unsubtext = '\n\n' . $unsubtext;
@@ -141,9 +141,9 @@ class es_cls_sendmail {
141
 
142
  $viewstslink = str_replace("###DELVIID###", $es_deliver_id, $viewstatus);
143
  $content_send = str_replace("###EMAIL###", $subscriber[0]["es_email_mail"], $content);
144
- $content_send = str_replace("###NAME###", $subscriber[0]["es_email_name"], $content_send);
145
-
146
- if ( $settings['es_c_mailtype'] == "WP HTML MAIL" || $settings['es_c_mailtype'] == "PHP HTML MAIL" ) {
147
  $content_send = nl2br($content_send);
148
  $content_send = str_replace($replacefrom, $replaceto, $content_send);
149
  } else {
@@ -163,18 +163,18 @@ class es_cls_sendmail {
163
  if($count % 25 == 0) {
164
  sleep(60); //sleep 60 seconds for every 25 emails.
165
  }
166
-
167
  }
168
 
169
- $es_cron_adminmail = get_option('es_cron_adminmail');
170
  if($es_cron_adminmail <> "") {
171
- $adminmail = $settings['es_c_adminemail'];
172
  $crondate = date('Y-m-d G:i:s');
173
  $count = $count - 1;
174
- $es_cron_adminmail = str_replace("###COUNT###", $count, $es_cron_adminmail);
175
- $es_cron_adminmail = str_replace("###DATE###", $crondate, $es_cron_adminmail);
176
- $es_cron_adminmail = str_replace("###SUBJECT###", $subject, $es_cron_adminmail);
177
-
178
  if($htmlmail) {
179
  $es_cron_adminmail = nl2br($es_cron_adminmail);
180
  } else {
@@ -208,27 +208,27 @@ class es_cls_sendmail {
208
  $replacefrom = array("<ul><br />", "</ul><br />", "<li><br />", "</li><br />", "<ol><br />", "</ol><br />", "</h2><br />", "</h1><br />");
209
  $replaceto = array("<ul>", "</ul>", "<li>" ,"</li>", "<ol>", "</ol>", "</h2>", "</h1>");
210
 
211
- $settings = es_cls_settings::es_setting_select(1);
212
- $adminmail = $settings['es_c_adminemail'];
213
- $es_c_adminmailoption = $settings['es_c_adminmailoption'];
214
- $es_c_usermailoption = $settings['es_c_usermailoption'];
215
 
216
- if( trim($settings['es_c_fromname']) == "" || trim($settings['es_c_fromemail']) == '' ) {
217
  get_currentuserinfo();
218
  $sender_name = $user_login;
219
  $sender_email = $user_email;
220
  } else {
221
- $sender_name = stripslashes($settings['es_c_fromname']);
222
- $sender_email = $settings['es_c_fromemail'];
223
  }
224
 
225
- if( $settings['es_c_mailtype'] == "WP HTML MAIL" || $settings['es_c_mailtype'] == "PHP HTML MAIL" ) {
226
  $htmlmail = true;
227
  } else {
228
  $htmlmail = false;
229
  }
230
 
231
- if( $settings['es_c_mailtype'] == "WP HTML MAIL" || $settings['es_c_mailtype'] == "WP PLAINTEXT MAIL" ) {
232
  $wpmail = true;
233
  } else {
234
  $wpmail = false;
@@ -249,13 +249,13 @@ class es_cls_sendmail {
249
 
250
  switch($type) {
251
  case 'optin':
252
- $subject = stripslashes($settings['es_c_optinsubject']);
253
- $content = stripslashes($settings['es_c_optincontent']);
254
  break;
255
 
256
  case 'welcome':
257
- $subject = stripslashes($settings['es_c_usermailsubject']);
258
- $content = stripslashes($settings['es_c_usermailcontant']);
259
  break;
260
 
261
  case 'newsletter':
@@ -279,7 +279,7 @@ class es_cls_sendmail {
279
  $subject = str_replace('###POSTTITLE###', $post_title, $subject);
280
  $post_link = get_permalink($post_id);
281
  $subject = str_replace('###POSTLINK###', $post_link, $subject);
282
- $post_date = $post->post_modified;
283
 
284
  // Get full post
285
  $post_full = $post->post_content;
@@ -296,7 +296,7 @@ class es_cls_sendmail {
296
  }
297
 
298
  if ( (function_exists('has_post_thumbnail')) && (has_post_thumbnail($post_id)) ) {
299
- $es_post_image_size = get_option( 'es_c_post_image_size', 'full' );
300
  switch ( $es_post_image_size ) {
301
  case 'full':
302
  $post_thumbnail = get_the_post_thumbnail( $post_id, 'full' );
@@ -319,7 +319,7 @@ class es_cls_sendmail {
319
  if($post_link != "") {
320
  $post_link_with_title = "<a href='".$post_link."' target='_blank'>".$post_title."</a>";
321
  $content = str_replace('###POSTLINK-WITHTITLE###', $post_link_with_title, $content);
322
-
323
  $post_link = "<a href='".$post_link."' target='_blank'>".$post_link."</a>";
324
  }
325
 
@@ -332,7 +332,7 @@ class es_cls_sendmail {
332
  break;
333
  }
334
 
335
- if ( $settings['es_c_mailtype'] == "WP HTML MAIL" || $settings['es_c_mailtype'] == "PHP HTML MAIL" ) {
336
  $content = str_replace("\r\n", "<br />", $content);
337
  } else {
338
  $content = str_replace("<br />", "\r\n", $content);
@@ -359,7 +359,7 @@ class es_cls_sendmail {
359
  case 'optin':
360
  $content_send = str_replace("###NAME###", $name, $content);
361
  $content_send = str_replace("###EMAIL###", $to, $content_send);
362
- $optinlink = $settings['es_c_optinlink'];
363
  $optinlink = str_replace("###DBID###", $subscriber["es_email_id"], $optinlink);
364
  $optinlink = str_replace("###EMAIL###", $subscriber["es_email_mail"], $optinlink);
365
  $optinlink = str_replace("###GUID###", $subscriber["es_email_guid"], $optinlink);
@@ -373,19 +373,19 @@ class es_cls_sendmail {
373
  $content_send = str_replace("###GROUP###", $group, $content_send);
374
 
375
  // Making an unsubscribe link
376
- $unsublink = $settings['es_c_unsublink'];
377
  $unsublink = str_replace("###DBID###", $subscriber["es_email_id"], $unsublink);
378
  $unsublink = str_replace("###EMAIL###", $subscriber["es_email_mail"], $unsublink);
379
  $unsublink = str_replace("###GUID###", $subscriber["es_email_guid"], $unsublink);
380
  $unsublink = $unsublink . "&cache=".$cacheid;
381
  $content_send = str_replace("###LINK###", $unsublink, $content_send);
382
 
383
- $adminmailsubject = stripslashes($settings['es_c_adminmailsubject']);
384
- $adminmailcontant = stripslashes($settings['es_c_adminmailcontant']);
385
  $adminmailcontant = str_replace("###NAME###", $name , $adminmailcontant);
386
  $adminmailcontant = str_replace("###EMAIL###", $to, $adminmailcontant);
387
 
388
- if ( $settings['es_c_mailtype'] == "WP HTML MAIL" || $settings['es_c_mailtype'] == "PHP HTML MAIL" ) {
389
  $adminmailcontant = nl2br($adminmailcontant);
390
  $content_send = str_replace($replacefrom, $replaceto, $content_send);
391
  } else {
@@ -396,15 +396,15 @@ class es_cls_sendmail {
396
 
397
  case 'newsletter':
398
  if($mailsenttype != "Cron") { // Cron mail not sending by this method
399
- $unsublink = $settings['es_c_unsublink'];
400
  $unsublink = str_replace("###DBID###", $subscriber["es_email_id"], $unsublink);
401
  $unsublink = str_replace("###EMAIL###", $subscriber["es_email_mail"], $unsublink);
402
  $unsublink = str_replace("###GUID###", $subscriber["es_email_guid"], $unsublink);
403
  $unsublink = $unsublink . "&cache=".$cacheid;
404
 
405
- $unsubtext = stripslashes($settings['es_c_unsubtext']);
406
  $unsubtext = str_replace("###LINK###", $unsublink , $unsubtext);
407
- if ( $settings['es_c_mailtype'] == "WP HTML MAIL" || $settings['es_c_mailtype'] == "PHP HTML MAIL" ) {
408
  $unsubtext = '<br><br>' . $unsubtext;
409
  } else {
410
  $unsubtext = '\n\n' . $unsubtext;
@@ -413,9 +413,9 @@ class es_cls_sendmail {
413
  $returnid = es_cls_delivery::es_delivery_ins($sendguid, $subscriber["es_email_id"], $subscriber["es_email_mail"], $mailsenttype);
414
  $viewstslink = str_replace("###DELVIID###", $returnid, $viewstatus);
415
  $content_send = str_replace("###EMAIL###", $subscriber["es_email_mail"], $content);
416
- $content_send = str_replace("###NAME###", $subscriber["es_email_name"], $content_send);
417
-
418
- if ( $settings['es_c_mailtype'] == "WP HTML MAIL" || $settings['es_c_mailtype'] == "PHP HTML MAIL" ) {
419
  $content_send = nl2br($content_send);
420
  $content_send = str_replace($replacefrom, $replaceto, $content_send);
421
  } else {
@@ -430,14 +430,14 @@ class es_cls_sendmail {
430
  case 'notification': // notification mail to subscribers
431
  if($mailsenttype != "Cron") { // Cron mail not sending by this method
432
 
433
- $unsublink = $settings['es_c_unsublink'];
434
  $unsublink = str_replace("###DBID###", $subscriber["es_email_id"], $unsublink);
435
  $unsublink = str_replace("###EMAIL###", $subscriber["es_email_mail"], $unsublink);
436
  $unsublink = str_replace("###GUID###", $subscriber["es_email_guid"], $unsublink);
437
  $unsublink = $unsublink . "&cache=".$cacheid;
438
- $unsubtext = stripslashes($settings['es_c_unsubtext']);
439
  $unsubtext = str_replace("###LINK###", $unsublink , $unsubtext);
440
- if ( $settings['es_c_mailtype'] == "WP HTML MAIL" || $settings['es_c_mailtype'] == "PHP HTML MAIL" ) {
441
  $unsubtext = '<br><br>' . $unsubtext;
442
  } else {
443
  $unsubtext = '\n\n' . $unsubtext;
@@ -447,9 +447,9 @@ class es_cls_sendmail {
447
  $viewstslink = str_replace("###DELVIID###", $returnid, $viewstatus);
448
 
449
  $content_send = str_replace("###EMAIL###", $subscriber["es_email_mail"], $content);
450
- $content_send = str_replace("###NAME###", $subscriber["es_email_name"], $content_send);
451
-
452
- if ( $settings['es_c_mailtype'] == "WP HTML MAIL" || $settings['es_c_mailtype'] == "PHP HTML MAIL" ) {
453
  $content_send = nl2br($content_send);
454
  $content_send = str_replace($replacefrom, $replaceto, $content_send);
455
  } else {
@@ -484,8 +484,8 @@ class es_cls_sendmail {
484
  if($es_c_usermailoption == "YES") {
485
  mail($to ,$subject, $content_send . $unsubtext . $viewstslink, $headers);
486
  }
487
- } else {
488
- if($mailsenttype != "Cron") { // Cron mail not sending by this method
489
  mail($to ,$subject, $content_send . $unsubtext . $viewstslink, $headers);
490
  }
491
  }
@@ -504,7 +504,7 @@ class es_cls_sendmail {
504
  es_cls_sentmail::es_sentmail_ups($sendguid, $subject);
505
  if($adminmail != "") {
506
 
507
- $subject = get_option('es_c_sentreport_subject', 'nosubjectexists');
508
  if ( $subject == "" || $subject == "nosubjectexists") {
509
  $subject = es_cls_common::es_sent_report_subject();
510
  }
@@ -514,13 +514,13 @@ class es_cls_sendmail {
514
  }
515
 
516
  if($htmlmail) {
517
- $reportmail = get_option('es_c_sentreport', 'nooptionexists');
518
  if ( $reportmail == "" || $reportmail == "nooptionexists") {
519
  $reportmail = es_cls_common::es_sent_report_html();
520
  }
521
  $reportmail = nl2br($reportmail);
522
  } else {
523
- $reportmail = get_option('es_c_sentreport', 'nooptionexists');
524
  if ( $reportmail == "" || $reportmail == "nooptionexists") {
525
  $reportmail = es_cls_common::es_sent_report_plain();
526
  }
@@ -528,9 +528,9 @@ class es_cls_sendmail {
528
  $reportmail = str_replace("<br>", "\r\n", $reportmail);
529
  }
530
  $enddate = date('Y-m-d G:i:s');
531
- $reportmail = str_replace("###COUNT###", $count, $reportmail);
532
- $reportmail = str_replace("###UNIQUE###", $sendguid, $reportmail);
533
- $reportmail = str_replace("###STARTTIME###", $currentdate, $reportmail);
534
  $reportmail = str_replace("###ENDTIME###", $enddate, $reportmail);
535
  if($wpmail) {
536
  wp_mail($adminmail, $subject, $reportmail, $headers);
2
 
3
  // Exit if accessed directly
4
  if ( ! defined( 'ABSPATH' ) ) {
5
+ exit;
6
  }
7
 
8
  class es_cls_sendmail {
13
  $subscribers = es_cls_dbquery::es_view_subscriber_bulk($idlist);
14
  es_cls_sendmail::es_sendmail("optin", $template = 0, $subscribers, $action = "optin-group", "Immediately");
15
  break;
16
+
17
  case 'single':
18
  $subscribers = es_cls_dbquery::es_view_subscriber_search($search = "", $id);
19
  es_cls_sendmail::es_sendmail("optin", $template = 0, $subscribers, $action = "optin-single", "Immediately");
28
  es_cls_sendmail::es_sendmail("welcome", $template = 0, $subscribers, $action = "welcome", 0, "Immediately");
29
  }
30
 
31
+ public static function es_prepare_notification( $post_status, $original_post_status, $post_id ) {
32
  if( ( $post_status == 'publish' ) && ( $original_post_status != 'publish' ) ) {
33
  $notification = array();
34
+
35
+ // $post_id is Object type containing the post information
36
  // Thus we need to get post_id from $post_id object
37
  if(is_numeric($post_id)) {
38
  $post_id = $post_id;
86
  $replaceto = array("<ul>", "</ul>", "<li>" ,"</li>", "<ol>", "</ol>", "</h2>", "</h1>");
87
  $count = 1;
88
 
89
+ $settings = es_cls_settings::es_get_all_settings();
90
+ if( trim($settings['ig_es_fromname']) == "" || trim($settings['ig_es_fromemail']) == '' ) {
91
  get_currentuserinfo();
92
  $sender_name = $user_login;
93
  $sender_email = $user_email;
94
  } else {
95
+ $sender_name = stripslashes($settings['ig_es_fromname']);
96
+ $sender_email = $settings['ig_es_fromemail'];
97
  }
98
 
99
+ if( $settings['ig_es_emailtype'] == "WP HTML MAIL" || $settings['ig_es_emailtype'] == "PHP HTML MAIL" ) {
100
  $htmlmail = true;
101
  }
102
 
103
+ if( $settings['ig_es_emailtype'] == "WP HTML MAIL" || $settings['ig_es_emailtype'] == "WP PLAINTEXT MAIL" ) { // check this code
104
  $wpmail = true;
105
  }
106
+
107
  $headers = "From: \"$sender_name\" <$sender_email>\n";
108
  $headers .= "Return-Path: <" . $sender_email . ">\n";
109
  $headers .= "Reply-To: \"" . $sender_name . "\" <" . $sender_email . ">\n";
119
 
120
  $url = home_url('/');
121
  $viewstatus = '<img src="'.$url.'?es=viewstatus&delvid=###DELVIID###" width="1" height="1" />';
122
+
123
  foreach ($crondeliveryqueue as $crondelivery) {
124
  $es_email_id = $crondelivery['es_deliver_emailid'];
125
  $es_deliver_id = $crondelivery['es_deliver_id'];
126
  $subscriber = es_cls_dbquery::es_view_subscriber_search("", $es_email_id);
127
  if(count($subscriber) > 0) {
128
+ $unsublink = $settings['ig_es_unsublink'];
129
  $unsublink = str_replace("###DBID###", $subscriber[0]["es_email_id"], $unsublink);
130
  $unsublink = str_replace("###EMAIL###", $subscriber[0]["es_email_mail"], $unsublink);
131
  $unsublink = str_replace("###GUID###", $subscriber[0]["es_email_guid"], $unsublink);
132
  $unsublink = $unsublink . "&cache=".$cacheid;
133
+
134
+ $unsubtext = stripslashes($settings['ig_es_unsubcontent']);
135
  $unsubtext = str_replace("###LINK###", $unsublink , $unsubtext);
136
+ if ( $settings['ig_es_emailtype'] == "WP HTML MAIL" || $settings['ig_es_emailtype'] == "PHP HTML MAIL" ) {
137
  $unsubtext = '<br><br>' . $unsubtext;
138
  } else {
139
  $unsubtext = '\n\n' . $unsubtext;
141
 
142
  $viewstslink = str_replace("###DELVIID###", $es_deliver_id, $viewstatus);
143
  $content_send = str_replace("###EMAIL###", $subscriber[0]["es_email_mail"], $content);
144
+ $content_send = str_replace("###NAME###", $subscriber[0]["es_email_name"], $content_send);
145
+
146
+ if ( $settings['ig_es_emailtype'] == "WP HTML MAIL" || $settings['ig_es_emailtype'] == "PHP HTML MAIL" ) {
147
  $content_send = nl2br($content_send);
148
  $content_send = str_replace($replacefrom, $replaceto, $content_send);
149
  } else {
163
  if($count % 25 == 0) {
164
  sleep(60); //sleep 60 seconds for every 25 emails.
165
  }
166
+
167
  }
168
 
169
+ $es_cron_adminmail = get_option('ig_es_cron_adminmail');
170
  if($es_cron_adminmail <> "") {
171
+ $adminmail = $settings['ig_es_adminemail'];
172
  $crondate = date('Y-m-d G:i:s');
173
  $count = $count - 1;
174
+ $es_cron_adminmail = str_replace("###COUNT###", $count, $es_cron_adminmail);
175
+ $es_cron_adminmail = str_replace("###DATE###", $crondate, $es_cron_adminmail);
176
+ $es_cron_adminmail = str_replace("###SUBJECT###", $subject, $es_cron_adminmail);
177
+
178
  if($htmlmail) {
179
  $es_cron_adminmail = nl2br($es_cron_adminmail);
180
  } else {
208
  $replacefrom = array("<ul><br />", "</ul><br />", "<li><br />", "</li><br />", "<ol><br />", "</ol><br />", "</h2><br />", "</h1><br />");
209
  $replaceto = array("<ul>", "</ul>", "<li>" ,"</li>", "<ol>", "</ol>", "</h2>", "</h1>");
210
 
211
+ $settings = es_cls_settings::es_get_all_settings();
212
+ $adminmail = $settings['ig_es_adminemail'];
213
+ $es_c_adminmailoption = $settings['ig_es_notifyadmin'];
214
+ $es_c_usermailoption = $settings['ig_es_welcomeemail'];
215
 
216
+ if( trim($settings['ig_es_fromname']) == "" || trim($settings['ig_es_fromemail']) == '' ) {
217
  get_currentuserinfo();
218
  $sender_name = $user_login;
219
  $sender_email = $user_email;
220
  } else {
221
+ $sender_name = stripslashes($settings['ig_es_fromname']);
222
+ $sender_email = $settings['ig_es_fromemail'];
223
  }
224
 
225
+ if( $settings['ig_es_emailtype'] == "WP HTML MAIL" || $settings['ig_es_emailtype'] == "PHP HTML MAIL" ) {
226
  $htmlmail = true;
227
  } else {
228
  $htmlmail = false;
229
  }
230
 
231
+ if( $settings['ig_es_emailtype'] == "WP HTML MAIL" || $settings['ig_es_emailtype'] == "WP PLAINTEXT MAIL" ) {
232
  $wpmail = true;
233
  } else {
234
  $wpmail = false;
249
 
250
  switch($type) {
251
  case 'optin':
252
+ $subject = stripslashes($settings['ig_es_confirmsubject']);
253
+ $content = stripslashes($settings['ig_es_confirmcontent']);
254
  break;
255
 
256
  case 'welcome':
257
+ $subject = stripslashes($settings['ig_es_welcomesubject']);
258
+ $content = stripslashes($settings['ig_es_welcomecontent']);
259
  break;
260
 
261
  case 'newsletter':
279
  $subject = str_replace('###POSTTITLE###', $post_title, $subject);
280
  $post_link = get_permalink($post_id);
281
  $subject = str_replace('###POSTLINK###', $post_link, $subject);
282
+ $post_date = $post->post_modified;
283
 
284
  // Get full post
285
  $post_full = $post->post_content;
296
  }
297
 
298
  if ( (function_exists('has_post_thumbnail')) && (has_post_thumbnail($post_id)) ) {
299
+ $es_post_image_size = get_option( 'ig_es_post_image_size', 'full' );
300
  switch ( $es_post_image_size ) {
301
  case 'full':
302
  $post_thumbnail = get_the_post_thumbnail( $post_id, 'full' );
319
  if($post_link != "") {
320
  $post_link_with_title = "<a href='".$post_link."' target='_blank'>".$post_title."</a>";
321
  $content = str_replace('###POSTLINK-WITHTITLE###', $post_link_with_title, $content);
322
+
323
  $post_link = "<a href='".$post_link."' target='_blank'>".$post_link."</a>";
324
  }
325
 
332
  break;
333
  }
334
 
335
+ if ( $settings['ig_es_emailtype'] == "WP HTML MAIL" || $settings['ig_es_emailtype'] == "PHP HTML MAIL" ) {
336
  $content = str_replace("\r\n", "<br />", $content);
337
  } else {
338
  $content = str_replace("<br />", "\r\n", $content);
359
  case 'optin':
360
  $content_send = str_replace("###NAME###", $name, $content);
361
  $content_send = str_replace("###EMAIL###", $to, $content_send);
362
+ $optinlink = $settings['ig_es_optinlink'];
363
  $optinlink = str_replace("###DBID###", $subscriber["es_email_id"], $optinlink);
364
  $optinlink = str_replace("###EMAIL###", $subscriber["es_email_mail"], $optinlink);
365
  $optinlink = str_replace("###GUID###", $subscriber["es_email_guid"], $optinlink);
373
  $content_send = str_replace("###GROUP###", $group, $content_send);
374
 
375
  // Making an unsubscribe link
376
+ $unsublink = $settings['ig_es_unsublink'];
377
  $unsublink = str_replace("###DBID###", $subscriber["es_email_id"], $unsublink);
378
  $unsublink = str_replace("###EMAIL###", $subscriber["es_email_mail"], $unsublink);
379
  $unsublink = str_replace("###GUID###", $subscriber["es_email_guid"], $unsublink);
380
  $unsublink = $unsublink . "&cache=".$cacheid;
381
  $content_send = str_replace("###LINK###", $unsublink, $content_send);
382
 
383
+ $adminmailsubject = stripslashes($settings['ig_es_admin_new_sub_subject']);
384
+ $adminmailcontant = stripslashes($settings['ig_es_admin_new_sub_content']);
385
  $adminmailcontant = str_replace("###NAME###", $name , $adminmailcontant);
386
  $adminmailcontant = str_replace("###EMAIL###", $to, $adminmailcontant);
387
 
388
+ if ( $settings['ig_es_emailtype'] == "WP HTML MAIL" || $settings['ig_es_emailtype'] == "PHP HTML MAIL" ) {
389
  $adminmailcontant = nl2br($adminmailcontant);
390
  $content_send = str_replace($replacefrom, $replaceto, $content_send);
391
  } else {
396
 
397
  case 'newsletter':
398
  if($mailsenttype != "Cron") { // Cron mail not sending by this method
399
+ $unsublink = $settings['ig_es_unsublink'];
400
  $unsublink = str_replace("###DBID###", $subscriber["es_email_id"], $unsublink);
401
  $unsublink = str_replace("###EMAIL###", $subscriber["es_email_mail"], $unsublink);
402
  $unsublink = str_replace("###GUID###", $subscriber["es_email_guid"], $unsublink);
403
  $unsublink = $unsublink . "&cache=".$cacheid;
404
 
405
+ $unsubtext = stripslashes($settings['ig_es_unsubcontent']);
406
  $unsubtext = str_replace("###LINK###", $unsublink , $unsubtext);
407
+ if ( $settings['ig_es_emailtype'] == "WP HTML MAIL" || $settings['ig_es_emailtype'] == "PHP HTML MAIL" ) {
408
  $unsubtext = '<br><br>' . $unsubtext;
409
  } else {
410
  $unsubtext = '\n\n' . $unsubtext;
413
  $returnid = es_cls_delivery::es_delivery_ins($sendguid, $subscriber["es_email_id"], $subscriber["es_email_mail"], $mailsenttype);
414
  $viewstslink = str_replace("###DELVIID###", $returnid, $viewstatus);
415
  $content_send = str_replace("###EMAIL###", $subscriber["es_email_mail"], $content);
416
+ $content_send = str_replace("###NAME###", $subscriber["es_email_name"], $content_send);
417
+
418
+ if ( $settings['ig_es_emailtype'] == "WP HTML MAIL" || $settings['ig_es_emailtype'] == "PHP HTML MAIL" ) {
419
  $content_send = nl2br($content_send);
420
  $content_send = str_replace($replacefrom, $replaceto, $content_send);
421
  } else {
430
  case 'notification': // notification mail to subscribers
431
  if($mailsenttype != "Cron") { // Cron mail not sending by this method
432
 
433
+ $unsublink = $settings['ig_es_unsublink'];
434
  $unsublink = str_replace("###DBID###", $subscriber["es_email_id"], $unsublink);
435
  $unsublink = str_replace("###EMAIL###", $subscriber["es_email_mail"], $unsublink);
436
  $unsublink = str_replace("###GUID###", $subscriber["es_email_guid"], $unsublink);
437
  $unsublink = $unsublink . "&cache=".$cacheid;
438
+ $unsubtext = stripslashes($settings['ig_es_unsubcontent']);
439
  $unsubtext = str_replace("###LINK###", $unsublink , $unsubtext);
440
+ if ( $settings['ig_es_emailtype'] == "WP HTML MAIL" || $settings['ig_es_emailtype'] == "PHP HTML MAIL" ) {
441
  $unsubtext = '<br><br>' . $unsubtext;
442
  } else {
443
  $unsubtext = '\n\n' . $unsubtext;
447
  $viewstslink = str_replace("###DELVIID###", $returnid, $viewstatus);
448
 
449
  $content_send = str_replace("###EMAIL###", $subscriber["es_email_mail"], $content);
450
+ $content_send = str_replace("###NAME###", $subscriber["es_email_name"], $content_send);
451
+
452
+ if ( $settings['ig_es_emailtype'] == "WP HTML MAIL" || $settings['ig_es_emailtype'] == "PHP HTML MAIL" ) {
453
  $content_send = nl2br($content_send);
454
  $content_send = str_replace($replacefrom, $replaceto, $content_send);
455
  } else {
484
  if($es_c_usermailoption == "YES") {
485
  mail($to ,$subject, $content_send . $unsubtext . $viewstslink, $headers);
486
  }
487
+ } else {
488
+ if($mailsenttype != "Cron") { // Cron mail not sending by this method
489
  mail($to ,$subject, $content_send . $unsubtext . $viewstslink, $headers);
490
  }
491
  }
504
  es_cls_sentmail::es_sentmail_ups($sendguid, $subject);
505
  if($adminmail != "") {
506
 
507
+ $subject = get_option('ig_es_sentreport_subject', 'nosubjectexists');
508
  if ( $subject == "" || $subject == "nosubjectexists") {
509
  $subject = es_cls_common::es_sent_report_subject();
510
  }
514
  }
515
 
516
  if($htmlmail) {
517
+ $reportmail = get_option('ig_es_sentreport', 'nooptionexists');
518
  if ( $reportmail == "" || $reportmail == "nooptionexists") {
519
  $reportmail = es_cls_common::es_sent_report_html();
520
  }
521
  $reportmail = nl2br($reportmail);
522
  } else {
523
+ $reportmail = get_option('ig_es_sentreport', 'nooptionexists');
524
  if ( $reportmail == "" || $reportmail == "nooptionexists") {
525
  $reportmail = es_cls_common::es_sent_report_plain();
526
  }
528
  $reportmail = str_replace("<br>", "\r\n", $reportmail);
529
  }
530
  $enddate = date('Y-m-d G:i:s');
531
+ $reportmail = str_replace("###COUNT###", $count, $reportmail);
532
+ $reportmail = str_replace("###UNIQUE###", $sendguid, $reportmail);
533
+ $reportmail = str_replace("###STARTTIME###", $currentdate, $reportmail);
534
  $reportmail = str_replace("###ENDTIME###", $enddate, $reportmail);
535
  if($wpmail) {
536
  wp_mail($adminmail, $subject, $reportmail, $headers);
classes/es-stater.php CHANGED
@@ -2,7 +2,7 @@
2
 
3
  // Exit if accessed directly
4
  if ( ! defined( 'ABSPATH' ) ) {
5
- exit;
6
  }
7
 
8
  require_once(ES_DIR.'classes'.DIRECTORY_SEPARATOR.'es-register.php');
2
 
3
  // Exit if accessed directly
4
  if ( ! defined( 'ABSPATH' ) ) {
5
+ exit;
6
  }
7
 
8
  require_once(ES_DIR.'classes'.DIRECTORY_SEPARATOR.'es-register.php');
compose/compose.js CHANGED
@@ -1,10 +1,7 @@
1
  function _es_submit() {
2
- if(document.es_form.es_set_name.value=="") {
3
  alert(es_compose_notices.es_configuration_name);
4
- document.es_form.es_set_name.focus();
5
- return false;
6
- } else if(document.es_form.es_set_templid.value=="") {
7
- alert(es_compose_notices.es_configuration_template);
8
  return false;
9
  }
10
  }
1
  function _es_submit() {
2
+ if(document.es_form.es_templ_heading.value=="") {
3
  alert(es_compose_notices.es_configuration_name);
4
+ document.es_form.es_templ_heading.focus();
 
 
 
5
  return false;
6
  }
7
  }
cron/cron-add.php DELETED
@@ -1,133 +0,0 @@
1
- <?php
2
-
3
- // Exit if accessed directly
4
- if ( ! defined( 'ABSPATH' ) ) {
5
- exit;
6
- }
7
-
8
- ?>
9
-
10
- <div class="wrap">
11
- <?php
12
- $es_errors = array();
13
- $es_success = '';
14
- $es_error_found = FALSE;
15
- $cron_adminmail = "";
16
-
17
- // Form submitted, check the data
18
- if (isset($_POST['es_form_submit']) && $_POST['es_form_submit'] == 'yes') {
19
- // Just security thingy that wordpress offers us
20
- check_admin_referer('es_form_add');
21
-
22
- $es_cron_mailcount = isset($_POST['es_cron_mailcount']) ? $_POST['es_cron_mailcount'] : '';
23
- if($es_cron_mailcount == "0" && strlen ($es_cron_mailcount) > 0) {
24
- $es_errors[] = __('Please enter valid mail count.', 'email-subscribers');
25
- $es_error_found = TRUE;
26
- }
27
-
28
- $es_cron_adminmail = isset($_POST['es_cron_adminmail']) ? $_POST['es_cron_adminmail'] : '';
29
-
30
- // No errors found, we can add this Group to the table
31
- if ($es_error_found == FALSE) {
32
- update_option('es_cron_mailcount', $es_cron_mailcount );
33
- update_option('es_cron_adminmail', $es_cron_adminmail );
34
- $es_success = __( 'Successfully updated.', ES_TDOMAIN );
35
- }
36
- }
37
-
38
- $es_cron_url = get_option('es_c_cronurl', 'nocronurl');
39
- if($es_cron_url == "nocronurl") {
40
- $guid = es_cls_common::es_generate_guid(60);
41
- $home_url = home_url('/');
42
- $cronurl = $home_url . "?es=cron&guid=". $guid;
43
- add_option('es_c_cronurl', $cronurl);
44
- $es_cron_url = get_option('es_c_cronurl');
45
- }
46
-
47
- $es_cron_mailcount = get_option('es_cron_mailcount', '0');
48
- if($es_cron_mailcount == "0") {
49
- add_option('es_cron_mailcount', "50");
50
- $es_cron_mailcount = get_option('es_cron_mailcount');
51
- }
52
-
53
- $es_cron_adminmail = get_option('es_cron_adminmail', '');
54
- if($es_cron_adminmail == "") {
55
- add_option('es_cron_adminmail', "Hi Admin, \r\n\r\nCron URL has been triggered successfully on ###DATE### for the email ###SUBJECT###. And it sent email to ###COUNT### recipient. \r\n\r\nThank You");
56
- $es_cron_adminmail = get_option('es_cron_adminmail');
57
- }
58
-
59
- if ($es_error_found == TRUE && isset($es_errors[0]) == TRUE) {
60
- ?><div class="error fade"><p><strong><?php echo $es_errors[0]; ?></strong></p></div><?php
61
- }
62
- if ($es_error_found == FALSE && strlen($es_success) > 0) {
63
- ?>
64
- <div class="notice notice-success is-dismissible">
65
- <p><strong><?php echo $es_success; ?></strong></p>
66
- </div>
67
- <?php
68
- }
69
- ?>
70
-
71
- <style>
72
- .form-table th {
73
- width: 50%;
74
- }
75
- </style>
76
-
77
- <div class="wrap">
78
- <h2>
79
- <?php echo __( 'Cron Settings', ES_TDOMAIN ); ?>
80
- <a class="add-new-h2" target="_blank" type="button" href="<?php echo ES_FAV; ?>"><?php echo __( 'Help', ES_TDOMAIN ); ?></a>
81
- </h2>
82
- <form name="es_form" method="post" action="#" onsubmit="return _es_submit()">
83
- <table class="form-table">
84
- <tbody>
85
- <tr>
86
- <th scope="row">
87
- <label for="tag-image"><?php echo __( 'Cron job URL', ES_TDOMAIN ); ?>
88
- <p class="description"><?php echo __( 'This is your Cron Job URL. It is a readonly field and you are advised not to modify it.', ES_TDOMAIN ); ?></p>
89
- </label>
90
- </th>
91
- <td>
92
- <input type="text" name="es_cron_url" id="es_cron_url" value="<?php echo $es_cron_url; ?>" size="68" readonly />
93
- </td>
94
- </tr>
95
- <tr>
96
- <th scope="row">
97
- <label for="tag-image"><?php echo __( 'Email Count', ES_TDOMAIN ); ?>
98
- <p class="description"><?php echo __( 'Number of emails that you want to trigger per hour.', ES_TDOMAIN ); ?></p>
99
- </label>
100
- </th>
101
- <td>
102
- <input type="number" name="es_cron_mailcount" id="es_cron_mailcount" value="<?php echo $es_cron_mailcount; ?>" maxlength="3" />
103
- <p class="description"><?php echo __( '(Your web host has limits. We suggest 50 emails per hour to be safe)', ES_TDOMAIN ) ?></p>
104
- </td>
105
- </tr>
106
- <tr>
107
- <th scope="row">
108
- <label for="tag-image"><?php echo __( 'Admin Report', ES_TDOMAIN ); ?>
109
- <p class="description"><?php echo __( 'Email to admin whenever cron URL is triggered from your server. (Keywords: ###DATE###, ###SUBJECT###, ###COUNT###)', ES_TDOMAIN ); ?></p>
110
- </label>
111
- </th>
112
- <td>
113
- <textarea size="100" id="es_cron_adminmail" rows="7" cols="72" name="es_cron_adminmail"><?php echo esc_html(stripslashes($es_cron_adminmail)); ?></textarea>
114
- </td>
115
- </tr>
116
- </tbody>
117
- </table>
118
- <input type="hidden" name="es_form_submit" value="yes"/>
119
- <p class="submit">
120
- <input type="submit" name="publish" lang="publish" class="button-primary" value="<?php echo __( 'Save', ES_TDOMAIN ); ?>" />
121
- </p>
122
- <?php wp_nonce_field('es_form_add'); ?>
123
- </form>
124
- </div>
125
- <div class="tool-box">
126
- <h3><?php echo __( 'What is Cron (auto emails) and how to setup Cron Job?', ES_TDOMAIN ); ?></h3>
127
- <li><?php echo __( '<a target="_blank" href="http://www.icegram.com/documentation/es-how-to-schedule-cron-emails/">What is Cron?</a>', ES_TDOMAIN ); ?></li>
128
- <li><?php echo __( '<a target="_blank" href="http://www.icegram.com/documentation/es-how-to-schedule-cron-emails-in-parallels-plesk/">Setup cron job in Plesk</a>', ES_TDOMAIN ); ?></li>
129
- <li><?php echo __( '<a target="_blank" href="http://www.icegram.com/documentation/es-how-to-schedule-cron-emails-in-cpanel/">Setup cron job in cPanal</a>', ES_TDOMAIN ); ?></li>
130
- <li><?php echo __( '<a target="_blank" href="http://www.icegram.com/documentation/es-what-to-do-if-hosting-doesnt-support-cron-jobs/">Hosting does not support cron jobs?</a>', ES_TDOMAIN ); ?></li><br>
131
- </div>
132
- <p class="description"><?php echo ES_OFFICIAL; ?></p>
133
- </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
cron/cron.js DELETED
@@ -1,11 +0,0 @@
1
- function _es_submit() {
2
- if(document.es_form.es_cron_mailcount.value == "") {
3
- alert(es_cron_notices.es_cron_number);
4
- document.es_form.es_cron_mailcount.focus();
5
- return false;
6
- } else if(isNaN(document.es_form.es_cron_mailcount.value)) {
7
- alert(es_cron_notices.es_cron_input_type);
8
- document.es_form.es_cron_mailcount.focus();
9
- return false;
10
- }
11
- }
 
 
 
 
 
 
 
 
 
 
 
email-subscribers.php CHANGED
@@ -3,11 +3,11 @@
3
  * Plugin Name: Email Subscribers & Newsletters
4
  * Plugin URI: http://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: 3.2.11
7
  * Author: Icegram
8
  * Author URI: http://www.icegram.com/
9
  * Requires at least: 3.4
10
- * Tested up to: 4.7.5
11
  * Text Domain: email-subscribers
12
  * Domain Path: /languages/
13
  * License: GPLv3
@@ -38,6 +38,7 @@ add_action( 'admin_init', array( 'es_cls_registerhook', 'dismiss_admin_notice' )
38
  add_shortcode( 'email-subscribers', 'es_shortcode' );
39
 
40
  add_action( 'wp_ajax_es_klawoo_subscribe', array( 'es_cls_registerhook', 'klawoo_subscribe' ) );
 
41
 
42
  require_once(dirname(__FILE__).DIRECTORY_SEPARATOR.'classes'.DIRECTORY_SEPARATOR.'es-directly.php');
43
 
3
  * Plugin Name: Email Subscribers & Newsletters
4
  * Plugin URI: http://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: 3.3
7
  * Author: Icegram
8
  * Author URI: http://www.icegram.com/
9
  * Requires at least: 3.4
10
+ * Tested up to: 4.8
11
  * Text Domain: email-subscribers
12
  * Domain Path: /languages/
13
  * License: GPLv3
38
  add_shortcode( 'email-subscribers', 'es_shortcode' );
39
 
40
  add_action( 'wp_ajax_es_klawoo_subscribe', array( 'es_cls_registerhook', 'klawoo_subscribe' ) );
41
+ add_action( 'wp_ajax_es_submit_survey', array( 'es_cls_registerhook', 'es_submit_survey' ) );
42
 
43
  require_once(dirname(__FILE__).DIRECTORY_SEPARATOR.'classes'.DIRECTORY_SEPARATOR.'es-directly.php');
44
 
help/help.php CHANGED
@@ -64,7 +64,7 @@ if ( ! defined( 'ABSPATH' ) ) {
64
  </div>
65
  </div>
66
  <div class="wrap" style="text-align:right;">
67
- <?php echo sprintf(__( 'Like Email Subscribers? Please consider %s.', ES_TDOMAIN ), '<a href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=CPTHCDC382KVA" target="_blank">' . __( 'contributing to us', ES_TDOMAIN ) .'</a>' ); ?>
68
  </div>
69
 
70
  <script type="text/javascript">
@@ -136,7 +136,7 @@ if ( ! defined( 'ABSPATH' ) ) {
136
  <?php echo sprintf(__( '%s', ES_TDOMAIN ), '<a href="http://www.icegram.com/documentation/es-how-to-add-unsubscribe-link-in-emails/" target="_blank">' . __( 'How to add Unsubscribe link in emails?', ES_TDOMAIN ) . '</a>' ); ?>
137
  </li>
138
  <li class="es_faq">
139
- <?php echo sprintf(__( '%s', ES_TDOMAIN ), '<a href="http://www.icegram.com/documentation/es-what-are-static-templates-and-dynamic-templates/" target="_blank">' . __( 'What are Static Templates and Dynamic Templates?', ES_TDOMAIN ) . '</a>' ); ?>
140
  </li>
141
  <li class="es_faq">
142
  <?php echo sprintf(__( '%s', ES_TDOMAIN ), '<a href="http://www.icegram.com/documentation/es-how-to-compose-and-send-static-newsletter-mails/" target="_blank">' . __( 'How to Compose and Send Newsletter Emails?', ES_TDOMAIN ) . '</a>' ); ?>
64
  </div>
65
  </div>
66
  <div class="wrap" style="text-align:right;">
67
+ <?php echo sprintf(__( 'Like Email Subscribers? If yes, then consider %s to support further developments.', ES_TDOMAIN ), '<a href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=CPTHCDC382KVA" target="_blank">' . __( 'donating to us', ES_TDOMAIN ) .'</a>' ); ?>
68
  </div>
69
 
70
  <script type="text/javascript">
136
  <?php echo sprintf(__( '%s', ES_TDOMAIN ), '<a href="http://www.icegram.com/documentation/es-how-to-add-unsubscribe-link-in-emails/" target="_blank">' . __( 'How to add Unsubscribe link in emails?', ES_TDOMAIN ) . '</a>' ); ?>
137
  </li>
138
  <li class="es_faq">
139
+ <?php echo sprintf(__( '%s', ES_TDOMAIN ), '<a href="http://www.icegram.com/documentation/es-what-are-static-templates-and-dynamic-templates/" target="_blank">' . __( 'What are the keywords available in the Post Notification template?', ES_TDOMAIN ) . '</a>' ); ?>
140
  </li>
141
  <li class="es_faq">
142
  <?php echo sprintf(__( '%s', ES_TDOMAIN ), '<a href="http://www.icegram.com/documentation/es-how-to-compose-and-send-static-newsletter-mails/" target="_blank">' . __( 'How to Compose and Send Newsletter Emails?', ES_TDOMAIN ) . '</a>' ); ?>
images/es-growth-rocket.png ADDED
Binary file
images/icon-128x128.png ADDED
Binary file
images/spinner-2x.gif ADDED
Binary file
job/es-cron.php CHANGED
@@ -2,12 +2,12 @@
2
 
3
  // Exit if accessed directly
4
  if ( ! defined( 'ABSPATH' ) ) {
5
- exit;
6
  }
7
 
8
  if( (isset($_GET['es'])) && ($_GET['es'] == "cron") ) {
9
 
10
- $es_c_cronguid = isset($_GET['guid']) ? $_GET['guid'] : '';
11
  $es_c_cronguid = trim($es_c_cronguid);
12
 
13
  if($es_c_cronguid != "") {
@@ -16,8 +16,8 @@ if( (isset($_GET['es'])) && ($_GET['es'] == "cron") ) {
16
  $security2 = strlen($es_c_cronguid_noslash);
17
  if($security1 == 34 && $security2 == 30) {
18
  if (!preg_match('/[^a-z]/', $es_c_cronguid_noslash)) {
19
- $es_c_cronurl = get_option('es_c_cronurl');
20
- $es_c_croncount = get_option('es_cron_mailcount');
21
  parse_str($es_c_cronurl, $output);
22
  if($es_c_cronguid == $output['guid']) {
23
  if(!is_numeric($es_c_croncount)) {
2
 
3
  // Exit if accessed directly
4
  if ( ! defined( 'ABSPATH' ) ) {
5
+ exit;
6
  }
7
 
8
  if( (isset($_GET['es'])) && ($_GET['es'] == "cron") ) {
9
 
10
+ $es_c_cronguid = isset($_GET['guid']) ? $_GET['guid'] : '';
11
  $es_c_cronguid = trim($es_c_cronguid);
12
 
13
  if($es_c_cronguid != "") {
16
  $security2 = strlen($es_c_cronguid_noslash);
17
  if($security1 == 34 && $security2 == 30) {
18
  if (!preg_match('/[^a-z]/', $es_c_cronguid_noslash)) {
19
+ $es_c_cronurl = get_option('ig_es_cronurl');
20
+ $es_c_croncount = get_option('ig_es_cron_mailcount');
21
  parse_str($es_c_cronurl, $output);
22
  if($es_c_cronguid == $output['guid']) {
23
  if(!is_numeric($es_c_croncount)) {
job/es-optin.php CHANGED
@@ -2,7 +2,7 @@
2
 
3
  // Exit if accessed directly
4
  if ( ! defined( 'ABSPATH' ) ) {
5
- exit;
6
  }
7
 
8
  if( (isset($_GET['es'])) && ($_GET['es'] == "optin") ) {
@@ -40,8 +40,7 @@ if( (isset($_GET['es'])) && ($_GET['es'] == "optin") ) {
40
  }
41
 
42
  // Load default message
43
- $data = array();
44
- $data = es_cls_settings::es_setting_select(1);
45
 
46
  if($noerror) {
47
  $resultcheck = es_cls_dbquery::es_view_subscriber_jobstatus("Confirmed", $form['db'], $form['guid'], $form['email']);
@@ -49,20 +48,21 @@ if( (isset($_GET['es'])) && ($_GET['es'] == "optin") ) {
49
  $result = es_cls_dbquery::es_view_subscriber_job("Confirmed", $form['db'], $form['guid'], $form['email']);
50
  if($result) {
51
  es_cls_sendmail::es_prepare_welcome($form['db']);
52
- $message = esc_html(stripslashes($data['es_c_subhtml']));
 
53
  $message = str_replace("\r\n", "<br />", $message);
54
  } else {
55
- $message = esc_html(stripslashes($data['es_c_message2']));
56
  }
57
  if($message == "") {
58
  $message = __( 'Oops.. We are getting some technical error. Please try again or contact admin.', ES_TDOMAIN );
59
  }
60
  } else {
61
  $message = __( 'This email address has already been confirmed.', ES_TDOMAIN );
62
- }
63
  echo $message;
64
  } else {
65
- $message = esc_html(stripslashes($data['es_c_message2']));
66
  $message = str_replace("\r\n", "<br />", $message);
67
  if($message == "") {
68
  $message = __( 'Oops.. We are getting some technical error. Please try again or contact admin.', ES_TDOMAIN );
2
 
3
  // Exit if accessed directly
4
  if ( ! defined( 'ABSPATH' ) ) {
5
+ exit;
6
  }
7
 
8
  if( (isset($_GET['es'])) && ($_GET['es'] == "optin") ) {
40
  }
41
 
42
  // Load default message
43
+ $es_c_message2 = get_option( 'ig_es_unsuberror' );
 
44
 
45
  if($noerror) {
46
  $resultcheck = es_cls_dbquery::es_view_subscriber_jobstatus("Confirmed", $form['db'], $form['guid'], $form['email']);
48
  $result = es_cls_dbquery::es_view_subscriber_job("Confirmed", $form['db'], $form['guid'], $form['email']);
49
  if($result) {
50
  es_cls_sendmail::es_prepare_welcome($form['db']);
51
+ $es_c_subhtml = get_option( 'ig_es_successmsg' );
52
+ $message = esc_html(stripslashes($es_c_subhtml));
53
  $message = str_replace("\r\n", "<br />", $message);
54
  } else {
55
+ $message = esc_html(stripslashes($es_c_message2));
56
  }
57
  if($message == "") {
58
  $message = __( 'Oops.. We are getting some technical error. Please try again or contact admin.', ES_TDOMAIN );
59
  }
60
  } else {
61
  $message = __( 'This email address has already been confirmed.', ES_TDOMAIN );
62
+ }
63
  echo $message;
64
  } else {
65
+ $message = esc_html(stripslashes($es_c_message2));
66
  $message = str_replace("\r\n", "<br />", $message);
67
  if($message == "") {
68
  $message = __( 'Oops.. We are getting some technical error. Please try again or contact admin.', ES_TDOMAIN );
job/es-subscribe.php CHANGED
@@ -2,7 +2,7 @@
2
 
3
  // Exit if accessed directly
4
  if ( ! defined( 'ABSPATH' ) ) {
5
- exit;
6
  }
7
 
8
  if( (isset($_GET['es'])) && ($_GET['es'] == "subscribe") ) {
@@ -45,8 +45,9 @@ if( (isset($_GET['es'])) && ($_GET['es'] == "subscribe") ) {
45
  $form['es_email_mail'] = $es_email;
46
  $form['es_email_group'] = $es_group;
47
 
48
- $data = es_cls_settings::es_setting_select(1);
49
- if( $data['es_c_optinoption'] == "Double Opt In" ) {
 
50
  $form['es_email_status'] = "Unconfirmed";
51
  } else {
52
  $form['es_email_status'] = "Single Opt In";
@@ -56,11 +57,12 @@ if( (isset($_GET['es'])) && ($_GET['es'] == "subscribe") ) {
56
  if($action == "sus") {
57
  $subscribers = array();
58
  $subscribers = es_cls_dbquery::es_view_subscriber_one($es_email,$es_group);
59
- if( $data['es_c_optinoption'] == "Double Opt In" ) {
60
  es_cls_sendmail::es_sendmail("optin", $template = 0, $subscribers, "optin", 0);
61
  echo "subscribed-pending-doubleoptin";
62
  } else {
63
- if ( $data['es_c_usermailoption'] == "YES" ) {
 
64
  es_cls_sendmail::es_sendmail("welcome", $template = 0, $subscribers, "welcome", 0);
65
  }
66
  echo "subscribed-successfully";
2
 
3
  // Exit if accessed directly
4
  if ( ! defined( 'ABSPATH' ) ) {
5
+ exit;
6
  }
7
 
8
  if( (isset($_GET['es'])) && ($_GET['es'] == "subscribe") ) {
45
  $form['es_email_mail'] = $es_email;
46
  $form['es_email_group'] = $es_group;
47
 
48
+ $es_optintype = get_option( 'ig_es_optintype' );
49
+
50
+ if( $es_optintype == "Double Opt In" ) {
51
  $form['es_email_status'] = "Unconfirmed";
52
  } else {
53
  $form['es_email_status'] = "Single Opt In";
57
  if($action == "sus") {
58
  $subscribers = array();
59
  $subscribers = es_cls_dbquery::es_view_subscriber_one($es_email,$es_group);
60
+ if( $es_optintype == "Double Opt In" ) {
61
  es_cls_sendmail::es_sendmail("optin", $template = 0, $subscribers, "optin", 0);
62
  echo "subscribed-pending-doubleoptin";
63
  } else {
64
+ $es_c_usermailoption = get_option( 'ig_es_welcomeemail' );
65
+ if ( $es_c_usermailoption == "YES" ) {
66
  es_cls_sendmail::es_sendmail("welcome", $template = 0, $subscribers, "welcome", 0);
67
  }
68
  echo "subscribed-successfully";
job/es-unsubscribe.php CHANGED
@@ -2,7 +2,7 @@
2
 
3
  // Exit if accessed directly
4
  if ( ! defined( 'ABSPATH' ) ) {
5
- exit;
6
  }
7
 
8
  if( (isset($_GET['es'])) && ($_GET['es'] == "unsubscribe") ) {
@@ -40,23 +40,22 @@ if( (isset($_GET['es'])) && ($_GET['es'] == "unsubscribe") ) {
40
  }
41
 
42
  // Load default message
43
- $data = array();
44
- $data = es_cls_settings::es_setting_select(1);
45
-
46
  if($noerror) {
47
  $result = es_cls_dbquery::es_view_subscriber_job("Unsubscribed", $form['db'], $form['guid'], $form['email']);
48
  if($result) {
49
- $message = esc_html(stripslashes($data['es_c_unsubhtml']));
 
50
  $message = str_replace("\r\n", "<br />", $message);
51
  } else {
52
- $message = esc_html(stripslashes($data['es_c_message2']));
53
  }
54
  if($message == "") {
55
  $message = __( 'Oops.. We are getting some technical error. Please try again or contact admin.', ES_TDOMAIN );
56
  }
57
  echo $message;
58
  } else {
59
- $message = esc_html(stripslashes($data['es_c_message2']));
60
  $message = str_replace("\r\n", "<br />", $message);
61
  if($message == "") {
62
  $message = __( 'Oops.. We are getting some technical error. Please try again or contact admin.', ES_TDOMAIN );
2
 
3
  // Exit if accessed directly
4
  if ( ! defined( 'ABSPATH' ) ) {
5
+ exit;
6
  }
7
 
8
  if( (isset($_GET['es'])) && ($_GET['es'] == "unsubscribe") ) {
40
  }
41
 
42
  // Load default message
43
+ $es_c_message2 = get_option( 'ig_es_unsuberror' );
 
 
44
  if($noerror) {
45
  $result = es_cls_dbquery::es_view_subscriber_job("Unsubscribed", $form['db'], $form['guid'], $form['email']);
46
  if($result) {
47
+ $es_c_unsubhtml = get_option( 'ig_es_unsubtext' );
48
+ $message = esc_html(stripslashes($es_c_unsubhtml));
49
  $message = str_replace("\r\n", "<br />", $message);
50
  } else {
51
+ $message = esc_html(stripslashes($es_c_message2));
52
  }
53
  if($message == "") {
54
  $message = __( 'Oops.. We are getting some technical error. Please try again or contact admin.', ES_TDOMAIN );
55
  }
56
  echo $message;
57
  } else {
58
+ $message = esc_html(stripslashes($es_c_message2));
59
  $message = str_replace("\r\n", "<br />", $message);
60
  if($message == "") {
61
  $message = __( 'Oops.. We are getting some technical error. Please try again or contact admin.', ES_TDOMAIN );
languages/email-subscribers.pot CHANGED
@@ -2,13 +2,13 @@
2
  # This file is distributed under the same license as the Email Subscribers & Newsletters package.
3
  msgid ""
4
  msgstr ""
5
- "Project-Id-Version: Email Subscribers & Newsletters 3.2.11\n"
6
  "Report-Msgid-Bugs-To: http://www.storeapps.org/support/contact-us/\n"
7
- "POT-Creation-Date: 2017-06-05 08:14:43+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=UTF-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
11
- "PO-Revision-Date: Mon, 05 Jun 2017 13:44:43 +0530\n"
12
  "Last-Translator: Ratnakar Dubey <ratnakar.dubey@storeapps.org>\n"
13
  "Language-Team: StoreApps <support@storeapps.org>\n"
14
 
@@ -64,235 +64,221 @@ msgstr ""
64
  msgid "<span style=\"color:#993399;\">Immediately</span>"
65
  msgstr ""
66
 
67
- #: classes/es-loadwidget.php:28 classes/es-register.php:566
68
  #: subscribers/view-subscriber-show.php:361
69
  #: subscribers/view-subscriber-show.php:374
70
  msgid "Name"
71
  msgstr ""
72
 
73
- #: classes/es-loadwidget.php:33 classes/es-register.php:571
74
  msgid "Email *"
75
  msgstr ""
76
 
77
- #: classes/es-loadwidget.php:38 classes/es-register.php:576
78
  msgid "Subscribe"
79
  msgstr ""
80
 
81
- #: classes/es-register.php:144 classes/es-register.php:145
 
82
  msgid "Email Subscribers"
83
  msgstr ""
84
 
85
- #: classes/es-register.php:147 classes/es-register.php:148
86
  #: subscribers/view-subscriber-show.php:241
87
  msgid "Subscribers"
88
  msgstr ""
89
 
90
- #: classes/es-register.php:150 classes/es-register.php:151
91
  #: compose/compose-show.php:64
92
  msgid "Compose"
93
  msgstr ""
94
 
95
- #: classes/es-register.php:153 classes/es-register.php:154
96
  #: notification/notification-show.php:52
97
  msgid "Post Notifications"
98
  msgstr ""
99
 
100
- #: classes/es-register.php:156 classes/es-register.php:157
101
- #: sendmail/sendmail.php:93
102
  msgid "Newsletters"
103
  msgstr ""
104
 
105
- #: classes/es-register.php:159 classes/es-register.php:160
106
- #: cron/cron-add.php:79
107
- msgid "Cron Settings"
108
  msgstr ""
109
 
110
- #: classes/es-register.php:162 classes/es-register.php:163
111
- #: settings/settings-edit.php:197
112
- msgid "Email Settings"
113
- msgstr ""
114
-
115
- #: classes/es-register.php:165 classes/es-register.php:166
116
- #: roles/roles-add.php:110
117
- msgid "User Roles"
118
- msgstr ""
119
-
120
- #: classes/es-register.php:168 classes/es-register.php:169
121
  #: sentmail/sentmail-show.php:96
122
  msgid "Reports"
123
  msgstr ""
124
 
125
- #: classes/es-register.php:171
126
  msgid "Help & Info"
127
  msgstr ""
128
 
129
- #: classes/es-register.php:172
130
  msgid "<span style=\"color:#f18500;font-weight:bolder;\">Help & Info"
131
  msgstr ""
132
 
133
- #: classes/es-register.php:183
134
  msgctxt "view-subscriber-enhanced-select"
135
  msgid "Please enter subscriber email address."
136
  msgstr ""
137
 
138
- #: classes/es-register.php:184
139
  msgctxt "view-subscriber-enhanced-select"
140
  msgid "Please select subscriber email status."
141
  msgstr ""
142
 
143
- #: classes/es-register.php:185
144
  msgctxt "view-subscriber-enhanced-select"
145
  msgid "Please select or create group for this subscriber."
146
  msgstr ""
147
 
148
- #: classes/es-register.php:186
149
  msgctxt "view-subscriber-enhanced-select"
150
  msgid "Do you want to delete this record?"
151
  msgstr ""
152
 
153
- #: classes/es-register.php:187
154
  msgctxt "view-subscriber-enhanced-select"
155
  msgid "Please select the bulk action."
156
  msgstr ""
157
 
158
- #: classes/es-register.php:188
159
  msgctxt "view-subscriber-enhanced-select"
160
  msgid "Are you sure you want to delete selected records?"
161
  msgstr ""
162
 
163
- #: classes/es-register.php:189
164
  msgctxt "view-subscriber-enhanced-select"
165
  msgid ""
166
  "Do you want to resend confirmation email? \\nAlso please note, this will "
167
  "update subscriber current status to 'Unconfirmed'."
168
  msgstr ""
169
 
170
- #: classes/es-register.php:190
171
  msgctxt "view-subscriber-enhanced-select"
172
  msgid "Please select new subscriber group."
173
  msgstr ""
174
 
175
- #: classes/es-register.php:191
176
  msgctxt "view-subscriber-enhanced-select"
177
  msgid "Please select new status for subscribers"
178
  msgstr ""
179
 
180
- #: classes/es-register.php:192
181
  msgctxt "view-subscriber-enhanced-select"
182
  msgid "Do you want to update subscribers group?"
183
  msgstr ""
184
 
185
- #: classes/es-register.php:193
186
  msgctxt "view-subscriber-enhanced-select"
187
  msgid "Do you want to update subscribers status?"
188
  msgstr ""
189
 
190
- #: classes/es-register.php:194
191
  msgctxt "view-subscriber-enhanced-select"
192
  msgid ""
193
  "Please select only csv file. Please check official website for csv "
194
  "structure.."
195
  msgstr ""
196
 
197
- #: classes/es-register.php:202
198
- msgctxt "compose-enhanced-select"
199
- msgid "Please enter name for configuration."
200
- msgstr ""
201
-
202
- #: classes/es-register.php:203
203
  msgctxt "compose-enhanced-select"
204
- msgid "Please select template for this configuration."
205
  msgstr ""
206
 
207
- #: classes/es-register.php:204
208
  msgctxt "compose-enhanced-select"
209
  msgid "Do you want to delete this record?"
210
  msgstr ""
211
 
212
- #: classes/es-register.php:212
213
  msgctxt "notification-enhanced-select"
214
  msgid "Please select subscribers group."
215
  msgstr ""
216
 
217
- #: classes/es-register.php:213
218
  msgctxt "notification-enhanced-select"
219
  msgid ""
220
  "Please select notification mail subject. Use compose menu to create new."
221
  msgstr ""
222
 
223
- #: classes/es-register.php:214
224
  msgctxt "notification-enhanced-select"
225
  msgid "Please select notification status."
226
  msgstr ""
227
 
228
- #: classes/es-register.php:215
229
  msgctxt "notification-enhanced-select"
230
  msgid "Do you want to delete this record?"
231
  msgstr ""
232
 
233
- #: classes/es-register.php:223
234
  msgctxt "sendmail-enhanced-select"
235
  msgid "Please select your mail subject."
236
  msgstr ""
237
 
238
- #: classes/es-register.php:224
239
  msgctxt "sendmail-enhanced-select"
240
  msgid "Please select your mail type."
241
  msgstr ""
242
 
243
- #: classes/es-register.php:225
244
  msgctxt "sendmail-enhanced-select"
245
  msgid ""
246
  "Have you double checked your selected group? If so, let's go ahead and send "
247
  "this."
248
  msgstr ""
249
 
250
- #: classes/es-register.php:233
251
  msgctxt "sentmail-enhanced-select"
252
  msgid "Do you want to delete this record?"
253
  msgstr ""
254
 
255
- #: classes/es-register.php:234
256
  msgctxt "sentmail-enhanced-select"
257
  msgid "Do you want to delete all records except latest 10?"
258
  msgstr ""
259
 
260
- #: classes/es-register.php:242
261
  msgctxt "cron-enhanced-select"
262
  msgid "Please select enter number of mails you want to send per hour/trigger."
263
  msgstr ""
264
 
265
- #: classes/es-register.php:243
266
  msgctxt "cron-enhanced-select"
267
  msgid "Please enter the mail count, only number."
268
  msgstr ""
269
 
270
- #: classes/es-register.php:256
271
  msgctxt "widget-enhanced-select"
272
  msgid "Please enter email address"
273
  msgstr ""
274
 
275
- #: classes/es-register.php:257
276
  msgctxt "widget-enhanced-select"
277
  msgid "Please provide a valid email address"
278
  msgstr ""
279
 
280
- #: classes/es-register.php:258
281
  msgctxt "widget-enhanced-select"
282
  msgid "loading..."
283
  msgstr ""
284
 
285
- #: classes/es-register.php:259
286
  msgctxt "widget-enhanced-select"
287
  msgid "Cannot create XMLHTTP instance"
288
  msgstr ""
289
 
290
- #: classes/es-register.php:260
291
  msgctxt "widget-enhanced-select"
292
  msgid "Successfully Subscribed."
293
  msgstr ""
294
 
295
- #: classes/es-register.php:261
296
  msgctxt "widget-enhanced-select"
297
  msgid ""
298
  "Your subscription was successful! Within a few minutes, kindly check the "
@@ -300,57 +286,57 @@ msgid ""
300
  "mail in your mailbox, please check your spam folder."
301
  msgstr ""
302
 
303
- #: classes/es-register.php:262
304
  msgctxt "widget-enhanced-select"
305
  msgid "Email Address already exists!"
306
  msgstr ""
307
 
308
- #: classes/es-register.php:263
309
  msgctxt "widget-enhanced-select"
310
  msgid "Oops.. Unexpected error occurred."
311
  msgstr ""
312
 
313
- #: classes/es-register.php:264
314
  msgctxt "widget-enhanced-select"
315
  msgid "Invalid email address"
316
  msgstr ""
317
 
318
- #: classes/es-register.php:265
319
  msgctxt "widget-enhanced-select"
320
  msgid "Please try after some time"
321
  msgstr ""
322
 
323
- #: classes/es-register.php:266
324
  msgctxt "widget-enhanced-select"
325
  msgid "There was a problem with the request"
326
  msgstr ""
327
 
328
- #: classes/es-register.php:273
329
  msgctxt "widget-page-enhanced-select"
330
  msgid "Please enter email address"
331
  msgstr ""
332
 
333
- #: classes/es-register.php:274
334
  msgctxt "widget-page-enhanced-select"
335
  msgid "Please provide a valid email address"
336
  msgstr ""
337
 
338
- #: classes/es-register.php:275
339
  msgctxt "widget-page-enhanced-select"
340
  msgid "loading..."
341
  msgstr ""
342
 
343
- #: classes/es-register.php:276
344
  msgctxt "widget-page-enhanced-select"
345
  msgid "Cannot create XMLHTTP instance"
346
  msgstr ""
347
 
348
- #: classes/es-register.php:277
349
  msgctxt "widget-page-enhanced-select"
350
  msgid "Successfully Subscribed."
351
  msgstr ""
352
 
353
- #: classes/es-register.php:278
354
  msgctxt "widget-page-enhanced-select"
355
  msgid ""
356
  "Your subscription was successful! Within a few minutes, kindly check the "
@@ -358,68 +344,153 @@ msgid ""
358
  "mail in your mailbox, please check your spam folder."
359
  msgstr ""
360
 
361
- #: classes/es-register.php:279
362
  msgctxt "widget-page-enhanced-select"
363
  msgid "Email Address already exists!"
364
  msgstr ""
365
 
366
- #: classes/es-register.php:280
367
  msgctxt "widget-page-enhanced-select"
368
  msgid "Oops.. Unexpected error occurred."
369
  msgstr ""
370
 
371
- #: classes/es-register.php:281
372
  msgctxt "widget-page-enhanced-select"
373
  msgid "Invalid email address"
374
  msgstr ""
375
 
376
- #: classes/es-register.php:282
377
  msgctxt "widget-page-enhanced-select"
378
  msgid "Please try after some time"
379
  msgstr ""
380
 
381
- #: classes/es-register.php:283
382
  msgctxt "widget-page-enhanced-select"
383
  msgid "There was a problem with the request"
384
  msgstr ""
385
 
386
- #: classes/es-register.php:459
387
- msgid ""
388
- "<b>FREE</b> plugin: Quickly grow your subscribers list with beautiful and "
389
- "high converting optins."
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
390
  msgstr ""
391
 
392
- #: classes/es-register.php:460
393
- msgid "Try Icegram"
394
  msgstr ""
395
 
396
- #: classes/es-register.php:460
397
- msgid "No, I don't need it"
398
  msgstr ""
399
 
400
- #: classes/es-register.php:614
 
 
 
 
401
  msgid "Widget Title"
402
  msgstr ""
403
 
404
- #: classes/es-register.php:618
405
  msgid "Short description about subscription form"
406
  msgstr ""
407
 
408
- #: classes/es-register.php:622
409
  msgid "Display Name Field"
410
  msgstr ""
411
 
412
- #: classes/es-register.php:624 settings/settings-edit.php:290
413
- #: settings/settings-edit.php:363 subscribers/view-subscriber-sync.php:107
414
  msgid "YES"
415
  msgstr ""
416
 
417
- #: classes/es-register.php:625 settings/settings-edit.php:291
418
- #: settings/settings-edit.php:364 subscribers/view-subscriber-sync.php:106
419
  msgid "NO"
420
  msgstr ""
421
 
422
- #: classes/es-register.php:629
423
  msgid "Subscriber Group"
424
  msgstr ""
425
 
@@ -437,12 +508,12 @@ msgstr ""
437
 
438
  #: compose/compose-add.php:75 compose/compose-edit.php:86
439
  #: compose/compose-preview.php:28 compose/compose-show.php:66
440
- #: cron/cron-add.php:80 notification/notification-add.php:113
441
  #: notification/notification-edit.php:124
442
- #: notification/notification-show.php:54 roles/roles-add.php:111
443
- #: sendmail/sendmail.php:94 sentmail/deliverreport-show.php:61
444
- #: sentmail/sentmail-preview.php:28 sentmail/sentmail-show.php:97
445
- #: settings/settings-edit.php:198 subscribers/view-subscriber-add.php:114
446
  #: subscribers/view-subscriber-edit.php:113
447
  #: subscribers/view-subscriber-export.php:38
448
  #: subscribers/view-subscriber-import.php:146
@@ -503,8 +574,8 @@ msgid "Please select your mail status"
503
  msgstr ""
504
 
505
  #: compose/compose-add.php:105 compose/compose-edit.php:117
506
- #: cron/cron-add.php:120 notification/notification-add.php:253
507
- #: notification/notification-edit.php:290 roles/roles-add.php:207
508
  #: subscribers/view-subscriber-edit.php:191
509
  msgid "Save"
510
  msgstr ""
@@ -512,8 +583,7 @@ msgstr ""
512
  #: compose/compose-edit.php:20 compose/compose-preview.php:18
513
  #: compose/compose-show.php:33 notification/notification-edit.php:20
514
  #: notification/notification-show.php:21 sentmail/sentmail-preview.php:18
515
- #: sentmail/sentmail-show.php:22 settings/settings-edit.php:20
516
- #: subscribers/view-subscriber-edit.php:22
517
  msgid "Oops, selected details does not exists."
518
  msgstr ""
519
 
@@ -581,75 +651,6 @@ msgstr ""
581
  msgid "No records available."
582
  msgstr ""
583
 
584
- #: cron/cron-add.php:24
585
- msgid "Please enter valid mail count."
586
- msgstr ""
587
-
588
- #: cron/cron-add.php:34
589
- msgid "Successfully updated."
590
- msgstr ""
591
-
592
- #: cron/cron-add.php:87
593
- msgid "Cron job URL"
594
- msgstr ""
595
-
596
- #: cron/cron-add.php:88
597
- msgid ""
598
- "This is your Cron Job URL. It is a readonly field and you are advised not to "
599
- "modify it."
600
- msgstr ""
601
-
602
- #: cron/cron-add.php:97
603
- msgid "Email Count"
604
- msgstr ""
605
-
606
- #: cron/cron-add.php:98
607
- msgid "Number of emails that you want to trigger per hour."
608
- msgstr ""
609
-
610
- #: cron/cron-add.php:103
611
- msgid "(Your web host has limits. We suggest 50 emails per hour to be safe)"
612
- msgstr ""
613
-
614
- #: cron/cron-add.php:108
615
- msgid "Admin Report"
616
- msgstr ""
617
-
618
- #: cron/cron-add.php:109
619
- msgid ""
620
- "Email to admin whenever cron URL is triggered from your server. (Keywords: "
621
- "###DATE###, ###SUBJECT###, ###COUNT###)"
622
- msgstr ""
623
-
624
- #: cron/cron-add.php:126
625
- msgid "What is Cron (auto emails) and how to setup Cron Job?"
626
- msgstr ""
627
-
628
- #: cron/cron-add.php:127
629
- msgid ""
630
- "<a target=\"_blank\" href=\"http://www.icegram.com/documentation/es-how-to-"
631
- "schedule-cron-emails/\">What is Cron?</a>"
632
- msgstr ""
633
-
634
- #: cron/cron-add.php:128
635
- msgid ""
636
- "<a target=\"_blank\" href=\"http://www.icegram.com/documentation/es-how-to-"
637
- "schedule-cron-emails-in-parallels-plesk/\">Setup cron job in Plesk</a>"
638
- msgstr ""
639
-
640
- #: cron/cron-add.php:129
641
- msgid ""
642
- "<a target=\"_blank\" href=\"http://www.icegram.com/documentation/es-how-to-"
643
- "schedule-cron-emails-in-cpanel/\">Setup cron job in cPanal</a>"
644
- msgstr ""
645
-
646
- #: cron/cron-add.php:130
647
- msgid ""
648
- "<a target=\"_blank\" href=\"http://www.icegram.com/documentation/es-what-to-"
649
- "do-if-hosting-doesnt-support-cron-jobs/\">Hosting does not support cron jobs?"
650
- "</a>"
651
- msgstr ""
652
-
653
  #: export/export-email-address.php:45 export/export-email-address.php:49
654
  msgid "Unexpected url submit has been detected"
655
  msgstr ""
@@ -668,11 +669,13 @@ msgid "For more help and tips..."
668
  msgstr ""
669
 
670
  #: help/help.php:67
671
- msgid "Like Email Subscribers? Please consider %s."
 
 
672
  msgstr ""
673
 
674
  #: help/help.php:67
675
- msgid "contributing to us"
676
  msgstr ""
677
 
678
  #: help/help.php:99
@@ -714,7 +717,7 @@ msgid "How to add Unsubscribe link in emails?"
714
  msgstr ""
715
 
716
  #: help/help.php:139
717
- msgid "What are Static Templates and Dynamic Templates?"
718
  msgstr ""
719
 
720
  #: help/help.php:142
@@ -775,8 +778,8 @@ msgstr ""
775
  msgid "Commonly Asked Questions"
776
  msgstr ""
777
 
778
- #: job/es-optin.php:58 job/es-optin.php:68 job/es-unsubscribe.php:55
779
- #: job/es-unsubscribe.php:62
780
  msgid ""
781
  "Oops.. We are getting some technical error. Please try again or contact "
782
  "admin."
@@ -927,61 +930,6 @@ msgstr ""
927
  msgid "Notification Status"
928
  msgstr ""
929
 
930
- #: roles/roles-add.php:53
931
- msgid "Role Updated. "
932
- msgstr ""
933
-
934
- #: roles/roles-add.php:114
935
- msgid ""
936
- "Select user roles who can access following menus. Only Admin can change this."
937
- msgstr ""
938
-
939
- #: roles/roles-add.php:121
940
- msgid "Subscribers Menu"
941
- msgstr ""
942
-
943
- #: roles/roles-add.php:125 roles/roles-add.php:137 roles/roles-add.php:149
944
- #: roles/roles-add.php:161 roles/roles-add.php:173 roles/roles-add.php:185
945
- #: roles/roles-add.php:197
946
- msgid "Administrator Only"
947
- msgstr ""
948
-
949
- #: roles/roles-add.php:126 roles/roles-add.php:138 roles/roles-add.php:150
950
- #: roles/roles-add.php:162 roles/roles-add.php:174 roles/roles-add.php:186
951
- #: roles/roles-add.php:198
952
- msgid "Administrator/Editor"
953
- msgstr ""
954
-
955
- #: roles/roles-add.php:127 roles/roles-add.php:139 roles/roles-add.php:151
956
- #: roles/roles-add.php:163 roles/roles-add.php:175 roles/roles-add.php:187
957
- #: roles/roles-add.php:199
958
- msgid "Administrator/Editor/Author/Contributor"
959
- msgstr ""
960
-
961
- #: roles/roles-add.php:133
962
- msgid "Compose Menu"
963
- msgstr ""
964
-
965
- #: roles/roles-add.php:145
966
- msgid "Post Notifications Menu"
967
- msgstr ""
968
-
969
- #: roles/roles-add.php:157
970
- msgid "Newsletters + Cron Settings Menu"
971
- msgstr ""
972
-
973
- #: roles/roles-add.php:169
974
- msgid "Email Settings Menu"
975
- msgstr ""
976
-
977
- #: roles/roles-add.php:181
978
- msgid "Reports Menu"
979
- msgstr ""
980
-
981
- #: roles/roles-add.php:193
982
- msgid "Help & Info Menu"
983
- msgstr ""
984
-
985
  #: sendmail/sendmail.php:40
986
  msgid "Please select your mail subject."
987
  msgstr ""
@@ -1155,74 +1103,78 @@ msgstr ""
1155
  msgid "Click to sync tables"
1156
  msgstr ""
1157
 
1158
- #: settings/settings-edit.php:117
1159
- msgid "Please enter sender of notifications from name."
1160
  msgstr ""
1161
 
1162
- #: settings/settings-edit.php:122
1163
- msgid "Please enter sender of notifications from email."
1164
  msgstr ""
1165
 
1166
- #: settings/settings-edit.php:155
1167
- msgid "Settings Saved."
1168
  msgstr ""
1169
 
1170
- #: settings/settings-edit.php:158
1171
- msgid "Oops, unable to update."
1172
  msgstr ""
1173
 
1174
- #: settings/settings-edit.php:205
 
 
 
 
1175
  msgid "Sender of Notifications"
1176
  msgstr ""
1177
 
1178
- #: settings/settings-edit.php:206
1179
  msgid ""
1180
  "Choose a FROM name and FROM email address for all the emails to be sent from "
1181
  "this plugin."
1182
  msgstr ""
1183
 
1184
- #: settings/settings-edit.php:216
1185
  msgid "Mail Type"
1186
  msgstr ""
1187
 
1188
- #: settings/settings-edit.php:217
1189
  msgid ""
1190
  "Option 1 & 2 is to send mails with default Wordpress method wp_mail(). "
1191
  "Option 3 & 4 is to send mails with PHP method mail()."
1192
  msgstr ""
1193
 
1194
- #: settings/settings-edit.php:221
1195
  msgid "1. WP HTML MAIL"
1196
  msgstr ""
1197
 
1198
- #: settings/settings-edit.php:222
1199
  msgid "2. WP PLAINTEXT MAIL"
1200
  msgstr ""
1201
 
1202
- #: settings/settings-edit.php:223
1203
  msgid "3. PHP HTML MAIL"
1204
  msgstr ""
1205
 
1206
- #: settings/settings-edit.php:224
1207
  msgid "4. PHP PLAINTEXT MAIL"
1208
  msgstr ""
1209
 
1210
- #: settings/settings-edit.php:231
1211
  msgid "Opt-In Option"
1212
  msgstr ""
1213
 
1214
- #: settings/settings-edit.php:232
1215
  msgid ""
1216
  "Double Opt In means subscribers need to confirm their email address by an "
1217
  "activation link sent them on a activation email message.<br />Single Opt In "
1218
  "means subscribers do not need to confirm their email address."
1219
  msgstr ""
1220
 
1221
- #: settings/settings-edit.php:236
1222
  msgid "Double Opt In"
1223
  msgstr ""
1224
 
1225
- #: settings/settings-edit.php:237 subscribers/view-subscriber-add.php:151
1226
  #: subscribers/view-subscriber-edit.php:150
1227
  #: subscribers/view-subscriber-import.php:178
1228
  #: subscribers/view-subscriber-show.php:312
@@ -1230,210 +1182,326 @@ msgstr ""
1230
  msgid "Single Opt In"
1231
  msgstr ""
1232
 
1233
- #: settings/settings-edit.php:243
1234
  msgid "Image Size"
1235
  msgstr ""
1236
 
1237
- #: settings/settings-edit.php:244
1238
  msgid ""
1239
  "Select image size for ###POSTIMAGE### to be shown in the Post Notification "
1240
  "Emails."
1241
  msgstr ""
1242
 
1243
- #: settings/settings-edit.php:248
1244
  msgid "Full Size"
1245
  msgstr ""
1246
 
1247
- #: settings/settings-edit.php:249
1248
  msgid "Medium Size"
1249
  msgstr ""
1250
 
1251
- #: settings/settings-edit.php:250
1252
  msgid "Thumbnail"
1253
  msgstr ""
1254
 
1255
- #: settings/settings-edit.php:256
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1256
  msgid "Double Opt In Email Subject (Confirmation Email)"
1257
  msgstr ""
1258
 
1259
- #: settings/settings-edit.php:257
1260
  msgid ""
1261
  "Enter the subject for the confirmation email to be sent for Double Opt In "
1262
  "whenever a user signs up."
1263
  msgstr ""
1264
 
1265
- #: settings/settings-edit.php:263
1266
  msgid "Double Opt In Email Content (Confirmation Email)"
1267
  msgstr ""
1268
 
1269
- #: settings/settings-edit.php:264
1270
  msgid ""
1271
  "Enter the content for the confirmation email to be sent for Double Opt In "
1272
  "whenever a user signs up. (Keyword: ###NAME###, ###LINK###)"
1273
  msgstr ""
1274
 
1275
- #: settings/settings-edit.php:270
1276
  msgid "Double Opt In Confirmation Link"
1277
  msgstr ""
1278
 
1279
- #: settings/settings-edit.php:271
1280
  msgid "It is a readonly field and you are advised not to modify it."
1281
  msgstr ""
1282
 
1283
- #: settings/settings-edit.php:277
1284
  msgid ""
1285
  "Text to display after an email address is successfully subscribed from "
1286
  "Double Opt In (confirmation) Email"
1287
  msgstr ""
1288
 
1289
- #: settings/settings-edit.php:278
1290
  msgid ""
1291
  "This text will be displayed once user clicks on email confirmation link from "
1292
  "the Double Opt In (confirmation) Email."
1293
  msgstr ""
1294
 
1295
- #: settings/settings-edit.php:285
1296
  msgid "Subscriber Welcome Email"
1297
  msgstr ""
1298
 
1299
- #: settings/settings-edit.php:286
1300
  msgid ""
1301
  "To send welcome email to subscriber after successful signup. This option "
1302
  "must be set to YES."
1303
  msgstr ""
1304
 
1305
- #: settings/settings-edit.php:297
1306
  msgid "Subscriber Welcome Email Subject"
1307
  msgstr ""
1308
 
1309
- #: settings/settings-edit.php:298
1310
  msgid ""
1311
  "Enter the subject for the subscriber welcome email. This will be sent "
1312
  "whenever a user's email is either confirmed (if Double Opt In) / subscribed "
1313
  "(if Single Opt In) successfully."
1314
  msgstr ""
1315
 
1316
- #: settings/settings-edit.php:304
1317
  msgid "Subscriber Welcome Email Content"
1318
  msgstr ""
1319
 
1320
- #: settings/settings-edit.php:305
1321
  msgid ""
1322
  "Enter the content for the subscriber welcome email whenever a user's email "
1323
  "is either confirmed (if Double Opt In) / subscribed (if Single Opt In) "
1324
  "successfully. (Keyword: ###NAME###, ###GROUP###, ###LINK###)"
1325
  msgstr ""
1326
 
1327
- #: settings/settings-edit.php:313
1328
  msgid "Unsubscribe Link"
1329
  msgstr ""
1330
 
1331
- #: settings/settings-edit.php:314
1332
  msgid ""
1333
  "The unsubscribe link gets added automatically to all emails that are sent "
1334
  "from this plugin. It is a readonly field and you are advised not to modify "
1335
  "it."
1336
  msgstr ""
1337
 
1338
- #: settings/settings-edit.php:320
1339
  msgid "Unsubscribe Text in Email"
1340
  msgstr ""
1341
 
1342
- #: settings/settings-edit.php:321
1343
  msgid ""
1344
  "Enter the text for the unsubscribe link. This text is added with unsubscribe "
1345
  "link in the emails. (Keyword: ###LINK###)"
1346
  msgstr ""
1347
 
1348
- #: settings/settings-edit.php:327
1349
  msgid "Text to display after an email address is unsubscribed"
1350
  msgstr ""
1351
 
1352
- #: settings/settings-edit.php:328
1353
  msgid "This text will be displayed once user clicks on unsubscribe link."
1354
  msgstr ""
1355
 
1356
- #: settings/settings-edit.php:335
1357
  msgid "Error in the Confirmation Link"
1358
  msgstr ""
1359
 
1360
- #: settings/settings-edit.php:336
1361
  msgid ""
1362
  "Default message to display if there is any issue while clicking on "
1363
  "confirmation link from the Double Opt In (confirmation) Emails."
1364
  msgstr ""
1365
 
1366
- #: settings/settings-edit.php:342
1367
  msgid "Error in the Unsubscribe Link"
1368
  msgstr ""
1369
 
1370
- #: settings/settings-edit.php:343
1371
  msgid ""
1372
  "Default message to display if there is any issue while clicking on "
1373
  "unsubscribe link from the Emails."
1374
  msgstr ""
1375
 
1376
- #: settings/settings-edit.php:350
1377
- msgid "Admin Email Addresses"
 
1378
  msgstr ""
1379
 
1380
- #: settings/settings-edit.php:351
1381
- msgid ""
1382
- "Enter the admin email addresses that should receive notifications (separated "
1383
- "by comma)."
1384
  msgstr ""
1385
 
1386
- #: settings/settings-edit.php:357
1387
- msgid "Notify admin when a new subscriber signs up"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1388
  msgstr ""
1389
 
1390
- #: settings/settings-edit.php:358
 
 
 
 
1391
  msgid ""
1392
- "To send admin email notifications for the new subscriber. This option must "
1393
- "be set to YES."
1394
  msgstr ""
1395
 
1396
- #: settings/settings-edit.php:370
1397
- msgid "Admin Email Subject when a new subscriber signs up"
 
 
 
 
 
 
 
 
1398
  msgstr ""
1399
 
1400
- #: settings/settings-edit.php:371
 
 
 
 
1401
  msgid ""
1402
- "Enter the subject for the admin email which will be sent whenever a new "
1403
- "email is added and confirmed."
1404
  msgstr ""
1405
 
1406
  #: settings/settings-edit.php:377
1407
- msgid "Admin Email Content when a new subscriber signs up"
1408
  msgstr ""
1409
 
1410
  #: settings/settings-edit.php:378
1411
  msgid ""
1412
- "Enter the email content for the admin email which will be sent whenever a "
1413
- "new email is added and confirmed. (Keyword: ###NAME###, ###EMAIL###)"
1414
  msgstr ""
1415
 
1416
- #: settings/settings-edit.php:385
1417
- msgid "Sent Report Subject"
 
 
1418
  msgstr ""
1419
 
1420
- #: settings/settings-edit.php:386
1421
  msgid ""
1422
- "Enter the subject for the sent email report. It will be emailed to Admin."
 
1423
  msgstr ""
1424
 
1425
- #: settings/settings-edit.php:392
1426
- msgid "Sent Report Content"
 
 
 
1427
  msgstr ""
1428
 
1429
- #: settings/settings-edit.php:393
1430
- msgid ""
1431
- "Enter the content for the sent email report. It will be emailed to Admin. "
1432
- "(Keyword: ###COUNT###, ###UNIQUE###, ###STARTTIME###, ###ENDTIME###)"
1433
  msgstr ""
1434
 
1435
- #: settings/settings-edit.php:403
1436
- msgid "Save Settings"
 
 
 
 
 
 
 
 
 
 
 
 
1437
  msgstr ""
1438
 
1439
  #: subscribers/view-subscriber-add.php:36
@@ -1856,9 +1924,9 @@ msgstr ""
1856
  msgid "Email Subscribers & Newsletters"
1857
  msgstr ""
1858
 
1859
- #. #-#-#-#-# email-subscribers.pot (Email Subscribers & Newsletters 3.2.11) #-#-#-#-#
1860
  #. Plugin URI of the plugin/theme
1861
- #. #-#-#-#-# email-subscribers.pot (Email Subscribers & Newsletters 3.2.11) #-#-#-#-#
1862
  #. Author URI of the plugin/theme
1863
  msgid "http://www.icegram.com/"
1864
  msgstr ""
2
  # This file is distributed under the same license as the Email Subscribers & Newsletters package.
3
  msgid ""
4
  msgstr ""
5
+ "Project-Id-Version: Email Subscribers & Newsletters 3.3\n"
6
  "Report-Msgid-Bugs-To: http://www.storeapps.org/support/contact-us/\n"
7
+ "POT-Creation-Date: 2017-06-13 09:40:46+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=UTF-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
11
+ "PO-Revision-Date: Tue, 13 Jun 2017 15:10:46 +0530\n"
12
  "Last-Translator: Ratnakar Dubey <ratnakar.dubey@storeapps.org>\n"
13
  "Language-Team: StoreApps <support@storeapps.org>\n"
14
 
64
  msgid "<span style=\"color:#993399;\">Immediately</span>"
65
  msgstr ""
66
 
67
+ #: classes/es-loadwidget.php:28 classes/es-register.php:961
68
  #: subscribers/view-subscriber-show.php:361
69
  #: subscribers/view-subscriber-show.php:374
70
  msgid "Name"
71
  msgstr ""
72
 
73
+ #: classes/es-loadwidget.php:33 classes/es-register.php:966
74
  msgid "Email *"
75
  msgstr ""
76
 
77
+ #: classes/es-loadwidget.php:38 classes/es-register.php:971
78
  msgid "Subscribe"
79
  msgstr ""
80
 
81
+ #: classes/es-register.php:140 classes/es-register.php:141
82
+ #: classes/es-register.php:707
83
  msgid "Email Subscribers"
84
  msgstr ""
85
 
86
+ #: classes/es-register.php:143 classes/es-register.php:144
87
  #: subscribers/view-subscriber-show.php:241
88
  msgid "Subscribers"
89
  msgstr ""
90
 
91
+ #: classes/es-register.php:146 classes/es-register.php:147
92
  #: compose/compose-show.php:64
93
  msgid "Compose"
94
  msgstr ""
95
 
96
+ #: classes/es-register.php:149 classes/es-register.php:150
97
  #: notification/notification-show.php:52
98
  msgid "Post Notifications"
99
  msgstr ""
100
 
101
+ #: classes/es-register.php:152 classes/es-register.php:153
102
+ #: sendmail/sendmail.php:93 settings/settings-edit.php:318
103
  msgid "Newsletters"
104
  msgstr ""
105
 
106
+ #: classes/es-register.php:155 classes/es-register.php:156
107
+ #: settings/settings-edit.php:41
108
+ msgid "Settings"
109
  msgstr ""
110
 
111
+ #: classes/es-register.php:158 classes/es-register.php:159
 
 
 
 
 
 
 
 
 
 
112
  #: sentmail/sentmail-show.php:96
113
  msgid "Reports"
114
  msgstr ""
115
 
116
+ #: classes/es-register.php:161
117
  msgid "Help & Info"
118
  msgstr ""
119
 
120
+ #: classes/es-register.php:162
121
  msgid "<span style=\"color:#f18500;font-weight:bolder;\">Help & Info"
122
  msgstr ""
123
 
124
+ #: classes/es-register.php:173
125
  msgctxt "view-subscriber-enhanced-select"
126
  msgid "Please enter subscriber email address."
127
  msgstr ""
128
 
129
+ #: classes/es-register.php:174
130
  msgctxt "view-subscriber-enhanced-select"
131
  msgid "Please select subscriber email status."
132
  msgstr ""
133
 
134
+ #: classes/es-register.php:175
135
  msgctxt "view-subscriber-enhanced-select"
136
  msgid "Please select or create group for this subscriber."
137
  msgstr ""
138
 
139
+ #: classes/es-register.php:176
140
  msgctxt "view-subscriber-enhanced-select"
141
  msgid "Do you want to delete this record?"
142
  msgstr ""
143
 
144
+ #: classes/es-register.php:177
145
  msgctxt "view-subscriber-enhanced-select"
146
  msgid "Please select the bulk action."
147
  msgstr ""
148
 
149
+ #: classes/es-register.php:178
150
  msgctxt "view-subscriber-enhanced-select"
151
  msgid "Are you sure you want to delete selected records?"
152
  msgstr ""
153
 
154
+ #: classes/es-register.php:179
155
  msgctxt "view-subscriber-enhanced-select"
156
  msgid ""
157
  "Do you want to resend confirmation email? \\nAlso please note, this will "
158
  "update subscriber current status to 'Unconfirmed'."
159
  msgstr ""
160
 
161
+ #: classes/es-register.php:180
162
  msgctxt "view-subscriber-enhanced-select"
163
  msgid "Please select new subscriber group."
164
  msgstr ""
165
 
166
+ #: classes/es-register.php:181
167
  msgctxt "view-subscriber-enhanced-select"
168
  msgid "Please select new status for subscribers"
169
  msgstr ""
170
 
171
+ #: classes/es-register.php:182
172
  msgctxt "view-subscriber-enhanced-select"
173
  msgid "Do you want to update subscribers group?"
174
  msgstr ""
175
 
176
+ #: classes/es-register.php:183
177
  msgctxt "view-subscriber-enhanced-select"
178
  msgid "Do you want to update subscribers status?"
179
  msgstr ""
180
 
181
+ #: classes/es-register.php:184
182
  msgctxt "view-subscriber-enhanced-select"
183
  msgid ""
184
  "Please select only csv file. Please check official website for csv "
185
  "structure.."
186
  msgstr ""
187
 
188
+ #: classes/es-register.php:192
 
 
 
 
 
189
  msgctxt "compose-enhanced-select"
190
+ msgid "Please enter the Email Subject."
191
  msgstr ""
192
 
193
+ #: classes/es-register.php:193
194
  msgctxt "compose-enhanced-select"
195
  msgid "Do you want to delete this record?"
196
  msgstr ""
197
 
198
+ #: classes/es-register.php:201
199
  msgctxt "notification-enhanced-select"
200
  msgid "Please select subscribers group."
201
  msgstr ""
202
 
203
+ #: classes/es-register.php:202
204
  msgctxt "notification-enhanced-select"
205
  msgid ""
206
  "Please select notification mail subject. Use compose menu to create new."
207
  msgstr ""
208
 
209
+ #: classes/es-register.php:203
210
  msgctxt "notification-enhanced-select"
211
  msgid "Please select notification status."
212
  msgstr ""
213
 
214
+ #: classes/es-register.php:204
215
  msgctxt "notification-enhanced-select"
216
  msgid "Do you want to delete this record?"
217
  msgstr ""
218
 
219
+ #: classes/es-register.php:212
220
  msgctxt "sendmail-enhanced-select"
221
  msgid "Please select your mail subject."
222
  msgstr ""
223
 
224
+ #: classes/es-register.php:213
225
  msgctxt "sendmail-enhanced-select"
226
  msgid "Please select your mail type."
227
  msgstr ""
228
 
229
+ #: classes/es-register.php:214
230
  msgctxt "sendmail-enhanced-select"
231
  msgid ""
232
  "Have you double checked your selected group? If so, let's go ahead and send "
233
  "this."
234
  msgstr ""
235
 
236
+ #: classes/es-register.php:222
237
  msgctxt "sentmail-enhanced-select"
238
  msgid "Do you want to delete this record?"
239
  msgstr ""
240
 
241
+ #: classes/es-register.php:223
242
  msgctxt "sentmail-enhanced-select"
243
  msgid "Do you want to delete all records except latest 10?"
244
  msgstr ""
245
 
246
+ #: classes/es-register.php:231
247
  msgctxt "cron-enhanced-select"
248
  msgid "Please select enter number of mails you want to send per hour/trigger."
249
  msgstr ""
250
 
251
+ #: classes/es-register.php:232
252
  msgctxt "cron-enhanced-select"
253
  msgid "Please enter the mail count, only number."
254
  msgstr ""
255
 
256
+ #: classes/es-register.php:245
257
  msgctxt "widget-enhanced-select"
258
  msgid "Please enter email address"
259
  msgstr ""
260
 
261
+ #: classes/es-register.php:246
262
  msgctxt "widget-enhanced-select"
263
  msgid "Please provide a valid email address"
264
  msgstr ""
265
 
266
+ #: classes/es-register.php:247
267
  msgctxt "widget-enhanced-select"
268
  msgid "loading..."
269
  msgstr ""
270
 
271
+ #: classes/es-register.php:248
272
  msgctxt "widget-enhanced-select"
273
  msgid "Cannot create XMLHTTP instance"
274
  msgstr ""
275
 
276
+ #: classes/es-register.php:249
277
  msgctxt "widget-enhanced-select"
278
  msgid "Successfully Subscribed."
279
  msgstr ""
280
 
281
+ #: classes/es-register.php:250
282
  msgctxt "widget-enhanced-select"
283
  msgid ""
284
  "Your subscription was successful! Within a few minutes, kindly check the "
286
  "mail in your mailbox, please check your spam folder."
287
  msgstr ""
288
 
289
+ #: classes/es-register.php:251
290
  msgctxt "widget-enhanced-select"
291
  msgid "Email Address already exists!"
292
  msgstr ""
293
 
294
+ #: classes/es-register.php:252
295
  msgctxt "widget-enhanced-select"
296
  msgid "Oops.. Unexpected error occurred."
297
  msgstr ""
298
 
299
+ #: classes/es-register.php:253
300
  msgctxt "widget-enhanced-select"
301
  msgid "Invalid email address"
302
  msgstr ""
303
 
304
+ #: classes/es-register.php:254
305
  msgctxt "widget-enhanced-select"
306
  msgid "Please try after some time"
307
  msgstr ""
308
 
309
+ #: classes/es-register.php:255
310
  msgctxt "widget-enhanced-select"
311
  msgid "There was a problem with the request"
312
  msgstr ""
313
 
314
+ #: classes/es-register.php:262
315
  msgctxt "widget-page-enhanced-select"
316
  msgid "Please enter email address"
317
  msgstr ""
318
 
319
+ #: classes/es-register.php:263
320
  msgctxt "widget-page-enhanced-select"
321
  msgid "Please provide a valid email address"
322
  msgstr ""
323
 
324
+ #: classes/es-register.php:264
325
  msgctxt "widget-page-enhanced-select"
326
  msgid "loading..."
327
  msgstr ""
328
 
329
+ #: classes/es-register.php:265
330
  msgctxt "widget-page-enhanced-select"
331
  msgid "Cannot create XMLHTTP instance"
332
  msgstr ""
333
 
334
+ #: classes/es-register.php:266
335
  msgctxt "widget-page-enhanced-select"
336
  msgid "Successfully Subscribed."
337
  msgstr ""
338
 
339
+ #: classes/es-register.php:267
340
  msgctxt "widget-page-enhanced-select"
341
  msgid ""
342
  "Your subscription was successful! Within a few minutes, kindly check the "
344
  "mail in your mailbox, please check your spam folder."
345
  msgstr ""
346
 
347
+ #: classes/es-register.php:268
348
  msgctxt "widget-page-enhanced-select"
349
  msgid "Email Address already exists!"
350
  msgstr ""
351
 
352
+ #: classes/es-register.php:269
353
  msgctxt "widget-page-enhanced-select"
354
  msgid "Oops.. Unexpected error occurred."
355
  msgstr ""
356
 
357
+ #: classes/es-register.php:270
358
  msgctxt "widget-page-enhanced-select"
359
  msgid "Invalid email address"
360
  msgstr ""
361
 
362
+ #: classes/es-register.php:271
363
  msgctxt "widget-page-enhanced-select"
364
  msgid "Please try after some time"
365
  msgstr ""
366
 
367
+ #: classes/es-register.php:272
368
  msgctxt "widget-page-enhanced-select"
369
  msgid "There was a problem with the request"
370
  msgstr ""
371
 
372
+ #: classes/es-register.php:707
373
+ msgid "is getting even better!"
374
+ msgstr ""
375
+
376
+ #: classes/es-register.php:708
377
+ msgid "But I need you to"
378
+ msgstr ""
379
+
380
+ #: classes/es-register.php:708
381
+ msgid "help me prioritize"
382
+ msgstr ""
383
+
384
+ #: classes/es-register.php:708
385
+ msgid "Please send your response today."
386
+ msgstr ""
387
+
388
+ #: classes/es-register.php:715
389
+ msgid "Here's how you use ES:"
390
+ msgstr ""
391
+
392
+ #: classes/es-register.php:720
393
+ msgid "Used Post Notifications more often than Newsletter"
394
+ msgstr ""
395
+
396
+ #: classes/es-register.php:722
397
+ msgid "Used Newsletter more often than Post Notifications"
398
+ msgstr ""
399
+
400
+ #: classes/es-register.php:724
401
+ msgid "Used Post Notification &amp; Newsletter equally"
402
+ msgstr ""
403
+
404
+ #: classes/es-register.php:728
405
+ msgid "Have "
406
+ msgstr ""
407
+
408
+ #: classes/es-register.php:728
409
+ msgid " Active Subscribers"
410
+ msgstr ""
411
+
412
+ #: classes/es-register.php:729
413
+ msgid "Post "
414
+ msgstr ""
415
+
416
+ #: classes/es-register.php:729
417
+ msgid " blog per week"
418
+ msgstr ""
419
+
420
+ #: classes/es-register.php:733
421
+ msgid "Send mails via Cron"
422
+ msgstr ""
423
+
424
+ #: classes/es-register.php:735
425
+ msgid "Send mails Immediately"
426
+ msgstr ""
427
+
428
+ #: classes/es-register.php:745
429
+ msgid "How soon do you want these new features?"
430
+ msgstr ""
431
+
432
+ #: classes/es-register.php:749
433
+ msgid "Beautiful Email Designs"
434
+ msgstr ""
435
+
436
+ #: classes/es-register.php:750 classes/es-register.php:755
437
+ #: classes/es-register.php:764 classes/es-register.php:769
438
+ msgid "Right now!"
439
+ msgstr ""
440
+
441
+ #: classes/es-register.php:751 classes/es-register.php:756
442
+ #: classes/es-register.php:765 classes/es-register.php:770
443
+ msgid "Soon"
444
+ msgstr ""
445
+
446
+ #: classes/es-register.php:752 classes/es-register.php:757
447
+ #: classes/es-register.php:766 classes/es-register.php:771
448
+ msgid "Later"
449
+ msgstr ""
450
+
451
+ #: classes/es-register.php:754
452
+ msgid "Spam Check, Scheduling... (Better Email Delivery)"
453
+ msgstr ""
454
+
455
+ #: classes/es-register.php:763
456
+ msgid "Discard Fake / Bouncing Emails"
457
  msgstr ""
458
 
459
+ #: classes/es-register.php:768
460
+ msgid "Advanced Reporting"
461
  msgstr ""
462
 
463
+ #: classes/es-register.php:791
464
+ msgid "Thank you!"
465
  msgstr ""
466
 
467
+ #: classes/es-register.php:792
468
+ msgid "No issues, have a nice day!"
469
+ msgstr ""
470
+
471
+ #: classes/es-register.php:1009
472
  msgid "Widget Title"
473
  msgstr ""
474
 
475
+ #: classes/es-register.php:1013
476
  msgid "Short description about subscription form"
477
  msgstr ""
478
 
479
+ #: classes/es-register.php:1017
480
  msgid "Display Name Field"
481
  msgstr ""
482
 
483
+ #: classes/es-register.php:1019 settings/settings-edit.php:140
484
+ #: settings/settings-edit.php:213 subscribers/view-subscriber-sync.php:107
485
  msgid "YES"
486
  msgstr ""
487
 
488
+ #: classes/es-register.php:1020 settings/settings-edit.php:141
489
+ #: settings/settings-edit.php:214 subscribers/view-subscriber-sync.php:106
490
  msgid "NO"
491
  msgstr ""
492
 
493
+ #: classes/es-register.php:1024
494
  msgid "Subscriber Group"
495
  msgstr ""
496
 
508
 
509
  #: compose/compose-add.php:75 compose/compose-edit.php:86
510
  #: compose/compose-preview.php:28 compose/compose-show.php:66
511
+ #: notification/notification-add.php:113
512
  #: notification/notification-edit.php:124
513
+ #: notification/notification-show.php:54 sendmail/sendmail.php:94
514
+ #: sentmail/deliverreport-show.php:61 sentmail/sentmail-preview.php:28
515
+ #: sentmail/sentmail-show.php:97 settings/settings-edit.php:42
516
+ #: subscribers/view-subscriber-add.php:114
517
  #: subscribers/view-subscriber-edit.php:113
518
  #: subscribers/view-subscriber-export.php:38
519
  #: subscribers/view-subscriber-import.php:146
574
  msgstr ""
575
 
576
  #: compose/compose-add.php:105 compose/compose-edit.php:117
577
+ #: notification/notification-add.php:253
578
+ #: notification/notification-edit.php:290
579
  #: subscribers/view-subscriber-edit.php:191
580
  msgid "Save"
581
  msgstr ""
583
  #: compose/compose-edit.php:20 compose/compose-preview.php:18
584
  #: compose/compose-show.php:33 notification/notification-edit.php:20
585
  #: notification/notification-show.php:21 sentmail/sentmail-preview.php:18
586
+ #: sentmail/sentmail-show.php:22 subscribers/view-subscriber-edit.php:22
 
587
  msgid "Oops, selected details does not exists."
588
  msgstr ""
589
 
651
  msgid "No records available."
652
  msgstr ""
653
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
654
  #: export/export-email-address.php:45 export/export-email-address.php:49
655
  msgid "Unexpected url submit has been detected"
656
  msgstr ""
669
  msgstr ""
670
 
671
  #: help/help.php:67
672
+ msgid ""
673
+ "Like Email Subscribers? If yes, then consider %s to support further "
674
+ "developments."
675
  msgstr ""
676
 
677
  #: help/help.php:67
678
+ msgid "donating to us"
679
  msgstr ""
680
 
681
  #: help/help.php:99
717
  msgstr ""
718
 
719
  #: help/help.php:139
720
+ msgid "What are the keywords available in the Post Notification template?"
721
  msgstr ""
722
 
723
  #: help/help.php:142
778
  msgid "Commonly Asked Questions"
779
  msgstr ""
780
 
781
+ #: job/es-optin.php:58 job/es-optin.php:68 job/es-unsubscribe.php:54
782
+ #: job/es-unsubscribe.php:61
783
  msgid ""
784
  "Oops.. We are getting some technical error. Please try again or contact "
785
  "admin."
930
  msgid "Notification Status"
931
  msgstr ""
932
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
933
  #: sendmail/sendmail.php:40
934
  msgid "Please select your mail subject."
935
  msgstr ""
1103
  msgid "Click to sync tables"
1104
  msgstr ""
1105
 
1106
+ #: settings/settings-edit.php:23
1107
+ msgid "Admin"
1108
  msgstr ""
1109
 
1110
+ #: settings/settings-edit.php:24
1111
+ msgid "Signup Confirmation"
1112
  msgstr ""
1113
 
1114
+ #: settings/settings-edit.php:25
1115
+ msgid "User Roles"
1116
  msgstr ""
1117
 
1118
+ #: settings/settings-edit.php:26
1119
+ msgid "Cron"
1120
  msgstr ""
1121
 
1122
+ #: settings/settings-edit.php:64
1123
+ msgid "Save Settings"
1124
+ msgstr ""
1125
+
1126
+ #: settings/settings-edit.php:76
1127
  msgid "Sender of Notifications"
1128
  msgstr ""
1129
 
1130
+ #: settings/settings-edit.php:77
1131
  msgid ""
1132
  "Choose a FROM name and FROM email address for all the emails to be sent from "
1133
  "this plugin."
1134
  msgstr ""
1135
 
1136
+ #: settings/settings-edit.php:87
1137
  msgid "Mail Type"
1138
  msgstr ""
1139
 
1140
+ #: settings/settings-edit.php:88
1141
  msgid ""
1142
  "Option 1 & 2 is to send mails with default Wordpress method wp_mail(). "
1143
  "Option 3 & 4 is to send mails with PHP method mail()."
1144
  msgstr ""
1145
 
1146
+ #: settings/settings-edit.php:92
1147
  msgid "1. WP HTML MAIL"
1148
  msgstr ""
1149
 
1150
+ #: settings/settings-edit.php:93
1151
  msgid "2. WP PLAINTEXT MAIL"
1152
  msgstr ""
1153
 
1154
+ #: settings/settings-edit.php:94
1155
  msgid "3. PHP HTML MAIL"
1156
  msgstr ""
1157
 
1158
+ #: settings/settings-edit.php:95
1159
  msgid "4. PHP PLAINTEXT MAIL"
1160
  msgstr ""
1161
 
1162
+ #: settings/settings-edit.php:102
1163
  msgid "Opt-In Option"
1164
  msgstr ""
1165
 
1166
+ #: settings/settings-edit.php:103
1167
  msgid ""
1168
  "Double Opt In means subscribers need to confirm their email address by an "
1169
  "activation link sent them on a activation email message.<br />Single Opt In "
1170
  "means subscribers do not need to confirm their email address."
1171
  msgstr ""
1172
 
1173
+ #: settings/settings-edit.php:107
1174
  msgid "Double Opt In"
1175
  msgstr ""
1176
 
1177
+ #: settings/settings-edit.php:108 subscribers/view-subscriber-add.php:151
1178
  #: subscribers/view-subscriber-edit.php:150
1179
  #: subscribers/view-subscriber-import.php:178
1180
  #: subscribers/view-subscriber-show.php:312
1182
  msgid "Single Opt In"
1183
  msgstr ""
1184
 
1185
+ #: settings/settings-edit.php:114
1186
  msgid "Image Size"
1187
  msgstr ""
1188
 
1189
+ #: settings/settings-edit.php:115
1190
  msgid ""
1191
  "Select image size for ###POSTIMAGE### to be shown in the Post Notification "
1192
  "Emails."
1193
  msgstr ""
1194
 
1195
+ #: settings/settings-edit.php:119
1196
  msgid "Full Size"
1197
  msgstr ""
1198
 
1199
+ #: settings/settings-edit.php:120
1200
  msgid "Medium Size"
1201
  msgstr ""
1202
 
1203
+ #: settings/settings-edit.php:121
1204
  msgid "Thumbnail"
1205
  msgstr ""
1206
 
1207
+ #: settings/settings-edit.php:127
1208
+ msgid "Admin Email Addresses"
1209
+ msgstr ""
1210
+
1211
+ #: settings/settings-edit.php:128
1212
+ msgid ""
1213
+ "Enter the admin email addresses that should receive notifications (separated "
1214
+ "by comma)."
1215
+ msgstr ""
1216
+
1217
+ #: settings/settings-edit.php:134
1218
+ msgid "Notify admin when a new subscriber signs up"
1219
+ msgstr ""
1220
+
1221
+ #: settings/settings-edit.php:135
1222
+ msgid ""
1223
+ "To send admin email notifications for the new subscriber. This option must "
1224
+ "be set to YES."
1225
+ msgstr ""
1226
+
1227
+ #: settings/settings-edit.php:147
1228
+ msgid "Admin Email Subject when a new subscriber signs up"
1229
+ msgstr ""
1230
+
1231
+ #: settings/settings-edit.php:148
1232
+ msgid ""
1233
+ "Enter the subject for the admin email which will be sent whenever a new "
1234
+ "email is added and confirmed."
1235
+ msgstr ""
1236
+
1237
+ #: settings/settings-edit.php:154
1238
+ msgid "Admin Email Content when a new subscriber signs up"
1239
+ msgstr ""
1240
+
1241
+ #: settings/settings-edit.php:155
1242
+ msgid ""
1243
+ "Enter the email content for the admin email which will be sent whenever a "
1244
+ "new email is added and confirmed. (Keyword: ###NAME###, ###EMAIL###)"
1245
+ msgstr ""
1246
+
1247
+ #: settings/settings-edit.php:162
1248
+ msgid "Sent Report Subject"
1249
+ msgstr ""
1250
+
1251
+ #: settings/settings-edit.php:163
1252
+ msgid ""
1253
+ "Enter the subject for the sent email report. It will be emailed to Admin."
1254
+ msgstr ""
1255
+
1256
+ #: settings/settings-edit.php:169
1257
+ msgid "Sent Report Content"
1258
+ msgstr ""
1259
+
1260
+ #: settings/settings-edit.php:170
1261
+ msgid ""
1262
+ "Enter the content for the sent email report. It will be emailed to Admin. "
1263
+ "(Keyword: ###COUNT###, ###UNIQUE###, ###STARTTIME###, ###ENDTIME###)"
1264
+ msgstr ""
1265
+
1266
+ #: settings/settings-edit.php:179
1267
  msgid "Double Opt In Email Subject (Confirmation Email)"
1268
  msgstr ""
1269
 
1270
+ #: settings/settings-edit.php:180
1271
  msgid ""
1272
  "Enter the subject for the confirmation email to be sent for Double Opt In "
1273
  "whenever a user signs up."
1274
  msgstr ""
1275
 
1276
+ #: settings/settings-edit.php:186
1277
  msgid "Double Opt In Email Content (Confirmation Email)"
1278
  msgstr ""
1279
 
1280
+ #: settings/settings-edit.php:187
1281
  msgid ""
1282
  "Enter the content for the confirmation email to be sent for Double Opt In "
1283
  "whenever a user signs up. (Keyword: ###NAME###, ###LINK###)"
1284
  msgstr ""
1285
 
1286
+ #: settings/settings-edit.php:193
1287
  msgid "Double Opt In Confirmation Link"
1288
  msgstr ""
1289
 
1290
+ #: settings/settings-edit.php:194
1291
  msgid "It is a readonly field and you are advised not to modify it."
1292
  msgstr ""
1293
 
1294
+ #: settings/settings-edit.php:200
1295
  msgid ""
1296
  "Text to display after an email address is successfully subscribed from "
1297
  "Double Opt In (confirmation) Email"
1298
  msgstr ""
1299
 
1300
+ #: settings/settings-edit.php:201
1301
  msgid ""
1302
  "This text will be displayed once user clicks on email confirmation link from "
1303
  "the Double Opt In (confirmation) Email."
1304
  msgstr ""
1305
 
1306
+ #: settings/settings-edit.php:208
1307
  msgid "Subscriber Welcome Email"
1308
  msgstr ""
1309
 
1310
+ #: settings/settings-edit.php:209
1311
  msgid ""
1312
  "To send welcome email to subscriber after successful signup. This option "
1313
  "must be set to YES."
1314
  msgstr ""
1315
 
1316
+ #: settings/settings-edit.php:220
1317
  msgid "Subscriber Welcome Email Subject"
1318
  msgstr ""
1319
 
1320
+ #: settings/settings-edit.php:221
1321
  msgid ""
1322
  "Enter the subject for the subscriber welcome email. This will be sent "
1323
  "whenever a user's email is either confirmed (if Double Opt In) / subscribed "
1324
  "(if Single Opt In) successfully."
1325
  msgstr ""
1326
 
1327
+ #: settings/settings-edit.php:227
1328
  msgid "Subscriber Welcome Email Content"
1329
  msgstr ""
1330
 
1331
+ #: settings/settings-edit.php:228
1332
  msgid ""
1333
  "Enter the content for the subscriber welcome email whenever a user's email "
1334
  "is either confirmed (if Double Opt In) / subscribed (if Single Opt In) "
1335
  "successfully. (Keyword: ###NAME###, ###GROUP###, ###LINK###)"
1336
  msgstr ""
1337
 
1338
+ #: settings/settings-edit.php:236
1339
  msgid "Unsubscribe Link"
1340
  msgstr ""
1341
 
1342
+ #: settings/settings-edit.php:237
1343
  msgid ""
1344
  "The unsubscribe link gets added automatically to all emails that are sent "
1345
  "from this plugin. It is a readonly field and you are advised not to modify "
1346
  "it."
1347
  msgstr ""
1348
 
1349
+ #: settings/settings-edit.php:243
1350
  msgid "Unsubscribe Text in Email"
1351
  msgstr ""
1352
 
1353
+ #: settings/settings-edit.php:244
1354
  msgid ""
1355
  "Enter the text for the unsubscribe link. This text is added with unsubscribe "
1356
  "link in the emails. (Keyword: ###LINK###)"
1357
  msgstr ""
1358
 
1359
+ #: settings/settings-edit.php:250
1360
  msgid "Text to display after an email address is unsubscribed"
1361
  msgstr ""
1362
 
1363
+ #: settings/settings-edit.php:251
1364
  msgid "This text will be displayed once user clicks on unsubscribe link."
1365
  msgstr ""
1366
 
1367
+ #: settings/settings-edit.php:258
1368
  msgid "Error in the Confirmation Link"
1369
  msgstr ""
1370
 
1371
+ #: settings/settings-edit.php:259
1372
  msgid ""
1373
  "Default message to display if there is any issue while clicking on "
1374
  "confirmation link from the Double Opt In (confirmation) Emails."
1375
  msgstr ""
1376
 
1377
+ #: settings/settings-edit.php:265
1378
  msgid "Error in the Unsubscribe Link"
1379
  msgstr ""
1380
 
1381
+ #: settings/settings-edit.php:266
1382
  msgid ""
1383
  "Default message to display if there is any issue while clicking on "
1384
  "unsubscribe link from the Emails."
1385
  msgstr ""
1386
 
1387
+ #: settings/settings-edit.php:276
1388
+ msgid ""
1389
+ "Select user roles who can access following menus. Only Admin can change this."
1390
  msgstr ""
1391
 
1392
+ #: settings/settings-edit.php:282
1393
+ msgid "Subscribers Menu"
 
 
1394
  msgstr ""
1395
 
1396
+ #: settings/settings-edit.php:286 settings/settings-edit.php:298
1397
+ #: settings/settings-edit.php:310 settings/settings-edit.php:322
1398
+ #: settings/settings-edit.php:334
1399
+ msgid "Administrator Only"
1400
+ msgstr ""
1401
+
1402
+ #: settings/settings-edit.php:287 settings/settings-edit.php:299
1403
+ #: settings/settings-edit.php:311 settings/settings-edit.php:323
1404
+ #: settings/settings-edit.php:335
1405
+ msgid "Administrator/Editor"
1406
+ msgstr ""
1407
+
1408
+ #: settings/settings-edit.php:288 settings/settings-edit.php:300
1409
+ #: settings/settings-edit.php:312 settings/settings-edit.php:324
1410
+ #: settings/settings-edit.php:336
1411
+ msgid "Administrator/Editor/Author/Contributor"
1412
+ msgstr ""
1413
+
1414
+ #: settings/settings-edit.php:294
1415
+ msgid "Compose Menu"
1416
+ msgstr ""
1417
+
1418
+ #: settings/settings-edit.php:306
1419
+ msgid "Post Notifications Menu"
1420
+ msgstr ""
1421
+
1422
+ #: settings/settings-edit.php:330
1423
+ msgid "Reports Menu"
1424
  msgstr ""
1425
 
1426
+ #: settings/settings-edit.php:345
1427
+ msgid "Cron job URL"
1428
+ msgstr ""
1429
+
1430
+ #: settings/settings-edit.php:346
1431
  msgid ""
1432
+ "This is your Cron Job URL. It is a readonly field and you are advised not to "
1433
+ "modify it."
1434
  msgstr ""
1435
 
1436
+ #: settings/settings-edit.php:355
1437
+ msgid "Email Count"
1438
+ msgstr ""
1439
+
1440
+ #: settings/settings-edit.php:356
1441
+ msgid "Number of emails that you want to trigger per hour."
1442
+ msgstr ""
1443
+
1444
+ #: settings/settings-edit.php:361
1445
+ msgid "(Your web host has limits. We suggest 50 emails per hour to be safe)"
1446
  msgstr ""
1447
 
1448
+ #: settings/settings-edit.php:366
1449
+ msgid "Admin Report"
1450
+ msgstr ""
1451
+
1452
+ #: settings/settings-edit.php:367
1453
  msgid ""
1454
+ "Email to admin whenever cron URL is triggered from your server. (Keywords: "
1455
+ "###DATE###, ###SUBJECT###, ###COUNT###)"
1456
  msgstr ""
1457
 
1458
  #: settings/settings-edit.php:377
1459
+ msgid "What is Cron (auto emails) and how to setup Cron Job?"
1460
  msgstr ""
1461
 
1462
  #: settings/settings-edit.php:378
1463
  msgid ""
1464
+ "<a target=\"_blank\" href=\"http://www.icegram.com/documentation/es-how-to-"
1465
+ "schedule-cron-emails/\">What is Cron?</a>"
1466
  msgstr ""
1467
 
1468
+ #: settings/settings-edit.php:379
1469
+ msgid ""
1470
+ "<a target=\"_blank\" href=\"http://www.icegram.com/documentation/es-how-to-"
1471
+ "schedule-cron-emails-in-parallels-plesk/\">Setup cron job in Plesk</a>"
1472
  msgstr ""
1473
 
1474
+ #: settings/settings-edit.php:380
1475
  msgid ""
1476
+ "<a target=\"_blank\" href=\"http://www.icegram.com/documentation/es-how-to-"
1477
+ "schedule-cron-emails-in-cpanel/\">Setup cron job in cPanal</a>"
1478
  msgstr ""
1479
 
1480
+ #: settings/settings-edit.php:381
1481
+ msgid ""
1482
+ "<a target=\"_blank\" href=\"http://www.icegram.com/documentation/es-what-to-"
1483
+ "do-if-hosting-doesnt-support-cron-jobs/\">Hosting does not support cron jobs?"
1484
+ "</a>"
1485
  msgstr ""
1486
 
1487
+ #: settings/settings-edit.php:495
1488
+ msgid "Please enter sender of notifications from name."
 
 
1489
  msgstr ""
1490
 
1491
+ #: settings/settings-edit.php:500
1492
+ msgid "Please enter sender of notifications from email."
1493
+ msgstr ""
1494
+
1495
+ #: settings/settings-edit.php:544
1496
+ msgid "Please enter valid mail count."
1497
+ msgstr ""
1498
+
1499
+ #: settings/settings-edit.php:557
1500
+ msgid "Settings Saved."
1501
+ msgstr ""
1502
+
1503
+ #: settings/settings-edit.php:560
1504
+ msgid "Oops, unable to update."
1505
  msgstr ""
1506
 
1507
  #: subscribers/view-subscriber-add.php:36
1924
  msgid "Email Subscribers & Newsletters"
1925
  msgstr ""
1926
 
1927
+ #. #-#-#-#-# email-subscribers.pot (Email Subscribers & Newsletters 3.3) #-#-#-#-#
1928
  #. Plugin URI of the plugin/theme
1929
+ #. #-#-#-#-# email-subscribers.pot (Email Subscribers & Newsletters 3.3) #-#-#-#-#
1930
  #. Author URI of the plugin/theme
1931
  msgid "http://www.icegram.com/"
1932
  msgstr ""
query/db_default.php CHANGED
@@ -2,7 +2,7 @@
2
 
3
  // Exit if accessed directly
4
  if ( ! defined( 'ABSPATH' ) ) {
5
- exit;
6
  }
7
 
8
  class es_cls_default {
@@ -10,53 +10,44 @@ class es_cls_default {
10
 
11
  global $wpdb;
12
 
13
- $result = es_cls_settings::es_setting_count(0);
14
- if ($result == 0) {
15
- $admin_email = get_option('admin_email');
16
- $blogname = get_option('blogname');
17
 
18
- if($admin_email == "") {
19
- $admin_email = "admin@gmail.com";
20
- }
21
 
22
- $home_url = home_url('/');
23
- $optinlink = $home_url . "?es=optin&db=###DBID###&email=###EMAIL###&guid=###GUID###";
24
- $unsublink = $home_url . "?es=unsubscribe&db=###DBID###&email=###EMAIL###&guid=###GUID###";
25
-
26
- $es_c_fromname = "Admin";
27
- $es_c_fromemail = $admin_email;
28
- $es_c_mailtype = "WP HTML MAIL";
29
- $es_c_adminmailoption = "YES";
30
- $es_c_adminemail = $admin_email;
31
- $es_c_adminmailsubject = $blogname . " New email subscription";
32
- $es_c_adminmailcontant = "Hi Admin, \r\n\r\nWe have received a request to subscribe new email address to receive emails from our website. \r\n\r\nEmail: ###EMAIL### \r\nName : ###NAME### \r\n\r\nThank You\r\n".$blogname;
33
- $es_c_usermailoption = "YES";
34
- $es_c_usermailsubject = $blogname . " Welcome to our newsletter";
35
- $es_c_usermailcontant = "Hi ###NAME###, \r\n\r\nWe have received a request to subscribe this email address to receive newsletter from our website in group ###GROUP###. \r\n\r\nThank You\r\n".$blogname." \r\n\r\n No longer interested in emails from ".$blogname."?. Please <a href='###LINK###'>click here</a> to unsubscribe";
36
- $es_c_optinoption = "Double Opt In";
37
- $es_c_optinsubject = $blogname . " confirm subscription";
38
- $es_c_optincontent = "Hi ###NAME###, \r\n\r\nA subscription request for this email address was received. Please confirm it by <a href='###LINK###'>clicking here</a>.\r\n\r\nIf you still cannot subscribe, please click this link : \r\n ###LINK### \r\n\r\nThank You\r\n".$blogname;
39
- $es_c_optinlink = $optinlink;
40
- $es_c_unsublink = $unsublink;
41
- $es_c_unsubtext = "No longer interested in emails from ".$blogname."?. Please <a href='###LINK###'>click here</a> to unsubscribe";
42
- $es_c_unsubhtml = "Thank You, You have been successfully unsubscribed. You will no longer hear from us.";
43
- $es_c_subhtml = "Thank You, You have been successfully subscribed.";
44
- $es_c_message1 = "Oops.. This subscription cant be completed, sorry. The email address is blocked or already subscribed. Thank you.";
45
- $es_c_message2 = "Oops.. We are getting some technical error. Please try again or contact admin.";
46
-
47
- $sSql = $wpdb->prepare("INSERT INTO `".$wpdb->prefix."es_pluginconfig`
48
- (`es_c_fromname`,`es_c_fromemail`, `es_c_mailtype`, `es_c_adminmailoption`, `es_c_adminemail`, `es_c_adminmailsubject`,
49
- `es_c_adminmailcontant`,`es_c_usermailoption`, `es_c_usermailsubject`, `es_c_usermailcontant`, `es_c_optinoption`, `es_c_optinsubject`,
50
- `es_c_optincontent`,`es_c_optinlink`, `es_c_unsublink`, `es_c_unsubtext`, `es_c_unsubhtml`, `es_c_subhtml`, `es_c_message1`, `es_c_message2`)
51
- VALUES(%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s)",
52
- array($es_c_fromname,$es_c_fromemail, $es_c_mailtype, $es_c_adminmailoption, $es_c_adminemail, $es_c_adminmailsubject,
53
- $es_c_adminmailcontant,$es_c_usermailoption, $es_c_usermailsubject, $es_c_usermailcontant, $es_c_optinoption, $es_c_optinsubject,
54
- $es_c_optincontent,$es_c_optinlink, $es_c_unsublink, $es_c_unsubtext, $es_c_unsubhtml, $es_c_subhtml, $es_c_message1, $es_c_message2));
55
- $wpdb->query($sSql);
56
  }
57
 
58
  return true;
59
-
60
  }
61
 
62
  public static function es_subscriber_default() {
@@ -85,7 +76,7 @@ class es_cls_default {
85
  if ($result == 0) {
86
  $form['es_templ_heading'] = 'New post published ###POSTTITLE###';
87
  $es_b = "Hello ###NAME###,\r\n\r\n";
88
- $es_b = $es_b . "We have published a new blog in our website. ###POSTTITLE###\r\n";
89
  $es_b = $es_b . "###POSTDESC###\r\n";
90
  $es_b = $es_b . "You may view the latest post at ";
91
  $es_b = $es_b . "###POSTLINK###\r\n";
@@ -99,7 +90,7 @@ class es_cls_default {
99
 
100
  $form['es_templ_heading'] = 'Post notification ###POSTTITLE###';
101
  $es_b = "Hello ###EMAIL###,\r\n\r\n";
102
- $es_b = $es_b . "We have published a new blog in our website. ###POSTTITLE###\r\n";
103
  $es_b = $es_b . "###POSTIMAGE###\r\n";
104
  $es_b = $es_b . "###POSTFULL###\r\n";
105
  $es_b = $es_b . "You may view the latest post at ";
@@ -112,7 +103,7 @@ class es_cls_default {
112
  $form['es_email_type'] = 'Post Notification';
113
  $action = es_cls_compose::es_template_ins($form, $action = "insert");
114
 
115
- $Sample = '<strong style="color: #990000"> Email Subscribers</strong><p>Email Subscribers plugin has options to send newsletters to subscribers. It has a separate page with HTML editor to create a HTML newsletter.';
116
  $Sample .= ' Also have options to send notification email to subscribers when new posts are published to your blog. Separate page available to include and exclude categories to send notifications.';
117
  $Sample .= ' Using plugin Import and Export options admins can easily import registered users and commenters to subscriptions list.</p>';
118
  $Sample .= ' <strong style="color: #990000">Plugin Features</strong><ol>';
@@ -136,7 +127,7 @@ class es_cls_default {
136
 
137
  return true;
138
  }
139
-
140
  public static function es_notifications_default() {
141
 
142
  $result = es_cls_notification::es_notification_count(0);
@@ -147,7 +138,7 @@ class es_cls_default {
147
 
148
  $listcategory = "";
149
  $args = array( 'hide_empty' => 0, 'orderby' => 'name', 'order' => 'ASC' );
150
- $categories = get_categories($args);
151
  $total = count($categories);
152
  $i = 1;
153
  foreach($categories as $category) {
@@ -162,6 +153,5 @@ class es_cls_default {
162
  }
163
 
164
  return true;
165
-
166
  }
167
  }
2
 
3
  // Exit if accessed directly
4
  if ( ! defined( 'ABSPATH' ) ) {
5
+ exit;
6
  }
7
 
8
  class es_cls_default {
10
 
11
  global $wpdb;
12
 
13
+ $admin_email = get_option('admin_email');
14
+ $blogname = get_option('blogname');
 
 
15
 
16
+ if($admin_email == "") {
17
+ $admin_email = "admin@gmail.com";
18
+ }
19
 
20
+ $home_url = home_url('/');
21
+ $optinlink = $home_url . "?es=optin&db=###DBID###&email=###EMAIL###&guid=###GUID###";
22
+ $unsublink = $home_url . "?es=unsubscribe&db=###DBID###&email=###EMAIL###&guid=###GUID###";
23
+
24
+ $default = array();
25
+ $default['ig_es_fromname'] = "Admin";
26
+ $default['ig_es_fromemail'] = $admin_email;
27
+ $default['ig_es_emailtype'] = "WP HTML MAIL";
28
+ $default['ig_es_notifyadmin'] = "YES";
29
+ $default['ig_es_adminemail'] = $admin_email;
30
+ $default['ig_es_admin_new_sub_subject'] = $blogname . " New email subscription";
31
+ $default['ig_es_admin_new_sub_content'] = "Hi Admin, \r\n\r\nWe have received a request to subscribe new email address to receive emails from our website. \r\n\r\nEmail: ###EMAIL### \r\nName : ###NAME### \r\n\r\nThank You\r\n".$blogname;
32
+ $default['ig_es_welcomeemail'] = "YES";
33
+ $default['ig_es_welcomesubject'] = $blogname . " Welcome to our newsletter";
34
+ $default['ig_es_welcomecontent'] = "Hi ###NAME###, \r\n\r\nWe have received a request to subscribe this email address to receive newsletter from our website in group ###GROUP###. \r\n\r\nThank You\r\n".$blogname." \r\n\r\n No longer interested in emails from ".$blogname."?. Please <a href='###LINK###'>click here</a> to unsubscribe";
35
+ $default['ig_es_optintype'] = "Double Opt In";
36
+ $default['ig_es_confirmsubject'] = $blogname . " confirm subscription";
37
+ $default['ig_es_confirmcontent'] = "Hi ###NAME###, \r\n\r\nA subscription request for this email address was received. Please confirm it by <a href='###LINK###'>clicking here</a>.\r\n\r\nIf you still cannot subscribe, please click this link : \r\n ###LINK### \r\n\r\nThank You\r\n".$blogname;
38
+ $default['ig_es_optinlink'] = $optinlink;
39
+ $default['ig_es_unsublink'] = $unsublink;
40
+ $default['ig_es_unsubcontent'] = "No longer interested in emails from ".$blogname."?. Please <a href='###LINK###'>click here</a> to unsubscribe";
41
+ $default['ig_es_unsubtext'] = "Thank You, You have been successfully unsubscribed. You will no longer hear from us.";
42
+ $default['ig_es_successmsg'] = "Thank You, You have been successfully subscribed.";
43
+ $default['ig_es_suberror'] = "Oops.. This subscription cant be completed, sorry. The email address is blocked or already subscribed. Thank you.";
44
+ $default['ig_es_unsuberror'] = "Oops.. We are getting some technical error. Please try again or contact admin.";
45
+
46
+ foreach ( $default as $option_name => $option_value ) {
47
+ update_option( $option_name, $option_value );
 
 
 
 
 
 
48
  }
49
 
50
  return true;
 
51
  }
52
 
53
  public static function es_subscriber_default() {
76
  if ($result == 0) {
77
  $form['es_templ_heading'] = 'New post published ###POSTTITLE###';
78
  $es_b = "Hello ###NAME###,\r\n\r\n";
79
+ $es_b = $es_b . "We have published a new blog on our website. ###POSTTITLE###\r\n";
80
  $es_b = $es_b . "###POSTDESC###\r\n";
81
  $es_b = $es_b . "You may view the latest post at ";
82
  $es_b = $es_b . "###POSTLINK###\r\n";
90
 
91
  $form['es_templ_heading'] = 'Post notification ###POSTTITLE###';
92
  $es_b = "Hello ###EMAIL###,\r\n\r\n";
93
+ $es_b = $es_b . "We have published a new blog on our website. ###POSTTITLE###\r\n";
94
  $es_b = $es_b . "###POSTIMAGE###\r\n";
95
  $es_b = $es_b . "###POSTFULL###\r\n";
96
  $es_b = $es_b . "You may view the latest post at ";
103
  $form['es_email_type'] = 'Post Notification';
104
  $action = es_cls_compose::es_template_ins($form, $action = "insert");
105
 
106
+ $Sample = '<strong style="color: #990000"> Email Subscribers</strong><p>Email Subscribers plugin has options to send newsletters to subscribers. It has a separate page with HTML editor to create a HTML newsletter.';
107
  $Sample .= ' Also have options to send notification email to subscribers when new posts are published to your blog. Separate page available to include and exclude categories to send notifications.';
108
  $Sample .= ' Using plugin Import and Export options admins can easily import registered users and commenters to subscriptions list.</p>';
109
  $Sample .= ' <strong style="color: #990000">Plugin Features</strong><ol>';
127
 
128
  return true;
129
  }
130
+
131
  public static function es_notifications_default() {
132
 
133
  $result = es_cls_notification::es_notification_count(0);
138
 
139
  $listcategory = "";
140
  $args = array( 'hide_empty' => 0, 'orderby' => 'name', 'order' => 'ASC' );
141
+ $categories = get_categories($args);
142
  $total = count($categories);
143
  $i = 1;
144
  foreach($categories as $category) {
153
  }
154
 
155
  return true;
 
156
  }
157
  }
query/db_settings.php CHANGED
@@ -2,7 +2,7 @@
2
 
3
  // Exit if accessed directly
4
  if ( ! defined( 'ABSPATH' ) ) {
5
- exit;
6
  }
7
 
8
  class es_cls_settings {
@@ -19,41 +19,20 @@ class es_cls_settings {
19
  return $arrRes;
20
  }
21
 
22
- public static function es_setting_count($id = "") {
23
-
24
  global $wpdb;
25
 
26
- $result = '0';
27
-
28
- if($id > 0) {
29
- $sSql = $wpdb->prepare("SELECT COUNT(*) AS `count` FROM `".$wpdb->prefix."es_pluginconfig` WHERE `es_c_id` = %s", array($id));
30
- } else {
31
- $sSql = "SELECT COUNT(*) AS `count` FROM `".$wpdb->prefix."es_pluginconfig`";
32
- }
33
- $result = $wpdb->get_var($sSql);
34
 
35
- return $result;
36
- }
37
 
38
- public static function es_setting_update($data = array()) {
39
-
40
- global $wpdb;
 
 
41
 
42
- $sSql = $wpdb->prepare("UPDATE `".$wpdb->prefix."es_pluginconfig` SET
43
- `es_c_fromname` = %s, `es_c_fromemail` = %s, `es_c_mailtype` = %s, `es_c_adminmailoption` = %s,
44
- `es_c_adminemail` = %s, `es_c_adminmailsubject` = %s, `es_c_adminmailcontant` = %s, `es_c_usermailoption` = %s,
45
- `es_c_usermailsubject` = %s, `es_c_usermailcontant` = %s, `es_c_optinoption` = %s, `es_c_optinsubject` = %s,
46
- `es_c_optincontent` = %s, `es_c_optinlink` = %s, `es_c_unsublink` = %s, `es_c_unsubtext` = %s,
47
- `es_c_unsubhtml` = %s, `es_c_subhtml` = %s, `es_c_message1` = %s, `es_c_message2` = %s
48
- WHERE es_c_id = %d LIMIT 1",
49
- array($data["es_c_fromname"], $data["es_c_fromemail"], $data["es_c_mailtype"], $data["es_c_adminmailoption"],
50
- $data["es_c_adminemail"], $data["es_c_adminmailsubject"], $data["es_c_adminmailcontant"], $data["es_c_usermailoption"],
51
- $data["es_c_usermailsubject"], $data["es_c_usermailcontant"], $data["es_c_optinoption"], $data["es_c_optinsubject"],
52
- $data["es_c_optincontent"], $data["es_c_optinlink"], $data["es_c_unsublink"], $data["es_c_unsubtext"],
53
- $data["es_c_unsubhtml"], $data["es_c_subhtml"], $data["es_c_message1"], $data["es_c_message2"],
54
- $data["es_c_id"]));
55
- $wpdb->query($sSql);
56
-
57
- return "sus";
58
  }
59
  }
2
 
3
  // Exit if accessed directly
4
  if ( ! defined( 'ABSPATH' ) ) {
5
+ exit;
6
  }
7
 
8
  class es_cls_settings {
19
  return $arrRes;
20
  }
21
 
22
+ public static function es_get_all_settings() {
 
23
  global $wpdb;
24
 
25
+ $query = "SELECT option_name, option_value FROM {$wpdb->prefix}options WHERE option_name LIKE 'ig_es%'";
26
+ $result = $wpdb->get_results( $query, ARRAY_A);
 
 
 
 
 
 
27
 
28
+ $settings = array();
 
29
 
30
+ if ( ! empty( $result ) ) {
31
+ foreach ($result as $index => $data ) {
32
+ $settings[ $data['option_name'] ] = $data['option_value'];
33
+ }
34
+ }
35
 
36
+ return $settings;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
37
  }
38
  }
query/db_subscriber.php CHANGED
@@ -2,7 +2,7 @@
2
 
3
  // Exit if accessed directly
4
  if ( ! defined( 'ABSPATH' ) ) {
5
- exit;
6
  }
7
 
8
  class es_cls_dbquery {
@@ -27,7 +27,7 @@ class es_cls_dbquery {
27
  }
28
  if($id > 0) {
29
  $sSql = $sSql . " and es_email_id=".$id;
30
-
31
  }
32
  $sSql = $sSql . " order by es_email_id asc";
33
  $arrRes = $wpdb->get_results($sSql, ARRAY_A);
@@ -53,7 +53,7 @@ class es_cls_dbquery {
53
 
54
  if($id > 0) {
55
  $sSql = $sSql . " and es_email_id=".$id;
56
-
57
  }
58
  $sSql = $sSql . " order by es_email_id desc";
59
  $sSql = $sSql . " LIMIT $offset, $limit";
@@ -96,9 +96,9 @@ class es_cls_dbquery {
96
  return "ext";
97
  } else {
98
  $guid = es_cls_common::es_generate_guid(60);
99
- $sql = $wpdb->prepare("INSERT INTO `".$wpdb->prefix."es_emaillist`
100
  (`es_email_name`,`es_email_mail`, `es_email_status`, `es_email_created`, `es_email_viewcount`, `es_email_group`, `es_email_guid`)
101
- VALUES(%s, %s, %s, %s, %d, %s, %s)", array(trim($es_subscriber_name), trim($es_subscriber_email),
102
  trim($es_subscriber_status), $CurrentDate, 0, trim($es_subscriber_group), $guid));
103
  $wpdb->query($sql);
104
 
@@ -113,14 +113,14 @@ class es_cls_dbquery {
113
 
114
  if (( in_array('icegram-rainmaker/icegram-rainmaker.php', $active_plugins) || array_key_exists('icegram-rainmaker/icegram-rainmaker.php', $active_plugins) )) { // To Do- Handle via actions
115
 
116
- $es_settings = es_cls_settings::es_setting_select();
117
  $subscribers = array();
118
  $subscribers = self::es_view_subscriber_one($es_subscriber_email,$es_subscriber_group);
119
 
120
  if( did_action( 'rainmaker_post_lead' ) >= 1 ) {
121
- if ( (!empty($es_settings['es_c_optinoption'])) && ($es_settings['es_c_optinoption'] == 'Double Opt In') ) {
122
  es_cls_sendmail::es_sendmail("optin", $template = 0, $subscribers, "optin", 0);
123
- } else if ( (!empty($es_settings['es_c_optinoption'])) && ($es_settings['es_c_optinoption'] == 'Single Opt In' ) ) {
124
  es_cls_sendmail::es_sendmail("welcome", $template = 0, $subscribers, "welcome", 0);
125
  }
126
  }
@@ -128,14 +128,14 @@ class es_cls_dbquery {
128
  return "sus";
129
  }
130
  } elseif($action == "update") {
131
- $sSql = "SELECT * FROM `".$wpdb->prefix."es_emaillist` where es_email_mail='".$es_subscriber_email."'";
132
  $sSql = $sSql . " and es_email_group='".trim($es_subscriber_group)."' and es_email_id != ".$data["es_email_id"];
133
  $result = $wpdb->get_var($sSql);
134
  if ( $result > 0) {
135
  return "ext";
136
  } else {
137
  $sSql = $wpdb->prepare("UPDATE `".$wpdb->prefix."es_emaillist` SET `es_email_name` = %s, `es_email_mail` = %s,
138
- `es_email_status` = %s, `es_email_group` = %s WHERE es_email_id = %d LIMIT 1", array($es_subscriber_name, $es_subscriber_email,
139
  $es_subscriber_status, $es_subscriber_group, $data["es_email_id"]));
140
  $wpdb->query($sSql);
141
  return "sus";
@@ -347,4 +347,38 @@ class es_cls_dbquery {
347
 
348
  }
349
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
350
  }
2
 
3
  // Exit if accessed directly
4
  if ( ! defined( 'ABSPATH' ) ) {
5
+ exit;
6
  }
7
 
8
  class es_cls_dbquery {
27
  }
28
  if($id > 0) {
29
  $sSql = $sSql . " and es_email_id=".$id;
30
+
31
  }
32
  $sSql = $sSql . " order by es_email_id asc";
33
  $arrRes = $wpdb->get_results($sSql, ARRAY_A);
53
 
54
  if($id > 0) {
55
  $sSql = $sSql . " and es_email_id=".$id;
56
+
57
  }
58
  $sSql = $sSql . " order by es_email_id desc";
59
  $sSql = $sSql . " LIMIT $offset, $limit";
96
  return "ext";
97
  } else {
98
  $guid = es_cls_common::es_generate_guid(60);
99
+ $sql = $wpdb->prepare("INSERT INTO `".$wpdb->prefix."es_emaillist`
100
  (`es_email_name`,`es_email_mail`, `es_email_status`, `es_email_created`, `es_email_viewcount`, `es_email_group`, `es_email_guid`)
101
+ VALUES(%s, %s, %s, %s, %d, %s, %s)", array(trim($es_subscriber_name), trim($es_subscriber_email),
102
  trim($es_subscriber_status), $CurrentDate, 0, trim($es_subscriber_group), $guid));
103
  $wpdb->query($sql);
104
 
113
 
114
  if (( in_array('icegram-rainmaker/icegram-rainmaker.php', $active_plugins) || array_key_exists('icegram-rainmaker/icegram-rainmaker.php', $active_plugins) )) { // To Do- Handle via actions
115
 
116
+ $es_c_optinoption = get_option( 'ig_es_optintype' );
117
  $subscribers = array();
118
  $subscribers = self::es_view_subscriber_one($es_subscriber_email,$es_subscriber_group);
119
 
120
  if( did_action( 'rainmaker_post_lead' ) >= 1 ) {
121
+ if ( (!empty($es_c_optinoption)) && ($es_c_optinoption == 'Double Opt In') ) {
122
  es_cls_sendmail::es_sendmail("optin", $template = 0, $subscribers, "optin", 0);
123
+ } else if ( (!empty($es_c_optinoption)) && ($es_c_optinoption == 'Single Opt In' ) ) {
124
  es_cls_sendmail::es_sendmail("welcome", $template = 0, $subscribers, "welcome", 0);
125
  }
126
  }
128
  return "sus";
129
  }
130
  } elseif($action == "update") {
131
+ $sSql = "SELECT * FROM `".$wpdb->prefix."es_emaillist` where es_email_mail='".$es_subscriber_email."'";
132
  $sSql = $sSql . " and es_email_group='".trim($es_subscriber_group)."' and es_email_id != ".$data["es_email_id"];
133
  $result = $wpdb->get_var($sSql);
134
  if ( $result > 0) {
135
  return "ext";
136
  } else {
137
  $sSql = $wpdb->prepare("UPDATE `".$wpdb->prefix."es_emaillist` SET `es_email_name` = %s, `es_email_mail` = %s,
138
+ `es_email_status` = %s, `es_email_group` = %s WHERE es_email_id = %d LIMIT 1", array($es_subscriber_name, $es_subscriber_email,
139
  $es_subscriber_status, $es_subscriber_group, $data["es_email_id"]));
140
  $wpdb->query($sSql);
141
  return "sus";
347
 
348
  }
349
 
350
+ // Query to fetch survey result
351
+ public static function es_survey_res() {
352
+ global $wpdb;
353
+
354
+ $args = array(
355
+ 'post_type' => 'post',
356
+ 'post_status' => 'publish',
357
+ 'fields' => 'ids',
358
+ 'date_query' => array(
359
+ 'after' => '- 30 days'
360
+ )
361
+ );
362
+ $query = new WP_Query( $args );
363
+ $posts = $query->posts;
364
+ $avg_post = (round((count($posts)/4)) > 1 ) ? round((count($posts)/4)) : 1 ;
365
+
366
+ $sSql = "SELECT
367
+ SUM((CASE WHEN es_sent_source = 'Post Notification' THEN 1 ELSE 0 END)) AS post_notification,
368
+ SUM((CASE WHEN es_sent_source = 'Newsletter' THEN 1 ELSE 0 END)) AS newsletter,
369
+ SUM((CASE WHEN es_sent_type = 'Cron' THEN 1 ELSE 0 END)) AS cron,
370
+ SUM((CASE WHEN es_sent_type = 'Immediately' THEN 1 ELSE 0 END)) AS immediately
371
+ FROM ".$wpdb->prefix . "es_sentdetails";
372
+ $es_survey_res = $wpdb->get_results( $sSql, ARRAY_A );
373
+
374
+ $total_subscribers = es_cls_dbquery::es_view_subscriber_count(0);
375
+ $active_subscribers = es_cls_dbquery::es_active_subscribers();
376
+ $es_survey_res = $es_survey_res[0];
377
+ $es_survey_res['es_active_subscribers'] = $active_subscribers;
378
+ $es_survey_res['es_total_subscribers'] = $total_subscribers;
379
+ $es_survey_res['es_avg_post_cnt'] = $avg_post;
380
+
381
+ return $es_survey_res;
382
+ }
383
+
384
  }
readme.txt CHANGED
@@ -4,8 +4,8 @@ Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_i
4
  Author URI: http://www.icegram.com/
5
  Tags: email marketing, email newsletter form, email signup, email widget, newsletter, newsletter signup, subscribe, subscription form, bulk emails, signup form, list builder, lead generation
6
  Requires at least: 3.4
7
- Tested up to: 4.7.5
8
- Stable tag: 3.2.11
9
  License: GPLv3
10
  License URI: http://www.gnu.org/licenses/gpl-3.0.htmlss
11
 
@@ -24,12 +24,12 @@ Email Subscribers is a fully featured subscription plugin specially created keep
24
 
25
  **Easily Collect Leads On Your Website** : Insert a neat looking subscription anywhere on your website. This subscription box is beautifully designed and grabs audiences attention instantly.
26
 
27
- **Send Automated Updates when a Post is published** : Save on time by automating the process of sending emails each time a blog post is published.
28
 
29
  **Quickly Create, Schedule and Send Newsletters** : Create beautiful newsletters using the HTML editor and send them to your subscribers either manually or via cron.
30
 
31
- > **Complete Plugin. Configured within 5 minutes. Works 100%** -
32
- I am very satisfied with this easy and complete plugin/widget. In 5 minutes or less I configured it and is working 100%. I had to delete what I was using from jetpack because it just stop working and I could not figured out why. So this one seems to be the right for me. Thanks
33
  > - [Vsoraya](https://wordpress.org/support/topic/perfect-and-easy-9/)
34
 
35
  ### Complete Feature List of Email Subscribers
@@ -50,7 +50,7 @@ I am very satisfied with this easy and complete plugin/widget. In 5 minutes or l
50
  * **Ability to control user access** (Roles and Capabilities).
51
  * Easy **Integration with [Icegram](https://wordpress.org/plugins/icegram/) and [Rainmaker](https://wordpress.org/plugins/icegram-rainmaker/)** plugin
52
 
53
- > **Best Email Subscriber Plugin!!** -
54
  > I have tried quite a few subscribe by email type plugins and this by far blows them all out of the water. Beautiful emails and and great backend design for the admin. This works so nice and works well with SMTP solutions
55
  > - [Mike Price](https://wordpress.org/support/topic/best-email-subscriber-plugin/)
56
 
@@ -70,7 +70,7 @@ Go to Dashboard->Appearance->Widgets. Drag and drop the Email Subscribers widget
70
 
71
  `<?php es_subbox( $namefield = "YES", $desc = "", $group = "" ); ?>`
72
 
73
- > **Great Plugin** -
74
  > Works as expected. Great way to build an email list on your own site. It allows my clients to manage their own lists via login. I love the automatic notifications to subscribers when new posts are created. Looking forward to a “premium” paid version that includes email templates.
75
  > - [jj9617](https://wordpress.org/support/topic/great-plugin-10646/)
76
 
@@ -78,7 +78,7 @@ Go to Dashboard->Appearance->Widgets. Drag and drop the Email Subscribers widget
78
 
79
  As soon as you publish a new blogpost, email subscribers will automatically send the people on your list a notification, informing them about the new blogpost.
80
 
81
- > **Great product and support** -
82
  > I highly recommend this product. It does everything it says it will do, is easily adaptable to your website, and Mansi’s level of support is fantastic. Unlike some of the other similar plugins, this one gives you total control over who requests to subscribe to your newsletter or blog.
83
  > - [ForPm](https://wordpress.org/support/topic/great-product-and-support-11/)
84
 
@@ -86,7 +86,7 @@ As soon as you publish a new blogpost, email subscribers will automatically send
86
 
87
  Once you setup a ‘New blogpost’ notification mail, you won’t have to look at it ever again. Email Subscribers will detect everytime a new blog article is published on your website and then send an notification email to your list informing them about the article.
88
 
89
- > **Easy to use but super powerfull** -
90
  > **Easy to configure, tweak and manage**. And works like a charm
91
  > - [Aleksander](https://wordpress.org/support/topic/easy-to-use-but-super-powerfull/)
92
 
@@ -94,7 +94,7 @@ Once you setup a ‘New blogpost’ notification mail, you won’t have to look
94
 
95
  Email subscribers has a HTML editor which lets you create elegant newsletter, emails and send them to your subscribers. You can add images, infographics, links, content etc and make your newsletters engaging for your subscribers.
96
 
97
- > **Impressive and simple** -
98
  > Found this plugin, most impressed, simple to set up, easy to use and the support is overwhelming
99
  > - [Closeburn](https://wordpress.org/support/topic/impressive-and-simple/)
100
 
@@ -106,7 +106,7 @@ Using Email subscribers you can either choose to send the newsletters/ emails ma
106
 
107
  Email subscribers has a vast, well documented series of article that can help you understand each feature in detail. Please go ahead and read it incase of any questions : [Email Subscribers Documentation](http://www.icegram.com/knowledgebase_category/email-subscribers).
108
 
109
- > **Hitman of email subscribing** -
110
  > the best plugin for getting subscribers.Combine it with any popup and you don’t need anything else.the help (FAQ) section is really detailed.
111
  > - [DrowsyReader](https://wordpress.org/support/topic/hitman-of-email-subscribing/)
112
 
@@ -114,7 +114,7 @@ Email subscribers has a vast, well documented series of article that can help yo
114
 
115
  Don’t believe it? Have a look at the review section. The support guys are friendly and ever willing to assist you with whatever be your query. Feel free to contact them with both pre-sales, after-sales questions.
116
 
117
- > **Lightning support** -
118
  > Had 3 questions about the plugin, got extensive support with each one. Continue doing what you’re doing! Thanks a lot! 5/5
119
  > - [DomLaurin](https://wordpress.org/support/topic/lightning-support/)
120
 
@@ -122,7 +122,7 @@ Don’t believe it? Have a look at the review section. The support guys are frie
122
 
123
  **Use Email Subscribers with it's Free Addon - Email Subscribers - Group Selector**
124
 
125
- [Email Subscribers - Group Selector](https://wordpress.org/plugins/email-subscribers-advanced-form/) will extend Email Subscribers Form functionality by providing an grouping option right next to the form. The user can then subscribe to whichever group most appeals to him.
126
 
127
  For example: Subscribe either to pop music or to rock music.
128
 
@@ -237,7 +237,7 @@ Refer [here](http://www.icegram.com/documentation/es-how-to-add-update-existing-
237
 
238
  Check steps from [here](http://www.icegram.com/documentation/es-subscribers-are-not-receiving-emails/).
239
 
240
- = 14. How to show subscribe form inside a popup? =
241
 
242
  Refer [here](http://www.icegram.com/documentation/es-how-to-show-subscribe-form-inside-a-popup/).
243
 
@@ -263,25 +263,25 @@ Refer [here](http://www.icegram.com/documentation/es-what-to-do-if-hosting-doesn
263
 
264
  = 20. Email Subscribers FAQ =
265
 
266
- Refer [here](http://www.icegram.com/documentation/es-faq/).
267
 
268
  = 21. How to add group selection in front end subscription box =
269
 
270
  Use [Email Subscribers - Group Selector](https://wordpress.org/plugins/email-subscribers-advanced-form/) add-on.
271
 
272
- = How to install and activate the plugin? and How to setup subscription box widget? =
273
 
274
  [youtube http://www.youtube.com/watch?v=xTlvNCTF46k]
275
 
276
- = How to compose Newsletter and How to Send Newsletter Emails to subscribers? =
277
 
278
  [youtube http://www.youtube.com/watch?v=_Gwxvs9oAIs]
279
 
280
- = How to setup notification mail when news posts are published in the blog? =
281
 
282
  [youtube http://www.youtube.com/watch?v=-qd4HvXRW7k]
283
 
284
- = How to Import & Export email address? =
285
 
286
  [youtube http://www.youtube.com/watch?v=SZEJCijAS1o]
287
 
@@ -289,26 +289,38 @@ Use [Email Subscribers - Group Selector](https://wordpress.org/plugins/email-sub
289
 
290
  1. Front Page - Subscription Form
291
 
292
- 2. Admin page - Subscribers Management
293
 
294
- 3. Admin page - Compose Email
295
 
296
- 4. Admin page - Post Notifications Management
297
 
298
  5. Admin page - Newsletters
299
 
300
- 6. Admin page - Cron Job Settings & Details (Schedule email)
301
 
302
- 7. Admin page - Email Settings
303
 
304
- 8. Admin page - User Roles Management
305
 
306
- 9. Admin page - Reports of all emails sent
307
 
308
- 10 Admin page - Delivery Report of emails i.e. email sent, opened, viewed status, viewed date
 
 
309
 
310
  == Changelog ==
311
 
 
 
 
 
 
 
 
 
 
 
312
  = 3.2.11 (05.06.2017) =
313
 
314
  * Fix: Export filters was not generating correct data
@@ -551,6 +563,16 @@ For the changelog of earlier versions, please refer to the separate [changelog.t
551
 
552
  == Upgrade Notice ==
553
 
 
 
 
 
 
 
 
 
 
 
554
  = 3.2.11 (05.06.2017) =
555
 
556
  * Fix: Export filters was not generating correct data
4
  Author URI: http://www.icegram.com/
5
  Tags: email marketing, email newsletter form, email signup, email widget, newsletter, newsletter signup, subscribe, subscription form, bulk emails, signup form, list builder, lead generation
6
  Requires at least: 3.4
7
+ Tested up to: 4.8
8
+ Stable tag: 3.3
9
  License: GPLv3
10
  License URI: http://www.gnu.org/licenses/gpl-3.0.htmlss
11
 
24
 
25
  **Easily Collect Leads On Your Website** : Insert a neat looking subscription anywhere on your website. This subscription box is beautifully designed and grabs audiences attention instantly.
26
 
27
+ **Send Automated Updates when a Post is published** : Save on time by automating the process of sending emails each time a blog post is published.
28
 
29
  **Quickly Create, Schedule and Send Newsletters** : Create beautiful newsletters using the HTML editor and send them to your subscribers either manually or via cron.
30
 
31
+ > **Complete Plugin. Configured within 5 minutes. Works 100%** -
32
+ I am very satisfied with this easy and complete plugin/widget. In 5 minutes or less I configured it and is working 100%. I had to delete what I was using from jetpack because it just stop working and I could not figured out why. So this one seems to be the right for me. Thanks
33
  > - [Vsoraya](https://wordpress.org/support/topic/perfect-and-easy-9/)
34
 
35
  ### Complete Feature List of Email Subscribers
50
  * **Ability to control user access** (Roles and Capabilities).
51
  * Easy **Integration with [Icegram](https://wordpress.org/plugins/icegram/) and [Rainmaker](https://wordpress.org/plugins/icegram-rainmaker/)** plugin
52
 
53
+ > **Best Email Subscriber Plugin!!** -
54
  > I have tried quite a few subscribe by email type plugins and this by far blows them all out of the water. Beautiful emails and and great backend design for the admin. This works so nice and works well with SMTP solutions
55
  > - [Mike Price](https://wordpress.org/support/topic/best-email-subscriber-plugin/)
56
 
70
 
71
  `<?php es_subbox( $namefield = "YES", $desc = "", $group = "" ); ?>`
72
 
73
+ > **Great Plugin** -
74
  > Works as expected. Great way to build an email list on your own site. It allows my clients to manage their own lists via login. I love the automatic notifications to subscribers when new posts are created. Looking forward to a “premium” paid version that includes email templates.
75
  > - [jj9617](https://wordpress.org/support/topic/great-plugin-10646/)
76
 
78
 
79
  As soon as you publish a new blogpost, email subscribers will automatically send the people on your list a notification, informing them about the new blogpost.
80
 
81
+ > **Great product and support** -
82
  > I highly recommend this product. It does everything it says it will do, is easily adaptable to your website, and Mansi’s level of support is fantastic. Unlike some of the other similar plugins, this one gives you total control over who requests to subscribe to your newsletter or blog.
83
  > - [ForPm](https://wordpress.org/support/topic/great-product-and-support-11/)
84
 
86
 
87
  Once you setup a ‘New blogpost’ notification mail, you won’t have to look at it ever again. Email Subscribers will detect everytime a new blog article is published on your website and then send an notification email to your list informing them about the article.
88
 
89
+ > **Easy to use but super powerfull** -
90
  > **Easy to configure, tweak and manage**. And works like a charm
91
  > - [Aleksander](https://wordpress.org/support/topic/easy-to-use-but-super-powerfull/)
92
 
94
 
95
  Email subscribers has a HTML editor which lets you create elegant newsletter, emails and send them to your subscribers. You can add images, infographics, links, content etc and make your newsletters engaging for your subscribers.
96
 
97
+ > **Impressive and simple** -
98
  > Found this plugin, most impressed, simple to set up, easy to use and the support is overwhelming
99
  > - [Closeburn](https://wordpress.org/support/topic/impressive-and-simple/)
100
 
106
 
107
  Email subscribers has a vast, well documented series of article that can help you understand each feature in detail. Please go ahead and read it incase of any questions : [Email Subscribers Documentation](http://www.icegram.com/knowledgebase_category/email-subscribers).
108
 
109
+ > **Hitman of email subscribing** -
110
  > the best plugin for getting subscribers.Combine it with any popup and you don’t need anything else.the help (FAQ) section is really detailed.
111
  > - [DrowsyReader](https://wordpress.org/support/topic/hitman-of-email-subscribing/)
112
 
114
 
115
  Don’t believe it? Have a look at the review section. The support guys are friendly and ever willing to assist you with whatever be your query. Feel free to contact them with both pre-sales, after-sales questions.
116
 
117
+ > **Lightning support** -
118
  > Had 3 questions about the plugin, got extensive support with each one. Continue doing what you’re doing! Thanks a lot! 5/5
119
  > - [DomLaurin](https://wordpress.org/support/topic/lightning-support/)
120
 
122
 
123
  **Use Email Subscribers with it's Free Addon - Email Subscribers - Group Selector**
124
 
125
+ [Email Subscribers - Group Selector](https://wordpress.org/plugins/email-subscribers-advanced-form/) will extend Email Subscribers Form functionality by providing an grouping option right next to the form. The user can then subscribe to whichever group most appeals to him.
126
 
127
  For example: Subscribe either to pop music or to rock music.
128
 
237
 
238
  Check steps from [here](http://www.icegram.com/documentation/es-subscribers-are-not-receiving-emails/).
239
 
240
+ = 14. How to show subscribe form inside a popup? =
241
 
242
  Refer [here](http://www.icegram.com/documentation/es-how-to-show-subscribe-form-inside-a-popup/).
243
 
263
 
264
  = 20. Email Subscribers FAQ =
265
 
266
+ Refer [here](http://www.icegram.com/documentation/es-faq/).
267
 
268
  = 21. How to add group selection in front end subscription box =
269
 
270
  Use [Email Subscribers - Group Selector](https://wordpress.org/plugins/email-subscribers-advanced-form/) add-on.
271
 
272
+ = Video : How to install and activate the plugin? and How to setup subscription box widget? =
273
 
274
  [youtube http://www.youtube.com/watch?v=xTlvNCTF46k]
275
 
276
+ = Video : How to compose Newsletter and How to Send Newsletter Emails to subscribers? =
277
 
278
  [youtube http://www.youtube.com/watch?v=_Gwxvs9oAIs]
279
 
280
+ = Video : How to setup notification mail when news posts are published in the blog? =
281
 
282
  [youtube http://www.youtube.com/watch?v=-qd4HvXRW7k]
283
 
284
+ = Video : How to Import & Export email address? =
285
 
286
  [youtube http://www.youtube.com/watch?v=SZEJCijAS1o]
287
 
289
 
290
  1. Front Page - Subscription Form
291
 
292
+ 2. Admin page - Subscribers
293
 
294
+ 3. Admin page - Compose Email
295
 
296
+ 4. Admin page - Post Notifications
297
 
298
  5. Admin page - Newsletters
299
 
300
+ 6. Admin page - Settings Tab 1 - Admin related Settings
301
 
302
+ 7. Admin page - Settings Tab 2 - Signup Confirmation related Settings
303
 
304
+ 8. Admin page - Settings Tab 3 - User Roles related Settings
305
 
306
+ 9. Admin page - Settings Tab 4 - Cron Job (Schedule Email) related Settings
307
 
308
+ 10. Admin page - Reports of all Newsletter & Post Notification emails sent
309
+
310
+ 11. Admin page - Delivery Report of emails i.e. email sent, opened, viewed status, viewed date
311
 
312
  == Changelog ==
313
 
314
+ = 3.3 (13.06.2017) =
315
+
316
+ * New: Merged Roles and Cron menu into Settings
317
+ * New: Tab structure for Settings
318
+ * Fix: Javacript error on saving composed email template
319
+ * Update: Moved settings data from custom table to WordPress options table
320
+ * Update: Do not allow to assign roles for Help & Info and Settings menu
321
+ * Update: Text correction at few places
322
+ * Update: POT file
323
+
324
  = 3.2.11 (05.06.2017) =
325
 
326
  * Fix: Export filters was not generating correct data
563
 
564
  == Upgrade Notice ==
565
 
566
+ = 3.3 (13.06.2017) =
567
+
568
+ * New: Merged Roles and Cron menu into Settings
569
+ * New: Tab structure for Settings
570
+ * Fix: Javacript error on saving composed email template
571
+ * Update: Moved settings data from custom table to WordPress options table
572
+ * Update: Do not allow to assign roles for Help & Info and Settings menu
573
+ * Update: Text correction at few places
574
+ * Update: POT file
575
+
576
  = 3.2.11 (05.06.2017) =
577
 
578
  * Fix: Export filters was not generating correct data
roles/roles-add.php DELETED
@@ -1,214 +0,0 @@
1
- <?php
2
-
3
- // Exit if accessed directly
4
- if ( ! defined( 'ABSPATH' ) ) {
5
- exit;
6
- }
7
-
8
- ?>
9
-
10
- <div class="wrap">
11
- <?php
12
- $es_errors = array();
13
- $es_success = '';
14
- $es_error_found = FALSE;
15
-
16
- $es_roles_subscriber = "";
17
- $es_roles_mail = "";
18
- $es_roles_notification = "";
19
- $es_roles_sendmail = "";
20
- $es_roles_setting = "";
21
- $es_roles_sentmail = "";
22
- $es_roles_help = "";
23
-
24
- // Preset the form fields
25
- $form = array(
26
- 'es_roles_subscriber' => '',
27
- 'es_roles_mail' => '',
28
- 'es_roles_notification' => '',
29
- 'es_roles_sendmail' => '',
30
- 'es_roles_setting' => '',
31
- 'es_roles_sentmail' => '',
32
- 'es_roles_help' => ''
33
- );
34
-
35
- // Form submitted, check the data
36
- if (isset($_POST['es_form_submit']) && $_POST['es_form_submit'] == 'yes') {
37
- // Just security thingy that wordpress offers us
38
- check_admin_referer('es_roles_add');
39
-
40
- $form['es_roles_subscriber'] = isset($_POST['es_roles_subscriber']) ? $_POST['es_roles_subscriber'] : '';
41
- $form['es_roles_mail'] = isset($_POST['es_roles_mail']) ? $_POST['es_roles_mail'] : '';
42
- $form['es_roles_notification'] = isset($_POST['es_roles_notification']) ? $_POST['es_roles_notification'] : '';
43
- $form['es_roles_sendmail'] = isset($_POST['es_roles_sendmail']) ? $_POST['es_roles_sendmail'] : '';
44
- $form['es_roles_setting'] = isset($_POST['es_roles_setting']) ? $_POST['es_roles_setting'] : '';
45
- $form['es_roles_sentmail'] = isset($_POST['es_roles_sentmail']) ? $_POST['es_roles_sentmail'] : '';
46
- $form['es_roles_help'] = isset($_POST['es_roles_help']) ? $_POST['es_roles_help'] : '';
47
-
48
- // No errors found, we can add this Group to the table
49
- if ($es_error_found == FALSE) {
50
- $action = false;
51
- $action = update_option( 'es_c_rolesandcapabilities', $form );
52
- if($action) {
53
- $es_success = __( 'Role Updated. ', ES_TDOMAIN );
54
- }
55
-
56
-
57
- // Reset the form fields
58
- $form = array(
59
- 'es_roles_subscriber' => '',
60
- 'es_roles_mail' => '',
61
- 'es_roles_notification' => '',
62
- 'es_roles_sendmail' => '',
63
- 'es_roles_setting' => '',
64
- 'es_roles_sentmail' => '',
65
- 'es_roles_help' => ''
66
- );
67
- }
68
- }
69
-
70
- $es_c_rolesandcapabilities = get_option('es_c_rolesandcapabilities', 'norecord');
71
- if($es_c_rolesandcapabilities <> 'norecord' && $es_c_rolesandcapabilities <> "") {
72
- $es_roles_subscriber = $es_c_rolesandcapabilities['es_roles_subscriber'];
73
- $es_roles_mail = $es_c_rolesandcapabilities['es_roles_mail'];
74
- $es_roles_notification = $es_c_rolesandcapabilities['es_roles_notification'];
75
- $es_roles_sendmail = $es_c_rolesandcapabilities['es_roles_sendmail'];
76
- $es_roles_setting = $es_c_rolesandcapabilities['es_roles_setting'];
77
- $es_roles_sentmail = $es_c_rolesandcapabilities['es_roles_sentmail'];
78
- $es_roles_help = $es_c_rolesandcapabilities['es_roles_help'];
79
- }
80
-
81
- if ($es_error_found == TRUE && isset($es_errors[0]) == TRUE) {
82
- ?>
83
- <div class="error fade">
84
- <p><strong>
85
- <?php echo $es_errors[0]; ?>
86
- </strong></p>
87
- </div>
88
- <?php
89
- }
90
-
91
- if ($es_error_found == FALSE && isset($es_success[0]) == TRUE) {
92
- ?>
93
- <div class="notice notice-success is-dismissible">
94
- <p><strong>
95
- <?php echo $es_success; ?>
96
- </strong></p>
97
- </div>
98
- <?php
99
- }
100
- ?>
101
-
102
- <style>
103
- .form-table th {
104
- width: 250px;
105
- }
106
- </style>
107
-
108
- <div class="wrap">
109
- <h2>
110
- <?php echo __( 'User Roles', ES_TDOMAIN ); ?>
111
- <a class="add-new-h2" target="_blank" type="button" href="<?php echo ES_FAV; ?>"><?php echo __( 'Help', ES_TDOMAIN ); ?></a>
112
- </h2>
113
- <p class="description">
114
- <?php echo __( 'Select user roles who can access following menus. Only Admin can change this.', ES_TDOMAIN ); ?>
115
- </p>
116
- <form name="form_roles" method="post" action="#">
117
- <table class="form-table">
118
- <tbody>
119
- <tr>
120
- <th scope="row">
121
- <label for="tag-image"><?php echo __( 'Subscribers Menu', ES_TDOMAIN ); ?></label>
122
- </th>
123
- <td>
124
- <select name="es_roles_subscriber" id="es_roles_subscriber">
125
- <option value='manage_options' <?php if($es_roles_subscriber == 'manage_options') { echo "selected='selected'" ; } ?>><?php echo __( 'Administrator Only', ES_TDOMAIN ); ?></option>
126
- <option value='edit_others_pages' <?php if($es_roles_subscriber == 'edit_others_pages') { echo "selected='selected'" ; } ?>><?php echo __( 'Administrator/Editor', ES_TDOMAIN ); ?></option>
127
- <option value='edit_posts' <?php if($es_roles_subscriber == 'edit_posts') { echo "selected='selected'" ; } ?>><?php echo __( 'Administrator/Editor/Author/Contributor', ES_TDOMAIN ); ?></option>
128
- </select>
129
- </td>
130
- </tr>
131
- <tr>
132
- <th scope="row">
133
- <label for="tag-image"><?php echo __( 'Compose Menu', ES_TDOMAIN ); ?></label>
134
- </th>
135
- <td>
136
- <select name="es_roles_mail" id="es_roles_mail">
137
- <option value='manage_options' <?php if($es_roles_mail == 'manage_options') { echo "selected='selected'" ; } ?>><?php echo __( 'Administrator Only', ES_TDOMAIN ); ?></option>
138
- <option value='edit_others_pages' <?php if($es_roles_mail == 'edit_others_pages') { echo "selected='selected'" ; } ?>><?php echo __( 'Administrator/Editor', ES_TDOMAIN ); ?></option>
139
- <option value='edit_posts' <?php if($es_roles_mail == 'edit_posts') { echo "selected='selected'" ; } ?>><?php echo __( 'Administrator/Editor/Author/Contributor', ES_TDOMAIN ); ?></option>
140
- </select>
141
- </td>
142
- </tr>
143
- <tr>
144
- <th scope="row">
145
- <label for="tag-image"><?php echo __( 'Post Notifications Menu', ES_TDOMAIN ); ?></label>
146
- </th>
147
- <td>
148
- <select name="es_roles_notification" id="es_roles_notification">
149
- <option value='manage_options' <?php if($es_roles_notification == 'manage_options') { echo "selected='selected'" ; } ?>><?php echo __( 'Administrator Only', ES_TDOMAIN ); ?></option>
150
- <option value='edit_others_pages' <?php if($es_roles_notification == 'edit_others_pages') { echo "selected='selected'" ; } ?>><?php echo __( 'Administrator/Editor', ES_TDOMAIN ); ?></option>
151
- <option value='edit_posts' <?php if($es_roles_notification == 'edit_posts') { echo "selected='selected'" ; } ?>><?php echo __( 'Administrator/Editor/Author/Contributor', ES_TDOMAIN ); ?></option>
152
- </select>
153
- </td>
154
- </tr>
155
- <tr>
156
- <th scope="row">
157
- <label for="tag-image"><?php echo __( 'Newsletters + Cron Settings Menu', ES_TDOMAIN ); ?></label>
158
- </th>
159
- <td>
160
- <select name="es_roles_sendmail" id="es_roles_sendmail">
161
- <option value='manage_options' <?php if($es_roles_sendmail == 'manage_options') { echo "selected='selected'" ; } ?>><?php echo __( 'Administrator Only', ES_TDOMAIN ); ?></option>
162
- <option value='edit_others_pages' <?php if($es_roles_sendmail == 'edit_others_pages') { echo "selected='selected'" ; } ?>><?php echo __( 'Administrator/Editor', ES_TDOMAIN ); ?></option>
163
- <option value='edit_posts' <?php if($es_roles_sendmail == 'edit_posts') { echo "selected='selected'" ; } ?>><?php echo __( 'Administrator/Editor/Author/Contributor', ES_TDOMAIN ); ?></option>
164
- </select>
165
- </td>
166
- </tr>
167
- <tr>
168
- <th scope="row">
169
- <label for="tag-image"><?php echo __( 'Email Settings Menu', ES_TDOMAIN ); ?></label>
170
- </th>
171
- <td>
172
- <select name="es_roles_setting" id="es_roles_setting">
173
- <option value='manage_options' <?php if($es_roles_setting == 'manage_options') { echo "selected='selected'" ; } ?>><?php echo __( 'Administrator Only', ES_TDOMAIN ); ?></option>
174
- <option value='edit_others_pages' <?php if($es_roles_setting == 'edit_others_pages') { echo "selected='selected'" ; } ?>><?php echo __( 'Administrator/Editor', ES_TDOMAIN ); ?></option>
175
- <option value='edit_posts' <?php if($es_roles_setting == 'edit_posts') { echo "selected='selected'" ; } ?>><?php echo __( 'Administrator/Editor/Author/Contributor', ES_TDOMAIN ); ?></option>
176
- </select>
177
- </td>
178
- </tr>
179
- <tr>
180
- <th scope="row">
181
- <label for="tag-image"><?php echo __( 'Reports Menu', ES_TDOMAIN ); ?></label>
182
- </th>
183
- <td>
184
- <select name="es_roles_sentmail" id="es_roles_sentmail">
185
- <option value='manage_options' <?php if($es_roles_sentmail == 'manage_options') { echo "selected='selected'" ; } ?>><?php echo __( 'Administrator Only', ES_TDOMAIN ); ?></option>
186
- <option value='edit_others_pages' <?php if($es_roles_sentmail == 'edit_others_pages') { echo "selected='selected'" ; } ?>><?php echo __( 'Administrator/Editor', ES_TDOMAIN ); ?></option>
187
- <option value='edit_posts' <?php if($es_roles_sentmail == 'edit_posts') { echo "selected='selected'" ; } ?>><?php echo __( 'Administrator/Editor/Author/Contributor', ES_TDOMAIN ); ?></option>
188
- </select>
189
- </td>
190
- </tr>
191
- <tr>
192
- <th scope="row">
193
- <label for="tag-image"><?php echo __( 'Help & Info Menu', ES_TDOMAIN ); ?></label>
194
- </th>
195
- <td>
196
- <select name="es_roles_help" id="es_roles_help">
197
- <option value='manage_options' <?php if($es_roles_help == 'manage_options') { echo "selected='selected'" ; } ?>><?php echo __( 'Administrator Only', ES_TDOMAIN ); ?></option>
198
- <option value='edit_others_pages' <?php if($es_roles_help == 'edit_others_pages') { echo "selected='selected'" ; } ?>><?php echo __( 'Administrator/Editor', ES_TDOMAIN ); ?></option>
199
- <option value='edit_posts' <?php if($es_roles_help == 'edit_posts') { echo "selected='selected'" ; } ?>><?php echo __( 'Administrator/Editor/Author/Contributor', ES_TDOMAIN ); ?></option>
200
- </select>
201
- </td>
202
- </tr>
203
- </tbody>
204
- </table>
205
- <input type="hidden" name="es_form_submit" value="yes"/>
206
- <p style="padding-top:5px;">
207
- <input type="submit" name="publish" lang="publish" class="button-primary" value="<?php echo __( 'Save', ES_TDOMAIN ); ?>" />
208
- </p>
209
- <div style="height:10px;"></div>
210
- <?php wp_nonce_field('es_roles_add'); ?>
211
- </form>
212
- </div>
213
- <p class="description"><?php echo ES_OFFICIAL; ?></p>
214
- </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
settings/es-settings.js ADDED
@@ -0,0 +1,51 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ jQuery( function( $ ) {
2
+
3
+ // Hide and show settings field depending on nav tab selected
4
+ $( '.nav-tab' ).on( 'click', function() {
5
+ var active_tab = this.id;
6
+ window.history.pushState( "", "", '#'+active_tab );
7
+ $( 'table.es-settings' ).find( '.active-settings' ).removeClass( 'active-settings' ).addClass( 'hidden' );
8
+ $( document ).find('.nav-tab-active').removeClass( 'nav-tab-active' );
9
+ $( 'table.es-settings tr.es-'+active_tab ).addClass( 'active-settings' ).removeClass( 'hidden' );
10
+ $( this ).addClass( 'nav-tab-active' );
11
+
12
+ return false;
13
+ } );
14
+
15
+ // Add action attribute to the form to maintain the structure of url
16
+ $( '#es_form' ).submit( function(e) {
17
+ e.preventDefault();
18
+
19
+ // Cron field validation
20
+ if ( document.es_form.es_cron_mailcount.value == "" ) {
21
+ alert( es_cron_notices.es_cron_number );
22
+ document.es_form.es_cron_mailcount.focus();
23
+ return false;
24
+ } else if ( isNaN( document.es_form.es_cron_mailcount.value ) ) {
25
+ alert( es_cron_notices.es_cron_input_type );
26
+ document.es_form.es_cron_mailcount.focus();
27
+ return false;
28
+ }
29
+
30
+ // Hide all form setting initially on Save settings
31
+ $( '.es-settings' ).find( 'tr' ).addClass( 'hidden' );
32
+ $( '#es-save-settings' ).hide();
33
+
34
+ // Add current location to the action attribute of form
35
+ current_nav_tab = window.location;
36
+ $( '#es_form' ).attr( 'action', current_nav_tab );
37
+
38
+ // Submit Settings
39
+ this.submit();
40
+ } );
41
+
42
+ // On clicking save settings make sure the same tab is reloaded
43
+ $( window ).load( function() {
44
+ default_nav_tab = '#admin';
45
+ current_nav_tab = window.location.hash;
46
+ if ( current_nav_tab == null || current_nav_tab == "" ) {
47
+ current_nav_tab = default_nav_tab;
48
+ }
49
+ jQuery( '#es-tabs' ).find( current_nav_tab ).trigger( 'click' );
50
+ });
51
+ });
settings/settings-edit.php CHANGED
@@ -1,410 +1,599 @@
1
- <?php
2
-
3
- // Exit if accessed directly
4
- if ( ! defined( 'ABSPATH' ) ) {
5
- exit;
6
- }
7
-
8
- ?>
9
-
10
- <div class="wrap">
11
- <?php
12
- $es_errors = array();
13
- $es_success = '';
14
- $es_error_found = FALSE;
15
-
16
- $result = es_cls_settings::es_setting_count(1);
17
- if ($result != '1') {
18
- ?><div class="error fade">
19
- <p><strong>
20
- <?php echo __( 'Oops, selected details does not exists.', ES_TDOMAIN ); ?>
21
- </strong></p>
22
- </div><?php
23
- $form = array(
24
- 'es_c_id' => '',
25
- 'es_c_fromname' => '',
26
- 'es_c_fromemail' => '',
27
- 'es_c_mailtype' => '',
28
- 'es_c_adminmailoption' => '',
29
- 'es_c_adminemail' => '',
30
- 'es_c_adminmailsubject' => '',
31
- 'es_c_adminmailcontant' => '',
32
- 'es_c_usermailoption' => '',
33
- 'es_c_usermailsubject' => '',
34
- 'es_c_usermailcontant' => '',
35
- 'es_c_optinoption' => '',
36
- 'es_c_optinsubject' => '',
37
- 'es_c_optincontent' => '',
38
- 'es_c_optinlink' => '',
39
- 'es_c_unsublink' => '',
40
- 'es_c_unsubtext' => '',
41
- 'es_c_unsubhtml' => '',
42
- 'es_c_subhtml' => '',
43
- 'es_c_message1' => '',
44
- 'es_c_message2' => '',
45
- 'es_c_sentreport' => ''
46
- );
47
- } else {
48
- $es_errors = array();
49
- $es_success = '';
50
- $es_error_found = FALSE;
51
-
52
- $data = array();
53
- $data = es_cls_settings::es_setting_select(1);
54
-
55
- $es_c_sentreport_subject = '';
56
- $es_c_sentreport_subject = get_option('es_c_sentreport_subject', 'nosubjectexists');
57
- if($es_c_sentreport_subject == "nosubjectexists") {
58
- $es_sent_report_subject = es_cls_common::es_sent_report_subject();
59
- add_option('es_c_sentreport_subject', $es_sent_report_subject);
60
- $es_c_sentreport_subject = $es_sent_report_subject;
61
- }
62
-
63
- $es_c_sentreport = '';
64
- $es_c_sentreport = get_option('es_c_sentreport', 'nooptionexists');
65
- if($es_c_sentreport == "nooptionexists") {
66
- $es_sent_report_plain = es_cls_common::es_sent_report_plain();
67
- add_option('es_c_sentreport', $es_sent_report_plain);
68
- $es_c_sentreport = $es_sent_report_plain;
69
- }
70
-
71
- $es_c_post_image_size = '';
72
- $es_c_post_image_size = get_option( 'es_c_post_image_size', 'nosize' );
73
- if( $es_c_post_image_size == 'nosize' ) {
74
- $es_post_image_size = 'full';
75
- add_option( 'es_c_post_image_size', $es_post_image_size );
76
- $es_c_post_image_size = $es_post_image_size;
77
- }
78
-
79
- // Preset the form fields
80
- $form = array(
81
- 'es_c_id' => $data['es_c_id'],
82
- 'es_c_fromname' => $data['es_c_fromname'],
83
- 'es_c_fromemail' => $data['es_c_fromemail'],
84
- 'es_c_mailtype' => $data['es_c_mailtype'],
85
- 'es_c_adminmailoption' => $data['es_c_adminmailoption'],
86
- 'es_c_adminemail' => $data['es_c_adminemail'],
87
- 'es_c_adminmailsubject' => $data['es_c_adminmailsubject'],
88
- 'es_c_adminmailcontant' => $data['es_c_adminmailcontant'],
89
- 'es_c_usermailoption' => $data['es_c_usermailoption'],
90
- 'es_c_usermailsubject' => $data['es_c_usermailsubject'],
91
- 'es_c_usermailcontant' => $data['es_c_usermailcontant'],
92
- 'es_c_optinoption' => $data['es_c_optinoption'],
93
- 'es_c_optinsubject' => $data['es_c_optinsubject'],
94
- 'es_c_optincontent' => $data['es_c_optincontent'],
95
- 'es_c_optinlink' => $data['es_c_optinlink'],
96
- 'es_c_unsublink' => $data['es_c_unsublink'],
97
- 'es_c_unsubtext' => $data['es_c_unsubtext'],
98
- 'es_c_unsubhtml' => $data['es_c_unsubhtml'],
99
- 'es_c_subhtml' => $data['es_c_subhtml'],
100
- 'es_c_message1' => $data['es_c_message1'],
101
- 'es_c_message2' => $data['es_c_message2'],
102
- 'es_c_sentreport' => $es_c_sentreport,
103
- 'es_c_sentreport_subject' => $es_c_sentreport_subject,
104
- 'es_c_post_image_size' => $es_c_post_image_size
105
- );
106
- }
107
-
108
- // Form submitted, check the data
109
- if (isset($_POST['es_form_submit']) && $_POST['es_form_submit'] == 'yes') {
110
-
111
- // Just security thingy that wordpress offers us
112
- check_admin_referer('es_form_edit');
113
-
114
- $form['es_c_fromname'] = isset($_POST['es_c_fromname']) ? $_POST['es_c_fromname'] : '';
115
- $form['es_c_fromname'] = stripslashes($form['es_c_fromname']);
116
- if ($form['es_c_fromname'] == '') {
117
- $es_errors[] = __( 'Please enter sender of notifications from name.', ES_TDOMAIN );
118
- $es_error_found = TRUE;
119
- }
120
- $form['es_c_fromemail'] = isset($_POST['es_c_fromemail']) ? $_POST['es_c_fromemail'] : '';
121
- if ($form['es_c_fromemail'] == '') {
122
- $es_errors[] = __( 'Please enter sender of notifications from email.', ES_TDOMAIN );
123
- $es_error_found = TRUE;
124
- }
125
-
126
- $home_url = home_url('/');
127
- $optinlink = $home_url . "?es=optin&db=###DBID###&email=###EMAIL###&guid=###GUID###";
128
- $unsublink = $home_url . "?es=unsubscribe&db=###DBID###&email=###EMAIL###&guid=###GUID###";
129
-
130
- $form['es_c_mailtype'] = isset($_POST['es_c_mailtype']) ? $_POST['es_c_mailtype'] : '';
131
- $form['es_c_adminmailoption'] = isset($_POST['es_c_adminmailoption']) ? $_POST['es_c_adminmailoption'] : '';
132
- $form['es_c_adminemail'] = isset($_POST['es_c_adminemail']) ? $_POST['es_c_adminemail'] : '';
133
- $form['es_c_adminmailsubject'] = isset($_POST['es_c_adminmailsubject']) ? $_POST['es_c_adminmailsubject'] : '';
134
- $form['es_c_adminmailcontant'] = isset($_POST['es_c_adminmailcontant']) ? $_POST['es_c_adminmailcontant'] : '';
135
- $form['es_c_usermailoption'] = isset($_POST['es_c_usermailoption']) ? $_POST['es_c_usermailoption'] : '';
136
- $form['es_c_usermailsubject'] = isset($_POST['es_c_usermailsubject']) ? $_POST['es_c_usermailsubject'] : '';
137
- $form['es_c_usermailcontant'] = isset($_POST['es_c_usermailcontant']) ? $_POST['es_c_usermailcontant'] : '';
138
- $form['es_c_optinoption'] = isset($_POST['es_c_optinoption']) ? $_POST['es_c_optinoption'] : '';
139
- $form['es_c_optinsubject'] = isset($_POST['es_c_optinsubject']) ? $_POST['es_c_optinsubject'] : '';
140
- $form['es_c_optincontent'] = isset($_POST['es_c_optincontent']) ? $_POST['es_c_optincontent'] : '';
141
- $form['es_c_optinlink'] = $optinlink; //isset($_POST['es_c_optinlink']) ? $_POST['es_c_optinlink'] : '';
142
- $form['es_c_unsublink'] = $unsublink; //isset($_POST['es_c_unsublink']) ? $_POST['es_c_unsublink'] : '';
143
- $form['es_c_unsubtext'] = isset($_POST['es_c_unsubtext']) ? $_POST['es_c_unsubtext'] : '';
144
- $form['es_c_unsubhtml'] = isset($_POST['es_c_unsubhtml']) ? $_POST['es_c_unsubhtml'] : '';
145
- $form['es_c_subhtml'] = isset($_POST['es_c_subhtml']) ? $_POST['es_c_subhtml'] : '';
146
- $form['es_c_message1'] = isset($_POST['es_c_message1']) ? $_POST['es_c_message1'] : '';
147
- $form['es_c_message2'] = isset($_POST['es_c_message2']) ? $_POST['es_c_message2'] : '';
148
- $form['es_c_id'] = isset($_POST['es_c_id']) ? $_POST['es_c_id'] : '1';
149
-
150
- // No errors found, we can add this Group to the table
151
- if ($es_error_found == FALSE) {
152
- $action = "";
153
- $action = es_cls_settings::es_setting_update($form);
154
- if($action == "sus") {
155
- $es_success = __( 'Settings Saved.', ES_TDOMAIN );
156
- } else {
157
- $es_error_found == TRUE;
158
- $es_errors[] = __( 'Oops, unable to update.', ES_TDOMAIN );
159
- }
160
- }
161
-
162
- // Additional fields to be updated in options table
163
- $form['es_c_sentreport'] = isset($_POST['es_c_sentreport']) ? $_POST['es_c_sentreport'] : '';
164
- update_option( 'es_c_sentreport', $form['es_c_sentreport'] );
165
-
166
- $form['es_c_sentreport_subject'] = isset($_POST['es_c_sentreport_subject']) ? $_POST['es_c_sentreport_subject'] : '';
167
- update_option( 'es_c_sentreport_subject', $form['es_c_sentreport_subject'] );
168
-
169
- $form['es_c_post_image_size'] = isset($_POST['es_c_post_image_size']) ? $_POST['es_c_post_image_size'] : '';
170
- update_option( 'es_c_post_image_size', $form['es_c_post_image_size'] );
171
- }
172
-
173
- if ($es_error_found == TRUE && isset($es_errors[0]) == TRUE) {
174
- ?><div class="error fade">
175
- <p><strong>
176
- <?php echo $es_errors[0]; ?>
177
- </strong></p>
178
- </div><?php
179
- }
180
- if ($es_error_found == FALSE && strlen($es_success) > 0) {
181
- ?><div class="notice notice-success is-dismissible">
182
- <p><strong>
183
- <?php echo $es_success; ?>
184
- </strong></p>
185
- </div><?php
186
- }
187
- ?>
188
-
189
- <style>
190
- .form-table th {
191
- width: 450px;
192
- }
193
- </style>
194
-
195
- <div class="wrap">
196
- <h2>
197
- <?php echo __( 'Email Settings', ES_TDOMAIN ); ?>
198
- <a class="add-new-h2" target="_blank" href="<?php echo ES_FAV; ?>"><?php echo __( 'Help', ES_TDOMAIN ); ?></a>
199
- </h2>
200
- <form name="es_form" method="post" action="#" onsubmit="return _es_submit()">
201
- <table class="form-table">
202
- <tbody>
203
- <tr>
204
- <th scope="row">
205
- <label for="elp"><?php echo __( 'Sender of Notifications', ES_TDOMAIN ); ?>
206
- <p class="description"><?php echo __( 'Choose a FROM name and FROM email address for all the emails to be sent from this plugin.', ES_TDOMAIN ); ?></p>
207
- </label>
208
- </th>
209
- <td>
210
- <input name="es_c_fromname" type="text" id="es_c_fromname" value="<?php echo stripslashes($form['es_c_fromname']); ?>" maxlength="225" />
211
- <input name="es_c_fromemail" type="text" id="es_c_fromemail" value="<?php echo stripslashes($form['es_c_fromemail']); ?>" size="35" maxlength="225" />
212
- </td>
213
- </tr>
214
- <tr>
215
- <th scope="row">
216
- <label for="elp"><?php echo __( 'Mail Type', ES_TDOMAIN ); ?>
217
- <p class="description"><?php echo __( 'Option 1 & 2 is to send mails with default Wordpress method wp_mail(). Option 3 & 4 is to send mails with PHP method mail().', ES_TDOMAIN ); ?></p></label>
218
- </th>
219
- <td>
220
- <select name="es_c_mailtype" id="es_c_mailtype">
221
- <option value='WP HTML MAIL' <?php if($form['es_c_mailtype'] == 'WP HTML MAIL') { echo 'selected' ; } ?>><?php echo __( '1. WP HTML MAIL', ES_TDOMAIN ); ?></option>
222
- <option value='WP PLAINTEXT MAIL' <?php if($form['es_c_mailtype'] == 'WP PLAINTEXT MAIL') { echo 'selected' ; } ?>><?php echo __( '2. WP PLAINTEXT MAIL', ES_TDOMAIN ); ?></option>
223
- <option value='PHP HTML MAIL' <?php if($form['es_c_mailtype'] == 'PHP HTML MAIL') { echo 'selected' ; } ?>><?php echo __( '3. PHP HTML MAIL', ES_TDOMAIN ); ?></option>
224
- <option value='PHP PLAINTEXT MAIL' <?php if($form['es_c_mailtype'] == 'PHP PLAINTEXT MAIL') { echo 'selected' ; } ?>><?php echo __( '4. PHP PLAINTEXT MAIL', ES_TDOMAIN ); ?></option>
225
- </select>
226
- </td>
227
- </tr>
228
- <!-------------------------------------------------------------------------------->
229
- <tr>
230
- <th scope="row">
231
- <label for="elp"><?php echo __( 'Opt-In Option', ES_TDOMAIN ); ?>
232
- <p class="description"><?php echo __( 'Double Opt In means subscribers need to confirm their email address by an activation link sent them on a activation email message.<br />Single Opt In means subscribers do not need to confirm their email address.', ES_TDOMAIN ); ?></p></label>
233
- </th>
234
- <td>
235
- <select name="es_c_optinoption" id="es_c_optinoption">
236
- <option value='Double Opt In' <?php if($form['es_c_optinoption'] == 'Double Opt In') { echo 'selected' ; } ?>><?php echo __( 'Double Opt In', ES_TDOMAIN ); ?></option>
237
- <option value='Single Opt In' <?php if($form['es_c_optinoption'] == 'Single Opt In') { echo 'selected' ; } ?>><?php echo __( 'Single Opt In', ES_TDOMAIN ); ?></option>
238
- </select>
239
- </td>
240
- </tr>
241
- <tr>
242
- <th scope="row">
243
- <label for="elp"><?php echo __( 'Image Size', ES_TDOMAIN ); ?>
244
- <p class="description"><?php echo __( 'Select image size for ###POSTIMAGE### to be shown in the Post Notification Emails.', ES_TDOMAIN ); ?></p></label>
245
- </th>
246
- <td>
247
- <select name="es_c_post_image_size" id="es_c_post_image_size">
248
- <option value='full' <?php if($form['es_c_post_image_size'] == 'full') { echo 'selected' ; } ?>><?php echo __( 'Full Size', ES_TDOMAIN ); ?></option>
249
- <option value='medium' <?php if($form['es_c_post_image_size'] == 'medium') { echo 'selected' ; } ?>><?php echo __( 'Medium Size', ES_TDOMAIN ); ?></option>
250
- <option value='thumbnail' <?php if($form['es_c_post_image_size'] == 'thumbnail') { echo 'selected' ; } ?>><?php echo __( 'Thumbnail', ES_TDOMAIN ); ?></option>
251
- </select>
252
- </td>
253
- </tr>
254
- <tr>
255
- <th scope="row">
256
- <label for="elp"><?php echo __( 'Double Opt In Email Subject (Confirmation Email)', ES_TDOMAIN ); ?>
257
- <p class="description"><?php echo __( 'Enter the subject for the confirmation email to be sent for Double Opt In whenever a user signs up.', ES_TDOMAIN ); ?></p></label>
258
- </th>
259
- <td><input name="es_c_optinsubject" type="text" id="es_c_optinsubject" value="<?php echo esc_html(stripslashes($form['es_c_optinsubject'])); ?>" size="60" maxlength="225" /></td>
260
- </tr>
261
- <tr>
262
- <th scope="row">
263
- <label for="elp"><?php echo __('Double Opt In Email Content (Confirmation Email)', ES_TDOMAIN); ?>
264
- <p class="description"><?php echo __( 'Enter the content for the confirmation email to be sent for Double Opt In whenever a user signs up. (Keyword: ###NAME###, ###LINK###)', ES_TDOMAIN ); ?></p></label>
265
- </th>
266
- <td><textarea size="100" id="es_c_optincontent" rows="10" cols="58" name="es_c_optincontent"><?php echo esc_html(stripslashes($form['es_c_optincontent'])); ?></textarea></td>
267
- </tr>
268
- <tr>
269
- <th scope="row">
270
- <label for="elp"><?php echo __( 'Double Opt In Confirmation Link', ES_TDOMAIN ); ?><p class="description">
271
- <?php echo __( 'It is a readonly field and you are advised not to modify it.', ES_TDOMAIN ); ?></p></label>
272
- </th>
273
- <td><input name="es_c_optinlink" type="text" id="es_c_optinlink" value="<?php echo esc_html(stripslashes($form['es_c_optinlink'])); ?>" size="60" maxlength="225" readonly /></td>
274
- </tr>
275
- <tr>
276
- <th scope="row">
277
- <label for="elp"><?php echo __( 'Text to display after an email address is successfully subscribed from Double Opt In (confirmation) Email', ES_TDOMAIN ); ?>
278
- <p class="description"><?php echo __( 'This text will be displayed once user clicks on email confirmation link from the Double Opt In (confirmation) Email.', ES_TDOMAIN ); ?></p></label>
279
- </th>
280
- <td><textarea size="100" id="es_c_subhtml" rows="4" cols="58" name="es_c_subhtml"><?php echo esc_html(stripslashes($form['es_c_subhtml'])); ?></textarea></td>
281
- </tr>
282
- <!-------------------------------------------------------------------------------->
283
- <tr>
284
- <th scope="row">
285
- <label for="elp"><?php echo __( 'Subscriber Welcome Email', ES_TDOMAIN ); ?>
286
- <p class="description"><?php echo __( 'To send welcome email to subscriber after successful signup. This option must be set to YES.', ES_TDOMAIN ); ?></p></label>
287
- </th>
288
- <td>
289
- <select name="es_c_usermailoption" id="es_c_usermailoption">
290
- <option value='YES' <?php if($form['es_c_usermailoption'] == 'YES') { echo 'selected' ; } ?>><?php echo __( 'YES', ES_TDOMAIN ); ?></option>
291
- <option value='NO' <?php if($form['es_c_usermailoption'] == 'NO') { echo 'selected' ; } ?>><?php echo __( 'NO', ES_TDOMAIN ); ?></option>
292
- </select>
293
- </td>
294
- </tr>
295
- <tr>
296
- <th scope="row">
297
- <label for="elp"><?php echo __( 'Subscriber Welcome Email Subject', ES_TDOMAIN ); ?>
298
- <p class="description"><?php echo __( 'Enter the subject for the subscriber welcome email. This will be sent whenever a user\'s email is either confirmed (if Double Opt In) / subscribed (if Single Opt In) successfully.', ES_TDOMAIN ); ?></p></label>
299
- </th>
300
- <td><input name="es_c_usermailsubject" type="text" id="es_c_usermailsubject" value="<?php echo esc_html(stripslashes($form['es_c_usermailsubject'])); ?>" size="60" maxlength="225" /></td>
301
- </tr>
302
- <tr>
303
- <th scope="row">
304
- <label for="elp"><?php echo __( 'Subscriber Welcome Email Content', ES_TDOMAIN ); ?>
305
- <p class="description"><?php echo __( 'Enter the content for the subscriber welcome email whenever a user\'s email is either confirmed (if Double Opt In) / subscribed (if Single Opt In) successfully. (Keyword: ###NAME###, ###GROUP###, ###LINK###)', ES_TDOMAIN ); ?></p>
306
- </label>
307
- </th>
308
- <td><textarea size="100" id="es_c_usermailcontant" rows="10" cols="58" name="es_c_usermailcontant"><?php echo esc_html(stripslashes($form['es_c_usermailcontant'])); ?></textarea></td>
309
- </tr>
310
- <!-------------------------------------------------------------------------------->
311
- <tr>
312
- <th scope="row">
313
- <label for="elp"><?php echo __( 'Unsubscribe Link', ES_TDOMAIN ); ?>
314
- <p class="description"><?php echo __( 'The unsubscribe link gets added automatically to all emails that are sent from this plugin. It is a readonly field and you are advised not to modify it.', ES_TDOMAIN ); ?></p></label>
315
- </th>
316
- <td><input name="es_c_unsublink" type="text" id="es_c_unsublink" value="<?php echo esc_html(stripslashes($form['es_c_unsublink'])); ?>" size="60" maxlength="225" readonly /></td>
317
- </tr>
318
- <tr>
319
- <th scope="row">
320
- <label for="elp"><?php echo __( 'Unsubscribe Text in Email', ES_TDOMAIN ); ?>
321
- <p class="description"><?php echo __( 'Enter the text for the unsubscribe link. This text is added with unsubscribe link in the emails. (Keyword: ###LINK###)', ES_TDOMAIN ); ?></p></label>
322
- </th>
323
- <td><textarea size="100" id="es_c_unsubtext" rows="4" cols="58" name="es_c_unsubtext"><?php echo esc_html(stripslashes($form['es_c_unsubtext'])); ?></textarea></td>
324
- </tr>
325
- <tr>
326
- <th scope="row">
327
- <label for="elp"><?php echo __( 'Text to display after an email address is unsubscribed', ES_TDOMAIN ); ?>
328
- <p class="description"><?php echo __( 'This text will be displayed once user clicks on unsubscribe link.', ES_TDOMAIN ); ?></p></label>
329
- </th>
330
- <td><textarea size="100" id="es_c_unsubhtml" rows="4" cols="58" name="es_c_unsubhtml"><?php echo esc_html(stripslashes($form['es_c_unsubhtml'])); ?></textarea></td>
331
- </tr>
332
- <!-------------------------------------------------------------------------------->
333
- <tr>
334
- <th scope="row">
335
- <label for="elp"><?php echo __( 'Error in the Confirmation Link', ES_TDOMAIN ); ?>
336
- <p class="description"><?php echo __( 'Default message to display if there is any issue while clicking on confirmation link from the Double Opt In (confirmation) Emails.', ES_TDOMAIN ); ?></p></label>
337
- </th>
338
- <td><textarea size="100" id="es_c_message1" rows="4" cols="58" name="es_c_message1"><?php echo esc_html(stripslashes($form['es_c_message1'])); ?></textarea></td>
339
- </tr>
340
- <tr>
341
- <th scope="row">
342
- <label for="elp"><?php echo __( 'Error in the Unsubscribe Link', ES_TDOMAIN ); ?>
343
- <p class="description"><?php echo __( 'Default message to display if there is any issue while clicking on unsubscribe link from the Emails.', ES_TDOMAIN ); ?></p></label>
344
- </th>
345
- <td><textarea size="100" id="es_c_message2" rows="4" cols="58" name="es_c_message2"><?php echo esc_html(stripslashes($form['es_c_message2'])); ?></textarea></td>
346
- </tr>
347
- <!-------------------------------------------------------------------------------->
348
- <tr>
349
- <th scope="row">
350
- <label for="elp"><?php echo __( 'Admin Email Addresses', ES_TDOMAIN ); ?>
351
- <p class="description"><?php echo __( 'Enter the admin email addresses that should receive notifications (separated by comma).', ES_TDOMAIN ); ?></p></label>
352
- </th>
353
- <td><input name="es_c_adminemail" type="text" id="es_c_adminemail" value="<?php echo esc_html(stripslashes($form['es_c_adminemail'])); ?>" size="60" maxlength="225" /></td>
354
- </tr>
355
- <tr>
356
- <th scope="row">
357
- <label for="elp"><?php echo __( 'Notify admin when a new subscriber signs up', ES_TDOMAIN ); ?>
358
- <p class="description"><?php echo __( 'To send admin email notifications for the new subscriber. This option must be set to YES.', ES_TDOMAIN ); ?></p>
359
- </label>
360
- </th>
361
- <td>
362
- <select name="es_c_adminmailoption" id="es_c_adminmailoption">
363
- <option value='YES' <?php if($form['es_c_adminmailoption'] == 'YES') { echo 'selected' ; } ?>><?php echo __( 'YES', ES_TDOMAIN ); ?></option>
364
- <option value='NO' <?php if($form['es_c_adminmailoption'] == 'NO') { echo 'selected' ; } ?>><?php echo __( 'NO', ES_TDOMAIN ); ?></option>
365
- </select>
366
- </td>
367
- </tr>
368
- <tr>
369
- <th scope="row">
370
- <label for="elp"><?php echo __( 'Admin Email Subject when a new subscriber signs up', ES_TDOMAIN ); ?>
371
- <p class="description"><?php echo __( 'Enter the subject for the admin email which will be sent whenever a new email is added and confirmed.', ES_TDOMAIN ); ?></p></label>
372
- </th>
373
- <td><input name="es_c_adminmailsubject" type="text" id="es_c_adminmailsubject" value="<?php echo esc_html(stripslashes($form['es_c_adminmailsubject'])); ?>" size="60" maxlength="225" /></td>
374
- </tr>
375
- <tr>
376
- <th scope="row">
377
- <label for="elp"><?php echo __( 'Admin Email Content when a new subscriber signs up', ES_TDOMAIN ); ?>
378
- <p class="description"><?php echo __( 'Enter the email content for the admin email which will be sent whenever a new email is added and confirmed. (Keyword: ###NAME###, ###EMAIL###)', ES_TDOMAIN ); ?></p></label>
379
- </th>
380
- <td><textarea size="100" id="es_c_adminmailcontant" rows="10" cols="58" name="es_c_adminmailcontant"><?php echo esc_html(stripslashes($form['es_c_adminmailcontant'])); ?></textarea></td>
381
- </tr>
382
- <!-------------------------------------------------------------------------------->
383
- <tr>
384
- <th scope="row">
385
- <label for="elp"><?php echo __( 'Sent Report Subject', ES_TDOMAIN ); ?>
386
- <p class="description"><?php echo __( 'Enter the subject for the sent email report. It will be emailed to Admin.', ES_TDOMAIN ); ?></p></label>
387
- </th>
388
- <td><input name="es_c_sentreport_subject" type="text" id="es_c_sentreport_subject" value="<?php echo esc_html(stripslashes($form['es_c_sentreport_subject'])); ?>" size="60" maxlength="225" /></td>
389
- </tr>
390
- <tr>
391
- <th scope="row">
392
- <label for="elp"><?php echo __( 'Sent Report Content', ES_TDOMAIN ); ?>
393
- <p class="description"><?php echo __( 'Enter the content for the sent email report. It will be emailed to Admin. (Keyword: ###COUNT###, ###UNIQUE###, ###STARTTIME###, ###ENDTIME###)', ES_TDOMAIN ); ?></p></label>
394
- </th>
395
- <td><textarea size="100" id="es_c_sentreport" rows="8" cols="58" name="es_c_sentreport"><?php echo esc_html(stripslashes($form['es_c_sentreport'])); ?></textarea></td>
396
- </tr>
397
- <!-------------------------------------------------------------------------------->
398
- </tbody>
399
- </table>
400
- <input type="hidden" name="es_form_submit" value="yes"/>
401
- <input type="hidden" name="es_c_id" id="es_c_id" value="<?php echo $form['es_c_id']; ?>"/>
402
- <p style="padding-top:10px;">
403
- <input type="submit" name="publish" class="button-primary" value="<?php echo __( 'Save Settings', ES_TDOMAIN ); ?>" />
404
- </p>
405
- <?php wp_nonce_field('es_form_edit'); ?>
406
- </form>
407
- </div>
408
- <div style="height:10px;"></div>
409
- <p class="description"><?php echo ES_OFFICIAL; ?></p>
410
- </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ // Exit if accessed directly
4
+ if ( ! defined( 'ABSPATH' ) ) {
5
+ exit;
6
+ }
7
+
8
+ if ( ! class_exists( 'ES_Settings' ) ) {
9
+
10
+ class ES_Settings {
11
+
12
+ public $nav_tabs, $form = array();
13
+
14
+ public function __construct() {
15
+ $this->nav_tabs = $this->es_get_tabs_list();
16
+ $this->es_display_nav_tabs();
17
+ $this->form = $this->es_process_settings_data();
18
+ $this->es_display_settings();
19
+ }
20
+
21
+ public function es_get_tabs_list() {
22
+ $tabs = array(
23
+ 'admin' => __( 'Admin', ES_TDOMAIN ),
24
+ 'signup-confirmation' => __( 'Signup Confirmation', ES_TDOMAIN ),
25
+ 'roles' => __( 'User Roles', ES_TDOMAIN ),
26
+ 'cron' => __( 'Cron', ES_TDOMAIN ),
27
+ );
28
+
29
+ return apply_filters( 'es_settings_tabs', $tabs );
30
+ }
31
+
32
+ public function es_display_nav_tabs() { ?>
33
+ <style>
34
+ .form-table th {
35
+ width: 450px;
36
+ }
37
+ </style>
38
+
39
+ <div class="wrap">
40
+ <h2>
41
+ <?php echo __( 'Settings', ES_TDOMAIN ); ?>
42
+ <a class="add-new-h2" target="_blank" href="<?php echo ES_FAV; ?>"><?php echo __( 'Help', ES_TDOMAIN ); ?></a>
43
+ </h2>
44
+ <div id="icon-options-general" class="icon32"><br /></div>
45
+ <h2 id="es-tabs" class="nav-tab-wrapper">
46
+ <?php foreach ($this->nav_tabs as $tab => $name ) { ?>
47
+ <a class="nav-tab" id=<?php echo $tab; ?> href='#'><?php echo $name; ?></a>
48
+ <?php } ?>
49
+ </h2> <?php
50
+ }
51
+
52
+ public function es_display_settings() { ?>
53
+ <form name="es_form" id="es_form" method="post" action="#">
54
+ <table class="es-settings form-table">
55
+ <tbody>
56
+ <?php $this->display_admin_settings(); ?>
57
+ <?php $this->display_signup_confirmation_settings(); ?>
58
+ <?php $this->display_roles_setting(); ?>
59
+ <?php $this->display_cron_settings(); ?>
60
+ </tbody>
61
+ </table>
62
+ <input type="hidden" name="es_form_submit" value="yes"/>
63
+ <p style="padding-top:10px;">
64
+ <input type="submit" name="publish" id="es-save-settings" class="button-primary" value="<?php echo __( 'Save Settings', ES_TDOMAIN ); ?>" />
65
+ </p>
66
+ <?php wp_nonce_field('es_form_edit'); ?>
67
+ </form>
68
+ <div style="height:10px;"></div>
69
+ <p class="description"><?php echo ES_OFFICIAL; ?></p>
70
+ </div> <?php
71
+ }
72
+
73
+ public function display_admin_settings() { ?>
74
+ <tr class="es-admin active-settings">
75
+ <th scope="row">
76
+ <label for="elp"><?php echo __( 'Sender of Notifications', ES_TDOMAIN ); ?>
77
+ <p class="description"><?php echo __( 'Choose a FROM name and FROM email address for all the emails to be sent from this plugin.', ES_TDOMAIN ); ?></p>
78
+ </label>
79
+ </th>
80
+ <td>
81
+ <input name="es_c_fromname" type="text" id="es_c_fromname" value="<?php echo stripslashes($this->form['ig_es_fromname']); ?>" maxlength="225" />
82
+ <input name="es_c_fromemail" type="text" id="es_c_fromemail" value="<?php echo stripslashes($this->form['ig_es_fromemail']); ?>" size="35" maxlength="225" />
83
+ </td>
84
+ </tr>
85
+ <tr class="es-admin active-settings">
86
+ <th scope="row">
87
+ <label for="elp"><?php echo __( 'Mail Type', ES_TDOMAIN ); ?>
88
+ <p class="description"><?php echo __( 'Option 1 & 2 is to send mails with default Wordpress method wp_mail(). Option 3 & 4 is to send mails with PHP method mail().', ES_TDOMAIN ); ?></p></label>
89
+ </th>
90
+ <td>
91
+ <select name="es_c_mailtype" id="es_c_mailtype">
92
+ <option value='WP HTML MAIL' <?php if($this->form['ig_es_emailtype'] == 'WP HTML MAIL') { echo 'selected' ; } ?>><?php echo __( '1. WP HTML MAIL', ES_TDOMAIN ); ?></option>
93
+ <option value='WP PLAINTEXT MAIL' <?php if($this->form['ig_es_emailtype'] == 'WP PLAINTEXT MAIL') { echo 'selected' ; } ?>><?php echo __( '2. WP PLAINTEXT MAIL', ES_TDOMAIN ); ?></option>
94
+ <option value='PHP HTML MAIL' <?php if($this->form['ig_es_emailtype'] == 'PHP HTML MAIL') { echo 'selected' ; } ?>><?php echo __( '3. PHP HTML MAIL', ES_TDOMAIN ); ?></option>
95
+ <option value='PHP PLAINTEXT MAIL' <?php if($this->form['ig_es_emailtype'] == 'PHP PLAINTEXT MAIL') { echo 'selected' ; } ?>><?php echo __( '4. PHP PLAINTEXT MAIL', ES_TDOMAIN ); ?></option>
96
+ </select>
97
+ </td>
98
+ </tr>
99
+ <!-------------------------------------------------------------------------------->
100
+ <tr class="es-admin active-settings">
101
+ <th scope="row">
102
+ <label for="elp"><?php echo __( 'Opt-In Option', ES_TDOMAIN ); ?>
103
+ <p class="description"><?php echo __( 'Double Opt In means subscribers need to confirm their email address by an activation link sent them on a activation email message.<br />Single Opt In means subscribers do not need to confirm their email address.', ES_TDOMAIN ); ?></p></label>
104
+ </th>
105
+ <td>
106
+ <select name="es_c_optinoption" id="es_c_optinoption">
107
+ <option value='Double Opt In' <?php if($this->form['ig_es_optintype'] == 'Double Opt In') { echo 'selected' ; } ?>><?php echo __( 'Double Opt In', ES_TDOMAIN ); ?></option>
108
+ <option value='Single Opt In' <?php if($this->form['ig_es_optintype'] == 'Single Opt In') { echo 'selected' ; } ?>><?php echo __( 'Single Opt In', ES_TDOMAIN ); ?></option>
109
+ </select>
110
+ </td>
111
+ </tr>
112
+ <tr class="es-admin active-settings">
113
+ <th scope="row">
114
+ <label for="elp"><?php echo __( 'Image Size', ES_TDOMAIN ); ?>
115
+ <p class="description"><?php echo __( 'Select image size for ###POSTIMAGE### to be shown in the Post Notification Emails.', ES_TDOMAIN ); ?></p></label>
116
+ </th>
117
+ <td>
118
+ <select name="es_c_post_image_size" id="es_c_post_image_size">
119
+ <option value='full' <?php if($this->form['ig_es_post_image_size'] == 'full') { echo 'selected' ; } ?>><?php echo __( 'Full Size', ES_TDOMAIN ); ?></option>
120
+ <option value='medium' <?php if($this->form['ig_es_post_image_size'] == 'medium') { echo 'selected' ; } ?>><?php echo __( 'Medium Size', ES_TDOMAIN ); ?></option>
121
+ <option value='thumbnail' <?php if($this->form['ig_es_post_image_size'] == 'thumbnail') { echo 'selected' ; } ?>><?php echo __( 'Thumbnail', ES_TDOMAIN ); ?></option>
122
+ </select>
123
+ </td>
124
+ </tr>
125
+ <tr class="es-admin active-settings">
126
+ <th scope="row">
127
+ <label for="elp"><?php echo __( 'Admin Email Addresses', ES_TDOMAIN ); ?>
128
+ <p class="description"><?php echo __( 'Enter the admin email addresses that should receive notifications (separated by comma).', ES_TDOMAIN ); ?></p></label>
129
+ </th>
130
+ <td><input name="es_c_adminemail" type="text" id="es_c_adminemail" value="<?php echo esc_html(stripslashes($this->form['ig_es_adminemail'])); ?>" size="60" maxlength="225" /></td>
131
+ </tr>
132
+ <tr class="es-admin active-settings">
133
+ <th scope="row">
134
+ <label for="elp"><?php echo __( 'Notify admin when a new subscriber signs up', ES_TDOMAIN ); ?>
135
+ <p class="description"><?php echo __( 'To send admin email notifications for the new subscriber. This option must be set to YES.', ES_TDOMAIN ); ?></p>
136
+ </label>
137
+ </th>
138
+ <td>
139
+ <select name="es_c_adminmailoption" id="es_c_adminmailoption">
140
+ <option value='YES' <?php if($this->form['ig_es_notifyadmin'] == 'YES') { echo 'selected' ; } ?>><?php echo __( 'YES', ES_TDOMAIN ); ?></option>
141
+ <option value='NO' <?php if($this->form['ig_es_notifyadmin'] == 'NO') { echo 'selected' ; } ?>><?php echo __( 'NO', ES_TDOMAIN ); ?></option>
142
+ </select>
143
+ </td>
144
+ </tr>
145
+ <tr class="es-admin active-settings">
146
+ <th scope="row">
147
+ <label for="elp"><?php echo __( 'Admin Email Subject when a new subscriber signs up', ES_TDOMAIN ); ?>
148
+ <p class="description"><?php echo __( 'Enter the subject for the admin email which will be sent whenever a new email is added and confirmed.', ES_TDOMAIN ); ?></p></label>
149
+ </th>
150
+ <td><input name="es_c_adminmailsubject" type="text" id="es_c_adminmailsubject" value="<?php echo esc_html(stripslashes($this->form['ig_es_admin_new_sub_subject'])); ?>" size="60" maxlength="225" /></td>
151
+ </tr>
152
+ <tr class="es-admin active-settings">
153
+ <th scope="row">
154
+ <label for="elp"><?php echo __( 'Admin Email Content when a new subscriber signs up', ES_TDOMAIN ); ?>
155
+ <p class="description"><?php echo __( 'Enter the email content for the admin email which will be sent whenever a new email is added and confirmed. (Keyword: ###NAME###, ###EMAIL###)', ES_TDOMAIN ); ?></p></label>
156
+ </th>
157
+ <td><textarea size="100" id="es_c_adminmailcontant" rows="10" cols="58" name="es_c_adminmailcontant"><?php echo esc_html(stripslashes($this->form['ig_es_admin_new_sub_content'])); ?></textarea></td>
158
+ </tr>
159
+ <!-------------------------------------------------------------------------------->
160
+ <tr class="es-admin active-settings">
161
+ <th scope="row">
162
+ <label for="elp"><?php echo __( 'Sent Report Subject', ES_TDOMAIN ); ?>
163
+ <p class="description"><?php echo __( 'Enter the subject for the sent email report. It will be emailed to Admin.', ES_TDOMAIN ); ?></p></label>
164
+ </th>
165
+ <td><input name="es_c_sentreport_subject" type="text" id="es_c_sentreport_subject" value="<?php echo esc_html(stripslashes($this->form['ig_es_sentreport_subject'])); ?>" size="60" maxlength="225" /></td>
166
+ </tr>
167
+ <tr class="es-admin active-settings">
168
+ <th scope="row">
169
+ <label for="elp"><?php echo __( 'Sent Report Content', ES_TDOMAIN ); ?>
170
+ <p class="description"><?php echo __( 'Enter the content for the sent email report. It will be emailed to Admin. (Keyword: ###COUNT###, ###UNIQUE###, ###STARTTIME###, ###ENDTIME###)', ES_TDOMAIN ); ?></p></label>
171
+ </th>
172
+ <td><textarea size="100" id="es_c_sentreport" rows="8" cols="58" name="es_c_sentreport"><?php echo esc_html(stripslashes($this->form['ig_es_sentreport'])); ?></textarea></td>
173
+ </tr> <?php
174
+ }
175
+
176
+ public function display_signup_confirmation_settings() { ?>
177
+ <tr class="es-signup-confirmation hidden">
178
+ <th scope="row">
179
+ <label for="elp"><?php echo __( 'Double Opt In Email Subject (Confirmation Email)', ES_TDOMAIN ); ?>
180
+ <p class="description"><?php echo __( 'Enter the subject for the confirmation email to be sent for Double Opt In whenever a user signs up.', ES_TDOMAIN ); ?></p></label>
181
+ </th>
182
+ <td><input name="es_c_optinsubject" type="text" id="es_c_optinsubject" value="<?php echo esc_html(stripslashes($this->form['ig_es_confirmsubject'])); ?>" size="60" maxlength="225" /></td>
183
+ </tr>
184
+ <tr class="es-signup-confirmation hidden">
185
+ <th scope="row">
186
+ <label for="elp"><?php echo __('Double Opt In Email Content (Confirmation Email)', ES_TDOMAIN); ?>
187
+ <p class="description"><?php echo __( 'Enter the content for the confirmation email to be sent for Double Opt In whenever a user signs up. (Keyword: ###NAME###, ###LINK###)', ES_TDOMAIN ); ?></p></label>
188
+ </th>
189
+ <td><textarea size="100" id="es_c_optincontent" rows="10" cols="58" name="es_c_optincontent"><?php echo esc_html(stripslashes($this->form['ig_es_confirmcontent'])); ?></textarea></td>
190
+ </tr>
191
+ <tr class="es-signup-confirmation hidden">
192
+ <th scope="row">
193
+ <label for="elp"><?php echo __( 'Double Opt In Confirmation Link', ES_TDOMAIN ); ?><p class="description">
194
+ <?php echo __( 'It is a readonly field and you are advised not to modify it.', ES_TDOMAIN ); ?></p></label>
195
+ </th>
196
+ <td><input name="es_c_optinlink" type="text" id="es_c_optinlink" value="<?php echo esc_html(stripslashes($this->form['ig_es_optinlink'])); ?>" size="60" maxlength="225" readonly /></td>
197
+ </tr>
198
+ <tr class="es-signup-confirmation hidden">
199
+ <th scope="row">
200
+ <label for="elp"><?php echo __( 'Text to display after an email address is successfully subscribed from Double Opt In (confirmation) Email', ES_TDOMAIN ); ?>
201
+ <p class="description"><?php echo __( 'This text will be displayed once user clicks on email confirmation link from the Double Opt In (confirmation) Email.', ES_TDOMAIN ); ?></p></label>
202
+ </th>
203
+ <td><textarea size="100" id="es_c_subhtml" rows="4" cols="58" name="es_c_subhtml"><?php echo esc_html(stripslashes($this->form['ig_es_successmsg'])); ?></textarea></td>
204
+ </tr>
205
+ <!-------------------------------------------------------------------------------->
206
+ <tr class="es-signup-confirmation hidden">
207
+ <th scope="row">
208
+ <label for="elp"><?php echo __( 'Subscriber Welcome Email', ES_TDOMAIN ); ?>
209
+ <p class="description"><?php echo __( 'To send welcome email to subscriber after successful signup. This option must be set to YES.', ES_TDOMAIN ); ?></p></label>
210
+ </th>
211
+ <td>
212
+ <select name="es_c_usermailoption" id="es_c_usermailoption">
213
+ <option value='YES' <?php if($this->form['ig_es_welcomeemail'] == 'YES') { echo 'selected' ; } ?>><?php echo __( 'YES', ES_TDOMAIN ); ?></option>
214
+ <option value='NO' <?php if($this->form['ig_es_welcomeemail'] == 'NO') { echo 'selected' ; } ?>><?php echo __( 'NO', ES_TDOMAIN ); ?></option>
215
+ </select>
216
+ </td>
217
+ </tr>
218
+ <tr class="es-signup-confirmation hidden">
219
+ <th scope="row">
220
+ <label for="elp"><?php echo __( 'Subscriber Welcome Email Subject', ES_TDOMAIN ); ?>
221
+ <p class="description"><?php echo __( 'Enter the subject for the subscriber welcome email. This will be sent whenever a user\'s email is either confirmed (if Double Opt In) / subscribed (if Single Opt In) successfully.', ES_TDOMAIN ); ?></p></label>
222
+ </th>
223
+ <td><input name="es_c_usermailsubject" type="text" id="es_c_usermailsubject" value="<?php echo esc_html(stripslashes($this->form['ig_es_welcomesubject'])); ?>" size="60" maxlength="225" /></td>
224
+ </tr>
225
+ <tr class="es-signup-confirmation hidden">
226
+ <th scope="row">
227
+ <label for="elp"><?php echo __( 'Subscriber Welcome Email Content', ES_TDOMAIN ); ?>
228
+ <p class="description"><?php echo __( 'Enter the content for the subscriber welcome email whenever a user\'s email is either confirmed (if Double Opt In) / subscribed (if Single Opt In) successfully. (Keyword: ###NAME###, ###GROUP###, ###LINK###)', ES_TDOMAIN ); ?></p>
229
+ </label>
230
+ </th>
231
+ <td><textarea size="100" id="es_c_usermailcontant" rows="10" cols="58" name="es_c_usermailcontant"><?php echo esc_html(stripslashes($this->form['ig_es_welcomecontent'])); ?></textarea></td>
232
+ </tr>
233
+ <!-------------------------------------------------------------------------------->
234
+ <tr class="es-signup-confirmation hidden">
235
+ <th scope="row">
236
+ <label for="elp"><?php echo __( 'Unsubscribe Link', ES_TDOMAIN ); ?>
237
+ <p class="description"><?php echo __( 'The unsubscribe link gets added automatically to all emails that are sent from this plugin. It is a readonly field and you are advised not to modify it.', ES_TDOMAIN ); ?></p></label>
238
+ </th>
239
+ <td><input name="es_c_unsublink" type="text" id="es_c_unsublink" value="<?php echo esc_html(stripslashes($this->form['ig_es_unsublink'])); ?>" size="60" maxlength="225" readonly /></td>
240
+ </tr>
241
+ <tr class="es-signup-confirmation hidden">
242
+ <th scope="row">
243
+ <label for="elp"><?php echo __( 'Unsubscribe Text in Email', ES_TDOMAIN ); ?>
244
+ <p class="description"><?php echo __( 'Enter the text for the unsubscribe link. This text is added with unsubscribe link in the emails. (Keyword: ###LINK###)', ES_TDOMAIN ); ?></p></label>
245
+ </th>
246
+ <td><textarea size="100" id="es_c_unsubtext" rows="4" cols="58" name="es_c_unsubtext"><?php echo esc_html(stripslashes($this->form['ig_es_unsubcontent'])); ?></textarea></td>
247
+ </tr>
248
+ <tr class="es-signup-confirmation hidden">
249
+ <th scope="row">
250
+ <label for="elp"><?php echo __( 'Text to display after an email address is unsubscribed', ES_TDOMAIN ); ?>
251
+ <p class="description"><?php echo __( 'This text will be displayed once user clicks on unsubscribe link.', ES_TDOMAIN ); ?></p></label>
252
+ </th>
253
+ <td><textarea size="100" id="es_c_unsubhtml" rows="4" cols="58" name="es_c_unsubhtml"><?php echo esc_html(stripslashes($this->form['ig_es_unsubtext'])); ?></textarea></td>
254
+ </tr>
255
+ <!-------------------------------------------------------------------------------->
256
+ <tr class="es-signup-confirmation hidden">
257
+ <th scope="row">
258
+ <label for="elp"><?php echo __( 'Error in the Confirmation Link', ES_TDOMAIN ); ?>
259
+ <p class="description"><?php echo __( 'Default message to display if there is any issue while clicking on confirmation link from the Double Opt In (confirmation) Emails.', ES_TDOMAIN ); ?></p></label>
260
+ </th>
261
+ <td><textarea size="100" id="es_c_message1" rows="4" cols="58" name="es_c_message1"><?php echo esc_html(stripslashes($this->form['ig_es_suberror'])); ?></textarea></td>
262
+ </tr>
263
+ <tr class="es-signup-confirmation hidden">
264
+ <th scope="row">
265
+ <label for="elp"><?php echo __( 'Error in the Unsubscribe Link', ES_TDOMAIN ); ?>
266
+ <p class="description"><?php echo __( 'Default message to display if there is any issue while clicking on unsubscribe link from the Emails.', ES_TDOMAIN ); ?></p></label>
267
+ </th>
268
+ <td><textarea size="100" id="es_c_message2" rows="4" cols="58" name="es_c_message2"><?php echo esc_html(stripslashes($this->form['ig_es_unsuberror'])); ?></textarea></td>
269
+ </tr> <?php
270
+ }
271
+
272
+ public function display_roles_setting() { ?>
273
+ <tr class="es-roles hidden">
274
+ <td colspan=2>
275
+ <p class="description">
276
+ <?php echo __( 'Select user roles who can access following menus. Only Admin can change this.', ES_TDOMAIN ); ?>
277
+ </p>
278
+ </td>
279
+ </tr>
280
+ <tr class="es-roles hidden">
281
+ <th scope="row">
282
+ <label for="tag-image"><?php echo __( 'Subscribers Menu', ES_TDOMAIN ); ?></label>
283
+ </th>
284
+ <td>
285
+ <select name="es_roles_subscriber" id="es_roles_subscriber">
286
+ <option value='manage_options' <?php if($this->form['es_roles_subscriber'] == 'manage_options') { echo "selected='selected'" ; } ?>><?php echo __( 'Administrator Only', ES_TDOMAIN ); ?></option>
287
+ <option value='edit_others_pages' <?php if($this->form['es_roles_subscriber'] == 'edit_others_pages') { echo "selected='selected'" ; } ?>><?php echo __( 'Administrator/Editor', ES_TDOMAIN ); ?></option>
288
+ <option value='edit_posts' <?php if($this->form['es_roles_subscriber'] == 'edit_posts') { echo "selected='selected'" ; } ?>><?php echo __( 'Administrator/Editor/Author/Contributor', ES_TDOMAIN ); ?></option>
289
+ </select>
290
+ </td>
291
+ </tr>
292
+ <tr class="es-roles hidden">
293
+ <th scope="row">
294
+ <label for="tag-image"><?php echo __( 'Compose Menu', ES_TDOMAIN ); ?></label>
295
+ </th>
296
+ <td>
297
+ <select name="es_roles_mail" id="es_roles_mail">
298
+ <option value='manage_options' <?php if($this->form['es_roles_mail'] == 'manage_options') { echo "selected='selected'" ; } ?>><?php echo __( 'Administrator Only', ES_TDOMAIN ); ?></option>
299
+ <option value='edit_others_pages' <?php if($this->form['es_roles_mail'] == 'edit_others_pages') { echo "selected='selected'" ; } ?>><?php echo __( 'Administrator/Editor', ES_TDOMAIN ); ?></option>
300
+ <option value='edit_posts' <?php if($this->form['es_roles_mail'] == 'edit_posts') { echo "selected='selected'" ; } ?>><?php echo __( 'Administrator/Editor/Author/Contributor', ES_TDOMAIN ); ?></option>
301
+ </select>
302
+ </td>
303
+ </tr>
304
+ <tr class="es-roles hidden">
305
+ <th scope="row">
306
+ <label for="tag-image"><?php echo __( 'Post Notifications Menu', ES_TDOMAIN ); ?></label>
307
+ </th>
308
+ <td>
309
+ <select name="es_roles_notification" id="es_roles_notification">
310
+ <option value='manage_options' <?php if($this->form['es_roles_notification'] == 'manage_options') { echo "selected='selected'" ; } ?>><?php echo __( 'Administrator Only', ES_TDOMAIN ); ?></option>
311
+ <option value='edit_others_pages' <?php if($this->form['es_roles_notification'] == 'edit_others_pages') { echo "selected='selected'" ; } ?>><?php echo __( 'Administrator/Editor', ES_TDOMAIN ); ?></option>
312
+ <option value='edit_posts' <?php if($this->form['es_roles_notification'] == 'edit_posts') { echo "selected='selected'" ; } ?>><?php echo __( 'Administrator/Editor/Author/Contributor', ES_TDOMAIN ); ?></option>
313
+ </select>
314
+ </td>
315
+ </tr>
316
+ <tr class="es-roles hidden">
317
+ <th scope="row">
318
+ <label for="tag-image"><?php echo __( 'Newsletters', ES_TDOMAIN ); ?></label>
319
+ </th>
320
+ <td>
321
+ <select name="es_roles_sendmail" id="es_roles_sendmail">
322
+ <option value='manage_options' <?php if($this->form['es_roles_sendmail'] == 'manage_options') { echo "selected='selected'" ; } ?>><?php echo __( 'Administrator Only', ES_TDOMAIN ); ?></option>
323
+ <option value='edit_others_pages' <?php if($this->form['es_roles_sendmail'] == 'edit_others_pages') { echo "selected='selected'" ; } ?>><?php echo __( 'Administrator/Editor', ES_TDOMAIN ); ?></option>
324
+ <option value='edit_posts' <?php if($this->form['es_roles_sendmail'] == 'edit_posts') { echo "selected='selected'" ; } ?>><?php echo __( 'Administrator/Editor/Author/Contributor', ES_TDOMAIN ); ?></option>
325
+ </select>
326
+ </td>
327
+ </tr>
328
+ <tr class="es-roles hidden">
329
+ <th scope="row">
330
+ <label for="tag-image"><?php echo __( 'Reports Menu', ES_TDOMAIN ); ?></label>
331
+ </th>
332
+ <td>
333
+ <select name="es_roles_sentmail" id="es_roles_sentmail">
334
+ <option value='manage_options' <?php if($this->form['es_roles_sentmail'] == 'manage_options') { echo "selected='selected'" ; } ?>><?php echo __( 'Administrator Only', ES_TDOMAIN ); ?></option>
335
+ <option value='edit_others_pages' <?php if($this->form['es_roles_sentmail'] == 'edit_others_pages') { echo "selected='selected'" ; } ?>><?php echo __( 'Administrator/Editor', ES_TDOMAIN ); ?></option>
336
+ <option value='edit_posts' <?php if($this->form['es_roles_sentmail'] == 'edit_posts') { echo "selected='selected'" ; } ?>><?php echo __( 'Administrator/Editor/Author/Contributor', ES_TDOMAIN ); ?></option>
337
+ </select>
338
+ </td>
339
+ </tr> <?php
340
+ }
341
+
342
+ public function display_cron_settings() { ?>
343
+ <tr class="es-cron hidden">
344
+ <th scope="row">
345
+ <label for="tag-image"><?php echo __( 'Cron job URL', ES_TDOMAIN ); ?>
346
+ <p class="description"><?php echo __( 'This is your Cron Job URL. It is a readonly field and you are advised not to modify it.', ES_TDOMAIN ); ?></p>
347
+ </label>
348
+ </th>
349
+ <td>
350
+ <input type="text" name="es_cron_url" id="es_cron_url" value="<?php echo $this->form['ig_es_cronurl']; ?>" size="68" readonly />
351
+ </td>
352
+ </tr>
353
+ <tr class="es-cron hidden">
354
+ <th scope="row">
355
+ <label for="tag-image"><?php echo __( 'Email Count', ES_TDOMAIN ); ?>
356
+ <p class="description"><?php echo __( 'Number of emails that you want to trigger per hour.', ES_TDOMAIN ); ?></p>
357
+ </label>
358
+ </th>
359
+ <td>
360
+ <input type="number" name="es_cron_mailcount" id="es_cron_mailcount" value="<?php echo $this->form['ig_es_cron_mailcount']; ?>" maxlength="3" />
361
+ <p class="description"><?php echo __( '(Your web host has limits. We suggest 50 emails per hour to be safe)', ES_TDOMAIN ) ?></p>
362
+ </td>
363
+ </tr>
364
+ <tr class="es-cron hidden">
365
+ <th scope="row">
366
+ <label for="tag-image"><?php echo __( 'Admin Report', ES_TDOMAIN ); ?>
367
+ <p class="description"><?php echo __( 'Email to admin whenever cron URL is triggered from your server. (Keywords: ###DATE###, ###SUBJECT###, ###COUNT###)', ES_TDOMAIN ); ?></p>
368
+ </label>
369
+ </th>
370
+ <td>
371
+ <textarea size="100" id="es_cron_adminmail" rows="7" cols="72" name="es_cron_adminmail"><?php echo esc_html(stripslashes($this->form['ig_es_cron_adminmail'])); ?></textarea>
372
+ </td>
373
+ </tr>
374
+ <tr class="es-cron hidden">
375
+ <td colspan=2>
376
+ <div class="tool-box">
377
+ <h3><?php echo __( 'What is Cron (auto emails) and how to setup Cron Job?', ES_TDOMAIN ); ?></h3>
378
+ <li><?php echo __( '<a target="_blank" href="http://www.icegram.com/documentation/es-how-to-schedule-cron-emails/">What is Cron?</a>', ES_TDOMAIN ); ?></li>
379
+ <li><?php echo __( '<a target="_blank" href="http://www.icegram.com/documentation/es-how-to-schedule-cron-emails-in-parallels-plesk/">Setup cron job in Plesk</a>', ES_TDOMAIN ); ?></li>
380
+ <li><?php echo __( '<a target="_blank" href="http://www.icegram.com/documentation/es-how-to-schedule-cron-emails-in-cpanel/">Setup cron job in cPanal</a>', ES_TDOMAIN ); ?></li>
381
+ <li><?php echo __( '<a target="_blank" href="http://www.icegram.com/documentation/es-what-to-do-if-hosting-doesnt-support-cron-jobs/">Hosting does not support cron jobs?</a>', ES_TDOMAIN ); ?></li><br>
382
+ </div>
383
+ </td>
384
+ </tr>
385
+ <?php
386
+ }
387
+
388
+ public function es_process_settings_data() {
389
+
390
+ $es_errors = array();
391
+ $es_success = '';
392
+ $es_error_found = FALSE;
393
+
394
+ $form = array();
395
+
396
+ // Admin Settings
397
+ $form['ig_es_fromname'] = get_option( 'ig_es_fromname' );
398
+ $form['ig_es_fromemail'] = get_option( 'ig_es_fromemail' );
399
+ $form['ig_es_emailtype'] = get_option( 'ig_es_emailtype' );
400
+
401
+ $es_c_post_image_size = get_option( 'ig_es_post_image_size', 'nosize' );
402
+ if( $es_c_post_image_size == 'nosize' ) {
403
+ $es_post_image_size = 'full';
404
+ add_option( 'ig_es_post_image_size', $es_post_image_size );
405
+ $es_c_post_image_size = $es_post_image_size;
406
+ }
407
+
408
+ $form['ig_es_post_image_size'] = $es_c_post_image_size;
409
+ $form['ig_es_adminemail'] = get_option( 'ig_es_adminemail' );
410
+ $form['ig_es_notifyadmin'] = get_option( 'ig_es_notifyadmin' );
411
+ $form['ig_es_admin_new_sub_subject'] = get_option( 'ig_es_admin_new_sub_subject' );
412
+ $form['ig_es_admin_new_sub_content'] = get_option( 'ig_es_admin_new_sub_content' );
413
+
414
+ $es_c_sentreport = get_option('ig_es_sentreport', 'nooptionexists');
415
+ if($es_c_sentreport == "nooptionexists") {
416
+ $es_sent_report_plain = es_cls_common::es_sent_report_plain();
417
+ add_option('ig_es_sentreport', $es_sent_report_plain);
418
+ $es_c_sentreport = $es_sent_report_plain;
419
+ }
420
+ $form['ig_es_sentreport'] = $es_c_sentreport;
421
+
422
+ $es_c_sentreport_subject = get_option('ig_es_sentreport_subject', 'nosubjectexists');
423
+ if($es_c_sentreport_subject == "nosubjectexists") {
424
+ $es_sent_report_subject = es_cls_common::es_sent_report_subject();
425
+ add_option('ig_es_sentreport_subject', $es_sent_report_subject);
426
+ $es_c_sentreport_subject = $es_sent_report_subject;
427
+ }
428
+ $form['ig_es_sentreport_subject'] = $es_c_sentreport_subject;
429
+
430
+ // Signup Configuration Settings
431
+ $form['ig_es_welcomeemail'] = get_option( 'ig_es_welcomeemail' );
432
+ $form['ig_es_welcomesubject'] = get_option( 'ig_es_welcomesubject' );
433
+ $form['ig_es_welcomecontent'] = get_option( 'ig_es_welcomecontent' );
434
+ $form['ig_es_optintype'] = get_option( 'ig_es_optintype' );
435
+ $form['ig_es_confirmsubject'] = get_option( 'ig_es_confirmsubject' );
436
+ $form['ig_es_confirmcontent'] = get_option( 'ig_es_confirmcontent' );
437
+ $form['ig_es_optinlink'] = get_option( 'ig_es_optinlink' );
438
+ $form['ig_es_unsublink'] = get_option( 'ig_es_unsublink' );
439
+ $form['ig_es_unsubcontent'] = get_option( 'ig_es_unsubcontent' );
440
+ $form['ig_es_unsubtext'] = get_option( 'ig_es_unsubtext' );
441
+ $form['ig_es_successmsg'] = get_option( 'ig_es_successmsg' );
442
+ $form['ig_es_suberror'] = get_option( 'ig_es_suberror' );
443
+ $form['ig_es_unsuberror'] = get_option( 'ig_es_unsuberror' );
444
+
445
+ // Roles Settings
446
+ $form['es_roles_subscriber'] = '';
447
+ $form['es_roles_mail'] = '';
448
+ $form['es_roles_notification'] = '';
449
+ $form['es_roles_sendmail'] = '';
450
+ $form['es_roles_sentmail'] = '';
451
+
452
+ $es_c_rolesandcapabilities = get_option('ig_es_rolesandcapabilities', 'norecord');
453
+ if($es_c_rolesandcapabilities <> 'norecord' && $es_c_rolesandcapabilities <> "") {
454
+ $form['es_roles_subscriber'] = $es_c_rolesandcapabilities['es_roles_subscriber'];
455
+ $form['es_roles_mail'] = $es_c_rolesandcapabilities['es_roles_mail'];
456
+ $form['es_roles_notification'] = $es_c_rolesandcapabilities['es_roles_notification'];
457
+ $form['es_roles_sendmail'] = $es_c_rolesandcapabilities['es_roles_sendmail'];
458
+ $form['es_roles_sentmail'] = $es_c_rolesandcapabilities['es_roles_sentmail'];
459
+ }
460
+
461
+ // Cron Settings
462
+ $es_cron_url = get_option('ig_es_cronurl', 'nocronurl');
463
+ if($es_cron_url == "nocronurl") {
464
+ $guid = es_cls_common::es_generate_guid(60);
465
+ $home_url = home_url('/');
466
+ $cronurl = $home_url . "?es=cron&guid=". $guid;
467
+ add_option('ig_es_cronurl', $cronurl);
468
+ $es_cron_url = get_option('ig_es_cronurl');
469
+ }
470
+ $form['ig_es_cronurl'] = $es_cron_url;
471
+
472
+ $es_cron_mailcount = get_option('ig_es_cron_mailcount', '0');
473
+ if($es_cron_mailcount == "0") {
474
+ add_option('ig_es_cron_mailcount', "50");
475
+ $es_cron_mailcount = get_option('ig_es_cron_mailcount');
476
+ }
477
+ $form['ig_es_cron_mailcount'] = $es_cron_mailcount;
478
+
479
+ $es_cron_adminmail = get_option('ig_es_cron_adminmail', '');
480
+ if($es_cron_adminmail == "") {
481
+ add_option('ig_es_cron_adminmail', "Hi Admin, \r\n\r\nCron URL has been triggered successfully on ###DATE### for the email ###SUBJECT###. And it sent email to ###COUNT### recipient. \r\n\r\nThank You");
482
+ $es_cron_adminmail = get_option('ig_es_cron_adminmail');
483
+ }
484
+ $form['ig_es_cron_adminmail'] = $es_cron_adminmail;
485
+
486
+ // Form submitted, check & update the data in options table
487
+ if (isset($_POST['es_form_submit']) && $_POST['es_form_submit'] == 'yes') {
488
+ // Just security thingy that wordpress offers us
489
+ check_admin_referer('es_form_edit');
490
+
491
+ // Fetch submitted Admin Data
492
+ $form['ig_es_fromname'] = isset($_POST['es_c_fromname']) ? $_POST['es_c_fromname'] : '';
493
+ $form['ig_es_fromname'] = stripslashes($form['ig_es_fromname']);
494
+ if ($form['ig_es_fromname'] == '') {
495
+ $es_errors[] = __( 'Please enter sender of notifications from name.', ES_TDOMAIN );
496
+ $es_error_found = TRUE;
497
+ }
498
+ $form['ig_es_fromemail'] = isset($_POST['es_c_fromemail']) ? $_POST['es_c_fromemail'] : '';
499
+ if ($form['ig_es_fromemail'] == '') {
500
+ $es_errors[] = __( 'Please enter sender of notifications from email.', ES_TDOMAIN );
501
+ $es_error_found = TRUE;
502
+ }
503
+ $form['ig_es_emailtype'] = isset($_POST['es_c_mailtype']) ? $_POST['es_c_mailtype'] : '';
504
+ $form['ig_es_post_image_size'] = isset($_POST['es_c_post_image_size']) ? $_POST['es_c_post_image_size'] : '';
505
+ $form['ig_es_adminemail'] = isset($_POST['es_c_adminemail']) ? $_POST['es_c_adminemail'] : '';
506
+ $form['ig_es_notifyadmin'] = isset($_POST['es_c_adminmailoption']) ? $_POST['es_c_adminmailoption'] : '';
507
+ $form['ig_es_admin_new_sub_subject'] = isset($_POST['es_c_adminmailsubject']) ? $_POST['es_c_adminmailsubject'] : '';
508
+ $form['ig_es_admin_new_sub_content'] = isset($_POST['es_c_adminmailcontant']) ? $_POST['es_c_adminmailcontant'] : '';
509
+ $form['ig_es_sentreport'] = isset($_POST['es_c_sentreport']) ? $_POST['es_c_sentreport'] : '';
510
+ $form['ig_es_sentreport_subject'] = isset($_POST['es_c_sentreport_subject']) ? $_POST['es_c_sentreport_subject'] : '';
511
+
512
+ // Fetch submitted Signup Configuration data
513
+ $form['ig_es_welcomeemail'] = isset($_POST['es_c_usermailoption']) ? $_POST['es_c_usermailoption'] : '';
514
+ $form['ig_es_welcomesubject'] = isset($_POST['es_c_usermailsubject']) ? $_POST['es_c_usermailsubject'] : '';
515
+ $form['ig_es_welcomecontent'] = isset($_POST['es_c_usermailcontant']) ? $_POST['es_c_usermailcontant'] : '';
516
+ $form['ig_es_optintype'] = isset($_POST['es_c_optinoption']) ? $_POST['es_c_optinoption'] : '';
517
+ $form['ig_es_confirmsubject'] = isset($_POST['es_c_optinsubject']) ? $_POST['es_c_optinsubject'] : '';
518
+ $form['ig_es_confirmcontent'] = isset($_POST['es_c_optincontent']) ? $_POST['es_c_optincontent'] : '';
519
+
520
+ $home_url = home_url('/');
521
+
522
+ $optinlink = $home_url . "?es=optin&db=###DBID###&email=###EMAIL###&guid=###GUID###";
523
+ $form['ig_es_optinlink'] = $optinlink;
524
+
525
+ $unsublink = $home_url . "?es=unsubscribe&db=###DBID###&email=###EMAIL###&guid=###GUID###";
526
+ $form['ig_es_unsublink'] = $unsublink;
527
+
528
+ $form['ig_es_unsubcontent'] = isset($_POST['es_c_unsubtext']) ? $_POST['es_c_unsubtext'] : '';
529
+ $form['ig_es_unsubtext'] = isset($_POST['es_c_unsubhtml']) ? $_POST['es_c_unsubhtml'] : '';
530
+ $form['ig_es_successmsg'] = isset($_POST['es_c_subhtml']) ? $_POST['es_c_subhtml'] : '';
531
+ $form['ig_es_suberror'] = isset($_POST['es_c_message1']) ? $_POST['es_c_message1'] : '';
532
+ $form['ig_es_unsuberror'] = isset($_POST['es_c_message2']) ? $_POST['es_c_message2'] : '';
533
+
534
+ // Fetch submitted Roles Data
535
+ $form['es_roles_subscriber'] = $roles['es_roles_subscriber'] = isset($_POST['es_roles_subscriber']) ? $_POST['es_roles_subscriber'] : '';
536
+ $form['es_roles_mail'] = $roles['es_roles_mail'] = isset($_POST['es_roles_mail']) ? $_POST['es_roles_mail'] : '';
537
+ $form['es_roles_notification'] = $roles['es_roles_notification'] = isset($_POST['es_roles_notification']) ? $_POST['es_roles_notification'] : '';
538
+ $form['es_roles_sendmail'] = $roles['es_roles_sendmail'] = isset($_POST['es_roles_sendmail']) ? $_POST['es_roles_sendmail'] : '';
539
+ $form['es_roles_sentmail'] = $roles['es_roles_sentmail'] = isset($_POST['es_roles_sentmail']) ? $_POST['es_roles_sentmail'] : '';
540
+
541
+ // Fetch submitted Cron Data
542
+ $es_cron_mailcount = isset($_POST['es_cron_mailcount']) ? $_POST['es_cron_mailcount'] : '';
543
+ if( $es_cron_mailcount == "0" && strlen ($es_cron_mailcount) > 0 ) {
544
+ $es_errors[] = __('Please enter valid mail count.', 'email-subscribers');
545
+ $es_error_found = TRUE;
546
+ } else {
547
+ $form['ig_es_cron_mailcount'] = $es_cron_mailcount;
548
+ }
549
+
550
+ $form['ig_es_cron_adminmail'] = isset($_POST['es_cron_adminmail']) ? $_POST['es_cron_adminmail'] : '';
551
+
552
+ // No errors found, we can add the settings to tehe options
553
+ if ($es_error_found == FALSE) {
554
+ $action = "";
555
+ $action = $this->es_settings_update( $form, $roles );
556
+ if($action == "sus") {
557
+ $es_success = __( 'Settings Saved.', ES_TDOMAIN );
558
+ } else {
559
+ $es_error_found == TRUE;
560
+ $es_errors[] = __( 'Oops, unable to update.', ES_TDOMAIN );
561
+ }
562
+ }
563
+ }
564
+
565
+ if ($es_error_found == TRUE && isset($es_errors[0]) == TRUE) {
566
+ ?><div class="error fade">
567
+ <p><strong>
568
+ <?php echo $es_errors[0]; ?>
569
+ </strong></p>
570
+ </div><?php
571
+ }
572
+
573
+ if ($es_error_found == FALSE && strlen($es_success) > 0) {
574
+ ?><div class="notice notice-success is-dismissible">
575
+ <p><strong>
576
+ <?php echo $es_success; ?>
577
+ </strong></p>
578
+ </div><?php
579
+ }
580
+
581
+ return $form;
582
+ }
583
+
584
+ public function es_settings_update( $form = '', $roles = '' ) {
585
+ if ( ! empty( $form ) ) {
586
+ foreach ( $form as $key => $value ) {
587
+ update_option( $key, $value );
588
+ }
589
+ }
590
+ if ( ! empty( $roles ) ) {
591
+ update_option( 'ig_es_rolesandcapabilities', $roles );
592
+ }
593
+
594
+ return 'sus';
595
+ }
596
+ }
597
+ }
598
+
599
+ new ES_Settings();
sql/es-createdb.sql CHANGED
@@ -63,30 +63,3 @@ CREATE TABLE IF NOT EXISTS es_deliverreport (
63
  es_deliver_senttype VARCHAR(25) NOT NULL default 'Immediately',
64
  PRIMARY KEY (es_deliver_id)
65
  ) ENGINE=MyISAM /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci*/;
66
-
67
- -- SQLQUERY ---
68
-
69
- CREATE TABLE IF NOT EXISTS es_pluginconfig (
70
- es_c_id INT unsigned NOT NULL AUTO_INCREMENT,
71
- es_c_fromname VARCHAR(255) NOT NULL,
72
- es_c_fromemail VARCHAR(255) NOT NULL,
73
- es_c_mailtype VARCHAR(255) NOT NULL,
74
- es_c_adminmailoption VARCHAR(255) NOT NULL,
75
- es_c_adminemail VARCHAR(255) NOT NULL,
76
- es_c_adminmailsubject VARCHAR(255) NOT NULL,
77
- es_c_adminmailcontant TEXT NULL,
78
- es_c_usermailoption VARCHAR(255) NOT NULL,
79
- es_c_usermailsubject VARCHAR(255) NOT NULL,
80
- es_c_usermailcontant TEXT NULL,
81
- es_c_optinoption VARCHAR(255) NOT NULL,
82
- es_c_optinsubject VARCHAR(255) NOT NULL,
83
- es_c_optincontent TEXT NULL,
84
- es_c_optinlink VARCHAR(255) NOT NULL,
85
- es_c_unsublink VARCHAR(255) NOT NULL,
86
- es_c_unsubtext TEXT NULL,
87
- es_c_unsubhtml TEXT NULL,
88
- es_c_subhtml TEXT NULL,
89
- es_c_message1 TEXT NULL,
90
- es_c_message2 TEXT NULL,
91
- PRIMARY KEY (es_c_id)
92
- ) ENGINE=MyISAM /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci*/;
63
  es_deliver_senttype VARCHAR(25) NOT NULL default 'Immediately',
64
  PRIMARY KEY (es_deliver_id)
65
  ) ENGINE=MyISAM /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci*/;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
subscribers/view-subscriber-show.php CHANGED
@@ -2,7 +2,7 @@
2
 
3
  // Exit if accessed directly
4
  if ( ! defined( 'ABSPATH' ) ) {
5
- exit;
6
  }
7
 
8
  if ( !empty( $_POST ) && ! wp_verify_nonce( $_REQUEST['wp_create_nonce'], 'subscriber-nonce' ) ) {
@@ -13,8 +13,8 @@ $es_c_email_subscribers_ver = get_option('email-subscribers');
13
  if ( $es_c_email_subscribers_ver != "2.9" ) {
14
  ?><div class="error fade">
15
  <p>
16
- Note: You have recently upgraded the plugin and your tables are not sync.
17
- Please <a title="Sync plugin tables." href="<?php echo ES_ADMINURL; ?>?page=es-settings&amp;ac=sync"><?php echo __( 'Click Here', ES_TDOMAIN ); ?></a> to sync the table.
18
  This is mandatory and it will not affect your data.
19
  </p>
20
  </div><?php
@@ -28,7 +28,7 @@ $search_count = isset($_POST['searchquery_cnt']) ? $_POST['searchquery_cnt'] : '
28
  if (isset($_POST['frm_es_display']) && $_POST['frm_es_display'] == 'yes') {
29
  $did = isset($_GET['did']) ? $_GET['did'] : '0';
30
  es_cls_security::es_check_number($did);
31
-
32
  $es_success = '';
33
  $es_success_msg = FALSE;
34
 
@@ -36,7 +36,7 @@ if (isset($_POST['frm_es_display']) && $_POST['frm_es_display'] == 'yes') {
36
 
37
  // Just security thingy that wordpress offers us
38
  check_admin_referer('es_form_show');
39
-
40
  // First check if ID exist with requested ID
41
  $result = es_cls_dbquery::es_view_subscriber_count($did);
42
  if ($result != '1') {
@@ -50,7 +50,7 @@ if (isset($_POST['frm_es_display']) && $_POST['frm_es_display'] == 'yes') {
50
  if (isset($_GET['ac']) && $_GET['ac'] == 'del' && isset($_GET['did']) && $_GET['did'] != '') {
51
  // Delete selected record from the table
52
  es_cls_dbquery::es_view_subscriber_delete($did);
53
-
54
  // Set success message
55
  $es_success_msg = TRUE;
56
  $es_success = __( 'Record deleted.', ES_TDOMAIN );
@@ -58,9 +58,9 @@ if (isset($_POST['frm_es_display']) && $_POST['frm_es_display'] == 'yes') {
58
 
59
  if (isset($_GET['ac']) && $_GET['ac'] == 'resend' && isset($_GET['did']) && $_GET['did'] != '') {
60
  $did = isset($_GET['did']) ? $_GET['did'] : '0';
61
- $setting = array();
62
- $setting = es_cls_settings::es_setting_select(1);
63
- if( $setting['es_c_optinoption'] != "Double Opt In" ) {
64
  ?>
65
  <div class="error fade">
66
  <p><strong>
@@ -78,12 +78,12 @@ if (isset($_POST['frm_es_display']) && $_POST['frm_es_display'] == 'yes') {
78
  }
79
  } else {
80
  check_admin_referer('es_form_show');
81
-
82
  if (isset($_POST['frm_es_bulkaction']) && $_POST['frm_es_bulkaction'] == 'delete') {
83
 
84
  $chk_delete = isset($_POST['chk_delete']) ? $_POST['chk_delete'] : '';
85
 
86
- if(!empty($chk_delete)) {
87
  $count = count($chk_delete);
88
  for($i=0; $i<$count; $i++) {
89
  $del_id = $chk_delete[$i];
@@ -105,10 +105,10 @@ if (isset($_POST['frm_es_display']) && $_POST['frm_es_display'] == 'yes') {
105
  } elseif (isset($_POST['frm_es_bulkaction']) && $_POST['frm_es_bulkaction'] == 'resend') {
106
 
107
  $chk_delete = isset($_POST['chk_delete']) ? $_POST['chk_delete'] : '';
108
-
109
- $setting = array();
110
- $setting = es_cls_settings::es_setting_select(1);
111
- if( $setting['es_c_optinoption'] != "Double Opt In" ) {
112
  ?>
113
  <div class="error fade">
114
  <p><strong>
@@ -117,7 +117,7 @@ if (isset($_POST['frm_es_display']) && $_POST['frm_es_display'] == 'yes') {
117
  </div>
118
  <?php
119
  } else {
120
- if(!empty($chk_delete)) {
121
  $count = count($chk_delete);
122
  $idlist = "";
123
  for($i = 0; $i<$count; $i++) {
@@ -188,7 +188,7 @@ if (isset($_POST['frm_es_display']) && $_POST['frm_es_display'] == 'yes') {
188
  if (!empty($es_email_status)) {
189
  $count = count($chk_delete);
190
  $idstatus = "";
191
- for ($i=0; $i < $count; $i++) {
192
  $update_id = $chk_delete[$i];
193
  if ($i < 1) {
194
  $idstatus = $update_id;
@@ -222,7 +222,7 @@ if (isset($_POST['frm_es_display']) && $_POST['frm_es_display'] == 'yes') {
222
 
223
  }
224
  }
225
-
226
  if ($es_success_msg == TRUE) {
227
  ?>
228
  <div class="notice notice-success is-dismissible">
@@ -379,7 +379,7 @@ if (isset($_POST['frm_es_display']) && $_POST['frm_es_display'] == 'yes') {
379
  </tr>
380
  </tfoot>
381
  <tbody>
382
- <?php
383
  $i = 0;
384
  $displayisthere = FALSE;
385
  if(count($myData) > 0) {
@@ -388,22 +388,22 @@ if (isset($_POST['frm_es_display']) && $_POST['frm_es_display'] == 'yes') {
388
  } else {
389
  $i = $offset;
390
  }
391
- foreach ($myData as $data) {
392
  ?>
393
  <tr class="<?php if ($i&1) { echo'alternate'; } else { echo ''; } ?>">
394
  <td align="left"><input name="chk_delete[]" id="chk_delete[]" type="checkbox" value="<?php echo $data['es_email_id'] ?>" /></td>
395
  <td><?php echo $data['es_email_mail']; ?></td>
396
- <td><?php echo stripslashes($data['es_email_name']); ?></td>
397
  <td><?php echo es_cls_common::es_disp_status($data['es_email_status']); ?></td>
398
  <td><?php echo stripslashes($data['es_email_group']); ?></td>
399
  <td><?php echo get_date_from_gmt($data['es_email_created'],'Y-m-d H:i:s'); ?></td>
400
  <td>
401
- <div>
402
  <span class="edit">
403
  <a title="Edit" href="<?php echo ES_ADMINURL; ?>?page=es-view-subscribers&amp;ac=edit&amp;did=<?php echo $data['es_email_id']; ?>">
404
  <?php echo __( 'Edit', ES_TDOMAIN ); ?>
405
  </a> |
406
- </span>
407
  <span class="trash">
408
  <a onClick="javascript:_es_delete('<?php echo $data['es_email_id']; ?>')" href="javascript:void(0);">
409
  <?php echo __( 'Delete', ES_TDOMAIN ); ?>
@@ -412,11 +412,11 @@ if (isset($_POST['frm_es_display']) && $_POST['frm_es_display'] == 'yes') {
412
  <?php
413
  if($data['es_email_status'] != "Confirmed" && $data['es_email_status'] != "Single Opt In" ) {
414
  ?>
415
- <span class="edit">
416
  | <a onClick="javascript:_es_resend('<?php echo $data['es_email_id']; ?>')" href="javascript:void(0);">
417
  <?php echo __( 'Resend Confirmation', ES_TDOMAIN ); ?>
418
  </a>
419
- </span>
420
  <?php
421
  }
422
  ?>
@@ -425,13 +425,13 @@ if (isset($_POST['frm_es_display']) && $_POST['frm_es_display'] == 'yes') {
425
  </tr>
426
  <?php
427
  $i = $i+1;
428
- }
429
  } else {
430
  ?>
431
  <tr>
432
  <td colspan="7" align="center"><?php echo __( 'No records available.', ES_TDOMAIN ); ?></td>
433
  </tr>
434
- <?php
435
  }
436
  ?>
437
  </tbody>
2
 
3
  // Exit if accessed directly
4
  if ( ! defined( 'ABSPATH' ) ) {
5
+ exit;
6
  }
7
 
8
  if ( !empty( $_POST ) && ! wp_verify_nonce( $_REQUEST['wp_create_nonce'], 'subscriber-nonce' ) ) {
13
  if ( $es_c_email_subscribers_ver != "2.9" ) {
14
  ?><div class="error fade">
15
  <p>
16
+ Note: You have recently upgraded the plugin and your tables are not sync.
17
+ Please <a title="Sync plugin tables." href="<?php echo ES_ADMINURL; ?>?page=es-settings&amp;ac=sync"><?php echo __( 'Click Here', ES_TDOMAIN ); ?></a> to sync the table.
18
  This is mandatory and it will not affect your data.
19
  </p>
20
  </div><?php
28
  if (isset($_POST['frm_es_display']) && $_POST['frm_es_display'] == 'yes') {
29
  $did = isset($_GET['did']) ? $_GET['did'] : '0';
30
  es_cls_security::es_check_number($did);
31
+
32
  $es_success = '';
33
  $es_success_msg = FALSE;
34
 
36
 
37
  // Just security thingy that wordpress offers us
38
  check_admin_referer('es_form_show');
39
+
40
  // First check if ID exist with requested ID
41
  $result = es_cls_dbquery::es_view_subscriber_count($did);
42
  if ($result != '1') {
50
  if (isset($_GET['ac']) && $_GET['ac'] == 'del' && isset($_GET['did']) && $_GET['did'] != '') {
51
  // Delete selected record from the table
52
  es_cls_dbquery::es_view_subscriber_delete($did);
53
+
54
  // Set success message
55
  $es_success_msg = TRUE;
56
  $es_success = __( 'Record deleted.', ES_TDOMAIN );
58
 
59
  if (isset($_GET['ac']) && $_GET['ac'] == 'resend' && isset($_GET['did']) && $_GET['did'] != '') {
60
  $did = isset($_GET['did']) ? $_GET['did'] : '0';
61
+ $es_c_optinoption = get_option( 'ig_es_optintype' );
62
+
63
+ if( $es_c_optinoption != "Double Opt In" ) {
64
  ?>
65
  <div class="error fade">
66
  <p><strong>
78
  }
79
  } else {
80
  check_admin_referer('es_form_show');
81
+
82
  if (isset($_POST['frm_es_bulkaction']) && $_POST['frm_es_bulkaction'] == 'delete') {
83
 
84
  $chk_delete = isset($_POST['chk_delete']) ? $_POST['chk_delete'] : '';
85
 
86
+ if(!empty($chk_delete)) {
87
  $count = count($chk_delete);
88
  for($i=0; $i<$count; $i++) {
89
  $del_id = $chk_delete[$i];
105
  } elseif (isset($_POST['frm_es_bulkaction']) && $_POST['frm_es_bulkaction'] == 'resend') {
106
 
107
  $chk_delete = isset($_POST['chk_delete']) ? $_POST['chk_delete'] : '';
108
+
109
+ $es_c_optinoption = get_option( 'ig_es_optintype' );
110
+
111
+ if( $es_c_optinoption != "Double Opt In" ) {
112
  ?>
113
  <div class="error fade">
114
  <p><strong>
117
  </div>
118
  <?php
119
  } else {
120
+ if(!empty($chk_delete)) {
121
  $count = count($chk_delete);
122
  $idlist = "";
123
  for($i = 0; $i<$count; $i++) {
188
  if (!empty($es_email_status)) {
189
  $count = count($chk_delete);
190
  $idstatus = "";
191
+ for ($i=0; $i < $count; $i++) {
192
  $update_id = $chk_delete[$i];
193
  if ($i < 1) {
194
  $idstatus = $update_id;
222
 
223
  }
224
  }
225
+
226
  if ($es_success_msg == TRUE) {
227
  ?>
228
  <div class="notice notice-success is-dismissible">
379
  </tr>
380
  </tfoot>
381
  <tbody>
382
+ <?php
383
  $i = 0;
384
  $displayisthere = FALSE;
385
  if(count($myData) > 0) {
388
  } else {
389
  $i = $offset;
390
  }
391
+ foreach ($myData as $data) {
392
  ?>
393
  <tr class="<?php if ($i&1) { echo'alternate'; } else { echo ''; } ?>">
394
  <td align="left"><input name="chk_delete[]" id="chk_delete[]" type="checkbox" value="<?php echo $data['es_email_id'] ?>" /></td>
395
  <td><?php echo $data['es_email_mail']; ?></td>
396
+ <td><?php echo stripslashes($data['es_email_name']); ?></td>
397
  <td><?php echo es_cls_common::es_disp_status($data['es_email_status']); ?></td>
398
  <td><?php echo stripslashes($data['es_email_group']); ?></td>
399
  <td><?php echo get_date_from_gmt($data['es_email_created'],'Y-m-d H:i:s'); ?></td>
400
  <td>
401
+ <div>
402
  <span class="edit">
403
  <a title="Edit" href="<?php echo ES_ADMINURL; ?>?page=es-view-subscribers&amp;ac=edit&amp;did=<?php echo $data['es_email_id']; ?>">
404
  <?php echo __( 'Edit', ES_TDOMAIN ); ?>
405
  </a> |
406
+ </span>
407
  <span class="trash">
408
  <a onClick="javascript:_es_delete('<?php echo $data['es_email_id']; ?>')" href="javascript:void(0);">
409
  <?php echo __( 'Delete', ES_TDOMAIN ); ?>
412
  <?php
413
  if($data['es_email_status'] != "Confirmed" && $data['es_email_status'] != "Single Opt In" ) {
414
  ?>
415
+ <span class="edit">
416
  | <a onClick="javascript:_es_resend('<?php echo $data['es_email_id']; ?>')" href="javascript:void(0);">
417
  <?php echo __( 'Resend Confirmation', ES_TDOMAIN ); ?>
418
  </a>
419
+ </span>
420
  <?php
421
  }
422
  ?>
425
  </tr>
426
  <?php
427
  $i = $i+1;
428
+ }
429
  } else {
430
  ?>
431
  <tr>
432
  <td colspan="7" align="center"><?php echo __( 'No records available.', ES_TDOMAIN ); ?></td>
433
  </tr>
434
+ <?php
435
  }
436
  ?>
437
  </tbody>
subscribers/view-subscriber-sync.php CHANGED
@@ -2,7 +2,7 @@
2
 
3
  // Exit if accessed directly
4
  if ( ! defined( 'ABSPATH' ) ) {
5
- exit;
6
  }
7
 
8
  ?>
@@ -13,7 +13,7 @@ if ( ! defined( 'ABSPATH' ) ) {
13
  $es_errors = array();
14
  $es_success = '';
15
  $es_error_found = FALSE;
16
-
17
  $es_registered = "";
18
  $es_registered_group = "";
19
 
@@ -39,7 +39,7 @@ if ( ! defined( 'ABSPATH' ) ) {
39
 
40
  // No errors found, we can add this Group to the table
41
  if ($es_error_found == FALSE) {
42
- update_option( 'es_c_emailsubscribers', $form ); // what will happent to option??
43
 
44
  // Reset the form fields
45
  $form = array(
@@ -51,7 +51,7 @@ if ( ! defined( 'ABSPATH' ) ) {
51
  }
52
  }
53
 
54
- $es_c_emailsubscribers = get_option( 'es_c_emailsubscribers', 'norecord' );
55
  if($es_c_emailsubscribers != 'norecord' && $es_c_emailsubscribers != "") {
56
 
57
  $es_sync_unserialized_data = maybe_unserialize($es_c_emailsubscribers);
@@ -124,8 +124,8 @@ if ( ! defined( 'ABSPATH' ) ) {
124
  if(count($groups) > 0) {
125
  $i = 1;
126
  foreach ($groups as $group) {
127
- if($group["es_email_group"] == $es_registered_group) {
128
- $thisselected = "selected='selected'" ;
129
  }
130
  ?><option value='<?php echo $group["es_email_group"]; ?>' <?php echo $thisselected; ?>><?php echo $group["es_email_group"]; ?></option><?php
131
  $thisselected = "";
2
 
3
  // Exit if accessed directly
4
  if ( ! defined( 'ABSPATH' ) ) {
5
+ exit;
6
  }
7
 
8
  ?>
13
  $es_errors = array();
14
  $es_success = '';
15
  $es_error_found = FALSE;
16
+
17
  $es_registered = "";
18
  $es_registered_group = "";
19
 
39
 
40
  // No errors found, we can add this Group to the table
41
  if ($es_error_found == FALSE) {
42
+ update_option( 'ig_es_sync_wp_users', $form ); // what will happent to option??
43
 
44
  // Reset the form fields
45
  $form = array(
51
  }
52
  }
53
 
54
+ $es_c_emailsubscribers = get_option( 'ig_es_sync_wp_users', 'norecord' );
55
  if($es_c_emailsubscribers != 'norecord' && $es_c_emailsubscribers != "") {
56
 
57
  $es_sync_unserialized_data = maybe_unserialize($es_c_emailsubscribers);
124
  if(count($groups) > 0) {
125
  $i = 1;
126
  foreach ($groups as $group) {
127
+ if($group["es_email_group"] == $es_registered_group) {
128
+ $thisselected = "selected='selected'" ;
129
  }
130
  ?><option value='<?php echo $group["es_email_group"]; ?>' <?php echo $thisselected; ?>><?php echo $group["es_email_group"]; ?></option><?php
131
  $thisselected = "";