diff options
Diffstat (limited to 'static/js/shobon.js')
-rw-r--r-- | static/js/shobon.js | 26 |
1 files changed, 25 insertions, 1 deletions
diff --git a/static/js/shobon.js b/static/js/shobon.js index b9e265c..5c65e94 100644 --- a/static/js/shobon.js +++ b/static/js/shobon.js @@ -95,7 +95,10 @@ function shobon() { if(localStorage.getItem("shobon_embedimg") == "true") { embedImg(reply); } - + // convertir tamaños de archivo a formato legible + if(localStorage.getItem("shobon_size") == "true") { + fixFileSize(); + } } if (newRepliesInThread > 0 && !inThread) { var btnNew = document.createElement("span"); @@ -284,6 +287,7 @@ function shobonSettings(e) { p.appendChild(createCheckbox("shobon_on", "<b>Activar extensión</b>", true)); p.appendChild(createCheckbox("shobon_navbar", "Fijar barra superior", false)); p.appendChild(createCheckbox("shobon_ids", "Colorear IDs", true)); + p.appendChild(createCheckbox("shobon_size", "Tamaños de archivo legibles", false)); p.appendChild(createCheckbox("shobon_embedimg", "Insertar imágenes miniatura", false)); p.appendChild(createCheckbox("shobon_newposts", "Destacar mensajes nuevos", false)); p.appendChild(createCheckbox("shobon_country", "Reemplazar códigos de país por nombres", false)); @@ -431,6 +435,26 @@ function markId(e) { } } +function readableSize(B) { + var thresh = 1024; + if(Math.abs(B) < thresh) return B + " B"; + var units = ["KB","MB","GB"]; + var u = -1; + do { + B /= thresh; + ++u; + } while(Math.abs(B) >= thresh && u < units.length - 1); + return B.toFixed(1)+" "+units[u]; +} +function fixFileSize(){ + var obj = document.getElementsByClassName("fs"); + for (var i=0; i<obj.length; i++){ + var parts = obj[i].childNodes[2].textContent.split(" B, "); + var filesize = parts[0].substring(2); + obj[i].childNodes[2].textContent = "-(" + readableSize(filesize) + ", " + parts[1]; + } +} + function embedImg(reply) { var links = reply.getElementsByTagName("a"); for(i=0;i<links.length&&i<5;i++) { |