Email Subscribers & Newsletters - Version 4.0.5

Version Description

(11.03.2019) = * Update: Enable admin email notification after campaign sent * Fix: Migration of old Email Subscriber's widgets * Fix: Could not create, edit list

Download this release

Release Info

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

Code changes from version 4.0.4 to 4.0.5

email-subscribers.php CHANGED
@@ -3,7 +3,7 @@
3
  * Plugin Name: Email Subscribers & Newsletters
4
  * Plugin URI: https://www.icegram.com/
5
  * Description: Add subscription forms on website, send HTML newsletters & automatically notify subscribers about new blog posts once it is published.
6
- * Version: 4.0.4
7
  * Author: Icegram
8
  * Author URI: https://www.icegram.com/
9
  * Requires at least: 3.9
@@ -24,7 +24,7 @@ if ( ! defined( 'WPINC' ) ) {
24
  * Define constants
25
  */
26
  define( 'ES_PLUGIN_DIR', dirname( __FILE__ ) );
27
- define( 'ES_PLUGIN_VERSION', '4.0.4' );
28
  define( 'ES_PLUGIN_BASE_NAME', plugin_basename( __FILE__ ) );
29
 
30
  if ( ! defined( 'ES_PLUGIN_FILE' ) ) {
3
  * Plugin Name: Email Subscribers & Newsletters
4
  * Plugin URI: https://www.icegram.com/
5
  * Description: Add subscription forms on website, send HTML newsletters & automatically notify subscribers about new blog posts once it is published.
6
+ * Version: 4.0.5
7
  * Author: Icegram
8
  * Author URI: https://www.icegram.com/
9
  * Requires at least: 3.9
24
  * Define constants
25
  */
26
  define( 'ES_PLUGIN_DIR', dirname( __FILE__ ) );
27
+ define( 'ES_PLUGIN_VERSION', '4.0.5' );
28
  define( 'ES_PLUGIN_BASE_NAME', plugin_basename( __FILE__ ) );
29
 
30
  if ( ! defined( 'ES_PLUGIN_FILE' ) ) {
includes/admin/class-es-admin-settings.php CHANGED
@@ -150,6 +150,13 @@ class ES_Admin_Settings {
150
  )
151
  ),
152
 
 
 
 
 
 
 
 
153
 
154
  'email_type' => array(
155
  'id' => 'ig_es_email_type',
@@ -358,13 +365,6 @@ class ES_Admin_Settings {
358
  'default' => 'yes'
359
  ),
360
 
361
- 'admin_email' => array(
362
- 'id' => 'ig_es_admin_emails',
363
- 'name' => __( 'Email Addresses', 'email-subscribers' ),
364
- 'type' => 'text',
365
- 'desc' => __( 'Enter the admin email addresses that should receive notifications (separated by comma).', 'email-subscribers' ),
366
- 'default' => ''
367
- ),
368
 
369
  'new_contact_email_subject' => array(
370
  'id' => 'ig_es_admin_new_contact_email_subject',
@@ -382,10 +382,51 @@ class ES_Admin_Settings {
382
  'default' => '',
383
  ),
384
  )
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
385
  )
386
  ),
387
 
388
- 'cron_settings' => array(
389
  'ig_es_cronurl' => array(
390
  'type' => 'text',
391
  'placeholder' => '',
@@ -406,9 +447,11 @@ class ES_Admin_Settings {
406
  'id' => 'ig_es_hourly_email_send_limit',
407
  'name' => __( 'Maximum Emails Send In An Hour', 'email-subscribers' ),
408
  'desc' => __( 'Total emails your host can send in an hour.', 'email-subscribers' )
409
- )
410
- //'ig_es_cron_admin_email' => array( 'type' => 'textarea', 'options' => false, 'placeholder' => '', 'supplemental' => '', 'default' => '', 'id' => 'ig_es_cron_admin_email', 'name' => __( 'Send Cron Report To', 'email-subscribers' ), 'desc' => '', ),
 
411
  ),
 
412
  'security_settings' => array(
413
  'blocked_domains' => array(
414
  'id' => 'ig_es_blocked_domains',
150
  )
151
  ),
152
 
153
+ 'admin_email' => array(
154
+ 'id' => 'ig_es_admin_emails',
155
+ 'name' => __( 'Email Addresses', 'email-subscribers' ),
156
+ 'type' => 'text',
157
+ 'desc' => __( 'Enter the admin email addresses that should receive notifications (separated by comma).', 'email-subscribers' ),
158
+ 'default' => ''
159
+ ),
160
 
161
  'email_type' => array(
162
  'id' => 'ig_es_email_type',
365
  'default' => 'yes'
366
  ),
367
 
 
 
 
 
 
 
 
368
 
369
  'new_contact_email_subject' => array(
370
  'id' => 'ig_es_admin_new_contact_email_subject',
382
  'default' => '',
383
  ),
384
  )
385
+ ),
386
+
387
+ 'ig_es_cron_report' => array(
388
+ 'id' => 'ig_es_cron_report',
389
+ 'name' => __( 'Admin Notification On Every Campaign Sent', 'email-subscribers' ),
390
+ 'sub_fields' => array(
391
+
392
+ 'ig_es_enable_cron_admin_email' => array(
393
+ 'id' => 'ig_es_enable_cron_admin_email',
394
+ 'name' => __( 'Notify?', 'email-subscribers' ),
395
+ 'type' => 'select',
396
+ 'options' => array(
397
+ 'yes' => __( 'Yes', 'email-subscribers' ),
398
+ 'no' => __( 'No', 'email-subscribers' )
399
+ ),
400
+ 'desc' => __( 'Set this option to "Yes" to notify admin(s) on every campaign sent.', 'email-subscribers' ),
401
+ 'default' => 'yes'
402
+ ),
403
+ 'ig_es_cron_admin_email_subject' => array(
404
+ 'type' => 'text',
405
+ 'options' => false,
406
+ 'placeholder' => '',
407
+ 'supplemental' => '',
408
+ 'default' => __( 'Campaign Sent!', 'email-subscribers' ),
409
+ 'id' => 'ig_es_cron_admin_email_subject',
410
+ 'name' => __( 'Subject', 'email-subscribers' ),
411
+ 'desc' => '',
412
+ ),
413
+
414
+ 'ig_es_cron_admin_email' => array(
415
+ 'type' => 'textarea',
416
+ 'options' => false,
417
+ 'placeholder' => '',
418
+ 'supplemental' => '',
419
+ 'default' => '',
420
+ 'id' => 'ig_es_cron_admin_email',
421
+ 'name' => __( 'Content', 'email-subscribers' ),
422
+ 'desc' => __( 'Send report to admin(s) whenever campaign is successfully sent to all contacts. Available Keywords: {{DATE}}, {{SUBJECT}}, {{COUNT}}', 'email-subscribers' ),
423
+ )
424
+
425
+ )
426
  )
427
  ),
428
 
429
+ 'cron_settings' => array(
430
  'ig_es_cronurl' => array(
431
  'type' => 'text',
432
  'placeholder' => '',
447
  'id' => 'ig_es_hourly_email_send_limit',
448
  'name' => __( 'Maximum Emails Send In An Hour', 'email-subscribers' ),
449
  'desc' => __( 'Total emails your host can send in an hour.', 'email-subscribers' )
450
+ ),
451
+
452
+
453
  ),
454
+
455
  'security_settings' => array(
456
  'blocked_domains' => array(
457
  'id' => 'ig_es_blocked_domains',
includes/admin/class-es-cron.php CHANGED
@@ -23,9 +23,11 @@ class ES_Cron {
23
  $es_request = ( ! empty( $es ) ) ? $es : Email_Subscribers::get_request( 'es' );
24
  $self = ! empty( $_REQUEST['self'] ) ? $_REQUEST['self'] : 0;
25
 
26
- $ig_es_last_cron_run = get_option( 'ig_es_last_cron_run', true );
27
- $time_diff = ( time() - $ig_es_last_cron_run );
28
- $time_diff = ( ! empty( $_GET['es_pro'] ) && ( $_GET['es_pro'] == 1 || $_GET['es_pro'] === true || $_GET['es_pro'] === 'true' ) ) ? 1 : floor( $time_diff / 3600 );
 
 
29
  if ( 'cron' === $es_request ) {
30
 
31
  if ( $time_diff >= 1 || $self == 1 ) {
@@ -78,7 +80,7 @@ class ES_Cron {
78
  ES_DB_Mailing_Queue::update_sent_status( $notification_guid, 'Sending' );
79
 
80
  // Get subscribers from the deliverreport table based on fetched guid
81
- $emails = ES_DB_Sending_Queue::get_emails_to_be_sent_by_hash( $notification_guid, $es_c_croncount );
82
  $total_emails = count( $emails );
83
  // Found Subscribers to send notification?
84
  if ( $total_emails > 0 ) {
@@ -94,32 +96,33 @@ class ES_Cron {
94
  ES_DB_Sending_Queue::update_sent_status( $ids, 'Sent' );
95
  }
96
 
97
-
98
- $total_remaining_emails = ES_DB_Sending_Queue::get_total_emails_to_be_sent_by_hash( $notification_guid );
99
 
100
  // No emails left for the $notification_guid??? Send admin notification for the
101
  // Completion of a job
102
  if ( $total_remaining_emails == 0 ) {
103
  ES_DB_Mailing_Queue::update_sent_status( $notification_guid, 'Sent' );
104
- // Stop sending CRON emails for now.
105
- // We will check whether to enable it or not in future
106
- /*
107
- $template = ES_Mailer::prepare_es_cron_admin_email( $notification_guid );
108
-
109
- if ( ! empty( $template ) ) {
110
- $subject = __( 'Cron Email report', 'email-subscribers' );
111
- $admin_email = get_option( 'admin_email' );
112
- ES_Mailer::send( $admin_email, $subject, $template );
113
- } else {
114
- $response['es_remaining_email_count'] = $remainig_emails_to_be_sent;
115
- $response['message'] = 'TEMPLATE_NOT_FOUND';
116
- $response['status'] = 'ERROR';
117
- }
118
- */
119
 
120
- }
121
 
122
- $remainig_emails_to_be_sent = ES_DB_Sending_Queue::get_total_emails_to_be_sent();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
123
 
124
  $response['total_emails_sent'] = $total_emails;
125
  $response['es_remaining_email_count'] = $remainig_emails_to_be_sent;
@@ -139,27 +142,27 @@ class ES_Cron {
139
  $response['status'] = 'SUCCESS';
140
  }
141
  } else {
142
- $self = false;
143
  $response['status'] = 'ERROR';
144
  $response['message'] = 'CRON_GUID_DOES_NOT_MATCH';
145
  }
146
  } else {
147
- $self = false;
148
  $response['status'] = 'ERROR';
149
  $response['message'] = 'CRON_GUID_PATTERN_DOES_NOT_MATCH';
150
  }
151
  } else {
152
- $self = false;
153
  $response['status'] = 'ERROR';
154
  $response['message'] = 'INVALID_CRON_GUID';
155
  }
156
  } else {
157
- $self = false;
158
  $response['status'] = 'ERROR';
159
  $response['message'] = 'DO_NOT_PROCESS_REQUEST';
160
  }
161
  } else {
162
- $self = false;
163
  $response['status'] = 'ERROR';
164
  $response['message'] = 'EMPTY_CRON_GUID';
165
  }
@@ -177,7 +180,7 @@ class ES_Cron {
177
  $total_emails_to_be_sent = ! empty( $response['es_remaining_email_count'] ) ? $response['es_remaining_email_count'] : 0;
178
  $cron_url = ES_Common::get_cron_url( true );
179
 
180
- $send_now_text = __(sprintf("<a href='%s'>Send Now</a>", $cron_url), 'email-subscribers');
181
 
182
  if ( 'SUCCESS' === $status ) {
183
  $message = __( sprintf( 'Email(s) have been sent successfully!' ), 'email-subscribers' );
@@ -200,7 +203,7 @@ class ES_Cron {
200
  $args['es'] = 'cron';
201
  $es_c_cronurl = get_option( 'ig_es_cronurl', '' );
202
 
203
- if(!empty($es_c_cronurl)) {
204
  parse_str( $es_c_cronurl, $output );
205
  $args['guid'] = $output['guid'];
206
  if ( ! wp_next_scheduled( 'es_cron_hourly', array( $args['es'], $args['guid'] ) ) ) {
23
  $es_request = ( ! empty( $es ) ) ? $es : Email_Subscribers::get_request( 'es' );
24
  $self = ! empty( $_REQUEST['self'] ) ? $_REQUEST['self'] : 0;
25
 
26
+ //$ig_es_last_cron_run = get_option( 'ig_es_last_cron_run', true );
27
+ //$time_diff = ( time() - $ig_es_last_cron_run );
28
+ //$time_diff = ( ! empty( $_GET['es_pro'] ) && ( $_GET['es_pro'] == 1 || $_GET['es_pro'] === true || $_GET['es_pro'] === 'true' ) ) ? 1 : floor( $time_diff / 3600 );
29
+ $time_diff = 1;
30
+
31
  if ( 'cron' === $es_request ) {
32
 
33
  if ( $time_diff >= 1 || $self == 1 ) {
80
  ES_DB_Mailing_Queue::update_sent_status( $notification_guid, 'Sending' );
81
 
82
  // Get subscribers from the deliverreport table based on fetched guid
83
+ $emails = ES_DB_Sending_Queue::get_emails_to_be_sent_by_hash( $notification_guid, $es_c_croncount );
84
  $total_emails = count( $emails );
85
  // Found Subscribers to send notification?
86
  if ( $total_emails > 0 ) {
96
  ES_DB_Sending_Queue::update_sent_status( $ids, 'Sent' );
97
  }
98
 
99
+ $total_remaining_emails = ES_DB_Sending_Queue::get_total_emails_to_be_sent_by_hash( $notification_guid );
100
+ $remainig_emails_to_be_sent = ES_DB_Sending_Queue::get_total_emails_to_be_sent();
101
 
102
  // No emails left for the $notification_guid??? Send admin notification for the
103
  // Completion of a job
104
  if ( $total_remaining_emails == 0 ) {
105
  ES_DB_Mailing_Queue::update_sent_status( $notification_guid, 'Sent' );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
106
 
107
+ $notify_admin = get_option( 'ig_es_enable_cron_admin_email', 'yes' );
108
 
109
+ if ( 'yes' === $notify_admin ) {
110
+
111
+ $admin_email_addresses = get_option( 'ig_es_admin_emails' );
112
+ if ( ! empty( $admin_email_addresses ) ) {
113
+ $template = ES_Mailer::prepare_es_cron_admin_email( $notification_guid );
114
+
115
+ if ( ! empty( $template ) ) {
116
+ $subject = get_option( 'ig_es_cron_admin_email_subject', __( 'Campaign Sent!', 'email-subscribers' ) );
117
+ $admin_emails = explode( ',', $admin_email_addresses );
118
+ foreach ( $admin_emails as $admin_email ) {
119
+ $admin_email = trim( $admin_email );
120
+ ES_Mailer::send( $admin_email, $subject, $template );
121
+ }
122
+ }
123
+ }
124
+ }
125
+ }
126
 
127
  $response['total_emails_sent'] = $total_emails;
128
  $response['es_remaining_email_count'] = $remainig_emails_to_be_sent;
142
  $response['status'] = 'SUCCESS';
143
  }
144
  } else {
145
+ $self = false;
146
  $response['status'] = 'ERROR';
147
  $response['message'] = 'CRON_GUID_DOES_NOT_MATCH';
148
  }
149
  } else {
150
+ $self = false;
151
  $response['status'] = 'ERROR';
152
  $response['message'] = 'CRON_GUID_PATTERN_DOES_NOT_MATCH';
153
  }
154
  } else {
155
+ $self = false;
156
  $response['status'] = 'ERROR';
157
  $response['message'] = 'INVALID_CRON_GUID';
158
  }
159
  } else {
160
+ $self = false;
161
  $response['status'] = 'ERROR';
162
  $response['message'] = 'DO_NOT_PROCESS_REQUEST';
163
  }
164
  } else {
165
+ $self = false;
166
  $response['status'] = 'ERROR';
167
  $response['message'] = 'EMPTY_CRON_GUID';
168
  }
180
  $total_emails_to_be_sent = ! empty( $response['es_remaining_email_count'] ) ? $response['es_remaining_email_count'] : 0;
181
  $cron_url = ES_Common::get_cron_url( true );
182
 
183
+ $send_now_text = __( sprintf( "<a href='%s'>Send Now</a>", $cron_url ), 'email-subscribers' );
184
 
185
  if ( 'SUCCESS' === $status ) {
186
  $message = __( sprintf( 'Email(s) have been sent successfully!' ), 'email-subscribers' );
203
  $args['es'] = 'cron';
204
  $es_c_cronurl = get_option( 'ig_es_cronurl', '' );
205
 
206
+ if ( ! empty( $es_c_cronurl ) ) {
207
  parse_str( $es_c_cronurl, $output );
208
  $args['guid'] = $output['guid'];
209
  if ( ! wp_next_scheduled( 'es_cron_hourly', array( $args['es'], $args['guid'] ) ) ) {
includes/admin/class-es-form-widget.php ADDED
@@ -0,0 +1,78 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ // Exit if accessed directly
4
+ if ( ! defined( 'ABSPATH' ) ) {
5
+ exit;
6
+ }
7
+
8
+ class ES_Form_Widget extends WP_Widget {
9
+
10
+ function __construct() {
11
+ parent::__construct( 'email-subscribers-form', __( 'Email Subscribers', 'email-subscribers' ), array( 'description' => __( 'Email Subscribers Form', 'email-subscribers' ) ) );
12
+ }
13
+
14
+ public function widget( $args, $instance ) {
15
+
16
+ $title = apply_filters( 'widget_title', $instance['title'] );
17
+
18
+ echo $args['before_widget'];
19
+
20
+ if ( ! empty( $title ) ) {
21
+ echo $args['before_title'] . $title . $args['after_title'];
22
+ }
23
+
24
+ $form_id = isset( $instance['form_id'] ) ? esc_attr( $instance['form_id'] ) : '';
25
+
26
+ $form_data = array();
27
+ if ( ! empty( $form_id ) ) {
28
+
29
+ $form = ES_DB_Forms::get_form_by_id( $form_id );
30
+
31
+ $form_data = ES_Forms_Table::get_form_data_from_body( $form );
32
+ }
33
+
34
+ $name_visible = ( ! empty( $form_data['name_visible'] ) && 'yes' === $form_data['name_visible'] ) ? 'yes' : '';
35
+ $name_required = ( ! empty( $form_data['name_required'] ) && 'yes' === $form_data['name_required'] ) ? 'yes' : '';
36
+ $list_visible = ( ! empty( $form_data['list_visible'] ) && 'yes' === $form_data['list_visible'] ) ? 'yes' : '';
37
+ $lists = ( ! empty( $form_data['lists'] ) ) ? $form_data['lists'] : array();
38
+ $desc = ( ! empty( $form_data['desc'] ) ) ? $form_data['desc'] : '';
39
+
40
+ $data['name_visible'] = $name_visible;
41
+ $data['name_required'] = $name_required;
42
+ $data['form_id'] = $form_id;
43
+ $data['list_visible'] = $list_visible;
44
+ $data['lists'] = $lists;
45
+ $data['list'] = '';
46
+ $data['desc'] = $desc;
47
+
48
+ ES_Shortcode::render_form( $data );
49
+
50
+ echo $args['after_widget'];
51
+ }
52
+
53
+ public function form( $instance ) {
54
+ $selected_form_id = isset( $instance['form_id'] ) ? esc_attr( $instance['form_id'] ) : '';
55
+ $title = isset( $instance['title'] ) ? esc_attr( $instance['title'] ) : '';
56
+ ?>
57
+
58
+ <p>
59
+ <label for="<?php echo $this->get_field_id( 'title' ); ?>"><?php _e( 'Widget Title:' ); ?></label>
60
+ <input class="widefat" id="<?php echo $this->get_field_id( 'title' ); ?>" name="<?php echo $this->get_field_name( 'title' ); ?>" type="text" value="<?php echo esc_attr( $title ); ?>">
61
+ </p>
62
+ <p>
63
+ <label for="widget-email-subscribers-2-es_group"><?php _e( 'Forms' ); ?></label>
64
+ <select id="<?php echo $this->get_field_id( 'form_id' ); ?>" name="<?php echo $this->get_field_name( 'form_id' ); ?>" class="widefat" style="width:100%;">
65
+ <?php echo ES_Common::prepare_form_dropdown_options( $selected_form_id, null ); ?>
66
+ </select>
67
+ </p>
68
+ <?php
69
+ }
70
+
71
+ public function update( $new_instance, $old_instance ) {
72
+ $instance = array();
73
+ $instance['title'] = ( ! empty( $new_instance['title'] ) ) ? strip_tags( $new_instance['title'] ) : '';
74
+ $instance['form_id'] = ( ! empty( $new_instance['form_id'] ) ) ? strip_tags( $new_instance['form_id'] ) : '';
75
+
76
+ return $instance;
77
+ }
78
+ }
includes/admin/class-es-handle-post-notification.php CHANGED
@@ -3,21 +3,53 @@
3
  class ES_Handle_Post_Notification {
4
 
5
  public function __construct() {
 
 
6
  add_action( 'transition_post_status', array( $this, 'es_post_publish_callback' ), 10, 3 );
 
 
 
 
 
 
 
 
7
  }
8
 
9
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
10
  public function es_post_publish_callback( $post_status, $original_post_status, $post_id ) {
11
 
12
  if ( ( $post_status == 'publish' ) && ( $original_post_status != 'publish' ) ) {
13
- /*
14
- add entry to DB
15
-
16
- */
17
  if ( is_object( $post_id ) ) {
18
  $post_id = $post_id->ID;
19
  }
20
 
 
 
 
 
 
 
 
 
 
 
21
  $notifications = ES_DB_Notifications::get_notifications_by_post_id( $post_id );
22
  if ( count( $notifications ) > 0 ) {
23
  foreach ( $notifications as $notification ) {
3
  class ES_Handle_Post_Notification {
4
 
5
  public function __construct() {
6
+ global $wp_version;
7
+
8
  add_action( 'transition_post_status', array( $this, 'es_post_publish_callback' ), 10, 3 );
9
+
10
+ /*
11
+ if ( version_compare( $wp_version, '5.0.0', '>=' ) ) {
12
+ add_action( 'rest_after_insert_post', array( $this, 'handle_post_publish' ), 10, 3 );
13
+ } else {
14
+ add_action( 'transition_post_status', array( $this, 'es_post_publish_callback' ), 10, 3 );
15
+ }
16
+ */
17
  }
18
 
19
 
20
+ public function handle_post_publish( $post, $requst, $insert ) {
21
+
22
+ // If it's inserted for the fist time????
23
+ // Not able to check whether it'a first time post or nth times
24
+ if ( is_object( $post ) && ( $post instanceof WP_Post ) ) { // Do it for the first time only
25
+
26
+ $post_status = $post->post_status;
27
+
28
+ if ( 'publish' === $post_status ) {
29
+ $post_id = $post->ID;
30
+ $this->queue_post_notifications( $post_id );
31
+ }
32
+ }
33
+
34
+ }
35
+
36
  public function es_post_publish_callback( $post_status, $original_post_status, $post_id ) {
37
 
38
  if ( ( $post_status == 'publish' ) && ( $original_post_status != 'publish' ) ) {
 
 
 
 
39
  if ( is_object( $post_id ) ) {
40
  $post_id = $post_id->ID;
41
  }
42
 
43
+ if ( ! empty( $post_id ) ) {
44
+ $this->queue_post_notifications( $post_id );
45
+ }
46
+ }
47
+ }
48
+
49
+ public function queue_post_notifications( $post_id ) {
50
+
51
+ if ( ! empty( $post_id ) ) {
52
+
53
  $notifications = ES_DB_Notifications::get_notifications_by_post_id( $post_id );
54
  if ( count( $notifications ) > 0 ) {
55
  foreach ( $notifications as $notification ) {
includes/admin/class-es-old-widget.php ADDED
@@ -0,0 +1,114 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ // Exit if accessed directly
4
+ if ( ! defined( 'ABSPATH' ) ) {
5
+ exit;
6
+ }
7
+
8
+ class ES_Old_Widget extends WP_Widget {
9
+
10
+ function __construct() {
11
+ $widget_ops = array( 'classname' => 'widget_text elp-widget', 'description' => __( 'Email Subscribers', 'email-subscribers' ) );
12
+ parent::__construct( 'email-subscribers', __( 'Email Subscribers', 'email-subscribers' ), $widget_ops );
13
+ }
14
+
15
+ function widget( $args, $instance ) {
16
+
17
+ $title = apply_filters( 'widget_title', $instance['es_title'] );
18
+
19
+ echo $args['before_widget'];
20
+
21
+ if ( ! empty( $title ) ) {
22
+ echo $args['before_title'] . $title . $args['after_title'];
23
+ }
24
+
25
+ $display_name = isset( $instance['es_name'] ) ? esc_attr( $instance['es_name'] ) : '';
26
+ $subscribers_group = isset( $instance['es_group'] ) ? esc_attr( $instance['es_group'] ) : '';
27
+ $desc = isset( $instance['es_desc'] ) ? esc_attr( $instance['es_desc'] ) : '';
28
+
29
+ $name = strtolower( $display_name ) != 'no' ? 'yes' : '';
30
+
31
+ $list = ES_DB_Lists::get_list_by_name($subscribers_group);
32
+ if(!empty($list)) {
33
+ $list_id = $list['id'];
34
+ }
35
+
36
+ $data['name_visible'] = $name;
37
+ $data['list_visible'] = 'no';
38
+ $data['lists'] = array();
39
+ $data['form_id'] = 0;
40
+ $data['list'] = $list_id;
41
+ $data['desc'] = $desc;
42
+
43
+ ES_Shortcode::render_form( $data );
44
+
45
+ echo $args['after_widget'];
46
+ }
47
+
48
+ function update( $new_instance, $old_instance ) {
49
+ $instance = $old_instance;
50
+ $instance['es_title'] = ( ! empty( $new_instance['es_title'] ) ) ? strip_tags( $new_instance['es_title'] ) : '';
51
+ $instance['es_desc'] = ( ! empty( $new_instance['es_desc'] ) ) ? strip_tags( $new_instance['es_desc'] ) : '';
52
+ $instance['es_name'] = ( ! empty( $new_instance['es_name'] ) ) ? strip_tags( $new_instance['es_name'] ) : '';
53
+ $instance['es_group'] = ( ! empty( $new_instance['es_group'] ) ) ? strip_tags( $new_instance['es_group'] ) : '';
54
+
55
+ return $instance;
56
+ }
57
+
58
+ function form( $instance ) {
59
+ $defaults = array(
60
+ 'es_title' => '',
61
+ 'es_desc' => '',
62
+ 'es_name' => '',
63
+ 'es_group' => ''
64
+ );
65
+ $instance = wp_parse_args( (array) $instance, $defaults );
66
+ $es_title = $instance['es_title'];
67
+ $es_desc = $instance['es_desc'];
68
+ $es_name = $instance['es_name'];
69
+ $es_group = $instance['es_group'];
70
+ ?>
71
+ <p>
72
+ <label for="<?php echo $this->get_field_id( 'es_title' ); ?>"><?php echo __( 'Widget Title', 'email-subscribers' ); ?></label>
73
+ <input class="widefat" id="<?php echo $this->get_field_id( 'es_title' ); ?>" name="<?php echo $this->get_field_name( 'es_title' ); ?>" type="text" value="<?php echo $es_title; ?>"/>
74
+ </p>
75
+ <p>
76
+ <label for="<?php echo $this->get_field_id( 'es_desc' ); ?>"><?php echo __( 'Short description about subscription form', 'email-subscribers' ); ?></label>
77
+ <input class="widefat" id="<?php echo $this->get_field_id( 'es_desc' ); ?>" name="<?php echo $this->get_field_name( 'es_desc' ); ?>" type="text" value="<?php echo $es_desc; ?>"/>
78
+ </p>
79
+ <p>
80
+ <label for="<?php echo $this->get_field_id( 'es_name' ); ?>"><?php echo __( 'Display Name Field', 'email-subscribers' ); ?></label>
81
+ <select class="widefat" id="<?php echo $this->get_field_id( 'es_name' ); ?>" name="<?php echo $this->get_field_name( 'es_name' ); ?>">
82
+ <option value="YES" <?php $this->es_selected( $es_name == 'YES' ); ?>><?php echo __( 'YES', 'email-subscribers' ); ?></option>
83
+ <option value="NO" <?php $this->es_selected( $es_name == 'NO' ); ?>><?php echo __( 'NO', 'email-subscribers' ); ?></option>
84
+ </select>
85
+ </p>
86
+ <p>
87
+ <label for="<?php echo $this->get_field_id( 'es_group' ); ?>"><?php echo __( 'Subscriber Group', 'email-subscribers' ); ?></label>
88
+ <select class="widefat" name="<?php echo $this->get_field_name( 'es_group' ); ?>" id="<?php echo $this->get_field_id( 'es_group' ); ?>">
89
+ <?php
90
+ $groups = ES_DB_Lists::get_list_id_name_map();
91
+ if ( count( $groups ) > 0 ) {
92
+ $i = 1;
93
+ foreach ( $groups as $group ) {
94
+ ?>
95
+ <option value="<?php echo esc_html( stripslashes( $group ) ); ?>" <?php if ( stripslashes( $es_group ) == $group ) {
96
+ echo 'selected="selected"';
97
+ } ?>>
98
+ <?php echo stripslashes( $group ); ?>
99
+ </option>
100
+ <?php
101
+ }
102
+ }
103
+ ?>
104
+ </select>
105
+ </p>
106
+ <?php
107
+ }
108
+
109
+ function es_selected( $var ) {
110
+ if ( $var == 1 || $var == true ) {
111
+ echo 'selected="selected"';
112
+ }
113
+ }
114
+ }
includes/admin/class-es-reports-table.php CHANGED
@@ -371,7 +371,7 @@ class ES_Reports_Table extends WP_List_Table {
371
  } else {
372
  ES_DB_Mailing_Queue::delete_notifications( array( absint( Email_Subscribers::get_request( 'list' ) ) ) );
373
  ES_DB_Sending_Queue::delete_sending_queue_by_mailing_id( array( absint( Email_Subscribers::get_request( 'list' ) ) ) );
374
- $message = __( 'Notification has been deleted successfully!', 'email-subscribers' );
375
  $this->show_message( $message, 'success' );
376
  }
377
 
@@ -398,7 +398,7 @@ class ES_Reports_Table extends WP_List_Table {
398
  if ( count( $notification_ids ) > 0 ) {
399
  ES_DB_Mailing_Queue::delete_notifications( $notification_ids );
400
  ES_DB_Sending_Queue::delete_sending_queue_by_mailing_id( $notification_ids );
401
- $message = __( 'Notifications have been deleted successfully', 'email-subscribers' );
402
  $this->show_message( $message, 'success' );
403
  }
404
 
371
  } else {
372
  ES_DB_Mailing_Queue::delete_notifications( array( absint( Email_Subscribers::get_request( 'list' ) ) ) );
373
  ES_DB_Sending_Queue::delete_sending_queue_by_mailing_id( array( absint( Email_Subscribers::get_request( 'list' ) ) ) );
374
+ $message = __( 'Report has been deleted successfully!', 'email-subscribers' );
375
  $this->show_message( $message, 'success' );
376
  }
377
 
398
  if ( count( $notification_ids ) > 0 ) {
399
  ES_DB_Mailing_Queue::delete_notifications( $notification_ids );
400
  ES_DB_Sending_Queue::delete_sending_queue_by_mailing_id( $notification_ids );
401
+ $message = __( 'Reports have been deleted successfully!', 'email-subscribers' );
402
  $this->show_message( $message, 'success' );
403
  }
404
 
includes/class-email-subscribers.php CHANGED
@@ -108,7 +108,7 @@ class Email_Subscribers {
108
  '<a href="' . $url . '" target="_blank">' . __( 'Email Subscribers Pro', 'email-subscribers-premium' ) . '</a>' ); ?></p>
109
  </div>
110
  <?php
111
- return;
112
  }
113
  }
114
  }
@@ -235,8 +235,9 @@ class Email_Subscribers {
235
  'includes/admin/class-es-newsletters.php',
236
  'includes/admin/class-es-tools.php',
237
  'includes/admin/class-es-admin-settings.php',
238
- //'includes/admin/class-es-admin-settings-new.php',
239
  'includes/admin/class-es-widget.php',
 
 
240
  'includes/admin/class-es-export-subscribers.php',
241
  'includes/admin/class-es-import-subscribers.php',
242
  'includes/admin/class-es-info.php',
@@ -357,12 +358,14 @@ class Email_Subscribers {
357
  }
358
 
359
  public function register_es_widget() {
360
- register_widget( 'ES_Widget' );
 
 
361
  }
362
 
363
  public static function get_request( $request ) {
364
  if ( isset( $_REQUEST[ $request ] ) ) {
365
- return wp_unslash($_REQUEST[ $request ]);
366
  }
367
 
368
  return '';
108
  '<a href="' . $url . '" target="_blank">' . __( 'Email Subscribers Pro', 'email-subscribers-premium' ) . '</a>' ); ?></p>
109
  </div>
110
  <?php
111
+ return;
112
  }
113
  }
114
  }
235
  'includes/admin/class-es-newsletters.php',
236
  'includes/admin/class-es-tools.php',
237
  'includes/admin/class-es-admin-settings.php',
 
238
  'includes/admin/class-es-widget.php',
239
+ 'includes/admin/class-es-old-widget.php',
240
+ 'includes/admin/class-es-form-widget.php',
241
  'includes/admin/class-es-export-subscribers.php',
242
  'includes/admin/class-es-import-subscribers.php',
243
  'includes/admin/class-es-info.php',
358
  }
359
 
360
  public function register_es_widget() {
361
+ //register_widget( 'ES_Old_Widget' );
362
+ //register_widget( 'ES_Widget' );
363
+ register_widget( 'ES_Form_Widget' );
364
  }
365
 
366
  public static function get_request( $request ) {
367
  if ( isset( $_REQUEST[ $request ] ) ) {
368
+ return wp_unslash( $_REQUEST[ $request ] );
369
  }
370
 
371
  return '';
includes/class-es-common.php CHANGED
@@ -158,6 +158,28 @@ Class ES_Common {
158
  return $dropdown;
159
  }
160
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
161
 
162
  public static function prepare_list_checkbox( $selected = array() ) {
163
  $lists = ES_DB_Lists::get_list_id_name_map();
@@ -554,4 +576,156 @@ Class ES_Common {
554
  return trim( $name );
555
  }
556
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
557
  }
158
  return $dropdown;
159
  }
160
 
161
+ public static function prepare_form_dropdown_options( $selected = '', $default_label = 'Select Form' ) {
162
+
163
+ $lists = ES_DB_Forms::get_forms_id_name_map();
164
+ if ( ! is_null( $default_label ) ) {
165
+ $default_option[0] = __( $default_label, 'email-subscribers' );
166
+ $lists = $default_option + $lists;
167
+ }
168
+
169
+ $dropdown = '';
170
+ foreach ( $lists as $key => $list ) {
171
+ $dropdown .= "<option value='{$key}'";
172
+
173
+ if ( $selected == $key ) {
174
+ $dropdown .= "selected = selected";
175
+ }
176
+
177
+ $dropdown .= ">{$list}</option>";
178
+ }
179
+
180
+ return $dropdown;
181
+ }
182
+
183
 
184
  public static function prepare_list_checkbox( $selected = array() ) {
185
  $lists = ES_DB_Lists::get_list_id_name_map();
576
  return trim( $name );
577
  }
578
 
579
+ public static function migrate_widgets() {
580
+ global $wpdb;
581
+ /**
582
+ * Option - 1 -> ES < 3.x email-subscribers
583
+ * Option - 2 -> ES < 4.0.4 email_subscriber_widget
584
+ * Option - 3 -> ES > 4.0.5 email-subscribers-form
585
+ *
586
+ *
587
+ * - Fetch Option 1 from options table
588
+ * - Create a form
589
+ * - Set a new option with Option - 3 (title, form_id)
590
+ *
591
+ * - Fetch Option 2 from options table
592
+ * - Create a form with data
593
+ * - Set a new option with Option - 3 (title, form_id)
594
+ *
595
+ * - Fetch sidebar_widgets option from options table
596
+ * - Change Option 1 with Option 3
597
+ * - Change Option 2 with Option 3
598
+ */
599
+
600
+ $es_3_widget_option = 'widget_email-subscribers';
601
+ $es_4_widget_option = 'widget_email_subscriber_widget';
602
+ $latest_widget_option = 'widget_email-subscribers-form';
603
+
604
+ $es_3_widget_option_data = get_option( $es_3_widget_option, '' );
605
+ if ( ! empty( $es_3_widget_option_data ) ) {
606
+ $es_3_widget_option_data = maybe_unserialize( $es_3_widget_option_data );
607
+
608
+ if ( is_array( $es_3_widget_option_data ) ) {
609
+ foreach ( $es_3_widget_option_data as $key => $data ) {
610
+ if ( is_array( $data ) && count( $data ) > 0 && isset( $data['es_title'] ) && isset( $data['es_desc'] ) && isset( $data['es_name'] ) && isset( $data['es_group'] ) ) {
611
+ $title = ! empty( $data['es_title'] ) ? $data['es_title'] : '';
612
+ $name_visible = ( ! empty( $data['es_name'] ) && 'yes' === strtolower( $data['es_name'] ) ) ? 'yes' : 'no';
613
+ $desc = ! empty( $data['es_desc'] ) ? $data['es_desc'] : '';
614
+ $group = ! empty( $data['es_group'] ) ? $data['es_group'] : '';
615
+
616
+ $list = ES_DB_Lists::get_list_by_name( $group );
617
+
618
+ $list_id = 1;
619
+ if ( ! empty( $list ) ) {
620
+ $list_id = $list['id'];
621
+ }
622
+
623
+ $name = 'Widget - ' . $title;
624
+
625
+ $data = array(
626
+ 'name' => $name,
627
+ 'desc' => $desc,
628
+ 'name_visible' => $name_visible,
629
+ 'name_required' => 'no',
630
+ 'list_visible' => 'no',
631
+ 'lists' => array( $list_id ),
632
+ 'af_id' => 0
633
+ );
634
+
635
+ $prepared_form_data = ES_Forms_Table::prepare_form_data( $data );
636
+
637
+ $inserted_form_id = ES_DB_Forms::add_form( $prepared_form_data );
638
+
639
+ $data_to_set = array(
640
+ 'title' => $title,
641
+ 'form_id' => $inserted_form_id
642
+ );
643
+
644
+ $es_3_widget_option_data[ $key ] = $data_to_set;
645
+ }
646
+
647
+ }
648
+
649
+ update_option( $latest_widget_option, $es_3_widget_option_data );
650
+ }
651
+ }
652
+
653
+ $es_4_widget_option_data = get_option( $es_4_widget_option, '' );
654
+ if ( ! empty( $es_4_widget_option_data ) ) {
655
+ $es_4_widget_option_data = maybe_unserialize( $es_4_widget_option_data );
656
+
657
+ if ( is_array( $es_4_widget_option_data ) ) {
658
+ foreach ( $es_4_widget_option_data as $key => $data ) {
659
+ if ( is_array( $data ) && count( $data ) > 0 && isset( $data['title'] ) && isset( $data['short_desc'] ) && isset( $data['display_name'] ) && isset( $data['subscribers_group'] ) ) {
660
+ $title = ! empty( $data['title'] ) ? $data['title'] : '';
661
+ $name_visible = ( ! empty( $data['display_name'] ) && 'yes' === strtolower( $data['display_name'] ) ) ? 'yes' : 'no';
662
+ $desc = ! empty( $data['short_desc'] ) ? $data['short_desc'] : '';
663
+ $list_id = ! empty( $data['subscribers_group'] ) ? $data['subscribers_group'] : '';
664
+
665
+ if ( empty( $list_id ) ) {
666
+ $list_id = 1;
667
+ }
668
+
669
+ $name = 'Widget - ' . $title;
670
+
671
+ $data = array(
672
+ 'name' => $name,
673
+ 'desc' => $desc,
674
+ 'name_visible' => $name_visible,
675
+ 'name_required' => 'no',
676
+ 'list_visible' => 'no',
677
+ 'lists' => array( $list_id ),
678
+ 'af_id' => 0
679
+ );
680
+
681
+ $prepared_form_data = ES_Forms_Table::prepare_form_data( $data );
682
+
683
+ $logger = get_ig_logger();
684
+ $logger->info('Widges DAta.....' . print_r($prepared_form_data, true));
685
+
686
+ $inserted_form_id = ES_DB_Forms::add_form( $prepared_form_data );
687
+
688
+ $data_to_set = array(
689
+ 'title' => $title,
690
+ 'form_id' => $inserted_form_id
691
+ );
692
+
693
+ $es_4_widget_option_data[ $key ] = $data_to_set;
694
+ }
695
+ }
696
+
697
+ update_option( $latest_widget_option, $es_4_widget_option_data );
698
+ }
699
+ }
700
+
701
+ //Update sidebars_widgets options.
702
+ $sidebars_widgets = get_option( 'sidebars_widgets', '' );
703
+ if ( ! empty( $sidebars_widgets ) ) {
704
+ $widgets_data = maybe_unserialize($sidebars_widgets);
705
+
706
+ if(is_array($widgets_data) && count($widgets_data) > 0) {
707
+ foreach ($widgets_data as $key => $data) {
708
+ if(is_array($data) && count($data) > 0 ) {
709
+ foreach ($data as $k => $v ) {
710
+ if(strstr($v, 'email-subscribers-')) {
711
+ $v = str_replace('email-subscribers-', 'email-subscribers-form-', $v);
712
+ $widgets_data[$key][$k] = $v;
713
+ }
714
+
715
+ if(strstr($v, 'email_subscriber_widget-')) {
716
+ $v = str_replace('email_subscriber_widget-', 'email-subscribers-form-', $v);
717
+ $widgets_data[$key][$k] = $v;
718
+ }
719
+ }
720
+ }
721
+ }
722
+
723
+ update_option('sidebars_widgets', $widgets_data);
724
+ }
725
+
726
+ }
727
+
728
+ }
729
+
730
+
731
  }
includes/class-es-install.php CHANGED
@@ -83,6 +83,13 @@ class ES_Install {
83
  'ig_es_update_403_alter_campaigns_table',
84
  'ig_es_update_403_alter_mailing_queue_table',
85
  'ig_es_update_403_db_version'
 
 
 
 
 
 
 
86
  )
87
  );
88
 
@@ -439,7 +446,7 @@ class ES_Install {
439
 
440
  CREATE TABLE `{$wpdb->prefix}ig_forms` (
441
  `id` int(10) NOT NULL AUTO_INCREMENT,
442
- `name` varchar(90) NOT NULL,
443
  `body` longtext,
444
  `settings` longtext,
445
  `styles` longtext,
@@ -452,8 +459,8 @@ class ES_Install {
452
 
453
  CREATE TABLE `{$wpdb->prefix}ig_lists` (
454
  `id` int(10) NOT NULL AUTO_INCREMENT,
455
- `slug` varchar(10) NOT NULL,
456
- `name` varchar(50) NOT NULL,
457
  `created_at` datetime DEFAULT NULL,
458
  `updated_at` datetime DEFAULT NULL,
459
  `deleted_at` datetime DEFAULT NULL,
83
  'ig_es_update_403_alter_campaigns_table',
84
  'ig_es_update_403_alter_mailing_queue_table',
85
  'ig_es_update_403_db_version'
86
+ ),
87
+
88
+ '4.0.5' => array(
89
+ 'ig_es_update_405_alter_forms_table',
90
+ 'ig_es_update_405_alter_lists_table',
91
+ 'ig_es_update_405_migrate_widgets',
92
+ 'ig_es_update_405_db_version'
93
  )
94
  );
95
 
446
 
447
  CREATE TABLE `{$wpdb->prefix}ig_forms` (
448
  `id` int(10) NOT NULL AUTO_INCREMENT,
449
+ `name` varchar(255) NOT NULL,
450
  `body` longtext,
451
  `settings` longtext,
452
  `styles` longtext,
459
 
460
  CREATE TABLE `{$wpdb->prefix}ig_lists` (
461
  `id` int(10) NOT NULL AUTO_INCREMENT,
462
+ `slug` varchar(255) NOT NULL,
463
+ `name` varchar(255) NOT NULL,
464
  `created_at` datetime DEFAULT NULL,
465
  `updated_at` datetime DEFAULT NULL,
466
  `deleted_at` datetime DEFAULT NULL,
includes/class-es-mailer.php CHANGED
@@ -243,13 +243,15 @@ class ES_Mailer {
243
  if ( isset( $notification['subject'] ) ) {
244
  $email_count = $notification['count'];
245
  $post_subject = $notification['subject'];
246
- $cron_date = date( 'Y-m-d h:i' );
247
 
248
  $template = get_option( 'ig_es_cron_admin_email' );
249
 
250
  $template = str_replace( '{{DATE}}', $cron_date, $template );
251
  $template = str_replace( '{{COUNT}}', $email_count, $template );
252
  $template = str_replace( '{{SUBJECT}}', $post_subject, $template );
 
 
253
  }
254
 
255
  return $template;
243
  if ( isset( $notification['subject'] ) ) {
244
  $email_count = $notification['count'];
245
  $post_subject = $notification['subject'];
246
+ $cron_date = date( 'Y-m-d h:i:s' );
247
 
248
  $template = get_option( 'ig_es_cron_admin_email' );
249
 
250
  $template = str_replace( '{{DATE}}', $cron_date, $template );
251
  $template = str_replace( '{{COUNT}}', $email_count, $template );
252
  $template = str_replace( '{{SUBJECT}}', $post_subject, $template );
253
+
254
+ $template = nl2br($template);
255
  }
256
 
257
  return $template;
includes/db/class-es-db-forms.php CHANGED
@@ -34,6 +34,22 @@ class ES_DB_Forms {
34
 
35
  }
36
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
37
  public static function add_form( $data ) {
38
  global $wpdb;
39
  $insert = $wpdb->insert( IG_FORMS_TABLE, $data );
@@ -48,9 +64,11 @@ class ES_DB_Forms {
48
  public static function get_form_by_id( $id ) {
49
  global $wpdb;
50
 
51
- $query = "SELECT * FROM " . IG_FORMS_TABLE . " WHERE deleted_at IS NULL AND id = {$id}";
52
- $form = $wpdb->get_results( $query, ARRAY_A );
53
 
 
 
 
 
54
  if ( $form ) {
55
  $form = array_shift( $form );
56
  }
@@ -62,7 +80,7 @@ class ES_DB_Forms {
62
  public static function get_form_by_af_id( $af_id ) {
63
  global $wpdb;
64
 
65
- $query = "SELECT * FROM " . IG_FORMS_TABLE . " WHERE deleted_at IS NULL AND af_id = {$af_id}";
66
  $form = $wpdb->get_results( $query, ARRAY_A );
67
 
68
  if ( $form ) {
34
 
35
  }
36
 
37
+ public static function get_forms_id_name_map() {
38
+ global $wpdb;
39
+
40
+ $query = "SELECT id, name FROM {$wpdb->prefix}ig_forms WHERE (deleted_at IS NULL OR deleted_at = '0000-00-00 00:00:00') ";
41
+ $forms = $wpdb->get_results($query, ARRAY_A);
42
+
43
+ $id_name_map = array();
44
+ if(count($forms) > 0) {
45
+ foreach ( $forms as $form ) {
46
+ $id_name_map[$form['id']] = $form['name'];
47
+ }
48
+ }
49
+
50
+ return $id_name_map;
51
+ }
52
+
53
  public static function add_form( $data ) {
54
  global $wpdb;
55
  $insert = $wpdb->insert( IG_FORMS_TABLE, $data );
64
  public static function get_form_by_id( $id ) {
65
  global $wpdb;
66
 
 
 
67
 
68
+
69
+ $query = "SELECT * FROM " . IG_FORMS_TABLE . " WHERE (deleted_at IS NULL OR deleted_at = '0000-00-00 00:00:00') AND id = {$id}";
70
+
71
+ $form = $wpdb->get_results( $query, ARRAY_A );
72
  if ( $form ) {
73
  $form = array_shift( $form );
74
  }
80
  public static function get_form_by_af_id( $af_id ) {
81
  global $wpdb;
82
 
83
+ $query = "SELECT * FROM " . IG_FORMS_TABLE . " WHERE (deleted_at IS NULL OR deleted_at = '0000-00-00 00:00:00') AND af_id = {$af_id}";
84
  $form = $wpdb->get_results( $query, ARRAY_A );
85
 
86
  if ( $form ) {
includes/db/class-es-db-lists.php CHANGED
@@ -21,7 +21,7 @@ class ES_DB_Lists {
21
  global $wpdb;
22
 
23
 
24
- $query = "SELECT * FROM " . IG_LISTS_TABLE;
25
  // if ( $status === 'enable' || $status === 'disable' ) {
26
  // $query .= $wpdb->prepare(" WHERE status = %s", $status);
27
  // }
@@ -37,7 +37,7 @@ class ES_DB_Lists {
37
 
38
  $lists_map = array();
39
 
40
- $sSql = "SELECT id, name FROM " . IG_LISTS_TABLE . " WHERE deleted_at IS NULL";
41
  $res = $wpdb->get_results( $sSql, ARRAY_A );
42
  foreach ( $res as $list ) {
43
  $lists_map[ $list['id'] ] = $list['name'];
@@ -52,6 +52,7 @@ class ES_DB_Lists {
52
  if ( $flip ) {
53
  $lists_map = array_flip( $lists_map );
54
  }
 
55
  return $lists_map;
56
  }
57
 
@@ -77,7 +78,7 @@ class ES_DB_Lists {
77
  public static function get_all_lists_name_by_contact( $id ) {
78
  global $wpdb;
79
 
80
- $sSql = $wpdb->prepare( "SELECT name FROM " . IG_LISTS_TABLE . " where id IN ( SELECT list_id from " . IG_LISTS_CONTACTS_TABLE . " where contact_id = %d ) AND deleted_at IS NULL", $id );
81
  $res = $wpdb->get_col( $sSql );
82
 
83
  return $res;
21
  global $wpdb;
22
 
23
 
24
+ $query = "SELECT * FROM " . IG_LISTS_TABLE . " WHERE deleted_at IS NULL OR deleted_at = '0000-00-00 00:00:00' ";
25
  // if ( $status === 'enable' || $status === 'disable' ) {
26
  // $query .= $wpdb->prepare(" WHERE status = %s", $status);
27
  // }
37
 
38
  $lists_map = array();
39
 
40
+ $sSql = "SELECT id, name FROM " . IG_LISTS_TABLE . " WHERE deleted_at IS NULL OR deleted_at = '0000-00-00 00:00:00' ";
41
  $res = $wpdb->get_results( $sSql, ARRAY_A );
42
  foreach ( $res as $list ) {
43
  $lists_map[ $list['id'] ] = $list['name'];
52
  if ( $flip ) {
53
  $lists_map = array_flip( $lists_map );
54
  }
55
+
56
  return $lists_map;
57
  }
58
 
78
  public static function get_all_lists_name_by_contact( $id ) {
79
  global $wpdb;
80
 
81
+ $sSql = $wpdb->prepare( "SELECT name FROM " . IG_LISTS_TABLE . " where id IN ( SELECT list_id from " . IG_LISTS_CONTACTS_TABLE . " where contact_id = %d ) AND ( deleted_at IS NULL OR deleted_at = '0000-00-00 00:00:00' ) ", $id );
82
  $res = $wpdb->get_col( $sSql );
83
 
84
  return $res;
includes/upgrade/es-update-functions.php CHANGED
@@ -594,4 +594,45 @@ function ig_es_update_403_db_version() {
594
  $logger->info( 'Run ig_es_update_403_db_version' );
595
  }
596
 
597
- /* --------------------- ES 4.0.3(End)--------------------------- */
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
594
  $logger->info( 'Run ig_es_update_403_db_version' );
595
  }
596
 
597
+ /* --------------------- ES 4.0.3(End)--------------------------- */
598
+
599
+ function ig_es_update_405_alter_forms_table() {
600
+ global $wpdb;
601
+
602
+ $query = "ALTER TABLE {$wpdb->prefix}ig_forms MODIFY `name` varchar(255) DEFAULT NULL";
603
+ $wpdb->query( $query );
604
+
605
+ $logger = get_ig_logger();
606
+ $logger->info( 'Run ig_es_update_405_alter_lists_table' );
607
+ }
608
+
609
+ function ig_es_update_405_alter_lists_table() {
610
+ global $wpdb;
611
+
612
+ $query = "ALTER TABLE {$wpdb->prefix}ig_lists MODIFY `name` varchar(255) DEFAULT NULL";
613
+ $wpdb->query( $query );
614
+
615
+ $query = "ALTER TABLE {$wpdb->prefix}ig_lists MODIFY `slug` varchar(255) DEFAULT NULL";
616
+
617
+ $wpdb->query( $query );
618
+
619
+ $logger = get_ig_logger();
620
+ $logger->info( 'Run ig_es_update_405_alter_lists_table' );
621
+ }
622
+
623
+ function ig_es_update_405_migrate_widgets() {
624
+ ES_Common::migrate_widgets();
625
+ $logger = get_ig_logger();
626
+ $logger->info( 'Run ig_es_update_405_migrate_widgets' );
627
+ }
628
+
629
+
630
+ function ig_es_update_405_db_version() {
631
+ ES_Install::update_db_version( '4.0.5' );
632
+ $db_update_option = '405_db_updated_at';
633
+ ES_Common::set_ig_option( $db_update_option, ig_get_current_date_time() );
634
+ $logger = get_ig_logger();
635
+ $logger->info( 'Run ig_es_update_405_db_version' );
636
+ }
637
+
638
+ /* --------------------- ES 4.0.5(End)--------------------------- */
languages/email-subscribers.pot CHANGED
@@ -3,7 +3,7 @@ msgid ""
3
  msgstr ""
4
  "Project-Id-Version: Email Subscribers & Newsletters\n"
5
  "Report-Msgid-Bugs-To: \n"
6
- "POT-Creation-Date: 2019-03-07 12:39+0000\n"
7
  "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
8
  "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
9
  "Language-Team: \n"
@@ -49,59 +49,59 @@ msgstr ""
49
  msgid "Send email via cron job"
50
  msgstr ""
51
 
52
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/class-es-common.php:229
53
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-post-notifications.php:273
54
  msgid "Select Status"
55
  msgstr ""
56
 
57
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/class-es-common.php:230
58
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-lists-table.php:561
59
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-forms-table.php:754
60
  msgid "Enable"
61
  msgstr ""
62
 
63
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/class-es-common.php:231
64
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-lists-table.php:562
65
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-forms-table.php:755
66
  msgid "Disable"
67
  msgstr ""
68
 
69
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/class-es-common.php:270
70
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-newsletters.php:121
71
  msgid "Select Template"
72
  msgstr ""
73
 
74
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/class-es-common.php:299
75
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-campaigns-table.php:187
76
  msgid "Active"
77
  msgstr ""
78
 
79
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/class-es-common.php:300
80
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-campaigns-table.php:187
81
  msgid "Inactive"
82
  msgstr ""
83
 
84
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/class-es-common.php:386
85
  msgid "No Custom Post Types Available"
86
  msgstr ""
87
 
88
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/class-es-common.php:407
89
  msgid "Single Opt-In"
90
  msgstr ""
91
 
92
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/class-es-common.php:408
93
  msgid "Double Opt-In"
94
  msgstr ""
95
 
96
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/class-es-common.php:416
97
  msgid "Full Size"
98
  msgstr ""
99
 
100
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/class-es-common.php:417
101
  msgid "Medium Size"
102
  msgstr ""
103
 
104
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/class-es-common.php:418
105
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-templates-table.php:192
106
  msgid "Thumbnail"
107
  msgstr ""
@@ -738,21 +738,26 @@ msgid "Email Subscribers Widget"
738
  msgstr ""
739
 
740
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-widget.php:11
 
 
 
741
  msgid "Email Subscribers"
742
  msgstr ""
743
 
744
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-widget.php:49
745
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-handle-sync-wp-user.php:109
746
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:354
747
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-forms-table.php:315
 
 
748
  msgid "Yes"
749
  msgstr ""
750
 
751
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-widget.php:49
752
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-export-subscribers.php:58
753
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-handle-sync-wp-user.php:108
754
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:355
755
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-forms-table.php:319
 
 
756
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-reports-table.php:92
757
  msgid "No"
758
  msgstr ""
@@ -833,22 +838,24 @@ msgstr ""
833
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-export-subscribers.php:222
834
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-lists-table.php:223
835
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-lists-table.php:425
836
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:135
837
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:138
838
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-forms-table.php:276
839
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-forms-table.php:634
840
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-subscribers-table.php:365
841
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-subscribers-table.php:549
842
- #: ../../../../wpRepos/gitlab/email-subscribers/public/partials/class-es-shortcode.php:136
 
 
 
843
  msgid "Name"
844
  msgstr ""
845
 
846
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-export-subscribers.php:223
847
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:144
848
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-forms-table.php:271
849
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-reports-table.php:93
850
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-subscribers-table.php:369
851
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-subscribers-table.php:550
 
 
 
852
  msgid "Email"
853
  msgstr ""
854
 
@@ -1039,196 +1046,6 @@ msgstr ""
1039
  msgid "Sync Now"
1040
  msgstr ""
1041
 
1042
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:131
1043
- msgid "Sender"
1044
- msgstr ""
1045
-
1046
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:145
1047
- msgid ""
1048
- "Choose a FROM email address for all the emails to be sent from this plugin"
1049
- msgstr ""
1050
-
1051
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:147
1052
- msgid "Email Address"
1053
- msgstr ""
1054
-
1055
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:156
1056
- msgid "Email Type"
1057
- msgstr ""
1058
-
1059
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:157
1060
- msgid "Select whether to send HTML or Plain Text email."
1061
- msgstr ""
1062
-
1063
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:165
1064
- msgid "Opt-in Type"
1065
- msgstr ""
1066
-
1067
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:174
1068
- msgid "Image Size"
1069
- msgstr ""
1070
-
1071
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:189
1072
- msgid "Show Unsubscribe Message In Email Footer"
1073
- msgstr ""
1074
-
1075
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:190
1076
- msgid ""
1077
- "Add text which you want your contact to see in footer to unsubscribe. Use "
1078
- "{{UNSUBSCRIBE-LINK}} keyword to add unsubscribe link."
1079
- msgstr ""
1080
-
1081
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:197
1082
- msgid "Subscription Success/ Error Messages"
1083
- msgstr ""
1084
-
1085
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:204
1086
- msgid "You have been subscribed successfully!"
1087
- msgstr ""
1088
-
1089
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:206
1090
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:236
1091
- msgid "Success Message"
1092
- msgstr ""
1093
-
1094
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:207
1095
- msgid ""
1096
- "Show this message if contact is successfully subscribed from Double Opt-In "
1097
- "(Confirmation) Email"
1098
- msgstr ""
1099
-
1100
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:215
1101
- msgid ""
1102
- "Oops.. Your request couldn't be completed. This email address seems to be "
1103
- "already subscribed / blocked."
1104
- msgstr ""
1105
-
1106
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:217
1107
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:248
1108
- msgid "Error Message"
1109
- msgstr ""
1110
-
1111
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:218
1112
- msgid ""
1113
- "Show this message if any error occured after clicking confirmation link from "
1114
- "Double Opt-In (Confirmation) Email."
1115
- msgstr ""
1116
-
1117
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:226
1118
- msgid "Unsubscribe Success/ Error Messages"
1119
- msgstr ""
1120
-
1121
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:234
1122
- msgid ""
1123
- "Thank You, You have been successfully unsubscribed. You will no longer hear "
1124
- "from us."
1125
- msgstr ""
1126
-
1127
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:237
1128
- msgid ""
1129
- "Once contact clicks on unsubscribe link, he/she will be redirected to a page "
1130
- "where this message will be shown."
1131
- msgstr ""
1132
-
1133
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:249
1134
- msgid ""
1135
- "Show this message if any error occured after clicking on unsubscribe link."
1136
- msgstr ""
1137
-
1138
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:277
1139
- msgid "Welcome Email"
1140
- msgstr ""
1141
-
1142
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:287
1143
- msgid "Enable?"
1144
- msgstr ""
1145
-
1146
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:288
1147
- msgid "Send welcome email to new contact after signup."
1148
- msgstr ""
1149
-
1150
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:298
1151
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:326
1152
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:371
1153
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-reports-table.php:254
1154
- msgid "Subject"
1155
- msgstr ""
1156
-
1157
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:308
1158
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:337
1159
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:379
1160
- msgid "Content"
1161
- msgstr ""
1162
-
1163
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:316
1164
- msgid "Confirmation Email"
1165
- msgstr ""
1166
-
1167
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:338
1168
- msgid ""
1169
- "If Double Optin is set, contact will receive confirmation email with above "
1170
- "content. You can use {{NAME}}, {{EMAIL}}, {{SUBSCRIBE-LINK}} keywords"
1171
- msgstr ""
1172
-
1173
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:346
1174
- msgid "Admin Notification On New Subscription"
1175
- msgstr ""
1176
-
1177
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:351
1178
- msgid "Notify?"
1179
- msgstr ""
1180
-
1181
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:357
1182
- msgid "Set this option to \"Yes\" to notify admin(s) for new contact signup."
1183
- msgstr ""
1184
-
1185
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:363
1186
- msgid "Email Addresses"
1187
- msgstr ""
1188
-
1189
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:365
1190
- msgid ""
1191
- "Enter the admin email addresses that should receive notifications (separated "
1192
- "by comma)."
1193
- msgstr ""
1194
-
1195
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:373
1196
- msgid ""
1197
- "Subject for the admin email whenever a new contact signs up and is confirmed"
1198
- msgstr ""
1199
-
1200
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:374
1201
- msgid "New email subscription"
1202
- msgstr ""
1203
-
1204
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:381
1205
- msgid ""
1206
- "Content for the admin email whenever a new subscriber signs up and is "
1207
- "confirmed. Available Keywords: {{NAME}}, {{EMAIL}}, {{LIST}}"
1208
- msgstr ""
1209
-
1210
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:396
1211
- msgid "Cron URL"
1212
- msgstr ""
1213
-
1214
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:407
1215
- msgid "Maximum Emails Send In An Hour"
1216
- msgstr ""
1217
-
1218
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:408
1219
- msgid "Total emails your host can send in an hour."
1220
- msgstr ""
1221
-
1222
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:415
1223
- msgid "Blocked Domain(s)"
1224
- msgstr ""
1225
-
1226
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:417
1227
- msgid ""
1228
- "System won't allow email addresses which ends with any of domain availble in "
1229
- "above lists. Add list of domain(s) one per line to block."
1230
- msgstr ""
1231
-
1232
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-forms-table.php:85
1233
  msgid "You do not have permission to edit this form."
1234
  msgstr ""
@@ -1373,90 +1190,6 @@ msgid ""
1373
  "(Optional) Select custom post type for which you want to send notification."
1374
  msgstr ""
1375
 
1376
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-reports-table.php:19
1377
- msgid "Report"
1378
- msgstr ""
1379
-
1380
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-reports-table.php:95
1381
- msgid "Sent Date"
1382
- msgstr ""
1383
-
1384
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-reports-table.php:96
1385
- msgid "Viewed Status"
1386
- msgstr ""
1387
-
1388
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-reports-table.php:97
1389
- msgid "Viewed Date"
1390
- msgstr ""
1391
-
1392
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-reports-table.php:150
1393
- msgid "Viewed"
1394
- msgstr ""
1395
-
1396
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-reports-table.php:150
1397
- msgid "No Data"
1398
- msgstr ""
1399
-
1400
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-reports-table.php:163
1401
- msgid "No Reports avaliable."
1402
- msgstr ""
1403
-
1404
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-reports-table.php:183
1405
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-campaigns-table.php:191
1406
- msgid "Broadcast"
1407
- msgstr ""
1408
-
1409
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-reports-table.php:199
1410
- msgid "Completed"
1411
- msgstr ""
1412
-
1413
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-reports-table.php:255
1414
- msgid "Type"
1415
- msgstr ""
1416
-
1417
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-reports-table.php:257
1418
- msgid "Start Date"
1419
- msgstr ""
1420
-
1421
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-reports-table.php:258
1422
- msgid "End Date"
1423
- msgstr ""
1424
-
1425
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-reports-table.php:357
1426
- msgid "You do not have permission to view notification"
1427
- msgstr ""
1428
-
1429
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-reports-table.php:369
1430
- msgid "You do not have permission to delete notification"
1431
- msgstr ""
1432
-
1433
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-reports-table.php:374
1434
- msgid "Notification has been deleted successfully!"
1435
- msgstr ""
1436
-
1437
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-reports-table.php:383
1438
- msgid "You do not have permission to preview notification"
1439
- msgstr ""
1440
-
1441
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-reports-table.php:401
1442
- msgid "Notifications have been deleted successfully"
1443
- msgstr ""
1444
-
1445
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-reports-table.php:422
1446
- msgid "Preview Email"
1447
- msgstr ""
1448
-
1449
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-reports-table.php:423
1450
- msgid "Help"
1451
- msgstr ""
1452
-
1453
- #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-reports-table.php:426
1454
- msgid ""
1455
- "This is how the email you sent may look. <br>Note: Different email services "
1456
- "(like gmail, yahoo etc) display email content differently. So there could be "
1457
- "a slight variation on how your customer will view the email content."
1458
- msgstr ""
1459
-
1460
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-handle-subscription.php:384
1461
  msgid "Invalid name"
1462
  msgstr ""
@@ -1568,6 +1301,326 @@ msgstr ""
1568
  msgid "No Campaigns Found."
1569
  msgstr ""
1570
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1571
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/notices/class-es-admin-notices.php:97
1572
  msgid "Action failed. Please refresh the page and retry."
1573
  msgstr ""
@@ -1578,14 +1631,6 @@ msgstr ""
1578
  msgid "Every %d minutes"
1579
  msgstr ""
1580
 
1581
- #: ../../../../wpRepos/gitlab/email-subscribers/public/partials/class-es-shortcode.php:136
1582
- msgid "Name *"
1583
- msgstr ""
1584
-
1585
- #: ../../../../wpRepos/gitlab/email-subscribers/public/partials/class-es-shortcode.php:167
1586
- msgid "Email *"
1587
- msgstr ""
1588
-
1589
  #: ../../../../wpRepos/gitlab/email-subscribers/public/partials/cron-message.php:33
1590
  msgid "Total Emails Sent"
1591
  msgstr ""
@@ -1594,6 +1639,14 @@ msgstr ""
1594
  msgid "Total Emails In Queue"
1595
  msgstr ""
1596
 
 
 
 
 
 
 
 
 
1597
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/notices/views/html-notice-update.php:19
1598
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/notices/views/html-notice-updating.php:19
1599
  msgid "Email Subscribers data update"
3
  msgstr ""
4
  "Project-Id-Version: Email Subscribers & Newsletters\n"
5
  "Report-Msgid-Bugs-To: \n"
6
+ "POT-Creation-Date: 2019-03-11 12:35+0000\n"
7
  "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
8
  "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
9
  "Language-Team: \n"
49
  msgid "Send email via cron job"
50
  msgstr ""
51
 
52
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/class-es-common.php:251
53
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-post-notifications.php:273
54
  msgid "Select Status"
55
  msgstr ""
56
 
57
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/class-es-common.php:252
58
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-lists-table.php:561
59
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-forms-table.php:754
60
  msgid "Enable"
61
  msgstr ""
62
 
63
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/class-es-common.php:253
64
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-lists-table.php:562
65
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-forms-table.php:755
66
  msgid "Disable"
67
  msgstr ""
68
 
69
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/class-es-common.php:292
70
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-newsletters.php:121
71
  msgid "Select Template"
72
  msgstr ""
73
 
74
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/class-es-common.php:321
75
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-campaigns-table.php:187
76
  msgid "Active"
77
  msgstr ""
78
 
79
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/class-es-common.php:322
80
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-campaigns-table.php:187
81
  msgid "Inactive"
82
  msgstr ""
83
 
84
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/class-es-common.php:408
85
  msgid "No Custom Post Types Available"
86
  msgstr ""
87
 
88
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/class-es-common.php:429
89
  msgid "Single Opt-In"
90
  msgstr ""
91
 
92
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/class-es-common.php:430
93
  msgid "Double Opt-In"
94
  msgstr ""
95
 
96
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/class-es-common.php:438
97
  msgid "Full Size"
98
  msgstr ""
99
 
100
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/class-es-common.php:439
101
  msgid "Medium Size"
102
  msgstr ""
103
 
104
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/class-es-common.php:440
105
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-templates-table.php:192
106
  msgid "Thumbnail"
107
  msgstr ""
738
  msgstr ""
739
 
740
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-widget.php:11
741
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-old-widget.php:11
742
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-old-widget.php:12
743
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-form-widget.php:11
744
  msgid "Email Subscribers"
745
  msgstr ""
746
 
747
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-widget.php:49
748
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-handle-sync-wp-user.php:109
 
749
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-forms-table.php:315
750
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:361
751
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:397
752
  msgid "Yes"
753
  msgstr ""
754
 
755
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-widget.php:49
756
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-export-subscribers.php:58
757
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-handle-sync-wp-user.php:108
 
758
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-forms-table.php:319
759
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:362
760
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:398
761
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-reports-table.php:92
762
  msgid "No"
763
  msgstr ""
838
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-export-subscribers.php:222
839
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-lists-table.php:223
840
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-lists-table.php:425
 
 
841
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-forms-table.php:276
842
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-forms-table.php:634
843
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-subscribers-table.php:365
844
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-subscribers-table.php:549
845
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:135
846
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:138
847
+ #: ../../../../wpRepos/gitlab/email-subscribers/public/partials/class-es-shortcode.php:138
848
+ #: ../../../../wpRepos/gitlab/email-subscribers/public/partials/class-es-shortcode.php:138
849
  msgid "Name"
850
  msgstr ""
851
 
852
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-export-subscribers.php:223
 
853
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-forms-table.php:271
 
854
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-subscribers-table.php:369
855
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-subscribers-table.php:550
856
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:144
857
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-reports-table.php:93
858
+ #: ../../../../wpRepos/gitlab/email-subscribers/public/partials/class-es-shortcode.php:169
859
  msgid "Email"
860
  msgstr ""
861
 
1046
  msgid "Sync Now"
1047
  msgstr ""
1048
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1049
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-forms-table.php:85
1050
  msgid "You do not have permission to edit this form."
1051
  msgstr ""
1190
  "(Optional) Select custom post type for which you want to send notification."
1191
  msgstr ""
1192
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1193
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-handle-subscription.php:384
1194
  msgid "Invalid name"
1195
  msgstr ""
1301
  msgid "No Campaigns Found."
1302
  msgstr ""
1303
 
1304
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-campaigns-table.php:191
1305
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-reports-table.php:183
1306
+ msgid "Broadcast"
1307
+ msgstr ""
1308
+
1309
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:131
1310
+ msgid "Sender"
1311
+ msgstr ""
1312
+
1313
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:145
1314
+ msgid ""
1315
+ "Choose a FROM email address for all the emails to be sent from this plugin"
1316
+ msgstr ""
1317
+
1318
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:147
1319
+ msgid "Email Address"
1320
+ msgstr ""
1321
+
1322
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:155
1323
+ msgid "Email Addresses"
1324
+ msgstr ""
1325
+
1326
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:157
1327
+ msgid ""
1328
+ "Enter the admin email addresses that should receive notifications (separated "
1329
+ "by comma)."
1330
+ msgstr ""
1331
+
1332
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:163
1333
+ msgid "Email Type"
1334
+ msgstr ""
1335
+
1336
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:164
1337
+ msgid "Select whether to send HTML or Plain Text email."
1338
+ msgstr ""
1339
+
1340
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:172
1341
+ msgid "Opt-in Type"
1342
+ msgstr ""
1343
+
1344
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:181
1345
+ msgid "Image Size"
1346
+ msgstr ""
1347
+
1348
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:196
1349
+ msgid "Show Unsubscribe Message In Email Footer"
1350
+ msgstr ""
1351
+
1352
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:197
1353
+ msgid ""
1354
+ "Add text which you want your contact to see in footer to unsubscribe. Use "
1355
+ "{{UNSUBSCRIBE-LINK}} keyword to add unsubscribe link."
1356
+ msgstr ""
1357
+
1358
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:204
1359
+ msgid "Subscription Success/ Error Messages"
1360
+ msgstr ""
1361
+
1362
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:211
1363
+ msgid "You have been subscribed successfully!"
1364
+ msgstr ""
1365
+
1366
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:213
1367
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:243
1368
+ msgid "Success Message"
1369
+ msgstr ""
1370
+
1371
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:214
1372
+ msgid ""
1373
+ "Show this message if contact is successfully subscribed from Double Opt-In "
1374
+ "(Confirmation) Email"
1375
+ msgstr ""
1376
+
1377
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:222
1378
+ msgid ""
1379
+ "Oops.. Your request couldn't be completed. This email address seems to be "
1380
+ "already subscribed / blocked."
1381
+ msgstr ""
1382
+
1383
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:224
1384
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:255
1385
+ msgid "Error Message"
1386
+ msgstr ""
1387
+
1388
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:225
1389
+ msgid ""
1390
+ "Show this message if any error occured after clicking confirmation link from "
1391
+ "Double Opt-In (Confirmation) Email."
1392
+ msgstr ""
1393
+
1394
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:233
1395
+ msgid "Unsubscribe Success/ Error Messages"
1396
+ msgstr ""
1397
+
1398
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:241
1399
+ msgid ""
1400
+ "Thank You, You have been successfully unsubscribed. You will no longer hear "
1401
+ "from us."
1402
+ msgstr ""
1403
+
1404
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:244
1405
+ msgid ""
1406
+ "Once contact clicks on unsubscribe link, he/she will be redirected to a page "
1407
+ "where this message will be shown."
1408
+ msgstr ""
1409
+
1410
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:256
1411
+ msgid ""
1412
+ "Show this message if any error occured after clicking on unsubscribe link."
1413
+ msgstr ""
1414
+
1415
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:284
1416
+ msgid "Welcome Email"
1417
+ msgstr ""
1418
+
1419
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:294
1420
+ msgid "Enable?"
1421
+ msgstr ""
1422
+
1423
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:295
1424
+ msgid "Send welcome email to new contact after signup."
1425
+ msgstr ""
1426
+
1427
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:305
1428
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:333
1429
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:371
1430
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:410
1431
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-reports-table.php:254
1432
+ msgid "Subject"
1433
+ msgstr ""
1434
+
1435
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:315
1436
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:344
1437
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:379
1438
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:421
1439
+ msgid "Content"
1440
+ msgstr ""
1441
+
1442
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:323
1443
+ msgid "Confirmation Email"
1444
+ msgstr ""
1445
+
1446
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:345
1447
+ msgid ""
1448
+ "If Double Optin is set, contact will receive confirmation email with above "
1449
+ "content. You can use {{NAME}}, {{EMAIL}}, {{SUBSCRIBE-LINK}} keywords"
1450
+ msgstr ""
1451
+
1452
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:353
1453
+ msgid "Admin Notification On New Subscription"
1454
+ msgstr ""
1455
+
1456
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:358
1457
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:394
1458
+ msgid "Notify?"
1459
+ msgstr ""
1460
+
1461
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:364
1462
+ msgid "Set this option to \"Yes\" to notify admin(s) for new contact signup."
1463
+ msgstr ""
1464
+
1465
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:373
1466
+ msgid ""
1467
+ "Subject for the admin email whenever a new contact signs up and is confirmed"
1468
+ msgstr ""
1469
+
1470
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:374
1471
+ msgid "New email subscription"
1472
+ msgstr ""
1473
+
1474
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:381
1475
+ msgid ""
1476
+ "Content for the admin email whenever a new subscriber signs up and is "
1477
+ "confirmed. Available Keywords: {{NAME}}, {{EMAIL}}, {{LIST}}"
1478
+ msgstr ""
1479
+
1480
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:389
1481
+ msgid "Admin Notification On Every Campaign Sent"
1482
+ msgstr ""
1483
+
1484
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:400
1485
+ msgid "Set this option to \"Yes\" to notify admin(s) on every campaign sent."
1486
+ msgstr ""
1487
+
1488
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:408
1489
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-cron.php:116
1490
+ msgid "Campaign Sent!"
1491
+ msgstr ""
1492
+
1493
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:422
1494
+ msgid ""
1495
+ "Send report to admin(s) whenever campaign is successfully sent to all "
1496
+ "contacts. Available Keywords: {{DATE}}, {{SUBJECT}}, {{COUNT}}"
1497
+ msgstr ""
1498
+
1499
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:437
1500
+ msgid "Cron URL"
1501
+ msgstr ""
1502
+
1503
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:448
1504
+ msgid "Maximum Emails Send In An Hour"
1505
+ msgstr ""
1506
+
1507
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:449
1508
+ msgid "Total emails your host can send in an hour."
1509
+ msgstr ""
1510
+
1511
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:458
1512
+ msgid "Blocked Domain(s)"
1513
+ msgstr ""
1514
+
1515
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-admin-settings.php:460
1516
+ msgid ""
1517
+ "System won't allow email addresses which ends with any of domain availble in "
1518
+ "above lists. Add list of domain(s) one per line to block."
1519
+ msgstr ""
1520
+
1521
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-old-widget.php:72
1522
+ msgid "Widget Title"
1523
+ msgstr ""
1524
+
1525
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-old-widget.php:76
1526
+ msgid "Short description about subscription form"
1527
+ msgstr ""
1528
+
1529
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-old-widget.php:80
1530
+ msgid "Display Name Field"
1531
+ msgstr ""
1532
+
1533
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-old-widget.php:82
1534
+ msgid "YES"
1535
+ msgstr ""
1536
+
1537
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-old-widget.php:83
1538
+ msgid "NO"
1539
+ msgstr ""
1540
+
1541
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-old-widget.php:87
1542
+ msgid "Subscriber Group"
1543
+ msgstr ""
1544
+
1545
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-reports-table.php:19
1546
+ msgid "Report"
1547
+ msgstr ""
1548
+
1549
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-reports-table.php:95
1550
+ msgid "Sent Date"
1551
+ msgstr ""
1552
+
1553
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-reports-table.php:96
1554
+ msgid "Viewed Status"
1555
+ msgstr ""
1556
+
1557
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-reports-table.php:97
1558
+ msgid "Viewed Date"
1559
+ msgstr ""
1560
+
1561
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-reports-table.php:150
1562
+ msgid "Viewed"
1563
+ msgstr ""
1564
+
1565
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-reports-table.php:150
1566
+ msgid "No Data"
1567
+ msgstr ""
1568
+
1569
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-reports-table.php:163
1570
+ msgid "No Reports avaliable."
1571
+ msgstr ""
1572
+
1573
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-reports-table.php:199
1574
+ msgid "Completed"
1575
+ msgstr ""
1576
+
1577
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-reports-table.php:255
1578
+ msgid "Type"
1579
+ msgstr ""
1580
+
1581
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-reports-table.php:257
1582
+ msgid "Start Date"
1583
+ msgstr ""
1584
+
1585
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-reports-table.php:258
1586
+ msgid "End Date"
1587
+ msgstr ""
1588
+
1589
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-reports-table.php:357
1590
+ msgid "You do not have permission to view notification"
1591
+ msgstr ""
1592
+
1593
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-reports-table.php:369
1594
+ msgid "You do not have permission to delete notification"
1595
+ msgstr ""
1596
+
1597
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-reports-table.php:374
1598
+ msgid "Report has been deleted successfully!"
1599
+ msgstr ""
1600
+
1601
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-reports-table.php:383
1602
+ msgid "You do not have permission to preview notification"
1603
+ msgstr ""
1604
+
1605
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-reports-table.php:401
1606
+ msgid "Reports have been deleted successfully!"
1607
+ msgstr ""
1608
+
1609
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-reports-table.php:422
1610
+ msgid "Preview Email"
1611
+ msgstr ""
1612
+
1613
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-reports-table.php:425
1614
+ msgid ""
1615
+ "This is how the email you sent may look. <br>Note: Different email services "
1616
+ "(like gmail, yahoo etc) display email content differently. So there could be "
1617
+ "a slight variation on how your customer will view the email content."
1618
+ msgstr ""
1619
+
1620
+ #: ../../../../wpRepos/gitlab/email-subscribers/includes/admin/class-es-form-widget.php:11
1621
+ msgid "Email Subscribers Form"
1622
+ msgstr ""
1623
+
1624
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/notices/class-es-admin-notices.php:97
1625
  msgid "Action failed. Please refresh the page and retry."
1626
  msgstr ""
1631
  msgid "Every %d minutes"
1632
  msgstr ""
1633
 
 
 
 
 
 
 
 
 
1634
  #: ../../../../wpRepos/gitlab/email-subscribers/public/partials/cron-message.php:33
1635
  msgid "Total Emails Sent"
1636
  msgstr ""
1639
  msgid "Total Emails In Queue"
1640
  msgstr ""
1641
 
1642
+ #: ../../../../wpRepos/gitlab/email-subscribers/public/partials/class-es-shortcode.php:136
1643
+ msgid "Enter Name"
1644
+ msgstr ""
1645
+
1646
+ #: ../../../../wpRepos/gitlab/email-subscribers/public/partials/class-es-shortcode.php:168
1647
+ msgid "Enter Email Address"
1648
+ msgstr ""
1649
+
1650
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/notices/views/html-notice-update.php:19
1651
  #: ../../../../wpRepos/gitlab/email-subscribers/includes/notices/views/html-notice-updating.php:19
1652
  msgid "Email Subscribers data update"
public/partials/class-es-shortcode.php CHANGED
@@ -98,6 +98,7 @@ class ES_Shortcode {
98
  }
99
 
100
  public static function render_form( $data ) {
 
101
  /**
102
  * - Show name? -> Prepare HTML for name
103
  * - Show email? -> Prepare HTML for email // Always true
@@ -132,10 +133,11 @@ class ES_Shortcode {
132
 
133
  // Name
134
  $name_html = '';
 
135
  if ( $show_name ) {
136
- $name_label = ( 'yes' === $required_name ) ? __( 'Name *', 'email-subscribers' ) : __( 'Name', 'email-subscribers' );
137
  $required = ( 'yes' === $required_name ) ? 'required' : '';
138
- $name_html = '<div class="es-field-wrap"><label>' . $name_label . '<input type="text" name="name" placeholder="Enter Name" value="" ' . $required . '/></label></div>';
139
  }
140
 
141
  // Lists
@@ -163,8 +165,8 @@ class ES_Shortcode {
163
  // Form html
164
  $form_html = '<input type="hidden" name="form_id" value="' . $form_id . '" />';
165
 
166
-
167
- $email_html = '<div class="es-field-wrap"><label>' . __( 'Email *', 'email-subscribers' ) . '<input class="es_required_field" type="email" name="email" value="" placeholder="Email Address" required/></label></div>';
168
  ?>
169
 
170
  <div class="emaillist">
98
  }
99
 
100
  public static function render_form( $data ) {
101
+
102
  /**
103
  * - Show name? -> Prepare HTML for name
104
  * - Show email? -> Prepare HTML for email // Always true
133
 
134
  // Name
135
  $name_html = '';
136
+ $name_place_holder = __('Enter Name', 'email-subscribers');
137
  if ( $show_name ) {
138
+ $name_label = ( 'yes' === $required_name ) ? __( 'Name', 'email-subscribers' ) . '*' : __( 'Name', 'email-subscribers' );
139
  $required = ( 'yes' === $required_name ) ? 'required' : '';
140
+ $name_html = '<div class="es-field-wrap"><label>' . $name_label . '<input type="text" name="name" placeholder="' . $name_place_holder . '" value="" ' . $required . '/></label></div>';
141
  }
142
 
143
  // Lists
165
  // Form html
166
  $form_html = '<input type="hidden" name="form_id" value="' . $form_id . '" />';
167
 
168
+ $email_place_holder = __('Enter Email Address', 'email-subscribers');
169
+ $email_html = '<div class="es-field-wrap"><label>' . __( 'Email', 'email-subscribers' ) . '*'. '<input class="es_required_field" type="email" name="email" value="" placeholder="' . $email_place_holder .'" required/></label></div>';
170
  ?>
171
 
172
  <div class="emaillist">
readme.txt CHANGED
@@ -5,7 +5,7 @@ Author URI: https://www.icegram.com/
5
  Tags: subscription, newsletter, email marketing, post notification, email newsletter form, email signup, email widget, newsletter signup, subscribe, subscription form, bulk emails, signup form, list builder, lead generation, welcome email, contacts
6
  Requires at least: 3.9
7
  Tested up to: 5.1
8
- Stable tag: 4.0.4
9
  License: GPLv3
10
  License URI: http://www.gnu.org/licenses
11
 
@@ -308,6 +308,11 @@ Use our free plugin [Email Subscribers - Group Selector](https://wordpress.org/p
308
 
309
  == Changelog ==
310
 
 
 
 
 
 
311
  = 4.0.4 (07.03.2019) =
312
  * Fix: 'es_subbox' function not working
313
  * Fix: Warning: Cannot modify header information
5
  Tags: subscription, newsletter, email marketing, post notification, email newsletter form, email signup, email widget, newsletter signup, subscribe, subscription form, bulk emails, signup form, list builder, lead generation, welcome email, contacts
6
  Requires at least: 3.9
7
  Tested up to: 5.1
8
+ Stable tag: 4.0.5
9
  License: GPLv3
10
  License URI: http://www.gnu.org/licenses
11
 
308
 
309
  == Changelog ==
310
 
311
+ = 4.0.5 (11.03.2019) =
312
+ * Update: Enable admin email notification after campaign sent
313
+ * Fix: Migration of old Email Subscriber's widgets
314
+ * Fix: Could not create, edit list
315
+
316
  = 4.0.4 (07.03.2019) =
317
  * Fix: 'es_subbox' function not working
318
  * Fix: Warning: Cannot modify header information