Merge branch 'master' into revamp-about

This commit is contained in:
Wout Schellaert 2017-10-12 00:37:27 +02:00
commit bac1448046
18 changed files with 171 additions and 76 deletions

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
#

27
commands/fetch.rb Normal file
View file

@ -0,0 +1,27 @@
# 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')
uri = URI("https://graph.facebook.com/v2.10/#{args[0]}?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']}"
time: #{o['start_time']}
location: #{o['place']['name']}
end: #{o['end_time']}
banner: #{o['cover']['source']}
---
#{o['description']}
EOS
end

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,34 @@ 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;
}
.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

@ -0,0 +1,31 @@
---
title: 'TeCH Talkz'
created_at: 30-09-2017
description: CenEka en Zeus WPI organiseren samen een reeks talks waarbij experten komen spreken over 'hot topics' in de technologiewereld.
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: 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 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 III: Joni Dambre
Meer info volgt in 2de semester.
# Talk IV: Fredo De Smet
Meer info volgt in 2de semester.
# Talk V: Delaware
Meer info volgt in 2de semester.

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

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

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="">
<%= 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

@ -1,6 +1,11 @@
module ArchiveHelper
def academic_years
Set.new(items.find_all('/blog/*/*').map { |i| i.identifier.to_s[/\d\d-\d\d/] }).to_a
# Set.to_a to prevent duplicates
Set.new(items
.find_all('/blog/*/*')
.map { |i| i.identifier.to_s[/\d\d-\d\d/] })
.to_a
.sort
end
def academic_years_blog_items

View file

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

@ -1,8 +1,10 @@
module PreprocessHelper
def ignore_old_blogposts
@items.delete_if do |item|
next unless item.identifier.to_s.start_with?('/blog/')
!item.identifier.to_s.start_with?('/blog/16-17/')
path = item.identifier.to_s
next unless path.start_with?('/blog/')
year = path.gsub(%r{/blog/(\d\d)-\d\d/.*}, '\1').to_i
year < 16
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"
}
}