Commit eadd2c4c authored by Paul Asmuth's avatar Paul Asmuth
Browse files

fnordmetric-ui: better x axis date formatting

parent 98e91f9a
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -674,7 +674,6 @@ FnordMetric.rickshaw.Graph.Axis.Time = function(args) {
  };

  this.render = function() {

    this.elements.forEach( function(e) {
      if (e.parentNode)
        e.parentNode.removeChild(e);
@@ -683,6 +682,8 @@ FnordMetric.rickshaw.Graph.Axis.Time = function(args) {
    this.elements = [];

    var offsets = this.tickOffsets();
    var domain = this.graph.x.domain();
    var rangeSeconds = domain[1] - domain[0];

    offsets.forEach( function(o) {

@@ -695,7 +696,7 @@ FnordMetric.rickshaw.Graph.Axis.Time = function(args) {

      var title = document.createElement('div');
      title.classList.add('title');
      title.innerHTML = FnordMetric.util.dateFormat(o.value);
      title.innerHTML = FnordMetric.util.dateFormatWithRange(o.value, rangeSeconds);
      element.appendChild(title);

      self.graph.element.appendChild(element);
+20 −3
Original line number Diff line number Diff line
@@ -46,13 +46,30 @@ FnordMetric.util.formatPercentValue = function(value){

FnordMetric.util.dateFormat = function(timestamp){
  var t = new Date(timestamp*1000);
  return FnordMetric.util.decPrint(t.getDate())      + "." + 
         FnordMetric.util.decPrint((t.getMonth()+1)) + "." + 
         FnordMetric.util.decPrint(t.getFullYear())  + " " +
  return FnordMetric.util.decPrint(t.getFullYear())  + "/" +
         FnordMetric.util.decPrint((t.getMonth()+1)) + "/" + 
         FnordMetric.util.decPrint(t.getDate())      + " " + 
         FnordMetric.util.decPrint(t.getHours())     + ":" +
         FnordMetric.util.decPrint(t.getMinutes())   + " ";
}

FnordMetric.util.dateFormatWithRange = function(timestamp, range){
  var t = new Date(timestamp*1000);

  if (range >= (3600 * 24))
    return FnordMetric.util.decPrint((t.getMonth()+1)) + "/" + 
           FnordMetric.util.decPrint(t.getDate())      + " " + 
           FnordMetric.util.decPrint(t.getHours())     + ":" +
           FnordMetric.util.decPrint(t.getMinutes());
  else if (range >= 900)
    return FnordMetric.util.decPrint(t.getHours())     + ":" +
           FnordMetric.util.decPrint(t.getMinutes());
  else
    return FnordMetric.util.decPrint(t.getHours())     + ":" +
           FnordMetric.util.decPrint(t.getMinutes())   + ":" +
           FnordMetric.util.decPrint(t.getSeconds());
}

FnordMetric.util.generateUUID = function (){
  return Math.floor((1 + Math.random()) * 0x1000000).toString(16);
}