mirror of
https://github.com/9001/copyparty.git
synced 2026-06-18 20:22:27 -06:00
filesize units 6/7; closes #1389
This commit is contained in:
parent
228c3dfa79
commit
43773f2c7e
|
|
@ -1889,7 +1889,7 @@ def add_ui(ap, retry: int):
|
||||||
ap2.add_argument("--grid", action="store_true", help="show grid/thumbnails by default (volflag=grid)")
|
ap2.add_argument("--grid", action="store_true", help="show grid/thumbnails by default (volflag=grid)")
|
||||||
ap2.add_argument("--gsel", action="store_true", help="select files in grid by ctrl-click (volflag=gsel)")
|
ap2.add_argument("--gsel", action="store_true", help="select files in grid by ctrl-click (volflag=gsel)")
|
||||||
ap2.add_argument("--localtime", action="store_true", help="default to local timezone instead of UTC")
|
ap2.add_argument("--localtime", action="store_true", help="default to local timezone instead of UTC")
|
||||||
ap2.add_argument("--ui-filesz", metavar="FMT", type=u, default="1", help="default filesize format; one of these: 0, 1, 2, 2c, 3, 3c, 4, 4c, 5, 5c, fuzzy (see UI)")
|
ap2.add_argument("--ui-filesz", metavar="FMT", type=u, default="1", help="default filesize format; one of these: 0, 1, 2, 2c, 3, 3c, 4, 4c, 5, 5c, 6, 6c, 7, 7c, fuzzy (see UI)")
|
||||||
ap2.add_argument("--gauto", metavar="PERCENT", type=int, default=0, help="switch to gridview if more than \033[33mPERCENT\033[0m of files are pics/vids; 0=disabled")
|
ap2.add_argument("--gauto", metavar="PERCENT", type=int, default=0, help="switch to gridview if more than \033[33mPERCENT\033[0m of files are pics/vids; 0=disabled")
|
||||||
ap2.add_argument("--rcm", metavar="TXT", default="yy", help="rightclick-menu; two yes/no options: 1st y/n is enable-custom-menu, 2nd y/n is enable-double")
|
ap2.add_argument("--rcm", metavar="TXT", default="yy", help="rightclick-menu; two yes/no options: 1st y/n is enable-custom-menu, 2nd y/n is enable-double")
|
||||||
ap2.add_argument("--lang", metavar="LANG", type=u, default="eng", help="language, for example \033[32meng\033[0m / \033[32mnor\033[0m / ...")
|
ap2.add_argument("--lang", metavar="LANG", type=u, default="eng", help="language, for example \033[32meng\033[0m / \033[32mnor\033[0m / ...")
|
||||||
|
|
|
||||||
|
|
@ -999,16 +999,20 @@ ebi('op_cfg').innerHTML = (
|
||||||
'<div>\n' +
|
'<div>\n' +
|
||||||
' <h3>' + L.cl_hfsz + '</h3>\n' +
|
' <h3>' + L.cl_hfsz + '</h3>\n' +
|
||||||
' <div><select id="fszfmt">\n' +
|
' <div><select id="fszfmt">\n' +
|
||||||
' <option value="0">0 ┃ 1234567</option>\n' +
|
' <option value="0">0 ┃ 2345678</option>\n' +
|
||||||
' <option value="1">1 ┃ 1 234 567</option>\n' +
|
' <option value="1">1 ┃ 2 345 678</option>\n' +
|
||||||
' <option value="2">2- ┃ 1.18 M</option>\n' +
|
' <option value="2">2- ┃ 2.24 M /1024</option>\n' +
|
||||||
' <option value="2c">2c ┃ 1.18 M</option>\n' +
|
' <option value="2c">2c ┃ 2.24 M /1024</option>\n' +
|
||||||
' <option value="3">3- ┃ 1.2 M</option>\n' +
|
' <option value="3">3- ┃ 2.2 M /1024</option>\n' +
|
||||||
' <option value="3c">3c ┃ 1.2 M</option>\n' +
|
' <option value="3c">3c ┃ 2.2 M /1024</option>\n' +
|
||||||
' <option value="4">4- ┃ 1.18 MB</option>\n' +
|
' <option value="4">4- ┃ 2.24 Mi /1024</option>\n' +
|
||||||
' <option value="4c">4c ┃ 1.18 MB</option>\n' +
|
' <option value="4c">4c ┃ 2.24 Mi /1024</option>\n' +
|
||||||
' <option value="5">5- ┃ 1.2 MB</option>\n' +
|
' <option value="5">5- ┃ 2.2 Mi /1024</option>\n' +
|
||||||
' <option value="5c">5c ┃ 1.2 MB</option>\n' +
|
' <option value="5c">5c ┃ 2.2 Mi /1024</option>\n' +
|
||||||
|
' <option value="6">6- ┃ 2.35 MB /1000</option>\n' +
|
||||||
|
' <option value="6c">6c ┃ 2.35 MB /1000</option>\n' +
|
||||||
|
' <option value="7">7- ┃ 2.3 MB /1000</option>\n' +
|
||||||
|
' <option value="7c">7c ┃ 2.3 MB /1000</option>\n' +
|
||||||
' <option value="fuzzy">fuzzy</option>\n' +
|
' <option value="fuzzy">fuzzy</option>\n' +
|
||||||
' </select></div>\n' +
|
' </select></div>\n' +
|
||||||
'</div>\n' +
|
'</div>\n' +
|
||||||
|
|
|
||||||
|
|
@ -269,7 +269,7 @@ function U2pvis(act, btns, uc, st) {
|
||||||
nb = fo.bt * (++fo.nh / fo.cb.length),
|
nb = fo.bt * (++fo.nh / fo.cb.length),
|
||||||
p = r.perc(nb, 0, fobj.size, fobj.t_hashing);
|
p = r.perc(nb, 0, fobj.size, fobj.t_hashing);
|
||||||
|
|
||||||
fo.hp = f2f(p[0], 2) + '%, ' + p[1] + ', ' + f2f(p[2], 2) + ' MB/s';
|
fo.hp = f2f(p[0], 2) + '%, ' + p[1] + ', ' + f2f(p[2], 2) + ' MiB/s';
|
||||||
if (!r.is_act(fo.in))
|
if (!r.is_act(fo.in))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
|
@ -289,7 +289,7 @@ function U2pvis(act, btns, uc, st) {
|
||||||
return;
|
return;
|
||||||
|
|
||||||
var p = r.perc(fo.bd, fo.bd0, fo.bt, fobj.t_uploading);
|
var p = r.perc(fo.bd, fo.bd0, fo.bt, fobj.t_uploading);
|
||||||
fo.hp = f2f(p[0], 2) + '%, ' + p[1] + ', ' + f2f(p[2], 2) + ' MB/s';
|
fo.hp = f2f(p[0], 2) + '%, ' + p[1] + ', ' + f2f(p[2], 2) + ' MiB/s';
|
||||||
|
|
||||||
if (!r.is_act(fo.in))
|
if (!r.is_act(fo.in))
|
||||||
return;
|
return;
|
||||||
|
|
@ -1634,7 +1634,7 @@ function up2k_init(subtle) {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!nhash) {
|
if (!nhash) {
|
||||||
var h = L.u_etadone.format(humansize(st.bytes.hashed), pvis.ctr.ok + pvis.ctr.ng);
|
var h = L.u_etadone.format(humansize(st.bytes.hashed, 2), pvis.ctr.ok + pvis.ctr.ng);
|
||||||
if (st.eta.h !== h) {
|
if (st.eta.h !== h) {
|
||||||
st.eta.h = ebi('u2etah').innerHTML = h;
|
st.eta.h = ebi('u2etah').innerHTML = h;
|
||||||
console.log('{0} hash, {1} up, {2} busy'.format(
|
console.log('{0} hash, {1} up, {2} busy'.format(
|
||||||
|
|
@ -1645,7 +1645,7 @@ function up2k_init(subtle) {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!nsend && !nhash) {
|
if (!nsend && !nhash) {
|
||||||
var h = L.u_etadone.format(humansize(st.bytes.uploaded), pvis.ctr.ok + pvis.ctr.ng);
|
var h = L.u_etadone.format(humansize(st.bytes.uploaded, 2), pvis.ctr.ok + pvis.ctr.ng);
|
||||||
|
|
||||||
if (st.eta.u !== h)
|
if (st.eta.u !== h)
|
||||||
st.eta.u = ebi('u2etau').innerHTML = h;
|
st.eta.u = ebi('u2etau').innerHTML = h;
|
||||||
|
|
@ -1710,7 +1710,7 @@ function up2k_init(subtle) {
|
||||||
|
|
||||||
donut.eta = eta;
|
donut.eta = eta;
|
||||||
st.eta[eid] = '{0}, {1}/s, {2}'.format(
|
st.eta[eid] = '{0}, {1}/s, {2}'.format(
|
||||||
humansize(rem), humansize(bps, 1), humantime(eta));
|
humansize(rem, 2), humansize(bps, 1), humantime(eta));
|
||||||
|
|
||||||
if (!etaskip)
|
if (!etaskip)
|
||||||
ebi(hid).innerHTML = st.eta[eid];
|
ebi(hid).innerHTML = st.eta[eid];
|
||||||
|
|
@ -2691,7 +2691,7 @@ function up2k_init(subtle) {
|
||||||
var spd1 = (t.size / ((t.t_hashed - t.t_hashing) / 1000.)) / (1024 * 1024.),
|
var spd1 = (t.size / ((t.t_hashed - t.t_hashing) / 1000.)) / (1024 * 1024.),
|
||||||
spd2 = (t.size / ((t.t_uploaded - t.t_uploading) / 1000.)) / (1024 * 1024.);
|
spd2 = (t.size / ((t.t_uploaded - t.t_uploading) / 1000.)) / (1024 * 1024.);
|
||||||
|
|
||||||
pvis.seth(t.n, 2, 'hash {0}, up {1} MB/s'.format(
|
pvis.seth(t.n, 2, 'hash {0}, up {1} MiB/s'.format(
|
||||||
f2f(spd1, 2), !isNum(spd2) ? '--' : f2f(spd2, 2)));
|
f2f(spd1, 2), !isNum(spd2) ? '--' : f2f(spd2, 2)));
|
||||||
|
|
||||||
pvis.move(t.n, 'ok');
|
pvis.move(t.n, 'ok');
|
||||||
|
|
|
||||||
|
|
@ -979,17 +979,24 @@ function f2f(val, nd) {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
var HSZ_U = ['B', 'KB', 'MB', 'GB', 'TB', 'PB'];
|
var HSZ_U = ['B', 'KiB', 'MiB', 'GiB', 'TiB', 'PiB'];
|
||||||
function humansize(b, terse) {
|
var HSZ_U2 = ['B', 'Ki', 'Mi', 'Gi', 'Ti', 'Pi'];
|
||||||
|
var HSZ_UD = ['B', 'KB', 'MB', 'GB', 'TB', 'PB'];
|
||||||
|
function humansize(b, tersity) {
|
||||||
var i = 0;
|
var i = 0;
|
||||||
while (b >= 1000 && i < 5) { b /= 1024; i += 1; }
|
while (b >= 1000 && i < 5) { b /= 1024; i += 1; }
|
||||||
return (f2f(b, b >= 100 ? 0 : b >= 10 ? 1 : 2) +
|
return (f2f(b, b >= 100 ? 0 : b >= 10 ? 1 : 2) +
|
||||||
' ' + (terse ? HSZ_U[i].charAt(0) : HSZ_U[i]));
|
' ' + (tersity ? HSZ_U[i].slice(0, tersity) : HSZ_U[i]));
|
||||||
}
|
}
|
||||||
function humansize_su(b) {
|
function humansize_su(b) {
|
||||||
var i = 0;
|
var i = 0;
|
||||||
while (b >= 1000 && i < 5) { b /= 1024; i += 1; }
|
while (b >= 1000 && i < 5) { b /= 1024; i += 1; }
|
||||||
return [b, HSZ_U[i]];
|
return [b, HSZ_U2[i]];
|
||||||
|
}
|
||||||
|
function humansize_sud(b) {
|
||||||
|
var i = 0;
|
||||||
|
while (b >= 1000 && i < 5) { b /= 1000; i += 1; }
|
||||||
|
return [b, HSZ_UD[i]];
|
||||||
}
|
}
|
||||||
function humansize_0(b) {
|
function humansize_0(b) {
|
||||||
return '' + b;
|
return '' + b;
|
||||||
|
|
@ -1013,6 +1020,14 @@ function humansize_5g(b) {
|
||||||
var z = humansize_su(b), u = z[1]; b = z[0];
|
var z = humansize_su(b), u = z[1]; b = z[0];
|
||||||
return [parseFloat(b.toFixed(b >= 10 ? 0 : 1)) + ' ' + u, u.charAt(0)];
|
return [parseFloat(b.toFixed(b >= 10 ? 0 : 1)) + ' ' + u, u.charAt(0)];
|
||||||
}
|
}
|
||||||
|
function humansize_6g(b) {
|
||||||
|
var z = humansize_sud(b), u = z[1]; b = z[0];
|
||||||
|
return [parseFloat(b.toFixed(b >= 100 ? 0 : b >= 10 ? 1 : 2)) + ' ' + u, u.charAt(0)];
|
||||||
|
}
|
||||||
|
function humansize_7g(b) {
|
||||||
|
var z = humansize_sud(b), u = z[1]; b = z[0];
|
||||||
|
return [parseFloat(b.toFixed(b >= 10 ? 0 : 1)) + ' ' + u, u.charAt(0)];
|
||||||
|
}
|
||||||
function humansize_2(b) {
|
function humansize_2(b) {
|
||||||
return humansize_2g(b)[0];
|
return humansize_2g(b)[0];
|
||||||
}
|
}
|
||||||
|
|
@ -1025,6 +1040,12 @@ function humansize_4(b) {
|
||||||
function humansize_5(b) {
|
function humansize_5(b) {
|
||||||
return humansize_5g(b)[0];
|
return humansize_5g(b)[0];
|
||||||
}
|
}
|
||||||
|
function humansize_6(b) {
|
||||||
|
return humansize_6g(b)[0];
|
||||||
|
}
|
||||||
|
function humansize_7(b) {
|
||||||
|
return humansize_7g(b)[0];
|
||||||
|
}
|
||||||
function humansize_2c(b) {
|
function humansize_2c(b) {
|
||||||
var v = humansize_2g(b);
|
var v = humansize_2g(b);
|
||||||
return '<span class="fsz_' + v[1].charAt(0) + '">' + v[0] + '</span>';
|
return '<span class="fsz_' + v[1].charAt(0) + '">' + v[0] + '</span>';
|
||||||
|
|
@ -1041,6 +1062,14 @@ function humansize_5c(b) {
|
||||||
var v = humansize_5g(b);
|
var v = humansize_5g(b);
|
||||||
return '<span class="fsz_' + v[1].charAt(0) + '">' + v[0] + '</span>';
|
return '<span class="fsz_' + v[1].charAt(0) + '">' + v[0] + '</span>';
|
||||||
}
|
}
|
||||||
|
function humansize_6c(b) {
|
||||||
|
var v = humansize_6g(b);
|
||||||
|
return '<span class="fsz_' + v[1].charAt(0) + '">' + v[0] + '</span>';
|
||||||
|
}
|
||||||
|
function humansize_7c(b) {
|
||||||
|
var v = humansize_7g(b);
|
||||||
|
return '<span class="fsz_' + v[1].charAt(0) + '">' + v[0] + '</span>';
|
||||||
|
}
|
||||||
function humansize_fuzzy(b) {
|
function humansize_fuzzy(b) {
|
||||||
if (b <= 0) return "yes";
|
if (b <= 0) return "yes";
|
||||||
if (b <= 80) return "hullkort";
|
if (b <= 80) return "hullkort";
|
||||||
|
|
@ -1063,7 +1092,7 @@ function humansize_fuzzy(b) {
|
||||||
if (b <= 50050000000) return "BD-DL";
|
if (b <= 50050000000) return "BD-DL";
|
||||||
return "LTO";
|
return "LTO";
|
||||||
}
|
}
|
||||||
var humansize_fmts = ['0', '1', '2', '2c', '3', '3c', '4', '4c', '5', '5c', 'fuzzy'];
|
var humansize_fmts = ['0', '1', '2', '2c', '3', '3c', '4', '4c', '5', '5c', '6', '6c', '7', '7c', 'fuzzy'];
|
||||||
window.filesizefun = (function () {
|
window.filesizefun = (function () {
|
||||||
var v = sread('fszfmt', humansize_fmts);
|
var v = sread('fszfmt', humansize_fmts);
|
||||||
return window['humansize_' + (v || window.dfszf)] || humansize_1;
|
return window['humansize_' + (v || window.dfszf)] || humansize_1;
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue