diff options
author | RaNaN <Mast3rRaNaN@hotmail.de> | 2013-03-04 13:03:25 +0100 |
---|---|---|
committer | RaNaN <Mast3rRaNaN@hotmail.de> | 2013-03-04 13:03:25 +0100 |
commit | ef0a09ceb334f1d1f05ad790e570ef0cdaaa3c52 (patch) | |
tree | e2f7b1e1f16298d35b18d705bb2c1d7b406d846b /module/web/static/js/helpers | |
parent | more responsive file listing, scales for smaller screen sizes (diff) | |
download | pyload-ef0a09ceb334f1d1f05ad790e570ef0cdaaa3c52.tar.xz |
functions to render file status, only simple coloring for now
Diffstat (limited to 'module/web/static/js/helpers')
-rw-r--r-- | module/web/static/js/helpers/fileHelper.js | 51 | ||||
-rw-r--r-- | module/web/static/js/helpers/formatSize.js | 4 |
2 files changed, 53 insertions, 2 deletions
diff --git a/module/web/static/js/helpers/fileHelper.js b/module/web/static/js/helpers/fileHelper.js new file mode 100644 index 000000000..d7cf03f53 --- /dev/null +++ b/module/web/static/js/helpers/fileHelper.js @@ -0,0 +1,51 @@ +// Helpers to render the file view +define('helpers/fileHelper', ['handlebars', 'utils/apitypes'], + function(Handlebars, Api) { + + function fileClass(file, options) { + if (file.finished) + return 'finished'; + else if (file.failed) + return "failed"; + else if (file.offline) + return "offline"; + else if (file.online) + return "online"; + else if (file.waiting) + return "waiting"; + else if (file.downloading) + return "downloading"; + + return ""; + } + + // TODO + function fileIcon(media, options) { + return 'iconf-music'; + } + + // TODO rest of the states + function fileStatus(file, options) { + var s; + var msg = file.download.statusmsg; + + if (file.failed) { + s = "<i class='iconf-remove'></i> "; + if (file.download.error) + s += file.download.error; + else s += msg; + } else if (file.finished) + s = "<i class='iconf-ok'></i> " + msg; + else if(file.downloading) + s= "<div class='progress'><div class='bar' style='width: 50%'></div></div>"; + else + s = msg; + + return new Handlebars.SafeString(s); + } + + Handlebars.registerHelper('fileClass', fileClass); + Handlebars.registerHelper('fileIcon', fileIcon); + Handlebars.registerHelper('fileStatus', fileStatus); + return fileClass; + });
\ No newline at end of file diff --git a/module/web/static/js/helpers/formatSize.js b/module/web/static/js/helpers/formatSize.js index 1b1d96a73..a792392b7 100644 --- a/module/web/static/js/helpers/formatSize.js +++ b/module/web/static/js/helpers/formatSize.js @@ -1,8 +1,8 @@ // Format bytes in human readable format define('helpers/formatSize', ['handlebars'], function(Handlebars) { + var sizes = ["B", "KiB", "MiB", "GiB", "TiB", "PiB", "EiB"]; function formatSize(bytes, options) { - var sizes = ["B", "KiB", "MiB", "GiB", "TiB", "PiB", "EiB"]; - if (bytes == 0) return '0 B'; + if (bytes === 0) return '0 B'; var i = parseInt(Math.floor(Math.log(bytes) / Math.log(1024))); // round to two digits return (bytes / Math.pow(1024, i)).toFixed(2) + ' ' + sizes[i]; |