Merge branch 'master' into event/techz_talks

This commit is contained in:
Rien Maertens 2017-10-19 12:46:48 +02:00
commit 63b5428f7a
No known key found for this signature in database
GPG key ID: 943CAB70C511D23C
28 changed files with 356 additions and 181 deletions

2
.gitignore vendored
View file

@ -18,3 +18,5 @@ node_modules/
*.iml
.author-information
.fb_token

View file

@ -7,6 +7,10 @@ cache:
- output
- tmp
branches:
only:
- master
rvm:
- 2.3.1
notifications:
@ -23,4 +27,6 @@ script:
after_success:
- mv deploy_key ~/.ssh/id_rsa
- chmod 600 ~/.ssh/id_rsa
- '[[ $TRAVIS_PULL_REQUEST == "false" ]] && [[ $TRAVIS_BRANCH == "master" ]] && bundle exec nanoc --env=prod deploy public'
- chmod +x ./deploy.sh
- echo -e "Host $TRAVIS_PULL_REQUEST.zeus.werthen.com\n\tStrictHostKeyChecking no\n" >> ~/.ssh/config
- ./deploy.sh

View file

@ -31,7 +31,11 @@ For manual deployment, run
bundle exec nanoc deploy --target public
```
## Posts
## Events
Events can be fetched from facebook using `nanoc fetch [facebook event id]`. A file named `.fb_token` containing an app token for facebook must be present.
## Blogposts
Posts should be written in [kramdown](http://kramdown.gettalong.org/index.html), a markdown superset which has a very complete [syntax guide](http://kramdown.gettalong.org/syntax.html).

4
Rules
View file

@ -88,6 +88,10 @@ compile '/blog/*/*', rep: :text do
filter :strip_html
end
compile '/blog/*/*', rep: :html do
filter :kramdown
end
#
# PROJECTS
#

30
commands/fetch.rb Normal file
View file

@ -0,0 +1,30 @@
# frozen_string_literal: true
require 'net/http'
require 'json'
usage 'fetch [facebook event id]'
aliases :f
summary 'Fetch an event from facebook'
description 'Fetch an event from facebook'
run do |_opts, args, _cmd|
fb_token = File.read('.fb_token')
event_id = args[0]
uri = URI("https://graph.facebook.com/v2.10/#{event_id}?fields=cover,name,description,start_time,place,end_time&access_token=#{fb_token}")
o = JSON.parse(Net::HTTP.get(uri))
puts <<~EOS
---
title: "#{o['name']}"
description: #Fill in
time: #{o['start_time']}
end: #{o['end_time']}
location: #{o['place']['name']}
banner: #{o['cover']['source']}
created_at: #Fill in
facebook: 'https://www.facebook.com/events/#{event_id}/'
---
#{o['description']}
EOS
end

View file

@ -4,99 +4,4 @@ title: About
order: 0
narrow_page: true
---
<%= render '/partials/_about_sub_navbar.*', selected: 'about' %>
<h1 class="title is-1 has-text-centered">Over Zeus WPI</h1>
<div class="content">
<p>
Zeus WPI is de werkgroep informatica van de Universiteit Gent. Oorspronkelijk stond WPI voor Werkgroep Publieke Informatica en hostten wij de eerste mailserver van de UGent.
</p>
<p>
Wij zijn studenten die het gebruik van Free and Open Source Software (FOSS) promoten, lessen geven over nuttige software als LaTeX en introducties geven tot programmeertalen zoals Python, Ruby of Rust. Daarnaast bieden we ook enkele diensten aan zoals shell-accounts, web-hosting, git-repositories, enz. Doorheen het academiejaar engageren we ons ook in verschillende projecten, zo zijn we sinds enkele jaren verantwoordelijk voor het telsysteem van de <a href="http://www.12urenloop.be/">12urenloop</a> of ondersteunen we het <a href="http://www.fkgent.be/">FaculteitenKonvent</a> bij ICT-projecten.
</p>
<p>
Iedereen is welkom bij Zeus WPI, ook al studeer je geen informatica. Het enige wat je nodig hebt is een gezonde dosis interesse en een beetje geeky aanleg.
</p>
<h2>Het bestuur</h2>
<p>
Het bestuur zorgt ervoor dat alle wieltjes blijven draaien en organiseert regelmatig activiteiten voor de leden.
Het bestuur voor het academiejaar <%= pretty_year @config[:academic_year] %> van Zeus WPI is:
</p>
<table class="table">
<thead>
<tr>
<th>Functie</th>
<th>Naam</th>
<th>E-mail</th>
<th></th>
</tr>
</thead>
<tbody>
<% current_bestuur.each do |lid| %>
<tr>
<td>
<%= lid[:rol] %>
</td>
<td>
<%= lid[:naam] %>
</td>
<td>
<%= lid[:mail] %>
</td>
<td>
<a href="mailto:<%= lid[:mail] %>">
<%= fa :envelope %>
</a>
</td>
</tr>
<% end %>
</tbody>
</table>
<h2>Zeus waar? Zeus daar!</h2>
<p>
Zeus WPI heeft een lokaal in de kelder van gebouw S9 op campus de Sterre, die door de leden liefkozend “de kelder” genoemd wordt. Daar staat het volledige computerpark van Zeus WPI.
</p>
<p>Zeus bereik je zo:</p>
<ul>
<li>
kom naar de kelder en spring eens binnen (ons vinden doe je <a href="https://soleway.ugent.be/routes/4370"> hier</a>).
</li>
<li>
stuur een mailtje naar <a href="mailto:bestuur@zeus.ugent.be">het bestuur</a>
</li>
<li>
join ons <a href="https://zeuswpi.slack.com/">Slack team</a> (via *ugent.be mail of invite)
</li>
<li>
stuur een gele briefkaart naar “Zeus WPI Krijgslaan 281, S9 9000 Gent”
</li>
<li>
blijf op de hoogte via onze <a href="http://lists.zeus.ugent.be/mailman/listinfo/leden">mailinglist</a>
</li>
<li>
bezoek ons <a href="irc://wina.ugent.be/#zeus">IRC-kanaalserver</a>
</li>
<li>
bel naar <a href="tel://+3292644751">09 264 4751</a> (intern: 4751)
</li>
<li>
stort op BE32 9799 9370 6502 (BIC: ARSP BE 22)
</li>
<li>
volg ons op Twitter: <a href="http://twitter.com/ZeusWPI">@ZeusWPI</a>
</li>
<li>
word fan op <a href="https://www.facebook.com/zeus.wpi">Facebook</a>
</li>
</ul>
<iframe src="https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d1156.8611760710044!2d3.7102397000000003!3d51.023149499999995!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x47c373c271502d9b%3A0x49fd54f81cafeb5f!2sZeus+WPI!5e0!3m2!1sen!2sbe!4v1481415854540" height="450" style="border:0;width:100%" allowfullscreen></iframe>
</div>
<meta http-equiv="refresh" content="0; url=/about/about">

67
content/about/about.erb Normal file
View file

@ -0,0 +1,67 @@
---
narrow_page: true
---
<%= render '/partials/_about_sub_navbar.*', selected: 'about' %>
<h1 class="title is-1 has-text-centered">About Zeus WPI</h1>
<div class="content">
<p>
Zeus WPI is the student association for Computer Science at Ghent University.
Our goal is to provide a stimulating environment for motivated students looking to expand their skills by engaging in interesting real-world projects.
</p>
<p>
We organize various tech related talks by experts (eg. professors, PhD's, Richard Stallman, Julia Reda, ...), hands-on coding events and introductory lectures for cool technologies.
Together we build interesting applications for Ghent University students (<a href='https://hydra.ugent.be/'>Hydra</a>), for <a href='http://www.fkgent.be/'>FaculteitenKonvent</a> and <a href='https://12urenloop.be/'>12Urenloop</a>, and ofcourse for ourselves.
</p>
<p>
Be sure to check out the <a href='../../projects'>project page</a>!
</p>
<p>
Everybody is welcome at Zeus WPI, even if you don't study computer science. The only requirement is a healthy dose of motivation and some (toleration for) geekyness.
</p>
<h2>The board</h2>
<p>
The board is the oil in the machine and is the driving force behind the organization of events and projects.
The Zeus WPI board for the <%= pretty_year @config[:academic_year] %> academic year is:
</p>
<table class="table">
<thead>
<tr>
<th>Function</th>
<th>Name</th>
<th>E-mail</th>
<th></th>
</tr>
</thead>
<tbody>
<% current_bestuur.each do |lid| %>
<tr>
<td>
<%= lid[:rol] %>
</td>
<td>
<%= lid[:naam] %>
</td>
<td>
<%= lid[:mail] %>
</td>
<td>
<% if lid[:mail] %>
<a href="mailto:<%= lid[:mail] %>">
<%= fa :envelope %>
</a>
<% end %>
</td>
</tr>
<% end %>
</tbody>
</table>
</div>

49
content/about/contact.erb Normal file
View file

@ -0,0 +1,49 @@
---
narrow_page: true
---
<%= render '/partials/_about_sub_navbar.*', selected: 'contact' %>
<h1 class="title is-1 has-text-centered">Contact</h1>
<div class="content">
<p>
Zeus WPI is located in the basement of the S9 building on Campus Sterre, by it's members often named “de kelder”.
</p>
<p>Reach us:</p>
<ul>
<li>
come to “de kelder” and say hi! (find us <a href="https://soleway.ugent.be/routes/4370"> here</a>).
</li>
<li>
mail <a href="mailto:bestuur@zeus.ugent.be">the board</a> (bestuur@zeus.ugent.be), or some <a href="../about"> specific members </a>
</li>
<li>
join our <a href="https://zeuswpi.slack.com/">Slack team</a> (by *ugent.be mail or invite)
</li>
<li>
send a yellow postcard “Zeus WPI Krijgslaan 281, S9 9000 Gent”
</li>
<li>
keep up to date trough our <a href="http://lists.zeus.ugent.be/mailman/listinfo/leden">mailinglist</a>
</li>
<li>
check out our <a href="irc://wina.ugent.be/#zeus">IRC-channel</a>
</li>
<li>
call us at <a href="tel://+3292644751">09 264 4751</a> (intern: 4751)
</li>
<li>
deposit at BE32 9799 9370 6502 (BIC: ARSP BE 22)
</li>
<li>
follow us on Twitter: <a href="http://twitter.com/ZeusWPI">@ZeusWPI</a>
</li>
<li>
like us on <a href="https://www.facebook.com/zeus.wpi">Facebook</a>
</li>
</ul>
<iframe src="https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d1156.8611760710044!2d3.7102397000000003!3d51.023149499999995!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x47c373c271502d9b%3A0x49fd54f81cafeb5f!2sZeus+WPI!5e0!3m2!1sen!2sbe!4v1481415854540" height="450" style="border:0;width:100%" allowfullscreen></iframe>
</div>

View file

@ -6,13 +6,6 @@
padding:20px;
padding-top:0px;
.image-holder {
padding: 10px;
border: 1px solid lighten(gray, 30%);
width: 15%;
height: 15%;
}
.image {
vertical-align: baseline;
border: 1px solid gray;

View file

@ -16,6 +16,42 @@ a.box {
}
}
.event-tile {
display: flex;
align-items: center;
justify-content: center;
padding: 1em;
filter: grayscale(30%);
.event-content {
color: #4a4a4a;
height: 100%;
width: 100%;
background: rgba($tertiary, 0.2);
display: flex;
align-items: center;
justify-content: center;
.event-text {
display: inline-block;
font-size: 1.1em;
margin-left: 10px;
margin-right: 10px;
.event-time-loc {
margin-left: 10px;
margin-right: 10px;
}
}
.is-divider {
margin: 0.5em;
}
}
}
.centering {
display: flex;

View file

@ -13,8 +13,6 @@ $orange: $zeus-orange;
$blue: $zeus-blue;
$turquoise: #30D1B2;
$primary: $orange;
$family-sans-serif: 'Lato', sans-serif;
$link-visited: $orange;
@ -30,5 +28,9 @@ $cammie-controls-color: rgba(0, 0, 0, 0.60);
$event-padding: 10px;
$primary: $orange;
$secondary: $zeus-blue;
$tertiary: $box-colour;
// Default font size
// $size-normal: 15px;

View file

@ -3,6 +3,7 @@
@import "includes/variables";
@import "../../../node_modules/bulma/bulma";
@import "../../../node_modules/bulma-divider/divider";
.nav-right {
flex: none;

View file

@ -6,23 +6,26 @@ author: Rien
---
CenEka, een studentenvereniging van de faculteit Ingenieurswetenschappen en Architectuur, organiseert samen met Zeus WPI zes talks doorheen het jaar. Deze talks zullen gaan over wat nieuw en boeiend is in het huidige technologielandschap.
# Talk I: TBA
# Talk II: Nanopixel
# Talk I: Nanopixel
Datum: 07/11
[NanoPixel](https://www.nanopixel.be/nl) een bedrijf met als missie om hun diensten en producten te _revolutioneren_ en een bijzondere meerwaarde te creëren voor hun klanten. Ze komen uitleg geven over de toepassingen en de know-how van **3D Visuals** en in het bijzonder **Virtual Reality**.
Bekende projecten zijn de vele markups voor vastgoedmakelaars en de **VR Experience** die aangeboden wordt in Technopolis. Voor een voorsmaakje over wat er allemaal mogelijk is met deze technologiën, bekijk dan zeker het filmpje op [deze pagina](https://www.nanopixel.be/nl/projecten/project-detail/9/sterea).
Misschien vertrek jij wel uit deze presentatie met genoeg informatie en _know-how_ rechtstreeks uit de industrie om zelf onderzoek te doen, of zelfs zelf zo'n _stunning visuals_ te creëeren.
# Talk III: Internet Freedom
# Talk II: Internet Freedom
Datum: 23/11
[Ruben Verborg](https://ruben.verborgh.org) (IDLab) begint met een introductie over het Web en Net Neutrality, een hot topic uit de Verenigde Staten waarvan het debat over heel de wereld werd gevoerd.
[Julia Reda](https://juliareda.eu/en/) (Europees Parlement) brengt de discussie dichter bij ons thuis en vertelt over de stand van zaken van hervorming van de auteursrechten op Europees niveau. Deze nieuwe wetten hebben een drastische invloed op de vrijheid op het Web binnen de EU.
# Talk IV: Joni Dambre
# Talk III: Joni Dambre
Meer info volgt in 2de semester.
# Talk V: Fredo De Smet
# Talk IV: Fredo De Smet
Meer info volgt in 2de semester.
# Talk VI: Delaware
# Talk V: Delaware
Meer info volgt in 2de semester.

View file

@ -3,7 +3,7 @@ title: 25h codenight
image: https://zeus.ugent.be/zeuswpi/FS1Hc2l8.png
description: 1 uur voor elk levensjaar van Zeus!
created_at: 11-10-2016
time: 1-11-2016
time: 01-11-2016 00:00
location: Therminal
banner: https://zeus.ugent.be/zeuswpi/vRX2hOYZ.png
locationlink: Hoveniersberg, Gent

View file

@ -0,0 +1,32 @@
---
title: 'Geeks, Attack! VI'
# image: 'https://zeus.ugent.be/zeuswpi/3iUXxjNp.png'
banner: 'https://zeus.ugent.be/zeuswpi/bhUOPbV6.png'
description: Zeus' zesde LAN-Party
created_at: 08-10-2017
time: '27-10-2017 16:00'
end: '28-10-2017 12:00'
location: 'Therminal, Hoveniersberg 24 9000 Gent'
locationlink: 'Therminal,Ghent Belgium'
facebook: 'https://www.facebook.com/events/1280929475288422/'
---
# Gamers, Assemble!
Je leest het goed, op **27 oktober 2017** vindt onze zesde editie van onze jaarlijkse LAN-Party plaats in **[Studentenhuis De Therminal](http://student.ugent.be/)** (Hoveniersberg 24, 9000 Gent).
Vanaf **16:00** kunnen jullie elkaars Nexus vernietigen in League of Legends, een Ancient ten val brengen in Dota 2, bommen ontmantelen in Counter Strike: Global Offensive, op ontzagwekkende snelheden door de maps van Trackmania rijden, en nog veel, veel meer.
# Geen computer bij?
Geen zorgen! We voorzien een aantal couch games zoals de Jackbox Party Packs, Nidhogg, Keep Talking and Nobody Explodes, ... Gewoonweg voor de sfeer en de gezelligheid afkomen is dus zeker een optie!
# Schrijf je in!
Door je in te schrijven krijgen wij een beter beeld van hoeveel volk we kunnen verwachten, wat we allemaal moeten voorzien, en welke competities we kunnen organiseren. **[Klik hier om je in te schrijven.](https://goo.gl/forms/MRWHUbCrNuHmWK4w2)**
# Praktisch
De deuren openen om 16:00\. We vragen €2 inkom, die gebruikt zal worden om de prijzenpot van onze competities aan te dikken. We voorzien ook een aantal runs naar een pizzeria, zodat je zo lang mogelijk aan je scherm gekluisterd kunt zitten. Drank zal ook aanwezig zijn om aan te kopen.
Uit ervaring weten we dat het soms wat kouder kan worden in de Therminal rondom die tijd, dus draag zeker een **trui** of iets dergelijks! We doen echter ons best om de verwarming in orde te krijgen.

View file

@ -0,0 +1,32 @@
---
title: "Hydra Introsessie & Codenight"
time: 2017-10-16T18:00:00+0200
end: 2017-10-16T23:59:00+0200
location: Zeus WPI
description: Word een Hydra-held in no time
created_at: '13-10-2017'
color: '#3454b4'
---
Join het team van de coolste app van de UGent!
# Wat
Zin om mee te werken? Op de Hydra codenight wordt je persoonlijk begeleid en geholpen door de developers achter de app. Zo fix je in no-time je eerste issue leer je op 1 avond door de volledige codebase wandelen. We maken er samen een productieve maar ook plezante avond van, en wie weet ben jij tegen volgend jaar 1 van de core-devs!
# Waarom
- Een cool team
- Een relevant project voor jou en je vrienden
- Ideale intro tot app-development
- Ideale ervaring voor app-development
# Praktisch
We beginnen officieel om **18u**, maar je mag komen wanneer je wilt. Alles gebeurt in de **Zeus kelder**. Probeer het project al eens werkende te krijgen op voorhand, of installeer de relevante programma's toch al (Android Studio en XCode (voor iOS)).
Er wordt achter eten gegaan door Zeusleden.
[<i class="fa fa-github"></i> Android ](https://github.com/ZeusWPI/hydra-android/)
[<i class="fa fa-github"></i> iOS ](https://github.com/ZeusWPI/hydra-iOS/)
~~ We proberen productieve coders wat in de watten te leggen ~~

View file

@ -0,0 +1,26 @@
---
title: De grote Zeus introductie quiz
image: https://zeus.ugent.be/zeuswpi/WBPaj2H1.jpeg
description: Leer ons kennen tijdens deze ludieke quiz!
created_at: 3-10-2017
time: '05-10-2017 17:45'
location: Zeus kelder
facebook: https://www.facebook.com/events/1892351817759801
locationlink: Zeus WPI, Krijgslaan, Ghent
---
#### Wat?
Een toffe quiz waarmee jullie beter gaan begrijpen wat Zeus is, wie we zijn, wat we doen en hoe we denken. Na de quiz eten we pizza en doen we een planetwars-toernooi.
#### Wanneer?
Donderdag 5 Oktober, om 17:45, maar iedereeen is reeds welkom in de kelder op voorhand!
#### Waarom?
Omdat Zeus de max is.
#### Wie?
Onze doelgroep bestaat voornamelijk uit eerstejaars Bachelor Informatica, maar ook alle anderen die wat meer over Zeus willen weten! Oude zakken zijn ook welkom.
Hopelijk tot dan!
Xoxo
Uw zeus event <3

View file

@ -1 +1 @@
<%= atom_feed %>
<%= atom_feed content_proc: Proc.new {|x| x.reps[:html].compiled_content} %>

11
deploy.sh Executable file
View file

@ -0,0 +1,11 @@
#! /bin/bash
echo "Pull Request: $TRAVIS_PULL_REQUEST"
echo "Branch: $TRAVIS_BRANCH"
if [[ $TRAVIS_PULL_REQUEST == "false" ]]; then
if [[ $TRAVIS_BRANCH == "master" ]]; then
bundle exec nanoc --env=prod deploy public
fi
else
rsync -aglpPrtvz --delete output/ "deploy@$TRAVIS_PULL_REQUEST.zeus.werthen.com:/var/www/html/$TRAVIS_PULL_REQUEST/"
fi

View file

@ -1,6 +1,7 @@
<div class="subnav tabs">
<ul>
<li class="<%= 'is-active' if @selected == 'about'%>"><a href="/about">Over</a></li>
<li class="<%= 'is-active' if @selected == 'about'%>"><a href="/about/about">About</a></li>
<li class="<%= 'is-active' if @selected == 'contact'%>"><a href="/about/contact">Contact</a></li>
<li class="<%= 'is-active' if @selected == 'statuten'%>"><a href="/about/statuten">Statuten</a></li>
<li class="<%= 'is-active' if @selected == 'historiek'%>"><a href="/about/historiek">Historiek</a></li>
<li class="is-disabled"><a>Verslagen (soon)</a></li>

View file

@ -1,39 +0,0 @@
<div class="box event-preview">
<div class="image-holder">
<img src="<%= event[:image]%>" alt="" class="image" />
</div>
<div class="box info">
<div class="title">
<a href="<%= relative_path_to(event) %>">
<%= event[:title] %>
</a>
</div>
<div class="location">
<a href="#">
<%= event[:location] %>
</a>
</div>
<div class="description">
<%= event[:description] %>
</div>
<div class="time">
<%= event[:time].strftime '%A %d %B %Y %H:%M' %>
</div>
</div>
<% if @main_event %>
<div class="box main-event">
<p>
<%= main_event[:title] %>
</p>
<ul>
<% sub_events(main_event).each do |sub_event| %>
<li class="<%= "active" if sub_event[:title] == (event[:title])%>" >
<%= sub_event[:title] %>
</li>
<% end %>
</ul>
</div>
<% end %>
</div>

View file

@ -1,32 +1,30 @@
<% if @event[:banner] %>
<a href="<%= @event.path %>" class="tile is-child box backgroundimg highlighted"
<a href="<%= @event.path %>" class="tile event-tile is-child box backgroundimg highlighted"
style="background-image:url('<%= @event[:banner] %>');">
<% elsif @event[:color] %>
<a href="<%= @event.path %>" class="tile is-child box backgroundimg highlighted"
<a href="<%= @event.path %>" class="tile event-tile is-child box backgroundimg highlighted"
style="background-image: linear-gradient(to top right,rgba(255,255,255,0),rgba(0,0,0,.60)); background-color:<%= @event[:color] %>;">
<% else %>
<a href="<%= @event.path %>" class="tile is-child box backgroundimg">
<a href="<%= @event.path %>" class="tile event-tile is-child box backgroundimg">
<% end %>
<div class="content">
<div class="columns">
<div class="column">
<h2>
<div class="content event-content">
<div class="event-text">
<h1 class="has-text-centered">
<%= @event[:title] %>
</h2>
</div>
<div class="column is-narrow">
<small>
<%= @event[:time].strftime('%A %d %B %Y %H:%M') %>
<br>
<%= @event[:location] %>
</small>
</div>
</div>
<div class="description">
</h1>
<div class="description has-text-centered">
<%= @event[:description] %>
</div>
<div class="teaser">
<%= get_teaser(@event) %>
<div class="is-divider"></div>
<div class="event-time-loc">
<%= fa :'clock-o' , fw: true %><%= @event[:time].strftime('%A %d %B, %H:%M') %>
<br>
<%= fa :'map-marker', fw: true %><%= @event[:location] %>
</div>
</div>
</div>
</a>

View file

@ -22,7 +22,7 @@ module EventsHelper
end
def academic_years_event_items
items.find_all('/events/*').map { |e| [e[:academic_year], e] }.sort_by(&:first)
items.find_all('/events/*').map { |e| [e[:academic_year], e] }.sort_by(&:first).reverse
end
def grouped_events

View file

@ -6,6 +6,7 @@ module FontAwesomeHelper
classes << 'fa-li' if opts[:li]
classes << "fa-stack-#{opts[:stack]}" if opts[:stack]
classes << 'fa-inverse' if opts[:inverse]
classes << 'fa-fw' if opts[:fw]
classes << opts[:class]
"<i class='#{classes.reject(&:nil?).join(' ')}'></i>"

View file

@ -16,7 +16,7 @@ module IcalHelper
e.dtstart = Icalendar::Values::DateTime.new item[:time], 'tzid' => tzid
e.dtend = Icalendar::Values::DateTime.new item[:end], 'tzid' => tzid if item[:end]
e.summary = item[:title]
e.description = item[:description] + "\n\n" + item.reps[:text].compiled_content
e.description = "#{item[:description]}\n\n#{item.reps[:text].compiled_content}"
e.location = item[:location]
e.url = @config[:base_url] + item.path

View file

@ -40,8 +40,13 @@ module PreprocessHelper
end
def convert_event_time_to_timestamps
all_events.each do |event|
@items.find_all('/events/*/*.md').each do |event|
# HACK: Strings in a format like "2017-10-05T20:45:00+0200" automatically get converted to Time
event[:time] = event[:time].to_s
event[:time] = DateTime.parse(event[:time])
event[:end] = event[:end].to_s if event[:end]
event[:end] = DateTime.parse(event[:end]) if event[:end]
end
end

5
package-lock.json generated
View file

@ -8,6 +8,11 @@
"version": "0.5.1",
"resolved": "https://registry.npmjs.org/bulma/-/bulma-0.5.1.tgz",
"integrity": "sha1-2ygxyUr+cyJQx7ElJ6e3kqTcnvg="
},
"bulma-divider": {
"version": "0.0.1",
"resolved": "https://registry.npmjs.org/bulma-divider/-/bulma-divider-0.0.1.tgz",
"integrity": "sha1-qcW1TwzgKg6FjTOPTlggN4dRKks="
}
}
}

View file

@ -7,6 +7,7 @@
"license": "MIT",
"repository": "https://github.com/ZeusWPI/zeus.ugent.be",
"dependencies": {
"bulma": "0.5.1"
"bulma": "0.5.1",
"bulma-divider": "~0.0.1"
}
}