maiha-merb_inspector 0.2.7 → 0.2.8

Sign up to get free protection for your applications and to get access to all the features.
data/Rakefile CHANGED
@@ -5,7 +5,7 @@ require 'merb-core'
5
5
  require 'merb-core/tasks/merb'
6
6
 
7
7
  GEM_NAME = "merb_inspector"
8
- GEM_VERSION = "0.2.7"
8
+ GEM_VERSION = "0.2.8"
9
9
  AUTHOR = "Maiha"
10
10
  EMAIL = "maiha@wota.jp"
11
11
  HOMEPAGE = "http://github.com/maiha/merb_inspector"
@@ -15,8 +15,18 @@ class DataMapper::ResourceInspector < Merb::Inspector
15
15
  @object.class
16
16
  end
17
17
 
18
+ def klass
19
+ @object.class
20
+ end
21
+
18
22
  def columns
19
- model.properties
23
+ if @options[:only]
24
+ klass.properties.select{|p| @options[:only].map(&:to_s).include?(p.name.to_s)}
25
+ elsif @options[:except]
26
+ klass.properties.reject{|p| @options[:except].map(&:to_s).include?(p.name.to_s)}
27
+ else
28
+ klass.properties
29
+ end
20
30
  end
21
31
 
22
32
  def dom_id
@@ -116,15 +126,15 @@ end
116
126
 
117
127
  class DataMapper::CollectionInspector < DataMapper::ResourceInspector
118
128
  builtin
119
- model ::DataMapper::Collection
129
+ model ::DataMapper::Collection, ::DataMapper::Associations::OneToMany::Proxy
120
130
 
121
131
  private
122
132
  def model
123
133
  @object.query.model
124
134
  end
125
135
 
126
- def columns
127
- @object.properties
136
+ def klass
137
+ @object
128
138
  end
129
139
 
130
140
  def options
@@ -6,11 +6,22 @@ module Merb
6
6
  object = args.shift
7
7
  options = args.shift || {}
8
8
 
9
- options = options.is_a?(Hash) ? options : {:action=>options}
9
+ unless options.is_a?(Hash)
10
+ action = options.to_s
11
+ options = args.shift || {}
12
+ options[:action] = action
13
+ end
10
14
  options[:action] ||= :show
11
15
  options[:level] ||= 1
12
16
  options[:max_level] ||= 3
13
17
 
18
+ # validate keys
19
+ valid_keys = [:action, :level, :max_level, :only, :except]
20
+ unknown_keys = options.keys - valid_keys
21
+ if !unknown_keys.blank?
22
+ return h("[INSPECTOR ERROR] Unknown key(s): %s" % unknown_keys.inspect)
23
+ end
24
+
14
25
  inspector_class = BasicInspector if options[:level] >= options[:max_level]
15
26
  inspector_class ||= Manager.lookup(object) || Merb::Inspector.default
16
27
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: maiha-merb_inspector
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.7
4
+ version: 0.2.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Maiha
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2009-03-15 00:00:00 -07:00
12
+ date: 2009-04-18 00:00:00 -07:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
@@ -93,7 +93,7 @@ requirements: []
93
93
  rubyforge_project: merb
94
94
  rubygems_version: 1.2.0
95
95
  signing_key:
96
- specification_version: 2
96
+ specification_version: 3
97
97
  summary: Merb plugin that provides powerful 'inspect' helper method
98
98
  test_files: []
99
99