From af6e7d953ada3cb008a0baa52d12cbad87921b5e Mon Sep 17 00:00:00 2001 From: coderaiser Date: Mon, 11 Mar 2013 09:34:05 -0400 Subject: [PATCH] refactored getShortSize --- ChangeLog | 2 ++ lib/cloudfunc.js | 36 +++++++++++++++--------------------- 2 files changed, 17 insertions(+), 21 deletions(-) diff --git a/ChangeLog b/ChangeLog index 2a3df775..5df33ab2 100644 --- a/ChangeLog +++ b/ChangeLog @@ -26,6 +26,8 @@ and get them out to file system. * If create directory command executed - loading spinner would be on top. +* Refactored getShortSize + 2012.03.01, Version 0.1.9 diff --git a/lib/cloudfunc.js b/lib/cloudfunc.js index 915523f2..ec50c67b 100644 --- a/lib/cloudfunc.js +++ b/lib/cloudfunc.js @@ -157,28 +157,22 @@ var CloudFunc, exports; * гигайбайты и терабайты * @pSize - размер в байтах */ - CloudFunc.getShortedSize = function(pSize){ - /* if pSize=0 - return it */ - if (pSize !== pSize-0) return pSize; + CloudFunc.getShortSize = function(pSize){ + /* Константы размеров, что используются внутри функции */ + var l1KB = 1024, + l1MB = l1KB * l1KB, + l1GB = l1MB * l1KB, + l1TB = l1GB * l1KB, + l1PB = l1TB * l1KB; - /* Константы размеров, что используются - * внутри функции - */ - var l1BMAX = 1024; - var l1KBMAX = 1048576; - var l1MBMAX = 1073741824; - var l1GBMAX = 1099511627776; - var l1TBMAX = 1125899906842624; + if (pSize < l1KB) pSize = pSize + 'b'; + else if (pSize < l1MB) pSize = (pSize/l1KB).toFixed(2) + 'kb'; + else if (pSize < l1GB) pSize = (pSize/l1MB).toFixed(2) + 'mb'; + else if (pSize < l1TB) pSize = (pSize/l1GB).toFixed(2) + 'gb'; + else if (pSize < l1PB) pSize = (pSize/l1TB).toFixed(2) + 'tb'; + else pSize = (pSize/l1PB).toFixed(2) + 'pb'; - var lShorted; - - if (pSize < l1BMAX) lShorted = pSize + 'b'; - else if (pSize < l1KBMAX) lShorted = (pSize/l1BMAX) .toFixed(2) + 'kb'; - else if (pSize < l1MBMAX) lShorted = (pSize/l1KBMAX).toFixed(2) + 'mb'; - else if (pSize < l1GBMAX) lShorted = (pSize/l1MBMAX).toFixed(2) + 'gb'; - else if (pSize < l1TBMAX) lShorted = (pSize/l1GBMAX).toFixed(2) + 'tb'; - - return lShorted; + return pSize; }; /** Функция парсит uid и имена пользователей @@ -384,7 +378,7 @@ var CloudFunc, exports; /* если это файл - получаем * короткий размер */ - : CloudFunc.getShortedSize( + : CloudFunc.getShortSize( files[i].size)); lFileTable += '' + '' +