Email Log - Version 2.4.1

Version Description

Starting v2.4.0 the plugin now captures the error message when an email fails to be delivered.

Download this release

Release Info

Developer sudar
Plugin Icon 128x128 Email Log
Version 2.4.1
Comparing to
See all releases

Code changes from version 2.4.0 to 2.4.1

email-log.php CHANGED
@@ -5,7 +5,7 @@
5
  * Description: Logs every email sent through WordPress
6
  * Donate Link: http://sudarmuthu.com/if-you-wanna-thank-me
7
  * Author: Sudar
8
- * Version: 2.4.0
9
  * Author URI: http://sudarmuthu.com/
10
  * Text Domain: email-log
11
  * Domain Path: languages/
5
  * Description: Logs every email sent through WordPress
6
  * Donate Link: http://sudarmuthu.com/if-you-wanna-thank-me
7
  * Author: Sudar
8
+ * Version: 2.4.1
9
  * Author URI: http://sudarmuthu.com/
10
  * Text Domain: email-log
11
  * Domain Path: languages/
include/Addon/Upseller.php CHANGED
@@ -13,7 +13,9 @@ class Upseller implements Loadie {
13
 
14
  // phpcs:ignore Squiz.Commenting.FunctionComment.Missing
15
  public function load() {
16
- add_action( 'admin_init', [ 'PAnD', 'init' ] );
 
 
17
 
18
  add_action( 'el_before_logs_list_table', [ $this, 'upsell_more_fields_addon_in_log_list_page' ] );
19
 
13
 
14
  // phpcs:ignore Squiz.Commenting.FunctionComment.Missing
15
  public function load() {
16
+ if ( class_exists( 'PAnD' ) ) {
17
+ add_action( 'admin_init', [ 'PAnD', 'init' ] );
18
+ }
19
 
20
  add_action( 'el_before_logs_list_table', [ $this, 'upsell_more_fields_addon_in_log_list_page' ] );
21
 
include/Core/EmailLog.php CHANGED
@@ -17,7 +17,7 @@ class EmailLog {
17
  *
18
  * @var string
19
  */
20
- const VERSION = '2.4.0';
21
 
22
  /**
23
  * Email Log Store URL.
17
  *
18
  * @var string
19
  */
20
+ const VERSION = '2.4.1';
21
 
22
  /**
23
  * Email Log Store URL.
languages/email-log.pot CHANGED
@@ -2,9 +2,9 @@
2
  # This file is distributed under the same license as the Email Log package.
3
  msgid ""
4
  msgstr ""
5
- "Project-Id-Version: Email Log 2.4.0\n"
6
  "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/email-log\n"
7
- "POT-Creation-Date: 2020-07-05 06:30:20+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=UTF-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
@@ -12,10 +12,9 @@ msgstr ""
12
  "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
13
  "Language-Team: LANGUAGE <LL@li.org>\n"
14
 
15
- #: dist/email-log (Sudar’s MacBook Pro's conflicted copy 2020-03-25).php:49
16
- #: dist/email-log.php:49
17
  msgid ""
18
- "Email Log requires at least PHP 5.3 to function properly. Please upgrade PHP "
19
  "or use <a href=\"%s\" target=\"_blank\" rel=\"noopener\">v1.9.1 of Email "
20
  "Log</a>."
21
  msgstr ""
@@ -32,109 +31,75 @@ msgid ""
32
  "after sometime. If the problem persists contact support."
33
  msgstr ""
34
 
35
- #: dist/include/Addon/Addon (Sudar’s MacBook Pro's conflicted copy
36
- #: 2020-03-25).php:130 dist/include/Addon/Addon.php:130
37
- #: include/Addon/Addon.php:129
38
  msgctxt "Installed on website but not activated"
39
  msgid "Installed"
40
  msgstr ""
41
 
42
- #: dist/include/Addon/Addon (Sudar’s MacBook Pro's conflicted copy
43
- #: 2020-03-25).php:133 dist/include/Addon/Addon.php:133
44
- #: include/Addon/Addon.php:132
45
  msgctxt "Installed and activated on website"
46
  msgid "Activated"
47
  msgstr ""
48
 
49
- #: dist/include/Addon/Addon (Sudar’s MacBook Pro's conflicted copy
50
- #: 2020-03-25).php:135 dist/include/Addon/Addon.php:135
51
- #: include/Addon/Addon.php:134
52
  msgctxt "Enable addon so it may be used"
53
  msgid "Activate"
54
  msgstr ""
55
 
56
- #: dist/include/Addon/Addon (Sudar’s MacBook Pro's conflicted copy
57
- #: 2020-03-25).php:143 dist/include/Addon/Addon.php:143
58
- #: include/Addon/Addon.php:142
59
  msgctxt "Download to your computer"
60
  msgid "Download"
61
  msgstr ""
62
 
63
- #: dist/include/Addon/Addon (Sudar’s MacBook Pro's conflicted copy
64
- #: 2020-03-25).php:168 dist/include/Addon/Addon.php:168
65
- #: include/Addon/Addon.php:167
66
  msgctxt "Download add-on"
67
  msgid "Activate License to Download"
68
  msgstr ""
69
 
70
- #: dist/include/Addon/Addon (Sudar’s MacBook Pro's conflicted copy
71
- #: 2020-03-25).php:171 dist/include/Addon/Addon.php:171
72
- #: include/Addon/Addon.php:170
73
  msgctxt "Download and activate addon"
74
  msgid "Activate License to Use"
75
  msgstr ""
76
 
77
- #: dist/include/Addon/Addon (Sudar’s MacBook Pro's conflicted copy
78
- #: 2020-03-25).php:176 dist/include/Addon/Addon.php:176
79
- #: include/Addon/Addon.php:175
80
  msgid "You need an active license to use the add-on"
81
  msgstr ""
82
 
83
- #: dist/include/Addon/Addon (Sudar’s MacBook Pro's conflicted copy
84
- #: 2020-03-25).php:186 dist/include/Addon/Addon.php:186
85
- #: dist/include/Addon/License/Licenser 2020-03-25).php:104
86
- #: dist/include/Addon/License/Licenser.php:104
87
- #: include/Addon/License/Licenser.php:103
88
- msgid "Activate"
89
  msgstr ""
90
 
91
- #: dist/include/Addon/Addon (Sudar’s MacBook Pro's conflicted copy
92
- #: 2020-03-25).php:194 dist/include/Addon/Addon.php:194
93
- #: dist/include/Addon/License/Licenser 2020-03-25).php:112
94
- #: dist/include/Addon/License/Licenser.php:112
95
- #: include/Addon/License/Licenser.php:111
96
- msgid "Deactivate"
97
  msgstr ""
98
 
99
  #. translators: 1 License expiry date, 2 License Renewal link
100
- #: dist/include/Addon/Addon (Sudar’s MacBook Pro's conflicted copy
101
- #: 2020-03-25).php:203 dist/include/Addon/Addon.php:203
102
- #: dist/include/Addon/License/Licenser 2020-03-25).php:118
103
- #: dist/include/Addon/License/Licenser.php:118 include/Addon/Addon.php:202
104
- #: include/Addon/License/Licenser.php:117
105
  msgid ""
106
  "Your license has expired on %1$s. Please <a href=\"%2$s\">renew it</a> to "
107
  "receive automatic updates and support."
108
  msgstr ""
109
 
110
  #. translators: 1 License expiry date
111
- #: dist/include/Addon/Addon (Sudar’s MacBook Pro's conflicted copy
112
- #: 2020-03-25).php:206 dist/include/Addon/Addon.php:206
113
- #: dist/include/Addon/License/Licenser 2020-03-25).php:122
114
- #: dist/include/Addon/License/Licenser.php:122 include/Addon/Addon.php:205
115
- #: include/Addon/License/Licenser.php:121
116
  msgid "Your license is valid till %s"
117
  msgstr ""
118
 
119
- #: dist/include/Addon/Addon (Sudar’s MacBook Pro's conflicted copy
120
- #: 2020-03-25).php:212 dist/include/Addon/Addon.php:212
121
- #: include/Addon/Addon.php:211
122
  msgid "Individual add-on license"
123
  msgstr ""
124
 
125
- #: dist/include/Addon/Addon (Sudar’s MacBook Pro's conflicted copy
126
- #: 2020-03-25).php:217 dist/include/Addon/Addon.php:217
127
- #: include/Addon/Addon.php:216
128
  msgid "Email Log License Key"
129
  msgstr ""
130
 
131
- #: dist/include/Addon/Addon (Sudar’s MacBook Pro's conflicted copy
132
- #: 2020-03-25).php:218 dist/include/Addon/Addon.php:218
133
- #: include/Addon/Addon.php:217
134
  msgid "%s Add-on License Key"
135
  msgstr ""
136
 
137
- #: dist/include/Addon/AddonList.php:177 include/Addon/AddonList.php:214
138
  msgid ""
139
  "We are not able to retrieve the add-on list now. Please visit the <a target="
140
  "\"_blank\" rel=\"noopener\" href=\"%s\">add-on page</a> to view the add-ons."
@@ -201,129 +166,132 @@ msgstr ""
201
  msgid "An error occurred, please try again"
202
  msgstr ""
203
 
204
- #: dist/include/Addon/License/Licenser (Sudar’s MacBook Pro's conflicted copy
205
- #: 2020-03-25).php:133 dist/include/Addon/License/Licenser.php:133
 
 
 
 
 
 
 
 
 
206
  #: include/Addon/License/Licenser.php:132
207
  msgid ""
208
  "Enter your license key to activate add-ons. If you don't have a license, "
209
  "then you can <a href='%s' target='_blank'>buy it</a>"
210
  msgstr ""
211
 
212
- #: dist/include/Addon/License/Licenser (Sudar’s MacBook Pro's conflicted copy
213
- #: 2020-03-25).php:142 2020-03-25).php:143
214
  #: dist/include/Addon/License/Licenser.php:142
215
- #: dist/include/Addon/License/Licenser.php:143
216
  #: include/Addon/License/Licenser.php:141
217
  #: include/Addon/License/Licenser.php:142
218
  msgid "Email Log Bundle License Key"
219
  msgstr ""
220
 
221
- #: dist/include/Addon/License/Licenser (Sudar’s MacBook Pro's conflicted copy
222
- #: 2020-03-25).php:170 dist/include/Addon/License/Licenser.php:168
223
- #: include/Addon/Upseller.php:31
224
- msgid "Additional fields are available through More Fields add-on. "
225
- msgstr ""
226
-
227
- #: dist/include/Addon/License/Licenser (Sudar’s MacBook Pro's conflicted copy
228
- #: 2020-03-25).php:174 dist/include/Addon/License/Licenser.php:172
229
- #: include/Addon/Upseller.php:35
230
- msgid "Install it"
231
- msgstr ""
232
-
233
- #: dist/include/Addon/License/Licenser (Sudar’s MacBook Pro's conflicted copy
234
- #: 2020-03-25).php:178 dist/include/Addon/License/Licenser.php:176
235
- #: include/Addon/Upseller.php:39
236
- msgid "Buy Now"
237
- msgstr ""
238
-
239
- #: dist/include/Addon/License/Licenser (Sudar’s MacBook Pro's conflicted copy
240
- #: 2020-03-25).php:197 dist/include/Addon/License/Licenser.php:195
241
  #: include/Addon/License/Licenser.php:174
242
  msgid ""
243
  "Your license has been activated. You can now install add-ons, will receive "
244
  "automatic updates and access to email support."
245
  msgstr ""
246
 
247
- #: dist/include/Addon/License/Licenser (Sudar’s MacBook Pro's conflicted copy
248
- #: 2020-03-25).php:213 dist/include/Addon/License/Licenser.php:211
249
  #: include/Addon/License/Licenser.php:190
250
  msgid ""
251
  "Your license has been deactivated. You will not receive automatic updates."
252
  msgstr ""
253
 
254
- #: dist/include/Addon/License/Licenser (Sudar’s MacBook Pro's conflicted copy
255
- #: 2020-03-25).php:256 dist/include/Addon/License/Licenser.php:254
256
  #: include/Addon/License/Licenser.php:233
257
  msgid ""
258
  "Your license for %s has been activated. You will receive automatic updates "
259
  "and access to email support."
260
  msgstr ""
261
 
262
- #: dist/include/Addon/License/Licenser (Sudar’s MacBook Pro's conflicted copy
263
- #: 2020-03-25).php:283 dist/include/Addon/License/Licenser.php:281
264
  #: include/Addon/License/Licenser.php:260
265
  msgid ""
266
  "Your license for %s has been deactivated. You will not receive automatic "
267
  "updates."
268
  msgstr ""
269
 
270
- #: dist/include/Core/Request/LogListAction.php:50 dist/include/Util/helper
271
- #: (Sudar’s MacBook Pro's conflicted copy 2020-03-25).php:344
272
- #: dist/include/Util/helper.php:266 include/Core/Request/LogListAction.php:64
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
273
  #: include/Util/helper.php:323
274
  msgid "Sent at"
275
  msgstr ""
276
 
277
- #: dist/include/Core/Request/LogListAction.php:54 dist/include/Util/helper
278
- #: (Sudar’s MacBook Pro's conflicted copy 2020-03-25).php:340
279
- #: dist/include/Util/helper.php:267 dist/include/Util/helper.php:268
280
- #: include/Core/Request/LogListAction.php:68 include/Util/helper.php:319
281
  msgid "To"
282
  msgstr ""
283
 
284
- #: dist/include/Core/Request/LogListAction.php:58 dist/include/Util/helper
285
- #: (Sudar’s MacBook Pro's conflicted copy 2020-03-25).php:341
286
- #: dist/include/Util/helper.php:269 include/Core/Request/LogListAction.php:72
287
  #: include/Util/helper.php:320
288
  msgid "Subject"
289
  msgstr ""
290
 
291
- #: dist/include/Core/Request/LogListAction.php:78
292
  #: include/Core/Request/LogListAction.php:92
293
  msgid "Raw Email Content"
294
  msgstr ""
295
 
296
- #: dist/include/Core/Request/LogListAction.php:79
297
  #: include/Core/Request/LogListAction.php:93
298
  msgid "Preview Content as HTML"
299
  msgstr ""
300
 
301
- #: dist/include/Core/Request/LogListAction.php:92
302
  #: include/Core/Request/LogListAction.php:106
303
  msgid "Close"
304
  msgstr ""
305
 
306
- #: dist/include/Core/Request/LogListAction.php:168
307
  #: include/Core/Request/LogListAction.php:181
308
  msgid "There was some problem in deleting the email logs"
309
  msgstr ""
310
 
311
- #: dist/include/Core/Request/LogListAction.php:172
312
  #: include/Core/Request/LogListAction.php:185
313
  msgid "1 email log deleted."
314
  msgid_plural "%s email logs deleted"
315
  msgstr[0] ""
316
  msgstr[1] ""
317
 
318
- #: dist/include/Core/UI/Component/AdminUIEnhancer (Sudar’s MacBook Pro's
319
- #: conflicted copy 2020-03-25).php:69
320
  #: dist/include/Core/UI/Component/AdminUIEnhancer.php:69
321
  #: include/Core/UI/Component/AdminUIEnhancer.php:69
322
  msgid "Buy Addons"
323
  msgstr ""
324
 
325
- #: dist/include/Core/UI/Component/AdminUIEnhancer (Sudar’s MacBook Pro's
326
- #: conflicted copy 2020-03-25).php:85
327
  #: dist/include/Core/UI/Component/AdminUIEnhancer.php:85
328
  #: dist/include/Core/UI/Page/LogListPage.php:68
329
  #: dist/include/Core/UI/Page/LogListPage.php:69
@@ -333,8 +301,6 @@ msgstr ""
333
  msgid "View Logs"
334
  msgstr ""
335
 
336
- #: dist/include/Core/UI/Component/AdminUIEnhancer (Sudar’s MacBook Pro's
337
- #: conflicted copy 2020-03-25).php:86
338
  #: dist/include/Core/UI/Component/AdminUIEnhancer.php:86
339
  #: dist/include/Core/UI/Page/SettingsPage.php:94
340
  #: dist/include/Core/UI/Page/SettingsPage.php:95
@@ -344,106 +310,84 @@ msgstr ""
344
  msgid "Settings"
345
  msgstr ""
346
 
347
- #: dist/include/Core/UI/Component/AdminUIEnhancer (Sudar’s MacBook Pro's
348
- #: conflicted copy 2020-03-25).php:109
349
  #: dist/include/Core/UI/Component/AdminUIEnhancer.php:109
350
  #: include/Core/UI/Component/AdminUIEnhancer.php:109
351
  msgid "plugin"
352
  msgstr ""
353
 
354
- #: dist/include/Core/UI/Component/AdminUIEnhancer (Sudar’s MacBook Pro's
355
- #: conflicted copy 2020-03-25).php:109
356
  #: dist/include/Core/UI/Component/AdminUIEnhancer.php:109
357
  #: include/Core/UI/Component/AdminUIEnhancer.php:109
358
  msgid "Version"
359
  msgstr ""
360
 
361
- #: dist/include/Core/UI/Component/AdminUIEnhancer (Sudar’s MacBook Pro's
362
- #: conflicted copy 2020-03-25).php:109
363
  #: dist/include/Core/UI/Component/AdminUIEnhancer.php:109
364
  #: include/Core/UI/Component/AdminUIEnhancer.php:109
365
  msgid "by"
366
  msgstr ""
367
 
368
- #: dist/include/Core/UI/Component/DashboardWidget.php:30
369
  #: include/Core/UI/Component/DashboardWidget.php:29
370
  msgid "Email Logs Summary"
371
  msgstr ""
372
 
373
- #: dist/include/Core/UI/Component/DashboardWidget.php:44
374
  #: include/Core/UI/Component/DashboardWidget.php:43
375
  msgid "Total number of emails logged"
376
  msgstr ""
377
 
378
- #: dist/include/Core/UI/Component/DashboardWidget.php:50
379
  #: include/Core/UI/Component/DashboardWidget.php:57
380
  msgid "<a href=\"%s\">Email Logs</a>"
381
  msgstr ""
382
 
383
- #: dist/include/Core/UI/Component/DashboardWidget.php:51
384
  #: include/Core/UI/Component/DashboardWidget.php:58
385
  msgid "<a href=\"%s\">Settings</a>"
386
  msgstr ""
387
 
388
- #: dist/include/Core/UI/Component/DashboardWidget.php:52
389
  #: include/Core/UI/Component/DashboardWidget.php:59
390
  msgid "<a href=\"%s\">Addons</a>"
391
  msgstr ""
392
 
393
- #: dist/include/Core/UI/ListTable/LogListTable (Sudar’s MacBook Pro's
394
- #: conflicted copy 2020-03-25).php:140
395
- #: dist/include/Core/UI/ListTable/LogListTable.php:138
396
  #: include/Core/UI/ListTable/LogListTable.php:144
397
  msgid "%s @ %s"
398
  msgstr ""
399
 
400
- #: dist/include/Core/UI/ListTable/LogListTable (Sudar’s MacBook Pro's
401
- #: conflicted copy 2020-03-25).php:158
402
- #: dist/include/Core/UI/ListTable/LogListTable.php:156
403
  #: include/Core/UI/ListTable/LogListTable.php:162
404
  msgid "Email Content"
405
  msgstr ""
406
 
407
- #: dist/include/Core/UI/ListTable/LogListTable (Sudar’s MacBook Pro's
408
- #: conflicted copy 2020-03-25).php:159
409
- #: dist/include/Core/UI/ListTable/LogListTable.php:157
410
  #: include/Core/UI/ListTable/LogListTable.php:163
411
  msgid "View Content"
412
  msgstr ""
413
 
414
- #: dist/include/Core/UI/ListTable/LogListTable (Sudar’s MacBook Pro's
415
- #: conflicted copy 2020-03-25).php:173 2020-03-25).php:279
416
- #: dist/include/Core/UI/ListTable/LogListTable.php:171
417
- #: dist/include/Core/UI/ListTable/LogListTable.php:252
418
  #: include/Core/UI/ListTable/LogListTable.php:177
419
  #: include/Core/UI/ListTable/LogListTable.php:292
420
  msgid "Delete"
421
  msgstr ""
422
 
423
- #: dist/include/Core/UI/ListTable/LogListTable (Sudar’s MacBook Pro's
424
- #: conflicted copy 2020-03-25).php:280
425
- #: dist/include/Core/UI/ListTable/LogListTable.php:253
426
  #: include/Core/UI/ListTable/LogListTable.php:293
427
  msgid "Delete All Logs"
428
  msgstr ""
429
 
430
- #: dist/include/Core/UI/ListTable/LogListTable (Sudar’s MacBook Pro's
431
- #: conflicted copy 2020-03-25).php:313
432
- #: dist/include/Core/UI/ListTable/LogListTable.php:286
433
  #: include/Core/UI/ListTable/LogListTable.php:326
434
  msgid "Your email log is empty"
435
  msgstr ""
436
 
437
- #: dist/include/Core/UI/ListTable/LogListTable (Sudar’s MacBook Pro's
438
- #: conflicted copy 2020-03-25).php:340
439
- #: dist/include/Core/UI/ListTable/LogListTable.php:313
440
  #: include/Core/UI/ListTable/LogListTable.php:353
441
  msgid "Search by date"
442
  msgstr ""
443
 
444
- #: dist/include/Core/UI/ListTable/LogListTable (Sudar’s MacBook Pro's
445
- #: conflicted copy 2020-03-25).php:341
446
- #: dist/include/Core/UI/ListTable/LogListTable.php:314
447
  #: include/Core/UI/ListTable/LogListTable.php:354
448
  msgid "Search by term"
449
  msgstr ""
@@ -523,7 +467,7 @@ msgstr ""
523
  msgid "Support"
524
  msgstr ""
525
 
526
- #. #-#-#-#-# email-log.pot (Email Log 2.4.0) #-#-#-#-#
527
  #. Plugin Name of the plugin/theme
528
  #: dist/include/Core/UI/Page/LogListPage.php:57
529
  #: dist/include/Core/UI/Page/LogListPage.php:58
@@ -670,12 +614,12 @@ msgid ""
670
  "the notification."
671
  msgstr ""
672
 
673
- #: dist/include/Core/UI/Setting/CoreSetting.php:434
674
  #: include/Core/UI/Setting/CoreSetting.php:440
675
  msgid "Email Log Plugin: Your log threshold of %s has been met"
676
  msgstr ""
677
 
678
- #: dist/include/Core/UI/Setting/CoreSetting.php:486
679
  #: include/Core/UI/Setting/CoreSetting.php:492
680
  msgid ""
681
  "Currently there are %1$s logged, which is more than the threshold that is "
@@ -683,67 +627,46 @@ msgid ""
683
  "You can also use our %3$s add-on to automatically delete logs"
684
  msgstr ""
685
 
686
- #: dist/include/Core/UI/Setting/CoreSetting.php:487
687
  #: include/Core/UI/Setting/CoreSetting.php:493
688
  msgid " email log"
689
  msgid_plural " email logs"
690
  msgstr[0] ""
691
  msgstr[1] ""
692
 
693
- #: dist/include/Util/helper (Sudar’s MacBook Pro's conflicted copy
694
- #: 2020-03-25).php:200 dist/include/Util/helper.php:161
695
- msgid "Auto delete logs cron will be triggered next at"
696
- msgstr ""
697
-
698
- #: dist/include/Util/helper (Sudar’s MacBook Pro's conflicted copy
699
- #: 2020-03-25).php:339 dist/include/Util/helper.php:264
700
- #: dist/include/Util/helper.php:265 include/Util/helper.php:318
701
  msgid "ID"
702
  msgstr ""
703
 
704
- #: dist/include/Util/helper (Sudar’s MacBook Pro's conflicted copy
705
- #: 2020-03-25).php:342 dist/include/Util/helper.php:270
706
- #: include/Util/helper.php:321
707
  msgid "Message"
708
  msgstr ""
709
 
710
- #: dist/include/Util/helper (Sudar’s MacBook Pro's conflicted copy
711
- #: 2020-03-25).php:343 dist/include/Util/helper.php:275
712
- #: dist/include/Util/helper.php:276 include/Util/helper.php:322
713
  msgid "Attachment"
714
  msgstr ""
715
 
716
- #: dist/include/Util/helper (Sudar’s MacBook Pro's conflicted copy
717
- #: 2020-03-25).php:345 dist/include/Util/helper.php:271
718
- #: include/Util/helper.php:324
719
  msgid "From"
720
  msgstr ""
721
 
722
- #: dist/include/Util/helper (Sudar’s MacBook Pro's conflicted copy
723
- #: 2020-03-25).php:346 dist/include/Util/helper.php:272
724
- #: include/Util/helper.php:325
725
  msgid "CC"
726
  msgstr ""
727
 
728
- #: dist/include/Util/helper (Sudar’s MacBook Pro's conflicted copy
729
- #: 2020-03-25).php:347 dist/include/Util/helper.php:273
730
- #: include/Util/helper.php:326
731
  msgid "BCC"
732
  msgstr ""
733
 
734
- #: dist/include/Util/helper (Sudar’s MacBook Pro's conflicted copy
735
- #: 2020-03-25).php:348 dist/include/Util/helper.php:274
736
- #: include/Util/helper.php:327
737
  msgid "Reply To"
738
  msgstr ""
739
 
740
- #: dist/include/Util/helper (Sudar’s MacBook Pro's conflicted copy
741
- #: 2020-03-25).php:349 include/Util/helper.php:328
742
  msgid "IP Address"
743
  msgstr ""
744
 
745
- #: dist/include/Util/helper (Sudar’s MacBook Pro's conflicted copy
746
- #: 2020-03-25).php:350 include/Util/helper.php:329
747
  msgid "Sent Status"
748
  msgstr ""
749
 
@@ -770,43 +693,13 @@ msgstr ""
770
  msgid "Error"
771
  msgstr ""
772
 
773
- #: dist/vendor/sudar/wp-system-info/src/SystemInfo (Sudar’s MacBook Pro's
774
- #: conflicted copy 2020-03-25).php:79
775
- #: dist/vendor/sudar/wp-system-info/src/SystemInfo.php:78
776
  #: vendor/sudar/wp-system-info/src/SystemInfo.php:79
777
  msgid ""
778
  "To copy the system info, click below then press Ctrl + C (PC) or Cmd + C "
779
  "(Mac)."
780
  msgstr ""
781
 
782
- #: email-log.php:51
783
- msgid ""
784
- "Email Log requires at least PHP 5.6 to function properly. Please upgrade PHP "
785
- "or use <a href=\"%s\" target=\"_blank\" rel=\"noopener\">v1.9.1 of Email "
786
- "Log</a>."
787
- msgstr ""
788
-
789
- #: include/Addon/Addon.php:185
790
- msgid "Activate License"
791
- msgstr ""
792
-
793
- #: include/Addon/Addon.php:193
794
- msgid "Deactivate License"
795
- msgstr ""
796
-
797
- #. translators: 1 Auto Delete Logs add-on name.
798
- #: include/Addon/Upseller.php:72
799
- msgid ""
800
- "You have more than 5000 email logs in the database. You can use our %1s add-"
801
- "on to automatically delete logs as the DB size grows."
802
- msgstr ""
803
-
804
- #: include/Addon/Upseller.php:95
805
- msgid ""
806
- "You can also automatically delete logs if the database size increases using "
807
- "our %1s add-on."
808
- msgstr ""
809
-
810
  #: vendor/lucatume/wp-browser/src/data/plugins/wordpress-importer/parsers.php:42
811
  #: vendor/lucatume/wp-browser/src/data/plugins/wordpress-importer/parsers.php:72
812
  #: vendor/lucatume/wp-browser/src/data/plugins/wordpress-importer/parsers.php:80
2
  # This file is distributed under the same license as the Email Log package.
3
  msgid ""
4
  msgstr ""
5
+ "Project-Id-Version: Email Log 2.4.1\n"
6
  "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/email-log\n"
7
+ "POT-Creation-Date: 2020-07-06 06:33:23+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=UTF-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
12
  "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
13
  "Language-Team: LANGUAGE <LL@li.org>\n"
14
 
15
+ #: dist/email-log.php:51 email-log.php:51
 
16
  msgid ""
17
+ "Email Log requires at least PHP 5.6 to function properly. Please upgrade PHP "
18
  "or use <a href=\"%s\" target=\"_blank\" rel=\"noopener\">v1.9.1 of Email "
19
  "Log</a>."
20
  msgstr ""
31
  "after sometime. If the problem persists contact support."
32
  msgstr ""
33
 
34
+ #: dist/include/Addon/Addon.php:129 include/Addon/Addon.php:129
 
 
35
  msgctxt "Installed on website but not activated"
36
  msgid "Installed"
37
  msgstr ""
38
 
39
+ #: dist/include/Addon/Addon.php:132 include/Addon/Addon.php:132
 
 
40
  msgctxt "Installed and activated on website"
41
  msgid "Activated"
42
  msgstr ""
43
 
44
+ #: dist/include/Addon/Addon.php:134 include/Addon/Addon.php:134
 
 
45
  msgctxt "Enable addon so it may be used"
46
  msgid "Activate"
47
  msgstr ""
48
 
49
+ #: dist/include/Addon/Addon.php:142 include/Addon/Addon.php:142
 
 
50
  msgctxt "Download to your computer"
51
  msgid "Download"
52
  msgstr ""
53
 
54
+ #: dist/include/Addon/Addon.php:167 include/Addon/Addon.php:167
 
 
55
  msgctxt "Download add-on"
56
  msgid "Activate License to Download"
57
  msgstr ""
58
 
59
+ #: dist/include/Addon/Addon.php:170 include/Addon/Addon.php:170
 
 
60
  msgctxt "Download and activate addon"
61
  msgid "Activate License to Use"
62
  msgstr ""
63
 
64
+ #: dist/include/Addon/Addon.php:175 include/Addon/Addon.php:175
 
 
65
  msgid "You need an active license to use the add-on"
66
  msgstr ""
67
 
68
+ #: dist/include/Addon/Addon.php:185 include/Addon/Addon.php:185
69
+ msgid "Activate License"
 
 
 
 
70
  msgstr ""
71
 
72
+ #: dist/include/Addon/Addon.php:193 include/Addon/Addon.php:193
73
+ msgid "Deactivate License"
 
 
 
 
74
  msgstr ""
75
 
76
  #. translators: 1 License expiry date, 2 License Renewal link
77
+ #: dist/include/Addon/Addon.php:202 dist/include/Addon/License/Licenser.php:117
78
+ #: include/Addon/Addon.php:202 include/Addon/License/Licenser.php:117
 
 
 
79
  msgid ""
80
  "Your license has expired on %1$s. Please <a href=\"%2$s\">renew it</a> to "
81
  "receive automatic updates and support."
82
  msgstr ""
83
 
84
  #. translators: 1 License expiry date
85
+ #: dist/include/Addon/Addon.php:205 dist/include/Addon/License/Licenser.php:121
86
+ #: include/Addon/Addon.php:205 include/Addon/License/Licenser.php:121
 
 
 
87
  msgid "Your license is valid till %s"
88
  msgstr ""
89
 
90
+ #: dist/include/Addon/Addon.php:211 include/Addon/Addon.php:211
 
 
91
  msgid "Individual add-on license"
92
  msgstr ""
93
 
94
+ #: dist/include/Addon/Addon.php:216 include/Addon/Addon.php:216
 
 
95
  msgid "Email Log License Key"
96
  msgstr ""
97
 
98
+ #: dist/include/Addon/Addon.php:217 include/Addon/Addon.php:217
 
 
99
  msgid "%s Add-on License Key"
100
  msgstr ""
101
 
102
+ #: dist/include/Addon/AddonList.php:214 include/Addon/AddonList.php:214
103
  msgid ""
104
  "We are not able to retrieve the add-on list now. Please visit the <a target="
105
  "\"_blank\" rel=\"noopener\" href=\"%s\">add-on page</a> to view the add-ons."
166
  msgid "An error occurred, please try again"
167
  msgstr ""
168
 
169
+ #: dist/include/Addon/License/Licenser.php:103
170
+ #: include/Addon/License/Licenser.php:103
171
+ msgid "Activate"
172
+ msgstr ""
173
+
174
+ #: dist/include/Addon/License/Licenser.php:111
175
+ #: include/Addon/License/Licenser.php:111
176
+ msgid "Deactivate"
177
+ msgstr ""
178
+
179
+ #: dist/include/Addon/License/Licenser.php:132
180
  #: include/Addon/License/Licenser.php:132
181
  msgid ""
182
  "Enter your license key to activate add-ons. If you don't have a license, "
183
  "then you can <a href='%s' target='_blank'>buy it</a>"
184
  msgstr ""
185
 
186
+ #: dist/include/Addon/License/Licenser.php:141
 
187
  #: dist/include/Addon/License/Licenser.php:142
 
188
  #: include/Addon/License/Licenser.php:141
189
  #: include/Addon/License/Licenser.php:142
190
  msgid "Email Log Bundle License Key"
191
  msgstr ""
192
 
193
+ #: dist/include/Addon/License/Licenser.php:174
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
194
  #: include/Addon/License/Licenser.php:174
195
  msgid ""
196
  "Your license has been activated. You can now install add-ons, will receive "
197
  "automatic updates and access to email support."
198
  msgstr ""
199
 
200
+ #: dist/include/Addon/License/Licenser.php:190
 
201
  #: include/Addon/License/Licenser.php:190
202
  msgid ""
203
  "Your license has been deactivated. You will not receive automatic updates."
204
  msgstr ""
205
 
206
+ #: dist/include/Addon/License/Licenser.php:233
 
207
  #: include/Addon/License/Licenser.php:233
208
  msgid ""
209
  "Your license for %s has been activated. You will receive automatic updates "
210
  "and access to email support."
211
  msgstr ""
212
 
213
+ #: dist/include/Addon/License/Licenser.php:260
 
214
  #: include/Addon/License/Licenser.php:260
215
  msgid ""
216
  "Your license for %s has been deactivated. You will not receive automatic "
217
  "updates."
218
  msgstr ""
219
 
220
+ #: dist/include/Addon/Upseller.php:31 include/Addon/Upseller.php:33
221
+ msgid "Additional fields are available through More Fields add-on. "
222
+ msgstr ""
223
+
224
+ #: dist/include/Addon/Upseller.php:35 include/Addon/Upseller.php:37
225
+ msgid "Install it"
226
+ msgstr ""
227
+
228
+ #: dist/include/Addon/Upseller.php:39 include/Addon/Upseller.php:41
229
+ msgid "Buy Now"
230
+ msgstr ""
231
+
232
+ #. translators: 1 Auto Delete Logs add-on name.
233
+ #: dist/include/Addon/Upseller.php:72 include/Addon/Upseller.php:74
234
+ msgid ""
235
+ "You have more than 5000 email logs in the database. You can use our %1s add-"
236
+ "on to automatically delete logs as the DB size grows."
237
+ msgstr ""
238
+
239
+ #: dist/include/Addon/Upseller.php:95 include/Addon/Upseller.php:97
240
+ msgid ""
241
+ "You can also automatically delete logs if the database size increases using "
242
+ "our %1s add-on."
243
+ msgstr ""
244
+
245
+ #: dist/include/Core/Request/LogListAction.php:64
246
+ #: dist/include/Util/helper.php:323 include/Core/Request/LogListAction.php:64
247
  #: include/Util/helper.php:323
248
  msgid "Sent at"
249
  msgstr ""
250
 
251
+ #: dist/include/Core/Request/LogListAction.php:68
252
+ #: dist/include/Util/helper.php:319 include/Core/Request/LogListAction.php:68
253
+ #: include/Util/helper.php:319
 
254
  msgid "To"
255
  msgstr ""
256
 
257
+ #: dist/include/Core/Request/LogListAction.php:72
258
+ #: dist/include/Util/helper.php:320 include/Core/Request/LogListAction.php:72
 
259
  #: include/Util/helper.php:320
260
  msgid "Subject"
261
  msgstr ""
262
 
263
+ #: dist/include/Core/Request/LogListAction.php:92
264
  #: include/Core/Request/LogListAction.php:92
265
  msgid "Raw Email Content"
266
  msgstr ""
267
 
268
+ #: dist/include/Core/Request/LogListAction.php:93
269
  #: include/Core/Request/LogListAction.php:93
270
  msgid "Preview Content as HTML"
271
  msgstr ""
272
 
273
+ #: dist/include/Core/Request/LogListAction.php:106
274
  #: include/Core/Request/LogListAction.php:106
275
  msgid "Close"
276
  msgstr ""
277
 
278
+ #: dist/include/Core/Request/LogListAction.php:181
279
  #: include/Core/Request/LogListAction.php:181
280
  msgid "There was some problem in deleting the email logs"
281
  msgstr ""
282
 
283
+ #: dist/include/Core/Request/LogListAction.php:185
284
  #: include/Core/Request/LogListAction.php:185
285
  msgid "1 email log deleted."
286
  msgid_plural "%s email logs deleted"
287
  msgstr[0] ""
288
  msgstr[1] ""
289
 
 
 
290
  #: dist/include/Core/UI/Component/AdminUIEnhancer.php:69
291
  #: include/Core/UI/Component/AdminUIEnhancer.php:69
292
  msgid "Buy Addons"
293
  msgstr ""
294
 
 
 
295
  #: dist/include/Core/UI/Component/AdminUIEnhancer.php:85
296
  #: dist/include/Core/UI/Page/LogListPage.php:68
297
  #: dist/include/Core/UI/Page/LogListPage.php:69
301
  msgid "View Logs"
302
  msgstr ""
303
 
 
 
304
  #: dist/include/Core/UI/Component/AdminUIEnhancer.php:86
305
  #: dist/include/Core/UI/Page/SettingsPage.php:94
306
  #: dist/include/Core/UI/Page/SettingsPage.php:95
310
  msgid "Settings"
311
  msgstr ""
312
 
 
 
313
  #: dist/include/Core/UI/Component/AdminUIEnhancer.php:109
314
  #: include/Core/UI/Component/AdminUIEnhancer.php:109
315
  msgid "plugin"
316
  msgstr ""
317
 
 
 
318
  #: dist/include/Core/UI/Component/AdminUIEnhancer.php:109
319
  #: include/Core/UI/Component/AdminUIEnhancer.php:109
320
  msgid "Version"
321
  msgstr ""
322
 
 
 
323
  #: dist/include/Core/UI/Component/AdminUIEnhancer.php:109
324
  #: include/Core/UI/Component/AdminUIEnhancer.php:109
325
  msgid "by"
326
  msgstr ""
327
 
328
+ #: dist/include/Core/UI/Component/DashboardWidget.php:29
329
  #: include/Core/UI/Component/DashboardWidget.php:29
330
  msgid "Email Logs Summary"
331
  msgstr ""
332
 
333
+ #: dist/include/Core/UI/Component/DashboardWidget.php:43
334
  #: include/Core/UI/Component/DashboardWidget.php:43
335
  msgid "Total number of emails logged"
336
  msgstr ""
337
 
338
+ #: dist/include/Core/UI/Component/DashboardWidget.php:57
339
  #: include/Core/UI/Component/DashboardWidget.php:57
340
  msgid "<a href=\"%s\">Email Logs</a>"
341
  msgstr ""
342
 
343
+ #: dist/include/Core/UI/Component/DashboardWidget.php:58
344
  #: include/Core/UI/Component/DashboardWidget.php:58
345
  msgid "<a href=\"%s\">Settings</a>"
346
  msgstr ""
347
 
348
+ #: dist/include/Core/UI/Component/DashboardWidget.php:59
349
  #: include/Core/UI/Component/DashboardWidget.php:59
350
  msgid "<a href=\"%s\">Addons</a>"
351
  msgstr ""
352
 
353
+ #: dist/include/Core/UI/ListTable/LogListTable.php:144
 
 
354
  #: include/Core/UI/ListTable/LogListTable.php:144
355
  msgid "%s @ %s"
356
  msgstr ""
357
 
358
+ #: dist/include/Core/UI/ListTable/LogListTable.php:162
 
 
359
  #: include/Core/UI/ListTable/LogListTable.php:162
360
  msgid "Email Content"
361
  msgstr ""
362
 
363
+ #: dist/include/Core/UI/ListTable/LogListTable.php:163
 
 
364
  #: include/Core/UI/ListTable/LogListTable.php:163
365
  msgid "View Content"
366
  msgstr ""
367
 
368
+ #: dist/include/Core/UI/ListTable/LogListTable.php:177
369
+ #: dist/include/Core/UI/ListTable/LogListTable.php:292
 
 
370
  #: include/Core/UI/ListTable/LogListTable.php:177
371
  #: include/Core/UI/ListTable/LogListTable.php:292
372
  msgid "Delete"
373
  msgstr ""
374
 
375
+ #: dist/include/Core/UI/ListTable/LogListTable.php:293
 
 
376
  #: include/Core/UI/ListTable/LogListTable.php:293
377
  msgid "Delete All Logs"
378
  msgstr ""
379
 
380
+ #: dist/include/Core/UI/ListTable/LogListTable.php:326
 
 
381
  #: include/Core/UI/ListTable/LogListTable.php:326
382
  msgid "Your email log is empty"
383
  msgstr ""
384
 
385
+ #: dist/include/Core/UI/ListTable/LogListTable.php:353
 
 
386
  #: include/Core/UI/ListTable/LogListTable.php:353
387
  msgid "Search by date"
388
  msgstr ""
389
 
390
+ #: dist/include/Core/UI/ListTable/LogListTable.php:354
 
 
391
  #: include/Core/UI/ListTable/LogListTable.php:354
392
  msgid "Search by term"
393
  msgstr ""
467
  msgid "Support"
468
  msgstr ""
469
 
470
+ #. #-#-#-#-# email-log.pot (Email Log 2.4.1) #-#-#-#-#
471
  #. Plugin Name of the plugin/theme
472
  #: dist/include/Core/UI/Page/LogListPage.php:57
473
  #: dist/include/Core/UI/Page/LogListPage.php:58
614
  "the notification."
615
  msgstr ""
616
 
617
+ #: dist/include/Core/UI/Setting/CoreSetting.php:440
618
  #: include/Core/UI/Setting/CoreSetting.php:440
619
  msgid "Email Log Plugin: Your log threshold of %s has been met"
620
  msgstr ""
621
 
622
+ #: dist/include/Core/UI/Setting/CoreSetting.php:492
623
  #: include/Core/UI/Setting/CoreSetting.php:492
624
  msgid ""
625
  "Currently there are %1$s logged, which is more than the threshold that is "
627
  "You can also use our %3$s add-on to automatically delete logs"
628
  msgstr ""
629
 
630
+ #: dist/include/Core/UI/Setting/CoreSetting.php:493
631
  #: include/Core/UI/Setting/CoreSetting.php:493
632
  msgid " email log"
633
  msgid_plural " email logs"
634
  msgstr[0] ""
635
  msgstr[1] ""
636
 
637
+ #: dist/include/Util/helper.php:318 include/Util/helper.php:318
 
 
 
 
 
 
 
638
  msgid "ID"
639
  msgstr ""
640
 
641
+ #: dist/include/Util/helper.php:321 include/Util/helper.php:321
 
 
642
  msgid "Message"
643
  msgstr ""
644
 
645
+ #: dist/include/Util/helper.php:322 include/Util/helper.php:322
 
 
646
  msgid "Attachment"
647
  msgstr ""
648
 
649
+ #: dist/include/Util/helper.php:324 include/Util/helper.php:324
 
 
650
  msgid "From"
651
  msgstr ""
652
 
653
+ #: dist/include/Util/helper.php:325 include/Util/helper.php:325
 
 
654
  msgid "CC"
655
  msgstr ""
656
 
657
+ #: dist/include/Util/helper.php:326 include/Util/helper.php:326
 
 
658
  msgid "BCC"
659
  msgstr ""
660
 
661
+ #: dist/include/Util/helper.php:327 include/Util/helper.php:327
 
 
662
  msgid "Reply To"
663
  msgstr ""
664
 
665
+ #: dist/include/Util/helper.php:328 include/Util/helper.php:328
 
666
  msgid "IP Address"
667
  msgstr ""
668
 
669
+ #: dist/include/Util/helper.php:329 include/Util/helper.php:329
 
670
  msgid "Sent Status"
671
  msgstr ""
672
 
693
  msgid "Error"
694
  msgstr ""
695
 
696
+ #: dist/vendor/sudar/wp-system-info/src/SystemInfo.php:79
 
 
697
  #: vendor/sudar/wp-system-info/src/SystemInfo.php:79
698
  msgid ""
699
  "To copy the system info, click below then press Ctrl + C (PC) or Cmd + C "
700
  "(Mac)."
701
  msgstr ""
702
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
703
  #: vendor/lucatume/wp-browser/src/data/plugins/wordpress-importer/parsers.php:42
704
  #: vendor/lucatume/wp-browser/src/data/plugins/wordpress-importer/parsers.php:72
705
  #: vendor/lucatume/wp-browser/src/data/plugins/wordpress-importer/parsers.php:80
readme.txt CHANGED
@@ -4,7 +4,7 @@ Tags: email, log, log email, resend email, multisite
4
  Requires PHP: 5.6
5
  Requires at least: 4.0
6
  Tested up to: 5.4
7
- Stable tag: 2.4.0
8
 
9
  Log and view all outgoing emails from WordPress. Works with WordPress Multisite as well.
10
 
@@ -132,6 +132,9 @@ Meanwhile, I have added a hack to handle this condition in v1.7.3 of my plugin.
132
  This Readme file was generated using <a href = 'http://sudarmuthu.com/wordpress/wp-readme'>wp-readme</a>, which generates readme files for WordPress Plugins.
133
  == Changelog ==
134
 
 
 
 
135
  = v2.4.0 – (2020-07-05) =
136
  - New: Capture the error message when an email fails to be delivered.
137
  - New: Show seconds in send time.
@@ -338,6 +341,12 @@ This Readme file was generated using <a href = 'http://sudarmuthu.com/wordpress/
338
 
339
  == Upgrade Notice ==
340
 
 
 
 
 
 
 
341
  = 2.3.0 =
342
  The 'To' and 'Subject' fields now supports text upto 500 characters.
343
 
4
  Requires PHP: 5.6
5
  Requires at least: 4.0
6
  Tested up to: 5.4
7
+ Stable tag: 2.4.1
8
 
9
  Log and view all outgoing emails from WordPress. Works with WordPress Multisite as well.
10
 
132
  This Readme file was generated using <a href = 'http://sudarmuthu.com/wordpress/wp-readme'>wp-readme</a>, which generates readme files for WordPress Plugins.
133
  == Changelog ==
134
 
135
+ = v2.4.1 – (2020-07-06) =
136
+ - Fix: Added a missing file that broke v2.4.0 release for some installations.
137
+
138
  = v2.4.0 – (2020-07-05) =
139
  - New: Capture the error message when an email fails to be delivered.
140
  - New: Show seconds in send time.
341
 
342
  == Upgrade Notice ==
343
 
344
+ = 2.4.1 =
345
+ Starting v2.4.0 the plugin now captures the error message when an email fails to be delivered.
346
+
347
+ = 2.4.0 =
348
+ Starting v2.4.0 the plugin now captures the error message when an email fails to be delivered.
349
+
350
  = 2.3.0 =
351
  The 'To' and 'Subject' fields now supports text upto 500 characters.
352
 
vendor/collizo4sky/persist-admin-notices-dismissal/CHANGES.md ADDED
@@ -0,0 +1,18 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #### 1.4.3
2
+ * added filter hook `pand_dismiss_notice_js_url` in case you're using this in a theme or a local environment that doesn't quite find the correct URL.
3
+ * added filter hook `pand_theme_loader` that returns a boolean for simpler usage of the `pand_dismiss_notice_js_url` hook
4
+
5
+ #### 1.4.2
6
+ * No changes to `class PAnD`
7
+ * updated `.gitignore` and `.gitattributes`
8
+ * now use classmap in composer's autoloader, should be more efficient
9
+
10
+ #### 1.4.1
11
+ * fixed the `forever` setting with options
12
+
13
+ #### 1.4.0
14
+ * WPCS 1.1.0 linting done
15
+ * switched from storing timeout in transients to storing in the options table, this should play much better with object caching
16
+
17
+ #### 1.3.x
18
+ * uses transients to store timeout
vendor/collizo4sky/persist-admin-notices-dismissal/README.md ADDED
@@ -0,0 +1,128 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Persist Admin notice Dismissals
2
+ [![Latest Stable Version](https://poser.pugx.org/collizo4sky/persist-admin-notices-dismissal/v/stable)](https://packagist.org/packages/collizo4sky/persist-admin-notices-dismissal)
3
+ [![Total Downloads](https://poser.pugx.org/collizo4sky/persist-admin-notices-dismissal/downloads)](https://packagist.org/packages/collizo4sky/persist-admin-notices-dismissal)
4
+
5
+ Simple framework library that persists the dismissal of admin notices across pages in WordPress dashboard.
6
+
7
+ ## Installation
8
+
9
+ Run `composer require collizo4sky/persist-admin-notices-dismissal`
10
+
11
+ Alternatively, clone or download this repo into the `vendor/` folder in your plugin, and include/require the `persist-admin-notices-dismissal.php` file like so
12
+
13
+ ```php
14
+ require __DIR__ . '/vendor/persist-admin-notices-dismissal/persist-admin-notices-dismissal.php';
15
+ add_action( 'admin_init', array( 'PAnD', 'init' ) );
16
+ ```
17
+
18
+ or let Composer's autoloader do the work.
19
+
20
+ ## How to Use
21
+ Firstly, install and activate this library within a plugin.
22
+
23
+ Say you have the following markup as your admin notice,
24
+
25
+
26
+ ```php
27
+ function sample_admin_notice__success() {
28
+ ?>
29
+ <div class="updated notice notice-success is-dismissible">
30
+ <p><?php _e( 'Done!', 'sample-text-domain' ); ?></p>
31
+ </div>
32
+ <?php
33
+ }
34
+ add_action( 'admin_notices', 'sample_admin_notice__success' );
35
+ ```
36
+
37
+ To make it hidden forever when dismissed, add the following data attribute `data-dismissible="disable-done-notice-forever"` to the div markup like so:
38
+
39
+
40
+ ```php
41
+ function sample_admin_notice__success() {
42
+ if ( ! PAnD::is_admin_notice_active( 'disable-done-notice-forever' ) ) {
43
+ return;
44
+ }
45
+
46
+ ?>
47
+ <div data-dismissible="disable-done-notice-forever" class="updated notice notice-success is-dismissible">
48
+ <p><?php _e( 'Done!', 'sample-text-domain' ); ?></p>
49
+ </div>
50
+ <?php
51
+ }
52
+ add_action( 'admin_init', array( 'PAnD', 'init' ) );
53
+ add_action( 'admin_notices', 'sample_admin_notice__success' );
54
+ ```
55
+
56
+ ## Autoloaders
57
+ When using the framework with an autoloader you **must** also load the class outside of the `admin_notices` or `network_admin_notices` hooks. The reason is that these hooks come after the `admin_enqueue_script` hook that loads the javascript.
58
+
59
+ Just add the following in your main plugin file.
60
+
61
+ ```php
62
+ add_action( 'admin_init', array( 'PAnD', 'init' ) );
63
+ ```
64
+
65
+ #### Usage Instructions and Examples
66
+ If you have two notices displayed when certain actions are triggered; firstly, choose a string to uniquely identify them, e.g. `notice-one` and `notice-two`
67
+
68
+ To make the first notice never appear once dismissed, its `data-dismissible` attribute will be `data-dismissible="notice-one-forever"` where `notice-one` is its unique identifier and `forever` is the dismissal time period.
69
+
70
+ To make the second notice only hidden for 2 days, its `data-dismissible` attribute will be `data-dismissible="notice-two-2"` where `notice-two` is its unique identifier and the `2`, the number of days it will be hidden is the dismissal time period.
71
+
72
+ You **must** append the dismissal time period to the end of your unique identifier with a hyphen (`-`) and this value must be an integer. The only exception is the string `forever`.
73
+
74
+ To actually make the dismissed admin notice not to appear, use the `is_admin_notice_active()` function like so:
75
+
76
+
77
+ ```php
78
+ function sample_admin_notice__success1() {
79
+ if ( ! PAnD::is_admin_notice_active( 'notice-one-forever' ) ) {
80
+ return;
81
+ }
82
+
83
+ ?>
84
+ <div data-dismissible="notice-one-forever" class="updated notice notice-success is-dismissible">
85
+ <p><?php _e( 'Done 1!', 'sample-text-domain' ); ?></p>
86
+ </div>
87
+ <?php
88
+ }
89
+
90
+ function sample_admin_notice__success2() {
91
+ if ( ! PAnD::is_admin_notice_active( 'notice-two-2' ) ) {
92
+ return;
93
+ }
94
+
95
+ ?>
96
+ <div data-dismissible="notice-two-2" class="updated notice notice-success is-dismissible">
97
+ <p><?php _e( 'Done 2!', 'sample-text-domain' ); ?></p>
98
+ </div>
99
+ <?php
100
+ }
101
+
102
+ add_action( 'admin_init', array( 'PAnD', 'init' ) );
103
+ add_action( 'admin_notices', 'sample_admin_notice__success1' );
104
+ add_action( 'admin_notices', 'sample_admin_notice__success2' );
105
+ ```
106
+
107
+ Please note that if you cleanup after your plugin deletion please try to make the removal of stored options as specific as possible. Otherwise you may end up deleting the stored options from other projects.
108
+
109
+ A filter hook is available to return the proper URL to the Javascript file. An example usage is as follows, especially if this is being used in a theme.
110
+
111
+ ```php
112
+ add_filter( 'pand_theme_loader', '__return_true' );
113
+ ```
114
+
115
+ The `pand_theme_loader` runs the following hook if `true`. You can directly change the URL to the Javascript file by using another hook in the following manner by changing the return value.
116
+
117
+ ```php
118
+ add_filter(
119
+ 'pand_dismiss_notice_js_url',
120
+ function( $js_url, $composer_path ) {
121
+ return get_stylesheet_directory_uri() . $composer_path;
122
+ },
123
+ 10,
124
+ 2
125
+ );
126
+ ```
127
+
128
+ Cool beans. Isn't it?
vendor/collizo4sky/persist-admin-notices-dismissal/composer.json ADDED
@@ -0,0 +1,15 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "name": "collizo4sky/persist-admin-notices-dismissal",
3
+ "description": "Simple library to persist dismissal of admin notices across pages in WordPress dashboard.",
4
+ "authors": [
5
+ {
6
+ "name": "Collins Agbonghama",
7
+ "email": "me@w3guy.com"
8
+ }
9
+ ],
10
+ "autoload": {
11
+ "classmap": [
12
+ "persist-admin-notices-dismissal.php"
13
+ ]
14
+ }
15
+ }
vendor/collizo4sky/persist-admin-notices-dismissal/dismiss-notice.js ADDED
@@ -0,0 +1,33 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ (function ($) {
2
+ //shorthand for ready event.
3
+ $(
4
+ function () {
5
+ $( 'div[data-dismissible] button.notice-dismiss' ).click(
6
+ function (event) {
7
+ event.preventDefault();
8
+ var $this = $( this );
9
+
10
+ var attr_value, option_name, dismissible_length, data;
11
+
12
+ attr_value = $this.parent().attr( 'data-dismissible' ).split( '-' );
13
+
14
+ // remove the dismissible length from the attribute value and rejoin the array.
15
+ dismissible_length = attr_value.pop();
16
+
17
+ option_name = attr_value.join( '-' );
18
+
19
+ data = {
20
+ 'action': 'dismiss_admin_notice',
21
+ 'option_name': option_name,
22
+ 'dismissible_length': dismissible_length,
23
+ 'nonce': dismissible_notice.nonce
24
+ };
25
+
26
+ // We can also pass the url value separately from ajaxurl for front end AJAX implementations
27
+ $.post( ajaxurl, data );
28
+ }
29
+ );
30
+ }
31
+ )
32
+
33
+ }(jQuery));
vendor/collizo4sky/persist-admin-notices-dismissal/persist-admin-notices-dismissal.php ADDED
@@ -0,0 +1,190 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /**
4
+ * Persist Admin notices Dismissal
5
+ *
6
+ * Copyright (C) 2016 Collins Agbonghama <http://w3guy.com>
7
+ *
8
+ * This program is free software: you can redistribute it and/or modify
9
+ * it under the terms of the GNU General Public License as published by
10
+ * the Free Software Foundation, either version 3 of the License, or
11
+ * (at your option) any later version.
12
+ *
13
+ * This program is distributed in the hope that it will be useful,
14
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
15
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16
+ * GNU General Public License for more details.
17
+ *
18
+ * You should have received a copy of the GNU General Public License
19
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
20
+ *
21
+ * @package Persist Admin notices Dismissal
22
+ * @author Collins Agbonghama
23
+ * @author Andy Fragen
24
+ * @license http://www.gnu.org/licenses GNU General Public License
25
+ * @version 1.4.3
26
+ */
27
+
28
+ /**
29
+ * Exit if called directly.
30
+ */
31
+ if ( ! defined( 'ABSPATH' ) ) {
32
+ die;
33
+ }
34
+
35
+ if ( ! class_exists( 'PAnD' ) ) {
36
+
37
+ /**
38
+ * Class PAnD
39
+ */
40
+ class PAnD {
41
+
42
+ /**
43
+ * Init hooks.
44
+ */
45
+ public static function init() {
46
+ add_action( 'admin_enqueue_scripts', array( __CLASS__, 'load_script' ) );
47
+ add_action( 'wp_ajax_dismiss_admin_notice', array( __CLASS__, 'dismiss_admin_notice' ) );
48
+
49
+ /**
50
+ * Filter to activate another filter providing a simpler use case.
51
+ *
52
+ * @since 1.4.3
53
+ *
54
+ * @param bool
55
+ */
56
+ if ( apply_filters( 'pand_theme_loader', false ) ) {
57
+ add_filter(
58
+ 'pand_dismiss_notice_js_url',
59
+ function( $js_url, $composer_path ) {
60
+ return get_stylesheet_directory_uri() . $composer_path;
61
+ },
62
+ 10,
63
+ 2
64
+ );
65
+ }
66
+ }
67
+
68
+ /**
69
+ * Enqueue javascript and variables.
70
+ */
71
+ public static function load_script() {
72
+
73
+ if ( is_customize_preview() ) {
74
+ return;
75
+ }
76
+
77
+ $js_url = plugins_url( 'dismiss-notice.js', __FILE__ );
78
+ $composer_path = '/vendor/collizo4sky/persist-admin-notices-dismissal/dismiss-notice.js';
79
+
80
+ /**
81
+ * Filter dismiss-notice.js URL.
82
+ *
83
+ * @since 1.4.3
84
+ *
85
+ * @param string $js_url URL to the Javascript file.
86
+ * @param string $composer_path Relative path of Javascript file from composer install.
87
+ */
88
+ $js_url = apply_filters( 'pand_dismiss_notice_js_url', $js_url, $composer_path );
89
+ wp_enqueue_script(
90
+ 'dismissible-notices',
91
+ $js_url,
92
+ array( 'jquery', 'common' ),
93
+ false,
94
+ true
95
+ );
96
+
97
+ wp_localize_script(
98
+ 'dismissible-notices',
99
+ 'dismissible_notice',
100
+ array(
101
+ 'nonce' => wp_create_nonce( 'dismissible-notice' ),
102
+ )
103
+ );
104
+ }
105
+
106
+ /**
107
+ * Handles Ajax request to persist notices dismissal.
108
+ * Uses check_ajax_referer to verify nonce.
109
+ */
110
+ public static function dismiss_admin_notice() {
111
+ $option_name = sanitize_text_field( $_POST['option_name'] );
112
+ $dismissible_length = sanitize_text_field( $_POST['dismissible_length'] );
113
+
114
+ if ( 'forever' != $dismissible_length ) {
115
+ // If $dismissible_length is not an integer default to 1
116
+ $dismissible_length = ( 0 == absint( $dismissible_length ) ) ? 1 : $dismissible_length;
117
+ $dismissible_length = strtotime( absint( $dismissible_length ) . ' days' );
118
+ }
119
+
120
+ check_ajax_referer( 'dismissible-notice', 'nonce' );
121
+ self::set_admin_notice_cache( $option_name, $dismissible_length );
122
+ wp_die();
123
+ }
124
+
125
+ /**
126
+ * Is admin notice active?
127
+ *
128
+ * @param string $arg data-dismissible content of notice.
129
+ *
130
+ * @return bool
131
+ */
132
+ public static function is_admin_notice_active( $arg ) {
133
+ $array = explode( '-', $arg );
134
+ $length = array_pop( $array );
135
+ $option_name = implode( '-', $array );
136
+ $db_record = self::get_admin_notice_cache( $option_name );
137
+
138
+ if ( 'forever' == $db_record ) {
139
+ return false;
140
+ } elseif ( absint( $db_record ) >= time() ) {
141
+ return false;
142
+ } else {
143
+ return true;
144
+ }
145
+ }
146
+
147
+ /**
148
+ * Returns admin notice cached timeout.
149
+ *
150
+ * @access public
151
+ *
152
+ * @param string|bool $id admin notice name or false.
153
+ *
154
+ * @return array|bool The timeout. False if expired.
155
+ */
156
+ public static function get_admin_notice_cache( $id = false ) {
157
+ if ( ! $id ) {
158
+ return false;
159
+ }
160
+ $cache_key = 'pand-' . md5( $id );
161
+ $timeout = get_site_option( $cache_key );
162
+ $timeout = 'forever' === $timeout ? time() + 60 : $timeout;
163
+
164
+ if ( empty( $timeout ) || time() > $timeout ) {
165
+ return false;
166
+ }
167
+
168
+ return $timeout;
169
+ }
170
+
171
+ /**
172
+ * Sets admin notice timeout in site option.
173
+ *
174
+ * @access public
175
+ *
176
+ * @param string $id Data Identifier.
177
+ * @param string|bool $timeout Timeout for admin notice.
178
+ *
179
+ * @return bool
180
+ */
181
+ public static function set_admin_notice_cache( $id, $timeout ) {
182
+ $cache_key = 'pand-' . md5( $id );
183
+ update_site_option( $cache_key, $timeout );
184
+
185
+ return true;
186
+ }
187
+
188
+ }
189
+
190
+ }