Commit 442bdbb0 authored by Paul Asmuth's avatar Paul Asmuth
Browse files

js-api: FnordMetric#setup_ext

parent 39e0b414
Loading
Loading
Loading
Loading
+35 −0
Original line number Diff line number Diff line
var FnordMetric = (function(){

  var require = [
    '/vendor/d3.v2.js',
    '/vendor/rickshaw.fnordmetric.js',
    '/js/fnordmetric.js',
    '/js/fnordmetric.util.js',
    '/js/fnordmetric.ui.js',
    '/js/fnordmetric.timeline_widget.js'
  ];

  var setup = function(opts){
    if (typeof $ == 'undefined') {
      console.log("error: FnordMetric requires jQuery 1.6.2+");
      return;
    }

    this.ext_opts = opts;

    for (n=0; n < require.length; n++)
      document.write('<script type="text/javascript" src="' + (
        "http://" + opts.address + require[n]) + '"></script>');
  }


  return {
    ext_opts: null,
    setup: setup
  };

}());



document.write()
+37 −19
Original line number Diff line number Diff line
var FnordMetric = (function(){
var FnordMetric = (function(pre_init){

  var canvasElem = false;
  var currentView = false;
@@ -8,6 +8,10 @@ var FnordMetric = (function(){

  var navigatedViaHash = false;

  if (typeof pre_init != 'null') {
    setup_ext(pre_init.ext_opts);
  }

  function renderDashboard(_dash){
    loadView(FnordMetric.views.dashboardView(_dash));
  }
@@ -148,6 +152,7 @@ var FnordMetric = (function(){
  function init(_conf){
    conf = _conf;
    this.currentNamespace = _conf.token;
    this.ws_addr = "ws://" + document.location.host + '/stream';

    if(conf.title){ $('title').html(conf.title); }

@@ -165,8 +170,16 @@ var FnordMetric = (function(){
    resizeView();
  };

  function setup_ext(_conf){
    conf = _conf;
    this.currentNamespace = _conf.token;
    FnordMetric.ws_addr = "ws://" + _conf.address + "/stream";

    connect();
  };

  function connect(){
    socket = new WebSocket("ws://" + document.location.host + '/stream');
    socket = new WebSocket(FnordMetric.ws_addr);
    socket.onmessage = socketMessage;
    socket.onclose = socketClose;
    socket.onopen = socketOpen;
@@ -190,14 +203,17 @@ var FnordMetric = (function(){
  }

  function socketOpen(){
    console.log("connected...");
    console.log("[FnordMetric] connected...");
    if (typeof pre_init == 'null') {
      publish({"type": "discover_request"});
      $('.flash_msg_over').fadeOut(function(){ $(this).remove(); });
    }
  }

  function socketClose(){
    console.log("socket closed"); 
    console.log("[FnordMetric] socket closed"); 

    if (typeof pre_init == 'null') {
      if($('.flash_msg_over').length == 0){
        $(viewport)
          .append($("<div class='flash_msg_over'>")
@@ -210,6 +226,7 @@ var FnordMetric = (function(){
          $('.flash_msg_over').addClass('visible');  
        }, 20);
      }
    }

    window.setTimeout(connect, 1000); 
  }
@@ -244,6 +261,7 @@ var FnordMetric = (function(){
    p: '',
    socket: socket,
    currentNamespace: null,
    ws_addr: null,
    currentWidgetUID: 23,
    ui: {},
    views: {},
@@ -252,4 +270,4 @@ var FnordMetric = (function(){
    gauges: gauges
  };

})();
})(FnordMetric);