coursegen 0.1.3 → 0.3.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +48 -32
- data/coursegen.gemspec +4 -3
- data/lib/coursegen/course/data/citem.rb +22 -6
- data/lib/coursegen/course/data/data_adaptor.rb +9 -1
- data/lib/coursegen/course/data/lectures.rb +14 -5
- data/lib/coursegen/course/data/section.rb +6 -5
- data/lib/coursegen/course/data/toc.rb +10 -8
- data/lib/coursegen/course/helpers/content_helpers.rb +4 -4
- data/lib/coursegen/course/helpers/ical_feed_helpers.rb +8 -0
- data/lib/coursegen/course/helpers/list_of.rb +4 -3
- data/lib/coursegen/course/helpers/navigation_helpers.rb +4 -3
- data/lib/coursegen/course/helpers/sidebar_helpers.rb +3 -2
- data/lib/coursegen/course/lib/helpers_.rb +1 -0
- data/lib/coursegen/course/lib/ical_adaptor.rb +34 -0
- data/lib/coursegen/course/lib/search_data_generator.rb +4 -4
- data/lib/coursegen/course/schedule/schedule_def.rb +5 -2
- data/lib/coursegen/course/schedule/schedule_feed.rb +30 -0
- data/lib/coursegen/course/schedule/scheduler.rb +22 -7
- data/lib/coursegen/templates.rb +2 -0
- data/lib/coursegen/version.rb +1 -1
- data/lib/coursegen.rb +4 -2
- data/spec/citem_spec.rb +3 -2
- data/spec/lectures_spec.rb +7 -7
- data/spec/play_spec.rb +23 -0
- data/spec/spec_helper.rb +7 -8
- data/templates/.gitignore +1 -2
- data/{Guardfile → templates/Guardfile} +3 -0
- data/templates/Rules +37 -37
- data/templates/cg_config.rb +18 -5
- data/templates/cg_config.rb_sample +5 -3
- data/templates/content/content/extras/extra_content.md.erb +4 -0
- data/templates/content/content/index.md.erb +7 -1
- data/templates/content/content/intro/course_toc.md.erb +4 -0
- data/templates/content/content/intro/welcome.md.erb +8 -0
- data/templates/content/content/lectures/part1/01_first_lecture.md.erb +4 -0
- data/templates/content/content/lectures/part1/02_here_we_go.md.erb +5 -0
- data/templates/content/content/lectures/part1/index.html +6 -0
- data/templates/content/content/lectures/part2/01_start_part2.md.erb +5 -0
- data/templates/content/content/lectures/part2/02_continue_part2.md.erb +5 -0
- data/templates/content/content/lectures/part2/index.html +6 -0
- data/templates/content/content/lectures/schedule.ical.erb +5 -0
- data/templates/content/tipuesearch_logic/search.md.erb +1 -1
- data/templates/layouts/course.html +6 -6
- metadata +51 -9
- data/lib/coursegen/course/lib/toc.rb +0 -154
data/lib/coursegen/templates.rb
CHANGED
@@ -13,6 +13,8 @@ module CourseGen
|
|
13
13
|
copy_template_dir("lib", "lib")
|
14
14
|
delete_target_file("Rules")
|
15
15
|
copy_template_file("Rules", "Rules")
|
16
|
+
copy_template_file("Guardfile", "Guardfile")
|
17
|
+
copy_template_file(".gitignore", ".gitignore")
|
16
18
|
copy_template_file("cg_config.rb", "cg_config.rb")
|
17
19
|
copy_template_file("cg_config.rb_sample", "cg_config.rb_sample")
|
18
20
|
delete_target_file("content/stylesheet.css")
|
data/lib/coursegen/version.rb
CHANGED
data/lib/coursegen.rb
CHANGED
@@ -12,15 +12,17 @@ require "coursegen/course/helpers/navigation_helpers"
|
|
12
12
|
require "coursegen/course/data/section"
|
13
13
|
require "coursegen/course/data/toc"
|
14
14
|
require 'coursegen/course/data/citem'
|
15
|
-
require 'coursegen/course/lib/helpers_'
|
16
15
|
require 'coursegen/course/schedule/schedule_def'
|
17
16
|
require 'coursegen/course/data/section_def'
|
18
17
|
require 'coursegen/course/schedule/scheduler'
|
18
|
+
require 'coursegen/course/schedule/schedule_feed'
|
19
19
|
require 'coursegen/course/data/lectures'
|
20
20
|
require 'coursegen/course/lib/search_data_generator'
|
21
21
|
require 'coursegen/course/data/data_adaptor'
|
22
|
+
require 'coursegen/course/lib/ical_adaptor'
|
22
23
|
require 'coursegen/course/helpers/list_of'
|
23
|
-
|
24
|
+
require 'coursegen/course/helpers/ical_feed_helpers'
|
25
|
+
require 'coursegen/course/lib/helpers_'
|
24
26
|
|
25
27
|
module Coursegen
|
26
28
|
# Your code goes here...
|
data/spec/citem_spec.rb
CHANGED
@@ -1,5 +1,4 @@
|
|
1
1
|
require_relative "./spec_helper.rb"
|
2
|
-
require 'pry'
|
3
2
|
|
4
3
|
class NIMock
|
5
4
|
attr_reader :identifier
|
@@ -29,6 +28,8 @@ describe "null Case" do
|
|
29
28
|
it "works as expected" do
|
30
29
|
expect(@ci.title).to eq("db_design")
|
31
30
|
expect(@ci.section).to eq("lectures")
|
31
|
+
expect(@ci.short_name).to eq("db_design")
|
32
|
+
expect(@ci.subsection).to eq("/content/lectures/iter4/")
|
32
33
|
expect(@ci.order).to eq(7)
|
33
34
|
end
|
34
35
|
end
|
@@ -39,7 +40,7 @@ describe "more complicated cases" do
|
|
39
40
|
['/content/intro/term_overview/', 7, "intro", "term_overview", "intro", 7, "/content/intro/"],
|
40
41
|
['/content/intro/001_term_overview/', nil, "intro", "term_overview", "intro", 1, "/content/intro/"],
|
41
42
|
['/content/lectures/iter2/02_db_design/', 7, "lectures", "db_design", "lectures", 7, "/content/lectures/iter2/"],
|
42
|
-
['/content/', 7, "lectures", "content", "lectures", 7, "//"],
|
43
|
+
['/content/', 7, "lectures", "content", "lectures", 7, "//"],
|
43
44
|
]
|
44
45
|
|
45
46
|
context "table driven cases" do
|
data/spec/lectures_spec.rb
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
require_relative "./spec_helper.rb"
|
2
2
|
describe Lectures do
|
3
3
|
before do
|
4
|
-
mocks1_templates =
|
5
|
-
[["/lectures/intro/wonders/", "subsection", 0],
|
6
|
-
["/lectures/intro/wonders/page2
|
7
|
-
["/lectures/intro/wonders/page3
|
8
|
-
["/lectures/intro/wonder2/", "subsection", 1],
|
9
|
-
["/lectures/intro/wonder2/page22
|
10
|
-
["/lectures/intro/wonder2/page32/", "page",2 ]
|
4
|
+
mocks1_templates =
|
5
|
+
[["/lectures/intro/wonders/index.html", "subsection", 0],
|
6
|
+
["/lectures/intro/wonders/page2.md.erb", "page", 1],
|
7
|
+
["/lectures/intro/wonders/page3.md.erb", "page", 2],
|
8
|
+
["/lectures/intro/wonder2/index.html", "subsection", 1],
|
9
|
+
["/lectures/intro/wonder2/page22.md.erb", "page", 1],
|
10
|
+
["/lectures/intro/wonder2/page32.md.erb/", "page",2 ]
|
11
11
|
]
|
12
12
|
@citems1 = mocks1_templates.map { |i, t, o| CItem.new(nil, i, t, o) }
|
13
13
|
@sect = Lectures.new "intro", @citems1
|
data/spec/play_spec.rb
ADDED
@@ -0,0 +1,23 @@
|
|
1
|
+
require_relative "./spec_helper.rb"
|
2
|
+
describe "Does it work?" do
|
3
|
+
before do
|
4
|
+
@abc = 1
|
5
|
+
mocks1_templates =
|
6
|
+
[["/lectures/intro/wonders/", "subsection", 0],
|
7
|
+
["/lectures/intro/wonders/page2/", "page", 1],
|
8
|
+
["/lectures/intro/wonders/page3/", "page", 2],
|
9
|
+
["/lectures/intro/wonder2/", "subsection", 1],
|
10
|
+
["/lectures/intro/wonder2/page22/", "page", 1],
|
11
|
+
["/lectures/intro/wonder2/page32/", "page",2 ]
|
12
|
+
]
|
13
|
+
binding.pry
|
14
|
+
@citems1 = mocks1_templates.map { |i, t, o| CItem.new(nil, i, t, o) }
|
15
|
+
@sect = Lectures.new "intro", @citems1
|
16
|
+
end
|
17
|
+
|
18
|
+
|
19
|
+
it "correctly counts subsections" do
|
20
|
+
binding.pry
|
21
|
+
expect (@abc).to eq 1
|
22
|
+
end
|
23
|
+
end
|
data/spec/spec_helper.rb
CHANGED
@@ -1,11 +1,11 @@
|
|
1
1
|
require 'rspec'
|
2
|
-
require 'pry'
|
3
|
-
require './lib/coursegen/course/
|
4
|
-
require './lib/coursegen/course/
|
5
|
-
require './lib/coursegen/course/
|
6
|
-
require './lib/coursegen/course/
|
7
|
-
require './lib/coursegen/course/
|
8
|
-
require './lib/coursegen/course/
|
2
|
+
require 'pry-byebug'
|
3
|
+
require './lib/coursegen/course/data/section'
|
4
|
+
require './lib/coursegen/course/data/toc'
|
5
|
+
require './lib/coursegen/course/data/lectures'
|
6
|
+
require './lib/coursegen/course/data/citem'
|
7
|
+
require './lib/coursegen/course/schedule/scheduler'
|
8
|
+
require './lib/coursegen/course/data/section_def'
|
9
9
|
|
10
10
|
# This file was generated by the `rspec --init` command. Conventionally, all
|
11
11
|
# specs live under a `spec` directory, which RSpec adds to the `$LOAD_PATH`.
|
@@ -14,7 +14,6 @@ require './lib/coursegen/course/lib/section_def'
|
|
14
14
|
#
|
15
15
|
# See http://rubydoc.info/gems/rspec-core/RSpec/Core/Configuration
|
16
16
|
RSpec.configure do |config|
|
17
|
-
config.treat_symbols_as_metadata_keys_with_true_values = true
|
18
17
|
#config.run_all_when_everything_filtered = true
|
19
18
|
#config.filter_run :focus
|
20
19
|
|
data/templates/.gitignore
CHANGED
data/templates/Rules
CHANGED
@@ -1,54 +1,45 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
2
|
|
3
|
-
# A few helpful tips about the Rules file:
|
4
|
-
#
|
5
|
-
# * The string given to #compile and #route are matching patterns for
|
6
|
-
# identifiers--not for paths. Therefore, you can’t match on extension.
|
7
|
-
#
|
8
|
-
# * The order of rules is important: for each item, only the first matching
|
9
|
-
# rule is applied.
|
10
|
-
#
|
11
|
-
# * Item identifiers start and end with a slash (e.g. “/about/” for the file
|
12
|
-
# “content/about.html”). To select all children, grandchildren, … of an
|
13
|
-
# item, use the pattern “/about/*/”; “/about/*” will also select the parent,
|
14
|
-
# because “*” matches zero or more characters.
|
15
|
-
|
16
3
|
require './cg_config.rb'
|
17
4
|
|
18
5
|
preprocess do
|
19
6
|
Toc.instance.prepare @items, SECTION_CONFIG
|
20
7
|
end
|
21
8
|
|
22
|
-
compile '/bootstrap
|
9
|
+
compile '/bootstrap/**/*' do
|
23
10
|
nil
|
24
11
|
end
|
25
12
|
|
26
|
-
compile '/content/scripts
|
13
|
+
compile '/content/scripts/**/*' do
|
27
14
|
nil
|
28
15
|
end
|
29
16
|
|
30
|
-
compile '/chalkmark
|
17
|
+
compile '/chalkmark/**/*' do
|
31
18
|
nil
|
32
19
|
end
|
33
20
|
|
34
|
-
compile '/tipuesearch
|
21
|
+
compile '/tipuesearch/**/*' do
|
35
22
|
nil
|
36
23
|
end
|
37
24
|
|
38
|
-
compile "/tipuesearch_logic/tipuesearch_content" do
|
25
|
+
compile "/tipuesearch_logic/tipuesearch_content.*" do
|
26
|
+
filter :erb
|
27
|
+
end
|
28
|
+
|
29
|
+
compile "/content/**/*.ical.erb" do
|
39
30
|
filter :erb
|
40
31
|
end
|
41
32
|
|
42
|
-
compile '
|
33
|
+
compile '/**/*' do
|
43
34
|
if item.binary? || item[:status] == "hidden"
|
44
35
|
nil
|
45
36
|
elsif item[:status] == "hidden"
|
46
37
|
nil
|
47
38
|
elsif item[:type] == "subsection"
|
48
|
-
nil
|
39
|
+
nil
|
49
40
|
elsif item[:extension] == "haml"
|
50
41
|
filter :haml;
|
51
|
-
layout 'course'
|
42
|
+
layout '/course.*'
|
52
43
|
else
|
53
44
|
item[:extension].split('.').reverse.each do
|
54
45
|
|f|
|
@@ -59,37 +50,47 @@ compile '*' do
|
|
59
50
|
filter :erb
|
60
51
|
end
|
61
52
|
end
|
62
|
-
layout 'course'
|
53
|
+
layout '/course.*'
|
63
54
|
end
|
64
55
|
end
|
65
56
|
|
66
|
-
route '/bootstrap
|
67
|
-
@item.identifier.
|
57
|
+
route '/bootstrap/**/*' do
|
58
|
+
@item.identifier.to_s
|
68
59
|
end
|
69
60
|
|
70
|
-
route '/tipuesearch
|
71
|
-
@item.identifier.
|
61
|
+
route '/tipuesearch/**/*' do
|
62
|
+
@item.identifier.to_s
|
72
63
|
end
|
73
64
|
|
74
|
-
route "/tipuesearch_logic/tipuesearch_content
|
65
|
+
route "/tipuesearch_logic/tipuesearch_content.*" do
|
75
66
|
'/tipuesearch/tipuesearch_content.js'
|
76
67
|
end
|
77
68
|
|
78
69
|
|
79
|
-
route '/chalkmark
|
80
|
-
@item.identifier.
|
70
|
+
route '/chalkmark/**/*' do
|
71
|
+
@item.identifier.to_s
|
72
|
+
end
|
73
|
+
|
74
|
+
# Output the search page
|
75
|
+
route '/tipuesearch_logic/search.md.erb' do
|
76
|
+
'/tipuesearch_logic/search/index.html'
|
77
|
+
end
|
78
|
+
|
79
|
+
route '/**/*.ical.erb' do
|
80
|
+
@item.identifier.without_ext
|
81
81
|
end
|
82
82
|
|
83
|
-
|
83
|
+
|
84
|
+
# Select which .md.erb becomes the home page of the site
|
85
|
+
route '/content/index.md.erb' do
|
84
86
|
'/index.html'
|
85
87
|
end
|
86
88
|
|
87
|
-
route '
|
89
|
+
route '/**/*' do
|
88
90
|
if item[:extension].nil?
|
89
91
|
raise RuntimeError, "Missing required extension: \".#{item.identifier}\""
|
90
92
|
elsif item.binary?
|
91
|
-
|
92
|
-
item.identifier.chop + '.' + item[:extension] rescue fail "in route * in Rules"
|
93
|
+
item.identifier.to_s
|
93
94
|
elsif item.identifier == "/search_logic/tipuesearch_content/"
|
94
95
|
item.identifier.chop + '.' + item[:extension] rescue fail "in route * in Rules"
|
95
96
|
elsif item[:status] == "hidden"
|
@@ -97,10 +98,9 @@ route '*' do
|
|
97
98
|
elsif item[:type] == "subsection"
|
98
99
|
nil
|
99
100
|
elsif item[:extension] != "css"
|
100
|
-
|
101
|
-
|
101
|
+
item.identifier.without_ext + '/index.html'
|
102
|
+
|
102
103
|
end
|
103
104
|
end
|
104
105
|
|
105
|
-
layout '
|
106
|
-
|
106
|
+
layout '/**/*', :erb
|
data/templates/cg_config.rb
CHANGED
@@ -4,12 +4,25 @@ require 'coursegen'
|
|
4
4
|
COPYRIGHT_STRING = "Copyright (2013-2014) R. Pito Salas, pitosalas@gmail.com"
|
5
5
|
|
6
6
|
# Course short name
|
7
|
-
COURSE_SHORT_NAME = "
|
8
|
-
COURSE_LONG_NAME = "
|
7
|
+
COURSE_SHORT_NAME = "Sample Course"
|
8
|
+
COURSE_LONG_NAME = "Sample Coursegen Course"
|
9
|
+
COURSE_ABBREV = "SC"
|
10
|
+
|
11
|
+
LECTURES_SCHEDULE_CONFIG = ScheduleDef.new(
|
12
|
+
first_day: "aug-11-2015",
|
13
|
+
weekdays: [:tuesday, :friday],
|
14
|
+
number: 26,
|
15
|
+
skips: [],
|
16
|
+
start_time: "15:00",
|
17
|
+
end_time: "16:20")
|
18
|
+
|
9
19
|
|
10
20
|
# Sections in the right hand margin of the page
|
11
21
|
SECTION_CONFIG = [
|
12
|
-
SectionDef.new("
|
13
|
-
SectionDef.new("
|
22
|
+
SectionDef.new("Intro", "intro", type: :section),
|
23
|
+
SectionDef.new("Lectures", "lectures", type: :lecture, schedule: LECTURES_SCHEDULE_CONFIG),
|
24
|
+
SectionDef.new("Extras", "extras", hidden: true, type: :section)
|
14
25
|
]
|
15
|
-
|
26
|
+
# Options are:
|
27
|
+
# bullet_style: css style for each bullet
|
28
|
+
STYLING_CONFIG = {bullet_style: "\"font-size: 60%; width: 10px; color: grey\""}
|
@@ -15,13 +15,13 @@ COURSE_LONG_NAME = "Software Engineering"
|
|
15
15
|
|
16
16
|
# Schedule information. Note that Monday is day 0
|
17
17
|
LECTURES_SCHEDULE_CONFIG = ScheduleDef.new(
|
18
|
-
first_day: "jan-14-2014",
|
18
|
+
first_day: "jan-14-2014",
|
19
19
|
weekdays: [:tuesday, :friday],
|
20
20
|
number: 26,
|
21
21
|
skips: ["feb-18-2014", "feb-21-2014", "apr-15-2014", "apr-18-2014", "apr-22-2014"])
|
22
22
|
|
23
23
|
LABS_SCHEDULE_CONFIG = ScheduleDef.new(
|
24
|
-
first_day: "jan-16-2014",
|
24
|
+
first_day: "jan-16-2014",
|
25
25
|
weekdays: [:thursday],
|
26
26
|
number: 13,
|
27
27
|
skips: ["feb-20-2014", "apr-17-2014"])
|
@@ -39,4 +39,6 @@ SECTION_CONFIG = [
|
|
39
39
|
SectionDef.new("Hidden", "hidden", hidden: true, type: :section)
|
40
40
|
]
|
41
41
|
|
42
|
-
|
42
|
+
# Options are:
|
43
|
+
# bullet_style: css style for each bullet
|
44
|
+
STYLING_CONFIG = {bullet_style: "\"font-size: 60%; width: 10px; color: grey\""}
|
@@ -1,4 +1,10 @@
|
|
1
1
|
---
|
2
2
|
title: Welcome!
|
3
|
-
section:
|
3
|
+
section: extras
|
4
4
|
---
|
5
|
+
<div class="jumbotron">
|
6
|
+
<h2>Welcome to the Sample Course!</h2>
|
7
|
+
<p>This course is generated when you first install Coursegen. It uses all the features (almost) of the software, to allow you to see what is possible.</p>
|
8
|
+
|
9
|
+
<p>Pito Salas, pitosalas@brandeis.edu</p>
|
10
|
+
</div>
|
@@ -1,6 +1,6 @@
|
|
1
1
|
---
|
2
2
|
title: Search Results
|
3
|
-
section:
|
3
|
+
section: extras
|
4
4
|
---
|
5
5
|
|
6
6
|
> *note: for now, each search result includes the first several lines of the page, which may or may not include the occurences of the words you searched for. Don't let that make you think that the search didn't work. It's just that the results page can be improved (a lot)*
|
@@ -3,8 +3,8 @@
|
|
3
3
|
<head>
|
4
4
|
<title><%= @item[:title] %> - <%= COURSE_SHORT_NAME %></title>
|
5
5
|
<meta charset="utf-8">
|
6
|
-
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
7
|
-
|
6
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
7
|
+
|
8
8
|
<link rel="stylesheet" href="//netdna.bootstrapcdn.com/bootstrap/3.1.0/css/bootstrap.min.css">
|
9
9
|
<link rel="stylesheet" href="/bootstrap/css/custom.css">
|
10
10
|
<script src="https://code.jquery.com/jquery.js"></script>
|
@@ -19,12 +19,12 @@
|
|
19
19
|
|
20
20
|
<% @citem = Toc.instance.n2c(@item) %>
|
21
21
|
<div class="navbar navbar-inverse navbar-fixed-top">
|
22
|
-
<%= render "main_navbar", toc: Toc.instance, item: item, citem: @citem %>
|
22
|
+
<%= render "/main_navbar.*", toc: Toc.instance, item: item, citem: @citem %>
|
23
23
|
</div>
|
24
24
|
<div class="container">
|
25
25
|
<div class="row">
|
26
26
|
<div class="col-xs-12">
|
27
|
-
<%= render "body_header", toc: Toc.instance, item: item, citem: @citem %>
|
27
|
+
<%= render "/body_header.*", toc: Toc.instance, item: item, citem: @citem %>
|
28
28
|
</div>
|
29
29
|
</div>
|
30
30
|
<div class="row">
|
@@ -33,7 +33,7 @@
|
|
33
33
|
</div>
|
34
34
|
<div class="col-xs-3">
|
35
35
|
<div class="row well right-nav" style="color: rgb(158, 48, 48);padding-top: 4px;padding-bottom: 4px;padding-left: 8px;padding-right: 8px;margin-bottom: 8px;">
|
36
|
-
<%= render "helpful_box" %>
|
36
|
+
<%= render "/helpful_box.*" %>
|
37
37
|
</div>
|
38
38
|
<div class="row well right-nav" style="padding: 5px;">
|
39
39
|
<ul>
|
@@ -44,7 +44,7 @@
|
|
44
44
|
</div>
|
45
45
|
</div>
|
46
46
|
</div>
|
47
|
-
<%= render "body_footer" %>
|
47
|
+
<%= render "/body_footer.*" %>
|
48
48
|
</div>
|
49
49
|
<!-- jQuery (necessary for Bootstrap's JavaScript plugins) -->
|
50
50
|
<!-- Include all compiled plugins (below), or include individual files as needed -->
|
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.1
|
4
|
+
version: 0.3.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Pito Salas
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2016-01-10 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:
|
47
|
+
version: 4.0.0rc2
|
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:
|
54
|
+
version: 4.0.0rc2
|
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
|
98
|
+
name: pry-byebug
|
99
99
|
requirement: !ruby/object:Gem::Requirement
|
100
100
|
requirements:
|
101
101
|
- - ">="
|
@@ -192,6 +192,34 @@ dependencies:
|
|
192
192
|
- - ">="
|
193
193
|
- !ruby/object:Gem::Version
|
194
194
|
version: '0'
|
195
|
+
- !ruby/object:Gem::Dependency
|
196
|
+
name: tzinfo
|
197
|
+
requirement: !ruby/object:Gem::Requirement
|
198
|
+
requirements:
|
199
|
+
- - ">="
|
200
|
+
- !ruby/object:Gem::Version
|
201
|
+
version: '0'
|
202
|
+
type: :runtime
|
203
|
+
prerelease: false
|
204
|
+
version_requirements: !ruby/object:Gem::Requirement
|
205
|
+
requirements:
|
206
|
+
- - ">="
|
207
|
+
- !ruby/object:Gem::Version
|
208
|
+
version: '0'
|
209
|
+
- !ruby/object:Gem::Dependency
|
210
|
+
name: icalendar
|
211
|
+
requirement: !ruby/object:Gem::Requirement
|
212
|
+
requirements:
|
213
|
+
- - ">="
|
214
|
+
- !ruby/object:Gem::Version
|
215
|
+
version: '0'
|
216
|
+
type: :runtime
|
217
|
+
prerelease: false
|
218
|
+
version_requirements: !ruby/object:Gem::Requirement
|
219
|
+
requirements:
|
220
|
+
- - ">="
|
221
|
+
- !ruby/object:Gem::Version
|
222
|
+
version: '0'
|
195
223
|
description: Use Nanoc to build courses and deploy them to S3
|
196
224
|
email:
|
197
225
|
- pitosalas@gmail.com
|
@@ -203,7 +231,6 @@ files:
|
|
203
231
|
- ".gitignore"
|
204
232
|
- Gemfile
|
205
233
|
- Gemfile.lock
|
206
|
-
- Guardfile
|
207
234
|
- LICENSE.txt
|
208
235
|
- README.md
|
209
236
|
- Rakefile
|
@@ -219,6 +246,7 @@ files:
|
|
219
246
|
- lib/coursegen/course/data/toc.rb
|
220
247
|
- lib/coursegen/course/helpers/bootstrap_markup.rb
|
221
248
|
- lib/coursegen/course/helpers/content_helpers.rb
|
249
|
+
- lib/coursegen/course/helpers/ical_feed_helpers.rb
|
222
250
|
- lib/coursegen/course/helpers/lecture_helpers.rb
|
223
251
|
- lib/coursegen/course/helpers/list_of.rb
|
224
252
|
- lib/coursegen/course/helpers/list_of_helpers.rb
|
@@ -227,20 +255,23 @@ files:
|
|
227
255
|
- lib/coursegen/course/helpers/sidebar_helpers.rb
|
228
256
|
- lib/coursegen/course/helpers/table_helpers.rb
|
229
257
|
- lib/coursegen/course/lib/helpers_.rb
|
258
|
+
- lib/coursegen/course/lib/ical_adaptor.rb
|
230
259
|
- lib/coursegen/course/lib/search_data_generator.rb
|
231
|
-
- lib/coursegen/course/lib/toc.rb
|
232
260
|
- lib/coursegen/course/schedule/schedule_def.rb
|
261
|
+
- lib/coursegen/course/schedule/schedule_feed.rb
|
233
262
|
- lib/coursegen/course/schedule/scheduler.rb
|
234
263
|
- lib/coursegen/templates.rb
|
235
264
|
- lib/coursegen/version.rb
|
236
265
|
- spec/citem_spec.rb
|
237
266
|
- spec/lectures_spec.rb
|
267
|
+
- spec/play_spec.rb
|
238
268
|
- spec/scheduler_spec.rb
|
239
269
|
- spec/section_spec.rb
|
240
270
|
- spec/spec_helper.rb
|
241
271
|
- spec/toc_spec.rb
|
242
272
|
- tech_debt.md
|
243
273
|
- templates/.gitignore
|
274
|
+
- templates/Guardfile
|
244
275
|
- templates/Rules
|
245
276
|
- templates/cg_config.rb
|
246
277
|
- templates/cg_config.rb_sample
|
@@ -248,7 +279,17 @@ files:
|
|
248
279
|
- templates/content/bootstrap/fonts/glyphicons-halflings-regular.ttf
|
249
280
|
- templates/content/bootstrap/js/custom.js
|
250
281
|
- templates/content/chalkmark/chalkmark.js
|
282
|
+
- templates/content/content/extras/extra_content.md.erb
|
251
283
|
- templates/content/content/index.md.erb
|
284
|
+
- templates/content/content/intro/course_toc.md.erb
|
285
|
+
- templates/content/content/intro/welcome.md.erb
|
286
|
+
- templates/content/content/lectures/part1/01_first_lecture.md.erb
|
287
|
+
- templates/content/content/lectures/part1/02_here_we_go.md.erb
|
288
|
+
- templates/content/content/lectures/part1/index.html
|
289
|
+
- templates/content/content/lectures/part2/01_start_part2.md.erb
|
290
|
+
- templates/content/content/lectures/part2/02_continue_part2.md.erb
|
291
|
+
- templates/content/content/lectures/part2/index.html
|
292
|
+
- templates/content/content/lectures/schedule.ical.erb
|
252
293
|
- templates/content/tipuesearch/img/loader.gif
|
253
294
|
- templates/content/tipuesearch/img/search.png
|
254
295
|
- templates/content/tipuesearch/tipuesearch_set.js
|
@@ -290,6 +331,7 @@ summary: Use Nanoc to build courses and deploy them to S3
|
|
290
331
|
test_files:
|
291
332
|
- spec/citem_spec.rb
|
292
333
|
- spec/lectures_spec.rb
|
334
|
+
- spec/play_spec.rb
|
293
335
|
- spec/scheduler_spec.rb
|
294
336
|
- spec/section_spec.rb
|
295
337
|
- spec/spec_helper.rb
|