hideous 0.0.3 → 0.0.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. data/lib/hideous.rb +14 -3
  2. data/lib/hideous/version.rb +1 -1
  3. metadata +3 -3
data/lib/hideous.rb CHANGED
@@ -9,9 +9,11 @@ module Hideous
9
9
  cattr_accessor :hideous_prime
10
10
  cattr_accessor :hideous_prime_inverse
11
11
  cattr_accessor :hideous_rndxor
12
+ cattr_accessor :hideous_enabled
12
13
  self.hideous_prime = (options[:prime] || hideous_default_prime)
13
14
  self.hideous_prime_inverse = (options[:prime_inverse] || hideous_default_prime_inverse)
14
15
  self.hideous_rndxor = (options[:rndxor] || hideous_default_rndxor)
16
+ self.hideous_enabled = (options[:auto].nil? ? true : options[:auto])
15
17
  end
16
18
 
17
19
  def self.hide(id, hideous_prime, hideous_prime_inverse, hideous_rndxor)
@@ -31,8 +33,13 @@ module Hideous
31
33
  super(*args)
32
34
  end
33
35
 
36
+ def find_by_obfuscated_id(*args)
37
+ args[0] = Hideous.show(args[0].to_s, self.hideous_prime, self.hideous_prime_inverse, self.hideous_rndxor)
38
+ find(*args)
39
+ end
40
+
34
41
  def has_obfuscated_id?
35
- true
42
+ self.hideous_enabled
36
43
  end
37
44
 
38
45
  def hideous_default_prime
@@ -50,11 +57,15 @@ module Hideous
50
57
 
51
58
  module InstanceMethods
52
59
  def to_param
53
- Hideous.hide(self.id, self.hideous_prime, self.hideous_prime_inverse, self.hideous_rndxor)
60
+ if self.hideous_enabled
61
+ Hideous.hide(self.id, self.hideous_prime, self.hideous_prime_inverse, self.hideous_rndxor)
62
+ else
63
+ super
64
+ end
54
65
  end
55
66
 
56
67
  end
57
68
 
58
69
  end
59
70
 
60
- ActiveRecord::Base.extend Hideous
71
+ ActiveRecord::Base.extend Hideous
@@ -1,3 +1,3 @@
1
1
  module Hideous
2
- VERSION = "0.0.3"
2
+ VERSION = "0.0.4"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hideous
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.0.4
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -41,7 +41,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
41
41
  version: '0'
42
42
  segments:
43
43
  - 0
44
- hash: -488321943809870856
44
+ hash: -1057310556346039001
45
45
  required_rubygems_version: !ruby/object:Gem::Requirement
46
46
  none: false
47
47
  requirements:
@@ -50,7 +50,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
50
50
  version: '0'
51
51
  segments:
52
52
  - 0
53
- hash: -488321943809870856
53
+ hash: -1057310556346039001
54
54
  requirements: []
55
55
  rubyforge_project:
56
56
  rubygems_version: 1.8.23