diff options
| author | cedricnjanga | 2017-07-13 15:19:00 +0200 | 
|---|---|---|
| committer | cedricnjanga | 2017-07-13 15:19:00 +0200 | 
| commit | 5c0b381591169d969f99f87ebaaedaff6965deb7 (patch) | |
| tree | 1dbc989a4dd7c763b456d2b4a46764c052b49f6c /app | |
| parent | bc33eba0f1129a491a56bc9b616f388477489b0b (diff) | |
| download | chouette-core-5c0b381591169d969f99f87ebaaedaff6965deb7.tar.bz2 | |
#3367Update Timetable filter to include start and end date of TimeTable::Periods + Dates
Diffstat (limited to 'app')
| -rw-r--r-- | app/models/chouette/time_table.rb | 7 | 
1 files changed, 6 insertions, 1 deletions
diff --git a/app/models/chouette/time_table.rb b/app/models/chouette/time_table.rb index d907d797e..a328965a1 100644 --- a/app/models/chouette/time_table.rb +++ b/app/models/chouette/time_table.rb @@ -21,7 +21,12 @@ class Chouette::TimeTable < Chouette::TridentActiveRecord    belongs_to :created_from, class_name: 'Chouette::TimeTable'    scope :overlapping, -> (date_start, date_end) do -    joins(:periods).where('(period_start, period_end) OVERLAPS (?, ?)', date_start, date_end) +    joins +    (' +    LEFT OUTER JOIN "time_table_dates" ON "time_table_dates"."time_table_id" = "time_tables"."id" +    LEFT OUTER JOIN "time_table_periods" ON "time_table_periods"."time_table_id" = "time_tables"."id" +    ') +    .where('(period_start <= :end and period_end >= :start) OR (date BETWEEN :start AND :end)', {start: date_start, end: date_end})    end    after_save :save_shortcuts  | 
