mirror of
https://github.com/OpenNebula/one.git
synced 2025-03-23 22:50:09 +03:00
Feature #3748: Humanize Size as Handlebar helper
This commit is contained in:
parent
b0eb8f1f19
commit
40fe976d47
30
src/sunstone/public/app/templates/helpers/humanizeSize.js
Normal file
30
src/sunstone/public/app/templates/helpers/humanizeSize.js
Normal file
@ -0,0 +1,30 @@
|
||||
define(function(require) {
|
||||
var Handlebars = require('hbs/handlebars');
|
||||
var Humanize = require('utils/humanize');
|
||||
|
||||
/**
|
||||
* Returns a human readable size in Kilo, Mega, Giga or Tera bytes
|
||||
* @param {string} unit one of MB, KB, B
|
||||
* @param {integer} value value
|
||||
* @param {object} options
|
||||
* @return {string} human readable size
|
||||
*/
|
||||
var humanizeSize = function(unit, value, options) {
|
||||
switch(unit.toUpperCase()){
|
||||
case 'B':
|
||||
return Humanize.sizeFromB(value);
|
||||
case 'K':
|
||||
case 'KB':
|
||||
return Humanize.sizeFromKB(value);
|
||||
case 'M':
|
||||
case 'MB':
|
||||
return Humanize.sizeFromMB(value);
|
||||
default:
|
||||
return value;
|
||||
}
|
||||
};
|
||||
|
||||
Handlebars.registerHelper('humanizeSize', humanizeSize);
|
||||
|
||||
return humanizeSize;
|
||||
});
|
@ -12,6 +12,8 @@ define(function(require) {
|
||||
|
||||
return {
|
||||
'size': _size,
|
||||
'sizeFromB': _sizeFromB,
|
||||
'sizeFromKB': _sizeFromKB,
|
||||
'sizeFromMB': _sizeFromMB,
|
||||
'prettyTime': _prettyTime,
|
||||
'prettyTimeAxis': _prettyTimeAxis,
|
||||
@ -52,6 +54,14 @@ define(function(require) {
|
||||
return st;
|
||||
}
|
||||
|
||||
function _sizeFromB(value) {
|
||||
return _size(value, true);
|
||||
}
|
||||
|
||||
function _sizeFromKB(value) {
|
||||
return _size(value);
|
||||
}
|
||||
|
||||
function _sizeFromMB(value) {
|
||||
if (typeof(value) === "undefined") {
|
||||
value = 0;
|
||||
|
Loading…
x
Reference in New Issue
Block a user