jekyll-theme-open-course 1.0.1 → 2.1.1

Sign up to get free protection for your applications and to get access to all the features.
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
+ }