coursegen 0.3.1 → 0.4.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (44) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +2 -1
  3. data/Gemfile.lock +50 -46
  4. data/coursegen.gemspec +2 -3
  5. data/deleteme.rb +2 -0
  6. data/lib/coursegen/cli.rb +5 -3
  7. data/lib/coursegen/course/data/citem.rb +26 -27
  8. data/lib/coursegen/course/data/data_adaptor.rb +5 -1
  9. data/lib/coursegen/course/data/lectures.rb +84 -72
  10. data/lib/coursegen/course/data/section.rb +53 -53
  11. data/lib/coursegen/course/data/section_def.rb +6 -6
  12. data/lib/coursegen/course/data/toc.rb +1 -2
  13. data/lib/coursegen/course/helpers/bootstrap_markup.rb +3 -2
  14. data/lib/coursegen/course/helpers/content_helpers.rb +121 -75
  15. data/lib/coursegen/course/helpers/ical_feed_helpers.rb +1 -1
  16. data/lib/coursegen/course/helpers/list_of.rb +12 -12
  17. data/lib/coursegen/course/helpers/list_of_helpers.rb +2 -2
  18. data/lib/coursegen/course/helpers/navigation_helpers.rb +35 -26
  19. data/lib/coursegen/course/helpers/sidebar_helpers.rb +12 -16
  20. data/lib/coursegen/course/lib/ical_adaptor.rb +3 -5
  21. data/lib/coursegen/course/lib/search_data_generator.rb +3 -4
  22. data/lib/coursegen/course/schedule/schedule_def.rb +12 -11
  23. data/lib/coursegen/course/schedule/schedule_feed.rb +3 -1
  24. data/lib/coursegen/course/schedule/scheduler.rb +20 -13
  25. data/lib/coursegen/version.rb +1 -1
  26. data/lib/coursegen.rb +10 -9
  27. data/spec/play_spec.rb +15 -19
  28. data/spec/scheduler_spec.rb +59 -63
  29. data/spec/spec_helper.rb +1 -1
  30. data/spec/toc_spec.rb +69 -71
  31. data/tech_debt.md +0 -3
  32. data/templates/Guardfile +2 -2
  33. data/templates/body_footer.html +8 -0
  34. data/templates/body_header.html.erb +6 -0
  35. data/templates/cg_config.rb +8 -7
  36. data/templates/content/bootstrap/css/custom.css +25 -8
  37. data/templates/content/content/intro/course_toc.md.erb +1 -1
  38. data/templates/course.html +59 -0
  39. data/templates/helpful_box.html +3 -0
  40. data/templates/layouts/body_header.html.erb +1 -1
  41. data/templates/layouts/course.html +3 -2
  42. data/templates/layouts/main_navbar.html.erb +1 -1
  43. data/templates/main_navbar.html.erb +21 -0
  44. metadata +22 -16
@@ -0,0 +1,59 @@
1
+ <!DOCTYPE HTML>
2
+ <html lang="en">
3
+ <head>
4
+ <title><%= @item[:title] %> - <%= COURSE_SHORT_NAME %></title>
5
+ <meta charset="utf-8">
6
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
7
+
8
+ <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
9
+
10
+ <link rel="stylesheet" href="/bootstrap/css/custom.css">
11
+ <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
12
+ <script src="/tipuesearch/tipuesearch_set.js"></script>
13
+ <script src="/tipuesearch/tipuesearch_content.js"></script>
14
+ <script src="/tipuesearch/tipuesearchmin.js"></script>
15
+
16
+ <!-- you don't need to keep this, but it's cool for stats! -->
17
+ <meta name="generator" content="nanoc <%= Nanoc::VERSION %>">
18
+ </head>
19
+ <body>
20
+
21
+ <% @citem = Toc.instance.n2c(@item) %>
22
+ <div class="themebg navbar navbar-inverse navbar-fixed-top">
23
+ <%= render "/main_navbar.*", toc: Toc.instance, item: item, citem: @citem %>
24
+ </div>
25
+ <div class="container">
26
+ <div class="row">
27
+ <div class="col-xs-12">
28
+ <%= render "/body_header.*", toc: Toc.instance, item: item, citem: @citem %>
29
+ </div>
30
+ </div>
31
+ <div class="row">
32
+ <div class="col-xs-9">
33
+ <%= yield %>
34
+ </div>
35
+ <div class="col-xs-3">
36
+ <div class="row well right-nav helpful" style="color: rgb(158, 48, 48);padding-top: 4px;padding-bottom: 4px;padding-left: 8px;padding-right: 8px;margin-bottom: 8px;">
37
+ <%= render "/helpful_box.*" %>
38
+ </div>
39
+ <div class="row well right-nav" style="padding: 5px;">
40
+ <ul>
41
+ <% SECTION_CONFIG.each do |sbb| %>
42
+ <%= section_helper(title: sbb.title, selector: sbb.selector) unless sbb.options[:hidden] %>
43
+ <% end %>
44
+ </ul>
45
+ </div>
46
+ </div>
47
+ </div>
48
+ <%= render "/body_footer.*" %>
49
+ </div>
50
+ <!-- jQuery (necessary for Bootstrap's JavaScript plugins) -->
51
+ <!-- Include all compiled plugins (below), or include individual files as needed -->
52
+ <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>
53
+ <script src="/bootstrap/js/custom.js"></script>
54
+ <script src="/chalkmark/chalkmark.js"></script>
55
+ <script> $(document).ready(function() {
56
+ $('#tipue_search_input').tipuesearch({'highlightEveryTerm': true, 'show': 8, 'showURL': false, 'descriptiveWords': 50});
57
+ });</script>
58
+ </body>
59
+ </html>
@@ -0,0 +1,3 @@
1
+ <div id="helpful" class="text-center">Was this helpful!?
2
+ <a id="yes-link">yes</a> / <a id="no-link">no</a>
3
+ </div>
@@ -1,6 +1,6 @@
1
1
  <h3>
2
2
  <%= citem.title %>
3
- <% if citem.is_lecture? %>
3
+ <% if citem.lecture? %>
4
4
  <small class="pull-right">(<%= citem.lecture_date_s %>, <%= citem.lecture_number_s.to_s %>)</small>
5
5
  <% end %>
6
6
  </h4>
@@ -5,7 +5,8 @@
5
5
  <meta charset="utf-8">
6
6
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
7
7
 
8
- <link rel="stylesheet" href="//netdna.bootstrapcdn.com/bootstrap/3.1.0/css/bootstrap.min.css">
8
+ <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
9
+
9
10
  <link rel="stylesheet" href="/bootstrap/css/custom.css">
10
11
  <script src="https://code.jquery.com/jquery.js"></script>
11
12
  <script src="/tipuesearch/tipuesearch_set.js"></script>
@@ -48,7 +49,7 @@
48
49
  </div>
49
50
  <!-- jQuery (necessary for Bootstrap's JavaScript plugins) -->
50
51
  <!-- Include all compiled plugins (below), or include individual files as needed -->
51
- <script src="//netdna.bootstrapcdn.com/bootstrap/3.1.0/js/bootstrap.min.js"></script>
52
+ <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>
52
53
  <script src="/bootstrap/js/custom.js"></script>
53
54
  <script src="/chalkmark/chalkmark.js"></script>
54
55
  <script> $(document).ready(function() {
@@ -4,7 +4,7 @@
4
4
  <a class="navbar-brand" href="/"><%= COURSE_SHORT_NAME %> - <%= COURSE_LONG_NAME %></a>
5
5
  </div>
6
6
  <div class="col-xs-2">
7
- <div class="btn-group">
7
+ <div class="btn-group btn-group-xs">
8
8
  <%if citem.section != "root" %>
9
9
  <%= link_to_prev toc, item %> <%= link_to_next toc, item %>
10
10
  <% end %>
@@ -0,0 +1,21 @@
1
+ <div class="container themebg">
2
+ <div class="row">
3
+ <div class="col-xs-7">
4
+ <a class="navbar-title" href="/"><%= COURSE_SHORT_NAME %> - <%= COURSE_LONG_NAME %></a>
5
+ </div>
6
+ <div class="col-xs-2">
7
+ <div class="btn-group">
8
+ <%if citem.section != "root" %>
9
+ <%= link_to_prev toc, item %> <%= link_to_next toc, item %>
10
+ <% end %>
11
+ </div>
12
+ </div>
13
+ <div class="col-xs-3">
14
+ <form role="form" class="form-inline" action="/tipuesearch_logic/search/index.html">
15
+ <div class="input-group input-group-sm">
16
+ <input type="text" class="form-control" placeholder="search..." name="q" id="tipue_search_input" autocomplete="off" required>
17
+ </div>
18
+ </form>
19
+ </div>
20
+ </div>
21
+ </div>
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: coursegen
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.1
4
+ version: 0.4.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Pito Salas
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-01-10 00:00:00.000000000 Z
11
+ date: 2017-08-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -42,16 +42,16 @@ dependencies:
42
42
  name: nanoc
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - "~>"
45
+ - - ">="
46
46
  - !ruby/object:Gem::Version
47
- version: 4.0.0rc2
47
+ version: '0'
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - "~>"
52
+ - - ">="
53
53
  - !ruby/object:Gem::Version
54
- version: 4.0.0rc2
54
+ version: '0'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: thor
57
57
  requirement: !ruby/object:Gem::Requirement
@@ -95,7 +95,7 @@ dependencies:
95
95
  - !ruby/object:Gem::Version
96
96
  version: '0'
97
97
  - !ruby/object:Gem::Dependency
98
- name: pry-byebug
98
+ name: nokogiri
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
101
  - - ">="
@@ -109,7 +109,7 @@ dependencies:
109
109
  - !ruby/object:Gem::Version
110
110
  version: '0'
111
111
  - !ruby/object:Gem::Dependency
112
- name: nokogiri
112
+ name: activesupport
113
113
  requirement: !ruby/object:Gem::Requirement
114
114
  requirements:
115
115
  - - ">="
@@ -123,7 +123,7 @@ dependencies:
123
123
  - !ruby/object:Gem::Version
124
124
  version: '0'
125
125
  - !ruby/object:Gem::Dependency
126
- name: activesupport
126
+ name: kramdown
127
127
  requirement: !ruby/object:Gem::Requirement
128
128
  requirements:
129
129
  - - ">="
@@ -137,7 +137,7 @@ dependencies:
137
137
  - !ruby/object:Gem::Version
138
138
  version: '0'
139
139
  - !ruby/object:Gem::Dependency
140
- name: kramdown
140
+ name: adsf
141
141
  requirement: !ruby/object:Gem::Requirement
142
142
  requirements:
143
143
  - - ">="
@@ -151,7 +151,7 @@ dependencies:
151
151
  - !ruby/object:Gem::Version
152
152
  version: '0'
153
153
  - !ruby/object:Gem::Dependency
154
- name: adsf
154
+ name: guard
155
155
  requirement: !ruby/object:Gem::Requirement
156
156
  requirements:
157
157
  - - ">="
@@ -165,7 +165,7 @@ dependencies:
165
165
  - !ruby/object:Gem::Version
166
166
  version: '0'
167
167
  - !ruby/object:Gem::Dependency
168
- name: guard
168
+ name: guard-shell
169
169
  requirement: !ruby/object:Gem::Requirement
170
170
  requirements:
171
171
  - - ">="
@@ -179,7 +179,7 @@ dependencies:
179
179
  - !ruby/object:Gem::Version
180
180
  version: '0'
181
181
  - !ruby/object:Gem::Dependency
182
- name: guard-shell
182
+ name: tzinfo
183
183
  requirement: !ruby/object:Gem::Requirement
184
184
  requirements:
185
185
  - - ">="
@@ -193,7 +193,7 @@ dependencies:
193
193
  - !ruby/object:Gem::Version
194
194
  version: '0'
195
195
  - !ruby/object:Gem::Dependency
196
- name: tzinfo
196
+ name: icalendar
197
197
  requirement: !ruby/object:Gem::Requirement
198
198
  requirements:
199
199
  - - ">="
@@ -207,7 +207,7 @@ dependencies:
207
207
  - !ruby/object:Gem::Version
208
208
  version: '0'
209
209
  - !ruby/object:Gem::Dependency
210
- name: icalendar
210
+ name: byebug
211
211
  requirement: !ruby/object:Gem::Requirement
212
212
  requirements:
213
213
  - - ">="
@@ -236,6 +236,7 @@ files:
236
236
  - Rakefile
237
237
  - bin/cg
238
238
  - coursegen.gemspec
239
+ - deleteme.rb
239
240
  - lib/coursegen.rb
240
241
  - lib/coursegen/cli.rb
241
242
  - lib/coursegen/course/data/citem.rb
@@ -273,6 +274,8 @@ files:
273
274
  - templates/.gitignore
274
275
  - templates/Guardfile
275
276
  - templates/Rules
277
+ - templates/body_footer.html
278
+ - templates/body_header.html.erb
276
279
  - templates/cg_config.rb
277
280
  - templates/cg_config.rb_sample
278
281
  - templates/content/bootstrap/css/custom.css
@@ -297,13 +300,16 @@ files:
297
300
  - templates/content/tipuesearch/tipuesearchnomin.js
298
301
  - templates/content/tipuesearch_logic/search.md.erb
299
302
  - templates/content/tipuesearch_logic/tipuesearch_content.js.erb
303
+ - templates/course.html
300
304
  - templates/doc/readme.md
305
+ - templates/helpful_box.html
301
306
  - templates/layouts/body_footer.html
302
307
  - templates/layouts/body_header.html.erb
303
308
  - templates/layouts/course.html
304
309
  - templates/layouts/helpful_box.html
305
310
  - templates/layouts/main_navbar.html.erb
306
311
  - templates/lib/default.rb
312
+ - templates/main_navbar.html.erb
307
313
  homepage: ''
308
314
  licenses:
309
315
  - MIT
@@ -324,7 +330,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
324
330
  version: '0'
325
331
  requirements: []
326
332
  rubyforge_project:
327
- rubygems_version: 2.4.5
333
+ rubygems_version: 2.6.11
328
334
  signing_key:
329
335
  specification_version: 4
330
336
  summary: Use Nanoc to build courses and deploy them to S3