artdeco 1.2.1 → 1.3.0

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.
Files changed (3) hide show
  1. data/lib/artdeco.rb +11 -1
  2. data/lib/artdeco/version.rb +1 -1
  3. metadata +17 -7
data/lib/artdeco.rb CHANGED
@@ -20,7 +20,17 @@ module Artdeco
20
20
  private
21
21
  def default_decorator_class model
22
22
  @_decorator_classes_cache ||= {}
23
- [@_decorator_classes_cache.fetch(model.class){"::#{model.class}Decorator".constantize rescue nil}].compact
23
+ [@_decorator_classes_cache.fetch(model.class){decorator_class_for model}].compact
24
+ end
25
+
26
+ def decorator_class_for model
27
+ clazz = model.class
28
+ while clazz != Object
29
+ result = ("::#{clazz}Decorator".constantize rescue nil)
30
+ return result if result
31
+ clazz = clazz.superclass
32
+ end
33
+ nil
24
34
  end
25
35
 
26
36
  end
@@ -1,3 +1,3 @@
1
1
  module Artdeco
2
- VERSION = "1.2.1"
2
+ VERSION = "1.3.0"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: artdeco
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.1
4
+ version: 1.3.0
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: 2012-06-19 00:00:00.000000000 Z
12
+ date: 2013-01-07 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rake
16
- requirement: &4826184 !ruby/object:Gem::Requirement
16
+ requirement: !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,15 @@ dependencies:
21
21
  version: '0'
22
22
  type: :development
23
23
  prerelease: false
24
- version_requirements: *4826184
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ! '>='
28
+ - !ruby/object:Gem::Version
29
+ version: '0'
25
30
  - !ruby/object:Gem::Dependency
26
31
  name: activesupport
27
- requirement: &4825800 !ruby/object:Gem::Requirement
32
+ requirement: !ruby/object:Gem::Requirement
28
33
  none: false
29
34
  requirements:
30
35
  - - ! '>='
@@ -32,7 +37,12 @@ dependencies:
32
37
  version: '3.2'
33
38
  type: :runtime
34
39
  prerelease: false
35
- version_requirements: *4825800
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ! '>='
44
+ - !ruby/object:Gem::Version
45
+ version: '3.2'
36
46
  description: Decorate models with views in a object oriented way
37
47
  email:
38
48
  - git@sonntagsbox.de
@@ -70,7 +80,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
70
80
  version: '0'
71
81
  requirements: []
72
82
  rubyforge_project: artdeco
73
- rubygems_version: 1.8.11
83
+ rubygems_version: 1.8.24
74
84
  signing_key:
75
85
  specification_version: 3
76
86
  summary: Decorators for Rails