% intervals = number_columns * 60 / EventType::LENGTH_STEP + 1 %> <% width = 85 / intervals %> <% carousel_number = (@conf_period / number_columns.to_f).ceil %>
| <% td_start_time = start_time %> <% (1..intervals).each do |i| %> | <%= (td_start_time).strftime("%H:%M") %> | <% td_start_time += @step_minutes %> <% end %>
|---|---|
|
<%= room.name %>
|
<% events = room.events{ |e| e.start_time >= start_time and e.start_time < (start_time + number_columns.hour)} %>
<% (1..intervals).each do |i| %>
<% if span > 1 %>
<% span -= 1 %>
<% else %>
<% event = events.find{|e| e.start_time <= start_room_time and e.end_time > start_room_time} %>
<% if event %>
<% event_span = (event.end_time.to_i - start_room_time.to_i) / 60 / EventType::LENGTH_STEP %>
<% span = ((event_span + i - 1 ) > intervals ? intervals + 1 - i : event_span) %>
<%= render partial: 'schedule_item', locals: {event: event, span: span, width: width} %>
<% else %>
<% end %> <% end %> <% start_room_time += @step_minutes %> <% end %> |