X-Git-Url: https://git.realraum.at/?a=blobdiff_plain;f=raspberry-kiosk%2Fkiosk.js;h=1553712c445cea0161f12be48ab535e77e0326b6;hb=ffef74661d9cf233a7beb0439ba34a30e0a1a4e5;hp=5b670edd418ccef983a32879b4308eed94e646ac;hpb=2114d3f614c0ecc75de9fde689fcbb9f90ca80fe;p=svn42.git diff --git a/raspberry-kiosk/kiosk.js b/raspberry-kiosk/kiosk.js index 5b670ed..1553712 100644 --- a/raspberry-kiosk/kiosk.js +++ b/raspberry-kiosk/kiosk.js @@ -1,6 +1,17 @@ +function min(a,b) +{ + if (a > b) + return b; + else + return a; +} + function writeGooglePlusEvents(data, elem) { var ghtml = ""; + //var gplusimgwidth = parseInt($('').css("width")); + var gplusimgwidth = 495; + var minimgwidth=78; for (var i=0; i< data.items.length; i++) { var item = data.items[i]; @@ -33,11 +44,33 @@ function writeGooglePlusEvents(data, elem) ghtml += '

'+item.updated.substring(0,16).replace("T"," ")+'

'; ghtml += '

'+notetxt+'

'; if (noteimgs.length>0) - { + { + var bigimglimit; ghtml += '
'; - for (var ni=0; ni 3) { - ghtml += ''; + var gplusimgmaxwidth = gplusimgwidth - (minimgwidth * ((noteimgs.length -1) / 3)); + bigimglimit = "max-height:"+(minimgwidth*3)+"px; max-width:"+gplusimgmaxwidth+"px;" + ghtml += ''; + for (var ni=1; ni
'; + } + ghtml += ''; + } + } + else + { + var gplusimgmaxwidth = gplusimgwidth / noteimgs.length; + bigimglimit = "max-width:"+gplusimgmaxwidth+"px;" + for (var ni=0; ni'; + } } ghtml += '
'; } @@ -74,9 +107,8 @@ function weekday2str(dow) return ""; } -function writeCalendar(data, elem) +function calendarItemIterator(data) { - var calhtml = ""; for (var s=0; s'+data[s].title+''+"\n"; } - elem.innerHTML=''; + calcontainer.innerHTML=''; + }); } -function loadCalendar() + +function loadCalendarMainPage() { //old URI: //grical.realraum.at/s/?query=!realraum&limit=9&view=json var calcontainer=document.getElementById("grical_upcoming"); $.getJSON('/shmcache/grical_realraum.json', function(data){ - writeCalendar(data, calcontainer); + var calhtml = ""; + for (var itm in calendarItemIterator(data)) { + calhtml += '
  • '+"\n"; + } + calcontainer.innerHTML=''; }); } + function writeAnwesenheitStatus(data) { var html=""; @@ -132,22 +183,59 @@ function writeAnwesenheitStatus(data) } html='
    '+data.status+'
    '; document.getElementById('anwesenheit_status').innerHTML=html; - + if (data.sensors) { - for (var s=0; s
    '+swhere+': '+svalue+''; - }); + sensorstd+='Temperatur'; + $.each( data.sensors.temperature, function(s, sensorobj) { + sensorstd+='
    '+sensorobj.location+': '+sensorobj.value.toFixed(2)+sensorobj.unit; }); + sensorstd+=''; + } + if (data.sensors.ext_illumination) + { + sensorstd+='Licht'; + $.each( data.sensors.ext_illumination, function(s, sensorobj) { + sensorstd+='
    '+sensorobj.location+': '+sensorobj.value; + }); + sensorstd+=''; + } + if (data.sensors.door_locked) + { + sensorstd+='Eingangstür'; + $.each( data.sensors.door_locked, function(s, sensorobj) { + var lockstatus="Auf"; + if (sensorobj.value) { lockstatus = "Zu"; } + sensorstd+='
    '+sensorobj.location+': '+lockstatus; + }); + sensorstd+=''; + } + if (data.sensors.ext_door_ajar) + { + sensorstd+='Türkontakt'; + $.each( data.sensors.ext_door_ajar, function(s, sensorobj) { + var lockstatus="Auf"; + if (sensorobj.value) { lockstatus = "Zu"; } + sensorstd+='
    '+sensorobj.location+': '+lockstatus; + }); + sensorstd+=''; + } + if (data.sensors.ext_dust) + { + sensorstd+='Staub'; + $.each( data.sensors.ext_dust, function(s, sensorobj) { + sensorstd+='
    '+sensorobj.location+': '+sensorobj.value+sensorobj.unit+''; + }); + sensorstd+=''; + + } + if (sensorstd != "") + { + sensorshtml=''+sensorstd+'
    '; + document.getElementById('sensor_status').innerHTML=sensorshtml; } - } - if (sensorstd != "") - { - sensorshtml=''+sensorstd+'
    '; - document.getElementById('sensor_status').innerHTML=sensorshtml; } } @@ -162,20 +250,6 @@ function updateAnwesenheitStatus() var jqxhr = $.getJSON(url, writeAnwesenheitStatus); } -$(document).ready(function() -{ - updateDateClock(new Date()); - setInterval("clock()", 500); - updateAnwesenheitStatus(); - loadCalendar(); - loadGooglePlusEvents(); - setInterval("updateAnwesenheitStatus()", 10*1000); - setInterval("loadCalendar()", 123*1000); - //setInterval("updateSensors()",145*1000); - setInterval("updateSensors()",1000); - setInterval("loadGooglePlusEvents()", 1207*1000); -}); - function updateDateClock(now) { var daynames = new Array('So', 'Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa'); @@ -265,3 +339,16 @@ function reloadImg(element) } element.src = img_orig_src[element.id] + "?dt="+Math.floor(new Date().getTime() / 1000).toString(); } + +$(document).ready(function() +{ + updateDateClock(new Date()); + setInterval("clock()", 500); + updateAnwesenheitStatus(); + loadCalendarKiosk(); + loadGooglePlusEvents(); + setInterval("updateAnwesenheitStatus()", 10*1000); + setInterval("loadCalendarKiosk()", 123*1000); + setInterval("updateSensors()",145*1000); + setInterval("loadGooglePlusEvents()", 1207*1000); +});