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

enable & disable group elements

parent d4b31f5a
Loading
Loading
Loading
Loading
+37 −8
Original line number Diff line number Diff line
@@ -58,10 +58,34 @@ FnordMetric.util.MetricPreviewWidget = function(viewport, metric) {
    });
  }

  function handleAggrAvailability(show, tw_select, step_select, group_btns) {
    /* show = "value" */
    if (show == "Value" || show == "Rollup") {
      tw_select.className = "disabled";
      tw_select.disabled = true;
      step_select.className = "disabled";
      step_select.disabled = true;
      if (show == "Value") {
        group_btns.map(function(btn) {
          btn.className = "disabled";
        });
      }
    } else {
      tw_select.className = "";
      tw_select.disabled = false;
      step_select.className = "";
      step_select.disabled = false;
      group_btns.map(function(btn) {
        btn.className = "";
      });
    }

  }

  //FIXME works but seems to be ugly
  function updateEventHandler(elems) {
    var inputs = {
      "show" : null,
      "show" : "Value",
      "aggregation" : {
        "time" : 1000,
        "step" : 1000
@@ -73,13 +97,16 @@ FnordMetric.util.MetricPreviewWidget = function(viewport, metric) {
      "group_by" : []
    }

    console.log(elems.aggregation);

    elems.rollup.addEventListener('change', function() {
      var value = (this.value == "Value") ? null : this.value;
      inputs.show = value;
      inputs.show = this.value;
      handleAggrAvailability(
        this.value, elems.aggregation.timewindow, elems.aggregation.step, elems.group_by);
      runQuery(FnordMetric.util.createQuery(inputs, metric));
    }, false);

    elems.aggregation.window.addEventListener('change', function() {
    elems.aggregation.timewindow.addEventListener('change', function() {
      inputs.aggregation.time = FnordMetric.util.toMilliSeconds(this.value);
      runQuery(FnordMetric.util.createQuery(inputs, metric));
    }, false);
@@ -177,7 +204,7 @@ FnordMetric.util.MetricPreviewWidget = function(viewport, metric) {
    });

    elems.aggregation = {
      "window" : aggr_win,
      "timewindow" : aggr_win,
      "step": aggr_step
    };

@@ -281,11 +308,13 @@ FnordMetric.util.MetricPreviewWidget = function(viewport, metric) {
    var end_time = FnordMetric.util.humanDateToMikroTS(
      datepicker.value);

    handleAggrAvailability("Value", aggr_win, aggr_step, group_buttons);

    runQuery(FnordMetric.util.createQuery({
      "show" : null,
      "show" : "Value",
      "aggregation" : {
        "time" : 1000,
        "step" : 1000
        "time" : null,
        "step" : null
        },
      "time" : {
        "time_to_end" : 30000,
+1 −1
Original line number Diff line number Diff line
@@ -411,7 +411,7 @@ FnordMetric.util.createQuery = function(inputs, metric) {
  var show;
  var hasAggr;

  if (inputs.show == null) {
  if (inputs.show == "Value") {
    show = "value as y";
    hasAggr = false;
  } else {
+12 −0
Original line number Diff line number Diff line
@@ -978,6 +978,10 @@ h1.page_header em {
  border-right: 1px solid rgb(226, 232, 237);
}

.metric_preview_controls .group.aggregation_time_window .disabled {
  opacity: 0.5;
}

.metric_preview_controls .group.date {
  float: right;
}
@@ -1020,6 +1024,14 @@ h1.page_header em {
  margin-right: 10px;
}

.metric_preview_controls .group.groupby a.disabled {
  opacity: 0.5;
}

.metric_preview_controls .group.groupby a.disabled:hover {
  cursor: default;
}

.metric_preview_controls .group b {
  font-weight: normal;
  font-size: 80%;