{{ define "main" }} {{ $semesterName := .Title }}

{{ $semesterName }}

{{/* Collect unique subject codes from posts in this semester */}} {{ $subjectCodes := slice }} {{ range .Pages }} {{ $raw := .Params.subjectcode }} {{ $code := "" }} {{ if reflect.IsSlice $raw }} {{ $code = index $raw 0 }} {{ else }} {{ $code = $raw }} {{ end }} {{ if and $code (not (in $subjectCodes $code)) }} {{ $subjectCodes = $subjectCodes | append $code }} {{ end }} {{ end }} {{ $subjectCodes = sort $subjectCodes }}
    {{ range $subjectCodes }} {{ $tp := site.GetPage (printf "/subjectcode/%s" (. | urlize)) }}
  1. {{ if $tp }} {{ . }} {{ else }} {{ . }} {{ end }}
  2. {{ end }}
{{/* Semester prev/next */}} {{ $allSemesters := site.Taxonomies.semester.Alphabetical }} {{ if gt (len $allSemesters) 1 }} {{ $currentIdx := 0 }} {{ range $i, $s := $allSemesters }} {{ if eq $s.Page.Title $semesterName }}{{ $currentIdx = $i }}{{ end }} {{ end }} {{ end }} {{ end }}