aboutsummaryrefslogtreecommitdiffstats
path: root/app/controllers/workbenches_controller.rb
diff options
context:
space:
mode:
Diffstat (limited to 'app/controllers/workbenches_controller.rb')
-rw-r--r--app/controllers/workbenches_controller.rb32
1 files changed, 4 insertions, 28 deletions
diff --git a/app/controllers/workbenches_controller.rb b/app/controllers/workbenches_controller.rb
index d597ba371..68b6e176c 100644
--- a/app/controllers/workbenches_controller.rb
+++ b/app/controllers/workbenches_controller.rb
@@ -1,5 +1,8 @@
class WorkbenchesController < BreadcrumbController
before_action :query_params, only: [:show]
+ include RansackDateFilter
+ set_date_param "validity_period", Date
+ before_action :set_date_time_params, only: [:show]
defaults resource_class: Workbench
respond_to :html, only: [:show, :index]
@@ -11,7 +14,7 @@ class WorkbenchesController < BreadcrumbController
def show
scope = resource.all_referentials
scope = ransack_associated_lines(scope)
- scope = ransack_period(scope)
+ scope = ransack_period_range(scope: scope, error_message: t('referentials.errors.validity_period'), query: :in_periode)
scope = ransack_status(scope)
@q_for_form = scope.ransack(params[:q])
@@ -69,33 +72,6 @@ class WorkbenchesController < BreadcrumbController
end
# Fake ransack filter
- def ransack_period scope
- period = params[:q]['validity_period']
- return scope unless period
-
- begin
- if period['begin_gteq'].kind_of?(Array)
- begin_range = Date.new(*period['begin_gteq'].map(&:to_i))
- end_range = Date.new(*period['end_lteq'].map(&:to_i))
- else
- begin_range = Date.new(period["begin_gteq(1i)"].to_i, period["begin_gteq(2i)"].to_i, period["begin_gteq(3i)"].to_i)
- end_range = Date.new(period["end_lteq(1i)"].to_i, period["end_lteq(2i)"].to_i, period["end_lteq(3i)"].to_i)
- end
- rescue Exception => e
- return scope
- end
-
- if begin_range > end_range
- flash.now[:error] = t('referentials.errors.validity_period')
- else
- scope = scope.in_periode(begin_range..end_range)
- @begin_range = begin_range
- @end_range = end_range
- end
- scope
- end
-
- # Fake ransack filter
def ransack_status scope
archived = !params[:q]['archived_at_not_null'].to_i.zero?
unarchived = !params[:q]['archived_at_null'].to_i.zero?