simple_drilldown 0.8.3 → 0.9.0

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e641a96b877ef453506755526c3fb0fb30974f4c8f62f837008f028d24d2e693
4
- data.tar.gz: 603066309062265101fc4c038673ddffdb37a8b03f1cabb26472534eaad2cf76
3
+ metadata.gz: f1987db21273c12d879bae55633fd337003d7ced07c152a09e9269f88d8928af
4
+ data.tar.gz: b6e9149cbcc597a3e407aac96936c77956c9489d87a4ec14beb225d6e993cbc4
5
5
  SHA512:
6
- metadata.gz: af0ea2c629a6269a1463891e065dc89e7d60c94fcd34554433ee8288dbb7210490e2fdcb5505d2bb42e9a7bddf83ee61baa0b9528307d6a2dc10784553530b7f
7
- data.tar.gz: 1f21dcf709ad307cfadc52f0a660e047ed5f44fd2aa2d77ff525ead5e3b0520ac9a58d9e83132b43ccdf29ed2583298e35b3b084bc3587c418b7da0f5ae96e34
6
+ metadata.gz: b7325de41bc98a3b712d8a9cdf4c52099208d35e1026cff81a4c75be4bd2e33933000bc6f0df9aceb36ce0979826cc3819fac444f0f1ec1626c964aa31aca167
7
+ data.tar.gz: a2185eeda0623ece2aca690e92419cdc7821f18321e4c4cd6a7d02b4159ba0e970739f5df1928661d244d84b9eaacd1371974dbaeb84d618718fb4b4a2b7e71d
@@ -1,25 +1,17 @@
1
1
  <% if dimension_name == 'calendar_date' %>
2
2
  <% dates = [*@search.filter[dimension_name]] %>
3
- <tr>
4
- <td align="right" valign="top">
5
- <%= form.label "filter[calendar_date]", t(:from_date) %>
6
- </td>
7
- <td>
8
- <input type="text" data-behaviour="datepicker" id="search_filter[from_<%= dimension_name %>]"
9
- name="search[filter][<%= dimension_name %>][]" class="form-control" value="<%= dates[0] %>"
10
- placeholder="yyyy-mm-dd"/>
11
- </td>
12
- </tr>
13
- <tr>
14
- <td align="right" valign="top">
15
- <%= form.label "filter[calendar_date]", t(:to_date) %>
16
- </td>
17
- <td>
18
- <input type="text" data-behaviour="datepicker" id="search_filter[to_<%= dimension_name %>]"
19
- name="search[filter][<%= dimension_name %>][]" class="form-control" value="<%= dates[1] || dates[0] %>"
20
- placeholder="yyyy-mm-dd"/>
21
- </td>
22
- </tr>
3
+ <div class="form-group">
4
+ <%= form.label "filter[calendar_date]", t(:from_date) %>
5
+ <input type="text" data-behaviour="datepicker" id="search_filter[from_<%= dimension_name %>]"
6
+ name="search[filter][<%= dimension_name %>][]" class="form-control date" value="<%= dates[0] %>"
7
+ placeholder="yyyy-mm-dd"/>
8
+ </div>
9
+ <div class="form-group">
10
+ <%= form.label "filter[calendar_date]", t(:to_date) %>
11
+ <input type="text" data-behaviour="datepicker" id="search_filter[to_<%= dimension_name %>]"
12
+ name="search[filter][<%= dimension_name %>][]" class="form-control date" value="<%= dates[1] %>"
13
+ placeholder="yyyy-mm-dd"/>
14
+ </div>
23
15
  <% else %>
24
16
  <div class="form-group">
25
17
  <%= form.label "filter[#{dimension_name}]", t(dimension_name, default: :"activerecord.models.#{dimension_name}") %>
@@ -1,15 +1,12 @@
1
1
  <!DOCTYPE html>
2
2
  <html>
3
- <head>
4
- <title>Simple drilldown</title>
5
- <%= csrf_meta_tags %>
6
- <%= csp_meta_tag %>
7
-
8
- <%= stylesheet_link_tag "simple_drilldown/application", media: "all" %>
9
- </head>
10
- <body>
11
-
12
- <%= yield %>
13
-
14
- </body>
3
+ <head>
4
+ <title>Simple drilldown</title>
5
+ <%= csrf_meta_tags %>
6
+ <%= csp_meta_tag %>
7
+ <%= stylesheet_link_tag "simple_drilldown/application", media: "all" %>
8
+ </head>
9
+ <body>
10
+ <%= yield %>
11
+ </body>
15
12
  </html>
@@ -45,8 +45,8 @@ module SimpleDrilldown
45
45
  self.c_base_condition = base_condition
46
46
  end
47
47
 
48
- def base_includes(base_includes)
49
- self.c_base_includes = base_includes
48
+ def base_includes(*base_includes)
49
+ self.c_base_includes = base_includes.flatten
50
50
  end
51
51
 
52
52
  def base_group(base_group)
@@ -69,7 +69,7 @@ module SimpleDrilldown
69
69
  self.c_select = select
70
70
  end
71
71
 
72
- def list_includes(list_includes)
72
+ def list_includes(*list_includes)
73
73
  self.c_list_includes = list_includes.flatten
74
74
  end
75
75
 
@@ -128,7 +128,7 @@ module SimpleDrilldown
128
128
  interval: interval,
129
129
  label_method: label_method,
130
130
  legal_values: legal_values,
131
- pretty_name: I18n.t(name, default: :"activerecord.models.#{name}"),
131
+ pretty_name: I18n.t(name, default: [:"activerecord.models.#{name}", name.to_s.titleize]),
132
132
  queries: queries,
133
133
  reverse: reverse,
134
134
  select_expression:
@@ -192,9 +192,6 @@ module SimpleDrilldown
192
192
 
193
193
  values = Array(values)
194
194
  if dimension_def[:interval]
195
- values *= 2 if values.size == 1
196
- raise "Need 2 values for interval filter: #{values.inspect}" if values.size != 2
197
-
198
195
  if values[0].present? && values[1].present?
199
196
  condition_strings << "#{dimension_def[:select_expression]} BETWEEN ? AND ?"
200
197
  condition_values += values
@@ -263,7 +260,9 @@ module SimpleDrilldown
263
260
  include_alias = include.to_s.pluralize
264
261
  case ass.macro
265
262
  when :belongs_to
266
- "LEFT JOIN #{include_table} #{include_alias} ON #{include_alias}.id = #{model_table}.#{include}_id"
263
+ pk_col = ass.association_primary_key
264
+ fk_col = ass.options[:foreign_key] || "#{include}_id"
265
+ "LEFT JOIN #{include_table} #{include_alias} ON #{include_alias}.#{pk_col} = #{model_table}.#{fk_col}"
267
266
  when :has_one, :has_many
268
267
  fk_col = ass.options[:foreign_key] || "#{model}_id"
269
268
  sql = +"LEFT JOIN #{include_table} #{include_alias} ON #{include_alias}.#{fk_col} = #{model_table}.id"
@@ -9,7 +9,7 @@ module SimpleDrilldown
9
9
  config.autoload_paths << File.dirname(__dir__)
10
10
 
11
11
  initializer 'simple_drilldown.assets.precompile' do |app|
12
- app.config.assets.precompile += %w[chartkick.js]
12
+ app.config.assets.precompile += %w[simple_drilldown/application.css chartkick.js]
13
13
  end
14
14
 
15
15
  ActionDispatch::Routing::Mapper.include SimpleDrilldown::Routing
@@ -1,3 +1,3 @@
1
1
  module SimpleDrilldown
2
- VERSION = '0.8.3'
2
+ VERSION = '0.9.0'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: simple_drilldown
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.3
4
+ version: 0.9.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Uwe Kubosch
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-05-08 00:00:00.000000000 Z
11
+ date: 2021-05-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: caxlsx_rails
@@ -30,14 +30,14 @@ dependencies:
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '3.3'
33
+ version: '4.0'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '3.3'
40
+ version: '4.0'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rails
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -170,7 +170,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
170
170
  - !ruby/object:Gem::Version
171
171
  version: '0'
172
172
  requirements: []
173
- rubygems_version: 3.2.3
173
+ rubygems_version: 3.2.15
174
174
  signing_key:
175
175
  specification_version: 4
176
176
  summary: Simple data warehouse and drilldown.