Version Description
- 2017-12-05 =
- Improved: [mailpoet_manage_subscription] always renders for logged in WP users. Thx Jon, Sean, Steve & metaglyphics;
- Fixed: migration from MailPoet 2 on hosts with missing "mbstring" PHP extension. Thanks Alvaro!
- Fixed: updated existing libraries that previously contained security issues. Thanks Rhiannon (@goija) and Bits of Freedom!
Download this release
Release Info
Developer | wysija |
Plugin | MailPoet Newsletters (New) |
Version | 3.2.4 |
Comparing to | |
See all releases |
Code changes from version 3.3.0 to 3.2.4
- assets/js/{admin.39fd28da.js → admin.dfed86f0.js} +200 -218
- assets/js/{admin_vendor.7914137d.js → admin_vendor.8b1d6679.js} +134 -167
- assets/js/{mailpoet.a5fa72ae.js → mailpoet.0a2f113c.js} +5 -7
- assets/js/manifest.json +4 -4
- assets/js/{vendor.3c206dd6.js → vendor.16d46c95.js} +1 -1
- lang/mailpoet-ca.mo +0 -0
- lang/mailpoet-da_DK.mo +0 -0
- lang/mailpoet-de_DE.mo +0 -0
- lang/mailpoet-en_GB.mo +0 -0
- lang/mailpoet-es_ES.mo +0 -0
- lang/mailpoet-fa_IR.mo +0 -0
- lang/mailpoet-fr_CA.mo +0 -0
- lang/mailpoet-fr_FR.mo +0 -0
- lang/mailpoet-it_IT.mo +0 -0
- lang/mailpoet-ja.mo +0 -0
- lang/mailpoet-nl_NL.mo +0 -0
- lang/mailpoet-pl_PL.mo +0 -0
- lang/mailpoet-pt_BR.mo +0 -0
- lang/mailpoet-pt_PT.mo +0 -0
- lang/mailpoet-ru_RU.mo +0 -0
- lang/mailpoet-sq.mo +0 -0
- lang/mailpoet-sv_SE.mo +0 -0
- lang/mailpoet-tr_TR.mo +0 -0
- lang/mailpoet.pot +4 -4
- lib/Config/Localizer.php +0 -11
- lib/Config/Populator.php +0 -2
- mailpoet.php +3 -3
- readme.txt +2 -6
- vendor/autoload.php +1 -1
- vendor/composer/autoload_real.php +7 -7
- vendor/composer/autoload_static.php +5 -5
- views/update.html +7 -14
assets/js/{admin.39fd28da.js → admin.dfed86f0.js}
RENAMED
@@ -92,7 +92,7 @@ webpackJsonp([0],{
|
|
92 |
|
93 |
var messages = {
|
94 |
onTrash: function onTrash(response) {
|
95 |
-
var count =
|
96 |
var message = null;
|
97 |
|
98 |
if (count === 1) {
|
@@ -103,7 +103,7 @@ webpackJsonp([0],{
|
|
103 |
_mailpoet2['default'].Notice.success(message);
|
104 |
},
|
105 |
onDelete: function onDelete(response) {
|
106 |
-
var count =
|
107 |
var message = null;
|
108 |
|
109 |
if (count === 1) {
|
@@ -114,7 +114,7 @@ webpackJsonp([0],{
|
|
114 |
_mailpoet2['default'].Notice.success(message);
|
115 |
},
|
116 |
onRestore: function onRestore(response) {
|
117 |
-
var count =
|
118 |
var message = null;
|
119 |
|
120 |
if (count === 1) {
|
@@ -150,7 +150,7 @@ webpackJsonp([0],{
|
|
150 |
}
|
151 |
};
|
152 |
|
153 |
-
var
|
154 |
name: 'moveToList',
|
155 |
label: _mailpoet2['default'].I18n.t('moveToList'),
|
156 |
onSelect: function onSelect() {
|
@@ -167,11 +167,11 @@ webpackJsonp([0],{
|
|
167 |
},
|
168 |
getData: function getData() {
|
169 |
return {
|
170 |
-
segment_id:
|
171 |
};
|
172 |
},
|
173 |
onSuccess: function onSuccess(response) {
|
174 |
-
_mailpoet2['default'].Notice.success(_mailpoet2['default'].I18n.t('multipleSubscribersMovedToList').replace('%$1d',
|
175 |
}
|
176 |
}, {
|
177 |
name: 'addToList',
|
@@ -190,11 +190,11 @@ webpackJsonp([0],{
|
|
190 |
},
|
191 |
getData: function getData() {
|
192 |
return {
|
193 |
-
segment_id:
|
194 |
};
|
195 |
},
|
196 |
onSuccess: function onSuccess(response) {
|
197 |
-
_mailpoet2['default'].Notice.success(_mailpoet2['default'].I18n.t('multipleSubscribersAddedToList').replace('%$1d',
|
198 |
}
|
199 |
}, {
|
200 |
name: 'removeFromList',
|
@@ -213,23 +213,23 @@ webpackJsonp([0],{
|
|
213 |
},
|
214 |
getData: function getData() {
|
215 |
return {
|
216 |
-
segment_id:
|
217 |
};
|
218 |
},
|
219 |
onSuccess: function onSuccess(response) {
|
220 |
-
_mailpoet2['default'].Notice.success(_mailpoet2['default'].I18n.t('multipleSubscribersRemovedFromList').replace('%$1d',
|
221 |
}
|
222 |
}, {
|
223 |
name: 'removeFromAllLists',
|
224 |
label: _mailpoet2['default'].I18n.t('removeFromAllLists'),
|
225 |
onSuccess: function onSuccess(response) {
|
226 |
-
_mailpoet2['default'].Notice.success(_mailpoet2['default'].I18n.t('multipleSubscribersRemovedFromAllLists').replace('%$1d',
|
227 |
}
|
228 |
}, {
|
229 |
name: 'sendConfirmationEmail',
|
230 |
label: _mailpoet2['default'].I18n.t('resendConfirmationEmail'),
|
231 |
onSuccess: function onSuccess(response) {
|
232 |
-
_mailpoet2['default'].Notice.success(_mailpoet2['default'].I18n.t('multipleConfirmationEmailsSent').replace('%$1d',
|
233 |
}
|
234 |
}, {
|
235 |
name: 'trash',
|
@@ -237,7 +237,7 @@ webpackJsonp([0],{
|
|
237 |
onSuccess: messages.onTrash
|
238 |
}];
|
239 |
|
240 |
-
var
|
241 |
name: 'edit',
|
242 |
label: _mailpoet2['default'].I18n.t('edit'),
|
243 |
link: function link(subscriber) {
|
@@ -250,17 +250,17 @@ webpackJsonp([0],{
|
|
250 |
}, {
|
251 |
name: 'trash',
|
252 |
display: function display(subscriber) {
|
253 |
-
return
|
254 |
}
|
255 |
}];
|
256 |
|
257 |
var SubscriberList = _react2['default'].createClass({
|
258 |
displayName: 'SubscriberList',
|
259 |
|
260 |
-
getSegmentFromId: function getSegmentFromId(
|
261 |
var result = false;
|
262 |
-
window.mailpoet_segments.
|
263 |
-
if (segment.id ===
|
264 |
result = segment;
|
265 |
}
|
266 |
});
|
@@ -269,7 +269,7 @@ webpackJsonp([0],{
|
|
269 |
renderItem: function renderItem(subscriber, actions) {
|
270 |
var _this = this;
|
271 |
|
272 |
-
var
|
273 |
|
274 |
var status = '';
|
275 |
|
@@ -289,10 +289,6 @@ webpackJsonp([0],{
|
|
289 |
case 'bounced':
|
290 |
status = _mailpoet2['default'].I18n.t('bounced');
|
291 |
break;
|
292 |
-
|
293 |
-
default:
|
294 |
-
status = 'Invalid';
|
295 |
-
break;
|
296 |
}
|
297 |
|
298 |
var segments = false;
|
@@ -300,20 +296,20 @@ webpackJsonp([0],{
|
|
300 |
// Subscriptions
|
301 |
if (subscriber.subscriptions.length > 0) {
|
302 |
(function () {
|
303 |
-
var
|
304 |
|
305 |
-
subscriber.subscriptions.
|
306 |
var segment = _this.getSegmentFromId(subscription.segment_id);
|
307 |
if (segment === false) return;
|
308 |
if (subscription.status === 'subscribed') {
|
309 |
-
|
310 |
}
|
311 |
});
|
312 |
|
313 |
segments = _react2['default'].createElement(
|
314 |
'span',
|
315 |
null,
|
316 |
-
|
317 |
);
|
318 |
})();
|
319 |
}
|
@@ -323,7 +319,7 @@ webpackJsonp([0],{
|
|
323 |
null,
|
324 |
_react2['default'].createElement(
|
325 |
'td',
|
326 |
-
{ className:
|
327 |
_react2['default'].createElement(
|
328 |
'strong',
|
329 |
null,
|
@@ -417,8 +413,8 @@ webpackJsonp([0],{
|
|
417 |
endpoint: 'subscribers',
|
418 |
onRenderItem: this.renderItem,
|
419 |
columns: columns,
|
420 |
-
bulk_actions:
|
421 |
-
item_actions:
|
422 |
messages: messages,
|
423 |
sort_by: 'created_at',
|
424 |
sort_order: 'desc'
|
@@ -453,21 +449,21 @@ webpackJsonp([0],{
|
|
453 |
label: MailPoet.I18n.t('email'),
|
454 |
type: 'text',
|
455 |
disabled: function disabled(subscriber) {
|
456 |
-
return
|
457 |
}
|
458 |
}, {
|
459 |
name: 'first_name',
|
460 |
label: MailPoet.I18n.t('firstname'),
|
461 |
type: 'text',
|
462 |
disabled: function disabled(subscriber) {
|
463 |
-
return
|
464 |
}
|
465 |
}, {
|
466 |
name: 'last_name',
|
467 |
label: MailPoet.I18n.t('lastname'),
|
468 |
type: 'text',
|
469 |
disabled: function disabled(subscriber) {
|
470 |
-
return
|
471 |
}
|
472 |
}, {
|
473 |
name: 'status',
|
@@ -480,7 +476,7 @@ webpackJsonp([0],{
|
|
480 |
bounced: MailPoet.I18n.t('bounced')
|
481 |
},
|
482 |
filter: function filter(subscriber, value) {
|
483 |
-
if (
|
484 |
return false;
|
485 |
}
|
486 |
return true;
|
@@ -498,14 +494,14 @@ webpackJsonp([0],{
|
|
498 |
return null;
|
499 |
}
|
500 |
|
501 |
-
return subscriber.subscriptions.
|
502 |
-
|
503 |
-
|
504 |
-
|
505 |
});
|
506 |
},
|
507 |
filter: function filter(segment) {
|
508 |
-
return !segment.deleted_at && segment.type === 'default';
|
509 |
},
|
510 |
getLabel: function getLabel(segment) {
|
511 |
return segment.name + ' (' + segment.subscribers + ')';
|
@@ -514,13 +510,13 @@ webpackJsonp([0],{
|
|
514 |
var label = '';
|
515 |
|
516 |
if (subscriber.subscriptions !== undefined) {
|
517 |
-
subscriber.subscriptions.
|
518 |
if (segment.id === subscription.segment_id) {
|
519 |
label = segment.name;
|
520 |
|
521 |
if (subscription.status === 'unsubscribed') {
|
522 |
-
var
|
523 |
-
label += ' (%$1s)'.replace('%$1s', MailPoet.I18n.t('unsubscribedOn').replace('%$1s',
|
524 |
}
|
525 |
}
|
526 |
});
|
@@ -529,23 +525,23 @@ webpackJsonp([0],{
|
|
529 |
}
|
530 |
}];
|
531 |
|
532 |
-
var
|
533 |
-
|
534 |
var field = {
|
535 |
-
name: 'cf_' +
|
536 |
-
label:
|
537 |
-
type:
|
538 |
};
|
539 |
-
if (
|
540 |
-
field.params =
|
541 |
}
|
542 |
|
543 |
-
if (
|
544 |
-
field.values =
|
545 |
}
|
546 |
|
547 |
// add placeholders for selects (date, select)
|
548 |
-
switch (
|
549 |
case 'date':
|
550 |
field.year_placeholder = MailPoet.I18n.t('year');
|
551 |
field.month_placeholder = MailPoet.I18n.t('month');
|
@@ -555,10 +551,6 @@ webpackJsonp([0],{
|
|
555 |
case 'select':
|
556 |
field.placeholder = '-';
|
557 |
break;
|
558 |
-
|
559 |
-
default:
|
560 |
-
field.placeholder = '';
|
561 |
-
break;
|
562 |
}
|
563 |
|
564 |
fields.push(field);
|
@@ -577,7 +569,7 @@ webpackJsonp([0],{
|
|
577 |
};
|
578 |
|
579 |
var beforeFormContent = function beforeFormContent(subscriber) {
|
580 |
-
if (
|
581 |
return React.createElement(
|
582 |
'p',
|
583 |
{ className: 'description' },
|
@@ -593,7 +585,6 @@ webpackJsonp([0],{
|
|
593 |
})
|
594 |
);
|
595 |
}
|
596 |
-
return undefined;
|
597 |
};
|
598 |
|
599 |
var afterFormContent = function afterFormContent() {
|
@@ -718,10 +709,10 @@ webpackJsonp([0],{
|
|
718 |
var container = document.getElementById('newsletters_container');
|
719 |
|
720 |
if (container) {
|
721 |
-
var
|
722 |
-
|
723 |
|
724 |
-
var
|
725 |
_reactRouter.Router,
|
726 |
{ history: history },
|
727 |
_react2['default'].createElement(
|
@@ -738,13 +729,13 @@ webpackJsonp([0],{
|
|
738 |
_react2['default'].createElement(_reactRouter.Route, { path: 'new/notification', component: _newslettersTypesNotificationNotificationJsx2['default'] }),
|
739 |
_react2['default'].createElement(_reactRouter.Route, { name: 'template', path: 'template/:id', component: _newslettersTemplatesJsx2['default'] }),
|
740 |
_react2['default'].createElement(_reactRouter.Route, { path: 'send/:id', component: _newslettersSendJsx2['default'] }),
|
741 |
-
|
742 |
return _react2['default'].createElement(_reactRouter.Route, { key: rt.path, path: rt.path, component: rt.component });
|
743 |
})
|
744 |
)
|
745 |
), container);
|
746 |
|
747 |
-
window.mailpoet_listing =
|
748 |
}
|
749 |
/* Listings */ /* Newsletter: type selection */ /* New newsletter: types */ /* Template selection */ /* Sending options */ /* Extra routes */
|
750 |
|
@@ -980,7 +971,6 @@ webpackJsonp([0],{
|
|
980 |
};
|
981 |
|
982 |
reader.readAsText(file);
|
983 |
-
return true;
|
984 |
},
|
985 |
render: function render() {
|
986 |
return _react2['default'].createElement(
|
@@ -10476,10 +10466,10 @@ webpackJsonp([0],{
|
|
10476 |
return true;
|
10477 |
},
|
10478 |
render: function render() {
|
10479 |
-
var isPaused = this.state.item.status
|
10480 |
var fields = this.state.fields.map(function (field) {
|
10481 |
var newField = field;
|
10482 |
-
if (field.name
|
10483 |
newField.disabled = isPaused;
|
10484 |
}
|
10485 |
return newField;
|
@@ -10584,10 +10574,10 @@ webpackJsonp([0],{
|
|
10584 |
getLabel: function getLabel(segment) {
|
10585 |
return segment.name + ' (' + parseInt(segment.subscribers, 10).toLocaleString() + ')';
|
10586 |
},
|
10587 |
-
transformChangedValue: function transformChangedValue(
|
10588 |
-
var
|
10589 |
-
return _.map(
|
10590 |
-
return _.find(
|
10591 |
return segment.id === id;
|
10592 |
});
|
10593 |
});
|
@@ -10956,7 +10946,7 @@ webpackJsonp([0],{
|
|
10956 |
},
|
10957 |
propagateChange: function propagateChange() {
|
10958 |
if (this.props.onChange) {
|
10959 |
-
this.props.onChange({
|
10960 |
target: {
|
10961 |
name: this.props.name || '',
|
10962 |
value: this.getDateTime()
|
@@ -11093,10 +11083,10 @@ webpackJsonp([0],{
|
|
11093 |
getLabel: function getLabel(segment) {
|
11094 |
return segment.name + ' (' + parseInt(segment.subscribers, 10).toLocaleString() + ')';
|
11095 |
},
|
11096 |
-
transformChangedValue: function transformChangedValue(
|
11097 |
-
var
|
11098 |
-
return _.map(
|
11099 |
-
return _.find(
|
11100 |
return segment.id === id;
|
11101 |
});
|
11102 |
});
|
@@ -11430,11 +11420,11 @@ webpackJsonp([0],{
|
|
11430 |
|
11431 |
var _newslettersListingsMixinsJsx = __webpack_require__(530);
|
11432 |
|
11433 |
-
var
|
11434 |
|
11435 |
var messages = {
|
11436 |
onTrash: function onTrash(response) {
|
11437 |
-
var count =
|
11438 |
var message = null;
|
11439 |
|
11440 |
if (count === 1) {
|
@@ -11445,7 +11435,7 @@ webpackJsonp([0],{
|
|
11445 |
_mailpoet2['default'].Notice.success(message);
|
11446 |
},
|
11447 |
onDelete: function onDelete(response) {
|
11448 |
-
var count =
|
11449 |
var message = null;
|
11450 |
|
11451 |
if (count === 1) {
|
@@ -11456,7 +11446,7 @@ webpackJsonp([0],{
|
|
11456 |
_mailpoet2['default'].Notice.success(message);
|
11457 |
},
|
11458 |
onRestore: function onRestore(response) {
|
11459 |
-
var count =
|
11460 |
var message = null;
|
11461 |
|
11462 |
if (count === 1) {
|
@@ -11481,14 +11471,14 @@ webpackJsonp([0],{
|
|
11481 |
}, {
|
11482 |
name: 'statistics',
|
11483 |
label: _mailpoet2['default'].I18n.t('statistics'),
|
11484 |
-
display:
|
11485 |
}, {
|
11486 |
name: 'sent_at',
|
11487 |
label: _mailpoet2['default'].I18n.t('sentOn'),
|
11488 |
sortable: true
|
11489 |
}];
|
11490 |
|
11491 |
-
var
|
11492 |
name: 'trash',
|
11493 |
label: _mailpoet2['default'].I18n.t('moveToTrash'),
|
11494 |
onSuccess: messages.onTrash
|
@@ -11498,7 +11488,7 @@ webpackJsonp([0],{
|
|
11498 |
var redirectToEditing = function redirectToEditing() {
|
11499 |
window.location.href = '?page=mailpoet-newsletter-editor&id=' + newsletter.id;
|
11500 |
};
|
11501 |
-
if (!newsletter.queue || newsletter.status
|
11502 |
redirectToEditing();
|
11503 |
} else {
|
11504 |
(0, _reactConfirmAlert.confirmAlert)({
|
@@ -11511,7 +11501,7 @@ webpackJsonp([0],{
|
|
11511 |
}
|
11512 |
};
|
11513 |
|
11514 |
-
var
|
11515 |
name: 'view',
|
11516 |
link: function link(newsletter) {
|
11517 |
return _react2['default'].createElement(
|
@@ -11551,7 +11541,7 @@ webpackJsonp([0],{
|
|
11551 |
}];
|
11552 |
|
11553 |
_wpJsHooks2['default'].addFilter('mailpoet_newsletters_listings_standard_actions', _newslettersListingsMixinsJsx.StatisticsMixin.addStatsCTAAction);
|
11554 |
-
|
11555 |
|
11556 |
var NewsletterListStandard = _react2['default'].createClass({
|
11557 |
displayName: 'NewsletterListStandard',
|
@@ -11597,7 +11587,7 @@ webpackJsonp([0],{
|
|
11597 |
{ className: 'column', 'data-colname': _mailpoet2['default'].I18n.t('lists') },
|
11598 |
segments
|
11599 |
),
|
11600 |
-
|
11601 |
'td',
|
11602 |
{ className: 'column', 'data-colname': _mailpoet2['default'].I18n.t('statistics') },
|
11603 |
this.renderStatistics(newsletter, undefined, meta.current_time)
|
@@ -11642,8 +11632,8 @@ webpackJsonp([0],{
|
|
11642 |
base_url: 'standard',
|
11643 |
onRenderItem: this.renderItem,
|
11644 |
columns: columns,
|
11645 |
-
bulk_actions:
|
11646 |
-
item_actions:
|
11647 |
messages: messages,
|
11648 |
auto_refresh: true,
|
11649 |
sort_by: 'sent_at',
|
@@ -11820,14 +11810,14 @@ webpackJsonp([0],{
|
|
11820 |
}
|
11821 |
});
|
11822 |
},
|
11823 |
-
renderQueueStatus: function renderQueueStatus(newsletter,
|
11824 |
if (!newsletter.queue) {
|
11825 |
return _react2['default'].createElement(
|
11826 |
'span',
|
11827 |
null,
|
11828 |
_mailpoet2['default'].I18n.t('notSentYet')
|
11829 |
);
|
11830 |
-
} else if (
|
11831 |
return _react2['default'].createElement(
|
11832 |
'span',
|
11833 |
null,
|
@@ -11889,12 +11879,12 @@ webpackJsonp([0],{
|
|
11889 |
);
|
11890 |
}
|
11891 |
|
11892 |
-
var
|
11893 |
|
11894 |
if (isNaN(percentage)) {
|
11895 |
percentage = _mailpoet2['default'].I18n.t('noSubscribers');
|
11896 |
} else {
|
11897 |
-
|
11898 |
percentage += '%';
|
11899 |
}
|
11900 |
|
@@ -11906,7 +11896,7 @@ webpackJsonp([0],{
|
|
11906 |
{ className: progressClasses },
|
11907 |
_react2['default'].createElement('span', {
|
11908 |
className: 'mailpoet_progress_bar',
|
11909 |
-
style: { width:
|
11910 |
}),
|
11911 |
_react2['default'].createElement(
|
11912 |
'span',
|
@@ -11928,8 +11918,8 @@ webpackJsonp([0],{
|
|
11928 |
};
|
11929 |
|
11930 |
var StatisticsMixin = {
|
11931 |
-
renderStatistics: function renderStatistics(newsletter,
|
11932 |
-
var sent =
|
11933 |
if (sent === undefined) {
|
11934 |
// condition for standard and post notification listings
|
11935 |
sent = newsletter.statistics && newsletter.queue && newsletter.queue.status !== 'scheduled';
|
@@ -11947,50 +11937,50 @@ webpackJsonp([0],{
|
|
11947 |
params = _wpJsHooks2['default'].applyFilters('mailpoet_newsletters_listing_stats_before', params, newsletter);
|
11948 |
|
11949 |
// welcome emails provide explicit total_sent value
|
11950 |
-
var
|
11951 |
|
11952 |
-
var
|
11953 |
-
var
|
11954 |
-
var
|
11955 |
|
11956 |
-
if (
|
11957 |
-
|
11958 |
-
|
11959 |
-
|
11960 |
}
|
11961 |
|
11962 |
// format to 1 decimal place
|
11963 |
-
var
|
11964 |
-
var
|
11965 |
-
var
|
11966 |
-
|
11967 |
-
var
|
11968 |
-
var
|
11969 |
-
var
|
11970 |
-
var
|
11971 |
-
var
|
11972 |
-
if (
|
11973 |
// standard emails and post notifications:
|
11974 |
// display green box for newsletters that were just sent
|
11975 |
-
|
11976 |
-
|
11977 |
-
|
11978 |
-
|
11979 |
-
|
11980 |
} else {
|
11981 |
// welcome emails: no green box and KB link
|
11982 |
-
|
11983 |
-
|
11984 |
}
|
11985 |
|
11986 |
var improveStatsKBLink = 'http://beta.docs.mailpoet.com/article/191-how-to-improve-my-open-and-click-rates';
|
11987 |
|
11988 |
// thresholds to display badges
|
11989 |
-
var
|
11990 |
-
var
|
11991 |
|
11992 |
var content = undefined;
|
11993 |
-
if (
|
11994 |
// display stats with badges
|
11995 |
content = _react2['default'].createElement(
|
11996 |
'div',
|
@@ -12001,12 +11991,12 @@ webpackJsonp([0],{
|
|
12001 |
_react2['default'].createElement(
|
12002 |
'span',
|
12003 |
null,
|
12004 |
-
|
12005 |
'% '
|
12006 |
),
|
12007 |
_react2['default'].createElement(_newslettersBadgesStatsJsx2['default'], {
|
12008 |
stat: 'opened',
|
12009 |
-
rate:
|
12010 |
tooltipId: 'opened-' + newsletter.id
|
12011 |
})
|
12012 |
),
|
@@ -12016,12 +12006,12 @@ webpackJsonp([0],{
|
|
12016 |
_react2['default'].createElement(
|
12017 |
'span',
|
12018 |
null,
|
12019 |
-
|
12020 |
'% '
|
12021 |
),
|
12022 |
_react2['default'].createElement(_newslettersBadgesStatsJsx2['default'], {
|
12023 |
stat: 'clicked',
|
12024 |
-
rate:
|
12025 |
tooltipId: 'clicked-' + newsletter.id
|
12026 |
})
|
12027 |
),
|
@@ -12031,7 +12021,7 @@ webpackJsonp([0],{
|
|
12031 |
_react2['default'].createElement(
|
12032 |
'span',
|
12033 |
{ className: 'mailpoet_stat_hidden' },
|
12034 |
-
|
12035 |
'%'
|
12036 |
)
|
12037 |
)
|
@@ -12044,36 +12034,36 @@ webpackJsonp([0],{
|
|
12044 |
_react2['default'].createElement(
|
12045 |
'span',
|
12046 |
{ className: 'mailpoet_stats_text' },
|
12047 |
-
|
12048 |
'%,',
|
12049 |
' ',
|
12050 |
-
|
12051 |
'%',
|
12052 |
_react2['default'].createElement(
|
12053 |
'span',
|
12054 |
{ className: 'mailpoet_stat_hidden' },
|
12055 |
', ',
|
12056 |
-
|
12057 |
'%'
|
12058 |
)
|
12059 |
),
|
12060 |
-
|
12061 |
'div',
|
12062 |
{ className: 'mailpoet_badge mailpoet_badge_green' },
|
12063 |
-
_mailpoet2['default'].I18n.t('checkBackInHours').replace('%$1d',
|
12064 |
)
|
12065 |
);
|
12066 |
}
|
12067 |
|
12068 |
// thresholds to display bad open rate help
|
12069 |
-
var
|
12070 |
-
var
|
12071 |
-
var
|
12072 |
|
12073 |
-
var
|
12074 |
-
if (
|
12075 |
// help link for bad open rate
|
12076 |
-
|
12077 |
'div',
|
12078 |
null,
|
12079 |
_react2['default'].createElement(
|
@@ -12088,7 +12078,7 @@ webpackJsonp([0],{
|
|
12088 |
);
|
12089 |
}
|
12090 |
|
12091 |
-
if (
|
12092 |
// wrap content in a link
|
12093 |
if (params.externalLink) {
|
12094 |
return _react2['default'].createElement(
|
@@ -12103,7 +12093,7 @@ webpackJsonp([0],{
|
|
12103 |
},
|
12104 |
content
|
12105 |
),
|
12106 |
-
|
12107 |
);
|
12108 |
}
|
12109 |
return _react2['default'].createElement(
|
@@ -12118,7 +12108,7 @@ webpackJsonp([0],{
|
|
12118 |
},
|
12119 |
content
|
12120 |
),
|
12121 |
-
|
12122 |
);
|
12123 |
}
|
12124 |
|
@@ -12126,7 +12116,7 @@ webpackJsonp([0],{
|
|
12126 |
'div',
|
12127 |
null,
|
12128 |
content,
|
12129 |
-
|
12130 |
);
|
12131 |
},
|
12132 |
addStatsCTAAction: function addStatsCTAAction(actions) {
|
@@ -12144,8 +12134,8 @@ webpackJsonp([0],{
|
|
12144 |
},
|
12145 |
display: function display(newsletter) {
|
12146 |
// welcome emails provide explicit total_sent value
|
12147 |
-
var
|
12148 |
-
return
|
12149 |
}
|
12150 |
});
|
12151 |
return actions;
|
@@ -12173,8 +12163,8 @@ webpackJsonp([0],{
|
|
12173 |
}
|
12174 |
},
|
12175 |
getMailerError: function getMailerError(state) {
|
12176 |
-
var
|
12177 |
-
var
|
12178 |
return _react2['default'].createElement(
|
12179 |
'a',
|
12180 |
{ href: '?page=mailpoet-settings#mta', key: 'check-sending' },
|
@@ -12182,12 +12172,12 @@ webpackJsonp([0],{
|
|
12182 |
);
|
12183 |
});
|
12184 |
if (state.meta.mta_log.error.operation === 'send') {
|
12185 |
-
|
12186 |
} else {
|
12187 |
-
|
12188 |
}
|
12189 |
if (state.meta.mta_log.error.error_code) {
|
12190 |
-
|
12191 |
}
|
12192 |
return _react2['default'].createElement(
|
12193 |
'div',
|
@@ -12195,12 +12185,12 @@ webpackJsonp([0],{
|
|
12195 |
_react2['default'].createElement(
|
12196 |
'p',
|
12197 |
null,
|
12198 |
-
|
12199 |
),
|
12200 |
_react2['default'].createElement(
|
12201 |
'p',
|
12202 |
null,
|
12203 |
-
|
12204 |
),
|
12205 |
_react2['default'].createElement(
|
12206 |
'p',
|
@@ -12280,13 +12270,13 @@ webpackJsonp([0],{
|
|
12280 |
|
12281 |
var _wpJsHooks2 = _interopRequireDefault(_wpJsHooks);
|
12282 |
|
12283 |
-
var
|
12284 |
-
var
|
12285 |
-
var
|
12286 |
|
12287 |
var messages = {
|
12288 |
onTrash: function onTrash(response) {
|
12289 |
-
var count =
|
12290 |
var message = null;
|
12291 |
|
12292 |
if (count === 1) {
|
@@ -12297,7 +12287,7 @@ webpackJsonp([0],{
|
|
12297 |
_mailpoet2['default'].Notice.success(message);
|
12298 |
},
|
12299 |
onDelete: function onDelete(response) {
|
12300 |
-
var count =
|
12301 |
var message = null;
|
12302 |
|
12303 |
if (count === 1) {
|
@@ -12308,7 +12298,7 @@ webpackJsonp([0],{
|
|
12308 |
_mailpoet2['default'].Notice.success(message);
|
12309 |
},
|
12310 |
onRestore: function onRestore(response) {
|
12311 |
-
var count =
|
12312 |
var message = null;
|
12313 |
|
12314 |
if (count === 1) {
|
@@ -12334,20 +12324,20 @@ webpackJsonp([0],{
|
|
12334 |
}, {
|
12335 |
name: 'statistics',
|
12336 |
label: _mailpoet2['default'].I18n.t('statistics'),
|
12337 |
-
display:
|
12338 |
}, {
|
12339 |
name: 'updated_at',
|
12340 |
label: _mailpoet2['default'].I18n.t('lastModifiedOn'),
|
12341 |
sortable: true
|
12342 |
}];
|
12343 |
|
12344 |
-
var
|
12345 |
name: 'trash',
|
12346 |
label: _mailpoet2['default'].I18n.t('moveToTrash'),
|
12347 |
onSuccess: messages.onTrash
|
12348 |
}];
|
12349 |
|
12350 |
-
var
|
12351 |
name: 'view',
|
12352 |
link: function link(newsletter) {
|
12353 |
return _react2['default'].createElement(
|
@@ -12370,7 +12360,7 @@ webpackJsonp([0],{
|
|
12370 |
}];
|
12371 |
|
12372 |
_wpJsHooks2['default'].addFilter('mailpoet_newsletters_listings_welcome_notification_actions', _newslettersListingsMixinsJsx.StatisticsMixin.addStatsCTAAction);
|
12373 |
-
|
12374 |
|
12375 |
var NewsletterListWelcome = _react2['default'].createClass({
|
12376 |
displayName: 'NewsletterListWelcome',
|
@@ -12388,7 +12378,7 @@ webpackJsonp([0],{
|
|
12388 |
endpoint: 'newsletters',
|
12389 |
action: 'setStatus',
|
12390 |
data: {
|
12391 |
-
id:
|
12392 |
status: e.target.value
|
12393 |
}
|
12394 |
}).done(function (response) {
|
@@ -12405,7 +12395,7 @@ webpackJsonp([0],{
|
|
12405 |
});
|
12406 |
},
|
12407 |
renderStatus: function renderStatus(newsletter) {
|
12408 |
-
var
|
12409 |
|
12410 |
return _react2['default'].createElement(
|
12411 |
'div',
|
@@ -12435,7 +12425,7 @@ webpackJsonp([0],{
|
|
12435 |
_react2['default'].createElement(
|
12436 |
'p',
|
12437 |
null,
|
12438 |
-
|
12439 |
)
|
12440 |
);
|
12441 |
},
|
@@ -12451,14 +12441,14 @@ webpackJsonp([0],{
|
|
12451 |
if (newsletter.options.role === 'mailpoet_all') {
|
12452 |
sendingEvent = _mailpoet2['default'].I18n.t('welcomeEventWPUserAnyRole');
|
12453 |
} else {
|
12454 |
-
sendingEvent = _mailpoet2['default'].I18n.t('welcomeEventWPUserWithRole').replace('%$1s',
|
12455 |
}
|
12456 |
break;
|
12457 |
|
12458 |
-
|
12459 |
// get segment
|
12460 |
-
segment = _underscore2['default'].find(
|
12461 |
-
return
|
12462 |
});
|
12463 |
|
12464 |
if (segment === undefined) {
|
@@ -12488,10 +12478,6 @@ webpackJsonp([0],{
|
|
12488 |
case 'weeks':
|
12489 |
sendingDelay = _mailpoet2['default'].I18n.t('sendingDelayWeeks').replace('%$1d', newsletter.options.afterTimeNumber);
|
12490 |
break;
|
12491 |
-
|
12492 |
-
default:
|
12493 |
-
sendingDelay = 'Invalid sending delay';
|
12494 |
-
break;
|
12495 |
}
|
12496 |
sendingEvent += ' [' + sendingDelay + ']';
|
12497 |
}
|
@@ -12538,7 +12524,7 @@ webpackJsonp([0],{
|
|
12538 |
{ className: 'column', 'data-colname': _mailpoet2['default'].I18n.t('settings') },
|
12539 |
this.renderSettings(newsletter)
|
12540 |
),
|
12541 |
-
|
12542 |
'td',
|
12543 |
{ className: 'column', 'data-colname': _mailpoet2['default'].I18n.t('statistics') },
|
12544 |
this.renderStatistics(newsletter, newsletter.total_sent > 0 && newsletter.statistics)
|
@@ -12579,8 +12565,8 @@ webpackJsonp([0],{
|
|
12579 |
base_url: 'welcome',
|
12580 |
onRenderItem: this.renderItem,
|
12581 |
columns: columns,
|
12582 |
-
bulk_actions:
|
12583 |
-
item_actions:
|
12584 |
messages: messages,
|
12585 |
auto_refresh: true,
|
12586 |
sort_by: 'updated_at',
|
@@ -12630,7 +12616,7 @@ webpackJsonp([0],{
|
|
12630 |
|
12631 |
var messages = {
|
12632 |
onTrash: function onTrash(response) {
|
12633 |
-
var count =
|
12634 |
var message = null;
|
12635 |
|
12636 |
if (count === 1) {
|
@@ -12641,7 +12627,7 @@ webpackJsonp([0],{
|
|
12641 |
_mailpoet2['default'].Notice.success(message);
|
12642 |
},
|
12643 |
onDelete: function onDelete(response) {
|
12644 |
-
var count =
|
12645 |
var message = null;
|
12646 |
|
12647 |
if (count === 1) {
|
@@ -12652,7 +12638,7 @@ webpackJsonp([0],{
|
|
12652 |
_mailpoet2['default'].Notice.success(message);
|
12653 |
},
|
12654 |
onRestore: function onRestore(response) {
|
12655 |
-
var count =
|
12656 |
var message = null;
|
12657 |
|
12658 |
if (count === 1) {
|
@@ -12685,13 +12671,13 @@ webpackJsonp([0],{
|
|
12685 |
sortable: true
|
12686 |
}];
|
12687 |
|
12688 |
-
var
|
12689 |
name: 'trash',
|
12690 |
label: _mailpoet2['default'].I18n.t('moveToTrash'),
|
12691 |
onSuccess: messages.onTrash
|
12692 |
}];
|
12693 |
|
12694 |
-
var
|
12695 |
name: 'view',
|
12696 |
link: function link(newsletter) {
|
12697 |
return _react2['default'].createElement(
|
@@ -12751,7 +12737,7 @@ webpackJsonp([0],{
|
|
12751 |
endpoint: 'newsletters',
|
12752 |
action: 'setStatus',
|
12753 |
data: {
|
12754 |
-
id:
|
12755 |
status: e.target.value
|
12756 |
}
|
12757 |
}).done(function (response) {
|
@@ -12826,10 +12812,6 @@ webpackJsonp([0],{
|
|
12826 |
case 'immediately':
|
12827 |
sendingFrequency = _mailpoet2['default'].I18n.t('sendImmediately');
|
12828 |
break;
|
12829 |
-
|
12830 |
-
default:
|
12831 |
-
sendingFrequency = 'Invalid sending frequency';
|
12832 |
-
break;
|
12833 |
}
|
12834 |
|
12835 |
return _react2['default'].createElement(
|
@@ -12841,7 +12823,7 @@ webpackJsonp([0],{
|
|
12841 |
);
|
12842 |
},
|
12843 |
renderHistoryLink: function renderHistoryLink(newsletter) {
|
12844 |
-
var childrenCount =
|
12845 |
if (childrenCount === 0) {
|
12846 |
return _mailpoet2['default'].I18n.t('notSentYet');
|
12847 |
}
|
@@ -12927,8 +12909,8 @@ webpackJsonp([0],{
|
|
12927 |
base_url: 'notification',
|
12928 |
onRenderItem: this.renderItem,
|
12929 |
columns: columns,
|
12930 |
-
bulk_actions:
|
12931 |
-
item_actions:
|
12932 |
messages: messages,
|
12933 |
auto_refresh: true,
|
12934 |
sort_by: 'updated_at',
|
@@ -12978,7 +12960,7 @@ webpackJsonp([0],{
|
|
12978 |
|
12979 |
var _newslettersListingsMixinsJsx = __webpack_require__(530);
|
12980 |
|
12981 |
-
var
|
12982 |
|
12983 |
var columns = [{
|
12984 |
name: 'subject',
|
@@ -12992,13 +12974,13 @@ webpackJsonp([0],{
|
|
12992 |
}, {
|
12993 |
name: 'statistics',
|
12994 |
label: _mailpoet2['default'].I18n.t('statistics'),
|
12995 |
-
display:
|
12996 |
}, {
|
12997 |
name: 'sent_at',
|
12998 |
label: _mailpoet2['default'].I18n.t('sentOn')
|
12999 |
}];
|
13000 |
|
13001 |
-
var
|
13002 |
name: 'view',
|
13003 |
link: function link(newsletter) {
|
13004 |
return _react2['default'].createElement(
|
@@ -13010,7 +12992,7 @@ webpackJsonp([0],{
|
|
13010 |
}];
|
13011 |
|
13012 |
_wpJsHooks2['default'].addFilter('mailpoet_newsletters_listings_notification_history_actions', _newslettersListingsMixinsJsx.StatisticsMixin.addStatsCTAAction);
|
13013 |
-
|
13014 |
|
13015 |
var NewsletterListNotificationHistory = _react2['default'].createClass({
|
13016 |
displayName: 'NewsletterListNotificationHistory',
|
@@ -13053,7 +13035,7 @@ webpackJsonp([0],{
|
|
13053 |
{ className: 'column', 'data-colname': _mailpoet2['default'].I18n.t('lists') },
|
13054 |
segments
|
13055 |
),
|
13056 |
-
|
13057 |
'td',
|
13058 |
{ className: 'column', 'data-colname': _mailpoet2['default'].I18n.t('statistics') },
|
13059 |
this.renderStatistics(newsletter, undefined, meta.current_time)
|
@@ -13098,7 +13080,7 @@ webpackJsonp([0],{
|
|
13098 |
base_url: 'notification/history/:parent_id',
|
13099 |
onRenderItem: this.renderItem,
|
13100 |
columns: columns,
|
13101 |
-
item_actions:
|
13102 |
auto_refresh: true,
|
13103 |
sort_by: 'sent_at',
|
13104 |
sort_order: 'desc',
|
@@ -13220,7 +13202,7 @@ webpackJsonp([0],{
|
|
13220 |
|
13221 |
var messages = {
|
13222 |
onTrash: function onTrash(response) {
|
13223 |
-
var count =
|
13224 |
var message = null;
|
13225 |
|
13226 |
if (count === 1) {
|
@@ -13231,7 +13213,7 @@ webpackJsonp([0],{
|
|
13231 |
_mailpoet2['default'].Notice.success(message);
|
13232 |
},
|
13233 |
onDelete: function onDelete(response) {
|
13234 |
-
var count =
|
13235 |
var message = null;
|
13236 |
|
13237 |
if (count === 1) {
|
@@ -13242,7 +13224,7 @@ webpackJsonp([0],{
|
|
13242 |
_mailpoet2['default'].Notice.success(message);
|
13243 |
},
|
13244 |
onRestore: function onRestore(response) {
|
13245 |
-
var count =
|
13246 |
var message = null;
|
13247 |
|
13248 |
if (count === 1) {
|
@@ -13254,13 +13236,13 @@ webpackJsonp([0],{
|
|
13254 |
}
|
13255 |
};
|
13256 |
|
13257 |
-
var
|
13258 |
name: 'trash',
|
13259 |
label: _mailpoet2['default'].I18n.t('moveToTrash'),
|
13260 |
onSuccess: messages.onTrash
|
13261 |
}];
|
13262 |
|
13263 |
-
var
|
13264 |
name: 'edit',
|
13265 |
link: function link(item) {
|
13266 |
return _react2['default'].createElement(
|
@@ -13357,22 +13339,22 @@ webpackJsonp([0],{
|
|
13357 |
renderItem: function renderItem(segment, actions) {
|
13358 |
var rowClasses = (0, _classnames2['default'])('manage-column', 'column-primary', 'has-row-actions');
|
13359 |
|
13360 |
-
var subscribed =
|
13361 |
-
var unconfirmed =
|
13362 |
-
var unsubscribed =
|
13363 |
-
var bounced =
|
13364 |
|
13365 |
-
var
|
13366 |
|
13367 |
if (segment.type === 'wp_users') {
|
13368 |
// the WP users segment is not editable so just display its name
|
13369 |
-
|
13370 |
'span',
|
13371 |
{ className: 'row-title' },
|
13372 |
segment.name
|
13373 |
);
|
13374 |
} else {
|
13375 |
-
|
13376 |
_reactRouter.Link,
|
13377 |
{
|
13378 |
className: 'row-title',
|
@@ -13391,7 +13373,7 @@ webpackJsonp([0],{
|
|
13391 |
_react2['default'].createElement(
|
13392 |
'strong',
|
13393 |
null,
|
13394 |
-
|
13395 |
),
|
13396 |
actions
|
13397 |
),
|
@@ -13475,8 +13457,8 @@ webpackJsonp([0],{
|
|
13475 |
endpoint: 'segments',
|
13476 |
onRenderItem: this.renderItem,
|
13477 |
columns: columns,
|
13478 |
-
bulk_actions:
|
13479 |
-
item_actions:
|
13480 |
sort_by: 'name',
|
13481 |
sort_order: 'asc'
|
13482 |
})
|
@@ -13657,7 +13639,7 @@ webpackJsonp([0],{
|
|
13657 |
|
13658 |
var messages = {
|
13659 |
onTrash: function onTrash(response) {
|
13660 |
-
var count =
|
13661 |
var message = null;
|
13662 |
|
13663 |
if (count === 1) {
|
@@ -13668,7 +13650,7 @@ webpackJsonp([0],{
|
|
13668 |
_mailpoet2['default'].Notice.success(message);
|
13669 |
},
|
13670 |
onDelete: function onDelete(response) {
|
13671 |
-
var count =
|
13672 |
var message = null;
|
13673 |
|
13674 |
if (count === 1) {
|
@@ -13679,7 +13661,7 @@ webpackJsonp([0],{
|
|
13679 |
_mailpoet2['default'].Notice.success(message);
|
13680 |
},
|
13681 |
onRestore: function onRestore(response) {
|
13682 |
-
var count =
|
13683 |
var message = null;
|
13684 |
|
13685 |
if (count === 1) {
|
@@ -13691,13 +13673,13 @@ webpackJsonp([0],{
|
|
13691 |
}
|
13692 |
};
|
13693 |
|
13694 |
-
var
|
13695 |
name: 'trash',
|
13696 |
label: _mailpoet2['default'].I18n.t('moveToTrash'),
|
13697 |
onSuccess: messages.onTrash
|
13698 |
}];
|
13699 |
|
13700 |
-
var
|
13701 |
name: 'edit',
|
13702 |
label: _mailpoet2['default'].I18n.t('edit'),
|
13703 |
link: function link(item) {
|
@@ -13752,7 +13734,7 @@ webpackJsonp([0],{
|
|
13752 |
});
|
13753 |
},
|
13754 |
renderItem: function renderItem(form, actions) {
|
13755 |
-
var
|
13756 |
|
13757 |
var segments = window.mailpoet_segments.filter(function (segment) {
|
13758 |
return _jquery2['default'].inArray(segment.id, form.segments) !== -1;
|
@@ -13769,7 +13751,7 @@ webpackJsonp([0],{
|
|
13769 |
null,
|
13770 |
_react2['default'].createElement(
|
13771 |
'td',
|
13772 |
-
{ className:
|
13773 |
_react2['default'].createElement(
|
13774 |
'strong',
|
13775 |
null,
|
@@ -13833,8 +13815,8 @@ webpackJsonp([0],{
|
|
13833 |
endpoint: 'forms',
|
13834 |
onRenderItem: this.renderItem,
|
13835 |
columns: columns,
|
13836 |
-
bulk_actions:
|
13837 |
-
item_actions:
|
13838 |
})
|
13839 |
);
|
13840 |
}
|
@@ -16008,7 +15990,7 @@ webpackJsonp([0],{
|
|
16008 |
}
|
16009 |
|
16010 |
function renderMSSSection(data) {
|
16011 |
-
if (!data.mss.enabled) return
|
16012 |
|
16013 |
var status = data.mss.enabled.isReachable;
|
16014 |
|
92 |
|
93 |
var messages = {
|
94 |
onTrash: function onTrash(response) {
|
95 |
+
var count = ~ ~response.meta.count;
|
96 |
var message = null;
|
97 |
|
98 |
if (count === 1) {
|
103 |
_mailpoet2['default'].Notice.success(message);
|
104 |
},
|
105 |
onDelete: function onDelete(response) {
|
106 |
+
var count = ~ ~response.meta.count;
|
107 |
var message = null;
|
108 |
|
109 |
if (count === 1) {
|
114 |
_mailpoet2['default'].Notice.success(message);
|
115 |
},
|
116 |
onRestore: function onRestore(response) {
|
117 |
+
var count = ~ ~response.meta.count;
|
118 |
var message = null;
|
119 |
|
120 |
if (count === 1) {
|
150 |
}
|
151 |
};
|
152 |
|
153 |
+
var bulk_actions = [{
|
154 |
name: 'moveToList',
|
155 |
label: _mailpoet2['default'].I18n.t('moveToList'),
|
156 |
onSelect: function onSelect() {
|
167 |
},
|
168 |
getData: function getData() {
|
169 |
return {
|
170 |
+
segment_id: ~ ~(0, _jquery2['default'])('#move_to_segment').val()
|
171 |
};
|
172 |
},
|
173 |
onSuccess: function onSuccess(response) {
|
174 |
+
_mailpoet2['default'].Notice.success(_mailpoet2['default'].I18n.t('multipleSubscribersMovedToList').replace('%$1d', (~ ~response.meta.count).toLocaleString()).replace('%$2s', response.meta.segment));
|
175 |
}
|
176 |
}, {
|
177 |
name: 'addToList',
|
190 |
},
|
191 |
getData: function getData() {
|
192 |
return {
|
193 |
+
segment_id: ~ ~(0, _jquery2['default'])('#add_to_segment').val()
|
194 |
};
|
195 |
},
|
196 |
onSuccess: function onSuccess(response) {
|
197 |
+
_mailpoet2['default'].Notice.success(_mailpoet2['default'].I18n.t('multipleSubscribersAddedToList').replace('%$1d', (~ ~response.meta.count).toLocaleString()).replace('%$2s', response.meta.segment));
|
198 |
}
|
199 |
}, {
|
200 |
name: 'removeFromList',
|
213 |
},
|
214 |
getData: function getData() {
|
215 |
return {
|
216 |
+
segment_id: ~ ~(0, _jquery2['default'])('#remove_from_segment').val()
|
217 |
};
|
218 |
},
|
219 |
onSuccess: function onSuccess(response) {
|
220 |
+
_mailpoet2['default'].Notice.success(_mailpoet2['default'].I18n.t('multipleSubscribersRemovedFromList').replace('%$1d', (~ ~response.meta.count).toLocaleString()).replace('%$2s', response.meta.segment));
|
221 |
}
|
222 |
}, {
|
223 |
name: 'removeFromAllLists',
|
224 |
label: _mailpoet2['default'].I18n.t('removeFromAllLists'),
|
225 |
onSuccess: function onSuccess(response) {
|
226 |
+
_mailpoet2['default'].Notice.success(_mailpoet2['default'].I18n.t('multipleSubscribersRemovedFromAllLists').replace('%$1d', (~ ~response.meta.count).toLocaleString()));
|
227 |
}
|
228 |
}, {
|
229 |
name: 'sendConfirmationEmail',
|
230 |
label: _mailpoet2['default'].I18n.t('resendConfirmationEmail'),
|
231 |
onSuccess: function onSuccess(response) {
|
232 |
+
_mailpoet2['default'].Notice.success(_mailpoet2['default'].I18n.t('multipleConfirmationEmailsSent').replace('%$1d', (~ ~response.meta.count).toLocaleString()));
|
233 |
}
|
234 |
}, {
|
235 |
name: 'trash',
|
237 |
onSuccess: messages.onTrash
|
238 |
}];
|
239 |
|
240 |
+
var item_actions = [{
|
241 |
name: 'edit',
|
242 |
label: _mailpoet2['default'].I18n.t('edit'),
|
243 |
link: function link(subscriber) {
|
250 |
}, {
|
251 |
name: 'trash',
|
252 |
display: function display(subscriber) {
|
253 |
+
return !!(~ ~subscriber.wp_user_id === 0);
|
254 |
}
|
255 |
}];
|
256 |
|
257 |
var SubscriberList = _react2['default'].createClass({
|
258 |
displayName: 'SubscriberList',
|
259 |
|
260 |
+
getSegmentFromId: function getSegmentFromId(segment_id) {
|
261 |
var result = false;
|
262 |
+
window.mailpoet_segments.map(function (segment) {
|
263 |
+
if (segment.id === segment_id) {
|
264 |
result = segment;
|
265 |
}
|
266 |
});
|
269 |
renderItem: function renderItem(subscriber, actions) {
|
270 |
var _this = this;
|
271 |
|
272 |
+
var row_classes = (0, _classnames2['default'])('manage-column', 'column-primary', 'has-row-actions', 'column-username');
|
273 |
|
274 |
var status = '';
|
275 |
|
289 |
case 'bounced':
|
290 |
status = _mailpoet2['default'].I18n.t('bounced');
|
291 |
break;
|
|
|
|
|
|
|
|
|
292 |
}
|
293 |
|
294 |
var segments = false;
|
296 |
// Subscriptions
|
297 |
if (subscriber.subscriptions.length > 0) {
|
298 |
(function () {
|
299 |
+
var subscribed_segments = [];
|
300 |
|
301 |
+
subscriber.subscriptions.map(function (subscription) {
|
302 |
var segment = _this.getSegmentFromId(subscription.segment_id);
|
303 |
if (segment === false) return;
|
304 |
if (subscription.status === 'subscribed') {
|
305 |
+
subscribed_segments.push(segment.name);
|
306 |
}
|
307 |
});
|
308 |
|
309 |
segments = _react2['default'].createElement(
|
310 |
'span',
|
311 |
null,
|
312 |
+
subscribed_segments.join(', ')
|
313 |
);
|
314 |
})();
|
315 |
}
|
319 |
null,
|
320 |
_react2['default'].createElement(
|
321 |
'td',
|
322 |
+
{ className: row_classes },
|
323 |
_react2['default'].createElement(
|
324 |
'strong',
|
325 |
null,
|
413 |
endpoint: 'subscribers',
|
414 |
onRenderItem: this.renderItem,
|
415 |
columns: columns,
|
416 |
+
bulk_actions: bulk_actions,
|
417 |
+
item_actions: item_actions,
|
418 |
messages: messages,
|
419 |
sort_by: 'created_at',
|
420 |
sort_order: 'desc'
|
449 |
label: MailPoet.I18n.t('email'),
|
450 |
type: 'text',
|
451 |
disabled: function disabled(subscriber) {
|
452 |
+
return ~ ~(subscriber.wp_user_id > 0);
|
453 |
}
|
454 |
}, {
|
455 |
name: 'first_name',
|
456 |
label: MailPoet.I18n.t('firstname'),
|
457 |
type: 'text',
|
458 |
disabled: function disabled(subscriber) {
|
459 |
+
return ~ ~(subscriber.wp_user_id > 0);
|
460 |
}
|
461 |
}, {
|
462 |
name: 'last_name',
|
463 |
label: MailPoet.I18n.t('lastname'),
|
464 |
type: 'text',
|
465 |
disabled: function disabled(subscriber) {
|
466 |
+
return ~ ~(subscriber.wp_user_id > 0);
|
467 |
}
|
468 |
}, {
|
469 |
name: 'status',
|
476 |
bounced: MailPoet.I18n.t('bounced')
|
477 |
},
|
478 |
filter: function filter(subscriber, value) {
|
479 |
+
if (~ ~subscriber.wp_user_id > 0 && value === 'unconfirmed') {
|
480 |
return false;
|
481 |
}
|
482 |
return true;
|
494 |
return null;
|
495 |
}
|
496 |
|
497 |
+
return subscriber.subscriptions.map(function (subscription) {
|
498 |
+
if (subscription.status === 'subscribed') {
|
499 |
+
return subscription.segment_id;
|
500 |
+
}
|
501 |
});
|
502 |
},
|
503 |
filter: function filter(segment) {
|
504 |
+
return !!(!segment.deleted_at && segment.type === 'default');
|
505 |
},
|
506 |
getLabel: function getLabel(segment) {
|
507 |
return segment.name + ' (' + segment.subscribers + ')';
|
510 |
var label = '';
|
511 |
|
512 |
if (subscriber.subscriptions !== undefined) {
|
513 |
+
subscriber.subscriptions.map(function (subscription) {
|
514 |
if (segment.id === subscription.segment_id) {
|
515 |
label = segment.name;
|
516 |
|
517 |
if (subscription.status === 'unsubscribed') {
|
518 |
+
var unsubscribed_at = MailPoet.Date.format(subscription.updated_at);
|
519 |
+
label += ' (%$1s)'.replace('%$1s', MailPoet.I18n.t('unsubscribedOn').replace('%$1s', unsubscribed_at));
|
520 |
}
|
521 |
}
|
522 |
});
|
525 |
}
|
526 |
}];
|
527 |
|
528 |
+
var custom_fields = window.mailpoet_custom_fields || [];
|
529 |
+
custom_fields.map(function (custom_field) {
|
530 |
var field = {
|
531 |
+
name: 'cf_' + custom_field.id,
|
532 |
+
label: custom_field.name,
|
533 |
+
type: custom_field.type
|
534 |
};
|
535 |
+
if (custom_field.params) {
|
536 |
+
field.params = custom_field.params;
|
537 |
}
|
538 |
|
539 |
+
if (custom_field.params.values) {
|
540 |
+
field.values = custom_field.params.values;
|
541 |
}
|
542 |
|
543 |
// add placeholders for selects (date, select)
|
544 |
+
switch (custom_field.type) {
|
545 |
case 'date':
|
546 |
field.year_placeholder = MailPoet.I18n.t('year');
|
547 |
field.month_placeholder = MailPoet.I18n.t('month');
|
551 |
case 'select':
|
552 |
field.placeholder = '-';
|
553 |
break;
|
|
|
|
|
|
|
|
|
554 |
}
|
555 |
|
556 |
fields.push(field);
|
569 |
};
|
570 |
|
571 |
var beforeFormContent = function beforeFormContent(subscriber) {
|
572 |
+
if (~ ~subscriber.wp_user_id > 0) {
|
573 |
return React.createElement(
|
574 |
'p',
|
575 |
{ className: 'description' },
|
585 |
})
|
586 |
);
|
587 |
}
|
|
|
588 |
};
|
589 |
|
590 |
var afterFormContent = function afterFormContent() {
|
709 |
var container = document.getElementById('newsletters_container');
|
710 |
|
711 |
if (container) {
|
712 |
+
var extra_routes = [];
|
713 |
+
extra_routes = _wpJsHooks2['default'].applyFilters('mailpoet_newsletters_before_router', extra_routes);
|
714 |
|
715 |
+
var mailpoet_listing = _reactDom2['default'].render(_react2['default'].createElement(
|
716 |
_reactRouter.Router,
|
717 |
{ history: history },
|
718 |
_react2['default'].createElement(
|
729 |
_react2['default'].createElement(_reactRouter.Route, { path: 'new/notification', component: _newslettersTypesNotificationNotificationJsx2['default'] }),
|
730 |
_react2['default'].createElement(_reactRouter.Route, { name: 'template', path: 'template/:id', component: _newslettersTemplatesJsx2['default'] }),
|
731 |
_react2['default'].createElement(_reactRouter.Route, { path: 'send/:id', component: _newslettersSendJsx2['default'] }),
|
732 |
+
extra_routes.map(function (rt) {
|
733 |
return _react2['default'].createElement(_reactRouter.Route, { key: rt.path, path: rt.path, component: rt.component });
|
734 |
})
|
735 |
)
|
736 |
), container);
|
737 |
|
738 |
+
window.mailpoet_listing = mailpoet_listing;
|
739 |
}
|
740 |
/* Listings */ /* Newsletter: type selection */ /* New newsletter: types */ /* Template selection */ /* Sending options */ /* Extra routes */
|
741 |
|
971 |
};
|
972 |
|
973 |
reader.readAsText(file);
|
|
|
974 |
},
|
975 |
render: function render() {
|
976 |
return _react2['default'].createElement(
|
10466 |
return true;
|
10467 |
},
|
10468 |
render: function render() {
|
10469 |
+
var isPaused = this.state.item.status == 'sending' && this.state.item.queue && this.state.item.queue.status == 'paused';
|
10470 |
var fields = this.state.fields.map(function (field) {
|
10471 |
var newField = field;
|
10472 |
+
if (field.name == 'segments' || field.name == 'options') {
|
10473 |
newField.disabled = isPaused;
|
10474 |
}
|
10475 |
return newField;
|
10574 |
getLabel: function getLabel(segment) {
|
10575 |
return segment.name + ' (' + parseInt(segment.subscribers, 10).toLocaleString() + ')';
|
10576 |
},
|
10577 |
+
transformChangedValue: function transformChangedValue(segment_ids) {
|
10578 |
+
var all_segments = this.state.items;
|
10579 |
+
return _.map(segment_ids, function (id) {
|
10580 |
+
return _.find(all_segments, function (segment) {
|
10581 |
return segment.id === id;
|
10582 |
});
|
10583 |
});
|
10946 |
},
|
10947 |
propagateChange: function propagateChange() {
|
10948 |
if (this.props.onChange) {
|
10949 |
+
return this.props.onChange({
|
10950 |
target: {
|
10951 |
name: this.props.name || '',
|
10952 |
value: this.getDateTime()
|
11083 |
getLabel: function getLabel(segment) {
|
11084 |
return segment.name + ' (' + parseInt(segment.subscribers, 10).toLocaleString() + ')';
|
11085 |
},
|
11086 |
+
transformChangedValue: function transformChangedValue(segment_ids) {
|
11087 |
+
var all_segments = this.state.items;
|
11088 |
+
return _.map(segment_ids, function (id) {
|
11089 |
+
return _.find(all_segments, function (segment) {
|
11090 |
return segment.id === id;
|
11091 |
});
|
11092 |
});
|
11420 |
|
11421 |
var _newslettersListingsMixinsJsx = __webpack_require__(530);
|
11422 |
|
11423 |
+
var mailpoet_tracking_enabled = !!window.mailpoet_tracking_enabled;
|
11424 |
|
11425 |
var messages = {
|
11426 |
onTrash: function onTrash(response) {
|
11427 |
+
var count = ~ ~response.meta.count;
|
11428 |
var message = null;
|
11429 |
|
11430 |
if (count === 1) {
|
11435 |
_mailpoet2['default'].Notice.success(message);
|
11436 |
},
|
11437 |
onDelete: function onDelete(response) {
|
11438 |
+
var count = ~ ~response.meta.count;
|
11439 |
var message = null;
|
11440 |
|
11441 |
if (count === 1) {
|
11446 |
_mailpoet2['default'].Notice.success(message);
|
11447 |
},
|
11448 |
onRestore: function onRestore(response) {
|
11449 |
+
var count = ~ ~response.meta.count;
|
11450 |
var message = null;
|
11451 |
|
11452 |
if (count === 1) {
|
11471 |
}, {
|
11472 |
name: 'statistics',
|
11473 |
label: _mailpoet2['default'].I18n.t('statistics'),
|
11474 |
+
display: mailpoet_tracking_enabled
|
11475 |
}, {
|
11476 |
name: 'sent_at',
|
11477 |
label: _mailpoet2['default'].I18n.t('sentOn'),
|
11478 |
sortable: true
|
11479 |
}];
|
11480 |
|
11481 |
+
var bulk_actions = [{
|
11482 |
name: 'trash',
|
11483 |
label: _mailpoet2['default'].I18n.t('moveToTrash'),
|
11484 |
onSuccess: messages.onTrash
|
11488 |
var redirectToEditing = function redirectToEditing() {
|
11489 |
window.location.href = '?page=mailpoet-newsletter-editor&id=' + newsletter.id;
|
11490 |
};
|
11491 |
+
if (!newsletter.queue || newsletter.status != 'sending' || newsletter.queue.status !== null) {
|
11492 |
redirectToEditing();
|
11493 |
} else {
|
11494 |
(0, _reactConfirmAlert.confirmAlert)({
|
11501 |
}
|
11502 |
};
|
11503 |
|
11504 |
+
var newsletter_actions = [{
|
11505 |
name: 'view',
|
11506 |
link: function link(newsletter) {
|
11507 |
return _react2['default'].createElement(
|
11541 |
}];
|
11542 |
|
11543 |
_wpJsHooks2['default'].addFilter('mailpoet_newsletters_listings_standard_actions', _newslettersListingsMixinsJsx.StatisticsMixin.addStatsCTAAction);
|
11544 |
+
newsletter_actions = _wpJsHooks2['default'].applyFilters('mailpoet_newsletters_listings_standard_actions', newsletter_actions);
|
11545 |
|
11546 |
var NewsletterListStandard = _react2['default'].createClass({
|
11547 |
displayName: 'NewsletterListStandard',
|
11587 |
{ className: 'column', 'data-colname': _mailpoet2['default'].I18n.t('lists') },
|
11588 |
segments
|
11589 |
),
|
11590 |
+
mailpoet_tracking_enabled === true ? _react2['default'].createElement(
|
11591 |
'td',
|
11592 |
{ className: 'column', 'data-colname': _mailpoet2['default'].I18n.t('statistics') },
|
11593 |
this.renderStatistics(newsletter, undefined, meta.current_time)
|
11632 |
base_url: 'standard',
|
11633 |
onRenderItem: this.renderItem,
|
11634 |
columns: columns,
|
11635 |
+
bulk_actions: bulk_actions,
|
11636 |
+
item_actions: newsletter_actions,
|
11637 |
messages: messages,
|
11638 |
auto_refresh: true,
|
11639 |
sort_by: 'sent_at',
|
11810 |
}
|
11811 |
});
|
11812 |
},
|
11813 |
+
renderQueueStatus: function renderQueueStatus(newsletter, mailer_log) {
|
11814 |
if (!newsletter.queue) {
|
11815 |
return _react2['default'].createElement(
|
11816 |
'span',
|
11817 |
null,
|
11818 |
_mailpoet2['default'].I18n.t('notSentYet')
|
11819 |
);
|
11820 |
+
} else if (mailer_log.status === 'paused' && newsletter.queue.status !== 'completed') {
|
11821 |
return _react2['default'].createElement(
|
11822 |
'span',
|
11823 |
null,
|
11879 |
);
|
11880 |
}
|
11881 |
|
11882 |
+
var progress_bar_width = 0;
|
11883 |
|
11884 |
if (isNaN(percentage)) {
|
11885 |
percentage = _mailpoet2['default'].I18n.t('noSubscribers');
|
11886 |
} else {
|
11887 |
+
progress_bar_width = percentage;
|
11888 |
percentage += '%';
|
11889 |
}
|
11890 |
|
11896 |
{ className: progressClasses },
|
11897 |
_react2['default'].createElement('span', {
|
11898 |
className: 'mailpoet_progress_bar',
|
11899 |
+
style: { width: progress_bar_width + '%' }
|
11900 |
}),
|
11901 |
_react2['default'].createElement(
|
11902 |
'span',
|
11918 |
};
|
11919 |
|
11920 |
var StatisticsMixin = {
|
11921 |
+
renderStatistics: function renderStatistics(newsletter, is_sent, current_time) {
|
11922 |
+
var sent = is_sent;
|
11923 |
if (sent === undefined) {
|
11924 |
// condition for standard and post notification listings
|
11925 |
sent = newsletter.statistics && newsletter.queue && newsletter.queue.status !== 'scheduled';
|
11937 |
params = _wpJsHooks2['default'].applyFilters('mailpoet_newsletters_listing_stats_before', params, newsletter);
|
11938 |
|
11939 |
// welcome emails provide explicit total_sent value
|
11940 |
+
var total_sent = ~ ~(newsletter.total_sent || newsletter.queue.count_processed);
|
11941 |
|
11942 |
+
var percentage_clicked = 0;
|
11943 |
+
var percentage_opened = 0;
|
11944 |
+
var percentage_unsubscribed = 0;
|
11945 |
|
11946 |
+
if (total_sent > 0) {
|
11947 |
+
percentage_clicked = newsletter.statistics.clicked * 100 / total_sent;
|
11948 |
+
percentage_opened = newsletter.statistics.opened * 100 / total_sent;
|
11949 |
+
percentage_unsubscribed = newsletter.statistics.unsubscribed * 100 / total_sent;
|
11950 |
}
|
11951 |
|
11952 |
// format to 1 decimal place
|
11953 |
+
var percentage_clicked_display = _mailpoet2['default'].Num.toLocaleFixed(percentage_clicked, 1);
|
11954 |
+
var percentage_opened_display = _mailpoet2['default'].Num.toLocaleFixed(percentage_opened, 1);
|
11955 |
+
var percentage_unsubscribed_display = _mailpoet2['default'].Num.toLocaleFixed(percentage_unsubscribed, 1);
|
11956 |
+
|
11957 |
+
var show_stats_timeout = undefined;
|
11958 |
+
var newsletter_date = undefined;
|
11959 |
+
var sent_hours_ago = undefined;
|
11960 |
+
var too_early_for_stats = undefined;
|
11961 |
+
var show_kb_link = undefined;
|
11962 |
+
if (current_time !== undefined) {
|
11963 |
// standard emails and post notifications:
|
11964 |
// display green box for newsletters that were just sent
|
11965 |
+
show_stats_timeout = 6; // in hours
|
11966 |
+
newsletter_date = newsletter.queue.scheduled_at || newsletter.queue.created_at;
|
11967 |
+
sent_hours_ago = (0, _moment2['default'])(current_time).diff((0, _moment2['default'])(newsletter_date), 'hours');
|
11968 |
+
too_early_for_stats = sent_hours_ago < show_stats_timeout;
|
11969 |
+
show_kb_link = true;
|
11970 |
} else {
|
11971 |
// welcome emails: no green box and KB link
|
11972 |
+
too_early_for_stats = false;
|
11973 |
+
show_kb_link = false;
|
11974 |
}
|
11975 |
|
11976 |
var improveStatsKBLink = 'http://beta.docs.mailpoet.com/article/191-how-to-improve-my-open-and-click-rates';
|
11977 |
|
11978 |
// thresholds to display badges
|
11979 |
+
var min_newsletters_sent = 20;
|
11980 |
+
var min_newsletter_opens = 5;
|
11981 |
|
11982 |
var content = undefined;
|
11983 |
+
if (total_sent >= min_newsletters_sent && newsletter.statistics.opened >= min_newsletter_opens && !too_early_for_stats) {
|
11984 |
// display stats with badges
|
11985 |
content = _react2['default'].createElement(
|
11986 |
'div',
|
11991 |
_react2['default'].createElement(
|
11992 |
'span',
|
11993 |
null,
|
11994 |
+
percentage_opened_display,
|
11995 |
'% '
|
11996 |
),
|
11997 |
_react2['default'].createElement(_newslettersBadgesStatsJsx2['default'], {
|
11998 |
stat: 'opened',
|
11999 |
+
rate: percentage_opened,
|
12000 |
tooltipId: 'opened-' + newsletter.id
|
12001 |
})
|
12002 |
),
|
12006 |
_react2['default'].createElement(
|
12007 |
'span',
|
12008 |
null,
|
12009 |
+
percentage_clicked_display,
|
12010 |
'% '
|
12011 |
),
|
12012 |
_react2['default'].createElement(_newslettersBadgesStatsJsx2['default'], {
|
12013 |
stat: 'clicked',
|
12014 |
+
rate: percentage_clicked,
|
12015 |
tooltipId: 'clicked-' + newsletter.id
|
12016 |
})
|
12017 |
),
|
12021 |
_react2['default'].createElement(
|
12022 |
'span',
|
12023 |
{ className: 'mailpoet_stat_hidden' },
|
12024 |
+
percentage_unsubscribed_display,
|
12025 |
'%'
|
12026 |
)
|
12027 |
)
|
12034 |
_react2['default'].createElement(
|
12035 |
'span',
|
12036 |
{ className: 'mailpoet_stats_text' },
|
12037 |
+
percentage_opened_display,
|
12038 |
'%,',
|
12039 |
' ',
|
12040 |
+
percentage_clicked_display,
|
12041 |
'%',
|
12042 |
_react2['default'].createElement(
|
12043 |
'span',
|
12044 |
{ className: 'mailpoet_stat_hidden' },
|
12045 |
', ',
|
12046 |
+
percentage_unsubscribed_display,
|
12047 |
'%'
|
12048 |
)
|
12049 |
),
|
12050 |
+
too_early_for_stats && _react2['default'].createElement(
|
12051 |
'div',
|
12052 |
{ className: 'mailpoet_badge mailpoet_badge_green' },
|
12053 |
+
_mailpoet2['default'].I18n.t('checkBackInHours').replace('%$1d', show_stats_timeout - sent_hours_ago)
|
12054 |
)
|
12055 |
);
|
12056 |
}
|
12057 |
|
12058 |
// thresholds to display bad open rate help
|
12059 |
+
var max_percentage_opened = 5;
|
12060 |
+
var min_sent_hours_ago = 24;
|
12061 |
+
var min_total_sent = 10;
|
12062 |
|
12063 |
+
var after_content = undefined;
|
12064 |
+
if (show_kb_link && percentage_opened < max_percentage_opened && sent_hours_ago >= min_sent_hours_ago && total_sent >= min_total_sent) {
|
12065 |
// help link for bad open rate
|
12066 |
+
after_content = _react2['default'].createElement(
|
12067 |
'div',
|
12068 |
null,
|
12069 |
_react2['default'].createElement(
|
12078 |
);
|
12079 |
}
|
12080 |
|
12081 |
+
if (total_sent > 0 && params.link) {
|
12082 |
// wrap content in a link
|
12083 |
if (params.externalLink) {
|
12084 |
return _react2['default'].createElement(
|
12093 |
},
|
12094 |
content
|
12095 |
),
|
12096 |
+
after_content
|
12097 |
);
|
12098 |
}
|
12099 |
return _react2['default'].createElement(
|
12108 |
},
|
12109 |
content
|
12110 |
),
|
12111 |
+
after_content
|
12112 |
);
|
12113 |
}
|
12114 |
|
12116 |
'div',
|
12117 |
null,
|
12118 |
content,
|
12119 |
+
after_content
|
12120 |
);
|
12121 |
},
|
12122 |
addStatsCTAAction: function addStatsCTAAction(actions) {
|
12134 |
},
|
12135 |
display: function display(newsletter) {
|
12136 |
// welcome emails provide explicit total_sent value
|
12137 |
+
var count_processed = newsletter.queue && newsletter.queue.count_processed;
|
12138 |
+
return ~ ~(newsletter.total_sent || count_processed) > 0;
|
12139 |
}
|
12140 |
});
|
12141 |
return actions;
|
12163 |
}
|
12164 |
},
|
12165 |
getMailerError: function getMailerError(state) {
|
12166 |
+
var mailer_error_notice = undefined;
|
12167 |
+
var mailer_check_settings_notice = (0, _reactStringReplace2['default'])(_mailpoet2['default'].I18n.t('mailerCheckSettingsNotice'), /\[link\](.*?)\[\/link\]/g, function (match) {
|
12168 |
return _react2['default'].createElement(
|
12169 |
'a',
|
12170 |
{ href: '?page=mailpoet-settings#mta', key: 'check-sending' },
|
12172 |
);
|
12173 |
});
|
12174 |
if (state.meta.mta_log.error.operation === 'send') {
|
12175 |
+
mailer_error_notice = _mailpoet2['default'].I18n.t('mailerSendErrorNotice').replace('%$1s', state.meta.mta_method).replace('%$2s', state.meta.mta_log.error.error_message);
|
12176 |
} else {
|
12177 |
+
mailer_error_notice = _mailpoet2['default'].I18n.t('mailerConnectionErrorNotice').replace('%$1s', state.meta.mta_log.error.error_message);
|
12178 |
}
|
12179 |
if (state.meta.mta_log.error.error_code) {
|
12180 |
+
mailer_error_notice += ' ' + _mailpoet2['default'].I18n.t('mailerErrorCode').replace('%$1s', state.meta.mta_log.error.error_code);
|
12181 |
}
|
12182 |
return _react2['default'].createElement(
|
12183 |
'div',
|
12185 |
_react2['default'].createElement(
|
12186 |
'p',
|
12187 |
null,
|
12188 |
+
mailer_error_notice
|
12189 |
),
|
12190 |
_react2['default'].createElement(
|
12191 |
'p',
|
12192 |
null,
|
12193 |
+
mailer_check_settings_notice
|
12194 |
),
|
12195 |
_react2['default'].createElement(
|
12196 |
'p',
|
12270 |
|
12271 |
var _wpJsHooks2 = _interopRequireDefault(_wpJsHooks);
|
12272 |
|
12273 |
+
var mailpoet_roles = window.mailpoet_roles || {};
|
12274 |
+
var mailpoet_segments = window.mailpoet_segments || {};
|
12275 |
+
var mailpoet_tracking_enabled = !!window.mailpoet_tracking_enabled;
|
12276 |
|
12277 |
var messages = {
|
12278 |
onTrash: function onTrash(response) {
|
12279 |
+
var count = ~ ~response.meta.count;
|
12280 |
var message = null;
|
12281 |
|
12282 |
if (count === 1) {
|
12287 |
_mailpoet2['default'].Notice.success(message);
|
12288 |
},
|
12289 |
onDelete: function onDelete(response) {
|
12290 |
+
var count = ~ ~response.meta.count;
|
12291 |
var message = null;
|
12292 |
|
12293 |
if (count === 1) {
|
12298 |
_mailpoet2['default'].Notice.success(message);
|
12299 |
},
|
12300 |
onRestore: function onRestore(response) {
|
12301 |
+
var count = ~ ~response.meta.count;
|
12302 |
var message = null;
|
12303 |
|
12304 |
if (count === 1) {
|
12324 |
}, {
|
12325 |
name: 'statistics',
|
12326 |
label: _mailpoet2['default'].I18n.t('statistics'),
|
12327 |
+
display: mailpoet_tracking_enabled
|
12328 |
}, {
|
12329 |
name: 'updated_at',
|
12330 |
label: _mailpoet2['default'].I18n.t('lastModifiedOn'),
|
12331 |
sortable: true
|
12332 |
}];
|
12333 |
|
12334 |
+
var bulk_actions = [{
|
12335 |
name: 'trash',
|
12336 |
label: _mailpoet2['default'].I18n.t('moveToTrash'),
|
12337 |
onSuccess: messages.onTrash
|
12338 |
}];
|
12339 |
|
12340 |
+
var newsletter_actions = [{
|
12341 |
name: 'view',
|
12342 |
link: function link(newsletter) {
|
12343 |
return _react2['default'].createElement(
|
12360 |
}];
|
12361 |
|
12362 |
_wpJsHooks2['default'].addFilter('mailpoet_newsletters_listings_welcome_notification_actions', _newslettersListingsMixinsJsx.StatisticsMixin.addStatsCTAAction);
|
12363 |
+
newsletter_actions = _wpJsHooks2['default'].applyFilters('mailpoet_newsletters_listings_welcome_notification_actions', newsletter_actions);
|
12364 |
|
12365 |
var NewsletterListWelcome = _react2['default'].createClass({
|
12366 |
displayName: 'NewsletterListWelcome',
|
12378 |
endpoint: 'newsletters',
|
12379 |
action: 'setStatus',
|
12380 |
data: {
|
12381 |
+
id: ~ ~e.target.getAttribute('data-id'),
|
12382 |
status: e.target.value
|
12383 |
}
|
12384 |
}).done(function (response) {
|
12395 |
});
|
12396 |
},
|
12397 |
renderStatus: function renderStatus(newsletter) {
|
12398 |
+
var total_sent = _mailpoet2['default'].I18n.t('sentToXSubscribers').replace('%$1d', newsletter.total_sent.toLocaleString());
|
12399 |
|
12400 |
return _react2['default'].createElement(
|
12401 |
'div',
|
12425 |
_react2['default'].createElement(
|
12426 |
'p',
|
12427 |
null,
|
12428 |
+
total_sent
|
12429 |
)
|
12430 |
);
|
12431 |
},
|
12441 |
if (newsletter.options.role === 'mailpoet_all') {
|
12442 |
sendingEvent = _mailpoet2['default'].I18n.t('welcomeEventWPUserAnyRole');
|
12443 |
} else {
|
12444 |
+
sendingEvent = _mailpoet2['default'].I18n.t('welcomeEventWPUserWithRole').replace('%$1s', mailpoet_roles[newsletter.options.role]);
|
12445 |
}
|
12446 |
break;
|
12447 |
|
12448 |
+
case 'segment':
|
12449 |
// get segment
|
12450 |
+
segment = _underscore2['default'].find(mailpoet_segments, function (seg) {
|
12451 |
+
return ~ ~seg.id === ~ ~newsletter.options.segment;
|
12452 |
});
|
12453 |
|
12454 |
if (segment === undefined) {
|
12478 |
case 'weeks':
|
12479 |
sendingDelay = _mailpoet2['default'].I18n.t('sendingDelayWeeks').replace('%$1d', newsletter.options.afterTimeNumber);
|
12480 |
break;
|
|
|
|
|
|
|
|
|
12481 |
}
|
12482 |
sendingEvent += ' [' + sendingDelay + ']';
|
12483 |
}
|
12524 |
{ className: 'column', 'data-colname': _mailpoet2['default'].I18n.t('settings') },
|
12525 |
this.renderSettings(newsletter)
|
12526 |
),
|
12527 |
+
mailpoet_tracking_enabled === true ? _react2['default'].createElement(
|
12528 |
'td',
|
12529 |
{ className: 'column', 'data-colname': _mailpoet2['default'].I18n.t('statistics') },
|
12530 |
this.renderStatistics(newsletter, newsletter.total_sent > 0 && newsletter.statistics)
|
12565 |
base_url: 'welcome',
|
12566 |
onRenderItem: this.renderItem,
|
12567 |
columns: columns,
|
12568 |
+
bulk_actions: bulk_actions,
|
12569 |
+
item_actions: newsletter_actions,
|
12570 |
messages: messages,
|
12571 |
auto_refresh: true,
|
12572 |
sort_by: 'updated_at',
|
12616 |
|
12617 |
var messages = {
|
12618 |
onTrash: function onTrash(response) {
|
12619 |
+
var count = ~ ~response.meta.count;
|
12620 |
var message = null;
|
12621 |
|
12622 |
if (count === 1) {
|
12627 |
_mailpoet2['default'].Notice.success(message);
|
12628 |
},
|
12629 |
onDelete: function onDelete(response) {
|
12630 |
+
var count = ~ ~response.meta.count;
|
12631 |
var message = null;
|
12632 |
|
12633 |
if (count === 1) {
|
12638 |
_mailpoet2['default'].Notice.success(message);
|
12639 |
},
|
12640 |
onRestore: function onRestore(response) {
|
12641 |
+
var count = ~ ~response.meta.count;
|
12642 |
var message = null;
|
12643 |
|
12644 |
if (count === 1) {
|
12671 |
sortable: true
|
12672 |
}];
|
12673 |
|
12674 |
+
var bulk_actions = [{
|
12675 |
name: 'trash',
|
12676 |
label: _mailpoet2['default'].I18n.t('moveToTrash'),
|
12677 |
onSuccess: messages.onTrash
|
12678 |
}];
|
12679 |
|
12680 |
+
var newsletter_actions = [{
|
12681 |
name: 'view',
|
12682 |
link: function link(newsletter) {
|
12683 |
return _react2['default'].createElement(
|
12737 |
endpoint: 'newsletters',
|
12738 |
action: 'setStatus',
|
12739 |
data: {
|
12740 |
+
id: ~ ~e.target.getAttribute('data-id'),
|
12741 |
status: e.target.value
|
12742 |
}
|
12743 |
}).done(function (response) {
|
12812 |
case 'immediately':
|
12813 |
sendingFrequency = _mailpoet2['default'].I18n.t('sendImmediately');
|
12814 |
break;
|
|
|
|
|
|
|
|
|
12815 |
}
|
12816 |
|
12817 |
return _react2['default'].createElement(
|
12823 |
);
|
12824 |
},
|
12825 |
renderHistoryLink: function renderHistoryLink(newsletter) {
|
12826 |
+
var childrenCount = ~ ~newsletter.children_count;
|
12827 |
if (childrenCount === 0) {
|
12828 |
return _mailpoet2['default'].I18n.t('notSentYet');
|
12829 |
}
|
12909 |
base_url: 'notification',
|
12910 |
onRenderItem: this.renderItem,
|
12911 |
columns: columns,
|
12912 |
+
bulk_actions: bulk_actions,
|
12913 |
+
item_actions: newsletter_actions,
|
12914 |
messages: messages,
|
12915 |
auto_refresh: true,
|
12916 |
sort_by: 'updated_at',
|
12960 |
|
12961 |
var _newslettersListingsMixinsJsx = __webpack_require__(530);
|
12962 |
|
12963 |
+
var mailpoet_tracking_enabled = !!window.mailpoet_tracking_enabled;
|
12964 |
|
12965 |
var columns = [{
|
12966 |
name: 'subject',
|
12974 |
}, {
|
12975 |
name: 'statistics',
|
12976 |
label: _mailpoet2['default'].I18n.t('statistics'),
|
12977 |
+
display: mailpoet_tracking_enabled
|
12978 |
}, {
|
12979 |
name: 'sent_at',
|
12980 |
label: _mailpoet2['default'].I18n.t('sentOn')
|
12981 |
}];
|
12982 |
|
12983 |
+
var newsletter_actions = [{
|
12984 |
name: 'view',
|
12985 |
link: function link(newsletter) {
|
12986 |
return _react2['default'].createElement(
|
12992 |
}];
|
12993 |
|
12994 |
_wpJsHooks2['default'].addFilter('mailpoet_newsletters_listings_notification_history_actions', _newslettersListingsMixinsJsx.StatisticsMixin.addStatsCTAAction);
|
12995 |
+
newsletter_actions = _wpJsHooks2['default'].applyFilters('mailpoet_newsletters_listings_notification_history_actions', newsletter_actions);
|
12996 |
|
12997 |
var NewsletterListNotificationHistory = _react2['default'].createClass({
|
12998 |
displayName: 'NewsletterListNotificationHistory',
|
13035 |
{ className: 'column', 'data-colname': _mailpoet2['default'].I18n.t('lists') },
|
13036 |
segments
|
13037 |
),
|
13038 |
+
mailpoet_tracking_enabled === true ? _react2['default'].createElement(
|
13039 |
'td',
|
13040 |
{ className: 'column', 'data-colname': _mailpoet2['default'].I18n.t('statistics') },
|
13041 |
this.renderStatistics(newsletter, undefined, meta.current_time)
|
13080 |
base_url: 'notification/history/:parent_id',
|
13081 |
onRenderItem: this.renderItem,
|
13082 |
columns: columns,
|
13083 |
+
item_actions: newsletter_actions,
|
13084 |
auto_refresh: true,
|
13085 |
sort_by: 'sent_at',
|
13086 |
sort_order: 'desc',
|
13202 |
|
13203 |
var messages = {
|
13204 |
onTrash: function onTrash(response) {
|
13205 |
+
var count = ~ ~response.meta.count;
|
13206 |
var message = null;
|
13207 |
|
13208 |
if (count === 1) {
|
13213 |
_mailpoet2['default'].Notice.success(message);
|
13214 |
},
|
13215 |
onDelete: function onDelete(response) {
|
13216 |
+
var count = ~ ~response.meta.count;
|
13217 |
var message = null;
|
13218 |
|
13219 |
if (count === 1) {
|
13224 |
_mailpoet2['default'].Notice.success(message);
|
13225 |
},
|
13226 |
onRestore: function onRestore(response) {
|
13227 |
+
var count = ~ ~response.meta.count;
|
13228 |
var message = null;
|
13229 |
|
13230 |
if (count === 1) {
|
13236 |
}
|
13237 |
};
|
13238 |
|
13239 |
+
var bulk_actions = [{
|
13240 |
name: 'trash',
|
13241 |
label: _mailpoet2['default'].I18n.t('moveToTrash'),
|
13242 |
onSuccess: messages.onTrash
|
13243 |
}];
|
13244 |
|
13245 |
+
var item_actions = [{
|
13246 |
name: 'edit',
|
13247 |
link: function link(item) {
|
13248 |
return _react2['default'].createElement(
|
13339 |
renderItem: function renderItem(segment, actions) {
|
13340 |
var rowClasses = (0, _classnames2['default'])('manage-column', 'column-primary', 'has-row-actions');
|
13341 |
|
13342 |
+
var subscribed = ~ ~(segment.subscribers_count.subscribed || 0);
|
13343 |
+
var unconfirmed = ~ ~(segment.subscribers_count.unconfirmed || 0);
|
13344 |
+
var unsubscribed = ~ ~(segment.subscribers_count.unsubscribed || 0);
|
13345 |
+
var bounced = ~ ~(segment.subscribers_count.bounced || 0);
|
13346 |
|
13347 |
+
var segment_name = undefined;
|
13348 |
|
13349 |
if (segment.type === 'wp_users') {
|
13350 |
// the WP users segment is not editable so just display its name
|
13351 |
+
segment_name = _react2['default'].createElement(
|
13352 |
'span',
|
13353 |
{ className: 'row-title' },
|
13354 |
segment.name
|
13355 |
);
|
13356 |
} else {
|
13357 |
+
segment_name = _react2['default'].createElement(
|
13358 |
_reactRouter.Link,
|
13359 |
{
|
13360 |
className: 'row-title',
|
13373 |
_react2['default'].createElement(
|
13374 |
'strong',
|
13375 |
null,
|
13376 |
+
segment_name
|
13377 |
),
|
13378 |
actions
|
13379 |
),
|
13457 |
endpoint: 'segments',
|
13458 |
onRenderItem: this.renderItem,
|
13459 |
columns: columns,
|
13460 |
+
bulk_actions: bulk_actions,
|
13461 |
+
item_actions: item_actions,
|
13462 |
sort_by: 'name',
|
13463 |
sort_order: 'asc'
|
13464 |
})
|
13639 |
|
13640 |
var messages = {
|
13641 |
onTrash: function onTrash(response) {
|
13642 |
+
var count = ~ ~response.meta.count;
|
13643 |
var message = null;
|
13644 |
|
13645 |
if (count === 1) {
|
13650 |
_mailpoet2['default'].Notice.success(message);
|
13651 |
},
|
13652 |
onDelete: function onDelete(response) {
|
13653 |
+
var count = ~ ~response.meta.count;
|
13654 |
var message = null;
|
13655 |
|
13656 |
if (count === 1) {
|
13661 |
_mailpoet2['default'].Notice.success(message);
|
13662 |
},
|
13663 |
onRestore: function onRestore(response) {
|
13664 |
+
var count = ~ ~response.meta.count;
|
13665 |
var message = null;
|
13666 |
|
13667 |
if (count === 1) {
|
13673 |
}
|
13674 |
};
|
13675 |
|
13676 |
+
var bulk_actions = [{
|
13677 |
name: 'trash',
|
13678 |
label: _mailpoet2['default'].I18n.t('moveToTrash'),
|
13679 |
onSuccess: messages.onTrash
|
13680 |
}];
|
13681 |
|
13682 |
+
var item_actions = [{
|
13683 |
name: 'edit',
|
13684 |
label: _mailpoet2['default'].I18n.t('edit'),
|
13685 |
link: function link(item) {
|
13734 |
});
|
13735 |
},
|
13736 |
renderItem: function renderItem(form, actions) {
|
13737 |
+
var row_classes = (0, _classnames2['default'])('manage-column', 'column-primary', 'has-row-actions');
|
13738 |
|
13739 |
var segments = window.mailpoet_segments.filter(function (segment) {
|
13740 |
return _jquery2['default'].inArray(segment.id, form.segments) !== -1;
|
13751 |
null,
|
13752 |
_react2['default'].createElement(
|
13753 |
'td',
|
13754 |
+
{ className: row_classes },
|
13755 |
_react2['default'].createElement(
|
13756 |
'strong',
|
13757 |
null,
|
13815 |
endpoint: 'forms',
|
13816 |
onRenderItem: this.renderItem,
|
13817 |
columns: columns,
|
13818 |
+
bulk_actions: bulk_actions,
|
13819 |
+
item_actions: item_actions
|
13820 |
})
|
13821 |
);
|
13822 |
}
|
15990 |
}
|
15991 |
|
15992 |
function renderMSSSection(data) {
|
15993 |
+
if (!data.mss.enabled) return;
|
15994 |
|
15995 |
var status = data.mss.enabled.isReachable;
|
15996 |
|
assets/js/{admin_vendor.7914137d.js → admin_vendor.8b1d6679.js}
RENAMED
@@ -30794,22 +30794,26 @@ webpackJsonp([1],[
|
|
30794 |
);
|
30795 |
}
|
30796 |
|
30797 |
-
var
|
30798 |
-
var
|
30799 |
|
30800 |
-
if (
|
30801 |
(function () {
|
30802 |
-
var
|
30803 |
-
|
30804 |
-
|
30805 |
-
|
30806 |
-
|
|
|
|
|
|
|
|
|
30807 |
|
30808 |
if (action.name === 'trash') {
|
30809 |
-
|
30810 |
'span',
|
30811 |
{ key: 'action-' + index, className: 'trash' },
|
30812 |
-
!
|
30813 |
_react2['default'].createElement(
|
30814 |
'a',
|
30815 |
{
|
@@ -30819,28 +30823,28 @@ webpackJsonp([1],[
|
|
30819 |
)
|
30820 |
);
|
30821 |
} else if (action.refresh) {
|
30822 |
-
|
30823 |
'span',
|
30824 |
{
|
30825 |
onClick: _this.props.onRefreshItems,
|
30826 |
key: 'action-' + index, className: action.name },
|
30827 |
-
!
|
30828 |
action.link(_this.props.item)
|
30829 |
);
|
30830 |
} else if (action.link) {
|
30831 |
-
|
30832 |
'span',
|
30833 |
{
|
30834 |
key: 'action-' + index, className: action.name },
|
30835 |
-
!
|
30836 |
action.link(_this.props.item)
|
30837 |
);
|
30838 |
} else {
|
30839 |
-
|
30840 |
'span',
|
30841 |
{
|
30842 |
key: 'action-' + index, className: action.name },
|
30843 |
-
!
|
30844 |
_react2['default'].createElement(
|
30845 |
'a',
|
30846 |
{ href: 'javascript:;', onClick: action.onClick !== undefined ? action.onClick.bind(null, _this.props.item, _this.props.onRefreshItems) : false },
|
@@ -30849,15 +30853,15 @@ webpackJsonp([1],[
|
|
30849 |
);
|
30850 |
}
|
30851 |
|
30852 |
-
if (
|
30853 |
-
|
30854 |
}
|
30855 |
|
30856 |
-
return
|
30857 |
});
|
30858 |
})();
|
30859 |
} else {
|
30860 |
-
|
30861 |
'span',
|
30862 |
{ className: 'edit' },
|
30863 |
_react2['default'].createElement(
|
@@ -30923,7 +30927,7 @@ webpackJsonp([1],[
|
|
30923 |
_react2['default'].createElement(
|
30924 |
'div',
|
30925 |
{ className: 'row-actions' },
|
30926 |
-
|
30927 |
),
|
30928 |
_react2['default'].createElement(
|
30929 |
'button',
|
@@ -30939,11 +30943,11 @@ webpackJsonp([1],[
|
|
30939 |
);
|
30940 |
}
|
30941 |
|
30942 |
-
var
|
30943 |
|
30944 |
return _react2['default'].createElement(
|
30945 |
'tr',
|
30946 |
-
{ className:
|
30947 |
checkbox,
|
30948 |
this.props.onRenderItem(this.props.item, actions)
|
30949 |
);
|
@@ -30980,7 +30984,7 @@ webpackJsonp([1],[
|
|
30980 |
)
|
30981 |
);
|
30982 |
}
|
30983 |
-
var
|
30984 |
});
|
30985 |
|
30986 |
return _react2['default'].createElement(
|
@@ -30988,7 +30992,7 @@ webpackJsonp([1],[
|
|
30988 |
null,
|
30989 |
_react2['default'].createElement(
|
30990 |
'tr',
|
30991 |
-
{ className:
|
30992 |
_react2['default'].createElement(
|
30993 |
'td',
|
30994 |
{ colSpan: this.props.columns.length + (this.props.is_selectable ? 1 : 0) },
|
@@ -31063,7 +31067,7 @@ webpackJsonp([1],[
|
|
31063 |
var state = this.getInitialState();
|
31064 |
// check for url params
|
31065 |
if (params.splat) {
|
31066 |
-
params.splat.split('/').
|
31067 |
var _getParam = _this3.getParam(param);
|
31068 |
|
31069 |
var _getParam2 = _slicedToArray(_getParam, 2);
|
@@ -31074,7 +31078,7 @@ webpackJsonp([1],[
|
|
31074 |
var filters = {};
|
31075 |
switch (key) {
|
31076 |
case 'filter':
|
31077 |
-
value.split('&').
|
31078 |
var _pair$split = pair.split('=');
|
31079 |
|
31080 |
var _pair$split2 = _slicedToArray(_pair$split, 2);
|
@@ -31095,7 +31099,7 @@ webpackJsonp([1],[
|
|
31095 |
|
31096 |
// limit per page
|
31097 |
if (this.props.limit !== undefined) {
|
31098 |
-
state.limit = Math.abs(
|
31099 |
}
|
31100 |
|
31101 |
// sort by
|
@@ -31136,17 +31140,12 @@ webpackJsonp([1],[
|
|
31136 |
} else if (value === Boolean(value)) {
|
31137 |
value = value.toString();
|
31138 |
}
|
31139 |
-
|
31140 |
-
|
31141 |
-
value
|
31142 |
-
}
|
31143 |
-
}).filter(function (
|
31144 |
-
|
31145 |
-
return value !== '' && value !== null;
|
31146 |
-
}).map(function (_ref2) {
|
31147 |
-
var key = _ref2.key;
|
31148 |
-
var value = _ref2.value;
|
31149 |
-
return key + '[' + value + ']';
|
31150 |
}).join('/');
|
31151 |
|
31152 |
// set url
|
@@ -31158,22 +31157,22 @@ webpackJsonp([1],[
|
|
31158 |
}
|
31159 |
},
|
31160 |
getUrlWithParams: function getUrlWithParams(params) {
|
31161 |
-
var
|
31162 |
|
31163 |
-
if (
|
31164 |
-
|
31165 |
-
return '/' +
|
31166 |
}
|
31167 |
return '/' + params;
|
31168 |
},
|
31169 |
-
setBaseUrlParams: function setBaseUrlParams(
|
31170 |
var _this5 = this;
|
31171 |
|
31172 |
-
var ret =
|
31173 |
if (ret.indexOf(':') !== -1) {
|
31174 |
(function () {
|
31175 |
var params = _this5.getParams();
|
31176 |
-
Object.keys(params).
|
31177 |
if (ret.indexOf(':' + key) !== -1) {
|
31178 |
ret = ret.replace(':' + key, params[key]);
|
31179 |
}
|
@@ -31347,10 +31346,10 @@ webpackJsonp([1],[
|
|
31347 |
}), { scroll: true });
|
31348 |
});
|
31349 |
},
|
31350 |
-
handleBulkAction: function handleBulkAction(
|
31351 |
var _this12 = this;
|
31352 |
|
31353 |
-
if (this.state.selection === false && this.state.selected_ids.length === 0 &&
|
31354 |
return false;
|
31355 |
}
|
31356 |
|
@@ -31365,8 +31364,8 @@ webpackJsonp([1],[
|
|
31365 |
group: this.state.group,
|
31366 |
search: this.state.search
|
31367 |
};
|
31368 |
-
if (
|
31369 |
-
data.listing.selection =
|
31370 |
}
|
31371 |
|
31372 |
return _mailpoet2['default'].Ajax.post({
|
@@ -31396,47 +31395,47 @@ webpackJsonp([1],[
|
|
31396 |
_this13.setParams();
|
31397 |
});
|
31398 |
},
|
31399 |
-
handleSort: function handleSort(
|
31400 |
var _this14 = this;
|
31401 |
|
31402 |
-
var
|
31403 |
|
31404 |
this.setState({
|
31405 |
-
sort_by:
|
31406 |
-
sort_order:
|
31407 |
}, function () {
|
31408 |
_this14.setParams();
|
31409 |
});
|
31410 |
},
|
31411 |
-
handleSelectItem: function handleSelectItem(id,
|
31412 |
-
var
|
31413 |
var selection = false;
|
31414 |
|
31415 |
-
if (
|
31416 |
-
|
31417 |
// check whether all items on the page are selected
|
31418 |
if ((0, _jquery2['default'])('tbody .check-column :checkbox:not(:checked)').length === 0) {
|
31419 |
selection = 'page';
|
31420 |
}
|
31421 |
} else {
|
31422 |
-
|
31423 |
}
|
31424 |
|
31425 |
this.setState({
|
31426 |
selection: selection,
|
31427 |
-
selected_ids:
|
31428 |
});
|
31429 |
},
|
31430 |
-
handleSelectItems: function handleSelectItems(
|
31431 |
-
if (
|
31432 |
this.clearSelection();
|
31433 |
} else {
|
31434 |
-
var
|
31435 |
-
return
|
31436 |
});
|
31437 |
|
31438 |
this.setState({
|
31439 |
-
selected_ids:
|
31440 |
selection: 'page'
|
31441 |
});
|
31442 |
}
|
@@ -31502,8 +31501,8 @@ webpackJsonp([1],[
|
|
31502 |
},
|
31503 |
render: function render() {
|
31504 |
var items = this.state.items;
|
31505 |
-
var
|
31506 |
-
var
|
31507 |
|
31508 |
// columns
|
31509 |
var columns = this.props.columns || [];
|
@@ -31512,10 +31511,10 @@ webpackJsonp([1],[
|
|
31512 |
});
|
31513 |
|
31514 |
// bulk actions
|
31515 |
-
var
|
31516 |
|
31517 |
-
if (this.state.group === 'trash' &&
|
31518 |
-
|
31519 |
name: 'restore',
|
31520 |
label: _mailpoet2['default'].I18n.t('restore'),
|
31521 |
onSuccess: this.props.messages.onRestore
|
@@ -31527,9 +31526,9 @@ webpackJsonp([1],[
|
|
31527 |
}
|
31528 |
|
31529 |
// item actions
|
31530 |
-
var
|
31531 |
|
31532 |
-
var
|
31533 |
|
31534 |
// search
|
31535 |
var search = _react2['default'].createElement(_listingSearchJsx2['default'], {
|
@@ -31566,7 +31565,7 @@ webpackJsonp([1],[
|
|
31566 |
{ className: 'tablenav top clearfix' },
|
31567 |
_react2['default'].createElement(_listingBulk_actionsJsx2['default'], {
|
31568 |
count: this.state.count,
|
31569 |
-
bulk_actions:
|
31570 |
selection: this.state.selection,
|
31571 |
selected_ids: this.state.selected_ids,
|
31572 |
onBulkAction: this.handleBulkAction }),
|
@@ -31586,7 +31585,7 @@ webpackJsonp([1],[
|
|
31586 |
),
|
31587 |
_react2['default'].createElement(
|
31588 |
'table',
|
31589 |
-
{ className:
|
31590 |
_react2['default'].createElement(
|
31591 |
'thead',
|
31592 |
null,
|
@@ -31594,10 +31593,10 @@ webpackJsonp([1],[
|
|
31594 |
onSort: this.handleSort,
|
31595 |
onSelectItems: this.handleSelectItems,
|
31596 |
selection: this.state.selection,
|
31597 |
-
sort_by:
|
31598 |
-
sort_order:
|
31599 |
columns: columns,
|
31600 |
-
is_selectable:
|
31601 |
),
|
31602 |
_react2['default'].createElement(ListingItems, {
|
31603 |
onRenderItem: this.handleRenderItem,
|
@@ -31606,7 +31605,7 @@ webpackJsonp([1],[
|
|
31606 |
onTrashItem: this.handleTrashItem,
|
31607 |
onRefreshItems: this.handleRefreshItems,
|
31608 |
columns: columns,
|
31609 |
-
is_selectable:
|
31610 |
onSelectItem: this.handleSelectItem,
|
31611 |
onSelectAll: this.handleSelectAll,
|
31612 |
selection: this.state.selection,
|
@@ -31615,7 +31614,7 @@ webpackJsonp([1],[
|
|
31615 |
group: this.state.group,
|
31616 |
count: this.state.count,
|
31617 |
limit: this.state.limit,
|
31618 |
-
item_actions:
|
31619 |
messages: messages,
|
31620 |
items: items }),
|
31621 |
_react2['default'].createElement(
|
@@ -31625,10 +31624,10 @@ webpackJsonp([1],[
|
|
31625 |
onSort: this.handleSort,
|
31626 |
onSelectItems: this.handleSelectItems,
|
31627 |
selection: this.state.selection,
|
31628 |
-
sort_by:
|
31629 |
-
sort_order:
|
31630 |
columns: columns,
|
31631 |
-
is_selectable:
|
31632 |
)
|
31633 |
),
|
31634 |
_react2['default'].createElement(
|
@@ -31636,7 +31635,7 @@ webpackJsonp([1],[
|
|
31636 |
{ className: 'tablenav bottom' },
|
31637 |
_react2['default'].createElement(_listingBulk_actionsJsx2['default'], {
|
31638 |
count: this.state.count,
|
31639 |
-
bulk_actions:
|
31640 |
selection: this.state.selection,
|
31641 |
selected_ids: this.state.selected_ids,
|
31642 |
onBulkAction: this.handleBulkAction }),
|
@@ -33255,7 +33254,7 @@ webpackJsonp([1],[
|
|
33255 |
return;
|
33256 |
}
|
33257 |
|
33258 |
-
var
|
33259 |
|
33260 |
var data = action.getData !== undefined ? action.getData() : {};
|
33261 |
|
@@ -33267,7 +33266,7 @@ webpackJsonp([1],[
|
|
33267 |
}
|
33268 |
|
33269 |
if (data.action) {
|
33270 |
-
var promise = this.props.onBulkAction(
|
33271 |
if (promise !== false) {
|
33272 |
promise.then(onSuccess);
|
33273 |
}
|
@@ -33279,10 +33278,10 @@ webpackJsonp([1],[
|
|
33279 |
});
|
33280 |
},
|
33281 |
getSelectedAction: function getSelectedAction() {
|
33282 |
-
var
|
33283 |
-
if (
|
33284 |
var action = this.props.bulk_actions.filter(function (act) {
|
33285 |
-
return act.name ===
|
33286 |
});
|
33287 |
|
33288 |
if (action.length > 0) {
|
@@ -33417,9 +33416,9 @@ webpackJsonp([1],[
|
|
33417 |
displayName: 'ListingColumn',
|
33418 |
|
33419 |
handleSort: function handleSort() {
|
33420 |
-
var
|
33421 |
-
var
|
33422 |
-
this.props.onSort(
|
33423 |
},
|
33424 |
render: function render() {
|
33425 |
var classes = (0, _classnames2['default'])('manage-column', { 'column-primary': this.props.column.is_primary }, { sortable: this.props.column.sortable }, this.props.column.sorted, { sorted: this.props.sort_by === this.props.column.name });
|
@@ -33491,7 +33490,7 @@ webpackJsonp([1],[
|
|
33491 |
this.setPage(this.constrainPage(parseInt(this.props.page, 10) + 1));
|
33492 |
},
|
33493 |
constrainPage: function constrainPage(page) {
|
33494 |
-
return Math.min(Math.max(1, Math.abs(
|
33495 |
},
|
33496 |
handleSetManualPage: function handleSetManualPage(e) {
|
33497 |
if (e.which === 13) {
|
@@ -33664,7 +33663,7 @@ webpackJsonp([1],[
|
|
33664 |
var classes = classNames('tablenav-pages', { 'one-page': this.props.count <= this.props.limit });
|
33665 |
|
33666 |
var numberOfItemsLabel = undefined;
|
33667 |
-
if (
|
33668 |
numberOfItemsLabel = MailPoet.I18n.t('numberOfItemsSingular');
|
33669 |
} else {
|
33670 |
numberOfItemsLabel = MailPoet.I18n.t('numberOfItemsMultiple').replace('%$1d', this.props.count.toLocaleString());
|
@@ -33806,7 +33805,7 @@ webpackJsonp([1],[
|
|
33806 |
var _this = this;
|
33807 |
|
33808 |
var filters = {};
|
33809 |
-
this.getAvailableFilters().
|
33810 |
filters[_this.refs['filter-' + i].name] = _this.refs['filter-' + i].value;
|
33811 |
});
|
33812 |
if (this.props.onBeforeSelectFilter) {
|
@@ -33826,16 +33825,16 @@ webpackJsonp([1],[
|
|
33826 |
componentDidUpdate: function componentDidUpdate() {
|
33827 |
var _this2 = this;
|
33828 |
|
33829 |
-
var
|
33830 |
-
this.getAvailableFilters().
|
33831 |
-
if (
|
33832 |
-
jQuery(_this2.refs['filter-' + i]).val(
|
33833 |
}
|
33834 |
});
|
33835 |
},
|
33836 |
render: function render() {
|
33837 |
var filters = this.props.filters;
|
33838 |
-
var
|
33839 |
return React.createElement(
|
33840 |
'select',
|
33841 |
{
|
@@ -33858,7 +33857,7 @@ webpackJsonp([1],[
|
|
33858 |
|
33859 |
var button = undefined;
|
33860 |
|
33861 |
-
if (
|
33862 |
button = React.createElement('input', {
|
33863 |
id: 'post-query-submit',
|
33864 |
onClick: this.handleFilterAction,
|
@@ -33867,9 +33866,9 @@ webpackJsonp([1],[
|
|
33867 |
className: 'button' });
|
33868 |
}
|
33869 |
|
33870 |
-
var
|
33871 |
if (this.props.group === 'trash') {
|
33872 |
-
|
33873 |
onClick: this.handleEmptyTrash,
|
33874 |
type: 'submit',
|
33875 |
value: MailPoet.I18n.t('emptyTrash'),
|
@@ -33880,9 +33879,9 @@ webpackJsonp([1],[
|
|
33880 |
return React.createElement(
|
33881 |
'div',
|
33882 |
{ className: 'alignleft actions actions' },
|
33883 |
-
|
33884 |
button,
|
33885 |
-
|
33886 |
);
|
33887 |
}
|
33888 |
});
|
@@ -33918,7 +33917,7 @@ webpackJsonp([1],[
|
|
33918 |
return this.state.select2 === true;
|
33919 |
},
|
33920 |
componentDidMount: function componentDidMount() {
|
33921 |
-
if (this.allowMultipleValues()
|
33922 |
this.setupSelect2();
|
33923 |
}
|
33924 |
},
|
@@ -33928,7 +33927,7 @@ webpackJsonp([1],[
|
|
33928 |
}
|
33929 |
},
|
33930 |
componentWillUnmount: function componentWillUnmount() {
|
33931 |
-
if (this.allowMultipleValues()
|
33932 |
this.destroySelect2();
|
33933 |
}
|
33934 |
},
|
@@ -33986,14 +33985,9 @@ webpackJsonp([1],[
|
|
33986 |
return null;
|
33987 |
},
|
33988 |
loadCachedItems: function loadCachedItems() {
|
33989 |
-
var items = undefined;
|
33990 |
if (typeof window['mailpoet_' + this.props.field.endpoint] !== 'undefined') {
|
33991 |
-
items = window['mailpoet_' + this.props.field.endpoint];
|
33992 |
-
} else if (this.props.field.values !== undefined) {
|
33993 |
-
items = this.props.field.values;
|
33994 |
-
}
|
33995 |
|
33996 |
-
if (Array.isArray(items)) {
|
33997 |
if (this.props.field.filter !== undefined) {
|
33998 |
items = items.filter(this.props.field.filter);
|
33999 |
}
|
@@ -34047,14 +34041,6 @@ webpackJsonp([1],[
|
|
34047 |
}
|
34048 |
return value;
|
34049 |
},
|
34050 |
-
insertEmptyOption: function insertEmptyOption() {
|
34051 |
-
// https://select2.org/placeholders
|
34052 |
-
// For single selects only, in order for the placeholder value to appear,
|
34053 |
-
// we must have a blank <option> as the first option in the <select> control.
|
34054 |
-
if (this.allowMultipleValues()) return undefined;
|
34055 |
-
if (this.props.field.placeholder) return React.createElement('option', null);
|
34056 |
-
return undefined;
|
34057 |
-
},
|
34058 |
render: function render() {
|
34059 |
var _this = this;
|
34060 |
|
@@ -34084,7 +34070,6 @@ webpackJsonp([1],[
|
|
34084 |
multiple: this.props.field.multiple,
|
34085 |
defaultValue: this.getSelectedValues()
|
34086 |
}, this.props.field.validation),
|
34087 |
-
this.insertEmptyOption(),
|
34088 |
options
|
34089 |
);
|
34090 |
}
|
@@ -39908,6 +39893,8 @@ webpackJsonp([1],[
|
|
39908 |
if (props.item === undefined) {
|
39909 |
this.refs.form.reset();
|
39910 |
}
|
|
|
|
|
39911 |
}
|
39912 |
},
|
39913 |
loadItem: function loadItem(id) {
|
@@ -39927,9 +39914,6 @@ webpackJsonp([1],[
|
|
39927 |
loading: false,
|
39928 |
item: response.data
|
39929 |
});
|
39930 |
-
if (typeof _this.props.onItemLoad === 'function') {
|
39931 |
-
_this.props.onItemLoad(response.data);
|
39932 |
-
}
|
39933 |
}).fail(function () {
|
39934 |
_this.setState({
|
39935 |
loading: false,
|
@@ -39955,9 +39939,9 @@ webpackJsonp([1],[
|
|
39955 |
|
39956 |
// only get values from displayed fields
|
39957 |
var item = {};
|
39958 |
-
this.props.fields.
|
39959 |
if (field.fields !== undefined) {
|
39960 |
-
field.fields.
|
39961 |
item[subfield.name] = _this2.state.item[subfield.name];
|
39962 |
});
|
39963 |
} else {
|
@@ -40156,10 +40140,6 @@ webpackJsonp([1],[
|
|
40156 |
case 'reactComponent':
|
40157 |
field = React.createElement(data.field.component, data);
|
40158 |
break;
|
40159 |
-
|
40160 |
-
default:
|
40161 |
-
field = 'invalid';
|
40162 |
-
break;
|
40163 |
}
|
40164 |
|
40165 |
if (inline === true) {
|
@@ -40206,7 +40186,7 @@ webpackJsonp([1],[
|
|
40206 |
|
40207 |
return React.createElement(
|
40208 |
'tr',
|
40209 |
-
|
40210 |
React.createElement(
|
40211 |
'th',
|
40212 |
{ scope: 'row' },
|
@@ -40287,7 +40267,7 @@ webpackJsonp([1],[
|
|
40287 |
type: "text",
|
40288 |
className: "regular-text",
|
40289 |
name: this.props.field.name,
|
40290 |
-
id:
|
40291 |
value: this.props.item[this.props.field.name],
|
40292 |
placeholder: this.props.field.placeholder,
|
40293 |
defaultValue: this.props.field.defaultValue,
|
@@ -40360,10 +40340,11 @@ webpackJsonp([1],[
|
|
40360 |
keys = Object.keys(this.props.field.values);
|
40361 |
}
|
40362 |
|
40363 |
-
var options = keys.
|
40364 |
-
if (filter === false)
|
40365 |
-
|
40366 |
-
|
|
|
40367 |
return _react2['default'].createElement(
|
40368 |
'option',
|
40369 |
{
|
@@ -40393,11 +40374,11 @@ webpackJsonp([1],[
|
|
40393 |
/* 298 */
|
40394 |
/***/ function(module, exports, __webpack_require__) {
|
40395 |
|
40396 |
-
var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;
|
40397 |
|
40398 |
!(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(2)], __WEBPACK_AMD_DEFINE_RESULT__ = function (React) {
|
40399 |
var FormFieldRadio = React.createClass({
|
40400 |
-
displayName:
|
40401 |
|
40402 |
render: function render() {
|
40403 |
var _this = this;
|
@@ -40406,17 +40387,17 @@ webpackJsonp([1],[
|
|
40406 |
return false;
|
40407 |
}
|
40408 |
|
40409 |
-
var
|
40410 |
var options = Object.keys(this.props.field.values).map(function (value, index) {
|
40411 |
return React.createElement(
|
40412 |
-
|
40413 |
-
{ key:
|
40414 |
React.createElement(
|
40415 |
-
|
40416 |
null,
|
40417 |
-
React.createElement(
|
40418 |
-
type:
|
40419 |
-
checked:
|
40420 |
value: value,
|
40421 |
onChange: _this.props.onValueChange,
|
40422 |
name: _this.props.field.name }),
|
@@ -40426,7 +40407,7 @@ webpackJsonp([1],[
|
|
40426 |
});
|
40427 |
|
40428 |
return React.createElement(
|
40429 |
-
|
40430 |
null,
|
40431 |
options
|
40432 |
);
|
@@ -40459,7 +40440,7 @@ webpackJsonp([1],[
|
|
40459 |
|
40460 |
// isChecked will be true only if the value is "1"
|
40461 |
// it will be false in case value is "0" or empty
|
40462 |
-
var isChecked = !!
|
40463 |
var options = Object.keys(this.props.field.values).map(function (value, index) {
|
40464 |
return React.createElement(
|
40465 |
'p',
|
@@ -40729,11 +40710,6 @@ webpackJsonp([1],[
|
|
40729 |
year: this.state.year
|
40730 |
};
|
40731 |
break;
|
40732 |
-
default:
|
40733 |
-
value = {
|
40734 |
-
value: 'invalid type'
|
40735 |
-
};
|
40736 |
-
break;
|
40737 |
}
|
40738 |
|
40739 |
return value;
|
@@ -40752,7 +40728,7 @@ webpackJsonp([1],[
|
|
40752 |
field = matches[1];
|
40753 |
property = matches[2];
|
40754 |
|
40755 |
-
var value =
|
40756 |
|
40757 |
this.setState(_defineProperty({}, '' + property, value), function () {
|
40758 |
_this.props.onValueChange({
|
@@ -40806,13 +40782,6 @@ webpackJsonp([1],[
|
|
40806 |
day: _this2.state.day,
|
40807 |
placeholder: _this2.props.field.day_placeholder
|
40808 |
});
|
40809 |
-
|
40810 |
-
default:
|
40811 |
-
return React.createElement(
|
40812 |
-
'div',
|
40813 |
-
null,
|
40814 |
-
'Invalid date type'
|
40815 |
-
);
|
40816 |
}
|
40817 |
});
|
40818 |
|
@@ -40835,7 +40804,7 @@ webpackJsonp([1],[
|
|
40835 |
/***/ function(module, exports, __webpack_require__) {
|
40836 |
|
40837 |
var require;/* WEBPACK VAR INJECTION */(function(module) {//! moment.js
|
40838 |
-
//! version : 2.19.
|
40839 |
//! authors : Tim Wood, Iskren Chernev, Moment.js contributors
|
40840 |
//! license : MIT
|
40841 |
//! momentjs.com
|
@@ -42865,7 +42834,7 @@ webpackJsonp([1],[
|
|
42865 |
// note: all values past the year are optional and will default to the lowest possible value.
|
42866 |
// [year, month, day , hour, minute, second, millisecond]
|
42867 |
function configFromArray (config) {
|
42868 |
-
var i, date, input = [], currentDate,
|
42869 |
|
42870 |
if (config._d) {
|
42871 |
return;
|
@@ -42915,8 +42884,6 @@ webpackJsonp([1],[
|
|
42915 |
}
|
42916 |
|
42917 |
config._d = (config._useUTC ? createUTCDate : createDate).apply(null, input);
|
42918 |
-
expectedWeekday = config._useUTC ? config._d.getUTCDay() : config._d.getDay();
|
42919 |
-
|
42920 |
// Apply timezone offset from input. The actual utcOffset can be changed
|
42921 |
// with parseZone.
|
42922 |
if (config._tzm != null) {
|
@@ -42928,7 +42895,7 @@ webpackJsonp([1],[
|
|
42928 |
}
|
42929 |
|
42930 |
// check for mismatching day of week
|
42931 |
-
if (config._w && typeof config._w.d !== 'undefined' && config._w.d !==
|
42932 |
getParsingFlags(config).weekdayMismatch = true;
|
42933 |
}
|
42934 |
}
|
@@ -44504,7 +44471,7 @@ webpackJsonp([1],[
|
|
44504 |
|
44505 |
addParseToken(['D', 'DD'], DATE);
|
44506 |
addParseToken('Do', function (input, array) {
|
44507 |
-
array[DATE] = toInt(input.match(match1to2)[0]);
|
44508 |
});
|
44509 |
|
44510 |
// MOMENTS
|
@@ -45316,7 +45283,7 @@ webpackJsonp([1],[
|
|
45316 |
// Side effect imports
|
45317 |
|
45318 |
|
45319 |
-
hooks.version = '2.19.
|
45320 |
|
45321 |
setHookCallback(createLocal);
|
45322 |
|
30794 |
);
|
30795 |
}
|
30796 |
|
30797 |
+
var custom_actions = this.props.item_actions;
|
30798 |
+
var item_actions = false;
|
30799 |
|
30800 |
+
if (custom_actions.length > 0) {
|
30801 |
(function () {
|
30802 |
+
var is_first = true;
|
30803 |
+
item_actions = custom_actions.map(function (action, index) {
|
30804 |
+
if (action.display !== undefined) {
|
30805 |
+
if (action.display(_this.props.item) === false) {
|
30806 |
+
return;
|
30807 |
+
}
|
30808 |
+
}
|
30809 |
+
|
30810 |
+
var custom_action = null;
|
30811 |
|
30812 |
if (action.name === 'trash') {
|
30813 |
+
custom_action = _react2['default'].createElement(
|
30814 |
'span',
|
30815 |
{ key: 'action-' + index, className: 'trash' },
|
30816 |
+
!is_first ? ' | ' : '',
|
30817 |
_react2['default'].createElement(
|
30818 |
'a',
|
30819 |
{
|
30823 |
)
|
30824 |
);
|
30825 |
} else if (action.refresh) {
|
30826 |
+
custom_action = _react2['default'].createElement(
|
30827 |
'span',
|
30828 |
{
|
30829 |
onClick: _this.props.onRefreshItems,
|
30830 |
key: 'action-' + index, className: action.name },
|
30831 |
+
!is_first ? ' | ' : '',
|
30832 |
action.link(_this.props.item)
|
30833 |
);
|
30834 |
} else if (action.link) {
|
30835 |
+
custom_action = _react2['default'].createElement(
|
30836 |
'span',
|
30837 |
{
|
30838 |
key: 'action-' + index, className: action.name },
|
30839 |
+
!is_first ? ' | ' : '',
|
30840 |
action.link(_this.props.item)
|
30841 |
);
|
30842 |
} else {
|
30843 |
+
custom_action = _react2['default'].createElement(
|
30844 |
'span',
|
30845 |
{
|
30846 |
key: 'action-' + index, className: action.name },
|
30847 |
+
!is_first ? ' | ' : '',
|
30848 |
_react2['default'].createElement(
|
30849 |
'a',
|
30850 |
{ href: 'javascript:;', onClick: action.onClick !== undefined ? action.onClick.bind(null, _this.props.item, _this.props.onRefreshItems) : false },
|
30853 |
);
|
30854 |
}
|
30855 |
|
30856 |
+
if (custom_action !== null && is_first === true) {
|
30857 |
+
is_first = false;
|
30858 |
}
|
30859 |
|
30860 |
+
return custom_action;
|
30861 |
});
|
30862 |
})();
|
30863 |
} else {
|
30864 |
+
item_actions = _react2['default'].createElement(
|
30865 |
'span',
|
30866 |
{ className: 'edit' },
|
30867 |
_react2['default'].createElement(
|
30927 |
_react2['default'].createElement(
|
30928 |
'div',
|
30929 |
{ className: 'row-actions' },
|
30930 |
+
item_actions
|
30931 |
),
|
30932 |
_react2['default'].createElement(
|
30933 |
'button',
|
30943 |
);
|
30944 |
}
|
30945 |
|
30946 |
+
var row_classes = (0, _classnames2['default'])({ 'is-expanded': this.state.expanded });
|
30947 |
|
30948 |
return _react2['default'].createElement(
|
30949 |
'tr',
|
30950 |
+
{ className: row_classes, 'data-automation-id': 'listing_item_' + this.props.item.id },
|
30951 |
checkbox,
|
30952 |
this.props.onRenderItem(this.props.item, actions)
|
30953 |
);
|
30984 |
)
|
30985 |
);
|
30986 |
}
|
30987 |
+
var select_all_classes = (0, _classnames2['default'])('mailpoet_select_all', { mailpoet_hidden: this.props.selection === false || this.props.count <= this.props.limit
|
30988 |
});
|
30989 |
|
30990 |
return _react2['default'].createElement(
|
30992 |
null,
|
30993 |
_react2['default'].createElement(
|
30994 |
'tr',
|
30995 |
+
{ className: select_all_classes },
|
30996 |
_react2['default'].createElement(
|
30997 |
'td',
|
30998 |
{ colSpan: this.props.columns.length + (this.props.is_selectable ? 1 : 0) },
|
31067 |
var state = this.getInitialState();
|
31068 |
// check for url params
|
31069 |
if (params.splat) {
|
31070 |
+
params.splat.split('/').map(function (param) {
|
31071 |
var _getParam = _this3.getParam(param);
|
31072 |
|
31073 |
var _getParam2 = _slicedToArray(_getParam, 2);
|
31078 |
var filters = {};
|
31079 |
switch (key) {
|
31080 |
case 'filter':
|
31081 |
+
value.split('&').map(function (pair) {
|
31082 |
var _pair$split = pair.split('=');
|
31083 |
|
31084 |
var _pair$split2 = _slicedToArray(_pair$split, 2);
|
31099 |
|
31100 |
// limit per page
|
31101 |
if (this.props.limit !== undefined) {
|
31102 |
+
state.limit = Math.abs(~ ~this.props.limit);
|
31103 |
}
|
31104 |
|
31105 |
// sort by
|
31140 |
} else if (value === Boolean(value)) {
|
31141 |
value = value.toString();
|
31142 |
}
|
31143 |
+
|
31144 |
+
if (value !== '' && value !== null) {
|
31145 |
+
return key + '[' + value + ']';
|
31146 |
+
}
|
31147 |
+
}).filter(function (key) {
|
31148 |
+
return key !== undefined;
|
|
|
|
|
|
|
|
|
|
|
31149 |
}).join('/');
|
31150 |
|
31151 |
// set url
|
31157 |
}
|
31158 |
},
|
31159 |
getUrlWithParams: function getUrlWithParams(params) {
|
31160 |
+
var base_url = this.props.base_url !== undefined ? this.props.base_url : null;
|
31161 |
|
31162 |
+
if (base_url !== null) {
|
31163 |
+
base_url = this.setBaseUrlParams(base_url);
|
31164 |
+
return '/' + base_url + '/' + params;
|
31165 |
}
|
31166 |
return '/' + params;
|
31167 |
},
|
31168 |
+
setBaseUrlParams: function setBaseUrlParams(base_url) {
|
31169 |
var _this5 = this;
|
31170 |
|
31171 |
+
var ret = base_url;
|
31172 |
if (ret.indexOf(':') !== -1) {
|
31173 |
(function () {
|
31174 |
var params = _this5.getParams();
|
31175 |
+
Object.keys(params).map(function (key) {
|
31176 |
if (ret.indexOf(':' + key) !== -1) {
|
31177 |
ret = ret.replace(':' + key, params[key]);
|
31178 |
}
|
31346 |
}), { scroll: true });
|
31347 |
});
|
31348 |
},
|
31349 |
+
handleBulkAction: function handleBulkAction(selected_ids, params) {
|
31350 |
var _this12 = this;
|
31351 |
|
31352 |
+
if (this.state.selection === false && this.state.selected_ids.length === 0 && selected_ids !== 'all') {
|
31353 |
return false;
|
31354 |
}
|
31355 |
|
31364 |
group: this.state.group,
|
31365 |
search: this.state.search
|
31366 |
};
|
31367 |
+
if (selected_ids !== 'all') {
|
31368 |
+
data.listing.selection = selected_ids;
|
31369 |
}
|
31370 |
|
31371 |
return _mailpoet2['default'].Ajax.post({
|
31395 |
_this13.setParams();
|
31396 |
});
|
31397 |
},
|
31398 |
+
handleSort: function handleSort(sort_by) {
|
31399 |
var _this14 = this;
|
31400 |
|
31401 |
+
var sort_order = arguments.length <= 1 || arguments[1] === undefined ? 'asc' : arguments[1];
|
31402 |
|
31403 |
this.setState({
|
31404 |
+
sort_by: sort_by,
|
31405 |
+
sort_order: sort_order === 'asc' ? 'asc' : 'desc'
|
31406 |
}, function () {
|
31407 |
_this14.setParams();
|
31408 |
});
|
31409 |
},
|
31410 |
+
handleSelectItem: function handleSelectItem(id, is_checked) {
|
31411 |
+
var selected_ids = this.state.selected_ids;
|
31412 |
var selection = false;
|
31413 |
|
31414 |
+
if (is_checked) {
|
31415 |
+
selected_ids = _jquery2['default'].merge(selected_ids, [id]);
|
31416 |
// check whether all items on the page are selected
|
31417 |
if ((0, _jquery2['default'])('tbody .check-column :checkbox:not(:checked)').length === 0) {
|
31418 |
selection = 'page';
|
31419 |
}
|
31420 |
} else {
|
31421 |
+
selected_ids.splice(selected_ids.indexOf(id), 1);
|
31422 |
}
|
31423 |
|
31424 |
this.setState({
|
31425 |
selection: selection,
|
31426 |
+
selected_ids: selected_ids
|
31427 |
});
|
31428 |
},
|
31429 |
+
handleSelectItems: function handleSelectItems(is_checked) {
|
31430 |
+
if (is_checked === false) {
|
31431 |
this.clearSelection();
|
31432 |
} else {
|
31433 |
+
var selected_ids = this.state.items.map(function (item) {
|
31434 |
+
return ~ ~item.id;
|
31435 |
});
|
31436 |
|
31437 |
this.setState({
|
31438 |
+
selected_ids: selected_ids,
|
31439 |
selection: 'page'
|
31440 |
});
|
31441 |
}
|
31501 |
},
|
31502 |
render: function render() {
|
31503 |
var items = this.state.items;
|
31504 |
+
var sort_by = this.state.sort_by;
|
31505 |
+
var sort_order = this.state.sort_order;
|
31506 |
|
31507 |
// columns
|
31508 |
var columns = this.props.columns || [];
|
31511 |
});
|
31512 |
|
31513 |
// bulk actions
|
31514 |
+
var bulk_actions = this.props.bulk_actions || [];
|
31515 |
|
31516 |
+
if (this.state.group === 'trash' && bulk_actions.length > 0) {
|
31517 |
+
bulk_actions = [{
|
31518 |
name: 'restore',
|
31519 |
label: _mailpoet2['default'].I18n.t('restore'),
|
31520 |
onSuccess: this.props.messages.onRestore
|
31526 |
}
|
31527 |
|
31528 |
// item actions
|
31529 |
+
var item_actions = this.props.item_actions || [];
|
31530 |
|
31531 |
+
var table_classes = (0, _classnames2['default'])('mailpoet_listing_table', 'wp-list-table', 'widefat', 'fixed', 'striped', { mailpoet_listing_loading: this.state.loading });
|
31532 |
|
31533 |
// search
|
31534 |
var search = _react2['default'].createElement(_listingSearchJsx2['default'], {
|
31565 |
{ className: 'tablenav top clearfix' },
|
31566 |
_react2['default'].createElement(_listingBulk_actionsJsx2['default'], {
|
31567 |
count: this.state.count,
|
31568 |
+
bulk_actions: bulk_actions,
|
31569 |
selection: this.state.selection,
|
31570 |
selected_ids: this.state.selected_ids,
|
31571 |
onBulkAction: this.handleBulkAction }),
|
31585 |
),
|
31586 |
_react2['default'].createElement(
|
31587 |
'table',
|
31588 |
+
{ className: table_classes },
|
31589 |
_react2['default'].createElement(
|
31590 |
'thead',
|
31591 |
null,
|
31593 |
onSort: this.handleSort,
|
31594 |
onSelectItems: this.handleSelectItems,
|
31595 |
selection: this.state.selection,
|
31596 |
+
sort_by: sort_by,
|
31597 |
+
sort_order: sort_order,
|
31598 |
columns: columns,
|
31599 |
+
is_selectable: bulk_actions.length > 0 })
|
31600 |
),
|
31601 |
_react2['default'].createElement(ListingItems, {
|
31602 |
onRenderItem: this.handleRenderItem,
|
31605 |
onTrashItem: this.handleTrashItem,
|
31606 |
onRefreshItems: this.handleRefreshItems,
|
31607 |
columns: columns,
|
31608 |
+
is_selectable: bulk_actions.length > 0,
|
31609 |
onSelectItem: this.handleSelectItem,
|
31610 |
onSelectAll: this.handleSelectAll,
|
31611 |
selection: this.state.selection,
|
31614 |
group: this.state.group,
|
31615 |
count: this.state.count,
|
31616 |
limit: this.state.limit,
|
31617 |
+
item_actions: item_actions,
|
31618 |
messages: messages,
|
31619 |
items: items }),
|
31620 |
_react2['default'].createElement(
|
31624 |
onSort: this.handleSort,
|
31625 |
onSelectItems: this.handleSelectItems,
|
31626 |
selection: this.state.selection,
|
31627 |
+
sort_by: sort_by,
|
31628 |
+
sort_order: sort_order,
|
31629 |
columns: columns,
|
31630 |
+
is_selectable: bulk_actions.length > 0 })
|
31631 |
)
|
31632 |
),
|
31633 |
_react2['default'].createElement(
|
31635 |
{ className: 'tablenav bottom' },
|
31636 |
_react2['default'].createElement(_listingBulk_actionsJsx2['default'], {
|
31637 |
count: this.state.count,
|
31638 |
+
bulk_actions: bulk_actions,
|
31639 |
selection: this.state.selection,
|
31640 |
selected_ids: this.state.selected_ids,
|
31641 |
onBulkAction: this.handleBulkAction }),
|
33254 |
return;
|
33255 |
}
|
33256 |
|
33257 |
+
var selected_ids = this.props.selection !== 'all' ? this.props.selected_ids : [];
|
33258 |
|
33259 |
var data = action.getData !== undefined ? action.getData() : {};
|
33260 |
|
33266 |
}
|
33267 |
|
33268 |
if (data.action) {
|
33269 |
+
var promise = this.props.onBulkAction(selected_ids, data);
|
33270 |
if (promise !== false) {
|
33271 |
promise.then(onSuccess);
|
33272 |
}
|
33278 |
});
|
33279 |
},
|
33280 |
getSelectedAction: function getSelectedAction() {
|
33281 |
+
var selected_action = this.refs.action.value;
|
33282 |
+
if (selected_action.length > 0) {
|
33283 |
var action = this.props.bulk_actions.filter(function (act) {
|
33284 |
+
return act.name === selected_action;
|
33285 |
});
|
33286 |
|
33287 |
if (action.length > 0) {
|
33416 |
displayName: 'ListingColumn',
|
33417 |
|
33418 |
handleSort: function handleSort() {
|
33419 |
+
var sort_by = this.props.column.name;
|
33420 |
+
var sort_order = this.props.column.sorted === 'asc' ? 'desc' : 'asc';
|
33421 |
+
this.props.onSort(sort_by, sort_order);
|
33422 |
},
|
33423 |
render: function render() {
|
33424 |
var classes = (0, _classnames2['default'])('manage-column', { 'column-primary': this.props.column.is_primary }, { sortable: this.props.column.sortable }, this.props.column.sorted, { sorted: this.props.sort_by === this.props.column.name });
|
33490 |
this.setPage(this.constrainPage(parseInt(this.props.page, 10) + 1));
|
33491 |
},
|
33492 |
constrainPage: function constrainPage(page) {
|
33493 |
+
return Math.min(Math.max(1, Math.abs(~ ~page)), this.getLastPage());
|
33494 |
},
|
33495 |
handleSetManualPage: function handleSetManualPage(e) {
|
33496 |
if (e.which === 13) {
|
33663 |
var classes = classNames('tablenav-pages', { 'one-page': this.props.count <= this.props.limit });
|
33664 |
|
33665 |
var numberOfItemsLabel = undefined;
|
33666 |
+
if (this.props.count == 1) {
|
33667 |
numberOfItemsLabel = MailPoet.I18n.t('numberOfItemsSingular');
|
33668 |
} else {
|
33669 |
numberOfItemsLabel = MailPoet.I18n.t('numberOfItemsMultiple').replace('%$1d', this.props.count.toLocaleString());
|
33805 |
var _this = this;
|
33806 |
|
33807 |
var filters = {};
|
33808 |
+
this.getAvailableFilters().map(function (filter, i) {
|
33809 |
filters[_this.refs['filter-' + i].name] = _this.refs['filter-' + i].value;
|
33810 |
});
|
33811 |
if (this.props.onBeforeSelectFilter) {
|
33825 |
componentDidUpdate: function componentDidUpdate() {
|
33826 |
var _this2 = this;
|
33827 |
|
33828 |
+
var selected_filters = this.props.filter;
|
33829 |
+
this.getAvailableFilters().map(function (filter, i) {
|
33830 |
+
if (selected_filters[filter] !== undefined && selected_filters[filter]) {
|
33831 |
+
jQuery(_this2.refs['filter-' + i]).val(selected_filters[filter]).trigger('change');
|
33832 |
}
|
33833 |
});
|
33834 |
},
|
33835 |
render: function render() {
|
33836 |
var filters = this.props.filters;
|
33837 |
+
var available_filters = this.getAvailableFilters().map(function (filter, i) {
|
33838 |
return React.createElement(
|
33839 |
'select',
|
33840 |
{
|
33857 |
|
33858 |
var button = undefined;
|
33859 |
|
33860 |
+
if (available_filters.length > 0) {
|
33861 |
button = React.createElement('input', {
|
33862 |
id: 'post-query-submit',
|
33863 |
onClick: this.handleFilterAction,
|
33866 |
className: 'button' });
|
33867 |
}
|
33868 |
|
33869 |
+
var empty_trash = undefined;
|
33870 |
if (this.props.group === 'trash') {
|
33871 |
+
empty_trash = React.createElement('input', {
|
33872 |
onClick: this.handleEmptyTrash,
|
33873 |
type: 'submit',
|
33874 |
value: MailPoet.I18n.t('emptyTrash'),
|
33879 |
return React.createElement(
|
33880 |
'div',
|
33881 |
{ className: 'alignleft actions actions' },
|
33882 |
+
available_filters,
|
33883 |
button,
|
33884 |
+
empty_trash
|
33885 |
);
|
33886 |
}
|
33887 |
});
|
33917 |
return this.state.select2 === true;
|
33918 |
},
|
33919 |
componentDidMount: function componentDidMount() {
|
33920 |
+
if (this.allowMultipleValues()) {
|
33921 |
this.setupSelect2();
|
33922 |
}
|
33923 |
},
|
33927 |
}
|
33928 |
},
|
33929 |
componentWillUnmount: function componentWillUnmount() {
|
33930 |
+
if (this.allowMultipleValues()) {
|
33931 |
this.destroySelect2();
|
33932 |
}
|
33933 |
},
|
33985 |
return null;
|
33986 |
},
|
33987 |
loadCachedItems: function loadCachedItems() {
|
|
|
33988 |
if (typeof window['mailpoet_' + this.props.field.endpoint] !== 'undefined') {
|
33989 |
+
var items = window['mailpoet_' + this.props.field.endpoint];
|
|
|
|
|
|
|
33990 |
|
|
|
33991 |
if (this.props.field.filter !== undefined) {
|
33992 |
items = items.filter(this.props.field.filter);
|
33993 |
}
|
34041 |
}
|
34042 |
return value;
|
34043 |
},
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
34044 |
render: function render() {
|
34045 |
var _this = this;
|
34046 |
|
34070 |
multiple: this.props.field.multiple,
|
34071 |
defaultValue: this.getSelectedValues()
|
34072 |
}, this.props.field.validation),
|
|
|
34073 |
options
|
34074 |
);
|
34075 |
}
|
39893 |
if (props.item === undefined) {
|
39894 |
this.refs.form.reset();
|
39895 |
}
|
39896 |
+
} else {
|
39897 |
+
this.loadItem(props.params.id);
|
39898 |
}
|
39899 |
},
|
39900 |
loadItem: function loadItem(id) {
|
39914 |
loading: false,
|
39915 |
item: response.data
|
39916 |
});
|
|
|
|
|
|
|
39917 |
}).fail(function () {
|
39918 |
_this.setState({
|
39919 |
loading: false,
|
39939 |
|
39940 |
// only get values from displayed fields
|
39941 |
var item = {};
|
39942 |
+
this.props.fields.map(function (field) {
|
39943 |
if (field.fields !== undefined) {
|
39944 |
+
field.fields.map(function (subfield) {
|
39945 |
item[subfield.name] = _this2.state.item[subfield.name];
|
39946 |
});
|
39947 |
} else {
|
40140 |
case 'reactComponent':
|
40141 |
field = React.createElement(data.field.component, data);
|
40142 |
break;
|
|
|
|
|
|
|
|
|
40143 |
}
|
40144 |
|
40145 |
if (inline === true) {
|
40186 |
|
40187 |
return React.createElement(
|
40188 |
'tr',
|
40189 |
+
null,
|
40190 |
React.createElement(
|
40191 |
'th',
|
40192 |
{ scope: 'row' },
|
40267 |
type: "text",
|
40268 |
className: "regular-text",
|
40269 |
name: this.props.field.name,
|
40270 |
+
id: 'field_' + this.props.field.name,
|
40271 |
value: this.props.item[this.props.field.name],
|
40272 |
placeholder: this.props.field.placeholder,
|
40273 |
defaultValue: this.props.field.defaultValue,
|
40340 |
keys = Object.keys(this.props.field.values);
|
40341 |
}
|
40342 |
|
40343 |
+
var options = keys.map(function (value, index) {
|
40344 |
+
if (filter !== false && filter(_this.props.item, value) === false) {
|
40345 |
+
return;
|
40346 |
+
}
|
40347 |
+
|
40348 |
return _react2['default'].createElement(
|
40349 |
'option',
|
40350 |
{
|
40374 |
/* 298 */
|
40375 |
/***/ function(module, exports, __webpack_require__) {
|
40376 |
|
40377 |
+
var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict';
|
40378 |
|
40379 |
!(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(2)], __WEBPACK_AMD_DEFINE_RESULT__ = function (React) {
|
40380 |
var FormFieldRadio = React.createClass({
|
40381 |
+
displayName: 'FormFieldRadio',
|
40382 |
|
40383 |
render: function render() {
|
40384 |
var _this = this;
|
40387 |
return false;
|
40388 |
}
|
40389 |
|
40390 |
+
var selected_value = this.props.item[this.props.field.name];
|
40391 |
var options = Object.keys(this.props.field.values).map(function (value, index) {
|
40392 |
return React.createElement(
|
40393 |
+
'p',
|
40394 |
+
{ key: 'radio-' + index },
|
40395 |
React.createElement(
|
40396 |
+
'label',
|
40397 |
null,
|
40398 |
+
React.createElement('input', {
|
40399 |
+
type: 'radio',
|
40400 |
+
checked: selected_value === value,
|
40401 |
value: value,
|
40402 |
onChange: _this.props.onValueChange,
|
40403 |
name: _this.props.field.name }),
|
40407 |
});
|
40408 |
|
40409 |
return React.createElement(
|
40410 |
+
'div',
|
40411 |
null,
|
40412 |
options
|
40413 |
);
|
40440 |
|
40441 |
// isChecked will be true only if the value is "1"
|
40442 |
// it will be false in case value is "0" or empty
|
40443 |
+
var isChecked = !! ~ ~this.props.item[this.props.field.name];
|
40444 |
var options = Object.keys(this.props.field.values).map(function (value, index) {
|
40445 |
return React.createElement(
|
40446 |
'p',
|
40710 |
year: this.state.year
|
40711 |
};
|
40712 |
break;
|
|
|
|
|
|
|
|
|
|
|
40713 |
}
|
40714 |
|
40715 |
return value;
|
40728 |
field = matches[1];
|
40729 |
property = matches[2];
|
40730 |
|
40731 |
+
var value = ~ ~e.target.value;
|
40732 |
|
40733 |
this.setState(_defineProperty({}, '' + property, value), function () {
|
40734 |
_this.props.onValueChange({
|
40782 |
day: _this2.state.day,
|
40783 |
placeholder: _this2.props.field.day_placeholder
|
40784 |
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
40785 |
}
|
40786 |
});
|
40787 |
|
40804 |
/***/ function(module, exports, __webpack_require__) {
|
40805 |
|
40806 |
var require;/* WEBPACK VAR INJECTION */(function(module) {//! moment.js
|
40807 |
+
//! version : 2.19.3
|
40808 |
//! authors : Tim Wood, Iskren Chernev, Moment.js contributors
|
40809 |
//! license : MIT
|
40810 |
//! momentjs.com
|
42834 |
// note: all values past the year are optional and will default to the lowest possible value.
|
42835 |
// [year, month, day , hour, minute, second, millisecond]
|
42836 |
function configFromArray (config) {
|
42837 |
+
var i, date, input = [], currentDate, yearToUse;
|
42838 |
|
42839 |
if (config._d) {
|
42840 |
return;
|
42884 |
}
|
42885 |
|
42886 |
config._d = (config._useUTC ? createUTCDate : createDate).apply(null, input);
|
|
|
|
|
42887 |
// Apply timezone offset from input. The actual utcOffset can be changed
|
42888 |
// with parseZone.
|
42889 |
if (config._tzm != null) {
|
42895 |
}
|
42896 |
|
42897 |
// check for mismatching day of week
|
42898 |
+
if (config._w && typeof config._w.d !== 'undefined' && config._w.d !== config._d.getDay()) {
|
42899 |
getParsingFlags(config).weekdayMismatch = true;
|
42900 |
}
|
42901 |
}
|
44471 |
|
44472 |
addParseToken(['D', 'DD'], DATE);
|
44473 |
addParseToken('Do', function (input, array) {
|
44474 |
+
array[DATE] = toInt(input.match(match1to2)[0], 10);
|
44475 |
});
|
44476 |
|
44477 |
// MOMENTS
|
45283 |
// Side effect imports
|
45284 |
|
45285 |
|
45286 |
+
hooks.version = '2.19.3';
|
45287 |
|
45288 |
setHookCallback(createLocal);
|
45289 |
|
assets/js/{mailpoet.a5fa72ae.js → mailpoet.0a2f113c.js}
RENAMED
@@ -23905,7 +23905,7 @@ webpackJsonp([3],[
|
|
23905 |
/***/ function(module, exports, __webpack_require__) {
|
23906 |
|
23907 |
var require;/* WEBPACK VAR INJECTION */(function(module) {//! moment.js
|
23908 |
-
//! version : 2.19.
|
23909 |
//! authors : Tim Wood, Iskren Chernev, Moment.js contributors
|
23910 |
//! license : MIT
|
23911 |
//! momentjs.com
|
@@ -25935,7 +25935,7 @@ webpackJsonp([3],[
|
|
25935 |
// note: all values past the year are optional and will default to the lowest possible value.
|
25936 |
// [year, month, day , hour, minute, second, millisecond]
|
25937 |
function configFromArray (config) {
|
25938 |
-
var i, date, input = [], currentDate,
|
25939 |
|
25940 |
if (config._d) {
|
25941 |
return;
|
@@ -25985,8 +25985,6 @@ webpackJsonp([3],[
|
|
25985 |
}
|
25986 |
|
25987 |
config._d = (config._useUTC ? createUTCDate : createDate).apply(null, input);
|
25988 |
-
expectedWeekday = config._useUTC ? config._d.getUTCDay() : config._d.getDay();
|
25989 |
-
|
25990 |
// Apply timezone offset from input. The actual utcOffset can be changed
|
25991 |
// with parseZone.
|
25992 |
if (config._tzm != null) {
|
@@ -25998,7 +25996,7 @@ webpackJsonp([3],[
|
|
25998 |
}
|
25999 |
|
26000 |
// check for mismatching day of week
|
26001 |
-
if (config._w && typeof config._w.d !== 'undefined' && config._w.d !==
|
26002 |
getParsingFlags(config).weekdayMismatch = true;
|
26003 |
}
|
26004 |
}
|
@@ -27574,7 +27572,7 @@ webpackJsonp([3],[
|
|
27574 |
|
27575 |
addParseToken(['D', 'DD'], DATE);
|
27576 |
addParseToken('Do', function (input, array) {
|
27577 |
-
array[DATE] = toInt(input.match(match1to2)[0]);
|
27578 |
});
|
27579 |
|
27580 |
// MOMENTS
|
@@ -28386,7 +28384,7 @@ webpackJsonp([3],[
|
|
28386 |
// Side effect imports
|
28387 |
|
28388 |
|
28389 |
-
hooks.version = '2.19.
|
28390 |
|
28391 |
setHookCallback(createLocal);
|
28392 |
|
23905 |
/***/ function(module, exports, __webpack_require__) {
|
23906 |
|
23907 |
var require;/* WEBPACK VAR INJECTION */(function(module) {//! moment.js
|
23908 |
+
//! version : 2.19.3
|
23909 |
//! authors : Tim Wood, Iskren Chernev, Moment.js contributors
|
23910 |
//! license : MIT
|
23911 |
//! momentjs.com
|
25935 |
// note: all values past the year are optional and will default to the lowest possible value.
|
25936 |
// [year, month, day , hour, minute, second, millisecond]
|
25937 |
function configFromArray (config) {
|
25938 |
+
var i, date, input = [], currentDate, yearToUse;
|
25939 |
|
25940 |
if (config._d) {
|
25941 |
return;
|
25985 |
}
|
25986 |
|
25987 |
config._d = (config._useUTC ? createUTCDate : createDate).apply(null, input);
|
|
|
|
|
25988 |
// Apply timezone offset from input. The actual utcOffset can be changed
|
25989 |
// with parseZone.
|
25990 |
if (config._tzm != null) {
|
25996 |
}
|
25997 |
|
25998 |
// check for mismatching day of week
|
25999 |
+
if (config._w && typeof config._w.d !== 'undefined' && config._w.d !== config._d.getDay()) {
|
26000 |
getParsingFlags(config).weekdayMismatch = true;
|
26001 |
}
|
26002 |
}
|
27572 |
|
27573 |
addParseToken(['D', 'DD'], DATE);
|
27574 |
addParseToken('Do', function (input, array) {
|
27575 |
+
array[DATE] = toInt(input.match(match1to2)[0], 10);
|
27576 |
});
|
27577 |
|
27578 |
// MOMENTS
|
28384 |
// Side effect imports
|
28385 |
|
28386 |
|
28387 |
+
hooks.version = '2.19.3';
|
28388 |
|
28389 |
setHookCallback(createLocal);
|
28390 |
|
assets/js/manifest.json
CHANGED
@@ -1,10 +1,10 @@
|
|
1 |
{
|
2 |
"mp2migrator.js": "mp2migrator.81060f18.js",
|
3 |
"public.js": "public.3d1d91ad.js",
|
4 |
-
"admin.js": "admin.
|
5 |
-
"admin_vendor.js": "admin_vendor.
|
6 |
"form_editor.js": "form_editor.cc7529b3.js",
|
7 |
-
"mailpoet.js": "mailpoet.
|
8 |
"newsletter_editor.js": "newsletter_editor.e7b87b92.js",
|
9 |
-
"vendor.js": "vendor.
|
10 |
}
|
1 |
{
|
2 |
"mp2migrator.js": "mp2migrator.81060f18.js",
|
3 |
"public.js": "public.3d1d91ad.js",
|
4 |
+
"admin.js": "admin.dfed86f0.js",
|
5 |
+
"admin_vendor.js": "admin_vendor.8b1d6679.js",
|
6 |
"form_editor.js": "form_editor.cc7529b3.js",
|
7 |
+
"mailpoet.js": "mailpoet.0a2f113c.js",
|
8 |
"newsletter_editor.js": "newsletter_editor.e7b87b92.js",
|
9 |
+
"vendor.js": "vendor.16d46c95.js"
|
10 |
}
|
assets/js/{vendor.3c206dd6.js → vendor.16d46c95.js}
RENAMED
@@ -76,7 +76,7 @@
|
|
76 |
/******/ script.charset = 'utf-8';
|
77 |
/******/ script.async = true;
|
78 |
|
79 |
-
/******/ script.src = __webpack_require__.p + "" + ({"0":"admin","1":"admin_vendor","2":"form_editor","3":"mailpoet","4":"newsletter_editor"}[chunkId]||chunkId) + "." + {"0":"
|
80 |
/******/ head.appendChild(script);
|
81 |
/******/ }
|
82 |
/******/ };
|
76 |
/******/ script.charset = 'utf-8';
|
77 |
/******/ script.async = true;
|
78 |
|
79 |
+
/******/ script.src = __webpack_require__.p + "" + ({"0":"admin","1":"admin_vendor","2":"form_editor","3":"mailpoet","4":"newsletter_editor"}[chunkId]||chunkId) + "." + {"0":"dfed86f0","1":"8b1d6679","2":"cc7529b3","3":"0a2f113c","4":"e7b87b92"}[chunkId] + ".chunk.js";
|
80 |
/******/ head.appendChild(script);
|
81 |
/******/ }
|
82 |
/******/ };
|
lang/mailpoet-ca.mo
CHANGED
Binary file
|
lang/mailpoet-da_DK.mo
CHANGED
Binary file
|
lang/mailpoet-de_DE.mo
CHANGED
Binary file
|
lang/mailpoet-en_GB.mo
CHANGED
Binary file
|
lang/mailpoet-es_ES.mo
CHANGED
Binary file
|
lang/mailpoet-fa_IR.mo
CHANGED
Binary file
|
lang/mailpoet-fr_CA.mo
CHANGED
Binary file
|
lang/mailpoet-fr_FR.mo
CHANGED
Binary file
|
lang/mailpoet-it_IT.mo
CHANGED
Binary file
|
lang/mailpoet-ja.mo
CHANGED
Binary file
|
lang/mailpoet-nl_NL.mo
CHANGED
Binary file
|
lang/mailpoet-pl_PL.mo
CHANGED
Binary file
|
lang/mailpoet-pt_BR.mo
CHANGED
Binary file
|
lang/mailpoet-pt_PT.mo
CHANGED
Binary file
|
lang/mailpoet-ru_RU.mo
CHANGED
Binary file
|
lang/mailpoet-sq.mo
CHANGED
Binary file
|
lang/mailpoet-sv_SE.mo
CHANGED
Binary file
|
lang/mailpoet-tr_TR.mo
CHANGED
Binary file
|
lang/mailpoet.pot
CHANGED
@@ -4,7 +4,7 @@ msgid ""
|
|
4 |
msgstr ""
|
5 |
"Project-Id-Version: \n"
|
6 |
"Report-Msgid-Bugs-To: http://support.mailpoet.com/\n"
|
7 |
-
"POT-Creation-Date: 2017-12-
|
8 |
"MIME-Version: 1.0\n"
|
9 |
"Content-Type: text/plain; charset=utf-8\n"
|
10 |
"Content-Transfer-Encoding: 8bit\n"
|
@@ -475,11 +475,11 @@ msgid ""
|
|
475 |
"might work within a MultiSite environment, we don’t support it."
|
476 |
msgstr ""
|
477 |
|
478 |
-
#: lib/Config/Populator.php:
|
479 |
msgid "My First List"
|
480 |
msgstr ""
|
481 |
|
482 |
-
#: lib/Config/Populator.php:
|
483 |
msgid "This list is automatically created when you install MailPoet."
|
484 |
msgstr ""
|
485 |
|
@@ -5353,7 +5353,7 @@ msgstr ""
|
|
5353 |
msgid "Care to Give Your Opinion?"
|
5354 |
msgstr ""
|
5355 |
|
5356 |
-
#: views/update.html:
|
5357 |
msgid "Awesome! Now, take me to MailPoet"
|
5358 |
msgstr ""
|
5359 |
|
4 |
msgstr ""
|
5 |
"Project-Id-Version: \n"
|
6 |
"Report-Msgid-Bugs-To: http://support.mailpoet.com/\n"
|
7 |
+
"POT-Creation-Date: 2017-12-05 16:47:51+00:00\n"
|
8 |
"MIME-Version: 1.0\n"
|
9 |
"Content-Type: text/plain; charset=utf-8\n"
|
10 |
"Content-Transfer-Encoding: 8bit\n"
|
475 |
"might work within a MultiSite environment, we don’t support it."
|
476 |
msgstr ""
|
477 |
|
478 |
+
#: lib/Config/Populator.php:156
|
479 |
msgid "My First List"
|
480 |
msgstr ""
|
481 |
|
482 |
+
#: lib/Config/Populator.php:158
|
483 |
msgid "This list is automatically created when you install MailPoet."
|
484 |
msgstr ""
|
485 |
|
5353 |
msgid "Care to Give Your Opinion?"
|
5354 |
msgstr ""
|
5355 |
|
5356 |
+
#: views/update.html:109 views/welcome.html:60
|
5357 |
msgid "Awesome! Now, take me to MailPoet"
|
5358 |
msgstr ""
|
5359 |
|
lib/Config/Localizer.php
CHANGED
@@ -35,15 +35,4 @@ class Localizer {
|
|
35 |
);
|
36 |
return $locale;
|
37 |
}
|
38 |
-
|
39 |
-
function forceLoadWebsiteLocaleText() {
|
40 |
-
$language_path = sprintf(
|
41 |
-
'%s/%s-%s.mo',
|
42 |
-
Env::$languages_path,
|
43 |
-
Env::$plugin_name,
|
44 |
-
get_locale()
|
45 |
-
);
|
46 |
-
unload_textdomain(Env::$plugin_name);
|
47 |
-
load_textdomain(Env::$plugin_name, $language_path);
|
48 |
-
}
|
49 |
}
|
35 |
);
|
36 |
return $locale;
|
37 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
38 |
}
|
lib/Config/Populator.php
CHANGED
@@ -57,8 +57,6 @@ class Populator {
|
|
57 |
}
|
58 |
|
59 |
function up() {
|
60 |
-
$localizer = new Localizer();
|
61 |
-
$localizer->forceLoadWebsiteLocaleText();
|
62 |
$this->convertExistingDataToUTF8();
|
63 |
$this->migrateSimpleScheduledTasks();
|
64 |
$this->populateNewsletterSentAtField();
|
57 |
}
|
58 |
|
59 |
function up() {
|
|
|
|
|
60 |
$this->convertExistingDataToUTF8();
|
61 |
$this->migrateSimpleScheduledTasks();
|
62 |
$this->populateNewsletterSentAtField();
|
mailpoet.php
CHANGED
@@ -4,12 +4,12 @@ if(!defined('ABSPATH')) exit;
|
|
4 |
|
5 |
/*
|
6 |
* Plugin Name: MailPoet 3 (New)
|
7 |
-
* Version: 3.
|
8 |
* Plugin URI: http://www.mailpoet.com
|
9 |
* Description: Create and send newsletters, post notifications and welcome emails from your WordPress.
|
10 |
* Author: MailPoet
|
11 |
* Author URI: http://www.mailpoet.com
|
12 |
-
* Requires at least: 4.
|
13 |
* Tested up to: 4.9
|
14 |
*
|
15 |
* Domain Path: /lang/
|
@@ -20,7 +20,7 @@ if(!defined('ABSPATH')) exit;
|
|
20 |
*/
|
21 |
|
22 |
$mailpoet_plugin = array(
|
23 |
-
'version' => '3.
|
24 |
'filename' => __FILE__,
|
25 |
'path' => dirname(__FILE__),
|
26 |
'autoloader' => dirname(__FILE__) . '/vendor/autoload.php',
|
4 |
|
5 |
/*
|
6 |
* Plugin Name: MailPoet 3 (New)
|
7 |
+
* Version: 3.2.4
|
8 |
* Plugin URI: http://www.mailpoet.com
|
9 |
* Description: Create and send newsletters, post notifications and welcome emails from your WordPress.
|
10 |
* Author: MailPoet
|
11 |
* Author URI: http://www.mailpoet.com
|
12 |
+
* Requires at least: 4.6
|
13 |
* Tested up to: 4.9
|
14 |
*
|
15 |
* Domain Path: /lang/
|
20 |
*/
|
21 |
|
22 |
$mailpoet_plugin = array(
|
23 |
+
'version' => '3.2.4',
|
24 |
'filename' => __FILE__,
|
25 |
'path' => dirname(__FILE__),
|
26 |
'autoloader' => dirname(__FILE__) . '/vendor/autoload.php',
|
readme.txt
CHANGED
@@ -1,10 +1,10 @@
|
|
1 |
=== MailPoet 3 (New) ===
|
2 |
Contributors: mailpoet, wysija
|
3 |
Tags: newsletter, email, welcome email, post notification, autoresponder, signup, subscription, SMTP
|
4 |
-
Requires at least: 4.
|
5 |
Tested up to: 4.9
|
6 |
Requires PHP: 5.3
|
7 |
-
Stable tag: 3.
|
8 |
License: GPLv3
|
9 |
License URI: https://www.gnu.org/licenses/gpl-3.0.html
|
10 |
|
@@ -116,10 +116,6 @@ Stop by our [support site](https://www.mailpoet.com/support).
|
|
116 |
|
117 |
== Changelog ==
|
118 |
|
119 |
-
= 3.3.0 - 2017-12-12 =
|
120 |
-
* Premium: you can now segment your subscribers by email opens or clicks;
|
121 |
-
* Fixed: default newsletter templates will not be duplicated when user switches profile language to one that's different from the system's.
|
122 |
-
|
123 |
= 3.2.4 - 2017-12-05 =
|
124 |
* Improved: [mailpoet_manage_subscription] always renders for logged in WP users. Thx Jon, Sean, Steve & metaglyphics;
|
125 |
* Fixed: migration from MailPoet 2 on hosts with missing "mbstring" PHP extension. Thanks Alvaro!
|
1 |
=== MailPoet 3 (New) ===
|
2 |
Contributors: mailpoet, wysija
|
3 |
Tags: newsletter, email, welcome email, post notification, autoresponder, signup, subscription, SMTP
|
4 |
+
Requires at least: 4.6
|
5 |
Tested up to: 4.9
|
6 |
Requires PHP: 5.3
|
7 |
+
Stable tag: 3.2.4
|
8 |
License: GPLv3
|
9 |
License URI: https://www.gnu.org/licenses/gpl-3.0.html
|
10 |
|
116 |
|
117 |
== Changelog ==
|
118 |
|
|
|
|
|
|
|
|
|
119 |
= 3.2.4 - 2017-12-05 =
|
120 |
* Improved: [mailpoet_manage_subscription] always renders for logged in WP users. Thx Jon, Sean, Steve & metaglyphics;
|
121 |
* Fixed: migration from MailPoet 2 on hosts with missing "mbstring" PHP extension. Thanks Alvaro!
|
vendor/autoload.php
CHANGED
@@ -4,4 +4,4 @@
|
|
4 |
|
5 |
require_once __DIR__ . '/composer/autoload_real.php';
|
6 |
|
7 |
-
return
|
4 |
|
5 |
require_once __DIR__ . '/composer/autoload_real.php';
|
6 |
|
7 |
+
return ComposerAutoloaderInit46dc1bc911be5f4f030ee9cfb1b2a6de::getLoader();
|
vendor/composer/autoload_real.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
|
3 |
// autoload_real.php @generated by Composer
|
4 |
|
5 |
-
class
|
6 |
{
|
7 |
private static $loader;
|
8 |
|
@@ -19,15 +19,15 @@ class ComposerAutoloaderInit76870e8a6a5056b793a5abea5bcd85d9
|
|
19 |
return self::$loader;
|
20 |
}
|
21 |
|
22 |
-
spl_autoload_register(array('
|
23 |
self::$loader = $loader = new \Composer\Autoload\ClassLoader();
|
24 |
-
spl_autoload_unregister(array('
|
25 |
|
26 |
$useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());
|
27 |
if ($useStaticLoader) {
|
28 |
require_once __DIR__ . '/autoload_static.php';
|
29 |
|
30 |
-
call_user_func(\Composer\Autoload\
|
31 |
} else {
|
32 |
$map = require __DIR__ . '/autoload_namespaces.php';
|
33 |
foreach ($map as $namespace => $path) {
|
@@ -48,19 +48,19 @@ class ComposerAutoloaderInit76870e8a6a5056b793a5abea5bcd85d9
|
|
48 |
$loader->register(true);
|
49 |
|
50 |
if ($useStaticLoader) {
|
51 |
-
$includeFiles = Composer\Autoload\
|
52 |
} else {
|
53 |
$includeFiles = require __DIR__ . '/autoload_files.php';
|
54 |
}
|
55 |
foreach ($includeFiles as $fileIdentifier => $file) {
|
56 |
-
|
57 |
}
|
58 |
|
59 |
return $loader;
|
60 |
}
|
61 |
}
|
62 |
|
63 |
-
function
|
64 |
{
|
65 |
if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) {
|
66 |
require $file;
|
2 |
|
3 |
// autoload_real.php @generated by Composer
|
4 |
|
5 |
+
class ComposerAutoloaderInit46dc1bc911be5f4f030ee9cfb1b2a6de
|
6 |
{
|
7 |
private static $loader;
|
8 |
|
19 |
return self::$loader;
|
20 |
}
|
21 |
|
22 |
+
spl_autoload_register(array('ComposerAutoloaderInit46dc1bc911be5f4f030ee9cfb1b2a6de', 'loadClassLoader'), true, true);
|
23 |
self::$loader = $loader = new \Composer\Autoload\ClassLoader();
|
24 |
+
spl_autoload_unregister(array('ComposerAutoloaderInit46dc1bc911be5f4f030ee9cfb1b2a6de', 'loadClassLoader'));
|
25 |
|
26 |
$useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());
|
27 |
if ($useStaticLoader) {
|
28 |
require_once __DIR__ . '/autoload_static.php';
|
29 |
|
30 |
+
call_user_func(\Composer\Autoload\ComposerStaticInit46dc1bc911be5f4f030ee9cfb1b2a6de::getInitializer($loader));
|
31 |
} else {
|
32 |
$map = require __DIR__ . '/autoload_namespaces.php';
|
33 |
foreach ($map as $namespace => $path) {
|
48 |
$loader->register(true);
|
49 |
|
50 |
if ($useStaticLoader) {
|
51 |
+
$includeFiles = Composer\Autoload\ComposerStaticInit46dc1bc911be5f4f030ee9cfb1b2a6de::$files;
|
52 |
} else {
|
53 |
$includeFiles = require __DIR__ . '/autoload_files.php';
|
54 |
}
|
55 |
foreach ($includeFiles as $fileIdentifier => $file) {
|
56 |
+
composerRequire46dc1bc911be5f4f030ee9cfb1b2a6de($fileIdentifier, $file);
|
57 |
}
|
58 |
|
59 |
return $loader;
|
60 |
}
|
61 |
}
|
62 |
|
63 |
+
function composerRequire46dc1bc911be5f4f030ee9cfb1b2a6de($fileIdentifier, $file)
|
64 |
{
|
65 |
if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) {
|
66 |
require $file;
|
vendor/composer/autoload_static.php
CHANGED
@@ -4,7 +4,7 @@
|
|
4 |
|
5 |
namespace Composer\Autoload;
|
6 |
|
7 |
-
class
|
8 |
{
|
9 |
public static $files = array (
|
10 |
'0e6d7bf4a5811bfa5cf40c5ccd6fae6a' => __DIR__ . '/..' . '/symfony/polyfill-mbstring/bootstrap.php',
|
@@ -841,10 +841,10 @@ class ComposerStaticInit76870e8a6a5056b793a5abea5bcd85d9
|
|
841 |
public static function getInitializer(ClassLoader $loader)
|
842 |
{
|
843 |
return \Closure::bind(function () use ($loader) {
|
844 |
-
$loader->prefixLengthsPsr4 =
|
845 |
-
$loader->prefixDirsPsr4 =
|
846 |
-
$loader->prefixesPsr0 =
|
847 |
-
$loader->classMap =
|
848 |
|
849 |
}, null, ClassLoader::class);
|
850 |
}
|
4 |
|
5 |
namespace Composer\Autoload;
|
6 |
|
7 |
+
class ComposerStaticInit46dc1bc911be5f4f030ee9cfb1b2a6de
|
8 |
{
|
9 |
public static $files = array (
|
10 |
'0e6d7bf4a5811bfa5cf40c5ccd6fae6a' => __DIR__ . '/..' . '/symfony/polyfill-mbstring/bootstrap.php',
|
841 |
public static function getInitializer(ClassLoader $loader)
|
842 |
{
|
843 |
return \Closure::bind(function () use ($loader) {
|
844 |
+
$loader->prefixLengthsPsr4 = ComposerStaticInit46dc1bc911be5f4f030ee9cfb1b2a6de::$prefixLengthsPsr4;
|
845 |
+
$loader->prefixDirsPsr4 = ComposerStaticInit46dc1bc911be5f4f030ee9cfb1b2a6de::$prefixDirsPsr4;
|
846 |
+
$loader->prefixesPsr0 = ComposerStaticInit46dc1bc911be5f4f030ee9cfb1b2a6de::$prefixesPsr0;
|
847 |
+
$loader->classMap = ComposerStaticInit46dc1bc911be5f4f030ee9cfb1b2a6de::$classMap;
|
848 |
|
849 |
}, null, ClassLoader::class);
|
850 |
}
|
views/update.html
CHANGED
@@ -94,20 +94,13 @@
|
|
94 |
<div class="feature-section one-col mailpoet_centered">
|
95 |
<h2><%= __('Care to Give Your Opinion?') %></h2>
|
96 |
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
|
101 |
-
|
102 |
-
|
103 |
-
|
104 |
-
domain: "mailpoet.polldaddy.com/s/",
|
105 |
-
id: "what-s-one-feature-that-s-missing-in-mailpoet",
|
106 |
-
placeholder: "pd_1505214143"
|
107 |
-
} );
|
108 |
-
|
109 |
-
(function(d,c,j){if(!document.getElementById(j)){var pd=d.createElement(c),s;pd.id=j;pd.src=('https:'==document.location.protocol)?'https://polldaddy.com/survey.js':'http://i0.poll.fm/survey.js';s=document.getElementsByTagName(c)[0];s.parentNode.insertBefore(pd,s);}}(document,'script','pd-embed'));
|
110 |
-
</script>
|
111 |
</div>
|
112 |
|
113 |
<hr>
|
94 |
<div class="feature-section one-col mailpoet_centered">
|
95 |
<h2><%= __('Care to Give Your Opinion?') %></h2>
|
96 |
|
97 |
+
<% if settings['mta']['method'] == 'MailPoet' %>
|
98 |
+
<script type="text/javascript" charset="utf-8" src="https://secure.polldaddy.com/p/9884019.js"></script>
|
99 |
+
<noscript><a href="https://polldaddy.com/poll/9884019/">You're confident your emails arrive in your subscribers' inboxes</a></noscript>
|
100 |
+
<% else %>
|
101 |
+
<script type="text/javascript" charset="utf-8" src="https://secure.polldaddy.com/p/9884021.js"></script>
|
102 |
+
<noscript><a href="https://polldaddy.com/poll/9884021/">You're confident your emails arrive in your subscribers' inboxes</a></noscript>
|
103 |
+
<% endif %>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
104 |
</div>
|
105 |
|
106 |
<hr>
|