summaryrefslogtreecommitdiff
path: root/www/crm/wp-content/plugins/civicrm/civicrm/ang/crmMailing/EditUnsubGroupCtrl.js
diff options
context:
space:
mode:
Diffstat (limited to 'www/crm/wp-content/plugins/civicrm/civicrm/ang/crmMailing/EditUnsubGroupCtrl.js')
-rw-r--r--www/crm/wp-content/plugins/civicrm/civicrm/ang/crmMailing/EditUnsubGroupCtrl.js19
1 files changed, 19 insertions, 0 deletions
diff --git a/www/crm/wp-content/plugins/civicrm/civicrm/ang/crmMailing/EditUnsubGroupCtrl.js b/www/crm/wp-content/plugins/civicrm/civicrm/ang/crmMailing/EditUnsubGroupCtrl.js
new file mode 100644
index 00000000..56070e03
--- /dev/null
+++ b/www/crm/wp-content/plugins/civicrm/civicrm/ang/crmMailing/EditUnsubGroupCtrl.js
@@ -0,0 +1,19 @@
+(function(angular, $, _) {
+
+ angular.module('crmMailing').controller('EditUnsubGroupCtrl', function EditUnsubGroupCtrl($scope) {
+ // CRM.crmMailing.groupNames is a global constant - since it doesn't change, we can digest & cache.
+ var mandatoryIds = [];
+
+ $scope.isUnsubGroupRequired = function isUnsubGroupRequired(mailing) {
+ if (!_.isEmpty(CRM.crmMailing.groupNames)) {
+ _.each(CRM.crmMailing.groupNames, function(grp) {
+ if (grp.is_hidden == "1") {
+ mandatoryIds.push(parseInt(grp.id));
+ }
+ });
+ return _.intersection(mandatoryIds, mailing.recipients.groups.include).length > 0;
+ }
+ };
+ });
+
+})(angular, CRM.$, CRM._);