aboutsummaryrefslogtreecommitdiffstats
path: root/app/models
diff options
context:
space:
mode:
authorRobertDober2017-04-11 15:32:22 +0200
committerRobertDober2017-04-11 17:23:38 +0200
commit3228431fc7e96354df280ade84eb7c7c9f5d9c7f (patch)
tree153406e438691ca99d70e60ae20ef3d69ebc957b /app/models
parent7b9370d10a2d67b83610b8cf8b876734972c2ee9 (diff)
downloadchouette-core-3228431fc7e96354df280ade84eb7c7c9f5d9c7f.tar.bz2
Some tests -> pending, other tests fixed; Refs #2070
Diffstat (limited to 'app/models')
-rw-r--r--app/models/referential.rb10
1 files changed, 9 insertions, 1 deletions
diff --git a/app/models/referential.rb b/app/models/referential.rb
index 0913c9cd9..2c64a9a5c 100644
--- a/app/models/referential.rb
+++ b/app/models/referential.rb
@@ -232,11 +232,19 @@ class Referential < ActiveRecord::Base
def self.referential_ids_in_periode(range)
subquery = "SELECT DISTINCT(public.referential_metadata.referential_id) FROM public.referential_metadata, LATERAL unnest(periodes) period "
- subquery << "WHERE period && '#{ActiveRecord::ConnectionAdapters::PostgreSQLColumn.range_to_string(range)}'"
+ subquery << "WHERE period && '#{range_to_string(range)}'"
query = "SELECT * FROM public.referentials WHERE referentials.id IN (#{subquery})"
self.connection.select_values(query).map(&:to_i)
end
+ # Copied from Rails 4.1 activerecord/lib/active_record/connection_adapters/postgresql/cast.rb
+ # TODO: Relace with the appropriate Rais 4.2 / 5.x helper if one is found.
+ def self.range_to_string(object)
+ from = object.begin.respond_to?(:infinite?) && object.begin.infinite? ? '' : object.begin
+ to = object.end.respond_to?(:infinite?) && object.end.infinite? ? '' : object.end
+ "[#{from},#{to}#{object.exclude_end? ? ')' : ']'}"
+ end
+
def overlapped_referential_ids
return [] unless metadatas.present?