35 lines
948 B
JavaScript
35 lines
948 B
JavaScript
angular
|
|
.module("webui.filters.bytes", ["webui.services.utils"])
|
|
.filter("blength", [
|
|
"$filter",
|
|
"$utils",
|
|
function(filter, utils) {
|
|
return utils.fmtsize;
|
|
}
|
|
])
|
|
.filter("bspeed", [
|
|
"$filter",
|
|
"$utils",
|
|
function(filter, utils) {
|
|
return utils.fmtspeed;
|
|
}
|
|
])
|
|
.filter("time", function() {
|
|
function pad(f) {
|
|
return ("0" + f).substr(-2);
|
|
}
|
|
|
|
return function(time) {
|
|
time = parseInt(time, 10);
|
|
if (!time || !isFinite(time)) return "∞";
|
|
var secs = time % 60;
|
|
if (time < 60) return secs + "s";
|
|
var mins = Math.floor((time % 3600) / 60);
|
|
if (time < 3600) return pad(mins) + ":" + pad(secs);
|
|
var hrs = Math.floor((time % 86400) / 3600);
|
|
if (time < 86400) return pad(hrs) + ":" + pad(mins) + ":" + pad(secs);
|
|
var days = Math.floor(time / 86400);
|
|
return days + "::" + pad(hrs) + ":" + pad(mins) + ":" + pad(secs);
|
|
};
|
|
});
|