diff options
| author | Zog | 2018-01-12 11:31:14 +0100 |
|---|---|---|
| committer | Zog | 2018-01-12 11:31:14 +0100 |
| commit | 87841876b7fa2fdc9cee77cc465fa6e8db9fc417 (patch) | |
| tree | a40cea5d71b554f1398c966dd34b6b5db447d789 | |
| parent | 216821cbc5410a1377dd57b09ee2753aee13e37c (diff) | |
| download | chouette-core-87841876b7fa2fdc9cee77cc465fa6e8db9fc417.tar.bz2 | |
Refs #5571 @0.25h; Let the user select the number of items per page5571-remove-pagination-on-referential-vjs-index
on ReferentialVehicleJourneys#index
| -rw-r--r-- | app/assets/stylesheets/components/_forms.sass | 4 | ||||
| -rw-r--r-- | app/controllers/referential_vehicle_journeys_controller.rb | 2 | ||||
| -rw-r--r-- | app/views/referential_vehicle_journeys/_filters.html.slim | 3 | ||||
| -rw-r--r-- | config/locales/simple_form.en.yml | 1 | ||||
| -rw-r--r-- | config/locales/simple_form.fr.yml | 1 |
5 files changed, 10 insertions, 1 deletions
diff --git a/app/assets/stylesheets/components/_forms.sass b/app/assets/stylesheets/components/_forms.sass index b7f720963..1f0d2f59b 100644 --- a/app/assets/stylesheets/components/_forms.sass +++ b/app/assets/stylesheets/components/_forms.sass @@ -444,6 +444,10 @@ table, .table margin: 0 min-height: 41px padding: 5px 15px + &.per-page-select + padding-top: 10px + .selected + font-weight: bold .control-label font-weight: 700 diff --git a/app/controllers/referential_vehicle_journeys_controller.rb b/app/controllers/referential_vehicle_journeys_controller.rb index f93de29cc..89b3703a0 100644 --- a/app/controllers/referential_vehicle_journeys_controller.rb +++ b/app/controllers/referential_vehicle_journeys_controller.rb @@ -13,7 +13,7 @@ class ReferentialVehicleJourneysController < ChouetteController @q ||= end_of_association_chain @q = @q.with_stop_area_ids(params[:q][:stop_area_ids]) if params[:q] && params[:q][:stop_area_ids] @q = @q.ransack(params[:q]) - @vehicle_journeys ||= @q.result.order(:published_journey_name).includes(:vehicle_journey_at_stops).paginate page: params[:page], per_page: 10 + @vehicle_journeys ||= @q.result.order(:published_journey_name).includes(:vehicle_journey_at_stops).paginate page: params[:page], per_page: params[:per_page] || 10 @all_companies = Chouette::Company.where("id IN (#{@referential.vehicle_journeys.select(:company_id).to_sql})").distinct @all_stop_areas = Chouette::StopArea.where("id IN (#{@referential.vehicle_journeys.joins(:stop_areas).select("stop_areas.id").to_sql})").distinct end diff --git a/app/views/referential_vehicle_journeys/_filters.html.slim b/app/views/referential_vehicle_journeys/_filters.html.slim index 609927615..7c5a63e25 100644 --- a/app/views/referential_vehicle_journeys/_filters.html.slim +++ b/app/views/referential_vehicle_journeys/_filters.html.slim @@ -6,6 +6,9 @@ button.btn.btn-default#search-btn type='submit' span.fa.fa-search .ffg-row + .form-group.per-page-select + = I18n.t("simple_form.per_page") + = %w(10 50 100).each_with_index.map{ |v, i| (params[:per_page] == v || params[:per_page].nil? && i == 0) ? "<span class='selected'>#{v}</span>" : link_to(v, referential_vehicle_journeys_path(@referential, q: params[:q], per_page: v)) }.join(' - ').html_safe .form-group.togglable = f.label Chouette::VehicleJourney.human_attribute_name(:company), required: false, class: 'control-label' = f.input :company_id_eq_any, collection: @all_companies.select(:id, :name).order(name: :asc), as: :check_boxes, label: false, label_method: lambda{|l| ("<span>" + l.name + "</span>").html_safe}, required: false, wrapper_html: { class: 'checkbox_list'} diff --git a/config/locales/simple_form.en.yml b/config/locales/simple_form.en.yml index ad722312e..ed4ad2e95 100644 --- a/config/locales/simple_form.en.yml +++ b/config/locales/simple_form.en.yml @@ -1,5 +1,6 @@ en: simple_form: + "per_page": "Per page: " "yes": 'Yes' "no": 'No' from: 'From' diff --git a/config/locales/simple_form.fr.yml b/config/locales/simple_form.fr.yml index cd5dd1fbe..a1868eef7 100644 --- a/config/locales/simple_form.fr.yml +++ b/config/locales/simple_form.fr.yml @@ -1,5 +1,6 @@ fr: simple_form: + "per_page": "Afficher par: " "yes": 'Oui' "no": 'Non' from: 'Du' |
