summaryrefslogtreecommitdiff
path: root/html/education/default.nix
blob: e1027e3ee26f07a81739153f21a6e9d5319bd01e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
{ html, data, lib, ... }:

let education = data.education;
in {
  title = "Education";
  priority = 30;
  body = with html;
    dl (for (sort.reverse.byPath [ "date" "start" ] education) (item:
      with item;
      lines [
        (dt [
          (with institution; "${studyType} @ ${href url name}, ${location}")
          br
          (with date; small (timerange start end))
        ])
        (dd [
          (lib.optionalString (lib.hasAttr "years" item) (lines
            (for (sort.reverse.byPath [ "date" "start" ] years) (year:
              with year;
              details [
                (summary [
                  (with program;
                    "${studyType} @ ${
                      href url (abbr { title = name; } acronym)
                    }")
                  br
                  (with date; small (timerange start end))
                ])
                description
                (lines (for courses (category: list:
                  details [
                    (summary "${category} courses")
                    (lib.concatStringsSep " · " (lib.naturalSort list))
                  ])))
              ]))))
          description
        ])
      ]));
}