X-Git-Url: https://git.realraum.at/?a=blobdiff_plain;f=raspberry-kiosk%2Fkiosk.js;h=338f8da899b8471f72b101c64497d7bd9e9f0a4f;hb=ada40a47ddd05e721fa8b449bd0e6e9b9aee0949;hp=15fe505420c3688d5a5c67f7c596ba308cdd2918;hpb=6e8fff305273eb943f7f4d905524dee40625941e;p=svn42.git diff --git a/raspberry-kiosk/kiosk.js b/raspberry-kiosk/kiosk.js index 15fe505..338f8da 100644 --- a/raspberry-kiosk/kiosk.js +++ b/raspberry-kiosk/kiosk.js @@ -1,3 +1,62 @@ +function writeGooglePlusEvents(data, elem) +{ + var ghtml = ""; + for (var i=0; i< data.items.length; i++) + { + var item = data.items[i]; + var noteobj = item.object; + var attach = noteobj.attachments; + var notetxt = noteobj.content; + var noteimgs = new Array(); + if (attach) + { + for (var a=0; a
"+notetxt; + } + } + } + ghtml += '
' + ghtml += '

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

'; + ghtml += '

'+notetxt+'

'; + if (noteimgs.length>0) + { + ghtml += ''; + for (var ni=0; ni'; + } + ghtml += '
'; + } + ghtml += '
'; + } + elem.innerHTML=ghtml; +} + + +function loadGooglePlusEvents() +{ + var gpak = "AIzaSyD9xBFM-KWwSYBgZ8VzftJ5wYYvurOxEHg"; + var gplusuri = "https://www.googleapis.com/plus/v1/people/113737596421797426873/activities/public?maxResults=4&key="+gpak; + var gpluscontainer=document.getElementById("gplusevents"); + $.getJSON(gplusuri, function(data){ + writeGooglePlusEvents(data, gpluscontainer); + }); +} + function writeCalendar(data, elem) { @@ -17,9 +76,10 @@ function writeCalendar(data, elem) { stime=stime.substring(0,stime.length-3); } - when = data[s].start +", "+stime+" Uhr"; + if (stime.length <= 2) { stime+="h"; } + when = data[s].start.substring(8,10)+"."+data[s].start.substring(5,7) +", "+stime; } - calhtml += '
  • '+"\n"; + calhtml += '
  • '+when+' - '+data[s].title+'
  • '+"\n"; } elem.innerHTML=''; } @@ -27,7 +87,6 @@ function loadCalendar() { //old URI: //grical.realraum.at/s/?query=!realraum&limit=9&view=json var calcontainer=document.getElementById("grical_upcoming"); - calcontainer.innerHTML="Calendar loading ...
    please wait a second or two"; $.getJSON('/shmcache/grical_realraum.json', function(data){ writeCalendar(data, calcontainer); }); @@ -57,7 +116,7 @@ function writeAnwesenheitStatus(data) { $.each( data.sensors[s], function(stype, std){ $.each( std, function(swhere, svalue){ - sensorstd+=''+stype+'
    '+swhere+': '+svalue+''; + sensorstd+=''+stype+'
    '+swhere+': '+svalue+''; }); }); } @@ -83,7 +142,7 @@ var anwesenheit_timer = window.setInterval("updateAnwesenheitStatus()", 10000); function updateSensors() { - //reloadImg(document.getElementById("tempsensor")); + reloadImg(document.getElementById("tempsensor")); reloadImg(document.getElementById("movementsensor")); reloadImg(document.getElementById("lightsensor")); } @@ -98,9 +157,11 @@ $(document).ready(function() setInterval("clock()", 500); updateAnwesenheitStatus(); loadCalendar(); + loadGooglePlusEvents(); setInterval("updateAnwesenheitStatus()", 10000); - setInterval("loadCalendar()", 100000); - setInterval("updateSensors()", 50000); + setInterval("loadCalendar()", 123*1000); + setInterval("updateSensors()",125*1000); + setInterval("loadGooglePlusEvents()", 1207*1000); }); function updateDateClock(now) @@ -149,6 +210,16 @@ function showError(XMLHttpRequest, textStatus, errorThrown) alert("Error: " + textStatus); } +function IsImageOk(img) { + if (!img.complete) { + return false; + } + if (typeof img.naturalWidth != "undefined" && img.naturalWidth == 0) { + return false; + } + return true; +} + function reloadImg(element) { //var image = document.getElementById("theText"); @@ -156,8 +227,12 @@ function reloadImg(element) var new_image = new Image(); //set up the new image new_image.id = element.id; + new_image.className = element.className; new_image.src = element.src; - element.parentNode.insertBefore(new_image,element); - element.parentNode.removeChild(element); + if (IsImageOk(new_image)) + { + element.parentNode.insertBefore(new_image,element); + element.parentNode.removeChild(element); + } } }