jekyll-attendease 0.0.1 → 0.1.0
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.
- data/lib/jekyll-attendease.rb +38 -0
- metadata +1 -1
data/lib/jekyll-attendease.rb
CHANGED
@@ -58,5 +58,43 @@ module Jekyll
|
|
58
58
|
end
|
59
59
|
end
|
60
60
|
|
61
|
+
|
62
|
+
class EventThemes < Generator
|
63
|
+
def generate(site)
|
64
|
+
puts "Generating theme layout..."
|
65
|
+
|
66
|
+
attendease_precompiled_theme_layouts_path = "#{site.config['source']}/attendease_layouts"
|
67
|
+
|
68
|
+
FileUtils.mkdir_p(attendease_precompiled_theme_layouts_path)
|
69
|
+
|
70
|
+
layouts_to_precompile = ['layout', 'register', 'schedule', 'presenters']
|
71
|
+
|
72
|
+
# Precompiled layout for website sections.
|
73
|
+
layouts_to_precompile.each do |layout|
|
74
|
+
if File.exists?("#{site.config['source']}/_layouts/layout.html")
|
75
|
+
|
76
|
+
# create a layout file if is already doesn't exist.
|
77
|
+
# the layout file will be used by attendease to wrap /register, /schedule, /presnters in the
|
78
|
+
# look the compiled file defines.
|
79
|
+
# ensure {{ content }} is in the file so we can render content in there!
|
80
|
+
if !File.exists?("#{site.config['source']}/attendease_layouts/#{layout}.html")
|
81
|
+
theme_layout_content = <<-eos
|
82
|
+
---
|
83
|
+
layout: layout
|
84
|
+
---
|
85
|
+
|
86
|
+
{% raw %}
|
87
|
+
{{ content }}
|
88
|
+
{% endraw %}
|
89
|
+
eos
|
90
|
+
|
91
|
+
File.open("#{site.config['source']}/attendease_layouts/#{layout}.html", 'w+') { |file| file.write(theme_layout_content) }
|
92
|
+
end
|
93
|
+
end
|
94
|
+
end
|
95
|
+
|
96
|
+
end
|
97
|
+
end
|
98
|
+
|
61
99
|
end
|
62
100
|
end
|