diff options
Diffstat (limited to 'app/models/chouette')
| -rw-r--r-- | app/models/chouette/purchase_window.rb | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/app/models/chouette/purchase_window.rb b/app/models/chouette/purchase_window.rb index e89a0ec7f..22bcc1de1 100644 --- a/app/models/chouette/purchase_window.rb +++ b/app/models/chouette/purchase_window.rb @@ -6,7 +6,9 @@ module Chouette # include ChecksumSupport include ObjectidSupport include PeriodSupport + include ChecksumSupport extend Enumerize + enumerize :color, in: %w(#9B9B9B #FFA070 #C67300 #7F551B #41CCE3 #09B09C #3655D7 #6321A0 #E796C6 #DD2DAA) has_paper_trail @@ -16,7 +18,7 @@ module Chouette validates_presence_of :name, :referential scope :contains_date, ->(date) { where('date ? <@ any (date_ranges)', date) } - + def self.ransackable_scopes(auth_object = nil) [:contains_date] end @@ -29,6 +31,12 @@ module Chouette "IBOO-#{self.referential.id}-#{self.id}" end + def checksum_attributes + attrs = ['name', 'color', 'referential_id'] + ranges_attrs = date_ranges.map{|r| [r.first, r.last]}.flatten.sort + self.slice(*attrs).values + ranges_attrs + end + # def checksum_attributes # end |
