tabulatr2 0.9.39 → 0.9.44

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1706d3a41110804765176f50317e42e25df7a08f8c0834591ea042b72ab2366f
4
- data.tar.gz: ec5fb3df2608a5997e81366c3cc8bbe0694703a49d38e130de6ae69ba3905304
3
+ metadata.gz: da21cb12d7978ecea6910cfd2f8b7bb11c29460188ef9f74b67ff39254bcf09d
4
+ data.tar.gz: 8180c80ce2a939080bd265de2cb917627b90bcdb981b39663e9e05f43c3c952c
5
5
  SHA512:
6
- metadata.gz: d77e36296a6aa444ae874dfe67748db7fcbe57bfc1ebd2f2db4629f7c4a65d501aa89c0ac62888dd2c621701983ee5119893107ad89e8fa0f2580387dacafc4e
7
- data.tar.gz: 9d2ecd814d67f2bb64d59492f3460ff0a959fcf5326c9de4df32e6c6e7b20026b40e676115d9069e6be6fbb42a196906ca2b13ad97466b404b82e70bb2a0018a
6
+ metadata.gz: 23097f23fac288be8147a1683f0a86a09f84945ef0c740746e5f673adf485acc906442171c4101af75212bd141c722187deb3b6603f3ea80141482334b3a25c8
7
+ data.tar.gz: 6e759668be381e68306ecdfe6b4a5216d6b3fdc7471894237e2f6536a4dbaf3fd30073d3f329cc2fac16d5ba1fbe581ad6b02a6a0057869d0384a668af5d4454
@@ -86,6 +86,10 @@ function tabulatrInitialize() {
86
86
  $(this).parents('form.tabulatr_filter_form').submit();
87
87
  });
88
88
 
89
+ $('form.tabulatr_filter_form input').on('dp.change', function(){
90
+ $(this).parents('form.tabulatr_filter_form').submit();
91
+ });
92
+
89
93
  $('form.tabulatr_filter_form').submit(function(){
90
94
  var tableId = $(this).data('table');
91
95
  var table_obj;
@@ -89,7 +89,7 @@ class Tabulatr::Data
89
89
  def execute_batch_actions batch_param, selected_ids
90
90
  if batch_param.present? && @batch_actions.present?
91
91
  batch_param = batch_param.keys.first.to_sym if batch_param.is_a?(Hash)
92
- selected_ids = @relation.map(&:id) if selected_ids.empty?
92
+ # selected_ids = @relation.map(&:id) if selected_ids.empty?
93
93
  @batch_actions.yield(Invoker.new(batch_param, selected_ids))
94
94
  end
95
95
  end
@@ -110,10 +110,10 @@ class Tabulatr::Data
110
110
  # Params
111
111
  #++
112
112
 
113
- def filter_params(params) params["#{Tabulatr::Utility.formatted_name(@base.name)}_filter"] end
114
- def search_param(params) params["#{Tabulatr::Utility.formatted_name(@base.name)}_search"] end
115
- def sort_params(params) params["#{Tabulatr::Utility.formatted_name(@base.name)}_sort"] end
116
- def batch_params(params) params["#{Tabulatr::Utility.formatted_name(@base.name)}_batch"] end
113
+ def filter_params(params) params["#{Tabulatr::Utility.formatted_name(@base.name)}_filter"] || params["filter"] end
114
+ def search_param(params) params["#{Tabulatr::Utility.formatted_name(@base.name)}_search"] || params["search"] end
115
+ def sort_params(params) params["#{Tabulatr::Utility.formatted_name(@base.name)}_sort"] || params["sort"] end
116
+ def batch_params(params) params["#{Tabulatr::Utility.formatted_name(@base.name)}_batch"] || params["batch"] end
117
117
  def check_params(params)
118
118
  tabulatr_checked = params["tabulatr_checked"]
119
119
  if tabulatr_checked.present?
@@ -41,9 +41,13 @@ module Tabulatr::Data::Sorting
41
41
  end
42
42
  sort_by(column, orientation)
43
43
  elsif @default_order.present?
44
- @relation = @relation.reorder(@default_order)
44
+ if @default_order.is_a? String
45
+ @relation = @relation.reorder(Arel.sql @default_order)
46
+ else
47
+ @relation = @relation.reorder(@default_order)
48
+ end
45
49
  else
46
- @relation = @relation.reorder("#{@table_name}.#{@base.primary_key} desc")
50
+ @relation = @relation.reorder(Arel.sql "#{@table_name}.#{@base.primary_key} desc")
47
51
  end
48
52
  end
49
53
 
@@ -52,7 +56,7 @@ module Tabulatr::Data::Sorting
52
56
  if sort_sql.respond_to? :call
53
57
  @relation = sort_sql.call(@relation, orientation, "#{@table_name}.#{@base.primary_key}", @base)
54
58
  else
55
- @relation = @relation.reorder("#{sort_sql} #{orientation}")
59
+ @relation = @relation.reorder(Arel.sql "#{sort_sql} #{orientation}, #{@table_name}.id desc")
56
60
  end
57
61
  end
58
62
 
@@ -108,6 +108,19 @@ class Tabulatr::Renderer::Column
108
108
  end
109
109
  end
110
110
 
111
+ def to_json
112
+ {
113
+ name: "#{table_name}:#{name}",
114
+ # name: name,
115
+ header: human_name,
116
+ # klassname: klassname,
117
+ # table_name: table_name,
118
+ filter: col_options.filter,
119
+ sortable: col_options.sortable,
120
+ data_html: col_options.data_html,
121
+ header_html: col_options.header_html,
122
+ }
123
+ end
111
124
 
112
125
  private
113
126
 
@@ -99,6 +99,10 @@ class Tabulatr::Renderer
99
99
  new(klass, view, toptions).build_table(columns, filters, tabulatr_data_class, &block)
100
100
  end
101
101
 
102
+ def columns_json(tabulatr_data_class_name=nil)
103
+ get_data_class(tabulatr_data_class_name).table_columns.map(&:to_json)
104
+ end
105
+
102
106
  private
103
107
 
104
108
  def get_requested_columns(available_columns, requested_columns)
@@ -22,5 +22,5 @@
22
22
  #++
23
23
 
24
24
  module Tabulatr
25
- VERSION = "0.9.39"
25
+ VERSION = "0.9.44"
26
26
  end
metadata CHANGED
@@ -1,16 +1,16 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tabulatr2
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.39
4
+ version: 0.9.44
5
5
  platform: ruby
6
6
  authors:
7
7
  - Peter Horn
8
8
  - Florian Thomas
9
9
  - René Sprotte
10
- autorequire:
10
+ autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2019-08-29 00:00:00.000000000 Z
13
+ date: 2021-05-03 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: rails
@@ -263,7 +263,7 @@ homepage: http://github.com/metaminded/tabulatr2
263
263
  licenses:
264
264
  - MIT
265
265
  metadata: {}
266
- post_install_message:
266
+ post_install_message:
267
267
  rdoc_options:
268
268
  - "--charset=UTF-8"
269
269
  require_paths:
@@ -279,8 +279,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
279
279
  - !ruby/object:Gem::Version
280
280
  version: '0'
281
281
  requirements: []
282
- rubygems_version: 3.0.3
283
- signing_key:
282
+ rubygems_version: 3.0.8
283
+ signing_key:
284
284
  specification_version: 4
285
285
  summary: A tight DSL to build tables of ActiveRecord models with sorting, pagination,
286
286
  finding/filtering, selecting and batch actions.