sferik-merb-admin 0.2.4 → 0.2.5

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.markdown CHANGED
@@ -14,7 +14,7 @@ At the command prompt, type:
14
14
 
15
15
  In your app, add the following dependency to `config/dependencies.rb`:
16
16
 
17
- dependency "sferik-merb-admin", "0.2.4", :require_as => "merb-admin"
17
+ dependency "sferik-merb-admin", "0.2.5", :require_as => "merb-admin"
18
18
 
19
19
  Add the following route to `config/router.rb`:
20
20
 
@@ -30,6 +30,7 @@ You can configuring the merb-admin slice in a before_app_loads block:
30
30
 
31
31
  Merb::BootLoader.before_app_loads do
32
32
  Merb::Slices::config[:merb_admin][:app_name] = "My App"
33
+ Merb::Slices::config[:merb_admin][:paginate] = true
33
34
  end
34
35
 
35
36
  ## Run it
data/Rakefile CHANGED
@@ -12,7 +12,7 @@ AUTHOR = "Erik Michaels-Ober"
12
12
  EMAIL = "sferik@gmail.com"
13
13
  HOMEPAGE = "http://twitter.com/sferik"
14
14
  SUMMARY = "MerbAdmin is a merb slice that provides an easy-to-use interface for managing your data."
15
- GEM_VERSION = "0.2.4"
15
+ GEM_VERSION = "0.2.5"
16
16
 
17
17
  spec = Gem::Specification.new do |s|
18
18
  s.rubyforge_project = "merb"
@@ -26,8 +26,8 @@ spec = Gem::Specification.new do |s|
26
26
  s.author = AUTHOR
27
27
  s.email = EMAIL
28
28
  s.homepage = HOMEPAGE
29
- s.add_dependency("merb-slices", Merb::VERSION)
30
- s.add_dependency("merb_datamapper", Merb::VERSION)
29
+ s.add_dependency("merb-slices", ">= 1.0.12")
30
+ s.add_dependency("merb_datamapper", ">= 1.0.12")
31
31
  s.add_dependency("dm-core", ">= 0.9.11")
32
32
  s.add_dependency("dm-is-paginated", ">= 0.0.1")
33
33
  s.require_path = "lib"
@@ -13,33 +13,32 @@ class MerbAdmin::Forms < MerbAdmin::Application
13
13
  filters = params[:filter] || {}
14
14
  filters.each_pair do |key, value|
15
15
  if @model.properties[key].primitive.to_s == "TrueClass"
16
- options.merge!(key.to_sym => (value == "true" ? true : false))
16
+ options.merge!(key.to_sym => (value == "true"))
17
17
  elsif @model.properties[key].primitive.to_s == "Integer" && @model.properties[key].type.respond_to?(:flag_map)
18
18
  options.merge!(key.to_sym => value.to_sym)
19
19
  end
20
20
  end
21
- if params[:all]
21
+ if params[:query]
22
+ condition_statement = []
23
+ conditions = []
24
+ @properties.each do |property|
25
+ next unless property.type.to_s == "String"
26
+ condition_statement << "#{property.field} LIKE ?"
27
+ conditions << "%#{params[:query]}%"
28
+ end
29
+ conditions.unshift(condition_statement.join(" OR "))
30
+ options.merge!(:conditions => conditions) unless conditions == [""]
31
+ end
32
+ if params[:sort]
33
+ order = "[:#{params[:sort]}.#{params[:sort_reverse] ? 'desc' : 'asc'}]"
34
+ options.merge!(:order => eval(order))
35
+ end
36
+ if !MerbAdmin[:paginate] || params[:all]
22
37
  options = {
23
38
  :limit => 200,
24
39
  }.merge(options)
25
40
  @instances = @model.all(options).reverse
26
41
  else
27
- if params[:query]
28
- condition_statement = []
29
- conditions = []
30
- @properties.each do |property|
31
- next unless property.primitive.to_s == "String"
32
- condition_statement << "#{property.field} LIKE ?"
33
- conditions << "%#{params[:query]}%"
34
- end
35
- conditions.unshift(condition_statement.join(" OR "))
36
- options.merge!(:conditions => conditions) unless conditions == [""]
37
- end
38
- if params[:sort]
39
- order = "[:#{params[:sort]}.#{params[:sort_reverse] ? 'desc' : 'asc'}]"
40
- options.merge!(:order => eval(order))
41
- end
42
-
43
42
  # monkey patch pagination
44
43
  @model.class_eval("is_paginated") unless @model.respond_to?(:paginated)
45
44
  @current_page = (params[:page] || 1).to_i
data/lib/merb-admin.rb CHANGED
@@ -22,7 +22,7 @@ if defined?(Merb::Plugins)
22
22
 
23
23
  # Slice metadata
24
24
  self.description = "MerbAdmin is a merb slice that uses your DataMapper models to provide an easy-to-use, Django-style interface for content managers."
25
- self.version = "0.2.4"
25
+ self.version = "0.2.5"
26
26
  self.author = "Erik Michaels-Ober"
27
27
 
28
28
  # Stub classes loaded hook - runs before LoadClasses BootLoader
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sferik-merb-admin
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.4
4
+ version: 0.2.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Erik Michaels-Ober
@@ -18,7 +18,7 @@ dependencies:
18
18
  version_requirement:
19
19
  version_requirements: !ruby/object:Gem::Requirement
20
20
  requirements:
21
- - - "="
21
+ - - ">="
22
22
  - !ruby/object:Gem::Version
23
23
  version: 1.0.12
24
24
  version:
@@ -28,7 +28,7 @@ dependencies:
28
28
  version_requirement:
29
29
  version_requirements: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - "="
31
+ - - ">="
32
32
  - !ruby/object:Gem::Version
33
33
  version: 1.0.12
34
34
  version: