diff --git a/Gemfile b/Gemfile
index feb18d3..df22901 100644
--- a/Gemfile
+++ b/Gemfile
@@ -19,6 +19,9 @@ gem 'therubyracer'
# for reading time
gem 'words_counted'
+# Compiling reports from .md to .pdf
+gem 'pandoc-ruby'
+
group :development do
gem 'adsf'
gem 'highline'
diff --git a/Gemfile.lock b/Gemfile.lock
index db36c53..157a130 100644
--- a/Gemfile.lock
+++ b/Gemfile.lock
@@ -21,11 +21,11 @@ GEM
csspool-st (= 3.1.2)
json
csspool-st (3.1.2)
- ddmemoize (1.0.0a3)
- ddtelemetry (= 1.0.0a2)
+ ddmemoize (1.0.0)
+ ddmetrics (~> 1.0)
ref (~> 2.0)
+ ddmetrics (1.0.0)
ddplugin (1.0.1)
- ddtelemetry (1.0.0a2)
execjs (2.7.0)
ffi (1.9.18)
formatador (0.2.5)
@@ -66,13 +66,14 @@ GEM
css_press
multi_js (0.1.0)
uglifier (~> 2)
- nanoc (4.8.19)
+ nanoc (4.9.1)
addressable (~> 2.5)
cri (~> 2.8)
- ddmemoize (= 1.0.0a3)
+ ddmemoize (~> 1.0)
+ ddmetrics (~> 1.0)
ddplugin (~> 1.0)
- ddtelemetry (= 1.0.0a2)
hamster (~> 3.0)
+ parallel (~> 1.12)
ref (~> 2.0)
slow_enumerator_tools (~> 1.0)
nenv (0.3.0)
@@ -81,10 +82,12 @@ GEM
notiffany (0.1.1)
nenv (~> 0.1)
shellany (~> 0.0)
+ pandoc-ruby (2.0.2)
+ parallel (1.12.1)
pry (0.11.3)
coderay (~> 1.1.0)
method_source (~> 0.9.0)
- public_suffix (3.0.1)
+ public_suffix (3.0.2)
rack (2.0.3)
rb-fsevent (0.10.2)
rb-inotify (0.9.10)
@@ -126,6 +129,7 @@ DEPENDENCIES
icalendar
kramdown
nanoc
+ pandoc-ruby
sass
terminal-notifier
terminal-notifier-guard
diff --git a/Rules b/Rules
index 13f885b..9b74250 100644
--- a/Rules
+++ b/Rules
@@ -19,6 +19,7 @@ preprocess do
create_yearly_items('Blog')
create_yearly_items('Events')
convert_event_time_to_timestamps
+ add_report_metadata
end
#
@@ -99,11 +100,11 @@ end
#
compile '/projects/*' do
filter :kramdown
+
+ # Don't write out the projects themselves for now
+ write nil
end
-# Don't create specific project pages for now
-route '/projects/*' do; end
-
compile '/*_search.json' do
filter :erb
end
@@ -112,6 +113,16 @@ compile '/**/*.ics' do
filter :erb
end
+#
+# REPORTS
+#
+
+compile '/about/verslagen/*/*.md', rep: :pdf do
+ filter :pandoc_pdf, args: { f: :markdown }
+
+ write ext: 'pdf'
+end
+
#
# GENERIC ERB PAGES
#
diff --git a/content/about/verslagen.erb b/content/about/verslagen.erb
index d1a9b10..c765ea1 100644
--- a/content/about/verslagen.erb
+++ b/content/about/verslagen.erb
@@ -1,3 +1,9 @@
-
Verslagen
+
Reports
+ <% reports.group_by {|r| r[:academic_year]}.each do |year, y_reports| %>
+
<%= year %>
+ <% y_reports.each do |report| %>
+
Report <%= report[:date].strftime('%d %B %Y') %>
+ <% end %>
+ <% end %>
diff --git a/content/about/verslagen/17-18/2018-02-12.md b/content/about/verslagen/17-18/2018-02-12.md
new file mode 100644
index 0000000..82a93e7
--- /dev/null
+++ b/content/about/verslagen/17-18/2018-02-12.md
@@ -0,0 +1,103 @@
+% Bestuursvergadering 3
+% Isaura Claeys
+% 21/02/2018 - 17:25
+
+# Verslag vorige vergadering
+ Check
+
+# Financiën
+* WVK Subsidies
+ * Goedgekeurd: +50 euro extra tov AJ 2016-2017 (1100 in totaal)
+* Overzicht
+ * 650 op de bank
+ * 220 in de kassa
+ * Hydra: 1029 terugkrijgen voor Hydra
+ * Stuw moeten we ook terugkrijgen
+ * 1800 hebben we atm in totaal
+ * 839 tab schulden atm
+* TV
+ * Mailen als subsidies bij DSA verwerkt zijn
+* Partnerships
+ * Aparte mailinglijst waar leden zich op kunnen uitschrijven als nodig
+ * Pakketten aanbieden
+ 1. Evenement (50)
+ 2. Vacature mailinglijst/site
+ 3. Logo op poster/site (enkel bij sponsoring event)
+ 4. Codenights sponsoren
+ 5. Prijzen sponsoren
+ 6. 1 pakket met combinatie van alles
+ * Wie? Timo
+ * Ocean Garden en Ocean Garden codenight?
+ * Timo organiseert aparte vergadering hiervoor
+* Lorin is een tomaat, want hij heeft voor de eerste keer in 10 jaar 100 meter gefietst.
+* Ereleden
+ * Kandidaten: pietervdv
+ * Minimum 50 euro: poster + site (optioneel)
+ * Dino doet dingen
+
+# Sysadmin
+* Deployen MOZAIC
+ * Met Wout afspreken
+* Dingen mogen gebeuren
+ * Asana
+
+# Activiteiten
+* Hashcode
+ * Delhaizerun vrijdag
+ * Extra locatie
+ * 300 euro aan pizza’s: Lorin en Rien
+* VPW
+ * We zijn ervoorbij
+ * In orde!
+ * Bus zit vol!
+ * Je bent goed bezig!
+ * Behalve Lorin en zijn potentieel team van Wout zijn lief
+* Ceneka Talks
+ * 18 april
+ * Delaware komt
+ * Maar wie weet waar het over gaat
+ * Camera bij DICT regelen
+ * Eten regelen avond zelf
+ * Barmensen regelen
+* Lightning talks
+ * Komt in orde
+* 12Urenloop
+ * Jeroen wordt teamlead IT
+ * Volgende vrijdag 12UL codenight
+ * Tent: Feliciaan vragen hoe subsidieren?
+* HTTPizza
+ * Momenteel afgelast
+
+# Projecten updates
+ * MOZAIC
+ * Intel AI ding van maken if need be
+ * Meer bestuur rond krijgen nu
+ 1. Organiseren + inplannen + promo
+ * Inplannen introductie (presentatie etc.)
+ * Rien gaat helpen!
+ * Volgende donderdagmiddag: 11.30u
+ * Hydra
+ * Dingen gaan vooruit
+ * Feli gaat traag
+ * Lekker
+ * G2
+ * Verschil met gamification: stats zijn een bijzaak, doel is participatie verhogen
+
+# Discussiepunten
+* Rien zegt iets: Ik stel voor dat we eventueel toekomstige bestuursleden bij het bestuur beginnen betrekken.
+ - Niet bij vergaderingen betrekken
+
+# Trivia
+* Cegeka antwoorden
+ * Timo + die andere partnership mail
+* VEK antwoorden
+ * wout
+* Wina Antwoorden
+ * Infodinges voor de master informatica
+ * Rien
+
+# Vrij moment
+Ilion doet een bekentenis: Ik lees mijn mails nooit.
+
+
+# Todo's:
diff --git a/lib/filters/pandoc_pdf.rb b/lib/filters/pandoc_pdf.rb
new file mode 100644
index 0000000..f66613e
--- /dev/null
+++ b/lib/filters/pandoc_pdf.rb
@@ -0,0 +1,18 @@
+require 'pandoc-ruby'
+require 'fileutils'
+
+class PandocPDF < Nanoc::Filter
+ identifier :pandoc_pdf
+ type text: :binary
+
+ def run(content, params = {})
+ # https://github.com/nanoc/nanoc/blob/master/nanoc/lib/nanoc/filters/pandoc.rb
+ args = params.key?(:args) ? params[:args] : params
+
+ args[:o] = output_filename + '.pdf'
+
+ PandocRuby.convert(content, *args)
+
+ FileUtils.mv(output_filename + '.pdf', output_filename)
+ end
+end
diff --git a/lib/helpers/preprocess.rb b/lib/helpers/preprocess.rb
index a8e5c96..7e4bd46 100644
--- a/lib/helpers/preprocess.rb
+++ b/lib/helpers/preprocess.rb
@@ -50,4 +50,11 @@ module PreprocessHelper
event[:end] = DateTime.parse(event[:end]) if event[:end]
end
end
+
+ def add_report_metadata
+ @items.find_all('/about/verslagen/*/*').each do |report|
+ report[:academic_year] = report.identifier.to_s.split('/')[-2]
+ report[:date] = Date.strptime(report.identifier.without_ext.split('/').last)
+ end
+ end
end
diff --git a/lib/helpers/reports.rb b/lib/helpers/reports.rb
new file mode 100644
index 0000000..3e952af
--- /dev/null
+++ b/lib/helpers/reports.rb
@@ -0,0 +1,5 @@
+module ReportsHelper
+ def reports
+ @items.find_all('/about/verslagen/*/*').sort_by(&:identifier).reverse
+ end
+end
diff --git a/lib/helpers_.rb b/lib/helpers_.rb
index 180a4c1..065cccd 100644
--- a/lib/helpers_.rb
+++ b/lib/helpers_.rb
@@ -21,3 +21,4 @@ include PreprocessHelper
include TimeHelper
include TileHelper
include AboutHelper
+include ReportsHelper