jekyll-theme-open-course 1.1.0 → 2.2.0

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: 7c44228f16269009a36ed91cb93d45493edda39485bce1bcb768a07a22945fb2
4
- data.tar.gz: 74ee9d5d5fe34e59b200b6d865c764faa1c55cea6b2f940661ecc8ee7cf566f5
3
+ metadata.gz: 277429bbed449fd4841a55008adc8a23a7a101f9472fed5b405283ac3342fc35
4
+ data.tar.gz: b83d166d23153223f25188e44e350118fccfa9c9e96c3fe8359a8643b9663785
5
5
  SHA512:
6
- metadata.gz: 7aebe324212b4fc8513f218d6298c05a8ea3f0a67f8941a58af242d81aa5169803668f0749d7bd254c6ac18e3828a4e91ccd227f24bbc297c8425046b126c48a
7
- data.tar.gz: 29acc9e346bd4d78206878b98394d63b7474c12c1302f2d38da50559bc1e67d2cf02d5092e808db984df4e88863eda618285c53c8d50ac2aea2638b41463a637
6
+ metadata.gz: 03cde5dc9c13f83b602216ff0914fe6e0c853a4ad021d585fbf1478797736c23c9e823b81d1eaf18ca440bad77aa086c378c8ed0697f892570f2372a5667b500
7
+ data.tar.gz: 12f65374891260bc273c4bd1e6016507edb3260687d87b849a1c9f4ed1cff2e7b7ea108f812ce35a565cf69c39b4a5ec97fe9a3c82407a14d12f5f0322d0b3c3
@@ -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
@@ -40,7 +40,7 @@ course:
40
40
  href: "policies/"
41
41
  id: pol
42
42
  css:
43
- font-url: "https://use.typekit.net/pig5ein.css"
43
+ font-url: "https://use.typekit.net/qqk1feg.css"
44
44
 
45
45
  collections_dir: syllabus
46
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,7 +30,7 @@ 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>
@@ -66,7 +74,12 @@ layout: default
66
74
  <aside class="assigned">
67
75
  <header>
68
76
  <h3>Assigned Work</h3>
69
- <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>
70
83
  </header>
71
84
  {% if week.readings %}
72
85
  <section class="readings">
@@ -1,6 +1,6 @@
1
1
  <!DOCTYPE html>
2
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 %}
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 %}
@@ -42,13 +42,28 @@
42
42
  <ul>
43
43
  <li>
44
44
  <a href="{{ instructor.url }}">{{ instructor.honorific }} {{ instructor.name }}</a>,
45
- {{ site.course.instructor.full_title | escape }}
45
+ {{ instructor.full_title | escape }}
46
46
  </li>
47
47
  <li><a href="mailto:{{ instructor.email }}">{{ instructor.email }}</a></li>
48
48
  <li id="office-hours">
49
49
  {{ instructor.office_hours }}
50
50
  </li>
51
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="ta-office-hours">
63
+ {{ ta.office_hours }}
64
+ </li>
65
+ </ul>
66
+ {% endif %}
52
67
  </aside>
53
68
 
54
69
 
@@ -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>
@@ -8,7 +8,7 @@ layout: default
8
8
  {% for project in site.projects %}
9
9
  {% assign dd = project.due_date | date: "%s" %}
10
10
 
11
- <article class="project" id="project-{{ site.data.utility.spelled_nums[forloop.index] | downcase }}">
11
+ <article class="project {{project.level}}" id="project-{{ site.data.utility.spelled_nums[forloop.index] | downcase }}">
12
12
  {% if today < dd and current == true %}
13
13
  <header id="current">
14
14
  {% assign current = false %}
@@ -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
+ }
@@ -0,0 +1,195 @@
1
+ $text-color: #321207;
2
+ $back-color: #F6EACB;
3
+ $spot-color: #6C1F55;
4
+ $acnt-color: #B34523;
5
+ $gray-color: #73664E; /* #7F7F7F; */
6
+ $gray-alter: darken($gray-color, 10%);
7
+ $link-under: transparentize($spot-color, 0.65);
8
+ $curr-color: darken($back-color, 8%);
9
+
10
+ // Dark mode
11
+ $dk-text-color: #DEDEDE;
12
+ $dk-back-color: #111;
13
+ $dk-spot-color: #FFB700;
14
+ $dk-acnt-color: #FF764D;
15
+ $dk-gray-color: #9E9E9E;
16
+ $dk-link-under: transparentize($dk-spot-color, 0.25);
17
+ $dk-curr-color: darken($dk-gray-color, 45%);
18
+
19
+
20
+ // CSS Variables
21
+ html,
22
+ html.light {
23
+ --color-text: #{$text-color};
24
+ --color-back: #{$back-color};
25
+ --color-spot: #{$spot-color};
26
+ --color-acnt: #{$acnt-color};
27
+ --color-gray: #{$gray-color};
28
+ --color-curr: #{$curr-color};
29
+ --color-altg: #{$gray-alter};
30
+ --color-link: #{$link-under};
31
+ --color-navi: #{$gray-color};
32
+ --color-nava: #{$back-color};
33
+ }
34
+ html.dark {
35
+ --color-text: #{$dk-text-color};
36
+ --color-back: #{$dk-back-color};
37
+ --color-spot: #{$dk-spot-color};
38
+ --color-acnt: #{$dk-acnt-color};
39
+ --color-gray: #{$dk-gray-color};
40
+ --color-curr: #{$dk-curr-color};
41
+ --color-altg: #{$dk-gray-color};
42
+ --color-link: #{$dk-link-under};
43
+ --color-navi: #{$dk-gray-color};
44
+ --color-nava: #{$dk-back-color};
45
+ }
46
+ @media screen and (prefers-color-scheme: dark) {
47
+ html {
48
+ --color-text: #{$dk-text-color};
49
+ --color-back: #{$dk-back-color};
50
+ --color-spot: #{$dk-spot-color};
51
+ --color-acnt: #{$dk-acnt-color};
52
+ --color-gray: #{$dk-gray-color};
53
+ --color-curr: #{$dk-curr-color};
54
+ --color-altg: #{$dk-gray-color};
55
+ --color-link: #{$dk-link-under};
56
+ --color-navi: #{$dk-gray-color};
57
+ --color-nava: #{$dk-back-color};
58
+ }
59
+ }
60
+
61
+ html {
62
+ transition: color 0.5s, background-color 0.5s;
63
+ color: $text-color;
64
+ color: var(--color-text);
65
+ background-color: $back-color;
66
+ background-color: var(--color-back);
67
+ }
68
+ ol > li::before,
69
+ ul li::before {
70
+ color: $acnt-color;
71
+ color: var(--color-acnt);
72
+ }
73
+ a {
74
+ color: $spot-color;
75
+ color: var(--color-spot);
76
+ }
77
+ @supports (text-decoration-color: red) {
78
+ a {
79
+ color: inherit;
80
+ text-decoration-color: $spot-color;
81
+ text-decoration-color: var(--color-spot);
82
+ }
83
+ }
84
+ #header h1 a {
85
+ color: $spot-color;
86
+ color: var(--color-spot);
87
+ }
88
+ .nav a {
89
+ border: 1px solid $acnt-color;
90
+ border: 1px solid var(--color-acnt);
91
+ color: $gray-color;
92
+ color: var(--color-navi);
93
+ }
94
+ .nav a:hover,
95
+ .nav a:focus,
96
+ .nav a:active,
97
+ #calendar #nav-cal a,
98
+ #policies #nav-pol a,
99
+ #projects #nav-pro a {
100
+ background-color: $acnt-color;
101
+ background-color: var(--color-acnt);
102
+ color: $back-color;
103
+ color: var(--color-nava);
104
+ }
105
+
106
+ .recommended,
107
+ .project .description,
108
+ .project .goals,
109
+ .week .agenda,
110
+ .fine-print {
111
+ color: $gray-color;
112
+ color: var(--color-gray);
113
+ }
114
+ .current {
115
+ transition: background-color 0.5s;
116
+ background-color: $curr-color;
117
+ background-color: var(--color-curr);
118
+ }
119
+ .week.current .agenda {
120
+ color: $gray-alter;
121
+ color: var(--color-altg);
122
+ }
123
+ #btn-show-calendar,
124
+ .agenda h3 a {
125
+ color: $back-color;
126
+ color: var(--color-back);
127
+ background-color: $acnt-color;
128
+ background-color: var(--color-acnt);
129
+ }
130
+ #btn-show-calendar {
131
+ background-color: $back-color;
132
+ background-color: var(--color-back);
133
+ color: $gray-color;
134
+ color: var(--color-gray);
135
+ border: 1px solid $gray-color;
136
+ border: 1px solid var(--color-gray);
137
+ }
138
+ #btn-show-calendar:active,
139
+ #btn-show-calendar:focus,
140
+ #btn-show-calendar:hover {
141
+ background-color: $gray-color;
142
+ background-color: var(--color-gray);
143
+ color: $back-color;
144
+ color: var(--color-back);
145
+ }
146
+ .agenda h3 a {
147
+ background-color: $back-color;
148
+ background-color: var(--color-back);
149
+ border: 1px solid $acnt-color;
150
+ border: 1px solid var(--color-acnt);
151
+ color: $acnt-color;
152
+ color: var(--color-acnt);
153
+ }
154
+ .agenda h3 a:active,
155
+ .agenda h3 a:focus,
156
+ .agenda h3 a:hover {
157
+ background-color: $acnt-color;
158
+ background-color: var(--color-acnt);
159
+ color: $back-color;
160
+ color: var(--color-back);
161
+ }
162
+ .agenda h3 a::before {
163
+ color: $gray-color;
164
+ color: var(--color-gray);
165
+ }
166
+ header small {
167
+ color: $spot-color;
168
+ color: var(--color-spot);
169
+ }
170
+ .week > header small {
171
+ color: $gray-color;
172
+ color: var(--color-gray);
173
+ }
174
+ #header,
175
+ #footer,
176
+ #instructor {
177
+ color: $gray-color;
178
+ color: var(--color-gray);
179
+ }
180
+ #header .nav {
181
+ color: $text-color;
182
+ color: var(--color-text);
183
+ }
184
+ #header #theme-button {
185
+ background-color: $text-color;
186
+ background-color: var(--color-text);
187
+ border-color: $text-color;
188
+ border-color: var(--color-text);
189
+ color: $back-color;
190
+ color: var(--color-back);
191
+ }
192
+ #header #theme-button svg {
193
+ fill: $back-color;
194
+ fill: var(--color-back);
195
+ }