function writeGooglePlusEvents(data, elem)
{
var ghtml = "";
- var gplusimgwidth = parseInt($('<table class="gplusimg" />').css("width"));
+ //var gplusimgwidth = parseInt($('<table class="gplusimg" />').css("width"));
+ var gplusimgwidth = 495;
var minimgwidth=78;
for (var i=0; i< data.items.length; i++)
{
return "";
}
-function writeCalendar(data, elem)
+function calendarItemIterator(data)
{
- var calhtml = "";
for (var s=0; s<data.length; s++)
{
var when = "";
if (stime.length <= 2) { stime+="h"; }
when = weekday + " " + dayofmonth+"."+month +", "+stime;
}
+ var itm = data[s];
+ itm.when = when;
+ yield itm;
+ }
+}
+
+function loadCalendarKiosk()
+{
+ var calcontainer=document.getElementById("grical_upcoming");
+ $.getJSON('/shmcache/grical_realraum.json', function(data){
+ var calhtml = "";
+ for (var itm in calendarItemIterator(data)) {
calhtml += '<li class="level1">'+when+' - <span class="r3red">'+data[s].title+'</span></li>'+"\n";
}
- elem.innerHTML='<ul>'+calhtml+'</ul>';
+ calcontainer.innerHTML='<ul>'+calhtml+'</ul>';
+ });
}
-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 += '<li class="level1"><div class="li">'+when+' - <a href="'+data[s].url+'" class="urlextern" title="'+data[s].title+'" rel="nofollow">'+data[s].title+'</a></div></li>'+"\n";
+ }
+ calcontainer.innerHTML='<ul>'+calhtml+'</ul>';
});
}
+
function writeAnwesenheitStatus(data)
{
var html="";
}
html='<table border="0" cellpadding="0" cellspacing="0" width="100%" height="100"><tr><td style="width:100px;"><img style="float:left;" src="'+iconuri+'" height="100" width="100"/></td><td style="width:4px;"></td><td class="anwesenheitsstatus" style="background-color:'+statuscolor+'; ">'+data.status+'</td></tr></table>';
document.getElementById('anwesenheit_status').innerHTML=html;
-
+
if (data.sensors)
{
- for (var s=0; s<data.sensors.length;s++)
+ if (data.sensors.temperature)
{
- $.each( data.sensors[s], function(stype, std){
- $.each( std, function(swhere, svalue){
- sensorstd+='<td class="sensorstatus"><b>'+stype+'</b><br/>'+swhere+': '+svalue+'</td>';
- });
+ sensorstd+='<td style="background-color:white; height:42px; text-align:center; vertical-align:middle; display:table-cell;"><b>Temperatur</b>';
+ $.each( data.sensors.temperature, function(s, sensorobj) {
+ sensorstd+='<br/>'+sensorobj.location+': '+sensorobj.value.toFixed(2)+sensorobj.unit;
});
+ sensorstd+='</td>';
+ }
+ if (data.sensors.ext_illumination)
+ {
+ sensorstd+='<td style="background-color:white; height:42px; text-align:center; vertical-align:middle; display:table-cell;"><b>Licht</b>';
+ $.each( data.sensors.ext_illumination, function(s, sensorobj) {
+ sensorstd+='<br/>'+sensorobj.location+': '+sensorobj.value;
+ });
+ sensorstd+='</td>';
+ }
+ if (data.sensors.door_locked)
+ {
+ sensorstd+='<td style="background-color:white; height:42px; text-align:center; vertical-align:middle; display:table-cell;"><b>Eingangstür</b>';
+ $.each( data.sensors.door_locked, function(s, sensorobj) {
+ var lockstatus="Auf";
+ if (sensorobj.value) { lockstatus = "Zu"; }
+ sensorstd+='<br/>'+sensorobj.location+': '+lockstatus;
+ });
+ sensorstd+='</td>';
+ }
+ if (data.sensors.ext_door_ajar)
+ {
+ sensorstd+='<td style="background-color:white; height:42px; text-align:center; vertical-align:middle; display:table-cell;"><b>Türkontakt</b>';
+ $.each( data.sensors.ext_door_ajar, function(s, sensorobj) {
+ var lockstatus="Auf";
+ if (sensorobj.value) { lockstatus = "Zu"; }
+ sensorstd+='<br/>'+sensorobj.location+': '+lockstatus;
+ });
+ sensorstd+='</td>';
+ }
+ if (data.sensors.ext_dust)
+ {
+ sensorstd+='<td style="background-color:white; height:42px; text-align:center; vertical-align:middle; display:table-cell;"><b>Staub</b>';
+ $.each( data.sensors.ext_dust, function(s, sensorobj) {
+ sensorstd+='<br/>'+sensorobj.location+': '+sensorobj.value+sensorobj.unit+'</td>';
+ });
+ sensorstd+='</td>';
+
+ }
+ if (sensorstd != "")
+ {
+ sensorshtml='<table border="0" cellpadding="0" cellspacing="0" width="100%"><tr>'+sensorstd+'</tr></table>';
+ document.getElementById('sensor_status').innerHTML=sensorshtml;
}
- }
- if (sensorstd != "")
- {
- sensorshtml='<table border="0" cellpadding="0" cellspacing="0" width="100%"><tr>'+sensorstd+'</tr></table>';
- document.getElementById('sensor_status').innerHTML=sensorshtml;
}
}
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("loadGooglePlusEvents()", 1207*1000);
-});
-
function updateDateClock(now)
{
var daynames = new Array('So', 'Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa');
}
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);
+});