wice_grid_mongoid 6.0.3 → 6.0.4
Sign up to get free protection for your applications and to get access to all the features.
- data/VERSION +1 -1
- data/lib/filter_conditions_generators.rb +18 -4
- data/lib/grid_renderer.rb +2 -0
- data/lib/helpers/wice_grid_view_helpers.rb +6 -4
- data/lib/view_columns.rb +1 -1
- data/wice_grid_mongoid.gemspec +1 -1
- metadata +3 -3
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
6.0.
|
1
|
+
6.0.4
|
@@ -93,6 +93,7 @@ module Wice
|
|
93
93
|
@@handled_type[Integer] = self
|
94
94
|
@@handled_type[Float] = self
|
95
95
|
# @@handled_type[BigDecimal] = self
|
96
|
+
VALID_NUMBER_RE = /(\d+)((G|M|K)B?)?/i
|
96
97
|
|
97
98
|
def generate_conditions(opts) #:nodoc:
|
98
99
|
unless opts.kind_of? Hash
|
@@ -100,16 +101,29 @@ module Wice
|
|
100
101
|
return false
|
101
102
|
end
|
102
103
|
|
103
|
-
if !opts[:fr] || !(opts[:fr] =~
|
104
|
+
if !opts[:fr] || !(opts[:fr] =~ VALID_NUMBER_RE) || !opts[:to] || !(opts[:to] =~ VALID_NUMBER_RE)
|
104
105
|
Wice.log "invalid parameters for the grid integer filter - either range limits are not supplied or they are not numeric"
|
105
106
|
return false
|
106
107
|
end
|
107
|
-
|
108
|
-
|
109
|
-
@criteria.where(@field.name.to_sym.
|
108
|
+
from = parse_number(opts[:fr])
|
109
|
+
to = parse_number(opts[:to])
|
110
|
+
@criteria.where(@field.name.to_sym.gt => from)
|
111
|
+
@criteria.where(@field.name.to_sym.lt => to)
|
110
112
|
|
111
113
|
return true
|
112
114
|
end
|
115
|
+
|
116
|
+
private
|
117
|
+
def parse_number(num_str)
|
118
|
+
match_data = VALID_NUMBER_RE.match(num_str)
|
119
|
+
num = match_data[1].to_i
|
120
|
+
num = case match_data[3].downcase
|
121
|
+
when 'g': num * 1024*1024*1024
|
122
|
+
when 'm': num * 1024*1024
|
123
|
+
when 'k': num * 1024
|
124
|
+
end if match_data.size > 3
|
125
|
+
num
|
126
|
+
end
|
113
127
|
end
|
114
128
|
|
115
129
|
class FilterConditionsGeneratorDate < FilterConditionsGenerator #:nodoc:
|
data/lib/grid_renderer.rb
CHANGED
@@ -284,13 +284,13 @@ module Wice
|
|
284
284
|
end
|
285
285
|
|
286
286
|
if column.attribute_name && column.allow_ordering
|
287
|
-
|
288
|
-
css_class
|
289
|
-
|
287
|
+
css_class = []
|
288
|
+
css_class << 'active_filter' if grid.filtered_by?(column)
|
289
|
+
css_class << column.th_class if column.th_class
|
290
290
|
direction = 'asc'
|
291
291
|
link_style = nil
|
292
292
|
if grid.ordered_by?(column)
|
293
|
-
css_class
|
293
|
+
css_class << 'sorted'
|
294
294
|
link_style = grid.order_direction
|
295
295
|
direction = 'desc' if grid.order_direction == 'asc'
|
296
296
|
end
|
@@ -298,6 +298,8 @@ module Wice
|
|
298
298
|
col_link = link_to(column_name,
|
299
299
|
rendering.column_link(column, direction, params, options[:extra_request_parameters]),
|
300
300
|
:class => link_style)
|
301
|
+
col_link << content_tag(:p, column.subtitle) if column.subtitle
|
302
|
+
css_class = css_class.join(' ')
|
301
303
|
content << content_tag(:th, col_link, Hash.make_hash(:class, css_class))
|
302
304
|
column.css_class = css_class
|
303
305
|
else
|
data/lib/view_columns.rb
CHANGED
@@ -8,7 +8,7 @@ module Wice
|
|
8
8
|
include ActionView::Helpers::AssetTagHelper
|
9
9
|
|
10
10
|
# fields defined from the options parameter
|
11
|
-
FIELDS = [:attribute_name, :column_name, :icon, :td_html_attrs, :no_filter, :model_class, :allow_multiple_selection,
|
11
|
+
FIELDS = [:attribute_name, :column_name, :icon, :subtitle, :th_class, :td_html_attrs, :no_filter, :model_class, :allow_multiple_selection,
|
12
12
|
:in_html, :in_csv, :helper_style, :table_alias, :custom_order, :detach_with_id, :allow_ordering, :auto_reload]
|
13
13
|
|
14
14
|
attr_accessor *FIELDS
|
data/wice_grid_mongoid.gemspec
CHANGED
@@ -5,7 +5,7 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{wice_grid_mongoid}
|
8
|
-
s.version = "6.0.
|
8
|
+
s.version = "6.0.4"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Yuri Leikind", "Aleksandr Furmanov"]
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: wice_grid_mongoid
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 39
|
5
5
|
prerelease: false
|
6
6
|
segments:
|
7
7
|
- 6
|
8
8
|
- 0
|
9
|
-
-
|
10
|
-
version: 6.0.
|
9
|
+
- 4
|
10
|
+
version: 6.0.4
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Yuri Leikind
|