diff options
| author | Teddy Wing | 2017-10-03 17:39:54 +0200 |
|---|---|---|
| committer | cedricnjanga | 2017-10-03 18:05:52 +0200 |
| commit | fdd6f25fbda4fa2c1f307248cddd316db88d2771 (patch) | |
| tree | 5304678c991ff34c04e5960d8e4bf87364cbe105 /app/controllers | |
| parent | 35f35bab668e2ae23a490df799ee2cbc7cd651d4 (diff) | |
| download | chouette-core-fdd6f25fbda4fa2c1f307248cddd316db88d2771.tar.bz2 | |
RansackDateFilter: Move `end` statement and jiggle indentation
An `end` statement was missing to close off the `set_date_time_params`
method. Wondering if this is what was causing these test failures on the
build server:
1) ComplianceCheckSetsController GET index should be successful
Failure/Error: scope = self.ransack_period_range(scope: @compliance_check_sets, error_message: t('compliance_check_sets.filters.error_period_filter'), query: :where_created_at_between)
NoMethodError:
undefined method `ransack_period_range' for #<ComplianceCheckSetsController:0x0000000fa67e58>
# ./app/controllers/compliance_check_sets_controller.rb:11:in `block in index'
# ./app/controllers/compliance_check_sets_controller.rb:10:in `index'
# ./spec/controllers/compliance_check_sets_controller_spec.rb:17:in `block (3 levels) in <top (required)>'
2) Workbenches permissions on show view if present → shows the corresponding button
Failure/Error: scope = self.ransack_period_range(scope: scope, error_message: t('referentials.errors.validity_period'), query: :in_periode)
NoMethodError:
undefined method `ransack_period_range' for #<WorkbenchesController:0x00000006cb4368>
# ./app/controllers/workbenches_controller.rb:15:in `show'
# ./spec/features/workbenches_permissions_spec.rb:15:in `block (3 levels) in <top (required)>'
Worth a try.
Diffstat (limited to 'app/controllers')
| -rw-r--r-- | app/controllers/concerns/ransack_date_filter.rb | 55 |
1 files changed, 28 insertions, 27 deletions
diff --git a/app/controllers/concerns/ransack_date_filter.rb b/app/controllers/concerns/ransack_date_filter.rb index 225fd91ee..9c2755186 100644 --- a/app/controllers/concerns/ransack_date_filter.rb +++ b/app/controllers/concerns/ransack_date_filter.rb @@ -2,40 +2,41 @@ module RansackDateFilter extend ActiveSupport::Concern cattr_accessor :date_param - included do - - def set_date_time_params(param_name, klass) - start_date = [] - end_date = [] - - if params[:q] && params[:q][param_name] && !params[:q][param_name].has_value?(nil) && !params[:q][param_name].has_value?("") - [1, 2, 3].each do |key| - start_date << params[:q][param_name]["start_date(#{key}i)"].to_i - end_date << params[:q][param_name]["end_date(#{key}i)"].to_i - end - params[:q].delete([param_name]) - - if klass == DateTime - @begin_range = klass.new(*start_date,0,0,0) rescue nil - @end_range = klass.new(*end_date,23,59,59) rescue nil - else - @begin_range = klass.new(*start_date) rescue nil - @end_range = klass.new(*end_date) rescue nil + included do + + def set_date_time_params(param_name, klass) + start_date = [] + end_date = [] + + if params[:q] && params[:q][param_name] && !params[:q][param_name].has_value?(nil) && !params[:q][param_name].has_value?("") + [1, 2, 3].each do |key| + start_date << params[:q][param_name]["start_date(#{key}i)"].to_i + end_date << params[:q][param_name]["end_date(#{key}i)"].to_i end - end - # Fake ransack filter - def ransack_period_range **options - return options[:scope] unless !!@begin_range && !!@end_range + params[:q].delete([param_name]) - if @begin_range > @end_range - flash.now[:error] = options[:error_message] + if klass == DateTime + @begin_range = klass.new(*start_date,0,0,0) rescue nil + @end_range = klass.new(*end_date,23,59,59) rescue nil else - scope = options[:scope].send options[:query], @begin_range..@end_range + @begin_range = klass.new(*start_date) rescue nil + @end_range = klass.new(*end_date) rescue nil end - scope end end + # Fake ransack filter + def ransack_period_range **options + return options[:scope] unless !!@begin_range && !!@end_range + + if @begin_range > @end_range + flash.now[:error] = options[:error_message] + else + scope = options[:scope].send options[:query], @begin_range..@end_range + end + scope + end end + end
\ No newline at end of file |
