jekyll-theme-open-course 1.0.1 → 2.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ee7859ed93d15688c53305eeace80e49bdd6ce3b9228915f87e6ebdf5c97ffb7
4
- data.tar.gz: cffa0b043adf2bace48b4f1000bfd08445904f0435e0127a9364fd3db6a72172
3
+ metadata.gz: 0302d9b2eeb86fdcf21ae00059e4797d3a1c0d298b2bcae75368a494e4380a3c
4
+ data.tar.gz: 7307c7a5fe6fdf66fc11f71e7cac087426b9a49172aab41b9866ff84c62cf3ef
5
5
  SHA512:
6
- metadata.gz: 5b6c5e2d47909a8303b7877b2eca4538c33d470737561b1ee872b8bbe26a602637a5bc8acdc2a345e6e87599bfcea01ede52b250fb49410739fbc96486818a93
7
- data.tar.gz: f020b4d1c8ceac52fd6dba769f163f2e1062bc03a90d69bd43b569eeb9ac38ed06ef2aae98caacd389aa530f40988712777e3dedbaeb125a7ba40daab9b92e90
6
+ metadata.gz: 66b64c74eab9cab58bdff61bad762f0dc59e95d9ba9090e2272e1c95e2ab72445cdf8852d45aa95585a9732f7777f12a5de99ffe94f63f85599bf9143174672c
7
+ data.tar.gz: 22bccb2d57b09c398c7cc8d40318cab06cac9bdb24011cd8da4b370fddcafc0996f09ae67b01fe9a79d49e926ef3288f479c9f4360e97e5341f086131b0b48d3
@@ -4,56 +4,58 @@ GEM
4
4
  addressable (2.7.0)
5
5
  public_suffix (>= 2.0.2, < 5.0)
6
6
  colorator (1.1.0)
7
- concurrent-ruby (1.1.5)
7
+ concurrent-ruby (1.1.7)
8
8
  em-websocket (0.5.1)
9
9
  eventmachine (>= 0.12.9)
10
10
  http_parser.rb (~> 0.6.0)
11
11
  eventmachine (1.2.7)
12
- ffi (1.11.3)
12
+ ffi (1.13.1)
13
13
  forwardable-extended (2.6.0)
14
14
  http_parser.rb (0.6.0)
15
- i18n (1.8.1)
15
+ i18n (1.8.5)
16
16
  concurrent-ruby (~> 1.0)
17
- jekyll (4.0.0)
17
+ jekyll (4.1.1)
18
18
  addressable (~> 2.4)
19
19
  colorator (~> 1.0)
20
20
  em-websocket (~> 0.5)
21
- i18n (>= 0.9.5, < 2)
21
+ i18n (~> 1.0)
22
22
  jekyll-sass-converter (~> 2.0)
23
23
  jekyll-watch (~> 2.0)
24
24
  kramdown (~> 2.1)
25
25
  kramdown-parser-gfm (~> 1.0)
26
26
  liquid (~> 4.0)
27
- mercenary (~> 0.3.3)
27
+ mercenary (~> 0.4.0)
28
28
  pathutil (~> 0.9)
29
29
  rouge (~> 3.0)
30
30
  safe_yaml (~> 1.0)
31
31
  terminal-table (~> 1.8)
32
- jekyll-sass-converter (2.0.1)
32
+ jekyll-sass-converter (2.1.0)
33
33
  sassc (> 2.0.1, < 3.0)
34
34
  jekyll-watch (2.2.1)
35
35
  listen (~> 3.0)
36
- kramdown (2.1.0)
36
+ kramdown (2.3.0)
37
+ rexml
37
38
  kramdown-parser-gfm (1.1.0)
38
39
  kramdown (~> 2.0)
39
40
  liquid (4.0.3)
40
41
  listen (3.2.1)
41
42
  rb-fsevent (~> 0.10, >= 0.10.3)
42
43
  rb-inotify (~> 0.9, >= 0.9.10)
43
- mercenary (0.3.6)
44
+ mercenary (0.4.0)
44
45
  pathutil (0.16.2)
45
46
  forwardable-extended (~> 2.6)
46
- public_suffix (4.0.3)
47
- rb-fsevent (0.10.3)
47
+ public_suffix (4.0.5)
48
+ rb-fsevent (0.10.4)
48
49
  rb-inotify (0.10.1)
49
50
  ffi (~> 1.0)
50
- rouge (3.14.0)
51
+ rexml (3.2.4)
52
+ rouge (3.22.0)
51
53
  safe_yaml (1.0.5)
52
- sassc (2.2.1)
54
+ sassc (2.4.0)
53
55
  ffi (~> 1.9)
54
56
  terminal-table (1.8.0)
55
57
  unicode-display_width (~> 1.1, >= 1.1.1)
56
- unicode-display_width (1.6.0)
58
+ unicode-display_width (1.7.0)
57
59
 
58
60
  PLATFORMS
59
61
  ruby
@@ -62,4 +64,4 @@ DEPENDENCIES
62
64
  jekyll
63
65
 
64
66
  BUNDLED WITH
65
- 1.17.2
67
+ 2.1.4
@@ -39,6 +39,8 @@ course:
39
39
  - label: Policies
40
40
  href: "policies/"
41
41
  id: pol
42
+ css:
43
+ font-url: "https://use.typekit.net/qqk1feg.css"
42
44
 
43
45
  collections_dir: syllabus
44
46
 
@@ -4,13 +4,21 @@ layout: default
4
4
  {% assign util = site.data.utility %}
5
5
  {% assign projects = site.projects %}
6
6
 
7
+ {% assign week_count = site.data.calendar | size %}
8
+ {% assign final_week = week_count | minus: 1 %}
9
+
10
+ {% assign today = "today" | date: "%s" %}
11
+ {% assign last_expiry = site.data.calendar[final_week].expires | date: "%s" %}
12
+
7
13
  {% assign current = true %}
14
+ {% if today > last_expiry %}
15
+ {% assign current = false %}
16
+ {% endif %}
8
17
 
9
18
  {% for entry in site.data.calendar %}
10
19
  {% assign week_int = forloop.index | times: 1 %}
11
20
  {% capture week_num %}{% if week_int < 10 %}0{% endif %}{{ week_int }}{% endcapture %}
12
21
  {% assign week = site.weeks[forloop.index0] %}
13
- {% assign today = "today" | date: "%s" %}
14
22
  {% assign expiry = entry.expires | date: "%s" %}
15
23
 
16
24
  <!-- past dates? -->
@@ -22,10 +30,11 @@ layout: default
22
30
  <header>
23
31
  {% endif %}
24
32
  <h2>
25
- {{ week.theme | escape }}
33
+ {{ week.theme | markdownify | remove: "<p>" | remove: "</p>" | strip_newlines }}
26
34
  </h2>
27
35
  <small>Week&nbsp;{{ util.spelled_nums[week_int] }}</small>
28
36
  </header>
37
+ <div class="agendas">
29
38
  {% for meeting in week.meetings %}
30
39
  <section class="agenda">
31
40
  {% if site.course.days.size > 0 %}
@@ -43,11 +52,34 @@ layout: default
43
52
  </ol>
44
53
  </section>
45
54
  {% endfor %}
46
- {% if week.readings or week.tasks %}
55
+ </div>
56
+ {% assign be = entry.begins | date: "%s" %}
57
+ {% assign ex = entry.expires | date: "%s" %}
58
+ {% assign deliverables_li = "" %}
59
+
60
+ {%- capture deliverables_li -%}
61
+ {%- for project in projects -%}
62
+ {%- assign proj_int = forloop.index | times: 1 -%}
63
+ {%- capture proj_num -%}{%- if proj_int < 10 -%}0{%- endif -%}{{ proj_int }}{%- endcapture -%}
64
+ {%- for deliverable in project.deliverables -%}
65
+ {%- assign dl = deliverable.deadline | date: "%s" -%}
66
+ {%- if dl >= be and dl <= ex -%}
67
+ <li class="deadline">Project {{ util.spelled_nums[proj_int] }}: {{ deliverable.action | markdownify | remove: "<p>" | remove: "</p>" | strip_newlines }} (Due by {{ deliverable.deadline | date: "%A, %B %-e" }})</li>
68
+ {%- endif -%}
69
+ {%- endfor -%}
70
+ {%- endfor -%}
71
+ {%- endcapture -%}
72
+
73
+ {% if week.readings or week.tasks or deliverables_li.size > 1%}
47
74
  <aside class="assigned">
48
75
  <header>
49
76
  <h3>Assigned Work</h3>
50
- <small>Due {{ entry.expires | date: "%A, %B %-e" }}</small>
77
+ {% if entry.due_date %}
78
+ {% assign due_date = entry.due_date %}
79
+ {% else %}
80
+ {% assign due_date = entry.expires %}
81
+ {% endif %}
82
+ <small>Due {{ due_date | date: "%A, %B %-e" }}</small>
51
83
  </header>
52
84
  {% if week.readings %}
53
85
  <section class="readings">
@@ -70,23 +102,6 @@ layout: default
70
102
  </section>
71
103
  {% endif %}
72
104
 
73
- {% assign be = entry.begins | date: "%s" %}
74
- {% assign ex = entry.expires | date: "%s" %}
75
- {% assign deliverables_li = "" %}
76
-
77
- {%- capture deliverables_li -%}
78
- {%- for project in projects -%}
79
- {%- assign proj_int = forloop.index | times: 1 -%}
80
- {%- capture proj_num -%}{%- if proj_int < 10 -%}0{%- endif -%}{{ proj_int }}{%- endcapture -%}
81
- {%- for deliverable in project.deliverables -%}
82
- {%- assign dl = deliverable.deadline | date: "%s" -%}
83
- {%- if dl >= be and dl <= ex -%}
84
- <li class="deadline">Project {{ util.spelled_nums[proj_int] }}: {{ deliverable.action }} (Due by {{ deliverable.deadline | date: "%A, %B %-e" }})</li>
85
- {%- endif -%}
86
- {%- endfor -%}
87
- {%- endfor -%}
88
- {%- endcapture -%}
89
-
90
105
  {% if deliverables_li.size > 1 %}
91
106
  <!-- {{ deliverables_li.size }} -->
92
107
  <section class="deadlines">
@@ -1,6 +1,6 @@
1
1
  <!DOCTYPE html>
2
- <html lang="en" id="{{page.id}}" prefix="og: http://ogp.me/ns#">
3
- <head>{% assign course = site.course %}{% assign instructor = site.course.instructor %}
2
+ <html lang="en" id="{{page.id}}" prefix="og: http://ogp.me/ns#" class="loading">
3
+ <head>{% assign course = site.course %}{% assign instructor = site.course.instructor %}{% assign ta = site.course.ta %}
4
4
  <meta charset="utf-8" />
5
5
  <title>{{ course.number }}: {% if page.title %}{{ page.title}}{% else %}{{ course.title }}{% endif %}</title>
6
6
  <meta name="viewport" content="width=device-width,initial-scale=1.0,shrink-to-fit=no" />
@@ -17,7 +17,7 @@
17
17
  <body>
18
18
  <header id="header">
19
19
  <h1>
20
- <a rel="home" href="{{ site.url }}{{ site.baseurl }}">{{ course.title}}</a>
20
+ <a rel="home" href="{{ site.url }}{{ site.baseurl }}">{{ course.title}}</a>{% if page.title %}: {{ page.title}}{% endif %}
21
21
  </h1>
22
22
  <p class="tagline">
23
23
  {% if course.tagline %}{{ course.tagline }}{% endif %}
@@ -25,8 +25,8 @@
25
25
  {{ course.term }}.
26
26
  </p>
27
27
  <nav id="quick-nav">
28
+ <h3 id="nav-con"><a href="#content"><span class="access">Jump to</span> {{ page.title }}</a></h3>
28
29
  <ul class="nav">
29
- <li id="nav-con"><a href="#content"><span class="access">Jump to</span> {{ page.title }}</a></li>
30
30
  <li id="nav-nav"><a href="#full-nav"><span class="access">Jump to</span> Menu</a></li>
31
31
  </ul>
32
32
  </nav>
@@ -35,28 +35,41 @@
35
35
  {{ content }}
36
36
  </main>
37
37
 
38
+ <aside id="instructor">
39
+ <header>
40
+ <h3>Instructor</h3>
41
+ </header>
42
+ <ul>
43
+ <li>
44
+ <a href="{{ instructor.url }}">{{ instructor.honorific }} {{ instructor.name }}</a>,
45
+ {{ instructor.full_title | escape }}
46
+ </li>
47
+ <li><a href="mailto:{{ instructor.email }}">{{ instructor.email }}</a></li>
48
+ <li id="office-hours">
49
+ {{ instructor.office_hours }}
50
+ </li>
51
+ </ul>
52
+ {% if ta.name %}
53
+ <header>
54
+ <h3>Teaching Assistant</h3>
55
+ </header>
56
+ <ul>
57
+ <li>
58
+ {% if ta.url %}<a href="{{ ta.url }}">{% endif %}{{ ta.name }}{% if ta.url %}</a>{% endif %},
59
+ {{ ta.full_title | escape }}
60
+ </li>
61
+ <li><a href="mailto:{{ ta.email }}">{{ ta.email }}</a></li>
62
+ <li id="office-hours">
63
+ {{ ta.office_hours }}
64
+ </li>
65
+ </ul>
66
+ {% endif %}
67
+ </aside>
38
68
 
39
69
 
40
70
  <footer id="footer">
41
- <section id="instructor">
42
- <header>
43
- <h3>Instructor</h3>
44
- </header>
45
- <ul>
46
- <li>
47
- <a href="{{ instructor.url }}">{{ instructor.honorific }} {{ instructor.name }}</a>,
48
- {{ site.course.instructor.full_title | escape }}
49
- </li>
50
- <li><a href="mailto:{{ instructor.email }}">{{ instructor.email }}</a></li>
51
- <li id="office-hours">
52
- {{ instructor.office_hours }}
53
- </li>
54
- </ul>
55
- </section>
56
71
  <nav id="full-nav">
57
- <header>
58
- <h3>Navigation</h3>
59
- </header>
72
+ <h3>Navigation</h3>
60
73
  <ul class="nav">
61
74
  {% for nav in course.navigation %}
62
75
  {% assign protocol = nav.href | slice: 0, 4 %}
@@ -70,9 +83,7 @@
70
83
  </ul>
71
84
  </nav>
72
85
  <section id="colophon">
73
- <header>
74
- <h3>Colophon</h3>
75
- </header>
86
+ <h3>Colophon</h3>
76
87
  <p class="fineprint">
77
88
  Course syllabus by <a href="{{ instructor.url }}">{{ instructor.name }}</a>.
78
89
  Licensed under
@@ -0,0 +1,10 @@
1
+ ---
2
+ layout: default
3
+ ---
4
+
5
+ <article class="error">
6
+ <header>
7
+ <h2>{{ page.title }}</h2>
8
+ </header>
9
+ {{ content }}
10
+ </article>
@@ -0,0 +1,10 @@
1
+ ---
2
+ layout: default
3
+ ---
4
+
5
+ <article class="links">
6
+ <header>
7
+ <h2>{{ page.title }}</h2>
8
+ </header>
9
+ {{ content }}
10
+ </article>
@@ -19,22 +19,12 @@ layout: default
19
19
  <small>Due by {{ project.due_date | date: "%A, %B %-e, %Y"}}</small>
20
20
  </header>
21
21
 
22
- <section class="description">
22
+ <section class="description {% if project.preview %}preview{% endif %}">
23
23
  <h3>Project Description</h3>
24
24
  {{ project.content }}
25
25
  </section>
26
26
 
27
27
  {% unless project.preview %}
28
- {% if project.goals %}
29
- <section class="goals">
30
- <h3>Project Goals</h3>
31
- <ul>
32
- {% for goal in project.goals %}
33
- <li>{{ goal | markdownify | remove: "<p>" | remove: "</p>" | strip_newlines }}</li>
34
- {% endfor %}
35
- </ul>
36
- </section>
37
- {% endif %}
38
28
  {% if project.deliverables %}
39
29
  <section class="deliverables">
40
30
  <h3>Deliverables and Deadlines</h3>
@@ -66,6 +56,16 @@ layout: default
66
56
  </ol>
67
57
  </section>
68
58
  {% endif %}
59
+ {% if project.goals %}
60
+ <section class="goals">
61
+ <h3>Project Goals</h3>
62
+ <ul>
63
+ {% for goal in project.goals %}
64
+ <li>{{ goal | markdownify | remove: "<p>" | remove: "</p>" | strip_newlines }}</li>
65
+ {% endfor %}
66
+ </ul>
67
+ </section>
68
+ {% endif %}
69
69
  {% endunless %}
70
70
  </article>
71
71
  {% endfor %}
@@ -0,0 +1,108 @@
1
+ body {
2
+ line-height: $base-line;
3
+ }
4
+
5
+ h1,h2,h3,h4,h5,h6 {
6
+ font-weight: bold;
7
+ }
8
+ h1 {
9
+ padding-top: $base-line / 2;
10
+ }
11
+ h1 small,
12
+ h1 b {
13
+ display: block;
14
+ font-weight: normal;
15
+ }
16
+ h3,
17
+ h4 {
18
+ text-transform: uppercase;
19
+ padding-bottom: $base-line / 4;
20
+ }
21
+ h4 {
22
+ text-transform: none;
23
+ }
24
+
25
+ p,li {
26
+ padding-bottom: $base-line;
27
+ -webkit-hyphens: auto;
28
+ hyphens: auto;
29
+ }
30
+
31
+ li {
32
+ padding-bottom: $base-line / 2;
33
+ }
34
+ ol, ul {
35
+ padding-bottom: $base-line / 2;
36
+ }
37
+
38
+ ol ol,
39
+ ol ul,
40
+ ul ol,
41
+ ul ul {
42
+ padding-top: $base-line / 2;
43
+ padding-bottom: 0;
44
+ padding-left: $base-line;
45
+ }
46
+
47
+ ol ul > li,
48
+ ul ul > li,
49
+ .with::before {
50
+ margin-left: -($base-line * 1.25);
51
+ }
52
+ ul {
53
+ list-style-type: square;
54
+ }
55
+ ol {
56
+ list-style-type: decimal;
57
+ }
58
+ ul, .with::before {
59
+ list-style-type: none;
60
+ }
61
+ ul li, .with::before {
62
+ position: relative;
63
+ padding-left: $base-line;
64
+ margin-left: -($base-line);
65
+ }
66
+ ul li::before {
67
+ content: "■";
68
+ position: absolute;
69
+ left: $base-line * 0.3;
70
+ top: -($base-line * 0.065);
71
+ }
72
+
73
+ ol, .with::before {
74
+ list-style-type: none;
75
+ counter-reset: enumerated;
76
+ }
77
+ ol > li, .with::before {
78
+ position: relative;
79
+ padding-left: $base-line;
80
+ margin-left: -($base-line);
81
+ counter-increment: enumerated;
82
+ }
83
+ ol > li::before {
84
+ font-weight: bold;
85
+ content: counter(enumerated) "";
86
+ position: absolute;
87
+ left: -($base-line * 0.0375);
88
+ text-align: right;
89
+ width: 1em;
90
+ }
91
+
92
+ b, strong {
93
+ font-weight: bold;
94
+ }
95
+
96
+ cite, em, i {
97
+ font-style: italic;
98
+ }
99
+ code {
100
+ font-family: Menlo, Monaco, "Droid Sans Mono", Courier, "Courier New", monospace;
101
+ font-size: 0.85em;
102
+ hyphens: none;
103
+ }
104
+
105
+ .access {
106
+ position: absolute;
107
+ left: -10000px;
108
+ }