module Groupify::ActiveRecord::GroupMember
Usage:
class User < ActiveRecord::Base groupify :group_member ... end user.groups << group
Public Instance Methods
in_all_groups?(*args)
click to toggle source
# File lib/groupify/adapter/active_record/group_member.rb, line 80 def in_all_groups?(*args) opts = args.extract_options! groups = args.flatten groups.to_set.subset? self.groups.as(opts[:as]).to_set end
in_any_group?(*args)
click to toggle source
# File lib/groupify/adapter/active_record/group_member.rb, line 70 def in_any_group?(*args) opts = args.extract_options! groups = args groups.flatten.each do |group| return true if in_group?(group, opts) end return false end
in_group?(group, opts={})
click to toggle source
# File lib/groupify/adapter/active_record/group_member.rb, line 60 def in_group?(group, opts={}) criteria = {group_id: group.id} if opts[:as] criteria.merge!(membership_type: opts[:as]) end group_memberships_as_member.exists?(criteria) end
in_only_groups?(*args)
click to toggle source
# File lib/groupify/adapter/active_record/group_member.rb, line 87 def in_only_groups?(*args) opts = args.extract_options! groups = args.flatten groups.to_set == self.groups.as(opts[:as]).to_set end