diff options
| author | jpl | 2017-03-20 12:11:41 +0100 |
|---|---|---|
| committer | jpl | 2017-03-20 12:11:49 +0100 |
| commit | fa522151f9506de1adad4cc023b5477a7550a263 (patch) | |
| tree | f07aaffea44f275d228b322fd86534f6461a8b91 | |
| parent | 8e2f43db381bf174edb4aa8387857489359913e4 (diff) | |
| download | chouette-core-fa522151f9506de1adad4cc023b5477a7550a263.tar.bz2 | |
Refs #2877: adding blank value to validity_period in form workbenches#show
| -rw-r--r-- | app/controllers/workbenches_controller.rb | 22 | ||||
| -rw-r--r-- | app/views/workbenches/_filters.html.slim | 4 |
2 files changed, 14 insertions, 12 deletions
diff --git a/app/controllers/workbenches_controller.rb b/app/controllers/workbenches_controller.rb index 56c97a445..3a2b8afb1 100644 --- a/app/controllers/workbenches_controller.rb +++ b/app/controllers/workbenches_controller.rb @@ -6,7 +6,7 @@ class WorkbenchesController < BreadcrumbController scope = Workbench.find(params[:id]) scope = params[:q] ? scope.all_referentials : scope.referentials.ready periode = ransack_periode - scope = scope.in_periode(periode) if periode + scope = scope.in_periode(periode) unless periode.nil? @q = scope.ransack(params[:q]) @q.organisation_name_eq_any ||= current_organisation.name unless params[:q] @@ -39,15 +39,17 @@ class WorkbenchesController < BreadcrumbController def ransack_periode if params[:q] && params[:q]['validity_period'] - periode = params[:q]['validity_period'] - start_range = Date.civil(periode["begin_gteq(1i)"].to_i, periode["begin_gteq(2i)"].to_i, periode["begin_gteq(3i)"].to_i) - end_range = Date.civil(periode["end_lteq(1i)"].to_i, periode["end_lteq(2i)"].to_i, periode["end_lteq(3i)"].to_i) - - if start_range > end_range - flash.now[:error] = t('referentials.errors.validity_period') - false - else - start_range..end_range + unless params[:q]['validity_period']['begin_gteq(3i)'].empty? or params[:q]['validity_period']['end_gteq(3i)'].empty? + periode = params[:q]['validity_period'] + start_range = Date.civil(periode["begin_gteq(1i)"].to_i, periode["begin_gteq(2i)"].to_i, periode["begin_gteq(3i)"].to_i) + end_range = Date.civil(periode["end_lteq(1i)"].to_i, periode["end_lteq(2i)"].to_i, periode["end_lteq(3i)"].to_i) + + if start_range > end_range + flash.now[:error] = t('referentials.errors.validity_period') + false + else + start_range..end_range + end end end end diff --git a/app/views/workbenches/_filters.html.slim b/app/views/workbenches/_filters.html.slim index f3e7c7148..9584a566d 100644 --- a/app/views/workbenches/_filters.html.slim +++ b/app/views/workbenches/_filters.html.slim @@ -19,8 +19,8 @@ = f.label @wbench_refs.human_attribute_name(:validity_period), required: false, class: 'control-label' .filter_menu = f.simple_fields_for :validity_period do |p| - = p.input :begin_gteq, as: :date, label: t('simple_form.from'), wrapper_html: { class: 'date filter_menu-item' } - = p.input :end_lteq, as: :date, label: t('simple_form.to'), wrapper_html: { class: 'date filter_menu-item' } + = p.input :begin_gteq, as: :date, label: t('simple_form.from'), wrapper_html: { class: 'date filter_menu-item' }, include_blank: true + = p.input :end_lteq, as: :date, label: t('simple_form.to'), wrapper_html: { class: 'date filter_menu-item' }, include_blank: true .actions = link_to 'Effacer', @workbench, class: 'btn btn-link' |
