@plusscommunities/pluss-newsletter-web-sharing 1.3.4 → 1.3.8-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/dist/index.cjs.js +210 -188
  2. package/dist/index.esm.js +210 -188
  3. package/dist/index.umd.js +210 -188
  4. package/package.json +10 -8
  5. package/src/actions/types.js +1 -1
  6. package/src/components/ActivityText.js +1 -1
  7. package/src/components/PreviewFull.js +1 -1
  8. package/src/components/PreviewGrid.js +1 -1
  9. package/src/feature.config.js +2 -96
  10. package/src/index.js +1 -1
  11. package/src/screens/Newsletter/AddNewsletterEntry.js +19 -18
  12. package/src/screens/Newsletter/AvailableNews.js +1 -1
  13. package/src/screens/Newsletter/GenerateNewsletter.js +1 -1
  14. package/src/screens/Newsletter/ListNewsletterEntries.js +7 -2
  15. package/src/screens/Newsletter/NewsHub.js +1 -1
  16. package/src/screens/Newsletter/NewsHubAnalytics.js +1 -1
  17. package/src/screens/Newsletter/NewsletterAnalytics.js +1 -1
  18. package/src/screens/Newsletter/NewsletterSubmission.js +1 -1
  19. package/src/screens/Newsletter/NewsletterSubmissions.js +2 -1
  20. package/src/screens/Newsletter/NewsletterTemplate.js +1 -1
  21. package/src/screens/Newsletter/PublishAvailableNews.js +13 -16
  22. package/src/{feature.config.coaching.js → values.config.coaching.js} +1 -140
  23. package/src/{feature.config.curatedposts.js → values.config.curatedposts.js} +1 -140
  24. package/src/values.config.default.js +96 -0
  25. package/src/{feature.config.headoffice.js → values.config.headoffice.js} +1 -140
  26. package/src/{feature.config.sharing.js → values.config.js} +1 -140
  27. package/src/{feature.config.menu.js → values.config.menu.js} +1 -140
  28. package/src/{feature.config.noticeboard.js → values.config.noticeboard.js} +1 -140
  29. package/src/{feature.config.personaldev.js → values.config.personaldev.js} +1 -140
  30. package/src/{feature.config.sales.js → values.config.sales.js} +1 -140
  31. package/src/values.config.sharing.js +96 -0
  32. package/src/values.config.shifts.js +96 -0
  33. package/src/{feature.config.training.js → values.config.training.js} +1 -140
  34. package/src/webapi/newsletterActions.js +1 -1
  35. package/package.default.json +0 -43
  36. package/package.test.json +0 -43
  37. package/src/feature.config.default.js +0 -235
package/dist/index.cjs.js CHANGED
@@ -67,97 +67,97 @@ var NewsletterPreview__default = /*#__PURE__*/_interopDefaultLegacy(NewsletterPr
67
67
 
68
68
  // import * as PlussCore from '../../pluss-core/src';
69
69
  var values = {
70
- featureKey: 'sharing',
71
- serviceKey: 'newsletterSharing',
72
- reducerKey: 'newsSharing',
73
- analyticsKey: 'newsSharing',
74
- actionNewsLoaded: 'NEWS_LOADEDSharing',
75
- actionNewsUpdated: 'NEWS_UPDATEDSharing',
76
- actionNewsRemoved: 'NEWS_REMOVEDSharing',
77
- actionNewsSubmissionsLoaded: 'NEWS_SUBMISSIONS_LOADEDSharing',
78
- actionNewsSubmissionRemoved: 'NEWS_SUBMISSION_REMOVEDSharing',
79
- actionNewsPurge: 'NEWS_PURGESharing',
80
- actionNewsDashboardLoading: 'NEWS_DASHBOARD_LOADINGSharing',
81
- actionNewsSubmissionsDashboardLoading: 'NEWS_SUBMISSIONS_DASHBOARD_LOADINGSharing',
82
- permissionNewsletter: 'newsletterSharing',
83
- permissionNewsletterSubmit: 'newsletterSubmitSharing',
84
- activityAddNewsSubmission: 'AddNewsSubmissionSharing',
85
- activityApproveNewsSubmission: 'ApproveNewsSubmissionSharing',
86
- activityRejectNewsSubmission: 'RejectNewsSubmissionSharing',
87
- activityAddNews: 'AddNewsSharing',
88
- activityEditNews: 'EditNewsSharing',
89
- acitivtyDeleteNews: 'DeleteNewsSharing',
90
- routeNewsHub: '/newsSharing',
91
- routeAddNewsletterEntry: '/newsSharing/article',
92
- routePublishAvailableNews: '/newsSharing/content/',
93
- routeNewsletterSubmission: '/newsSharing/newslettersubmission/',
94
- routeNewsletterAnalytics: '/newsSharing/analytics/',
95
- routeGenerateNewsletter: '/newsletterSharing/generate',
96
- routeNewsletterTemplate: '/embed/newsletterSharing',
97
- screenNewsHub: 'NewsHubSharing',
98
- screenAddNewsletterEntry: 'AddNewsletterEntrySharing',
99
- screenPublishAvailableNews: 'PublishAvailableNewsSharing',
100
- screenNewsletterSubmission: 'NewsletterSubmissionSharing',
101
- screenNewsletterAnalytics: 'NewsletterAnalyticsSharing',
102
- screenGenerateNewsletter: 'GenerateNewsletterSharing',
103
- screenNewsletterTemplate: 'NewsletterTemplateSharing',
104
- svgPathGridIcon: 'M6.9375 5.25C5.59802 5.25 4.5 6.34802 4.5 7.6875V13.6875V15.9507C4.5 16.6825 5.39622 17.1394 5.98828 16.7095C5.98853 16.7095 5.98877 16.7095 5.98901 16.7095L7.60913 15.531C7.91811 16.5231 8.84788 17.25 9.9375 17.25H14.6294L18.011 19.7095C18.0112 19.7095 18.0115 19.7095 18.0117 19.7095C18.6038 20.1394 19.5 19.6825 19.5 18.9507V16.6875V10.6875C19.5 9.34802 18.402 8.25 17.0625 8.25H16.5V7.6875C16.5 6.34802 15.402 5.25 14.0625 5.25H6.9375ZM6.9375 6.375H14.0625C14.7938 6.375 15.375 6.95623 15.375 7.6875V11.8125C15.375 12.5438 14.7938 13.125 14.0625 13.125H9.1875C9.06854 13.125 8.95264 13.1627 8.85645 13.2327L5.625 15.583V13.6875V7.6875C5.625 6.95623 6.20623 6.375 6.9375 6.375ZM16.5 9.375H17.0625C17.7938 9.375 18.375 9.95623 18.375 10.6875V16.6875V18.583L15.1436 16.2327C15.0474 16.1627 14.9315 16.125 14.8125 16.125H9.9375C9.20623 16.125 8.625 15.5438 8.625 14.8125V14.792L9.37061 14.25H14.0625C15.402 14.25 16.5 13.152 16.5 11.8125V9.375Z',
105
- svgPathGridIconViewBox: '0 0 24 24',
106
- optionForceNewsAuthorName: 'forceNewsAuthorNameSharing',
107
- optionNewsComments: 'newsCommentsSharing',
108
- optionNewsNotifications: 'newsNotificationsSharing',
109
- optionUseLargeNews: 'useLargeNewsSharing',
110
- localStorageNewsletterBrandData: "newsletterBrandDataSharing",
111
- localStorageNewsletterMakerLastUpdate: "newsletterMakerLastUpdateSharing",
112
- localStorageNewsletterMakerData: "newsletterMakerDataSharing",
113
- stringPostfixSubmissionEmail: 'newssubmissionemailSharing',
114
- menuOrder: 3.5,
115
- textTipKeepYourTVNewsFeedActiveAndCurrent: 'Tip: Keep your TV Sharing feed active and current, but don’t flood\nit with so much content that important posts get lost.',
116
- textFeaturedNews: 'Featured Sharing',
117
- textIsThisAFeaturedNewsArticle: 'Is this a featured sharing?',
118
- textFeaturedNewsArticlesWillBeHighlighted: 'Featured sharings will be highlighted on the Home page.',
119
- textThisPostHasPreviouslyBeenPublished: "This sharing has previously been published. Are you sure you want to continue?",
120
- textNewsletterTitlePostfix: 'Sharing',
121
- textCreateNewsletter: 'Create Sharing',
122
- textNoSelectedNews: 'No selected sharing yet',
123
- textNewsletterTitle: 'Sharing Title',
124
- textSelectNews: 'Select Sharing',
125
- textSelectedNews: 'Selected Sharing',
126
- textAddEditNewsPostfix: 'sharing',
70
+ featureKey: 'shifts',
71
+ serviceKey: 'newsletterShifts',
72
+ reducerKey: 'newsShifts',
73
+ analyticsKey: 'newsShifts',
74
+ actionNewsLoaded: 'NEWS_LOADEDShifts',
75
+ actionNewsUpdated: 'NEWS_UPDATEDShifts',
76
+ actionNewsRemoved: 'NEWS_REMOVEDShifts',
77
+ actionNewsSubmissionsLoaded: 'NEWS_SUBMISSIONS_LOADEDShifts',
78
+ actionNewsSubmissionRemoved: 'NEWS_SUBMISSION_REMOVEDShifts',
79
+ actionNewsPurge: 'NEWS_PURGEShifts',
80
+ actionNewsDashboardLoading: 'NEWS_DASHBOARD_LOADINGShifts',
81
+ actionNewsSubmissionsDashboardLoading: 'NEWS_SUBMISSIONS_DASHBOARD_LOADINGShifts',
82
+ permissionNewsletter: 'newsletterShifts',
83
+ permissionNewsletterSubmit: 'newsletterSubmitShifts',
84
+ activityAddNewsSubmission: 'AddNewsSubmissionShifts',
85
+ activityApproveNewsSubmission: 'ApproveNewsSubmissionShifts',
86
+ activityRejectNewsSubmission: 'RejectNewsSubmissionShifts',
87
+ activityAddNews: 'AddNewsShifts',
88
+ activityEditNews: 'EditNewsShifts',
89
+ acitivtyDeleteNews: 'DeleteNewsShifts',
90
+ routeNewsHub: '/newsShifts',
91
+ routeAddNewsletterEntry: '/newsShifts/article',
92
+ routePublishAvailableNews: '/newsShifts/content/',
93
+ routeNewsletterSubmission: '/newsShifts/newslettersubmission/',
94
+ routeNewsletterAnalytics: '/newsShifts/analytics/',
95
+ routeGenerateNewsletter: '/newsletterShifts/generate',
96
+ routeNewsletterTemplate: '/embed/newsletterShifts',
97
+ screenNewsHub: 'NewsHubShifts',
98
+ screenAddNewsletterEntry: 'AddNewsletterEntryShifts',
99
+ screenPublishAvailableNews: 'PublishAvailableNewsShifts',
100
+ screenNewsletterSubmission: 'NewsletterSubmissionShifts',
101
+ screenNewsletterAnalytics: 'NewsletterAnalyticsShifts',
102
+ screenGenerateNewsletter: 'GenerateNewsletterShifts',
103
+ screenNewsletterTemplate: 'NewsletterTemplateShifts',
104
+ svgPathGridIcon: 'M8.625 4.5C7.18359 4.5 6 5.68359 6 7.125C6 8.56641 7.18359 9.75 8.625 9.75C10.0664 9.75 11.25 8.56641 11.25 7.125C11.25 5.68359 10.0664 4.5 8.625 4.5ZM15.375 4.5C13.9336 4.5 12.75 5.68359 12.75 7.125C12.75 8.56641 13.9336 9.75 15.375 9.75C16.8164 9.75 18 8.56641 18 7.125C18 5.68359 16.8164 4.5 15.375 4.5ZM8.625 6C9.25488 6 9.75 6.49512 9.75 7.125C9.75 7.75488 9.25488 8.25 8.625 8.25C7.99512 8.25 7.5 7.75488 7.5 7.125C7.5 6.49512 7.99512 6 8.625 6ZM15.375 6C16.0049 6 16.5 6.49512 16.5 7.125C16.5 7.75488 16.0049 8.25 15.375 8.25C14.7451 8.25 14.25 7.75488 14.25 7.125C14.25 6.49512 14.7451 6 15.375 6ZM5.25 9C3.60059 9 2.25 10.3506 2.25 12C2.25 12.835 2.60742 13.5879 3.16406 14.1328C2.16504 14.8096 1.5 15.9609 1.5 17.25H3C3 15.999 3.99902 15 5.25 15C6.50098 15 7.5 15.999 7.5 17.25H9C9 15.9609 8.33496 14.8096 7.33594 14.1328C7.89258 13.5879 8.25 12.835 8.25 12C8.25 10.3506 6.89941 9 5.25 9ZM9 17.25C8.53125 17.877 8.25 18.665 8.25 19.5H9.75C9.75 18.249 10.749 17.25 12 17.25C13.251 17.25 14.25 18.249 14.25 19.5H15.75C15.75 18.665 15.4688 17.877 15 17.25C14.7451 16.9102 14.4375 16.6201 14.0859 16.3828C14.6426 15.8379 15 15.085 15 14.25C15 12.6006 13.6494 11.25 12 11.25C10.3506 11.25 9 12.6006 9 14.25C9 15.085 9.35742 15.8379 9.91406 16.3828C9.5625 16.6201 9.25488 16.9102 9 17.25ZM15 17.25H16.5C16.5 15.999 17.499 15 18.75 15C20.001 15 21 15.999 21 17.25H22.5C22.5 15.9609 21.835 14.8096 20.8359 14.1328C21.3926 13.5879 21.75 12.835 21.75 12C21.75 10.3506 20.3994 9 18.75 9C17.1006 9 15.75 10.3506 15.75 12C15.75 12.835 16.1074 13.5879 16.6641 14.1328C15.665 14.8096 15 15.9609 15 17.25ZM5.25 10.5C6.08789 10.5 6.75 11.1621 6.75 12C6.75 12.8379 6.08789 13.5 5.25 13.5C4.41211 13.5 3.75 12.8379 3.75 12C3.75 11.1621 4.41211 10.5 5.25 10.5ZM18.75 10.5C19.5879 10.5 20.25 11.1621 20.25 12C20.25 12.8379 19.5879 13.5 18.75 13.5C17.9121 13.5 17.25 12.8379 17.25 12C17.25 11.1621 17.9121 10.5 18.75 10.5ZM12 12.75C12.8379 12.75 13.5 13.4121 13.5 14.25C13.5 15.0879 12.8379 15.75 12 15.75C11.1621 15.75 10.5 15.0879 10.5 14.25C10.5 13.4121 11.1621 12.75 12 12.75Z',
105
+ svgPathGridIconViewBox: '0 0 30 30',
106
+ optionForceNewsAuthorName: 'forceNewsAuthorNameShifts',
107
+ optionNewsComments: 'newsCommentsShifts',
108
+ optionNewsNotifications: 'newsNotificationsShifts',
109
+ optionUseLargeNews: 'useLargeNewsShifts',
110
+ localStorageNewsletterBrandData: "newsletterBrandDataShifts",
111
+ localStorageNewsletterMakerLastUpdate: "newsletterMakerLastUpdateShifts",
112
+ localStorageNewsletterMakerData: "newsletterMakerDataShifts",
113
+ stringPostfixSubmissionEmail: 'newssubmissionemailShifts',
114
+ menuOrder: 3.4,
115
+ textTipKeepYourTVNewsFeedActiveAndCurrent: 'Tip: Keep your TV Shifts feed active and current, but don’t flood\nit with so much content that important posts get lost.',
116
+ textFeaturedNews: 'Featured Shifts',
117
+ textIsThisAFeaturedNewsArticle: 'Is this a featured shift?',
118
+ textFeaturedNewsArticlesWillBeHighlighted: 'Featured shifts will be highlighted on the Home page.',
119
+ textThisPostHasPreviouslyBeenPublished: "This shift has previously been published to this village. Are you sure you want to continue?",
120
+ textNewsletterTitlePostfix: 'Shift',
121
+ textCreateNewsletter: 'Create Shift',
122
+ textNoSelectedNews: 'No selected shift yet',
123
+ textNewsletterTitle: 'Shift Title',
124
+ textSelectNews: 'Select Shift',
125
+ textSelectedNews: 'Selected Shift',
126
+ textAddEditNewsPostfix: 'shifts',
127
127
  textNoteThisWillNotChangeInTheApp: function textNoteThisWillNotChangeInTheApp(changeText) {
128
- return "Note: This will not ".concat(changeText, " the sharing in the app");
128
+ return "Note: This will not ".concat(changeText, " the shift in the app");
129
129
  },
130
- textAreYouSureYouWantToDelete: "Are you sure you want to delete that sharing?",
131
- textThereAreNoNews: 'There are no sharings',
132
- textTitleNews: 'Sharing',
133
- textSubmitYourNewNewsPostHere: 'Submit your new sharing here. You will be notified once your sharing has been approved.',
134
- textPrintNewsletter: 'Print Sharing',
135
- textBackToNews: 'Back to Sharing',
136
- textNewsAnalytics: 'SHARING ANALYTICS',
137
- textNewsSubmission: 'SHARING SUBMISSION',
138
- textNewsPost: 'SHARING POST',
139
- textNewsPostTitle: 'Sharing title',
140
- textWhenANewsletterSubmissionIsAdded: 'When a sharing submission is added, the entered address will recieve an email notification.',
141
- textIsThisAFeaturedNewsPost: 'Is this a featured sharing?',
142
- textFeaturedNewsPostWillBeHighlighted: 'Featured sharing will be highlighted on the Home page.',
143
- textSubmittedANewsletterPostForReview: 'submitted a sharing for review:',
144
- textApprovedANewsSubmission: 'approved a sharing submission:',
145
- textRejectedANewsSubmission: 'rejected a sharing submission:',
146
- textAddedANewsletterPost: 'added a sharing:',
147
- textEditedANewsletterPost: 'edited a sharing:',
148
- textDeletedANewsletterPost: 'deleted a sharing:',
149
- textSingularName: 'Sharing',
150
- textThereIsNoNews: 'There is no Sharing',
151
- textTheAuthorOfANewsPostWillAlwaysDisplay: 'The author of a sharing will always display.',
152
- textAllowNewsComments: 'Allow Sharing Comments',
153
- textUsersCanPostCommentsOnNews: 'Users can post comments on Sharing within the app.',
154
- textAllowNewsNotification: 'Allow Sharing Notifications',
155
- textWhenSettingUpANewsPost: 'When setting up a sharing, the creator may choose to send a push notification to users of the app.',
156
- textCondensedNewsStyle: 'Condensed Sharing Style',
157
- textTheNewsSectionUsesCondensedNewsItems: 'The Sharing section uses condensed Sharing items - smaller images, less information and less scrolling.',
158
- textMenuTitle: 'Sharing',
159
- textPermissionNewsletterManagement: 'Sharing Management',
160
- textPermissionNewsletterSubmission: 'Sharing Submission (Approval Required)'
130
+ textAreYouSureYouWantToDelete: "Are you sure you want to delete that shift?",
131
+ textThereAreNoNews: 'There are no shifts',
132
+ textTitleNews: 'Shifts',
133
+ textSubmitYourNewNewsPostHere: 'Submit your new shift here. You will be notified once your post has been approved.',
134
+ textPrintNewsletter: 'Print Shifts',
135
+ textBackToNews: 'Back to Shifts',
136
+ textNewsAnalytics: 'SHIFTS ANALYTICS',
137
+ textNewsSubmission: 'SHIFTS SUBMISSION',
138
+ textNewsPost: 'SHIFT POST',
139
+ textNewsPostTitle: 'Shift title',
140
+ textWhenANewsletterSubmissionIsAdded: 'When a shift submission is added, the entered address will recieve an email notification.',
141
+ textIsThisAFeaturedNewsPost: 'Is this a featured shift?',
142
+ textFeaturedNewsPostWillBeHighlighted: 'Featured shifts will be highlighted on the Home page.',
143
+ textSubmittedANewsletterPostForReview: 'submitted a shift for review:',
144
+ textApprovedANewsSubmission: 'approved a shift submission:',
145
+ textRejectedANewsSubmission: 'rejected a shift submission:',
146
+ textAddedANewsletterPost: 'added a shift:',
147
+ textEditedANewsletterPost: 'edited a shift:',
148
+ textDeletedANewsletterPost: 'deleted a shift:',
149
+ textSingularName: 'Shift',
150
+ textThereIsNoNews: 'There is no Shift',
151
+ textTheAuthorOfANewsPostWillAlwaysDisplay: 'The author of a shift will always display.',
152
+ textAllowNewsComments: 'Allow Shift Comments',
153
+ textUsersCanPostCommentsOnNews: 'Users can post comments on Shifts within the app.',
154
+ textAllowNewsNotification: 'Allow Shifts Notifications',
155
+ textWhenSettingUpANewsPost: 'When setting up a shift, the creator may choose to send a push notification to users of the app.',
156
+ textCondensedNewsStyle: 'Condensed Shifts Style',
157
+ textTheNewsSectionUsesCondensedNewsItems: 'The Shifts section uses condensed Shifts items - smaller images, less information and less scrolling.',
158
+ textMenuTitle: 'Shifts',
159
+ textPermissionNewsletterManagement: 'Shifts Management',
160
+ textPermissionNewsletterSubmission: 'Shifts Submission (Approval Required)'
161
161
  };
162
162
  var FeatureConfig = {
163
163
  key: values.featureKey,
@@ -950,7 +950,9 @@ var ListNewsletter$1 = /*#__PURE__*/function (_Component) {
950
950
  style: {
951
951
  minWidth: '100%'
952
952
  }
953
- }, this.renderContent());
953
+ }, this.renderContent(), /*#__PURE__*/React__default['default'].createElement("div", {
954
+ className: "hub_tidioPadding"
955
+ }));
954
956
  }
955
957
  }]);
956
958
 
@@ -986,6 +988,7 @@ var getSiteNameFromRoles = Helper.getSiteNameFromRoles;
986
988
  var onlyAlphanumeric = Helper.onlyAlphanumeric;
987
989
  var setLocalStorage = Helper.setLocalStorage;
988
990
  var readJSONFromStorage = Helper.readJSONFromStorage;
991
+ var getSiteSettingFromState = Helper.getSiteSettingFromState;
989
992
 
990
993
  function _createSuper$f(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct$f(); return function _createSuperInternal() { var Super = _getPrototypeOf__default['default'](Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf__default['default'](this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn__default['default'](this, result); }; }
991
994
 
@@ -1322,7 +1325,9 @@ var NewsletterSubmissions = /*#__PURE__*/function (_Component) {
1322
1325
  onClick: function onClick() {
1323
1326
  _this7.sortByCol('SubmittedBy');
1324
1327
  }
1325
- }, "Submitted By", this.renderSort('SubmittedBy')))), /*#__PURE__*/React__default['default'].createElement("tbody", null, this.renderNewsletter())));
1328
+ }, "Submitted By", this.renderSort('SubmittedBy')))), /*#__PURE__*/React__default['default'].createElement("tbody", null, this.renderNewsletter())), /*#__PURE__*/React__default['default'].createElement("div", {
1329
+ className: "hub_tidioPadding"
1330
+ }));
1326
1331
  }
1327
1332
  }]);
1328
1333
 
@@ -2319,6 +2324,7 @@ var AddNewsletterEntry = /*#__PURE__*/function (_Component) {
2319
2324
  differentPublish: false,
2320
2325
  isTvMode: false,
2321
2326
  allowComments: DEFAULT_ALLOW_COMMENTS,
2327
+ commentVisibilityLimited: _this.props.commentVisibilityLimited,
2322
2328
  shouldNotify: false,
2323
2329
  publishDate: moment__default['default']().format('YYYY-MM-DD'),
2324
2330
  publishDateText: moment__default['default']().format('DD/MM/YYYY'),
@@ -2327,9 +2333,11 @@ var AddNewsletterEntry = /*#__PURE__*/function (_Component) {
2327
2333
  links: [],
2328
2334
  authorDisplay: false,
2329
2335
  customAuthorInput: '',
2330
- isAudienceValid: true,
2331
2336
  textFormatOpen: false,
2332
- selectedOption: 'audience'
2337
+ selectedOption: 'audience',
2338
+ isAudienceValid: true,
2339
+ audienceType: '',
2340
+ audienceTypeSelection: []
2333
2341
  });
2334
2342
 
2335
2343
  _defineProperty__default['default'](_assertThisInitialized__default['default'](_this), "state", _objectSpread$8({}, _this.initialState));
@@ -2453,9 +2461,6 @@ var AddNewsletterEntry = /*#__PURE__*/function (_Component) {
2453
2461
  });
2454
2462
 
2455
2463
  _defineProperty__default['default'](_assertThisInitialized__default['default'](_this), "handleSubmit", function () {
2456
- // console.log(this.audienceSelector);
2457
- _this.audienceSelector.getWrappedInstance().onSubmit();
2458
-
2459
2464
  if (!_this.validateForm()) {
2460
2465
  _this.setState({
2461
2466
  showWarnings: true
@@ -2486,6 +2491,14 @@ var AddNewsletterEntry = /*#__PURE__*/function (_Component) {
2486
2491
  });
2487
2492
  });
2488
2493
 
2494
+ _defineProperty__default['default'](_assertThisInitialized__default['default'](_this), "onChangeAudience", function (audienceType, audienceTypeSelection, isAudienceValid) {
2495
+ _this.setState({
2496
+ audienceType: audienceType,
2497
+ audienceTypeSelection: audienceTypeSelection,
2498
+ isAudienceValid: isAudienceValid
2499
+ });
2500
+ });
2501
+
2489
2502
  return _this;
2490
2503
  }
2491
2504
 
@@ -2530,13 +2543,6 @@ var AddNewsletterEntry = /*#__PURE__*/function (_Component) {
2530
2543
  textFormatOpen: isOpen
2531
2544
  });
2532
2545
  }
2533
- }, {
2534
- key: "updateAudienceValidation",
2535
- value: function updateAudienceValidation(valid) {
2536
- this.setState({
2537
- isAudienceValid: valid
2538
- });
2539
- }
2540
2546
  }, {
2541
2547
  key: "getData",
2542
2548
  value: function getData() {
@@ -2557,9 +2563,12 @@ var AddNewsletterEntry = /*#__PURE__*/function (_Component) {
2557
2563
  isTvMode: Boolean(update.TVMode),
2558
2564
  isFeatured: Boolean(update.IsFeatured),
2559
2565
  allowComments: Boolean(update.AllowComments),
2566
+ commentVisibilityLimited: Boolean(update.CommentVisibilityLimited),
2560
2567
  featuredExpiryDate: moment__default['default'](update.FeaturedExpiry || undefined).format('YYYY-MM-DD'),
2561
2568
  featuredExpiryDateText: moment__default['default'](update.FeaturedExpiry || undefined).format('DD/MM/YYYY'),
2562
- authorDisplay: update.AuthorDisplay
2569
+ authorDisplay: update.AuthorDisplay,
2570
+ audienceType: update.AudienceType || '',
2571
+ audienceTypeSelection: update.AudienceTypeSelection || []
2563
2572
  };
2564
2573
 
2565
2574
  if (update.AuthorDisplay === 'custom') {
@@ -2884,8 +2893,8 @@ var AddNewsletterEntry = /*#__PURE__*/function (_Component) {
2884
2893
  Text: this.state.textInput,
2885
2894
  Thumbnail: '',
2886
2895
  Video: this.state.videoInput,
2887
- AudienceType: this.audienceSelector.getWrappedInstance().getAudienceType(),
2888
- AudienceTypeSelection: this.audienceSelector.getWrappedInstance().getAudienceTypeSelection(),
2896
+ AudienceType: this.state.audienceType,
2897
+ AudienceTypeSelection: this.state.audienceTypeSelection,
2889
2898
  Site: this.props.auth.site,
2890
2899
  Tagged: this.state.tagged,
2891
2900
  HasSponsor: this.state.HasSponsor,
@@ -2910,6 +2919,10 @@ var AddNewsletterEntry = /*#__PURE__*/function (_Component) {
2910
2919
  if (!___default['default'].isEmpty(result.Images)) {
2911
2920
  result.Thumbnail = getThumb300(result.Images[0]);
2912
2921
  result.Image = get1400(result.Images[0]);
2922
+ }
2923
+
2924
+ if (result.AllowComments) {
2925
+ result.CommentVisibilityLimited = this.state.commentVisibilityLimited;
2913
2926
  } // if (baseClient === 'pluss60') {
2914
2927
  // const publisherImage = this.refs.publisherImage.getWrappedInstance().getValue();
2915
2928
  // if (!_.isEmpty(publisherImage) || !_.isEmpty(this.state.publisherTitleInput)) {
@@ -3117,20 +3130,20 @@ var AddNewsletterEntry = /*#__PURE__*/function (_Component) {
3117
3130
  }, {
3118
3131
  key: "renderAudience",
3119
3132
  value: function renderAudience() {
3120
- var _this9 = this;
3121
-
3133
+ var auth = this.props.auth;
3134
+ var _this$state = this.state,
3135
+ audienceType = _this$state.audienceType,
3136
+ audienceTypeSelection = _this$state.audienceTypeSelection;
3122
3137
  return /*#__PURE__*/React__default['default'].createElement("div", {
3123
3138
  className: "optionsContent_bottom"
3124
3139
  }, /*#__PURE__*/React__default['default'].createElement(AudienceSelector, {
3125
- updateValidation: this.updateAudienceValidation.bind(this),
3126
- ref: function ref(a) {
3127
- _this9.audienceSelector = a;
3128
- },
3129
- auth: this.props.auth,
3140
+ onChange: this.onChangeAudience,
3141
+ auth: auth,
3130
3142
  custom: true,
3143
+ audienceType: audienceType,
3144
+ audienceTypeSelection: audienceTypeSelection,
3131
3145
  disallowSingleUsers: true,
3132
- disallowUserType: true,
3133
- customSite: this.props.auth.site === 'hq' ? 'All sites' : false
3146
+ disallowUserType: true
3134
3147
  }));
3135
3148
  }
3136
3149
  }, {
@@ -3228,7 +3241,7 @@ var AddNewsletterEntry = /*#__PURE__*/function (_Component) {
3228
3241
  }, {
3229
3242
  key: "renderForm",
3230
3243
  value: function renderForm() {
3231
- var _this10 = this;
3244
+ var _this9 = this;
3232
3245
 
3233
3246
  if (this.state.success) {
3234
3247
  return null;
@@ -3249,14 +3262,14 @@ var AddNewsletterEntry = /*#__PURE__*/function (_Component) {
3249
3262
  label: "Title",
3250
3263
  placeholder: "Insert title here",
3251
3264
  showError: function showError() {
3252
- return _this10.state.showWarnings && _this10.isEmpty(_this10.state.titleInput);
3265
+ return _this9.state.showWarnings && _this9.isEmpty(_this9.state.titleInput);
3253
3266
  },
3254
3267
  isValid: function isValid() {
3255
- return !_this10.isEmpty(_this10.state.titleInput);
3268
+ return !_this9.isEmpty(_this9.state.titleInput);
3256
3269
  },
3257
3270
  value: this.state.titleInput,
3258
3271
  onChange: function onChange(e) {
3259
- return _this10.handleChange(e);
3272
+ return _this9.handleChange(e);
3260
3273
  },
3261
3274
  isRequired: true,
3262
3275
  alwaysShowLabel: true
@@ -3280,7 +3293,7 @@ var AddNewsletterEntry = /*#__PURE__*/function (_Component) {
3280
3293
  placeholder: "https://",
3281
3294
  value: this.state.loadFromWebsiteInput,
3282
3295
  onChange: function onChange(e) {
3283
- return _this10.handleChange(e);
3296
+ return _this9.handleChange(e);
3284
3297
  },
3285
3298
  alwaysShowLabel: true
3286
3299
  })))), /*#__PURE__*/React__default['default'].createElement(GenericInput, {
@@ -3290,18 +3303,18 @@ var AddNewsletterEntry = /*#__PURE__*/function (_Component) {
3290
3303
  placeholder: "Enter story here",
3291
3304
  value: this.state.textInput,
3292
3305
  onChange: function onChange(e) {
3293
- return _this10.handleChange(e);
3306
+ return _this9.handleChange(e);
3294
3307
  },
3295
3308
  isRequired: true,
3296
3309
  showError: function showError() {
3297
- return _this10.state.showWarnings && _this10.isEmpty(_this10.state.textInput);
3310
+ return _this9.state.showWarnings && _this9.isEmpty(_this9.state.textInput);
3298
3311
  },
3299
3312
  isValid: function isValid() {
3300
- return !_this10.isEmpty(_this10.state.textInput);
3313
+ return !_this9.isEmpty(_this9.state.textInput);
3301
3314
  },
3302
3315
  help: /*#__PURE__*/React__default['default'].createElement("a", {
3303
3316
  onClick: function onClick() {
3304
- _this10.toggleTextFormat(true);
3317
+ _this9.toggleTextFormat(true);
3305
3318
  },
3306
3319
  className: "pointer"
3307
3320
  }, "Text formatting"),
@@ -3324,7 +3337,7 @@ var AddNewsletterEntry = /*#__PURE__*/function (_Component) {
3324
3337
  }, {
3325
3338
  key: "renderAddAttachment",
3326
3339
  value: function renderAddAttachment() {
3327
- var _this11 = this;
3340
+ var _this10 = this;
3328
3341
 
3329
3342
  if (this.inputsDisabled()) {
3330
3343
  return null;
@@ -3332,7 +3345,7 @@ var AddNewsletterEntry = /*#__PURE__*/function (_Component) {
3332
3345
 
3333
3346
  return /*#__PURE__*/React__default['default'].createElement(FileInput, {
3334
3347
  ref: function ref(_ref) {
3335
- _this11.pdFileInput = _ref;
3348
+ _this10.pdFileInput = _ref;
3336
3349
  },
3337
3350
  style: {
3338
3351
  height: 120,
@@ -3346,7 +3359,7 @@ var AddNewsletterEntry = /*#__PURE__*/function (_Component) {
3346
3359
  }, {
3347
3360
  key: "renderAttachments",
3348
3361
  value: function renderAttachments() {
3349
- var _this12 = this;
3362
+ var _this11 = this;
3350
3363
 
3351
3364
  return /*#__PURE__*/React__default['default'].createElement("div", {
3352
3365
  className: "optionsContent_bottom"
@@ -3367,9 +3380,9 @@ var AddNewsletterEntry = /*#__PURE__*/function (_Component) {
3367
3380
  placeholder: "Enter Title",
3368
3381
  value: link.Text,
3369
3382
  onChange: function onChange(e) {
3370
- return _this12.handleLinkChange(index, 'Text', e.target.value);
3383
+ return _this11.handleLinkChange(index, 'Text', e.target.value);
3371
3384
  },
3372
- disabled: _this12.inputsDisabled(),
3385
+ disabled: _this11.inputsDisabled(),
3373
3386
  alwaysShowLabel: true,
3374
3387
  style: {
3375
3388
  margin: 0,
@@ -3383,9 +3396,9 @@ var AddNewsletterEntry = /*#__PURE__*/function (_Component) {
3383
3396
  placeholder: "https://",
3384
3397
  value: link.Url,
3385
3398
  onChange: function onChange(e) {
3386
- return _this12.handleLinkChange(index, 'Url', e.target.value);
3399
+ return _this11.handleLinkChange(index, 'Url', e.target.value);
3387
3400
  },
3388
- disabled: _this12.inputsDisabled(),
3401
+ disabled: _this11.inputsDisabled(),
3389
3402
  alwaysShowLabel: true,
3390
3403
  style: {
3391
3404
  margin: 0,
@@ -3395,7 +3408,7 @@ var AddNewsletterEntry = /*#__PURE__*/function (_Component) {
3395
3408
  className: "removeoption pdfAttachmentInput_remove",
3396
3409
  icon: "remove-circle",
3397
3410
  onClick: function onClick() {
3398
- _this12.removeLink(index);
3411
+ _this11.removeLink(index);
3399
3412
  }
3400
3413
  }));
3401
3414
  }), /*#__PURE__*/React__default['default'].createElement("div", {
@@ -3433,9 +3446,9 @@ var AddNewsletterEntry = /*#__PURE__*/function (_Component) {
3433
3446
  placeholder: "Title",
3434
3447
  value: attachment.Title,
3435
3448
  onChange: function onChange(e) {
3436
- return _this12.handleAttachmentChange(index, 'Title', e);
3449
+ return _this11.handleAttachmentChange(index, 'Title', e);
3437
3450
  },
3438
- disabled: _this12.inputsDisabled(),
3451
+ disabled: _this11.inputsDisabled(),
3439
3452
  alwaysShowLabel: true,
3440
3453
  style: {
3441
3454
  margin: 0,
@@ -3445,7 +3458,7 @@ var AddNewsletterEntry = /*#__PURE__*/function (_Component) {
3445
3458
  className: "removeoption pdfAttachmentInput_remove",
3446
3459
  icon: "remove-circle",
3447
3460
  onClick: function onClick() {
3448
- _this12.removeAttachment(index);
3461
+ _this11.removeAttachment(index);
3449
3462
  }
3450
3463
  }));
3451
3464
  }), this.renderAddAttachment()));
@@ -3453,7 +3466,7 @@ var AddNewsletterEntry = /*#__PURE__*/function (_Component) {
3453
3466
  }, {
3454
3467
  key: "renderFeatured",
3455
3468
  value: function renderFeatured() {
3456
- var _this13 = this;
3469
+ var _this12 = this;
3457
3470
 
3458
3471
  return /*#__PURE__*/React__default['default'].createElement("div", {
3459
3472
  className: "optionsContent_bottom"
@@ -3464,7 +3477,7 @@ var AddNewsletterEntry = /*#__PURE__*/function (_Component) {
3464
3477
  Label: 'Yes',
3465
3478
  Value: true,
3466
3479
  onChange: function onChange() {
3467
- return _this13.setState({
3480
+ return _this12.setState({
3468
3481
  isFeatured: true
3469
3482
  });
3470
3483
  }
@@ -3472,7 +3485,7 @@ var AddNewsletterEntry = /*#__PURE__*/function (_Component) {
3472
3485
  Label: 'No',
3473
3486
  Value: false,
3474
3487
  onChange: function onChange() {
3475
- return _this13.setState({
3488
+ return _this12.setState({
3476
3489
  isFeatured: false
3477
3490
  });
3478
3491
  }
@@ -3490,11 +3503,11 @@ var AddNewsletterEntry = /*#__PURE__*/function (_Component) {
3490
3503
  alwaysShowLabel: true,
3491
3504
  value: this.state.featuredExpiryDateText,
3492
3505
  onChange: function onChange(e) {
3493
- return _this13.handleExpiryDateTextChange(e.target.value);
3506
+ return _this12.handleExpiryDateTextChange(e.target.value);
3494
3507
  },
3495
3508
  onClick: function onClick(e) {
3496
- return _this13.setState({
3497
- showExpiryDate: !_this13.state.showExpiryDate
3509
+ return _this12.setState({
3510
+ showExpiryDate: !_this12.state.showExpiryDate
3498
3511
  });
3499
3512
  }
3500
3513
  }), this.state.showExpiryDate && /*#__PURE__*/React__default['default'].createElement(DatePicker, {
@@ -3505,24 +3518,33 @@ var AddNewsletterEntry = /*#__PURE__*/function (_Component) {
3505
3518
  }, {
3506
3519
  key: "renderComments",
3507
3520
  value: function renderComments() {
3508
- var _this14 = this;
3521
+ var _this13 = this;
3509
3522
 
3510
3523
  if (___default['default'].includes(this.props.auth.hidden, values.optionNewsComments)) return null;
3511
- return /*#__PURE__*/React__default['default'].createElement(CheckBox, {
3524
+ return /*#__PURE__*/React__default['default'].createElement("div", null, /*#__PURE__*/React__default['default'].createElement(CheckBox, {
3512
3525
  className: "marginTop-16",
3513
3526
  label: "Allow comments",
3514
3527
  isActive: this.state.allowComments,
3515
3528
  onChange: function onChange() {
3516
- _this14.setState({
3517
- allowComments: !_this14.state.allowComments
3529
+ _this13.setState({
3530
+ allowComments: !_this13.state.allowComments
3518
3531
  });
3519
3532
  }
3520
- });
3533
+ }), this.state.allowComments && /*#__PURE__*/React__default['default'].createElement(CheckBox, {
3534
+ className: "marginTop-16",
3535
+ label: "Users can only see their own comments",
3536
+ isActive: this.state.commentVisibilityLimited,
3537
+ onChange: function onChange() {
3538
+ _this13.setState({
3539
+ commentVisibilityLimited: !_this13.state.commentVisibilityLimited
3540
+ });
3541
+ }
3542
+ }));
3521
3543
  }
3522
3544
  }, {
3523
3545
  key: "renderTags",
3524
3546
  value: function renderTags() {
3525
- var _this15 = this;
3547
+ var _this14 = this;
3526
3548
 
3527
3549
  if (!newsHaveTags) return null;
3528
3550
  return /*#__PURE__*/React__default['default'].createElement("div", {
@@ -3535,7 +3557,7 @@ var AddNewsletterEntry = /*#__PURE__*/function (_Component) {
3535
3557
  placeholder: "Humour, Social, etc.",
3536
3558
  value: this.state.tagsInput,
3537
3559
  onChange: function onChange(e) {
3538
- return _this15.handleChange(e);
3560
+ return _this14.handleChange(e);
3539
3561
  },
3540
3562
  alwaysShowLabel: true
3541
3563
  }));
@@ -3543,7 +3565,7 @@ var AddNewsletterEntry = /*#__PURE__*/function (_Component) {
3543
3565
  }, {
3544
3566
  key: "renderNotify",
3545
3567
  value: function renderNotify() {
3546
- var _this16 = this;
3568
+ var _this15 = this;
3547
3569
 
3548
3570
  if (this.state.eventId || ___default['default'].includes(this.props.auth.hidden, 'eventNotifications')) {
3549
3571
  return null;
@@ -3558,7 +3580,7 @@ var AddNewsletterEntry = /*#__PURE__*/function (_Component) {
3558
3580
  Label: 'Yes',
3559
3581
  Value: true,
3560
3582
  onChange: function onChange() {
3561
- return _this16.setState({
3583
+ return _this15.setState({
3562
3584
  shouldNotify: true
3563
3585
  });
3564
3586
  }
@@ -3566,7 +3588,7 @@ var AddNewsletterEntry = /*#__PURE__*/function (_Component) {
3566
3588
  Label: 'No',
3567
3589
  Value: false,
3568
3590
  onChange: function onChange() {
3569
- return _this16.setState({
3591
+ return _this15.setState({
3570
3592
  shouldNotify: false
3571
3593
  });
3572
3594
  }
@@ -3581,7 +3603,7 @@ var AddNewsletterEntry = /*#__PURE__*/function (_Component) {
3581
3603
  }, {
3582
3604
  key: "renderTvMode",
3583
3605
  value: function renderTvMode() {
3584
- var _this17 = this;
3606
+ var _this16 = this;
3585
3607
 
3586
3608
  return /*#__PURE__*/React__default['default'].createElement("div", {
3587
3609
  className: "marginTop-16"
@@ -3592,7 +3614,7 @@ var AddNewsletterEntry = /*#__PURE__*/function (_Component) {
3592
3614
  Label: 'Yes',
3593
3615
  Value: true,
3594
3616
  onChange: function onChange() {
3595
- return _this17.setState({
3617
+ return _this16.setState({
3596
3618
  isTvMode: true
3597
3619
  });
3598
3620
  }
@@ -3600,7 +3622,7 @@ var AddNewsletterEntry = /*#__PURE__*/function (_Component) {
3600
3622
  Label: 'No',
3601
3623
  Value: false,
3602
3624
  onChange: function onChange() {
3603
- return _this17.setState({
3625
+ return _this16.setState({
3604
3626
  isTvMode: false
3605
3627
  });
3606
3628
  }
@@ -3612,7 +3634,7 @@ var AddNewsletterEntry = /*#__PURE__*/function (_Component) {
3612
3634
  }, {
3613
3635
  key: "renderAuthor",
3614
3636
  value: function renderAuthor() {
3615
- var _this18 = this;
3637
+ var _this17 = this;
3616
3638
 
3617
3639
  if (this.props.forceNewsAuthorName) return null;
3618
3640
  return /*#__PURE__*/React__default['default'].createElement("div", {
@@ -3624,7 +3646,7 @@ var AddNewsletterEntry = /*#__PURE__*/function (_Component) {
3624
3646
  Label: 'No',
3625
3647
  Value: true,
3626
3648
  onChange: function onChange() {
3627
- return _this18.setState({
3649
+ return _this17.setState({
3628
3650
  authorDisplay: false
3629
3651
  });
3630
3652
  }
@@ -3638,7 +3660,7 @@ var AddNewsletterEntry = /*#__PURE__*/function (_Component) {
3638
3660
  Label: 'Yes, use my name',
3639
3661
  Value: true,
3640
3662
  onChange: function onChange() {
3641
- return _this18.setState({
3663
+ return _this17.setState({
3642
3664
  authorDisplay: 'name'
3643
3665
  });
3644
3666
  }
@@ -3652,7 +3674,7 @@ var AddNewsletterEntry = /*#__PURE__*/function (_Component) {
3652
3674
  Label: 'Yes, use the following:',
3653
3675
  Value: true,
3654
3676
  onChange: function onChange() {
3655
- return _this18.setState({
3677
+ return _this17.setState({
3656
3678
  authorDisplay: 'custom'
3657
3679
  });
3658
3680
  }
@@ -3666,14 +3688,14 @@ var AddNewsletterEntry = /*#__PURE__*/function (_Component) {
3666
3688
  placeholder: "Enter custom name",
3667
3689
  value: this.state.customAuthorInput,
3668
3690
  onChange: function onChange(e) {
3669
- return _this18.handleChange(e);
3691
+ return _this17.handleChange(e);
3670
3692
  }
3671
3693
  }));
3672
3694
  }
3673
3695
  }, {
3674
3696
  key: "renderVideo",
3675
3697
  value: function renderVideo() {
3676
- var _this19 = this;
3698
+ var _this18 = this;
3677
3699
 
3678
3700
  return /*#__PURE__*/React__default['default'].createElement("div", {
3679
3701
  className: "optionsContent_bottom"
@@ -3685,7 +3707,7 @@ var AddNewsletterEntry = /*#__PURE__*/function (_Component) {
3685
3707
  placeholder: "https://...",
3686
3708
  value: this.state.videoInput,
3687
3709
  onChange: function onChange(e) {
3688
- return _this19.handleChange(e);
3710
+ return _this18.handleChange(e);
3689
3711
  },
3690
3712
  alwaysShowLabel: true
3691
3713
  }));
@@ -3754,23 +3776,23 @@ var AddNewsletterEntry = /*#__PURE__*/function (_Component) {
3754
3776
  }, {
3755
3777
  key: "renderResults",
3756
3778
  value: function renderResults() {
3757
- var _this20 = this;
3779
+ var _this19 = this;
3758
3780
 
3759
3781
  if (this.state.userSearch == null) {
3760
3782
  return null;
3761
3783
  }
3762
3784
 
3763
3785
  var source = ___default['default'].sortBy(___default['default'].filter(this.state.contacts, function (ev) {
3764
- return ev.displayName.toLowerCase().indexOf(_this20.state.userSearch.toLowerCase()) > -1 && ev.category === 'resident';
3786
+ return ev.displayName.toLowerCase().indexOf(_this19.state.userSearch.toLowerCase()) > -1 && ev.category === 'resident';
3765
3787
  }), 'displayName');
3766
3788
 
3767
3789
  return source.map(function (user, index) {
3768
3790
  return /*#__PURE__*/React__default['default'].createElement(UserListing, {
3769
3791
  user: user,
3770
- onClick: _this20.tagUser.bind(_this20, user),
3792
+ onClick: _this19.tagUser.bind(_this19, user),
3771
3793
  key: user.id,
3772
- rightContent: _this20.renderTick(user),
3773
- subContent: _this20.renderSubText(user),
3794
+ rightContent: _this19.renderTick(user),
3795
+ subContent: _this19.renderSubText(user),
3774
3796
  size: 50
3775
3797
  });
3776
3798
  });
@@ -3778,7 +3800,7 @@ var AddNewsletterEntry = /*#__PURE__*/function (_Component) {
3778
3800
  }, {
3779
3801
  key: "renderTagged",
3780
3802
  value: function renderTagged() {
3781
- var _this21 = this;
3803
+ var _this20 = this;
3782
3804
 
3783
3805
  if (!this.state.showTagged || this.state.success) {
3784
3806
  return null;
@@ -3800,7 +3822,7 @@ var AddNewsletterEntry = /*#__PURE__*/function (_Component) {
3800
3822
  user: user,
3801
3823
  key: user.userId,
3802
3824
  whiteText: true,
3803
- rightContent: _this21.renderRemoveTag(user)
3825
+ rightContent: _this20.renderRemoveTag(user)
3804
3826
  });
3805
3827
  })), /*#__PURE__*/React__default['default'].createElement("div", {
3806
3828
  className: "marginTop-24"
@@ -3816,7 +3838,7 @@ var AddNewsletterEntry = /*#__PURE__*/function (_Component) {
3816
3838
  placeholder: "Search for user",
3817
3839
  value: this.state.userSearch,
3818
3840
  onChange: function onChange(e) {
3819
- return _this21.handleSearchChange(e);
3841
+ return _this20.handleSearchChange(e);
3820
3842
  }
3821
3843
  }), this.renderResults()))));
3822
3844
  }
@@ -3844,7 +3866,8 @@ var mapStateToProps$4 = function mapStateToProps(state) {
3844
3866
  return {
3845
3867
  auth: auth,
3846
3868
  users: allUsers,
3847
- forceNewsAuthorName: auth && auth.siteSettings && auth.siteSettings[values.optionForceNewsAuthorName]
3869
+ forceNewsAuthorName: getSiteSettingFromState(state, values.optionForceNewsAuthorName),
3870
+ commentVisibilityLimited: getSiteSettingFromState(state, 'CommentVisibilityLimited')
3848
3871
  };
3849
3872
  };
3850
3873
 
@@ -3890,11 +3913,21 @@ var PublishAvailableNews = /*#__PURE__*/function (_Component) {
3890
3913
  publishDate: moment__default['default']().format('YYYY-MM-DD'),
3891
3914
  publishDateText: moment__default['default']().format('DD/MM/YYYY'),
3892
3915
  publishTime: '12:00pm',
3893
- isAudienceValid: true
3916
+ isAudienceValid: true,
3917
+ audienceType: '',
3918
+ audienceTypeSelection: []
3894
3919
  });
3895
3920
 
3896
3921
  _defineProperty__default['default'](_assertThisInitialized__default['default'](_this), "state", _objectSpread$7({}, _this.initialState));
3897
3922
 
3923
+ _defineProperty__default['default'](_assertThisInitialized__default['default'](_this), "onChangeAudience", function (audienceType, audienceTypeSelection, isAudienceValid) {
3924
+ _this.setState({
3925
+ audienceType: audienceType,
3926
+ audienceTypeSelection: audienceTypeSelection,
3927
+ isAudienceValid: isAudienceValid
3928
+ });
3929
+ });
3930
+
3898
3931
  return _this;
3899
3932
  }
3900
3933
 
@@ -3984,13 +4017,6 @@ var PublishAvailableNews = /*#__PURE__*/function (_Component) {
3984
4017
 
3985
4018
  return moment__default['default'].utc(this.state.update.Timestamp).local().format('D MMM');
3986
4019
  }
3987
- }, {
3988
- key: "updateAudienceValidation",
3989
- value: function updateAudienceValidation(valid) {
3990
- this.setState({
3991
- isAudienceValid: valid
3992
- });
3993
- }
3994
4020
  }, {
3995
4021
  key: "validatePublishTime",
3996
4022
  value: function validatePublishTime() {
@@ -4022,8 +4048,6 @@ var PublishAvailableNews = /*#__PURE__*/function (_Component) {
4022
4048
  value: function handleSubmit() {
4023
4049
  var _this3 = this;
4024
4050
 
4025
- this.audienceSelector.getWrappedInstance().onSubmit();
4026
-
4027
4051
  if (!this.validateForm()) {
4028
4052
  return;
4029
4053
  }
@@ -4038,8 +4062,8 @@ var PublishAvailableNews = /*#__PURE__*/function (_Component) {
4038
4062
  Timestamp: timeToUse.toISOString(),
4039
4063
  UnixTimestamp: timeToUse.valueOf(),
4040
4064
  Site: this.props.auth.site,
4041
- AudienceType: this.audienceSelector.getWrappedInstance().getAudienceType(),
4042
- AudienceTypeSelection: this.audienceSelector.getWrappedInstance().getAudienceTypeSelection(),
4065
+ AudienceType: this.state.audienceType,
4066
+ AudienceTypeSelection: this.state.audienceTypeSelection,
4043
4067
  IsFeatured: this.state.isFeatured,
4044
4068
  FeaturedExpiry: this.state.isFeatured ? getUTCFromTimeDatePickers(this.state.featuredExpiryDate, '23:59').valueOf() : undefined,
4045
4069
  AllowComments: this.state.allowComments
@@ -4205,16 +4229,14 @@ var PublishAvailableNews = /*#__PURE__*/function (_Component) {
4205
4229
  }, /*#__PURE__*/React__default['default'].createElement("div", null, /*#__PURE__*/React__default['default'].createElement("div", {
4206
4230
  className: "padding-60 paddingVertical-40 bottomDivideBorder"
4207
4231
  }, /*#__PURE__*/React__default['default'].createElement(AudienceSelector, {
4208
- updateValidation: this.updateAudienceValidation.bind(this),
4209
- ref: function ref(a) {
4210
- _this5.audienceSelector = a;
4211
- },
4232
+ onChange: this.onChangeAudience,
4212
4233
  auth: this.props.auth,
4213
4234
  custom: true,
4214
- maxWidth: 300,
4235
+ audienceType: this.state.audienceType,
4236
+ audienceTypeSelection: this.state.audienceTypeSelection,
4215
4237
  disallowSingleUsers: true,
4216
4238
  disallowUserType: true,
4217
- customSite: this.props.auth.site === 'hq' ? 'All sites' : false
4239
+ maxWidth: 300
4218
4240
  })), /*#__PURE__*/React__default['default'].createElement("div", {
4219
4241
  className: "padding-60 paddingVertical-40 bottomDivideBorder"
4220
4242
  }, /*#__PURE__*/React__default['default'].createElement("p", {