tramway-admin 1.12.2 → 1.13

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: adbc7ff4acdbb8ecc502f26e84ab9b9e60128a8a0f56054709b1e0e8c73c968f
4
- data.tar.gz: b8cdc4eae2eba358324b06a7b9c4055a454dbec3b3b2ffe8210c3b40b802d815
3
+ metadata.gz: 50ac818ea8d1550212f1038579b3f0b59bc8a330ab213a0360b0abc93694e701
4
+ data.tar.gz: d131f12fdfe753dddea51ffac66f675299d98226649e00567a182a9614ed4169
5
5
  SHA512:
6
- metadata.gz: f6f8f98f1b2c71012d300756a883eca75a6a0bf29e9e348633870fcb503e88e06cf8ab1077429baf78085d009c68544b66d55b38d799de262f8192152c52f249
7
- data.tar.gz: 9c86d9fba9449ef73e4e59815275046cf3ed38e80f2ed6028faba1d4b0b3c5e8546055d4e23c222f8534fb94e40bacf4e9acd7dcdc7e3ce5b18ef14551fb3dc8
6
+ metadata.gz: e3be8b642284449ed77f21348eaff40c4836381b5d6471c4524e6958276be5ccd3442fb45eb6c7a1fe49ad0d076fcd01eb46f2cfebc6118c938b6dcd57a1b1ce
7
+ data.tar.gz: b3225934d90b57f2660f09420f7223b3ecdb529ee78c7db5f55a76f42c08e76e85582d1536329174b684eb4767521b83f352651cddc8517f66265ea2d673c900
@@ -3,6 +3,7 @@ class Tramway::Admin::RecordsController < ::Tramway::Admin::ApplicationControlle
3
3
  scope = params[:scope].present? ? params[:scope] : :all
4
4
  records = model_class.active.order(id: :desc).send scope
5
5
  records = records.search params[:search] if params[:search]
6
+ records = records.ransack(params[:filter]).result if params[:filter]
6
7
  @records = decorator_class.decorate records.page params[:page]
7
8
  end
8
9
 
@@ -42,22 +43,3 @@ class Tramway::Admin::RecordsController < ::Tramway::Admin::ApplicationControlle
42
43
  redirect_to records_path
43
44
  end
44
45
  end
45
-
46
- private
47
-
48
- # FIXME replace to module
49
- def record_path(*args, **options)
50
- super args, options.merge(model: params[:model])
51
- end
52
-
53
- def edit_record_path(*args, **options)
54
- super args, options.merge(model: params[:model])
55
- end
56
-
57
- def new_record_path(*args, **options)
58
- super args, options.merge(model: params[:model])
59
- end
60
-
61
- def records_path(*args, **options)
62
- super args, options.merge(model: params[:model])
63
- end
@@ -45,11 +45,11 @@ module Tramway::Admin
45
45
  model_class.methods.include? :search
46
46
  end
47
47
 
48
- def admin_index_path_of_model(model_class, tab = nil)
48
+ def admin_index_path_of_model(model_class, tab, filter)
49
49
  if tab
50
- records_path model: model_class, scope: tab
50
+ records_path model: model_class, filter: filter, scope: tab
51
51
  else
52
- records_path model: model_class
52
+ records_path model: model_class, filter: filter
53
53
  end
54
54
  end
55
55
 
@@ -60,7 +60,7 @@ module Tramway::Admin
60
60
  else
61
61
  t("default.collections.#{tab}")
62
62
  end
63
- "#{name} / #{count}"
63
+ params[:filter].present? ? name : "#{name} / #{count}"
64
64
  end
65
65
 
66
66
  def active_tab(tab, index)
@@ -7,5 +7,6 @@
7
7
  = text_field_tag :search, params[:search], class: 'text form-control'
8
8
  = hidden_field_tag :model, params[:model]
9
9
  = hidden_field_tag :scope, params[:scope]
10
+ = hidden_field_tag :filter, params[:filter]
10
11
  .input-group-append
11
12
  = submit_tag t('helpers.actions.search'), class: 'btn btn-primary'
@@ -16,11 +16,11 @@
16
16
  %li.nav-item
17
17
  = link_to search_tab_title(@records.total_count), '#', class: 'nav-link active'
18
18
  %li.nav-item
19
- = link_to t('helpers.actions.reset'), records_path(model: params[:model]), class: 'nav-link'
19
+ = link_to t('helpers.actions.reset'), records_path(model: params[:model], filter: params[:filter]), class: 'nav-link'
20
20
  - else
21
21
  - tabs.each_with_index do |tab, index|
22
22
  %li.nav-item
23
- = link_to admin_index_path_of_model(model_class, tab), class: "#{active_tab(tab, index)} nav-link" do
23
+ = link_to admin_index_path_of_model(model_class, tab, params[:filter].permit!), class: "#{active_tab(tab, index)} nav-link" do
24
24
  != tab_title(model_class, tab, @counts[tab], state_method)
25
25
  %div{ id: (params[:search] ? :search : params[:scope]) }
26
26
  = render 'list'
@@ -1,5 +1,5 @@
1
1
  module Tramway
2
2
  module Admin
3
- VERSION = '1.12.2'
3
+ VERSION = '1.13'
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tramway-admin
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.12.2
4
+ version: '1.13'
5
5
  platform: ruby
6
6
  authors:
7
7
  - Pavel Kalashnikov
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-06-19 00:00:00.000000000 Z
11
+ date: 2019-06-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bootstrap-kaminari-views
@@ -118,6 +118,20 @@ dependencies:
118
118
  - - ">="
119
119
  - !ruby/object:Gem::Version
120
120
  version: 0.4.1
121
+ - !ruby/object:Gem::Dependency
122
+ name: ransack
123
+ requirement: !ruby/object:Gem::Requirement
124
+ requirements:
125
+ - - ">="
126
+ - !ruby/object:Gem::Version
127
+ version: '0'
128
+ type: :runtime
129
+ prerelease: false
130
+ version_requirements: !ruby/object:Gem::Requirement
131
+ requirements:
132
+ - - ">="
133
+ - !ruby/object:Gem::Version
134
+ version: '0'
121
135
  description: Engine for admin
122
136
  email:
123
137
  - kalashnikovisme@gmail.com