47 lines
2.6 KiB
Plaintext
47 lines
2.6 KiB
Plaintext
$newline never
|
|
<div uw-hide-columns="schedule-week">
|
|
<table .table .table--striped .table--hover .schedule>
|
|
<thead>
|
|
<tr .table__row .table__row--head>
|
|
<th .table__th uw-hide-column-header="time">
|
|
_{MsgScheduleTableHeadTime}
|
|
$forall day <- week
|
|
<th .table__th uw-hide-column-header=#{dayTableHeadIdent day}>
|
|
^{formatTimeW SelFormatDate day}
|
|
<tbody>
|
|
$forall slot <- allTimeSlots
|
|
$if Set.member slot timeSlotsDefaultDisplay || not (timeSlotIsEmpty slot)
|
|
<tr .table__row>
|
|
<td .table__td>
|
|
^{formatTimeSlotW slot}
|
|
$forall day <- week
|
|
<td .table__td>
|
|
<div .table__td-content>
|
|
$maybe dayEvents <- Map.lookup day events
|
|
$maybe slotEvents <- Map.lookup slot dayEvents
|
|
$forall scheduleEntry <- slotEvents
|
|
<a href=@{scheduleEntryToHref scheduleEntry} .schedule--entry-link>
|
|
<div .schedule--entry>
|
|
$case scheduleEntry
|
|
$of ScheduleCourseEvent{sceCourse=Entity _ Course{courseName},sceType,sceRoom,sceOccurrence}
|
|
#{CI.original courseName}: #{CI.original sceType} <br/>
|
|
_{MsgScheduleRoom}: #{sceRoom} <br/>
|
|
^{formatEitherOccurrenceW sceOccurrence}
|
|
$of ScheduleTutorial{stCourse=Entity _ Course{courseName},stName,stType,stRoom,stOccurrence}
|
|
#{CI.original courseName}: #{stName} (#{CI.original stType}) <br/>
|
|
_{MsgScheduleRoom}: #{stRoom} <br/>
|
|
^{formatEitherOccurrenceW stOccurrence}
|
|
$of ScheduleExamOccurrence{seoCourse=Entity _ Course{courseName},seoExamName,seoRooms,seoStart,seoEnd}
|
|
#{CI.original courseName}: #{seoExamName} <br/>
|
|
$case toList seoRooms
|
|
$of [room]
|
|
_{MsgScheduleRoom}: #{room}
|
|
$of more
|
|
_{MsgScheduleRooms}: #{intercalate ", " more}
|
|
<br>
|
|
_{MsgScheduleOccur}: #
|
|
$if Just (utctDay seoStart) == fmap utctDay seoEnd
|
|
^{formatTimeRangeW SelFormatTime seoStart seoEnd}
|
|
$else
|
|
^{formatTimeRangeW SelFormatDateTime seoStart seoEnd}
|