table_on_steroids 0.1.1.8 → 0.1.1.9

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: e597331d8b98c9be9e068e59619f0227be2a6468d6dff1c3220d418d34951574
4
- data.tar.gz: 8bec801c4b6a262b544bdaa8391d9ca74465af8bd11b58f2246b3d2662147f18
3
+ metadata.gz: 9b1fb802d1876180b3f5a22b45d5a35a678fa8fe5df4612210c276c5e807571d
4
+ data.tar.gz: c73886d4d74ed19ebb83971cf0fbd910a32da119bbb690f5fa3d277631cd4da2
5
5
  SHA512:
6
- metadata.gz: 361a777ad599f401c5f41cc26583c1209d2f0341fd0181094f731398b0059ea047e9a1ad6f15bcdc5e1283cc15e5599fdcc18d4243f3ecadfd7e44cdb52795b9
7
- data.tar.gz: 5530d6af19d153462dc298d82713b07b1de4b256726f5a9c23fe88eeb1fee7d2bf8c1ad620ddd97f704840d2159581d27f3f3ab141552177347eb23cec714b69
6
+ metadata.gz: 32169f8a456a71de06ecf429a583f4fc45e284e01c2a3e40e6a3f2b11843d42d5ed745afcb41815661690aa13b69c4c87e1f432972453b8c97407dea840c0ebe
7
+ data.tar.gz: f80bdd14947442f5576118ec26cce782f94a7e1eb08c0ae11c892795450411219f75431d903a76a74e9312f46a8cbfa2dfa622ee9ae8bc73a64985878d2227f6
data/.gitignore CHANGED
@@ -9,3 +9,5 @@
9
9
 
10
10
  # rspec failure tracking
11
11
  .rspec_status
12
+
13
+ .DS_Store
@@ -60,11 +60,18 @@ module TableOnSteroids
60
60
  end
61
61
  end
62
62
 
63
- # order
64
- if params[:knowledge] && params[:knowledge] && params[:knowledge][:order].present? && (object_order = columns_on_steroid[params[:knowledge][:order]]).present?
65
- if object_order[t] && object_order[t][:order_lambda]
66
- objects = objects.reorder(nil) if objects.is_a?(ActiveRecord::Base) || objects.is_a?(ActiveRecord::Relation)
67
- objects = object_order[t][:order_lambda].call(objects)
63
+ #order
64
+ if params&.dig(:knowledge,:order) && (object_order = columns_on_steroid[params[:knowledge][:order]]).present?
65
+ if(object_order[t] && object_order[t][:order_lambda])
66
+ direction = (params&.dig(:knowledge,:ascending).to_s == 'true') ? 'asc' : 'desc'
67
+ objects = objects.reorder(nil) if(objects.is_a?(ActiveRecord::Base) || objects.is_a?(ActiveRecord::Relation))
68
+ objects = object_order[t][:order_lambda].call(objects, direction)
69
+ end
70
+ elsif object_order = columns_on_steroid[table_on_steroids&.dig(:default_order_column)]
71
+ if(object_order[t] && object_order[t][:order_lambda])
72
+ direction = object_order[t][:default_order_direction] || 'asc'
73
+ objects = objects.reorder(nil) if(objects.is_a?(ActiveRecord::Base) || objects.is_a?(ActiveRecord::Relation))
74
+ objects = object_order[t][:order_lambda].call(objects, direction)
68
75
  end
69
76
  elsif (object_order = columns_on_steroid.select { |_c, v| v[t] && v[t][:default_order] }.first&.last).present?
70
77
  if object_order[t] && object_order[t][:order_lambda]
@@ -19,7 +19,8 @@
19
19
 
20
20
  <div class="table-on-steroids" id="<%= table_on_steroid_id %>">
21
21
  <%= form_tag request.path, method: "get", id: ("knowledge_base_filters" + table_on_steroid_id) do %>
22
- <% param_hash.select{ |k,v| !expected_column_keys.include?(k) && !["utf8","columns[]"].include?(k) }.each do |k,v| %>
22
+ <% param_hash.select{ |k,v| !expected_column_keys.include?(k) && !["utf8","columns[]","knowledge[order]","knowledge[ascending]"].include?(k) }.each do |k,v| %>
23
+
23
24
  <%= hidden_field_tag k, v[0] %>
24
25
  <% end %>
25
26
  <%end%>
@@ -70,16 +71,14 @@
70
71
  <table class="table table-striped table-bordered table-hover">
71
72
  <thead>
72
73
  <tr>
74
+ <%= hidden_field_tag('knowledge[order]', params&.dig(:knowledge,:order), id: "knowledge_order#{table_on_steroid_id}", form: "knowledge_base_filters#{table_on_steroid_id}") %>
75
+ <%= hidden_field_tag('knowledge[ascending]', params&.dig(:knowledge,:ascending), id: "knowledge_ascending#{table_on_steroid_id}", form: "knowledge_base_filters#{table_on_steroid_id}") %>
73
76
  <% columns.each_pair do | k , v | %>
74
77
  <th class="column column-<%= k %> <%= ' d-none ' unless selected_columns.include?(k) %> <%= v[:css_class].join(' ') if(v[:css_class]) %> <%= table_on_steroid_id %>">
78
+ <%= v[:label] %>
75
79
  <% if v[:type] == 'order' %>
76
- <label>
77
- <%= v[:label] %>
78
- <%= radio_button('knowledge', 'order', k, onchange: "$('#knowledge_base_filters#{table_on_steroid_id}').submit();", checked: params[:knowledge] && params[:knowledge][:order] == k, form: "knowledge_base_filters#{table_on_steroid_id}" ) %>
79
- v
80
- </label>
81
- <% else %>
82
- <%= v[:label] %>
80
+ <%= image_tag "up_arrow_white.svg", onclick: "$('#knowledge_order#{table_on_steroid_id}').val('" + k + "');$('#knowledge_ascending#{table_on_steroid_id}').val('true');$('#knowledge_base_filters#{table_on_steroid_id}').submit();" %>
81
+ <%= image_tag "down_arrow_white.svg", onclick: "$('#knowledge_order#{table_on_steroid_id}').val('" + k + "');$('#knowledge_ascending#{table_on_steroid_id}').val('false');$('#knowledge_base_filters#{table_on_steroid_id}').submit();" %>
83
82
  <% end %>
84
83
  </th>
85
84
  <% end %>
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module TableOnSteroids
4
- VERSION = '0.1.1.8'
4
+ VERSION = '0.1.1.9'
5
5
  end
@@ -0,0 +1,17 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <!-- Generator: Adobe Illustrator 23.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
3
+ <svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
4
+ viewBox="0 0 13 8" style="enable-background:new 0 0 13 8;" xml:space="preserve">
5
+ <style type="text/css">
6
+ .st0{fill:none;stroke:#FFFFFF;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;}
7
+ </style>
8
+ <title>Stroke 1 Copy</title>
9
+ <desc>Created with Sketch.</desc>
10
+ <g id="Homepage">
11
+ <g id="Client-Dashboard-Vetting" transform="translate(-751.000000, -327.000000)">
12
+ <g id="Filters-Dropdown" transform="translate(583.000000, 313.000000)">
13
+ <polyline id="Stroke-1-Copy" class="st0" points="179,16 174.5,20 170,16 "/>
14
+ </g>
15
+ </g>
16
+ </g>
17
+ </svg>
@@ -0,0 +1,17 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <!-- Generator: Adobe Illustrator 23.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
3
+ <svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
4
+ viewBox="0 0 13 8" style="enable-background:new 0 0 13 8;" xml:space="preserve">
5
+ <style type="text/css">
6
+ .st0{fill:none;stroke:#FFFFFF;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;}
7
+ </style>
8
+ <title>Stroke 1 Copy</title>
9
+ <desc>Created with Sketch.</desc>
10
+ <g id="Homepage">
11
+ <g id="Client-Dashboard-Vetting" transform="translate(-751.000000, -327.000000)">
12
+ <g id="Filters-Dropdown" transform="translate(583.000000, 313.000000)">
13
+ <polyline id="Stroke-1-Copy" class="st0" points="170,20 174.5,16 179,20 "/>
14
+ </g>
15
+ </g>
16
+ </g>
17
+ </svg>
@@ -48,6 +48,12 @@
48
48
  .bootstrap-select:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn){
49
49
  width: 180px;
50
50
  }
51
+ img{
52
+ margin-left: 6px;
53
+ margin-bottom: 5px;
54
+ height: 8px;
55
+ cursor: pointer;
56
+ }
51
57
  }
52
58
  td{
53
59
  padding: 5px;
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: table_on_steroids
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1.8
4
+ version: 0.1.1.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Marieke Gueye
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: exe
11
11
  cert_chain: []
12
- date: 2019-10-25 00:00:00.000000000 Z
12
+ date: 2019-10-28 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: bootstrap-datepicker-rails
@@ -128,6 +128,8 @@ files:
128
128
  - lib/table_on_steroids/version.rb
129
129
  - table_on_steroids.gemspec
130
130
  - vendor/assets/images/csv.png
131
+ - vendor/assets/images/down_arrow_white.svg
132
+ - vendor/assets/images/up_arrow_white.svg
131
133
  - vendor/assets/javascripts/table_on_steroids.js
132
134
  - vendor/assets/stylesheets/table_on_steroids.scss
133
135
  homepage: http://www.github.com/mariekou