diff options
| author | RobertDober | 2017-04-11 15:32:22 +0200 |
|---|---|---|
| committer | RobertDober | 2017-04-11 17:23:38 +0200 |
| commit | 3228431fc7e96354df280ade84eb7c7c9f5d9c7f (patch) | |
| tree | 153406e438691ca99d70e60ae20ef3d69ebc957b /app/models | |
| parent | 7b9370d10a2d67b83610b8cf8b876734972c2ee9 (diff) | |
| download | chouette-core-3228431fc7e96354df280ade84eb7c7c9f5d9c7f.tar.bz2 | |
Some tests -> pending, other tests fixed; Refs #2070
Diffstat (limited to 'app/models')
| -rw-r--r-- | app/models/referential.rb | 10 |
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? |
