Commit b245519d authored by Laura Schlimmer's avatar Laura Schlimmer
Browse files

Merge pull request #20 from paulasmuth/adminui_fixes

Adminui fixes
parents 0913eec8 9f53cba9
Loading
Loading
Loading
Loading
+21 −1
Original line number Diff line number Diff line
@@ -47,12 +47,29 @@ FnordMetric.util.MetricPreviewWidget = function(viewport, query_params) {
    return value;
  }

  // FIXLAURA allow multiple key value pairs as input
  function updateURLParams(key, value) {
    query_params[key] = value.toString();
    FnordMetric.util.setURLQueryString(
      "metric_list", query_params, false, true);
  }

  /* checks if required url params are misssing and adds those if so */
  function addRequiredURLParamsForView(value) {
    if (value == "count" || value == "sum") {
      var group_by = query_params.by;
      if (group_by == undefined) {
        group_by = defaults.by;
        updateURLParams("by", group_by);
      }
      var time_step = query_params.t_step;
      if (time_step == undefined) {
        time_step = defaults.t_step;
        updateURLParams("t_step", time_step);
      }
    }
  }

  function renderChart(chart) {
    if (chart != undefined) {
      chart_container.innerHTML = chart.svg;
@@ -288,7 +305,8 @@ FnordMetric.util.MetricPreviewWidget = function(viewport, query_params) {
      "#", "btn", "<i class='fa fa-database'></i> SQL Editor");
    controls_query.onclick = function(e) {
      e.preventDefault();
      var query = FnordMetric.util.generateSQLQueryFromParams(query_params);
      var query = encodeURIComponent(
        FnordMetric.util.generateSQLQueryFromParams(query_params));
      console.log(query);
      FnordMetric.WebUI.singleton.openUrl(
        "query_playground?sql_query="+query, true);
@@ -332,6 +350,7 @@ FnordMetric.util.MetricPreviewWidget = function(viewport, query_params) {
      /* queryGenerator assumes this format */
      var view = 
        FnordMetric.util.makeLowerCaseUnderscore(this.value);
      addRequiredURLParamsForView(view);
      updateURLParams("view", view);
      handleAggregationDisplay(
        this.value, t_window, t_step, group_buttons);
@@ -435,6 +454,7 @@ FnordMetric.util.MetricPreviewWidget = function(viewport, query_params) {
          });
          query_params.columns = m.labels.join(",");
          defaults.columns = m.labels.join(",");
          defaults.by = defaults.columns;
        });
        initElems();
      }
+2 −3
Original line number Diff line number Diff line
@@ -89,7 +89,6 @@ FnordMetric.util.setURLQueryString = function(hash, query_params, encode, push_s
  }

  if (push_state) {
    console.log("push state");
    window.history.pushState({url:path}, "#", path);
  }
  window.location.hash = path;
@@ -490,10 +489,10 @@ FnordMetric.util.generateSQLQueryFromParams = function(params) {
      hasGroupStm = true;

      group_expr += 
        "OVER TIMEWINDOW(time, " + t_step + ",";
        "OVER TIMEWINDOW(time, " + Math.round(t_step / 1000) + ",";

      group_expr += (t_window != undefined)?
        t_window : t_step;
        Math.round(t_window / 1000) : Math.round(t_step / 1000);

      group_expr+= ")";