view service/wallscreen/gui.js @ 981:d9bbbd8d86f6

arduinoNode: use -v for logging; support a PUT with subj+pred in query, obj in body Ignore-this: 744c3c7d95655430b8ec547e56f6b4bc darcs-hash:20150514082612-312f9-f77a103ef67321aa5a0ffd7991b92befd5dac37f
author drewp <drewp@bigasterisk.com>
date Thu, 14 May 2015 01:26:12 -0700
parents c6e6f717fabe
children
line wrap: on
line source

var reloadData;
$(function () {
    
    setTimeout(function () {
        window.resizeTo(702,480);
    }, 10000);
    
    var model = {
        requestedF: ko.observable(),
        tasks: ko.observableArray([]),
        events: ko.observableArray([]),
        isToday: function (ev) {
            var today = moment().format("YYYY-MM-DD");
            return ev.date == today;
        },
        mapPersonData: ko.observable(),
    };
    reloadData = function() {
        $.getJSON("content", function (data) {
            model.tasks(data.tasks);
            model.events(data.events);
        });
    }
    setInterval(reloadData, 30*60*1000);
    reloadData();

    reloadMap = function () {
        $.getJSON("content/map", function (data) {
          var personData = [];
          data.pts.forEach(function (pt) {
            // this is in another config but not yet in the graph
            var initial = pt.who.split("#")[1].substr(0, 1).toUpperCase();
            pt.initial = initial;
            pt.topFrac = initial == 'K' ? 0 : .5;
            personData.push(pt);
          });
          model.mapPersonData(personData);
        });
    };
    setInterval(reloadMap, 2*60*1000);
    reloadMap();

    function onMessage(d) {
        if (d.tempF) {
            model.requestedF(d.tempF);
        }
    }
    reconnectingWebSocket("ws://bang.bigasterisk.com:9102/live", onMessage);

    ko.applyBindings(model);

    if (navigator.userAgent == "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:18.0) Gecko/18.0 Firefox/18.0") {
        $(".rot").removeClass("rot");
    }

    function updateClock() {
        var now = moment();
        var s = (new Date()).toLocaleTimeString();
        $("#clock").html(
            "<div>"+now.format("dddd")+"</div>"+
                "<div>"+now.format("MMM Do")+"</div>"+
                "<div>"+now.format("HH:mm")+"</div>"
        )
    }
    setInterval(updateClock, 20000)
    updateClock();
});