aboutsummaryrefslogtreecommitdiff
path: root/srcs/phpmyadmin/js/jqplot
diff options
context:
space:
mode:
Diffstat (limited to 'srcs/phpmyadmin/js/jqplot')
-rw-r--r--srcs/phpmyadmin/js/jqplot/plugins/jqplot.byteFormatter.js49
1 files changed, 49 insertions, 0 deletions
diff --git a/srcs/phpmyadmin/js/jqplot/plugins/jqplot.byteFormatter.js b/srcs/phpmyadmin/js/jqplot/plugins/jqplot.byteFormatter.js
new file mode 100644
index 0000000..089251e
--- /dev/null
+++ b/srcs/phpmyadmin/js/jqplot/plugins/jqplot.byteFormatter.js
@@ -0,0 +1,49 @@
+/* vim: set expandtab sw=4 ts=4 sts=4: */
+/**
+ * jqplot formatter for byte values
+ *
+ * @package phpMyAdmin
+ */
+(function ($) {
+ 'use strict';
+ var formatByte = function (value, index) {
+ var val = value;
+ var i = index;
+ var units = [
+ Messages.strB,
+ Messages.strKiB,
+ Messages.strMiB,
+ Messages.strGiB,
+ Messages.strTiB,
+ Messages.strPiB,
+ Messages.strEiB
+ ];
+ while (val >= 1024 && i <= 6) {
+ val /= 1024;
+ i++;
+ }
+ var format = '%.1f';
+ if (Math.floor(val) === val) {
+ format = '%.0f';
+ }
+ return $.jqplot.sprintf(
+ format + ' ' + units[i], val
+ );
+ };
+ /**
+ * The index indicates what unit the incoming data will be in.
+ * 0 for bytes, 1 for kilobytes and so on...
+ */
+ $.jqplot.byteFormatter = function (index) {
+ var i = index || 0;
+ return function (format, value) {
+ var val = value;
+ if (typeof val === 'number') {
+ val = parseFloat(val) || 0;
+ return formatByte(val, i);
+ } else {
+ return String(val);
+ }
+ };
+ };
+}(jQuery));