aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRobert2017-04-21 11:00:02 +0200
committerRobert2017-04-21 11:00:02 +0200
commitdc4e32c712606787c119587c7b7127841a79ab85 (patch)
tree30078e96ede35dc35b11e0f97967ec0498ba2bf4
parent65529adbba874600660dd7003459d38ef7e03904 (diff)
downloadchouette-core-with_custom_daterange_attr.tar.bz2
pushed postrges range semantics -> Ruby range semantics transformation - [) -> [] - into the modelwith_custom_daterange_attr
-rw-r--r--app/models/referential_metadata.rb1
-rw-r--r--config/initializers/postgresql_adapter_patch.rb24
2 files changed, 1 insertions, 24 deletions
diff --git a/app/models/referential_metadata.rb b/app/models/referential_metadata.rb
index d79c0d839..3ec8398e0 100644
--- a/app/models/referential_metadata.rb
+++ b/app/models/referential_metadata.rb
@@ -12,6 +12,7 @@ class ReferentialMetadata < ActiveRecord::Base
scope :include_lines, -> (line_ids) { where('line_ids && ARRAY[?]::bigint[]', line_ids) }
scope :include_dateranges, -> (dateranges) { where('periodes && ARRAY[?]', dateranges) }
+# Transform Wed, 22 Feb 2017...Fri, 24 Feb 2017 into Wed, 22 Feb 2017..Thu, 23 Feb 2017
def periodes
attributes["periodes"].tap do | periods |
return periods unless periods
diff --git a/config/initializers/postgresql_adapter_patch.rb b/config/initializers/postgresql_adapter_patch.rb
deleted file mode 100644
index 46066fbbf..000000000
--- a/config/initializers/postgresql_adapter_patch.rb
+++ /dev/null
@@ -1,24 +0,0 @@
-# Transform Wed, 22 Feb 2017...Fri, 24 Feb 201 into Wed, 22 Feb 2017..Thu, 23 Feb 201
-module ActiveRecord::ConnectionAdapters::PostgreSQL::OID
- class DateRange < Range
- def cast_value(value)
- result = super value
-
- if result.respond_to?(:exclude_end?) && result.exclude_end?
- ::Range.new(result.begin, result.end - 1, false)
- else
- result
- end
- end
- end
-end
-
-ActiveRecord::ConnectionAdapters::PostgreSQLAdapter.class_eval do
- def initialize_type_map_with_daterange mapping
- initialize_type_map_without_daterange mapping
- # mapping.register_type 3912, ActiveRecord::ConnectionAdapters::PostgreSQL::OID::DateRange.new(mapping.lookup('date'), :daterange)
- mapping.register_type 'daterange', ActiveRecord::ConnectionAdapters::PostgreSQL::OID::DateRange.new(mapping.lookup('date'), :daterange)
- end
-
- alias_method_chain :initialize_type_map, :daterange
-end