jQuery.fn.updateWithText = function(text, speed) { var dummy = $('
').html(text); if ($(this).html() != dummy.html()) { $(this).fadeOut(speed/2, function() { $(this).html(text); $(this).fadeIn(speed/2, function() { //done }); }); } } jQuery.fn.outerHTML = function(s) { return s ? this.before(s).remove() : jQuery("").append(this.eq(0).clone()).html(); }; function roundVal(temp) { return Math.round(temp * 10) / 10; } function kmh2beaufort(kmh) { var speeds = [1, 5, 11, 19, 28, 38, 49, 61, 74, 88, 102, 117, 1000]; for (var beaufort in speeds) { var speed = speeds[beaufort]; if (speed > kmh) { return beaufort; } } return 12; } jQuery(document).ready(function($) { var news = []; var newsIndex = 0; var eventList = []; var lastCompliment; var compliment; // multi-langugage support according to browser-lang var lang = window.navigator.language; switch (lang) { case 'de': var days = ['Sonntag','Montag','Dienstag','Mittwoch','Donnerstag','Freitag','Samstag']; var months = ['Januar','Februar','März','April','Mai','Juni','Juli','August','September','Oktober','November','Dezember']; var dayAbbr = ['So','Mo','Di','Mi','Do','Fr','Sa']; var today = 'heute'; var tomorrow = 'morgen'; var in_days = 'Tage'; break; case 'nl': var days = ['zondag','maandag','dinsdag','woensdag','donderdag','vrijdag','zaterdag']; var months = ['januari','februari','maart','april','mei','juni','juli','augustus','september','oktober','november','december']; var dayAbbr = ['zo','ma','di','wo','do','vr','za']; var today = 'vandaag'; var tomorrow = 'morgen'; var in_days = 'dagen'; break; case 'fr': var days = ['Dimanche','Lundi','Mardi','Mercredi','Jeudi','Vendredi','Samedi']; var months = ['Janvier','Février','Mars','Avril','Mai','Juin','Juillet','Août','Septembre','Octobre','Novembre','Décembre']; var dayAbbr = ['dim','lun','mar','mer','jeu','ven','sam']; var today = 'aujourd\'hui'; var tomorrow = 'demain'; var in_days = 'jour(s)'; break; case 'no': var days = ['søndag','mandag','tirsdag','onsdag','torsdag','fredag','lørdag']; var months = ['januar','februar','mars','april','mai','juni','juli','august','september','oktober','november','desember']; var dayAbbr = ['søn','man','tirs','ons','tors','fre','lør']; var today = 'i dag'; var tomorrow = 'i morgen'; var in_days = 'dager'; default: var days = ['Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday']; var months = ['January','February','March','April','May','June','July','August','September','October','November','December']; var dayAbbr = ['Sun','Mon','Tues','Wed','Thur','Fri','Sat']; var today = 'Today'; var tomorrow = 'Tomorrow'; var in_days = 'days'; } //connect do Xbee monitor var socket = io.connect('http://rpi-development.local:8080'); socket.on('dishwasher', function (dishwasherReady) { if (dishwasherReady) { $('.dishwasher').fadeIn(2000); $('.lower-third').fadeOut(2000); } else { $('.dishwasher').fadeOut(2000); $('.lower-third').fadeIn(2000); } }); var weatherParams = { 'q':'Baarn,Netherlands', 'units':'metric', 'lang':lang }; (function checkVersion() { $.getJSON('githash.php', {}, function(json, textStatus) { if (json) { if (json.gitHash != gitHash) { window.location.reload(); window.location.href=window.location.href; } } }); setTimeout(function() { checkVersion(); }, 3000); })(); (function updateTime() { var now = new Date(); var day = now.getDay(); var date = now.getDate(); var month = now.getMonth(); var year = now.getFullYear(); var date = days[day] + ', ' + date+' ' + months[month] + ' ' + year; $('.date').html(date); $('.time').html(now.toTimeString().substring(0,5) + ''+now.toTimeString().substring(6,8)+''); setTimeout(function() { updateTime(); }, 1000); })(); (function updateCalendarData() { new ical_parser("calendar.php", function(cal){ events = cal.getEvents(); eventList = []; for (var i in events) { var e = events[i]; for (var key in e) { var value = e[key]; var seperator = key.search(';'); if (seperator >= 0) { var mainKey = key.substring(0,seperator); var subKey = key.substring(seperator+1); var dt; if (subKey == 'VALUE=DATE') { //date dt = new Date(value.substring(0,4), value.substring(4,6) - 1, value.substring(6,8)); } else { //time dt = new Date(value.substring(0,4), value.substring(4,6) - 1, value.substring(6,8), value.substring(9,11), value.substring(11,13), value.substring(13,15)); } if (mainKey == 'DTSTART') e.startDate = dt; if (mainKey == 'DTEND') e.endDate = dt; } } var now = new Date(); var today = new Date(now.getFullYear(), now.getMonth(), now.getDate()); var days = moment(e.startDate).diff(moment(today), 'days'); //only add fututre events if (days >= 0) { eventList.push({'description':e.SUMMARY,'days':days}); } }; eventList.sort(function(a,b){return a.days-b.days}); setTimeout(function() { updateCalendarData(); }, 60000); }); })(); (function updateCalendar() { table = $('