acts_as_flexigrid 0.0.3 → 0.0.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.
@@ -1,3 +1,3 @@
1
1
  module ActsAsFlexigrid
2
- VERSION = "0.0.3"
2
+ VERSION = "0.0.4"
3
3
  end
@@ -11,10 +11,19 @@ module ActsAsFlexigrid
11
11
 
12
12
  scope :flexigrid_where, lambda { |type, query|
13
13
  if type and type.strip.present? and query and query.strip.present?
14
- where("#{quoted_table_name}.#{connection.quote_column_name(type.strip)} LIKE :val", {:val => "%#{query.strip}%"})
14
+ method_name = "#{type}_flexigrid_where"
15
+ if self.respond_to?(method_name)
16
+ self.send(method_name, query)
17
+ else
18
+ any_flexigrid_where(type, query)
19
+ end
15
20
  end
16
21
  }
17
22
 
23
+ scope :any_flexigrid_where, lambda { |type, query|
24
+ where("#{quoted_table_name}.#{connection.quote_column_name(type.strip)} LIKE :val", {:val => "%#{query.strip}%"})
25
+ }
26
+
18
27
  scope :flexigrid_order, lambda { |name, order|
19
28
  if name.present? and order.present?
20
29
  order = order.downcase == "asc" ? "asc" : "desc"
data/spec/fake_app.rb CHANGED
@@ -13,6 +13,10 @@ ActiveRecord::Base.establish_connection('test')
13
13
 
14
14
  class User < ActiveRecord::Base
15
15
  include ActsAsFlexigrid
16
+
17
+ scope :age_flexigrid_where, lambda { |query|
18
+ where(:age => query)
19
+ }
16
20
  end
17
21
 
18
22
  class CreateAllTables < ActiveRecord::Migration
@@ -49,6 +49,10 @@ describe ActsAsFlexigrid do
49
49
  it "should return quated sql" do
50
50
  User.flexigrid_where("name", "001").to_sql.should == "SELECT \"users\".* FROM \"users\" WHERE (\"users\".\"name\" LIKE '%001%')"
51
51
  end
52
+
53
+ describe "defined type specific where" do
54
+ User.flexigrid_where('age', "10").to_sql.should == "SELECT \"users\".* FROM \"users\" WHERE \"users\".\"age\" = '10'"
55
+ end
52
56
  end
53
57
 
54
58
  describe ".flexigrid_order" do
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: acts_as_flexigrid
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:
@@ -9,12 +9,12 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2011-09-03 00:00:00.000000000 +09:00
12
+ date: 2011-09-29 00:00:00.000000000 +09:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: activesupport
17
- requirement: &2154174840 !ruby/object:Gem::Requirement
17
+ requirement: &2161613700 !ruby/object:Gem::Requirement
18
18
  none: false
19
19
  requirements:
20
20
  - - ! '>='
@@ -22,10 +22,10 @@ dependencies:
22
22
  version: 3.0.0
23
23
  type: :runtime
24
24
  prerelease: false
25
- version_requirements: *2154174840
25
+ version_requirements: *2161613700
26
26
  - !ruby/object:Gem::Dependency
27
27
  name: activerecord
28
- requirement: &2154174280 !ruby/object:Gem::Requirement
28
+ requirement: &2161613060 !ruby/object:Gem::Requirement
29
29
  none: false
30
30
  requirements:
31
31
  - - ! '>='
@@ -33,10 +33,10 @@ dependencies:
33
33
  version: 3.0.0
34
34
  type: :runtime
35
35
  prerelease: false
36
- version_requirements: *2154174280
36
+ version_requirements: *2161613060
37
37
  - !ruby/object:Gem::Dependency
38
38
  name: kaminari
39
- requirement: &2154173720 !ruby/object:Gem::Requirement
39
+ requirement: &2161612400 !ruby/object:Gem::Requirement
40
40
  none: false
41
41
  requirements:
42
42
  - - ! '>='
@@ -44,10 +44,10 @@ dependencies:
44
44
  version: '0'
45
45
  type: :runtime
46
46
  prerelease: false
47
- version_requirements: *2154173720
47
+ version_requirements: *2161612400
48
48
  - !ruby/object:Gem::Dependency
49
49
  name: rake
50
- requirement: &2154173020 !ruby/object:Gem::Requirement
50
+ requirement: &2161611840 !ruby/object:Gem::Requirement
51
51
  none: false
52
52
  requirements:
53
53
  - - ! '>='
@@ -55,10 +55,10 @@ dependencies:
55
55
  version: '0'
56
56
  type: :development
57
57
  prerelease: false
58
- version_requirements: *2154173020
58
+ version_requirements: *2161611840
59
59
  - !ruby/object:Gem::Dependency
60
60
  name: sqlite3
61
- requirement: &2154172140 !ruby/object:Gem::Requirement
61
+ requirement: &2161611360 !ruby/object:Gem::Requirement
62
62
  none: false
63
63
  requirements:
64
64
  - - ! '>='
@@ -66,10 +66,10 @@ dependencies:
66
66
  version: '0'
67
67
  type: :development
68
68
  prerelease: false
69
- version_requirements: *2154172140
69
+ version_requirements: *2161611360
70
70
  - !ruby/object:Gem::Dependency
71
71
  name: bundler
72
- requirement: &2154167320 !ruby/object:Gem::Requirement
72
+ requirement: &2161610880 !ruby/object:Gem::Requirement
73
73
  none: false
74
74
  requirements:
75
75
  - - ! '>='
@@ -77,10 +77,10 @@ dependencies:
77
77
  version: 1.0.0
78
78
  type: :development
79
79
  prerelease: false
80
- version_requirements: *2154167320
80
+ version_requirements: *2161610880
81
81
  - !ruby/object:Gem::Dependency
82
82
  name: rspec
83
- requirement: &2154166720 !ruby/object:Gem::Requirement
83
+ requirement: &2161610380 !ruby/object:Gem::Requirement
84
84
  none: false
85
85
  requirements:
86
86
  - - ! '>='
@@ -88,7 +88,7 @@ dependencies:
88
88
  version: '0'
89
89
  type: :development
90
90
  prerelease: false
91
- version_requirements: *2154166720
91
+ version_requirements: *2161610380
92
92
  description: acts_as_flexigrid is ActiveRecord plugin for Flexigrid
93
93
  email:
94
94
  - matsumura.aki@gmail.com