Attendance Tracker

<% @courses.each do |course| %>

<%= course.title %>

<% course.lectures.order(:start_time).group_by { |lecture| lecture.week_number }.each do |(week_number, lectures)| %> <% lectures.reject(&:cancelled).each do |lecture| %> <% if lecture.cancelled %> <% elsif lecture.start_time.future? %> <% else %> <% end %> <% end %> <% end %>
Lecture Date Status Action Recording
Week <%= week_number %>
<%= lecture.title %> <%= lecture.start_time.to_fs(:dmy) %>
Cancelled
<%= button_to "Prepare", lecture_start_preparation_path(id: lecture.id), class: 'action-button' %>
<% if lecture.attendance.nil? %> <% elsif lecture.attendance.kind == 'concurrent' %> <% elsif lecture.attendance.kind == 'catchup' %> <% else %> <% lecture.attendance.kind %> <% end %> <% if lecture.attendance.present? %> <% end %>
<% if lecture.attendance.nil? %> <%= button_to "Start", lectures_start_path(id: lecture.id), class: 'action-button' %> <% else %>
<%= button_to "Review", lecture_start_review_path(id: lecture.id), class: 'action-button' %>
<% end %>
<% if lecture.recording %> <%= link_to "Open recording", lecture.recording&.recording_url %> <% end %>
<% end %>