has_token_on 1.0.1 → 1.0.2

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.
@@ -5,13 +5,10 @@ module HasTokenOn
5
5
  extend ActiveSupport::Concern
6
6
  include HasTokenOn::Base
7
7
 
8
- module InstanceMethods
8
+ private
9
9
 
10
- private
11
-
12
- def token_is_nonunique?(token)
13
- self.class.exists?(token => self[token])
14
- end
10
+ def token_is_nonunique?(token)
11
+ self.class.exists?(token => self[token])
15
12
  end
16
13
  end
17
14
  end
@@ -79,71 +79,67 @@ module HasTokenOn
79
79
 
80
80
  end
81
81
 
82
- module InstanceMethods
82
+ private
83
83
 
84
- private
84
+ def create_tokens(record, callback)
85
+ return unless any_tokens?
85
86
 
86
- def create_tokens(record, callback)
87
- return unless any_tokens?
88
-
89
- tokens_to_build_on(callback).each do |token, config|
90
- if !config.has_key?(:if) or (config.has_key?(:if) and config[:if].call(record))
91
- begin
92
- self[token] = build_token(config)
93
- end while (config.has_key?(:unique) and config[:unique]) and token_is_nonunique?(token)
94
- end
87
+ tokens_to_build_on(callback).each do |token, config|
88
+ if !config.has_key?(:if) or (config.has_key?(:if) and config[:if].call(record))
89
+ begin
90
+ self[token] = build_token(config)
91
+ end while (config.has_key?(:unique) and config[:unique]) and token_is_nonunique?(token)
95
92
  end
96
93
  end
94
+ end
97
95
 
98
- def build_token(config)
99
- defaults = { :length => 16, :prepend => "", :append => "", :seed => :securerandom }
100
- config = defaults.merge(config)
96
+ def build_token(config)
97
+ defaults = { :length => 16, :prepend => "", :append => "", :seed => :securerandom }
98
+ config = defaults.merge(config)
101
99
 
102
- return [config[:prepend],
103
- build_from_seed(config),
104
- config[:append]
105
- ].join
106
- end
100
+ return [config[:prepend],
101
+ build_from_seed(config),
102
+ config[:append]
103
+ ].join
104
+ end
107
105
 
108
- def build_from_seed(config)
109
- case config[:seed]
110
- when Symbol
111
- if config[:seed] == :securerandom
112
- SecureRandom.hex(config[:length]).first(config[:length])
113
- elsif config[:seed] == :guid
114
- if simple_uuid_present?
115
- ::SimpleUUID::UUID.new.to_guid
116
- else
117
- raise LibraryNotPresent, "Supporting library SimpleUUID is not present. Add it to your Gemfile?"
118
- end
106
+ def build_from_seed(config)
107
+ case config[:seed]
108
+ when Symbol
109
+ if config[:seed] == :securerandom
110
+ SecureRandom.hex(config[:length]).first(config[:length])
111
+ elsif config[:seed] == :guid
112
+ if simple_uuid_present?
113
+ ::SimpleUUID::UUID.new.to_guid
114
+ else
115
+ raise LibraryNotPresent, "Supporting library SimpleUUID is not present. Add it to your Gemfile?"
119
116
  end
120
- when Range
121
- chars = config[:seed].to_a
122
- (0...config[:length]).collect { chars[Kernel.rand(chars.length)] }.join
123
- when Proc
124
- config[:seed].call.to_s
125
- end
126
- end
127
-
128
- def any_tokens?
129
- self.class.tokens && self.class.tokens.any?
130
- end
131
-
132
- def tokens_to_build_on(callback)
133
- self.class.tokens.select{ |token, config|
134
- if config.has_key?(:on)
135
- config[:on].include?(callback)
136
- else
137
- # if user didn't specify :on we set token before record create
138
- callback == :create
139
117
  end
140
- }
118
+ when Range
119
+ chars = config[:seed].to_a
120
+ (0...config[:length]).collect { chars[Kernel.rand(chars.length)] }.join
121
+ when Proc
122
+ config[:seed].call.to_s
141
123
  end
124
+ end
142
125
 
143
- def simple_uuid_present?
144
- defined? ::SimpleUUID
145
- end
126
+ def any_tokens?
127
+ self.class.tokens && self.class.tokens.any?
128
+ end
129
+
130
+ def tokens_to_build_on(callback)
131
+ self.class.tokens.select{ |token, config|
132
+ if config.has_key?(:on)
133
+ config[:on].include?(callback)
134
+ else
135
+ # if user didn't specify :on we set token before record create
136
+ callback == :create
137
+ end
138
+ }
139
+ end
146
140
 
141
+ def simple_uuid_present?
142
+ defined? ::SimpleUUID
147
143
  end
148
144
  end
149
145
  end
@@ -6,13 +6,10 @@ module HasTokenOn
6
6
  extend ActiveSupport::Concern
7
7
  include HasTokenOn::Base
8
8
 
9
- module InstanceMethods
9
+ private
10
10
 
11
- private
12
-
13
- def token_is_nonunique?(token)
14
- self.class.first(:conditions => { token => self[token] }).present?
15
- end
11
+ def token_is_nonunique?(token)
12
+ self.class.first(:conditions => { token => self[token] }).present?
16
13
  end
17
14
  end
18
15
  end
@@ -1,3 +1,3 @@
1
1
  module HasTokenOn
2
- VERSION = '1.0.1'
2
+ VERSION = '1.0.2'
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: has_token_on
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.1
4
+ version: 1.0.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2011-11-04 00:00:00.000000000Z
12
+ date: 2012-03-09 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: railties
16
- requirement: &70273464683500 !ruby/object:Gem::Requirement
16
+ requirement: &70330988336260 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: 3.0.0
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *70273464683500
24
+ version_requirements: *70330988336260
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: simple_uuid
27
- requirement: &70273464682940 !ruby/object:Gem::Requirement
27
+ requirement: &70330988335840 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ! '>='
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: '0'
33
33
  type: :development
34
34
  prerelease: false
35
- version_requirements: *70273464682940
35
+ version_requirements: *70330988335840
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: sqlite3
38
- requirement: &70273464681900 !ruby/object:Gem::Requirement
38
+ requirement: &70330988335260 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ! '>='
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: '0'
44
44
  type: :development
45
45
  prerelease: false
46
- version_requirements: *70273464681900
46
+ version_requirements: *70330988335260
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: rspec
49
- requirement: &70273464680820 !ruby/object:Gem::Requirement
49
+ requirement: &70330988334680 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ! '>='
@@ -54,10 +54,10 @@ dependencies:
54
54
  version: 2.0.0
55
55
  type: :development
56
56
  prerelease: false
57
- version_requirements: *70273464680820
57
+ version_requirements: *70330988334680
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: mocha
60
- requirement: &70273464679760 !ruby/object:Gem::Requirement
60
+ requirement: &70330988334200 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ! '>='
@@ -65,10 +65,10 @@ dependencies:
65
65
  version: 0.9.8
66
66
  type: :development
67
67
  prerelease: false
68
- version_requirements: *70273464679760
68
+ version_requirements: *70330988334200
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: with_model
71
- requirement: &70273464678740 !ruby/object:Gem::Requirement
71
+ requirement: &70330988333720 !ruby/object:Gem::Requirement
72
72
  none: false
73
73
  requirements:
74
74
  - - ! '>='
@@ -76,10 +76,10 @@ dependencies:
76
76
  version: 0.1.4
77
77
  type: :development
78
78
  prerelease: false
79
- version_requirements: *70273464678740
79
+ version_requirements: *70330988333720
80
80
  - !ruby/object:Gem::Dependency
81
81
  name: guard
82
- requirement: &70273464678040 !ruby/object:Gem::Requirement
82
+ requirement: &70330988333240 !ruby/object:Gem::Requirement
83
83
  none: false
84
84
  requirements:
85
85
  - - ! '>='
@@ -87,10 +87,10 @@ dependencies:
87
87
  version: 0.3.4
88
88
  type: :development
89
89
  prerelease: false
90
- version_requirements: *70273464678040
90
+ version_requirements: *70330988333240
91
91
  - !ruby/object:Gem::Dependency
92
92
  name: guard-rspec
93
- requirement: &70273464677200 !ruby/object:Gem::Requirement
93
+ requirement: &70330988332760 !ruby/object:Gem::Requirement
94
94
  none: false
95
95
  requirements:
96
96
  - - ! '>='
@@ -98,10 +98,10 @@ dependencies:
98
98
  version: '0'
99
99
  type: :development
100
100
  prerelease: false
101
- version_requirements: *70273464677200
101
+ version_requirements: *70330988332760
102
102
  - !ruby/object:Gem::Dependency
103
103
  name: growl
104
- requirement: &70273464676120 !ruby/object:Gem::Requirement
104
+ requirement: &70330988332280 !ruby/object:Gem::Requirement
105
105
  none: false
106
106
  requirements:
107
107
  - - ! '>='
@@ -109,10 +109,10 @@ dependencies:
109
109
  version: '0'
110
110
  type: :development
111
111
  prerelease: false
112
- version_requirements: *70273464676120
112
+ version_requirements: *70330988332280
113
113
  - !ruby/object:Gem::Dependency
114
114
  name: rb-fsevent
115
- requirement: &70273464673820 !ruby/object:Gem::Requirement
115
+ requirement: &70330988331800 !ruby/object:Gem::Requirement
116
116
  none: false
117
117
  requirements:
118
118
  - - ! '>='
@@ -120,10 +120,10 @@ dependencies:
120
120
  version: '0'
121
121
  type: :development
122
122
  prerelease: false
123
- version_requirements: *70273464673820
123
+ version_requirements: *70330988331800
124
124
  - !ruby/object:Gem::Dependency
125
125
  name: ruby-debug19
126
- requirement: &70273464671140 !ruby/object:Gem::Requirement
126
+ requirement: &70330988331280 !ruby/object:Gem::Requirement
127
127
  none: false
128
128
  requirements:
129
129
  - - ! '>='
@@ -131,10 +131,10 @@ dependencies:
131
131
  version: '0'
132
132
  type: :development
133
133
  prerelease: false
134
- version_requirements: *70273464671140
134
+ version_requirements: *70330988331280
135
135
  - !ruby/object:Gem::Dependency
136
136
  name: mongoid
137
- requirement: &70273464669420 !ruby/object:Gem::Requirement
137
+ requirement: &70330988347140 !ruby/object:Gem::Requirement
138
138
  none: false
139
139
  requirements:
140
140
  - - ! '>='
@@ -142,10 +142,10 @@ dependencies:
142
142
  version: '2'
143
143
  type: :development
144
144
  prerelease: false
145
- version_requirements: *70273464669420
145
+ version_requirements: *70330988347140
146
146
  - !ruby/object:Gem::Dependency
147
147
  name: bson_ext
148
- requirement: &70273464668300 !ruby/object:Gem::Requirement
148
+ requirement: &70330988346460 !ruby/object:Gem::Requirement
149
149
  none: false
150
150
  requirements:
151
151
  - - ! '>='
@@ -153,7 +153,7 @@ dependencies:
153
153
  version: 1.3.1
154
154
  type: :development
155
155
  prerelease: false
156
- version_requirements: *70273464668300
156
+ version_requirements: *70330988346460
157
157
  description: Simple yet customizable token generator for Rails 3
158
158
  email:
159
159
  - saulius@ninja.lt
@@ -207,7 +207,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
207
207
  version: '0'
208
208
  requirements: []
209
209
  rubyforge_project: has_token_on
210
- rubygems_version: 1.8.10
210
+ rubygems_version: 1.8.11
211
211
  signing_key:
212
212
  specification_version: 3
213
213
  summary: A token generator plugin for Rails 3