diff options
| -rw-r--r-- | app/controllers/workbenches_controller.rb | 27 | 
1 files changed, 13 insertions, 14 deletions
diff --git a/app/controllers/workbenches_controller.rb b/app/controllers/workbenches_controller.rb index 3a2b8afb1..a3370192b 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) unless periode.nil? +    scope   = scope.in_periode(periode) if periode      @q      = scope.ransack(params[:q])      @q.organisation_name_eq_any ||= current_organisation.name unless params[:q] @@ -38,19 +38,18 @@ class WorkbenchesController < BreadcrumbController    end    def ransack_periode -    if params[:q] && params[:q]['validity_period'] -      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 +    return false unless params[:q] && params[:q]['validity_period'] +    periode = params[:q]['validity_period'] +    return false if periode['end_lteq(1i)'].empty? || periode['begin_gteq(1i)'].empty? + +    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  | 
