fat_free_crm 0.13.1 → 0.13.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.
checksums.yaml CHANGED
@@ -1,7 +1,15 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 9ec069bee0f0bade1f8ccaf400c483acf1806f99
4
- data.tar.gz: 267efa985f28e83578031082c510be10d6e3eae7
2
+ !binary "U0hBMQ==":
3
+ metadata.gz: !binary |-
4
+ OGUwMGExYzVhMDhiMGMwMWVmNjFhZGY3YWI3NTlhMDJmZTE5NzhmMA==
5
+ data.tar.gz: !binary |-
6
+ MWQ2MWI5N2NjNDM1M2FjYjI3NDgzYWRhYzkyM2ZiZTI5MWJmYWMxOA==
5
7
  SHA512:
6
- metadata.gz: 196ac4c6e50d2987143f102fa7d0d22c36d5e55c2942944bb156741abf5b372ecb94ae3b09914b240781b78a934c3a2c8610b738673aa463630b0237d312522e
7
- data.tar.gz: ac3c0ef7606d672faad180129d1803ba69f184b640b8509aff0cfce38c4e7dfbbc5758e6483e5cd25072747224ab7fba87824df26d64745953d9fc74411e8e84
8
+ metadata.gz: !binary |-
9
+ MmM0ZTIyNDg4MWExZDU5ZThjOTRhZDBmMzUzY2EyZWZkYmYyZWZjNDYzYzRj
10
+ OWRkMDY2ZTYwZjJkMzg0ODJiODMyNWU0NGNlZDg4MDQ5YWY4MDU2ODExNTAx
11
+ MjA2YTdlM2EwMTY2ODI3NmRkN2Y4MmJjODY2MjZhNWQzYjY2MGM=
12
+ data.tar.gz: !binary |-
13
+ OGUxMGRhMzc5MzIxZjMzYzQ2NTk2YzJhMWZhZWIxNTQ2ZjcxNGRhNWM5NTRk
14
+ NzY2YThmY2U1ZDMwMTU2OTYzNGVjN2Q5YzI0YjgzZTg1ZWI2NTUzNzczODU4
15
+ MTIyZDMyNzk2MDNiNjFhNzcyMDBkYjJmMDQxMTBmYTRjNTA2NzM=
@@ -16,17 +16,19 @@ module FatFreeCRM
16
16
  # If there is no secret token defined, we generate one and save it as a setting
17
17
  # If a token has been already been saved, we tell Rails to use it and move on.
18
18
  def setup!
19
- if token.blank?
19
+ if !token_exists?
20
20
  Rails.logger.info("No secret key defined yet... generating and saving to Setting.secret_token")
21
- generate_and_persist_token!
21
+ new_token!
22
22
  end
23
- FatFreeCRM::Application.config.secret_token = token
24
- raise(FAIL_MESSAGE) if FatFreeCRM::Application.config.secret_token.blank?# and !Rails.env.test?
23
+ # If db isn't setup yet, token will return nil, provide a randomly generated one for now.
24
+ FatFreeCRM::Application.config.secret_token = ( token || generate_token )
25
25
  end
26
26
 
27
27
  private
28
28
 
29
- FAIL_MESSAGE = ::I18n.t('secret_token_generator.fail_message', default: "There was a problem generating the secret token. Please see lib/fat_free_crm/secret_token_generator.rb")
29
+ def token_exists?
30
+ Setting.secret_token.present?
31
+ end
30
32
 
31
33
  #
32
34
  # Read the current token from settings
@@ -36,12 +38,16 @@ module FatFreeCRM
36
38
 
37
39
  #
38
40
  # Create a new secret token and save it as a setting.
39
- def generate_and_persist_token!
41
+ def new_token!
40
42
  quietly do
41
- Setting.secret_token = SecureRandom.hex(64)
43
+ Setting.secret_token = generate_token
42
44
  end
43
45
  end
44
46
 
47
+ def generate_token
48
+ SecureRandom.hex(64)
49
+ end
50
+
45
51
  #
46
52
  # Yields to a block that executes with the logging turned off
47
53
  # This stops the secret token from being appended to the log
@@ -7,7 +7,7 @@ module FatFreeCRM
7
7
  module VERSION #:nodoc:
8
8
  MAJOR = 0
9
9
  MINOR = 13
10
- TINY = 1
10
+ TINY = 2
11
11
  PRE = nil
12
12
 
13
13
  STRING = [MAJOR, MINOR, TINY, PRE].compact.join('.')
@@ -13,22 +13,37 @@ describe FatFreeCRM::SecretTokenGenerator do
13
13
 
14
14
  describe "setup!" do
15
15
 
16
- it "should not generate a token if one already exists" do
17
- FatFreeCRM::SecretTokenGenerator.stub(:token).and_return(nil)
18
- expect(FatFreeCRM::SecretTokenGenerator).to receive(:generate_and_persist_token!)
19
- FatFreeCRM::Application.config.stub(:secret_token).and_return(token)
16
+ it "should not generate a new token if one exists" do
17
+ FatFreeCRM::SecretTokenGenerator.stub(:token_exists?).and_return(true)
18
+ FatFreeCRM::SecretTokenGenerator.should_not_receive(:new_token!)
20
19
  FatFreeCRM::SecretTokenGenerator.setup!
21
20
  end
22
21
 
23
- it "should generate a token if none exists already" do
24
- FatFreeCRM::SecretTokenGenerator.stub(:token).and_return(token)
25
- expect(FatFreeCRM::SecretTokenGenerator).not_to receive(:generate_and_persist_token!)
22
+ it "should generate a token if none exists" do
23
+ FatFreeCRM::SecretTokenGenerator.stub(:token_exists?).and_return(false)
24
+ FatFreeCRM::SecretTokenGenerator.should_receive(:new_token!)
26
25
  FatFreeCRM::SecretTokenGenerator.setup!
27
26
  end
28
27
 
29
- it "should raise an error if the token is still blank (should never happen)" do
30
- FatFreeCRM::SecretTokenGenerator.stub(:token).and_return(nil)
31
- lambda { FatFreeCRM::SecretTokenGenerator.setup! }.should raise_error(RuntimeError)
28
+ it "should generate a random token if not persisted" do
29
+ FatFreeCRM::SecretTokenGenerator.stub(:token_exists?).and_return(false)
30
+ FatFreeCRM::SecretTokenGenerator.stub(:new_token)
31
+ FatFreeCRM::SecretTokenGenerator.should_receive(:generate_token).exactly(:twice)
32
+ FatFreeCRM::SecretTokenGenerator.setup!
33
+ end
34
+
35
+ end
36
+
37
+ describe "token_exists?" do
38
+
39
+ it "should be true" do
40
+ Setting.stub(:secret_token).and_return(token)
41
+ FatFreeCRM::SecretTokenGenerator.send(:token_exists?).should eql(true)
42
+ end
43
+
44
+ it "should be false" do
45
+ Setting.stub(:secret_token).and_return(nil)
46
+ FatFreeCRM::SecretTokenGenerator.send(:token_exists?).should eql(false)
32
47
  end
33
48
 
34
49
  end
@@ -36,18 +51,27 @@ describe FatFreeCRM::SecretTokenGenerator do
36
51
  describe "token" do
37
52
 
38
53
  it "should delegate to Setting" do
39
- expect(Setting).to receive(:secret_token).and_return(token)
40
- expect(FatFreeCRM::SecretTokenGenerator.send(:token)).to eql(token)
54
+ Setting.should_receive(:secret_token).and_return(token)
55
+ FatFreeCRM::SecretTokenGenerator.send(:token).should eql(token)
56
+ end
57
+
58
+ end
59
+
60
+ describe "new_token!" do
61
+
62
+ it "should generate and set a new token" do
63
+ FatFreeCRM::SecretTokenGenerator.should_receive(:generate_token).and_return(token)
64
+ Setting.should_receive(:secret_token=).with(token)
65
+ FatFreeCRM::SecretTokenGenerator.send(:new_token!)
41
66
  end
42
67
 
43
68
  end
44
69
 
45
- describe "generate_and_persist_token!" do
70
+ describe "generate_token!" do
46
71
 
47
72
  it "should generate a random token" do
48
- expect(SecureRandom).to receive(:hex).with(64).and_return(token)
49
- expect(Setting).to receive(:secret_token=).with(token)
50
- FatFreeCRM::SecretTokenGenerator.send(:generate_and_persist_token!)
73
+ SecureRandom.should_receive(:hex).with(64).and_return(token)
74
+ FatFreeCRM::SecretTokenGenerator.send(:generate_token)
51
75
  end
52
76
 
53
77
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fat_free_crm
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.13.1
4
+ version: 0.13.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michael Dvorkin
@@ -11,7 +11,7 @@ authors:
11
11
  autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
- date: 2014-01-07 00:00:00.000000000 Z
14
+ date: 2014-01-09 00:00:00.000000000 Z
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: rails
@@ -31,14 +31,14 @@ dependencies:
31
31
  name: prototype-rails
32
32
  requirement: !ruby/object:Gem::Requirement
33
33
  requirements:
34
- - - '>='
34
+ - - ! '>='
35
35
  - !ruby/object:Gem::Version
36
36
  version: '0'
37
37
  type: :runtime
38
38
  prerelease: false
39
39
  version_requirements: !ruby/object:Gem::Requirement
40
40
  requirements:
41
- - - '>='
41
+ - - ! '>='
42
42
  - !ruby/object:Gem::Version
43
43
  version: '0'
44
44
  - !ruby/object:Gem::Dependency
@@ -59,14 +59,14 @@ dependencies:
59
59
  name: select2-rails
60
60
  requirement: !ruby/object:Gem::Requirement
61
61
  requirements:
62
- - - '>='
62
+ - - ! '>='
63
63
  - !ruby/object:Gem::Version
64
64
  version: '0'
65
65
  type: :runtime
66
66
  prerelease: false
67
67
  version_requirements: !ruby/object:Gem::Requirement
68
68
  requirements:
69
- - - '>='
69
+ - - ! '>='
70
70
  - !ruby/object:Gem::Version
71
71
  version: '0'
72
72
  - !ruby/object:Gem::Dependency
@@ -101,28 +101,28 @@ dependencies:
101
101
  name: paperclip
102
102
  requirement: !ruby/object:Gem::Requirement
103
103
  requirements:
104
- - - '>='
104
+ - - ! '>='
105
105
  - !ruby/object:Gem::Version
106
106
  version: '0'
107
107
  type: :runtime
108
108
  prerelease: false
109
109
  version_requirements: !ruby/object:Gem::Requirement
110
110
  requirements:
111
- - - '>='
111
+ - - ! '>='
112
112
  - !ruby/object:Gem::Version
113
113
  version: '0'
114
114
  - !ruby/object:Gem::Dependency
115
115
  name: cocaine
116
116
  requirement: !ruby/object:Gem::Requirement
117
117
  requirements:
118
- - - '>='
118
+ - - ! '>='
119
119
  - !ruby/object:Gem::Version
120
120
  version: '0'
121
121
  type: :runtime
122
122
  prerelease: false
123
123
  version_requirements: !ruby/object:Gem::Requirement
124
124
  requirements:
125
- - - '>='
125
+ - - ! '>='
126
126
  - !ruby/object:Gem::Version
127
127
  version: '0'
128
128
  - !ruby/object:Gem::Dependency
@@ -185,14 +185,14 @@ dependencies:
185
185
  name: dynamic_form
186
186
  requirement: !ruby/object:Gem::Requirement
187
187
  requirements:
188
- - - '>='
188
+ - - ! '>='
189
189
  - !ruby/object:Gem::Version
190
190
  version: '0'
191
191
  type: :runtime
192
192
  prerelease: false
193
193
  version_requirements: !ruby/object:Gem::Requirement
194
194
  requirements:
195
- - - '>='
195
+ - - ! '>='
196
196
  - !ruby/object:Gem::Version
197
197
  version: '0'
198
198
  - !ruby/object:Gem::Dependency
@@ -241,140 +241,154 @@ dependencies:
241
241
  name: ffaker
242
242
  requirement: !ruby/object:Gem::Requirement
243
243
  requirements:
244
- - - '>='
244
+ - - ! '>='
245
245
  - !ruby/object:Gem::Version
246
246
  version: 1.12.0
247
247
  type: :runtime
248
248
  prerelease: false
249
249
  version_requirements: !ruby/object:Gem::Requirement
250
250
  requirements:
251
- - - '>='
251
+ - - ! '>='
252
252
  - !ruby/object:Gem::Version
253
253
  version: 1.12.0
254
254
  - !ruby/object:Gem::Dependency
255
255
  name: cancan
256
256
  requirement: !ruby/object:Gem::Requirement
257
257
  requirements:
258
- - - '>='
258
+ - - ! '>='
259
259
  - !ruby/object:Gem::Version
260
260
  version: '0'
261
261
  type: :runtime
262
262
  prerelease: false
263
263
  version_requirements: !ruby/object:Gem::Requirement
264
264
  requirements:
265
- - - '>='
265
+ - - ! '>='
266
266
  - !ruby/object:Gem::Version
267
267
  version: '0'
268
268
  - !ruby/object:Gem::Dependency
269
269
  name: font-awesome-rails
270
270
  requirement: !ruby/object:Gem::Requirement
271
271
  requirements:
272
- - - '>='
272
+ - - ! '>='
273
273
  - !ruby/object:Gem::Version
274
274
  version: '0'
275
275
  type: :runtime
276
276
  prerelease: false
277
277
  version_requirements: !ruby/object:Gem::Requirement
278
278
  requirements:
279
- - - '>='
279
+ - - ! '>='
280
280
  - !ruby/object:Gem::Version
281
281
  version: '0'
282
282
  - !ruby/object:Gem::Dependency
283
283
  name: premailer
284
284
  requirement: !ruby/object:Gem::Requirement
285
285
  requirements:
286
- - - '>='
286
+ - - ! '>='
287
287
  - !ruby/object:Gem::Version
288
288
  version: '0'
289
289
  type: :runtime
290
290
  prerelease: false
291
291
  version_requirements: !ruby/object:Gem::Requirement
292
292
  requirements:
293
- - - '>='
293
+ - - ! '>='
294
294
  - !ruby/object:Gem::Version
295
295
  version: '0'
296
296
  - !ruby/object:Gem::Dependency
297
297
  name: nokogiri
298
298
  requirement: !ruby/object:Gem::Requirement
299
299
  requirements:
300
- - - '>='
300
+ - - ! '>='
301
301
  - !ruby/object:Gem::Version
302
302
  version: '0'
303
303
  type: :runtime
304
304
  prerelease: false
305
305
  version_requirements: !ruby/object:Gem::Requirement
306
306
  requirements:
307
- - - '>='
307
+ - - ! '>='
308
308
  - !ruby/object:Gem::Version
309
309
  version: '0'
310
310
  - !ruby/object:Gem::Dependency
311
311
  name: responds_to_parent
312
312
  requirement: !ruby/object:Gem::Requirement
313
313
  requirements:
314
- - - '>='
314
+ - - ! '>='
315
315
  - !ruby/object:Gem::Version
316
316
  version: 1.1.0
317
317
  type: :runtime
318
318
  prerelease: false
319
319
  version_requirements: !ruby/object:Gem::Requirement
320
320
  requirements:
321
- - - '>='
321
+ - - ! '>='
322
322
  - !ruby/object:Gem::Version
323
323
  version: 1.1.0
324
324
  - !ruby/object:Gem::Dependency
325
325
  name: rails3-jquery-autocomplete
326
326
  requirement: !ruby/object:Gem::Requirement
327
327
  requirements:
328
- - - '>='
328
+ - - ! '>='
329
329
  - !ruby/object:Gem::Version
330
330
  version: '0'
331
331
  type: :runtime
332
332
  prerelease: false
333
333
  version_requirements: !ruby/object:Gem::Requirement
334
334
  requirements:
335
- - - '>='
335
+ - - ! '>='
336
336
  - !ruby/object:Gem::Version
337
337
  version: '0'
338
338
  - !ruby/object:Gem::Dependency
339
339
  name: valium
340
340
  requirement: !ruby/object:Gem::Requirement
341
341
  requirements:
342
- - - '>='
342
+ - - ! '>='
343
343
  - !ruby/object:Gem::Version
344
344
  version: '0'
345
345
  type: :runtime
346
346
  prerelease: false
347
347
  version_requirements: !ruby/object:Gem::Requirement
348
348
  requirements:
349
- - - '>='
349
+ - - ! '>='
350
350
  - !ruby/object:Gem::Version
351
351
  version: '0'
352
+ - !ruby/object:Gem::Dependency
353
+ name: psych
354
+ requirement: !ruby/object:Gem::Requirement
355
+ requirements:
356
+ - - ~>
357
+ - !ruby/object:Gem::Version
358
+ version: '1'
359
+ type: :runtime
360
+ prerelease: false
361
+ version_requirements: !ruby/object:Gem::Requirement
362
+ requirements:
363
+ - - ~>
364
+ - !ruby/object:Gem::Version
365
+ version: '1'
352
366
  - !ruby/object:Gem::Dependency
353
367
  name: ransack_ui
354
368
  requirement: !ruby/object:Gem::Requirement
355
369
  requirements:
356
- - - '>='
370
+ - - ! '>='
357
371
  - !ruby/object:Gem::Version
358
372
  version: 1.1.0
359
373
  type: :runtime
360
374
  prerelease: false
361
375
  version_requirements: !ruby/object:Gem::Requirement
362
376
  requirements:
363
- - - '>='
377
+ - - ! '>='
364
378
  - !ruby/object:Gem::Version
365
379
  version: 1.1.0
366
380
  - !ruby/object:Gem::Dependency
367
381
  name: email_reply_parser_ffcrm
368
382
  requirement: !ruby/object:Gem::Requirement
369
383
  requirements:
370
- - - '>='
384
+ - - ! '>='
371
385
  - !ruby/object:Gem::Version
372
386
  version: '0'
373
387
  type: :runtime
374
388
  prerelease: false
375
389
  version_requirements: !ruby/object:Gem::Requirement
376
390
  requirements:
377
- - - '>='
391
+ - - ! '>='
378
392
  - !ruby/object:Gem::Version
379
393
  version: '0'
380
394
  description: An open source, Ruby on Rails customer relationship management platform
@@ -1410,12 +1424,12 @@ require_paths:
1410
1424
  - lib
1411
1425
  required_ruby_version: !ruby/object:Gem::Requirement
1412
1426
  requirements:
1413
- - - '>='
1427
+ - - ! '>='
1414
1428
  - !ruby/object:Gem::Version
1415
1429
  version: '1.9'
1416
1430
  required_rubygems_version: !ruby/object:Gem::Requirement
1417
1431
  requirements:
1418
- - - '>='
1432
+ - - ! '>='
1419
1433
  - !ruby/object:Gem::Version
1420
1434
  version: '0'
1421
1435
  requirements: []