From 3f138bf0551c780b4ac6cea84bc552687f061ac6 Mon Sep 17 00:00:00 2001 From: Bram van der Veen <96aa48@gmail.com> Date: Sun, 14 Jun 2015 18:45:34 +0200 Subject: [PATCH] Made a lot of changes : Added 'changed' and 'free' hour classes Did overal tweaks Moved around some jade for better consistency --- resources/jade/header.jade | 6 ++ resources/jade/homepage.jade | 13 +--- resources/jade/schedule.jade | 17 ++++-- resources/jade/search.jade | 3 + resources/js/script.js | 9 ++- resources/less/style.less | 112 ++++++++++++++++++++++++----------- schedule.js | 2 +- web.js | 5 +- 8 files changed, 111 insertions(+), 56 deletions(-) create mode 100644 resources/jade/search.jade diff --git a/resources/jade/header.jade b/resources/jade/header.jade index fe40d89..d897ba7 100644 --- a/resources/jade/header.jade +++ b/resources/jade/header.jade @@ -6,3 +6,9 @@ html script(type="text/javascript", src="http://code.jquery.com/jquery-1.11.3.min.js") script(type="text/javascript", src="/js/script.js") + body + div.bar + + h1#title(class=!url ? 'big' : '') Werkmanrooster + span V + span 5 diff --git a/resources/jade/homepage.jade b/resources/jade/homepage.jade index 3de1182..f714a81 100644 --- a/resources/jade/homepage.jade +++ b/resources/jade/homepage.jade @@ -1,12 +1,5 @@ include header -body - div.bar - - div.homepage - h1 Werkmanrooster - span V - span 5 - - input#search(type="text", name="searchterm", placeholder="Je naam, id, klassennaam, docentencode, lokaalcode") - button Zoeken +div.homepage + input.search(type="text", name="searchterm", placeholder="Je naam, id, klassennaam, docentencode, lokaalcode") + button.search Zoeken diff --git a/resources/jade/schedule.jade b/resources/jade/schedule.jade index d76267b..545c6e6 100644 --- a/resources/jade/schedule.jade +++ b/resources/jade/schedule.jade @@ -1,10 +1,17 @@ +//- schedule.jade + include header +include search div.schedule - each day in json + each day in match.json div.day each hour in day - div.hour - span.teacher= hour.teacher - span.chamber= hour.chamber - span.course= hour.course + if hour.teacher != 'vrij\r' + div.hour(class=hour.changed == 'true' ? 'changed' : '') + span.teacher= hour.teacher + span.chamber= hour.chamber + span.course= hour.course + else + div.hour.changed + span.free Vrij diff --git a/resources/jade/search.jade b/resources/jade/search.jade new file mode 100644 index 0000000..8367fe5 --- /dev/null +++ b/resources/jade/search.jade @@ -0,0 +1,3 @@ +//- search.jade +input.search(type="text", name="searchterm", placeholder="Je naam, id, klassennaam, docentencode, lokaalcode", value=(match.first_name || match.name) + '\'s rooster') +button.search Zoeken diff --git a/resources/js/script.js b/resources/js/script.js index 4e2ad09..109f348 100644 --- a/resources/js/script.js +++ b/resources/js/script.js @@ -1,20 +1,23 @@ $(document).ready(function () { - $('#search').on('keyup', function (e) { + $('input.search').on('keyup', function (e) { if (e.keyCode == 13) { go(); } }); - $('button').click(function () { + $('button.search').click(function () { go(); }); }); function go() { - var searchterm = $('#search').val().trim(); + var searchterm = $('.search').val().trim(); if (!!searchterm) { document.location.pathname = '/rooster/' + searchterm; } + else { + document.location.pathname = '/'; + } } diff --git a/resources/less/style.less b/resources/less/style.less index 5452822..affa32f 100644 --- a/resources/less/style.less +++ b/resources/less/style.less @@ -1,41 +1,20 @@ //style.less -@import url('http://fonts.googleapis.com/css?family=Open+Sans:400italic,700italic,700,400'); +@import url('http://fonts.googleapis.com/css?family=Open+Sans:400italic,700italic,700,400|Oswald'); -.homepage { +.big { + margin-top: 20%; +} + +.search { + margin: 0 auto; + width: 50%; + display: block; + font-family: Open Sans; +} + +input.search { text-align: center; - - h1 { - font-size: 8rem; - font-family: Open Sans; - letter-spacing: 0px; - } - - span { - font-size: 2rem; - letter-spacing: -2px; - position: relative; - left: -35px; - - > span { - color: #96AA48; - position: relative; - left: -2px; - top: 1px; - display: inline-block; - -webkit-transform: rotate(15deg); - } - } - - input { - width: 50%; - } - - button { - display: block; - margin: 0 auto; - width: 50%; - } - + margin-bottom: 10px; } .bar { @@ -45,14 +24,77 @@ margin-bottom: 50px; } +h1#title { + font-size: 8rem; + font-family: Oswald; + letter-spacing: 0px; + text-align: center; + text-transform: uppercase; + + span { + font-size: 3rem; + letter-spacing: -2px; + position: relative; + left: -12px; + top: -1px; + -webkit-transform: rotate(-7deg); + display: inline-block; + + > span { + color: #96AA48; + position: relative; + left: -3px; + top: 1px; + display: inline-block; + -webkit-transform: rotate(11deg); + } + } +} + + div.schedule { display: table; + margin: 10px auto; + border: solid 1px #e1e1e1; + font-family: Open Sans; div.day { float: left; div.hour { height: 20px; + border-bottom: solid 1px #DDD; + padding: 12px 15px; + border-bottom: 1px solid #e1e1e1; + width: 150px; + border-left: 1px solid #FFF; + + span { + display: inline-block; + width: 33%; + } + + .teacher { + text-align: left; + } + + .chamber { + text-align: center; + } + + .course { + text-align: right; + } + + &.changed { + color: red !important; + } + + .free { + .changed; + text-align: center; + width: 100%; + } } } diff --git a/schedule.js b/schedule.js index 2d85911..ac5cfa9 100644 --- a/schedule.js +++ b/schedule.js @@ -42,7 +42,7 @@ function to_json(page) { var schedule = cheerio('tr:nth-child('+ (6 + hour) +')', result); //Looping for (optional) specialhours - var amount_of_special_hours = schedule.find('table').eq(0).children().length; + var amount_of_special_hours = schedule.find('table').eq(day).children().length; for (special_hour = 0; special_hour < amount_of_special_hours; special_hour++) { schedule_data[day][hour] = {teacher: [], chamber: [], course: [], changed: []}; var selected_hour = schedule.find('table').eq(day).find('tr').eq(special_hour).find('td'); diff --git a/web.js b/web.js index 3eac88a..e0a8109 100644 --- a/web.js +++ b/web.js @@ -7,6 +7,7 @@ var lookup = require('./lookup.js'); var schedule = require('./schedule.js'); app.set('view engine', 'jade'); +app.disable('view cache'); app.set('views', __dirname + '/resources/jade'); app.use('/css', less(__dirname + '/resources/less')); app.use('/js', express.static(__dirname + '/resources/js')); @@ -32,8 +33,8 @@ app.param('search', lookup); app.param('search', schedule); app.param('search', function (req, res) { - res.render('schedule', req.match); - console.log(req.match.json[0][0]); + res.render('schedule', req); + console.log(req); }); app.listen(1024);