diff options
Diffstat (limited to 'web/src/js/utils.js')
-rw-r--r-- | web/src/js/utils.js | 112 |
1 files changed, 0 insertions, 112 deletions
diff --git a/web/src/js/utils.js b/web/src/js/utils.js deleted file mode 100644 index 40575692..00000000 --- a/web/src/js/utils.js +++ /dev/null @@ -1,112 +0,0 @@ -var $ = require("jquery"); -var _ = require("lodash"); -var actions = require("./actions.js"); - -window.$ = $; -window._ = _; -window.React = require("react"); - -var Key = { - UP: 38, - DOWN: 40, - PAGE_UP: 33, - PAGE_DOWN: 34, - HOME: 36, - END: 35, - LEFT: 37, - RIGHT: 39, - ENTER: 13, - ESC: 27, - TAB: 9, - SPACE: 32, - BACKSPACE: 8, - SHIFT: 16 -}; -// Add A-Z -for (var i = 65; i <= 90; i++) { - Key[String.fromCharCode(i)] = i; -} - - -var formatSize = function (bytes) { - if (bytes === 0) - return "0"; - var prefix = ["b", "kb", "mb", "gb", "tb"]; - for (var i = 0; i < prefix.length; i++) { - if (Math.pow(1024, i + 1) > bytes) { - break; - } - } - var precision; - if (bytes % Math.pow(1024, i) === 0) - precision = 0; - else - precision = 1; - return (bytes / Math.pow(1024, i)).toFixed(precision) + prefix[i]; -}; - - -var formatTimeDelta = function (milliseconds) { - var time = milliseconds; - var prefix = ["ms", "s", "min", "h"]; - var div = [1000, 60, 60]; - var i = 0; - while (Math.abs(time) >= div[i] && i < div.length) { - time = time / div[i]; - i++; - } - return Math.round(time) + prefix[i]; -}; - - -var formatTimeStamp = function (seconds) { - var ts = (new Date(seconds * 1000)).toISOString(); - return ts.replace("T", " ").replace("Z", ""); -}; - -// At some places, we need to sort strings alphabetically descending, -// but we can only provide a key function. -// This beauty "reverses" a JS string. -var end = String.fromCharCode(0xffff); -function reverseString(s) { - return String.fromCharCode.apply(String, - _.map(s.split(""), function (c) { - return 0xffff - c.charCodeAt(0); - }) - ) + end; -} - -function getCookie(name) { - var r = document.cookie.match(new RegExp("\\b" + name + "=([^;]*)\\b")); - return r ? r[1] : undefined; -} -var xsrf = $.param({_xsrf: getCookie("_xsrf")}); - -//Tornado XSRF Protection. -$.ajaxPrefilter(function (options) { - if (["post", "put", "delete"].indexOf(options.type.toLowerCase()) >= 0 && options.url[0] === "/") { - if(options.url.indexOf("?") === -1){ - options.url += "?" + xsrf; - } else { - options.url += "&" + xsrf; - } - } -}); -// Log AJAX Errors -$(document).ajaxError(function (event, jqXHR, ajaxSettings, thrownError) { - if (thrownError === "abort") { - return; - } - var message = jqXHR.responseText; - console.error(thrownError, message, arguments); - actions.EventLogActions.add_event(thrownError + ": " + message); - alert(message); -}); - -module.exports = { - formatSize: formatSize, - formatTimeDelta: formatTimeDelta, - formatTimeStamp: formatTimeStamp, - reverseString: reverseString, - Key: Key, -};
\ No newline at end of file |