five-two-nw-olivander 0.1.2.12 → 0.1.2.13

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: 95371b71e1db9de5a935b1ecf9834a1b802a5a71c8960bd876a0c6e22ed849e5
4
- data.tar.gz: f336a7acda0c1918f4a4a7d0dfdd672e4bdf6d68464172046b49539a27b573ef
3
+ metadata.gz: 3fafc0f233f53a5a60c3be296bc128cbbb3700959f82b05cf41029ac144c6a89
4
+ data.tar.gz: d6a987479ebe1d30a5f4671a0ca6ede3912f852e1c9cb2e549053802dc42340e
5
5
  SHA512:
6
- metadata.gz: 6eaa2e44f71c887a9879f76a8516c509b27579ae6e5597fcccdca9f92947ef6ecf14b18a0386e19f6cb04732c7ad05b19b5d1f65464937e56deb7b3037f42967
7
- data.tar.gz: a5123ae21498c52619c763866f930b40465efb1387010a71d92abdb7dea67d7664725f530d4d46e4adb6b86fd9ae0342a0f996a64bfcbcbd1612c8479105707b
6
+ metadata.gz: 2aafa57f69b573299d2857fa04ebe05db1407c0c83c1657c54afbe6eda6e164caf670909e53e30362b2e952d666648126a97b463f50ecd116d9384d7c48c9993
7
+ data.tar.gz: 8b3d2b995b2afa004fc2bb2fe313a1aabf448d638ddd45d5ff24fe33bf04674b6be97afe1b67c636fd612a478e6ed75190daddd9b42271fc8e0f64e29d691831
@@ -1,7 +1,7 @@
1
1
  module Olivander
2
2
  class Datatable < Effective::Datatable
3
- def link_col(field, path, path_args)
4
- dsl_tool.col(field) do |r|
3
+ def link_col(field, path, path_args, visible: true)
4
+ dsl_tool.col(field, visible: visible) do |r|
5
5
  args = [].tap do |arr|
6
6
  if path_args.is_a? Array
7
7
  path_args.each do |arg|
@@ -15,7 +15,7 @@ module Olivander
15
15
  end
16
16
  end
17
17
 
18
- def self.auto_datatable(klazz, link_path: nil, only: [], except: [], hide: [], show: [])
18
+ def self.auto_datatable(klazz, collection: nil, link_path: nil, only: [], except: [], hide: [], show: [], order_by: [])
19
19
  Rails.logger.debug "initializing datatable for #{klazz}"
20
20
 
21
21
  attributes = klazz.new.attributes.collect{ |x| x[0] }
@@ -25,18 +25,19 @@ module Olivander
25
25
  default_hidden = %w[id created updated created_at updated_at deleted_at current_user current_action]
26
26
 
27
27
  collection do
28
- klazz.all
28
+ collection.nil? ? klazz.all : collection
29
29
  end
30
30
 
31
31
  datatable do
32
+ order(order_by[0], order_by[1]) if order_by.size == 2
32
33
  bulk_actions_col
33
34
  attributes.each do |key|
34
35
  sym = key.gsub('_id', '').to_sym
35
36
  visible = show.include?(key) || !(default_hidden.include?(key) || hide.include?(key))
36
37
  if link_path.present? && sym == :id
37
- link_col sym, link_path, :id
38
+ link_col sym, link_path, :id, visible: visible
38
39
  elsif link_path.present? && sym == :name
39
- link_col sym, link_path, %i[id name]
40
+ link_col sym, link_path, %i[id name], visible: visible
40
41
  else
41
42
  col sym, visible: visible
42
43
  end
@@ -20,6 +20,8 @@ module Olivander
20
20
  def authorized_resource_actions(route_builder, resource, for_action: :show)
21
21
  plural_name = resource.is_a?(Class) ? resource.table_name : resource.class.table_name
22
22
  routed_resource = route_builder.resources[plural_name.to_sym]
23
+ return [] if routed_resource.nil?
24
+
23
25
  actions = resource.is_a?(Class) ?
24
26
  (routed_resource.unpersisted_crud_actions | routed_resource.collection_actions.select{ |x| !x.crud_action }) :
25
27
  (resource.persisted? ? (routed_resource.persisted_crud_actions | routed_resource.member_actions.select{ |x| !x.crud_action }): [])
@@ -20,7 +20,6 @@
20
20
  .card-body
21
21
  = render_datatable_chart(@datatable, k)
22
22
 
23
- - if @datatable
24
23
  = content_for :datatable_charts
25
24
 
26
25
  .row
@@ -46,3 +45,7 @@
46
45
  %p or include Effective::CrudController in your controller
47
46
  -# .card-footer
48
47
 
48
+ - begin
49
+ = render partial: 'index_additional'
50
+ - rescue ActionView::MissingTemplate
51
+ - Rails.logger.debug "did not find additional index partial"
@@ -1,3 +1,3 @@
1
1
  module Olivander
2
- VERSION = "0.1.2.12"
2
+ VERSION = "0.1.2.13"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: five-two-nw-olivander
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2.12
4
+ version: 0.1.2.13
5
5
  platform: ruby
6
6
  authors:
7
7
  - Eric Dennis
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-07-06 00:00:00.000000000 Z
11
+ date: 2023-07-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: chartkick