cm-admin 0.8.3 → 0.8.4

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: 46493821058fb3837c097bc0a0aa491c8a45ba858c20e079bd2f546f94bd6ef7
4
- data.tar.gz: d711c110547d83c120f3d0750f3d6e49db925ab622baf2051686f51927c55203
3
+ metadata.gz: a8341533113fd9b7a9192af76438144a864b42449e6a2a6f6f805a36b187bae7
4
+ data.tar.gz: 4a48bf48899e59f0734f81a836eb22534f39528c5d007abd9ec5c62aba6de7bf
5
5
  SHA512:
6
- metadata.gz: ae3d4e6c410bf6197b2f932309a60c8f440a7b3f91de3d9f719a65debcda95e09ffe0b101e6ee7bd01dabda916ffeecb21cdbc2bd8b6f17ee17ceba6fe6022d6
7
- data.tar.gz: afc522a55a080d8487b761875a407c286a109c84692a177f211f7abc1436ace836440742f544a8ac029d115494b831e903f71bb13fbd814af9be2dcd652153bb
6
+ metadata.gz: b7f866ab3ecdca38fe1296549271b69d49745f001c57f3119d96af0626cd1d966da51a4f0a3d0ac31c034a3fbb4ee788072c8278d8c63697230fce034e7e6002
7
+ data.tar.gz: 42a81533540eadfc057d86d199a1cf8116e7cdb5e18a37a1a8a3c0ecb44e4d63c2e76c65061a196b3a25ef9bef5f99d9aeb1fe82a0a01d860d43fa429300d2ba
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- cm-admin (0.8.2)
4
+ cm-admin (0.8.4)
5
5
  caxlsx_rails
6
6
  cocoon (~> 1.2.15)
7
7
  csv-importer (~> 0.8.2)
@@ -146,7 +146,7 @@ GEM
146
146
  rack-proxy (>= 0.6.1)
147
147
  railties (>= 5.2)
148
148
  semantic_range (>= 2.3.0)
149
- zeitwerk (2.6.0)
149
+ zeitwerk (2.6.1)
150
150
 
151
151
  PLATFORMS
152
152
  ruby
@@ -193,6 +193,7 @@ $(document).on('click', '[data-behaviour="select-option"]', function(e) {
193
193
 
194
194
  if (filterType == 'single_select') {
195
195
  var filterValue = $(this).data('value')
196
+ var filterText = $(this).text()
196
197
  if (!this.classList.contains('selected')) {
197
198
  if (this.parentNode.querySelector('.list-item.selected') != null) {
198
199
  this.parentNode.querySelector('.list-item.selected').classList.remove('selected');
@@ -200,7 +201,7 @@ $(document).on('click', '[data-behaviour="select-option"]', function(e) {
200
201
  $(this).addClass('selected')
201
202
  }
202
203
 
203
- $(this).parents(':nth(4)').children(':first').children(':nth(1)').text(filterValue)
204
+ $(this).parents(':nth(4)').children(':first').children(':nth(1)').text(filterText)
204
205
  $(this).parents(':nth(4)').children(':first').children(':last').removeClass('hidden')
205
206
 
206
207
  // Clear the search value post selection and regenerate the dropdown elements.
@@ -216,16 +217,15 @@ $(document).on('click', '[data-behaviour="select-option"]', function(e) {
216
217
  var checkboxElement = $(this).find('.cm-checkbox')
217
218
  checkboxElement.prop('checked', !checkboxElement.prop('checked'))
218
219
  var checkedCount = $(this).parent().find('.cm-checkbox').filter(':checked').length
219
-
220
220
  if (checkboxElement.prop('checked')) {
221
221
  var chip = $('<div class="chip"></div>')
222
- var firstSpan = $('<span></span>').text($(this).data('value'))
222
+ var firstSpan = $('<span></span>').text($(this).text())
223
223
  var secondSpan = $('<span data-behaviour="selected-chip"><i class="fa fa-times"></i></span>')
224
224
  parentChip.prepend(chip.append(firstSpan).append(secondSpan))
225
225
  } else {
226
226
  var chipElement = parentChip.find('.chip')
227
227
  for(var i = 0; i < chipElement.length; i++) {
228
- if ($(chipElement[i]).text() == $(this).data('value')) {
228
+ if ($(chipElement[i]).text() == $(this).text()) {
229
229
  $(chipElement[i]).remove()
230
230
  break
231
231
  }
@@ -248,6 +248,7 @@ $(document).on('click', '.apply-area', function(e) {
248
248
  var filterType = filterInputElement.data('filter-type')
249
249
  var filterColumn = filterInputElement.data('db-column')
250
250
  var filterValue = []
251
+ var filterValueText = []
251
252
 
252
253
  var selectFilterElement = $('[data-behaviour="select-option"][data-filter-type=' + filterType + '][data-db-column=' + filterColumn + ']')
253
254
  var checkedElements = selectFilterElement.find('.cm-checkbox').filter(':checked')
@@ -255,9 +256,10 @@ $(document).on('click', '.apply-area', function(e) {
255
256
  if (checkedElements.length > 0) {
256
257
  for(var i = 0; i < checkedElements.length; i++) {
257
258
  filterValue.push($(checkedElements[i]).parent().data('value'))
259
+ filterValueText.push($(checkedElements[i]).parent().text())
258
260
  }
259
261
 
260
- truncatedFilterValue = filterValue[0]
262
+ truncatedFilterValue = filterValueText[0]
261
263
  if (filterValue.length > 1) {
262
264
  truncatedFilterValue += ' + ' + (filterValue.length - 1) + ' more'
263
265
  }
@@ -335,8 +337,6 @@ CmFilter = {
335
337
  var filter = element.val().toUpperCase();
336
338
  var searchElements = element.parents(':nth(3)').find('.list-area').children();
337
339
  searchElements.removeClass('visible').addClass('hidden')
338
- console.log("Filter is ", filter)
339
- console.log("Search elements are ", searchElements)
340
340
  for (var i = 0; i < searchElements.length; i++) {
341
341
  txtValue = $(searchElements[i]).children().text();
342
342
  if (txtValue.toUpperCase().indexOf(filter) > -1) {
@@ -4,7 +4,7 @@ module CmAdmin::FileImport
4
4
  cm_admin do
5
5
  STATUS_TAG_COLOR = { in_progress: 'yellow-tag', success: 'success'}
6
6
  actions only: [:index, :show]
7
- set_icon 'fa fa-user'
7
+ set_icon 'fa fa-file-upload'
8
8
  cm_index do
9
9
  page_title 'File Import'
10
10
  page_description 'Manage all file import progress here'
@@ -1,3 +1,3 @@
1
1
  module CmAdmin
2
- VERSION = "0.8.3"
2
+ VERSION = "0.8.4"
3
3
  end
@@ -71,7 +71,7 @@ module CmAdmin
71
71
 
72
72
  if value && filter.filter_type.to_s.eql?('multi_select')
73
73
  truncated_value = value[0]
74
- truncated_value += " + #{value.size - 1} more" if truncated_value.size > 1
74
+ truncated_value += " + #{value.size - 1} more" if value.size > 1
75
75
  end
76
76
 
77
77
  concat(content_tag(:div, class: "filter-chip #{filter.filter_type.to_s.eql?('single_select') ? 'dropdown' : ''}", data: data_hash) do
@@ -126,7 +126,12 @@ module CmAdmin
126
126
  def add_single_select_filter(filter)
127
127
  value = params.dig(:filters, :"#{filter.filter_type}", :"#{filter.db_column_name}")
128
128
  concat(content_tag(:div, class: "position-relative mr-3 #{value ? '' : 'hidden'}") do
129
- concat filter_chip(value, filter)
129
+ if value && filter.collection[0].class == Array
130
+ selected_value_text = filter.collection.map{|collection| collection[0] if collection[1].to_s.eql?(value) }.compact.join(', ')
131
+ else
132
+ selected_value_text = value
133
+ end
134
+ concat filter_chip(selected_value_text, filter)
130
135
 
131
136
  concat(content_tag(:div, class: 'dropdown-menu dropdown-popup') do
132
137
  concat(content_tag(:div, class: 'popup-base') do
@@ -136,8 +141,14 @@ module CmAdmin
136
141
  end)
137
142
  concat(content_tag(:div, class: 'list-area') do
138
143
  filter.collection.each do |val|
139
- concat(content_tag(:div, class: "pointer list-item #{(value.present? && value.eql?(val)) ? 'selected' : ''}", data: {behaviour: 'select-option', filter_type: "#{filter.filter_type}", db_column: "#{filter.db_column_name}", value: val}) do
140
- concat tag.span val.to_s
144
+ if val.class.eql?(Array)
145
+ filter_value = val[1]
146
+ filter_text = val[0]
147
+ elsif val.class.eql?(String)
148
+ filter_value = filter_text = val
149
+ end
150
+ concat(content_tag(:div, class: "pointer list-item #{(value.present? && value.eql?(filter_value.to_s)) ? 'selected' : ''}", data: {behaviour: 'select-option', filter_type: "#{filter.filter_type}", db_column: "#{filter.db_column_name}", value: filter_value}) do
151
+ concat tag.span filter_text.to_s
141
152
  end)
142
153
  end
143
154
  end)
@@ -150,16 +161,24 @@ module CmAdmin
150
161
 
151
162
  def add_multi_select_filter(filter)
152
163
  value = params.dig(:filters, :"#{filter.filter_type}", :"#{filter.db_column_name}")
153
-
164
+ if value && filter.collection[0].class == Array
165
+ value_mapped_text = []
166
+ filter.collection.each do |array|
167
+ value_mapped_text << array[0].titleize if value.include?(array[1].to_s)
168
+ end
169
+ else
170
+ value_mapped_text = value
171
+ end
172
+
154
173
  concat(content_tag(:div, class: "position-relative mr-3 #{value ? '' : 'hidden'}") do
155
- concat filter_chip(value, filter)
174
+ concat filter_chip(value_mapped_text, filter)
156
175
 
157
176
  concat(content_tag(:div, class: 'position-absolute mt-2 dropdown-popup hidden') do
158
177
  concat(content_tag(:div, class: 'popup-base') do
159
178
  concat(content_tag(:div, class: 'popup-inner') do
160
179
  concat(content_tag(:div, class: "#{value ? 'search-with-chips' : 'search-area'}") do
161
- if value
162
- value.each do |val|
180
+ if value_mapped_text
181
+ value_mapped_text.each do |val|
163
182
  concat(content_tag(:div, class: 'chip') do
164
183
  concat tag.span val
165
184
  concat(content_tag(:span, data: { behaviour: 'selected-chip' }) do
@@ -172,9 +191,15 @@ module CmAdmin
172
191
  end)
173
192
  concat(content_tag(:div, class: 'list-area') do
174
193
  filter.collection.each do |val|
175
- concat(content_tag(:div, class: "pointer list-item #{(value && value.eql?(val)) ? 'selected' : ''}", data: {behaviour: 'select-option', filter_type: "#{filter.filter_type}", db_column: "#{filter.db_column_name}", value: val}) do
176
- concat tag.input class: 'cm-checkbox', type: 'checkbox', checked: value ? value.include?(val) : false
177
- concat tag.label val.to_s.titleize, class: 'pointer'
194
+ if val.class.eql?(Array)
195
+ filter_value = val[1]
196
+ filter_text = val[0]
197
+ elsif val.class.eql?(String)
198
+ filter_value = filter_text = val
199
+ end
200
+ concat(content_tag(:div, class: "pointer list-item #{(value && (value.eql?(val) || value.include?(filter_value.to_s))) ? 'selected' : ''}", data: {behaviour: 'select-option', filter_type: "#{filter.filter_type}", db_column: "#{filter.db_column_name}", value: filter_value}) do
201
+ concat tag.input class: 'cm-checkbox', type: 'checkbox', checked: value ? value.include?(filter_value.to_s) : false
202
+ concat tag.label filter_text.to_s.titleize, class: 'pointer'
178
203
  end)
179
204
  end
180
205
  end)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cm-admin
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.3
4
+ version: 0.8.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - sajinmp