Module: ZoomRangeConcern

Extended by:
ActiveSupport::Concern
Defined in:
app/controllers/concerns/zoom_range_concern.rb

Instance Method Summary collapse

Instance Method Details

#setup_zoom_range(main_start_time, main_end_time) ⇒ Object



4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# File 'app/controllers/concerns/zoom_range_concern.rb', line 4

def setup_zoom_range(main_start_time, main_end_time)
  # Extract zoom parameters from params (this removes them from params)
  zoom_start = params.delete(:zoom_start_time)
  zoom_end = params.delete(:zoom_end_time)

  # Normalize zoom times to beginning/end of day or hour like we do for main time range
  if zoom_start && zoom_end
    zoom_start, zoom_end = normalize_zoom_times(zoom_start.to_i, zoom_end.to_i)
  end

  # Calculate table times - use zoom if present, otherwise fallback to main times
  table_start_time = zoom_start || main_start_time
  table_end_time = zoom_end || main_end_time

  [ zoom_start, zoom_end, table_start_time, table_end_time ]
end