tramway-admin 1.12.2 → 1.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: 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