merb-admin 0.6.3 → 0.6.4
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.
- data/README.rdoc +1 -1
- data/Rakefile +1 -1
- data/app/controllers/main.rb +10 -12
- data/lib/abstract_model.rb +1 -2
- data/lib/merb-admin/spectasks.rb +2 -0
- data/lib/merb-admin.rb +1 -1
- metadata +2 -2
data/README.rdoc
CHANGED
|
@@ -11,7 +11,7 @@ http://github.com/sferik/merb-admin/raw/master/screenshots/edit.png
|
|
|
11
11
|
== Installation
|
|
12
12
|
$ gem install merb-admin -s http://gemcutter.org
|
|
13
13
|
In your app, add the following dependency to <tt>config/dependencies.rb</tt>:
|
|
14
|
-
dependency "merb-admin", "0.6.
|
|
14
|
+
dependency "merb-admin", "0.6.4"
|
|
15
15
|
Add the following route to <tt>config/router.rb</tt>:
|
|
16
16
|
add_slice(:merb_admin, :path_prefix => "admin")
|
|
17
17
|
Then, run the following rake task:
|
data/Rakefile
CHANGED
|
@@ -9,7 +9,7 @@ AUTHOR = "Erik Michaels-Ober"
|
|
|
9
9
|
EMAIL = "sferik@gmail.com"
|
|
10
10
|
HOMEPAGE = "http://github.com/sferik/merb-admin"
|
|
11
11
|
SUMMARY = "MerbAdmin is a Merb plugin that provides an easy-to-use interface for managing your data."
|
|
12
|
-
GEM_VERSION = "0.6.
|
|
12
|
+
GEM_VERSION = "0.6.4"
|
|
13
13
|
MERB_GEM_VERSION = "1.0.15"
|
|
14
14
|
|
|
15
15
|
spec = Gem::Specification.new do |s|
|
data/app/controllers/main.rb
CHANGED
|
@@ -14,12 +14,10 @@ class MerbAdmin::Main < MerbAdmin::Application
|
|
|
14
14
|
|
|
15
15
|
def list
|
|
16
16
|
options = {}
|
|
17
|
-
options.merge!(
|
|
18
|
-
options.merge!(
|
|
19
|
-
options.merge!(
|
|
20
|
-
options.merge!(
|
|
21
|
-
# merge_query!(options)
|
|
22
|
-
# merge_filter!(options)
|
|
17
|
+
options.merge!(get_sort_hash)
|
|
18
|
+
options.merge!(get_sort_reverse_hash)
|
|
19
|
+
options.merge!(get_query_hash(options))
|
|
20
|
+
options.merge!(get_filter_hash(options))
|
|
23
21
|
per_page = MerbAdmin[:per_page]
|
|
24
22
|
if params[:all]
|
|
25
23
|
options.merge!(:limit => per_page * 2)
|
|
@@ -96,17 +94,17 @@ class MerbAdmin::Main < MerbAdmin::Application
|
|
|
96
94
|
raise NotFound unless @object
|
|
97
95
|
end
|
|
98
96
|
|
|
99
|
-
def
|
|
97
|
+
def get_sort_hash
|
|
100
98
|
sort = params[:sort]
|
|
101
99
|
sort ? {:sort => sort} : {}
|
|
102
100
|
end
|
|
103
101
|
|
|
104
|
-
def
|
|
102
|
+
def get_sort_reverse_hash
|
|
105
103
|
sort_reverse = params[:sort_reverse]
|
|
106
104
|
sort_reverse ? {:sort_reverse => sort_reverse == "true"} : {}
|
|
107
105
|
end
|
|
108
106
|
|
|
109
|
-
def
|
|
107
|
+
def get_query_hash(options)
|
|
110
108
|
query = params[:query]
|
|
111
109
|
return {} unless query
|
|
112
110
|
statements = []
|
|
@@ -114,7 +112,7 @@ class MerbAdmin::Main < MerbAdmin::Application
|
|
|
114
112
|
conditions = options[:conditions] || [""]
|
|
115
113
|
|
|
116
114
|
@properties.select{|property| property[:type] == :string}.each do |property|
|
|
117
|
-
statements << "#{property[:name]} LIKE ?"
|
|
115
|
+
statements << "(#{property[:name]} LIKE ?)"
|
|
118
116
|
values << "%#{query}%"
|
|
119
117
|
end
|
|
120
118
|
|
|
@@ -124,7 +122,7 @@ class MerbAdmin::Main < MerbAdmin::Application
|
|
|
124
122
|
conditions != [""] ? {:conditions => conditions} : {}
|
|
125
123
|
end
|
|
126
124
|
|
|
127
|
-
def
|
|
125
|
+
def get_filter_hash(options)
|
|
128
126
|
filter = params[:filter]
|
|
129
127
|
return {} unless filter
|
|
130
128
|
statements = []
|
|
@@ -133,7 +131,7 @@ class MerbAdmin::Main < MerbAdmin::Application
|
|
|
133
131
|
|
|
134
132
|
filter.each_pair do |key, value|
|
|
135
133
|
@properties.select{|property| property[:type] == :boolean && property[:name] == key.to_sym}.each do |property|
|
|
136
|
-
statements << "#{key} = ?"
|
|
134
|
+
statements << "(#{key} = ?)"
|
|
137
135
|
values << (value == "true")
|
|
138
136
|
end
|
|
139
137
|
end
|
data/lib/abstract_model.rb
CHANGED
|
@@ -5,7 +5,7 @@ module MerbAdmin
|
|
|
5
5
|
# Returns all models for a given Merb app
|
|
6
6
|
def self.all
|
|
7
7
|
return @models if @models
|
|
8
|
-
@models
|
|
8
|
+
@models = []
|
|
9
9
|
orm = Merb.orm
|
|
10
10
|
case orm
|
|
11
11
|
when :activerecord, :sequel
|
|
@@ -16,7 +16,6 @@ module MerbAdmin
|
|
|
16
16
|
end
|
|
17
17
|
end
|
|
18
18
|
when :datamapper
|
|
19
|
-
@models = []
|
|
20
19
|
DataMapper::Model.descendants.each do |model_name|
|
|
21
20
|
# Remove DataMapperSessionStore because it's included by default
|
|
22
21
|
next if m == Merb::DataMapperSessionStore if Merb.const_defined?(:DataMapperSessionStore)
|
data/lib/merb-admin/spectasks.rb
CHANGED
data/lib/merb-admin.rb
CHANGED
|
@@ -23,7 +23,7 @@ if defined?(Merb::Plugins)
|
|
|
23
23
|
|
|
24
24
|
# Slice metadata
|
|
25
25
|
self.description = "MerbAdmin is a Merb plugin that provides an easy-to-use interface for managing your data."
|
|
26
|
-
self.version = "0.6.
|
|
26
|
+
self.version = "0.6.4"
|
|
27
27
|
self.author = "Erik Michaels-Ober"
|
|
28
28
|
|
|
29
29
|
# Stub classes loaded hook - runs before LoadClasses BootLoader
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: merb-admin
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.6.
|
|
4
|
+
version: 0.6.4
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Erik Michaels-Ober
|
|
@@ -9,7 +9,7 @@ autorequire:
|
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
11
|
|
|
12
|
-
date: 2009-11-
|
|
12
|
+
date: 2009-11-06 00:00:00 -08:00
|
|
13
13
|
default_executable:
|
|
14
14
|
dependencies:
|
|
15
15
|
- !ruby/object:Gem::Dependency
|