Instructors

{#if course.instructors.length > 0}
{#each course.instructors as instructor} {instructor.displayName} {#if instructor.rmpRating != null} {@const rating = instructor.rmpRating} {@const lowConfidence = (instructor.rmpNumRatings ?? 0) < RMP_CONFIDENCE_THRESHOLD} {rating.toFixed(1)} {#if lowConfidence} {:else} {/if} {/if}
{instructor.displayName}
{#if instructor.isPrimary}
Primary instructor
{/if} {#if instructor.rmpRating != null}
{instructor.rmpRating.toFixed(1)}/5 · {instructor.rmpNumRatings ?? 0} ratings {#if (instructor.rmpNumRatings ?? 0) < RMP_CONFIDENCE_THRESHOLD} (low) {/if}
{/if} {#if instructor.rmpLegacyId != null} View on RMP {/if} {#if instructor.email} {/if}
{/each}
{:else} Staff {/if}

Meeting Times

{#if course.meetingTimes.length > 0}
    {#each course.meetingTimes as mt}
  • {#if isMeetingTimeTBA(mt) && isTimeTBA(mt)} TBA {:else}
    {#if !isMeetingTimeTBA(mt)} {formatMeetingDaysLong(mt)} {/if} {#if !isTimeTBA(mt)} {formatTime( mt.begin_time, )}–{formatTime(mt.end_time)} {:else} Time TBA {/if}
    {/if} {#if mt.building || mt.room}
    {mt.building_description ?? mt.building}{mt.room ? ` ${mt.room}` : ""}
    {/if}
    {formatDate(mt.start_date)} – {formatDate( mt.end_date, )}
  • {/each}
{:else} TBA {/if}

Delivery

{course.instructionalMethod ?? "—"} {#if course.campus} · {course.campus} {/if}

Credits

{formatCreditHours(course)}
{#if course.attributes.length > 0}

Attributes

{#each course.attributes as attr} {attr} {/each}
{/if} {#if course.crossList}

Cross-list

{course.crossList} {#if course.crossListCount != null && course.crossListCapacity != null} {formatNumber(course.crossListCount)}/{formatNumber(course.crossListCapacity)} {/if} Group {course.crossList} {#if course.crossListCount != null && course.crossListCapacity != null} — {formatNumber(course.crossListCount)} enrolled across {formatNumber(course.crossListCapacity)} shared seats {/if}
{/if} {#if course.waitCapacity > 0}

Waitlist

{formatNumber(course.waitCount)} / {formatNumber(course.waitCapacity)}
{/if} {#if course.meetingTimes.length > 0}

Calendar

{/if}