groupify 0.4.0 → 0.4.1

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.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: e7b7c7f97d77395333908085e3b504e15843e424
4
+ data.tar.gz: 00a1fb1886befa20733c4d865b65c703b32ac07f
5
+ SHA512:
6
+ metadata.gz: 0988461c27e6435567264573018076144fbdbea11d4da51c8c16fa9678fcbd9229178f76d373c896c438c96ad70e095be6a79f4f3fa8647fef258c7d02facc61
7
+ data.tar.gz: e9914e15f36f4cb9514ce9676d82e4bed74ae9892d30367844dc4cd9cf9bcc5d691d14ee8389166becb369b682283bb758c32ca2cada071c9c68ac428dd82569
@@ -63,7 +63,7 @@ module Groupify
63
63
  end
64
64
 
65
65
  def members
66
- self.class.default_member_class.joins(:group_memberships).where(:group_memberships => {:member_type => self.class.default_member_class.to_s})
66
+ self.class.default_member_class.joins(:group_memberships).where(:group_memberships => {:member_type => self.class.default_member_class.to_s}).uniq
67
67
  end
68
68
 
69
69
  def member_classes
@@ -105,7 +105,7 @@ module Groupify
105
105
 
106
106
  # Define specific members accessor, i.e. group.users
107
107
  define_method name.to_s.pluralize.underscore do
108
- klass.joins(:group_memberships).where(:group_memberships => {:group_id => self.id})
108
+ klass.joins(:group_memberships).where(:group_memberships => {:group_id => self.id}).uniq
109
109
  end
110
110
  end
111
111
 
@@ -201,11 +201,11 @@ module Groupify
201
201
  def group_class_name=(klass); @group_class_name = klass; end
202
202
 
203
203
  def in_group(group)
204
- group.present? ? joins(:group_memberships).where(:group_memberships => {:group_id => group.id}) : none
204
+ group.present? ? joins(:group_memberships).where(:group_memberships => {:group_id => group.id}).uniq : none
205
205
  end
206
206
 
207
207
  def in_any_group(*groups)
208
- groups.present? ? joins(:group_memberships).where(:group_memberships => {:group_id => groups.flatten.map(&:id)}) : none
208
+ groups.present? ? joins(:group_memberships).where(:group_memberships => {:group_id => groups.flatten.map(&:id)}).uniq : none
209
209
  end
210
210
 
211
211
  def in_all_groups(*groups)
@@ -215,7 +215,8 @@ module Groupify
215
215
  joins(:group_memberships).
216
216
  group(:"group_memberships.member_id").
217
217
  where(:group_memberships => {:group_id => groups.map(&:id)}).
218
- having("COUNT(group_memberships.group_id) = #{groups.count}")
218
+ having("COUNT(group_memberships.group_id) = #{groups.count}").
219
+ uniq
219
220
  else
220
221
  none
221
222
  end
@@ -287,11 +288,11 @@ module Groupify
287
288
 
288
289
  module ClassMethods
289
290
  def in_named_group(named_group)
290
- named_group.present? ? joins(:group_memberships).where(:group_memberships => {:group_name => named_group}) : none
291
+ named_group.present? ? joins(:group_memberships).where(:group_memberships => {:group_name => named_group}).uniq : none
291
292
  end
292
293
 
293
294
  def in_any_named_group(*named_groups)
294
- named_groups.present? ? joins(:group_memberships).where(:group_memberships => {:group_name => named_groups.flatten}) : none
295
+ named_groups.present? ? joins(:group_memberships).where(:group_memberships => {:group_name => named_groups.flatten}).uniq : none
295
296
  end
296
297
 
297
298
  def in_all_named_groups(*named_groups)
@@ -301,7 +302,8 @@ module Groupify
301
302
  joins(:group_memberships).
302
303
  group(:"group_memberships.member_id").
303
304
  where(:group_memberships => {:group_name => named_groups}).
304
- having("COUNT(group_memberships.group_name) = #{named_groups.count}")
305
+ having("COUNT(group_memberships.group_name) = #{named_groups.count}").
306
+ uniq
305
307
  else
306
308
  none
307
309
  end
@@ -1,3 +1,3 @@
1
1
  module Groupify
2
- VERSION = "0.4.0"
2
+ VERSION = "0.4.1"
3
3
  end
metadata CHANGED
@@ -1,112 +1,113 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: groupify
3
3
  version: !ruby/object:Gem::Version
4
- prerelease:
5
- version: 0.4.0
4
+ version: 0.4.1
6
5
  platform: ruby
7
6
  authors:
8
7
  - dwbutler
9
- autorequire:
8
+ autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2013-07-01 00:00:00.000000000 Z
11
+ date: 2013-07-02 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: mongoid
16
- version_requirements: !ruby/object:Gem::Requirement
15
+ requirement: !ruby/object:Gem::Requirement
17
16
  requirements:
18
17
  - - '>='
19
18
  - !ruby/object:Gem::Version
20
19
  version: '3.1'
21
- none: false
22
- requirement: !ruby/object:Gem::Requirement
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - '>='
25
25
  - !ruby/object:Gem::Version
26
26
  version: '3.1'
27
- none: false
28
- prerelease: false
29
- type: :development
30
27
  - !ruby/object:Gem::Dependency
31
28
  name: activerecord
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - '>='
32
+ - !ruby/object:Gem::Version
33
+ version: '3.2'
34
+ type: :development
35
+ prerelease: false
32
36
  version_requirements: !ruby/object:Gem::Requirement
33
37
  requirements:
34
38
  - - '>='
35
39
  - !ruby/object:Gem::Version
36
40
  version: '3.2'
37
- none: false
41
+ - !ruby/object:Gem::Dependency
42
+ name: sqlite3
38
43
  requirement: !ruby/object:Gem::Requirement
39
44
  requirements:
40
45
  - - '>='
41
46
  - !ruby/object:Gem::Version
42
- version: '3.2'
43
- none: false
44
- prerelease: false
47
+ version: '0'
45
48
  type: :development
46
- - !ruby/object:Gem::Dependency
47
- name: rake
49
+ prerelease: false
48
50
  version_requirements: !ruby/object:Gem::Requirement
49
51
  requirements:
50
52
  - - '>='
51
53
  - !ruby/object:Gem::Version
52
54
  version: '0'
53
- none: false
55
+ - !ruby/object:Gem::Dependency
56
+ name: rake
54
57
  requirement: !ruby/object:Gem::Requirement
55
58
  requirements:
56
59
  - - '>='
57
60
  - !ruby/object:Gem::Version
58
61
  version: '0'
59
- none: false
60
- prerelease: false
61
62
  type: :development
62
- - !ruby/object:Gem::Dependency
63
- name: rspec
63
+ prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - '>='
67
67
  - !ruby/object:Gem::Version
68
68
  version: '0'
69
- none: false
69
+ - !ruby/object:Gem::Dependency
70
+ name: rspec
70
71
  requirement: !ruby/object:Gem::Requirement
71
72
  requirements:
72
73
  - - '>='
73
74
  - !ruby/object:Gem::Version
74
75
  version: '0'
75
- none: false
76
- prerelease: false
77
76
  type: :development
78
- - !ruby/object:Gem::Dependency
79
- name: mongoid-rspec
77
+ prerelease: false
80
78
  version_requirements: !ruby/object:Gem::Requirement
81
79
  requirements:
82
80
  - - '>='
83
81
  - !ruby/object:Gem::Version
84
82
  version: '0'
85
- none: false
83
+ - !ruby/object:Gem::Dependency
84
+ name: mongoid-rspec
86
85
  requirement: !ruby/object:Gem::Requirement
87
86
  requirements:
88
87
  - - '>='
89
88
  - !ruby/object:Gem::Version
90
89
  version: '0'
91
- none: false
92
- prerelease: false
93
90
  type: :development
94
- - !ruby/object:Gem::Dependency
95
- name: database_cleaner
91
+ prerelease: false
96
92
  version_requirements: !ruby/object:Gem::Requirement
97
93
  requirements:
98
94
  - - '>='
99
95
  - !ruby/object:Gem::Version
100
96
  version: '0'
101
- none: false
97
+ - !ruby/object:Gem::Dependency
98
+ name: database_cleaner
102
99
  requirement: !ruby/object:Gem::Requirement
103
100
  requirements:
104
101
  - - '>='
105
102
  - !ruby/object:Gem::Version
106
103
  version: '0'
107
- none: false
108
- prerelease: false
109
104
  type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - '>='
109
+ - !ruby/object:Gem::Version
110
+ version: '0'
110
111
  description: Adds group and membership functionality to Rails models
111
112
  email:
112
113
  - dwbutler@ucla.edu
@@ -134,7 +135,8 @@ files:
134
135
  - spec/spec_helper.rb
135
136
  homepage: https://github.com/dwbutler/groupify
136
137
  licenses: []
137
- post_install_message:
138
+ metadata: {}
139
+ post_install_message:
138
140
  rdoc_options: []
139
141
  require_paths:
140
142
  - lib
@@ -142,25 +144,17 @@ required_ruby_version: !ruby/object:Gem::Requirement
142
144
  requirements:
143
145
  - - '>='
144
146
  - !ruby/object:Gem::Version
145
- segments:
146
- - 0
147
- hash: 2
148
147
  version: '0'
149
- none: false
150
148
  required_rubygems_version: !ruby/object:Gem::Requirement
151
149
  requirements:
152
150
  - - '>='
153
151
  - !ruby/object:Gem::Version
154
- segments:
155
- - 0
156
- hash: 2
157
152
  version: '0'
158
- none: false
159
153
  requirements: []
160
- rubyforge_project:
161
- rubygems_version: 1.8.24
162
- signing_key:
163
- specification_version: 3
154
+ rubyforge_project:
155
+ rubygems_version: 2.0.3
156
+ signing_key:
157
+ specification_version: 4
164
158
  summary: Group functionality for Rails
165
159
  test_files:
166
160
  - spec/groupify/active_record_spec.rb