diff options
| author | Xinhui | 2017-02-08 11:27:55 +0100 |
|---|---|---|
| committer | Xinhui | 2017-02-08 11:29:22 +0100 |
| commit | 4d29cd1e8dddce08731b7962491d864fdfe0f8f6 (patch) | |
| tree | 40e4bcaf1d8a1ef01c131c07aa4200d1c401ff2e | |
| parent | ce984d59841c5697f1d4bdd31deda203488bf624 (diff) | |
| download | chouette-core-4d29cd1e8dddce08731b7962491d864fdfe0f8f6.tar.bz2 | |
Wip ransack search workbench#show
| -rw-r--r-- | app/controllers/workbenches_controller.rb | 10 | ||||
| -rw-r--r-- | app/views/workbenches/_filters.html.slim | 47 | ||||
| -rw-r--r-- | app/views/workbenches/show.html.slim | 15 |
3 files changed, 16 insertions, 56 deletions
diff --git a/app/controllers/workbenches_controller.rb b/app/controllers/workbenches_controller.rb index 772c79449..71e50d7c7 100644 --- a/app/controllers/workbenches_controller.rb +++ b/app/controllers/workbenches_controller.rb @@ -1,15 +1,11 @@ class WorkbenchesController < BreadcrumbController - defaults :resource_class => Workbench respond_to :html, :only => [:show] def show - if params[:show_all] - @q = Workbench.find(params[:id]).all_referentials.ransack(params[:q]) - else - @q = Workbench.find(params[:id]).referentials.ready.ransack(params[:q]) - # @q = Workbench.find(params[:id]).referentials.ransack(params[:q]) - end + scope = Workbench.find(params[:id]) + scope = params[:show_all] ? scope.all_referentials : scope.referentials.ready + @q = scope.ransack(params[:q]) @collection = @q.result(distinct: true) @wbench_refs = @collection.order(sort_column + ' ' + sort_direction).paginate(page: params[:page], per_page: 30) diff --git a/app/views/workbenches/_filters.html.slim b/app/views/workbenches/_filters.html.slim index 0141c24cf..38a687e25 100644 --- a/app/views/workbenches/_filters.html.slim +++ b/app/views/workbenches/_filters.html.slim @@ -1,38 +1,15 @@ -.form.form-filter - .form-group.togglable - .control-label Etat - .checkbox_list - .checkbox - label - input.check_boxes type='checkbox' - span - |1 - span.fa.fa-paw - .checkbox - label - input.check_boxes type='checkbox' - span - |2 - span.fa.fa-paw += search_form_for @q, url: workbench_path(@workbench.id), :builder => SimpleForm::FormBuilder do |f| + .form.form-group + .input-group.search_bar + = f.search_field :name_cont, class: 'form-control', placeholder: 'Indiquez un nom de referentiel' - .form-group.togglable - .control-label Organisation(s) - .checkbox_list - .checkbox - label - input.check_boxes type='checkbox' - span - |1 - span.fa.fa-paw - .checkbox - label - input.check_boxes type='checkbox' - span - |2 - span.fa.fa-paw + .form.form-group + = f.label 'Etat', required: false + = f.input :archived_at_not_null, label: 'Archive', as: :boolean - .actions - .btn.btn-link Effacer - .btn.btn-default Filtrer + .form.form-group + = f.input :organisation_name_eq_any, collection: Organisation.all.pluck(:name), as: :check_boxes, label: 'Organisation(s)', required: false -/ = "filtres par: etat, orga, nb lignes, plage de validité, date publi. btns: clear filter et filtrer" + .actions + .btn.btn-link = link_to 'Effacer', @workbench + = f.submit 'Filtrer' diff --git a/app/views/workbenches/show.html.slim b/app/views/workbenches/show.html.slim index 4c9fe3e2e..9623d2fb8 100644 --- a/app/views/workbenches/show.html.slim +++ b/app/views/workbenches/show.html.slim @@ -14,22 +14,9 @@ = link_to t('referentials.actions.new'), new_referential_path(workbench_id: @workbench), class: 'btn btn-primary' - .row.mt-xs - .col-lg-5.col-md-6.col-sm-6.col-xs-8 - = search_form_for @q, url: workbench_path(@workbench.id), html: { method: :get, class: 'form'} do |f| - .input-group.search_bar - = f.search_field :name_cont, class: 'form-control', placeholder: 'Indiquez un nom de jeu de données' - - span.input-group-btn - button.btn.btn-default type='submit' - span.fa.fa-search - - .row.mt-xs + .row .col-lg-12 = render 'filters' - - / br - / = "filtres par: etat, orga, nb lignes, plage de validité, date publi. btns: clear filter et filtrer" / PageContent .page_content |
