Commit 0d3eef4b authored by Paul Asmuth's avatar Paul Asmuth
Browse files

Merge branch 'adminui_fixMetricList' of github.com:paulasmuth/fnordmetric-dev into fnordmetric2

Conflicts:
	fnordmetric-webui/fnordmetric-webui-metriclist.js
parents e96a9be4 f16680fd
Loading
Loading
Loading
Loading
+7 −4
Original line number Diff line number Diff line
@@ -46,7 +46,6 @@ FnordMetric.views.MetricList = function() {

  function renderMetricList(viewport, metrics, search_item) {
    viewport.innerHTML = "";
    console.log(metrics);

    if (metrics.length == 0) {
      if (search_item != undefined) {
@@ -95,9 +94,13 @@ FnordMetric.views.MetricList = function() {

  function renderEmptySearch(elem, search_item) {
    elem.innerHTML = "";
    FnordMetric.util.renderPageHeader(
      "No Results were found for " + search_item, elem);
    FnordMetric.util.TableView().renderEmptyTable(elem);
    var header = 
      "Metrics &rsaquo; <em>No Search Results for &quot;" +
      FnordMetric.util.htmlEscape(search_item) + "&quot;</em>";
    FnordMetric.util.renderPageHeader(header,elem);

    FnordMetric.util.TableView().renderEmptyTable(
      elem, ["Metric", "Labels", "Last Insert", "Total stored bytes"]);
  }

  function loadMetricList(viewport, query_params) {
+28 −35
Original line number Diff line number Diff line
@@ -25,6 +25,8 @@ FnordMetric.util.TableView = function(columns, elem, per_page) {
  var current_page = 0;
  var pages;

  var order = {};

  function render(isSortable) {
    if (isSortable == undefined) {
      isSortable = true;
@@ -42,9 +44,14 @@ FnordMetric.util.TableView = function(columns, elem, per_page) {
    render(isSortable);
  }

  function resortRows(column_index, order) {
  function resortRows(column_index) {
    var column_order;
    column_order  = (order[column_index] == undefined ||
      order[column_index] == "desc") ?
      "asc" : "desc";
    order[column_index] = column_order;
    FnordMetric.util.sortMetricList(
      all_rows, column_index, order);
      all_rows, column_index, column_order);
    updatePage(0);
  }

@@ -60,28 +67,22 @@ FnordMetric.util.TableView = function(columns, elem, per_page) {

    for (var i = 0; i < columns.length; i++) {
      var header_cell = document.createElement("th");
      header_cell.innerHTML = columns[i];
      var title = document.createElement("span");
      title.innerHTML = columns[i];
      header_cell.appendChild(title);
      header.appendChild(header_cell);
      if (i != 1 && isSortable) {
        header_cell.className = "clickable";

        var sort_asc = FnordMetric.createButton(
          "#", "caret left", "&#x25B2;");
        sort_asc.setAttribute("id", i);
        sort_asc.onclick = function(e) {
          e.preventDefault();
          resortRows(this.id, "asc");
      if (isSortable) {
        header_cell.onclick = (function(idx) {
          return function() {
            resortRows(idx);
          }
        header_cell.appendChild(sort_asc);
        })(i);

        var sort_desc = FnordMetric.createButton(
          "#", "caret", "&#x25BC;");
        sort_desc.setAttribute("id", i);
        sort_desc.onclick = function(e) {
          e.preventDefault();
          resortRows(this.id, "desc");
        }
        header_cell.appendChild(sort_desc);
        var sort = document.createElement("i");
        sort.className = "fa sort " +
            (order[i] == "asc" ? "fa-sort-amount-asc" : "fa-sort-amount-desc");
        header_cell.appendChild(sort);
      }
    }

@@ -140,26 +141,18 @@ FnordMetric.util.TableView = function(columns, elem, per_page) {
    on_row_click = on_row_click_new;
  }

  function renderEmptyTable(elem) {
  function renderEmptyTable(elem, column_names) {
    var table = document.createElement("table");
    table.className = "metric_list";
    var header = document.createElement("tr");
    header.className = "list_header";
    for (var i = 0; i < 4; i++) {
    column_names.map(function(column) {
      var cell = document.createElement("th");
      cell.innerHTML = column;
      header.appendChild(cell);
    }
    });
    table.appendChild(header);

    for (var i = 0; i < 7; i++) {
      var row = document.createElement("tr");
      for (var j = 0; j < 4; j++) {
        var cell = document.createElement("td");
        row.appendChild(cell);
      }
      table.appendChild(row);
    }

    elem.appendChild(table);
  }

+1 −1
Original line number Diff line number Diff line
@@ -177,7 +177,7 @@ FnordMetric.util.renderPageHeader = function(text, elem) {

FnordMetric.util.parseTimestamp = function(timestamp) {
  if (timestamp == 0) {
    return timestamp;
    return "0";
  }

  var time_str;
+13 −1
Original line number Diff line number Diff line
@@ -47,6 +47,13 @@
.fa-circle-o-notch:before {
  content: "\f1ce";
}
.fa-sort-amount-asc:before {
  content: "\f160";
}
.fa-sort-amount-desc:before {
  content: "\f161";
}

.fa-spin {
  -webkit-animation: fa-spin 1s infinite linear;
  animation: fa-spin 1s infinite linear;
@@ -595,6 +602,11 @@ table.metric_list tr.list_header {
  color: #60707f;
}

table.metric_list tr.list_header i.sort {
  float: right;
  line-height: 40px;
}

table.metric_list th,
table.metric_list td {
  text-align: left;
@@ -610,7 +622,7 @@ table.metric_list th {
  border-right: 1px solid rgb(226, 232, 237);
}

table.metric_list th.clickable:hover {
table.metric_list .clickable:hover {
  cursor:pointer;
}