diff --git a/.bundle/config b/.bundle/config new file mode 100644 index 0000000..37a9f45 --- /dev/null +++ b/.bundle/config @@ -0,0 +1,2 @@ +--- +BUNDLE_WITHOUT: "production" diff --git a/Checks b/Checks index 08a7f08..1a1d0bd 100644 --- a/Checks +++ b/Checks @@ -1,7 +1,8 @@ #!/usr/bin/env ruby # frozen_string_literal: true -deploy_check :elinks +# Re-enable this when cammie doesn't fuck up so much +# deploy_check :elinks # The w3c validators go offline often, not great for our build CI # deploy_check :html deploy_check :ilinks diff --git a/README.md b/README.md index 2991b0f..5622a05 100644 --- a/README.md +++ b/README.md @@ -28,6 +28,10 @@ For manual deployment, run bundle exec nanoc deploy --target public ``` +## Posts + +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). + ## Events Example structure: diff --git a/Rules b/Rules index b894eac..bb85efe 100644 --- a/Rules +++ b/Rules @@ -45,16 +45,6 @@ compile '/feed.xml' do write '/feed.xml' end -# -# CAMMIE -# -compile '/cammie.*' do - layout '/default.*' - filter :erb - - filter :relativize_paths, type: :html -end - # # ARCHIVES # @@ -142,7 +132,7 @@ compile '/assets/stylesheets/**/*.scss' do filter :sass, syntax: :scss end -passthrough '/assets/images/*.{png}' +passthrough '/assets/images/*.{png,svg}' # # @@ -167,7 +157,11 @@ route '/events/**/*', rep: :ical do end route '/**/*.{erb,html,md}' do - "#{item.identifier.without_ext}.html" + if item.identifier.without_ext.to_s =~ %r{/index$} + "#{item.identifier.without_ext}.html" + else + "#{item.identifier.without_ext}/index.html" + end end route '/**/*' do diff --git a/content/404.erb b/content/404.erb index 6d3a384..5e07c0f 100644 --- a/content/404.erb +++ b/content/404.erb @@ -2,7 +2,7 @@ title: 404 - Page not found --- - +

- Page not found - diff --git a/content/assets/scripts/cammie.coffee b/content/assets/scripts/cammie.coffee index e69de29..912d754 100644 --- a/content/assets/scripts/cammie.coffee +++ b/content/assets/scripts/cammie.coffee @@ -0,0 +1,32 @@ +# Reworked version of the underscorejs debounce +debounce = (func, wait, initial = () -> ) -> + timeout = false + () -> + context = this + args = arguments + later = () -> + timeout = null + func.apply context, args + callNow = !timeout + clearTimeout timeout + timeout = setTimeout later, wait + initial.apply context, args if callNow + +# Display controls when moving mouse +$ "#cammie-ctrls" + .mousemove debounce () -> + $ this + .removeClass 'display' + , 3000, () -> + $ this + .addClass 'display' + +# Cammie controls +$ '.ctrl' + .click -> + $context = $ this + $.ajax "//kelder.zeus.ugent.be/webcam/cgi/ptdc.cgi", + data: + command: $context.data 'command' + posX: $context.data 'x' + posY: $context.data 'y' \ No newline at end of file diff --git a/content/assets/stylesheets/includes/cammie.scss b/content/assets/stylesheets/includes/cammie.scss index 50a2685..d8f6030 100644 --- a/content/assets/stylesheets/includes/cammie.scss +++ b/content/assets/stylesheets/includes/cammie.scss @@ -1,68 +1,52 @@ -#cammie-container { - display: flex; - justify-content: center; - +#cammie-body { position: relative; - width: 100%; -} - -.fullpage { - min-width: 100%; - min-height: 100%; - display: flex; - flex-direction: column; - justify-content: center; - background-color: black; -} - -#cammie-section { - position: relative; - height: 100%; - #cammie-body { - position: relative; - height: 100%; - } - - .ctrl { - background-color: $cammie-controls-color; - color: white; - z-index: 100; - position: absolute; - - // Chevron centering + #cammie-ctrls { display: flex; - justify-content: center; - align-items: center; + justify-content: space-between; + flex-direction: column; + height: 100%; + width: 100%; - &:hover { - background-color: $zeus_orange; - z-index: 200; - cursor: pointer; + transition: opacity 1s ease-in-out; + z-index: 5; + opacity: 0; + + position: absolute; + top: 0; + left: 0; + + .columns { + margin: 0; + } + + .center { + flex: 1; + } + + &.display { + transition: opacity .5s ease-in-out; + opacity: 1; + } + + .ctrl { + height: 100%; + + // Center arrows + display: flex; + justify-content: space-around; + align-items: center; + + background-color: $cammie-controls-color; + color: white; + &:hover { + background-color: $zeus_orange; + cursor: pointer; + } + + &.diag i { + transform: rotate(45deg); + } } } - - .left { - height: 100%; - width: 50px; - left: 0; - } - - .right { - height: 100%; - width: 100px; - right: 0; - } - - .up { - height: 100px; - width: 100%; - top: 0; - } - - .down { - height: 100px; - width: 100%; - bottom: 0; - } } diff --git a/content/assets/stylesheets/includes/eventpage.scss b/content/assets/stylesheets/includes/eventpage.scss new file mode 100644 index 0000000..7eaccc2 --- /dev/null +++ b/content/assets/stylesheets/includes/eventpage.scss @@ -0,0 +1,21 @@ +.google-maps { + position: relative; + height: 400px; + overflow: hidden; + + iframe { + position: absolute; + top: 0; + left: 0; + width: 100% !important; + height: 400px; + } +} + +.banner-image{ + justify-content: center; + display: flex; + img{ + height: 256px; + } +} diff --git a/content/assets/stylesheets/includes/events.scss b/content/assets/stylesheets/includes/events.scss index f49e964..6fcabf2 100644 --- a/content/assets/stylesheets/includes/events.scss +++ b/content/assets/stylesheets/includes/events.scss @@ -1,3 +1,86 @@ -.subevent { - margin-left: 20px; +.divider { + align-items:flex-start; + border: 1px solid lighten(gray, 45%); + width: 67%; + margin: 0 30% 0 3%; +} + +.box.event-preview { + border-radius: 0px; + display: flex; + box-shadow : none; + margin: 0px; + padding:20px; + padding-top:0px; + + // border-top: 1px solid lighten(gray, 40%); + + .image-holder { + //border-radius: 50%; + padding: 10px; + border: 1px solid lighten(gray, 30%); + width: 15%; + height: 15%; + } + + .image { + //border-radius: 50%; + vertical-align: baseline; + border: 1px solid gray; + } + + .info { + padding:20px; + padding-top:0px; + box-shadow : none; + width: 60%; + + .title { + font-size: 1.7em; + font-weight: 500; + margin-bottom: 0; + a { + color: darken(gray, 20%); + } + a:hover { + border-bottom: none; + color: #FF7F00; + } + } + + .location { + font-size: .9em; + a { + color: lighten(gray, 10%); + } + } + + .description { + font-size: 1.7em; + font-weight: 200; + color: #FF7F00; + } + + .time { + font-size: 1.6em; + font-weight: 400; + } + } + + .main-event { + border-left: 1px solid gray; + border-radius: 0px; + box-shadow: none; + height: 8em; + // display: flex; + // align-items: center; + + ul { + padding-left: .7em; + } + + .active { + color: #FF7F00; + } + } } diff --git a/content/assets/stylesheets/includes/general.scss b/content/assets/stylesheets/includes/general.scss index 7fe4317..bc8d330 100644 --- a/content/assets/stylesheets/includes/general.scss +++ b/content/assets/stylesheets/includes/general.scss @@ -1,7 +1,3 @@ -html, body { - height: 100%; - width: 100%; -} .fa-ul { list-style: none !important; @@ -10,12 +6,21 @@ html, body { } } +.has-text-justified { + text-align: justify; +} + #navbar { align-items: flex-end; + #inline-logo { + min-width: 38.703px; + } #logo-link { #logo { + padding-top: 10px; + padding-left: 10px; width: 100px; } } @@ -26,7 +31,7 @@ html, body { transition: 0.2s; font-variant: small-caps; - font-size: 1.25em; + font-size: 1.15em; &:hover { transition: 0.2s; @@ -35,7 +40,8 @@ html, body { } } -footer { +footer.footer { + padding-bottom: 40px; .fa { font-size: inherit; text-align: inherit; diff --git a/content/assets/stylesheets/includes/tiles.scss b/content/assets/stylesheets/includes/tiles.scss index 14a3d75..4e95000 100644 --- a/content/assets/stylesheets/includes/tiles.scss +++ b/content/assets/stylesheets/includes/tiles.scss @@ -1,11 +1,20 @@ -.notification.is-info, -.notification.is-success, -.notification.is-primary { - .content { - color: white; - h1 { - color: white; - font-weight: bold; +a.box { + color: #000; +} + +#homepage { + .box { + background-color: $box-colour; + + &.highlighted { + background-color: $highlighted-box-colour; + color: $highlighted-text-colour; + + .content { + h1 { + color: white; + } + } } } } diff --git a/content/assets/stylesheets/includes/variables.scss b/content/assets/stylesheets/includes/variables.scss index 10f3021..f8b9d48 100644 --- a/content/assets/stylesheets/includes/variables.scss +++ b/content/assets/stylesheets/includes/variables.scss @@ -1,6 +1,17 @@ -$zeus_orange: #FF7F00; -$event-padding: 10px; +// Colours +$zeus-orange: #FF7F00; $navbar-border-color: #CCC; $event-border-color: #DDD; +$orange: $zeus-orange; +$primary: $orange; + +$link-visited: inherit; + +$box-colour: #EEE; +$highlighted-box-colour: $zeus-orange; +$highlighted-text-colour: white; +$highlighted-link-colour: #222324; $cammie-controls-color: rgba(0, 0, 0, 0.60); + +$event-padding: 10px; diff --git a/content/assets/stylesheets/main.scss b/content/assets/stylesheets/main.scss index 7d3060e..d3f019c 100644 --- a/content/assets/stylesheets/main.scss +++ b/content/assets/stylesheets/main.scss @@ -1,12 +1,8 @@ -$zeus-orange: #FF7F00; -$orange: $zeus-orange; -$primary: $orange; -$link-visited: $orange; - -@import url(https://fonts.googleapis.com/css?family=Open+Sans:300,400,700); -$family-sans-serif: 'Open Sans', sans-serif; +@import "includes/variables"; +@import 'https://fonts.googleapis.com/css?family=Lato:300,400'; +$family-sans-serif: 'Lato', sans-serif; @import "../../../node_modules/bulma/bulma"; @@ -14,11 +10,23 @@ $family-sans-serif: 'Open Sans', sans-serif; flex: none; } -@import "includes/variables"; +// Sticky footer +body.site { + display: flex; + min-height: 100vh; + flex-direction: column; + + .wrapper { + flex: 1; + } +} + + @import "includes/cammie"; @import "includes/events"; @import "includes/tiles"; @import "includes/blogpost"; @import "includes/general"; +@import "includes/eventpage"; @import "includes/404"; @import "includes/projects"; \ No newline at end of file diff --git a/content/cammie.erb b/content/cammie.erb index 0495361..1ca2771 100644 --- a/content/cammie.erb +++ b/content/cammie.erb @@ -2,74 +2,60 @@ navigable: true title: Cammie --- - -

- -
- <%= render '/partials/_navbar.*' %> -
- - - -
-
-
-
- diag up left + +
+
+
+ <%= fa 'chevron-circle-left' %> +
+
+ <%= fa 'chevron-circle-up' %> +
+
+ <%= fa 'chevron-circle-up' %>
-
-
- up + +
+
+ <%= fa 'chevron-circle-left' %> +
+
+ +
+
+ <%= fa 'chevron-circle-right' %>
-
-
- diag up right + +
+
+ <%= fa 'chevron-circle-down' %> +
+
+ <%= fa 'chevron-circle-down' %> +
+
+ <%= fa 'chevron-circle-right' %>
-
-
left
-
home?
-
right
-
-
-
diag down left
-
down
-
diag down right
-
-
- -
-
+
diff --git a/content/events.erb b/content/events.erb index 107c531..01c0757 100644 --- a/content/events.erb +++ b/content/events.erb @@ -9,17 +9,13 @@ title: Events <% all_events.each do |event| %> -
- - <%= event[:title] %> - - <% sub_events(event).each do |sub_event| %> -
- - <%= sub_event[:title] %> - -
+ + <% if (sub_events(event)).empty? %> + <%= render '/partials/_event_preview.*', event: event %> + <% else %> + <% sub_events(event).each do |sub_event| %> + <%= render '/partials/_event_preview.*', event: sub_event, main_event: event %> + <% end %> <% end %> -
<% end %> diff --git a/content/events/15-16/awk.md b/content/events/15-16/awk.md index bf4c6e0..5207aba 100644 --- a/content/events/15-16/awk.md +++ b/content/events/15-16/awk.md @@ -5,6 +5,8 @@ description: Een AWK-les voor AWK gerelateerde dingen created_at: 01-02-2016 time: 23-02-2016 location: Auditorium A1, Campus Sterre, Gebouw S9 +locationlink: Zeus WPI,Ghent Belgium +description: Dit is een description van het awk event! --- Op **dinsdag 23 februari 18:00** (na de les Scriptingtalen) in **Auditorium A1** organiseren we een **AWK-les** gegeven door **professor Peter Dawyndt**. diff --git a/content/events/15-16/bottlebats/intro.md b/content/events/15-16/bottlebats/intro.md index e610340..c410563 100644 --- a/content/events/15-16/bottlebats/intro.md +++ b/content/events/15-16/bottlebats/intro.md @@ -2,4 +2,5 @@ title: Bottle Bats Introductie time: 12-3-16 location: Grace Hopper +description: Dit is een description! --- diff --git a/content/events/15-16/bottlebats/test.md b/content/events/15-16/bottlebats/test.md new file mode 100644 index 0000000..9c05546 --- /dev/null +++ b/content/events/15-16/bottlebats/test.md @@ -0,0 +1,6 @@ +--- +title: test +time: 12-3-16 +location: Grace Hopper +description: Dit is een description! +--- diff --git a/content/events/16-17/LAN.md b/content/events/16-17/LAN.md new file mode 100644 index 0000000..6cb52d9 --- /dev/null +++ b/content/events/16-17/LAN.md @@ -0,0 +1,15 @@ +--- +title: Geeks, Attack! V +banner: https://scontent.xx.fbcdn.net/v/t1.0-9/13903431_1277596932251344_3927837466166230371_n.jpg?oh=bdda0d18a635c49893a097fba6aa99b9&oe=587C7886 +description: Zeus' vijfde LAN-Party +created_at: 13-09-2016 +time: 4-11-2016 +location: Therminal, Hoveniersberg 24 9000 Gent +locationlink: Therminal,Ghent Belgium +description: Zeus' vijfde LAN-Party +--- + +De vijfde editie van Zeus WPI's LAN-Party komt eraan! +Hou alvast de datum vrij! + +Wij houden jullie op de hoogte! diff --git a/content/index.erb b/content/index.erb index 35b85b6..512a76c 100644 --- a/content/index.erb +++ b/content/index.erb @@ -1,80 +1,84 @@ -
-
-
+<% content_for :head do %> + + + +<% end %> + +
+
+
<%= render '/partials/_tile.*', article: all_events[0] %>
-
-
-
-
- <%= render '/partials/_tile.*', article: all_events[1] %> +
+
+ <%= render '/partials/_tile.*', article: all_events[1], htmlclass: "highlighted" %>
-
-
-
- IDK LOL -
-
-
-
-
- <%= fa 'wikipedia-w' %> +
+
+ IDK LOL
-
-
- <%= fa 'video-camera' %> -
-
-
-
-
-
- <%= fa 'github' %> -
-
-
-
- <%= fa 'facebook-official' %> -
-
-
-
-
-
-
-
-

<%= sorted_articles.first[:title] %>

- <%= sorted_articles.first[:description] %> -
-
-
-
-
-
-

- Numero uno: @werthen -

-

- Numero dos: @myncke -

-

- Numero tres: @iepoev -

-

- Numero quatro: @becousae -

-
-
-
-
-
- GITHUB +
+
+
+ <%= fa 'wikipedia-w' %>
-
-
- GITHUB +
+
+ <%= fa 'video-camera' %> +
+
+
+
+
+
+ <%= fa 'github' %> +
+
+
+
+ <%= fa 'facebook-official' %> +
+
+
+
+
+
+
+
+

<%= sorted_articles.first[:title] %>

+ <%= sorted_articles.first[:description] %> +
+
+
+
+
+
+

+ Numero uno: @werthen +

+

+ Numero dos: @myncke +

+

+ Numero tres: @iepoev +

+

+ Numero quatro: @becousae +

+
+
+
+
+
+ GITHUB +
+
+
+
+ GITHUB +
diff --git a/content/posts/15-16/bestuur2016.md b/content/posts/15-16/bestuur2016.md new file mode 100644 index 0000000..c044474 --- /dev/null +++ b/content/posts/15-16/bestuur2016.md @@ -0,0 +1,17 @@ +--- +title: Bestuur 2016-2017 +created_at: 01-04-2016 +description: Het nieuwe bestuur is verkozen! +--- + +Zoals reeds bekend gemaakt op onze [Facebook-pagina](https://www.facebook.com/zeus.wpi/) is het nieuwe bestuur voor academiejaar 2016-2017 verkozen! + +| Voorzitter | Wout Schellaert | +| Vicevoorzitter | Isaura Claeys | +| Penningmeester | Jeroen De Clerck | +| Event Manager | Eloïse Piret | +| Systeemadministrator | Rien Maertens, Lorin Werthen | +| Project Manager | Feliciaan De Palmenaer | +{: .table } + +**We wensen ze veel succes!** diff --git a/content/posts/15-16/xtext.md b/content/posts/15-16/xtext.md deleted file mode 100644 index fef63f1..0000000 --- a/content/posts/15-16/xtext.md +++ /dev/null @@ -1,16 +0,0 @@ ---- -title: Xtext Workshop -created_at: 01-04-2016 -description: Xtext is een ding, en heeft een workshop ---- - -Op **26 april om 18:00 in Auditorium A2, Campus Sterre, Gebouw S9** organiseren we een workshop over [Xtext](https://eclipse.org/Xtext/). **Xtext** is een framework om nieuwe domein-specifieke computertalen (**DSLs**) mee te ontwerpen. Een **DSL** kan een nieuwe programmeertaal zijn, maar is meestal erg specifiek: bijvoorbeeld voor het besturen van robots, voor controle van wasmachines of voor sturing van de on-board computer in auto’s. Mensen die deze machines maken zijn vaak geen programmeurs, en zij kunnen veel vlotter werken met een DSL dan met een algemene programmeertaal. - -Met **Xtext** maak je **je eigen taal, de compiler en de ontwikkelomgeving in één keer.** - -In deze workshop geven wij in samenwerking met [**Sigasi**](http://www.sigasi.com/) eerst een overzicht over waarom je een DSL wil gebruiken en hoe Xtext werkt. Vervolgens demonstreren we Xtext met een eenvoudig voorbeeld. - -Daarna kan je zelf een Eclipse plugin ontwikkelen met behulp van Xtext voor je eigen DSL. Wij zijn er om jullie te helpen. - -_Over Sigasi: -Sigasi is een Gentse Startup die Xtext gebruikt voor de ontwikkeling van Eclipse plugins voor VHDL en Verilog. Dit zijn talen die gebruikt worden voor het ontwerpen en testen van chips._ diff --git a/layouts/default.erb b/layouts/default.erb index 277102a..5cb0b63 100644 --- a/layouts/default.erb +++ b/layouts/default.erb @@ -7,8 +7,14 @@ Zeus WPI | <%= item[:title] || 'Werkgroep Informatica van de Universiteit Gent' %> + + + + + + <%= asset :css, :main %> @@ -32,7 +38,10 @@ <%= content_for(@item, :head) %> - - <%= yield %> + +
+ <%= yield %> +
+ <%= render '/partials/_footer.*' %> diff --git a/layouts/eventpost.erb b/layouts/eventpost.erb index 4573d95..d895d83 100644 --- a/layouts/eventpost.erb +++ b/layouts/eventpost.erb @@ -5,42 +5,55 @@ <% end %> -
+
- <%= render '/partials/_navbar.*' %> + <%= render '/partials/_navbar.*', zeus_logo_color: :white %>
-
+
+
-

- <%= item[:title] %> -

-

-
    -
  • <%= fa 'clock-o', li: true %><%= item[:time] %>
  • -
  • <%= fa 'globe', li: true %><%= item[:location] %>
  • -
-

+
+ +
+

+ + <%= item[:title] %> + +

+

+ <%= item[:description] %> +

+

+

    +
  • <%= fa 'clock-o', li: true %><%= item[:time] %>
  • +
  • <%= fa 'globe', li: true %><%= item[:location] %>
  • +
+

+
+ + + +
-
- -
+
<%= yield %>
+
+
+ +
+
diff --git a/layouts/generic.erb b/layouts/generic.erb index 2e02fbb..ae4c54a 100644 --- a/layouts/generic.erb +++ b/layouts/generic.erb @@ -6,18 +6,3 @@ <%= yield %>
- diff --git a/layouts/partials/_event_preview.erb b/layouts/partials/_event_preview.erb new file mode 100644 index 0000000..3b8d715 --- /dev/null +++ b/layouts/partials/_event_preview.erb @@ -0,0 +1,39 @@ +
+
+ +
+ +
+ + +
+ <%= event[:description] %> +
+
+ <%= event[:time] %> +
+
+ + <% if @main_event %> +
+

+ <%= main_event[:title] %> +

+
    + <% sub_events(main_event).each do |sub_event| %> +
  • " > + <%= sub_event[:title] %> +
  • + <% end %> +
+
+ <% end %> +
diff --git a/layouts/partials/_footer.erb b/layouts/partials/_footer.erb new file mode 100644 index 0000000..0e0f7a5 --- /dev/null +++ b/layouts/partials/_footer.erb @@ -0,0 +1,15 @@ + diff --git a/layouts/partials/_navbar.erb b/layouts/partials/_navbar.erb index 47c499f..358ae2c 100644 --- a/layouts/partials/_navbar.erb +++ b/layouts/partials/_navbar.erb @@ -2,12 +2,15 @@