summaryrefslogtreecommitdiff
path: root/app/models/group.rb
diff options
context:
space:
mode:
authorStefan Wintermeyer <stefan.wintermeyer@amooma.de>2013-06-20 19:06:19 +0200
committerStefan Wintermeyer <stefan.wintermeyer@amooma.de>2013-06-20 19:06:19 +0200
commiteb0e1cc5c26275ff3e5c341404e8bc558f8312b8 (patch)
tree71f449ccd6f15422717de3ac24f87d5e888ddd79 /app/models/group.rb
parentdf6e17e48995f25e72509986f30700d778b179b6 (diff)
parent3b27a5d45b12f6bac65da2a8e17387bfda42a2f1 (diff)
Merge branch 'develop'
Diffstat (limited to 'app/models/group.rb')
-rw-r--r--app/models/group.rb8
1 files changed, 8 insertions, 0 deletions
diff --git a/app/models/group.rb b/app/models/group.rb
index 6c65f70..849fa71 100644
--- a/app/models/group.rb
+++ b/app/models/group.rb
@@ -29,4 +29,12 @@ class Group < ActiveRecord::Base
return group_ids.uniq
end
+
+ def self.target_group_ids_by_permission(permission, *group_sets)
+ target_groups = []
+ group_sets.each do |groups|
+ target_groups = target_groups + Group.union(groups.collect{|g| g.permission_targets(permission)})
+ end
+ return target_groups.uniq
+ end
end