X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=plugins%2Fsenslabmap%2Fstatic%2Fjs%2Fsenslabmap.js;h=f98a128fa055de3672ed6429da45683bbda37334;hb=01df51847534dace0adeaac31377df81d8584aa0;hp=6ba92eeac9bcc9968fd1d617acf90719ea6eaff2;hpb=d9f4308af59ebad956edf64c1051694d5322251e;p=myslice.git diff --git a/plugins/senslabmap/static/js/senslabmap.js b/plugins/senslabmap/static/js/senslabmap.js index 6ba92eea..f98a128f 100644 --- a/plugins/senslabmap/static/js/senslabmap.js +++ b/plugins/senslabmap/static/js/senslabmap.js @@ -4,8 +4,10 @@ this._super(options, element); this.elmt().on('show', this, this.on_show); - + + var query = manifold.query_store.find_analyzed_query(options.query_uuid); this.method = query.object; + this.key = manifold.metadata.get_key(this.method); /* Setup query and record handlers */ this.listen_query(options.query_uuid); @@ -15,40 +17,37 @@ this.nodes = {}; }, - refresh: function() { - console.log("refresh"); - }, - on_show: function(e) { e.data.refresh(); }, on_all_new_record: function(node) { Senslab.normalize(node); - var site = node.site; - if (site) { + if (node.normalized) { + var site = node.site; if ($.inArray(site, this.sites) == -1) { this.sites.push(site); this.nodes[site] = []; } this.nodes[site].push(node); } else { - console.warn(node); - console.warn("-> has no site"); +// xxx would need a smarter way to report these only on nodes that deserve it +// these messages are all over the place in a PL setup and tend to hide helpful signal +// console.warn("node has no site:"); +// console.warn(node); } }, on_all_query_done: function() { - var - self = this, - maps = {}, - $container = $('#maps-container'); - - $.each(this.sites, function(i, site) { - var $div = $("
").appendTo($container); - maps[site] = new Senslab.Map($div); - maps[site].addNodes(self.nodes[site]); - }); + var self = this; + + Senslab.createMaps($('#maps-container'), this.sites, this.nodes); + Senslab.notify = function(node) { + manifold.raise_event(self.options.query_uuid, + node.boot_state == "Alive" ? SET_REMOVED : SET_ADD, + node[self.key] + ); + } } }); $.plugin('SensLabMap', SensLabMap);