web/js/fnordmetric.util.js in fnordmetric-1.0.1 vs web/js/fnordmetric.util.js in fnordmetric-1.2.0
- old
+ new
@@ -80,11 +80,11 @@
}
}
FnordMetric.util.formatValue = function(value){
if(value < 10){
- return value.toFixed(2);
+ return value.toFixed(1);
}
if(value < 100){
return value.toFixed(1);
} else if(value > 1000){
return (value/1000.0).toFixed(1) + "k";
@@ -125,14 +125,16 @@
} else {
return FnordMetric.util.formatValue(value);
}
}
-FnordMetric.util.updateNumbers = function(trgt_elem, diff_factor){
+FnordMetric.util.updateNumbers = function(trgt_elem, diff_factor, single){
var still_running = false;
if(!diff_factor){ diff_factor = 4; }
- $('.number', $(trgt_elem)).each(function(){
+ var elems = [];
+ if (single) { elems = [trgt_elem]; } else { elems = $('.number', $(trgt_elem)); }
+ $(elems).each(function(){
var target_val = parseFloat($(this).attr('data'));
var current_val = parseFloat($(this).attr('data-current'));
if(!current_val){ current_val=0; }
if(!target_val){ target_val=0; }
var diff = (target_val-current_val)/diff_factor;
@@ -142,19 +144,21 @@
still_running = true;
var new_val = current_val+diff;
if((diff > 0) && (new_val > target_val)){ new_val = target_val; }
if((diff < 0) && (new_val < target_val)){ new_val = target_val; }
$(this).attr('data-current', new_val);
- $('.value', this).html(FnordMetric.util.formatGaugeValue($(this).attr('rel'), new_val));
+ var val_txt = FnordMetric.util.formatGaugeValue($(this).attr('rel'), new_val);
+ if ($(this).attr('data-unit')){ val_txt += $(this).attr('data-unit'); }
+ if (single) { $(this).html(val_txt); } else { $('.value', this).html(val_txt); }
}
});
if(still_running){
- (function(te, df){
+ (function(te, df, sg){
window.setTimeout(function(){
- FnordMetric.util.updateNumbers(te, df);
+ FnordMetric.util.updateNumbers(te, df, sg);
}, 30);
- })(trgt_elem, diff_factor);
+ })(trgt_elem, diff_factor, single);
}
}
FnordMetric.util.dateFormat = function(timestamp){
var t = new Date(timestamp*1000);
@@ -239,6 +243,6 @@
str = "FnordMetric.util."+str.substring(1)
return eval(str);
} else {
return str;
}
-}
\ No newline at end of file
+}