Volafile Upload-Helper

Helps Volafile users avoid certain problematic servers when uploading files, shows what server each file was uploaded to on hover, and allows raising the parallel-upload limit, up to 10.

Autor
Arnold François Lecherche
Denne inštalácií
0
Celkový počet inštalácií
3
Hodnotenie
0 0 0
Verzia
1.01
Vytvorené
10.05.2021
Aktualizované
10.05.2021
Licencia
neuvedené
Spustiť na

This allows you to see keep from uploading large files (more than a million bytes) to Volafile servers that have gotten slow lately; it also allows you to see which server any file has been uploaded to by hovering over it, and to set the maximum number of parallel uploads, up to 10.

Alternatively, you can make this a bookmarklet; just bookmark this very page, change the bookmark's title to "Volafile Upload-Helper", and change its URL to this:

javascript:(function(w%2Cd%2CM)%7B%27use%20strict%27%3Bvar%20a%3Dfalse%2Cdlcss%3Dd.createElement(%27style%27)%2CnbRegEx%3D%2F%5E(%3F%3A%5Ba-zA-Z0-9-%5D%7B3%2C%7D%2C)*%5Ba-zA-Z0-9-%5D%7B3%2C%7D%7Cnone%24%7C%5E%24%2F%2CcommasRegExp%3D%2F%2C%2B%24%2F%2CcommaRegExp%3D%2F%2C%2Fg%2CextRegExp%3D%2F%5C..%2B%2F%2Cc%2Culmenu%2Cub%2Cr%2Cex%2Cup%2Cftt%2Ck%3Bfunction%20getStatusText(t)%7Bvar%20server%2Cname%2Cblocklist%2Cdl%2Cdlclass%3Bif(this.upload.currentAttempt%26%26this.upload.currentAttempt.info%26%26this.upload.file.size%3E1e3)%7Bserver%3Dthis.upload.currentAttempt.info.server%3Bname%3Dthis.file.dom.nameElement%3Bblocklist%3Dnew%20RegExp((c.ulblock%7C%7C%27none%27).replace(commasRegExp%2C%27%27).replace(commaRegExp%2C%27%5C%5C%5C.%7C%27)%2B%27%5C%5C%5C.%27)%3Bif(blocklist.test(server.replace(extRegExp%2C%27.%27)))%7Bthis.upload.tries-%3D0.9%3Bname.className%3D%27file_name%27%3Bthis.upload.currentAttempt.abort()%7Delse%7Bdl%3Dthis.upload.currentAttempt.info.server.replace(extRegExp%2C%27%27)%3Bdlclass%3D%27dl_%27%2Bdl%3Bif(!name.classList.contains(%27dlnum%27))%7Bname.classList.add(%27dlnum%27%2Cdlclass)%3Bif(dlcss.textContent.indexOf(dlclass)%3D%3D%3D-1)dlcss.textContent%2B%3D%27%5Cn.%27%2Bdlclass%2B%27%3Aafter%7Bcontent%3A%22%20%5Cu2022%20%27%2Bdl%2B%27%5CxA0%22%7D%27%7D%7D%7Dreturn%20this.getStatusText_2(t)%7Dfunction%20remove()%7Bif(%27undefined%27%3D%3D%3Dtypeof%20e)return%3Be.removeTimeout%3Dnull%3Be.forceRemove()%7Dfunction%20setRemoveTimeout(t)%7Bif(this.error)%7Bthis.file.dom.nameElement.innerHTML%2B%3D%27%20%26bull%3B%20%5B%3Cb%3EUPLOAD%20FAILED%3C%2Fb%3E%5D%27%3Breturn%7Dif(this.removeTimeout)w.clearTimeout(this.removeTimeout)%3Bthis.removeTimeout%3Dw.setTimeout(remove%2Ct)%7Dfunction%20isUploading()%7Bvar%20uppy%3D%5Bup.uploadQueue.uploadQueue%2Cup.runningUploads%5D%2Ci%3Duppy.length%2Cj%3Bwhile(i--)%7Bj%3Duppy%5Bi%5D.length%3Bwhile(j--)%7Buppy%5Bi%5D%5Bj%5D.getStatusText_2%3Duppy%5Bi%5D%5Bj%5D.getStatusText_2%7C%7Cuppy%5Bi%5D%5Bj%5D.getStatusText%3Buppy%5Bi%5D%5Bj%5D.getStatusText%3DgetStatusText%3Buppy%5Bi%5D%5Bj%5D.setRemoveTimeout%3DsetRemoveTimeout%7D%7Dreturn%20this.runningUploads.length%3E0%7C%7Cthis.uploadQueue.length()%3E0%7Dfunction%20addFileInfo(t%2Ce)%7Bvar%20dl%2Cdlclass%2Ca%2Cname%3Bif(e%26%26e.id%26%26e.thumb)%7Bdl%3De.thumb.server.replace(extRegExp%2C%27%27)%3Bdlclass%3D%27dl_%27%2Bdl%3Ba%3Dt.layout.elem%3Bname%3Da.querySelector(%27.file_name%27)%3Bif(name%26%26!name.classList.contains(%27dlnum%27))%7Bname.classList.add(%27dlnum%27%2Cdlclass)%3Bif(dlcss.textContent.indexOf(dlclass)%3D%3D%3D-1)dlcss.textContent%2B%3D%27%5Cn.%27%2Bdlclass%2B%27%3Aafter%7Bcontent%3A%22%20%5Cu2022%20%27%2Bdl%2B%27%5CxA0%22%7D%27%7D%7Dthis.addFileInfo_2(t%2Ce)%7Dfunction%20set_mcu()%7Bvar%20mcu%3DM.floor(prompt(%27config.max_concurrent_uploads%27%2Cc.max_concurrent_uploads))%3Bif(mcu!%3Dmcu%7C%7Cmcu%3C1%7C%7Cmcu%3E10)return%3Bthis.innerText%3D%27%E2%AE%85%20%27%2B(c.max_concurrent_uploads%3Dmcu)%7Dfunction%20set_block()%7Bvar%20block%3Dprompt(%27Enter%20a%20comma-separated%20list%20of%20server%20prefixes%20to%20block%2C%20e.g.%20%22dl8%22%20or%20%22dl7%2Cdl8%22%20(without%20quotes).%27%2Cc.ulblock)%3Bif(block%3D%3D%3Dnull%7C%7Cblock%3D%3D%3Dfalse%7C%7C!nbRegEx.test(block))return%3Bthis.innerText%3D%27%E2%A6%B8%20%27%2B(c.ulblock%3Dblock)%7Dfunction%20init()%7Bif(a)return%20k%26%26w.clearInterval(k)%3Belse%20k%3Dk%7C%7Cw.setInterval(init%2C1e3)%3Bc%3Dw.config%3Bif(!c)return%3Bulmenu%3Dd.getElementById(%27ulmenu%27)%7C%7Cd.createElement(%27div%27)%3Br%3Dw.RoomInstance%3Bif(!r)return%3Bex%3Dr.extensions%3Bup%3Dex.upload%3Bup.isUploading%3DisUploading%3Bftt%3Dex.fileTooltips%3Bftt.addFileInfo_2%3Dftt.addFileInfo_2%7C%7Cftt.addFileInfo%3Bftt.addFileInfo%3DaddFileInfo%3Bulmenu.id%3D%27ulmenu%27%3Bulmenu.setAttribute(%27style%27%2C%27display%3Ainline-block%3Bfont-size%3A0.9em%27)%3Bulmenu.innerHTML%3D%27%3Ca%20class%3D%22button%22%20id%3D%22ul_mcu%22%20title%3D%22set%20max%20concurrent%20uploads%22%3E%E2%AE%85%3C%2Fa%3E%20%3Ca%20class%3D%22button%22%20id%3D%22ul_block%22%20title%3D%22set%20upload%20blacklist%22%3E%E2%A6%B8%3C%2Fa%3E%20%26nbsp%3B%27%3Bub%3Dd.getElementById(%27upload_container%27)%3Bub.insertBefore(ulmenu%2Cub.firstChild)%3Bd.getElementById(%27ul_mcu%27).addEventListener(%27click%27%2Cset_mcu%2Cfalse)%3Bd.getElementById(%27ul_block%27).addEventListener(%27click%27%2Cset_block%2Cfalse)%3Ba%3Dtrue%3Bif(k)w.clearInterval(k)%7Ddlcss.textContent%3D%27.dlnum%3Aafter%7Bfont-style%3Aitalic%3Bopacity%3A0.5%7D%27%3Bd.documentElement.appendChild(dlcss)%3Binit()%3Bd.addEventListener(%27DOMContentLoaded%27%2Cinit%2Cfalse)%3Bw.addEventListener(%27load%27%2Cinit%2Cfalse)%7D)(window%2Cdocument%2CMath)


Then click the bookmarklet while in any room where you want to see where you left off.