-
-
Lecture
-
Status
-
Action
-
Recording
-
-
- <% @course.lectures.sort_by(&:start_time).group_by(&:week_number).each do |(week_number, lectures)| %>
-
- Week <%= week_number %>
-
-
- <% lectures.each do |lecture| %>
- <% status_classes = class_names({
- 'lecture-future': lecture.start_time.future?,
- 'bg-green-100': lecture.attended?,
- }) %>
-
-
-
- <%= lecture.title %>
-
-
-
- <%= render partial: 'lecture_status_icons', locals: { lecture: } %>
-
-
-
- <% joinable_time = lecture.start_time - 5.minutes %>
-
- <% if joinable_time.future? %>
- <%= button_to "Prepare",
- lecture_start_preparation_path(id: lecture.id),
- class: 'action-button'
- %>
- <% elsif joinable_time.past? && !lecture.attended? %>
- <% start_label = if lecture.is_live? then
- "Join"
- else
- "Start"
- end %>
- <%= button_to start_label,
- 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 %>
- <% end %>
-
+ <%= render partial: 'course_table', locals: { course: @course } %>