diff --git a/copyparty/web/browser.js b/copyparty/web/browser.js
index 1a506f9d..f089ab46 100644
--- a/copyparty/web/browser.js
+++ b/copyparty/web/browser.js
@@ -90,6 +90,10 @@ var Ls = {
"m_ok": "OK",
"m_ng": "Cancel",
+ "enable": "Enable",
+ "danger": "DANGER",
+ "clipped": "copied to clipboard",
+
"ht_s": "second!s",
"ht_m": "minute!s",
"ht_h": "hour!s",
@@ -170,6 +174,15 @@ var Ls = {
"utl_stat": "status",
"utl_prog": "progress",
+ // keep short:
+ "utl_404": "404",
+ "utl_err": "ERROR",
+ "utl_oserr": "OS-error",
+ "utl_found": "found",
+ "utl_defer": "defer",
+ "utl_yolo": "YOLO",
+ "utl_done": "done",
+
"ul_flagblk": "the files were added to the queue
however there is a busy up2k in another browser tab,
so waiting for that to finish first",
"ul_btnlk": "the server configuration has locked this switch into this state",
@@ -195,6 +208,7 @@ var Ls = {
"cl_hcancel": "column hiding aborted",
"ct_grid": '田 the grid',
+ "ct_ttips": '◔ ◡ ◔">ℹ️ tooltips',
"ct_thumb": 'in grid-view, toggle icons or thumbnails$NHotkey: T">🖼️ thumbs',
"ct_csel": 'use CTRL and SHIFT for file selection in grid-view">sel',
"ct_ihop": 'when the image viewer is closed, scroll down to the last viewed file">g⮯',
@@ -326,6 +340,7 @@ var Ls = {
"fs_pname": "optional link name; will be random if blank",
"fs_tsrc": "the file or folder to share",
"fs_ppwd": "optional password",
+ "fs_w8": "creating share...",
"fs_ok": "
Enter/OK
to Clipboard\npress ESC/Cancel
to Close\n\n",
"frt_dec": "may fix some cases of broken filenames\">url-decode",
@@ -336,6 +351,8 @@ var Ls = {
"fr_case": "case-sensitive regex\">case",
"fr_win": "windows-safe names; replace <>:"\\|?*
with japanese fullwidth characters\">win",
"fr_slash": "replace /
with a character that doesn't cause new folders to be created\">no /",
+ "fr_re": "regex search pattern to apply to original filenames; capturing groups can be referenced in the format field below like <code>(1)</code> and <code>(2)</code> and so on",
+ "fr_fmt": "inspired by foobar2000:$N<code>(title)</code> is replaced by song title,$N<code>[(artist) - ](title)</code> skips [this] part if artist is blank$N<code>$lpad((tn),2,0)</code> pads tracknumber to 2 digits",
"fr_pdel": "delete",
"fr_pnew": "save as",
"fr_pname": "provide a name for your new preset",
@@ -345,7 +362,7 @@ var Ls = {
"fr_tags": "tags for the selected files (read-only, just for reference):",
"fr_busy": "renaming {0} items...\n\n{1}",
"fr_efail": "rename failed:\n",
- "fr_nchg": "{0} of the new names were altered due to win
and/or ikke /
\n\nOK to continue with these altered new names?",
+ "fr_nchg": "{0} of the new names were altered due to win
and/or no /
\n\nOK to continue with these altered new names?",
"fd_ok": "delete OK",
"fd_err": "delete failed:\n",
@@ -395,6 +412,7 @@ var Ls = {
"gt_c1": "truncate filenames more (show less)",
"gt_c2": "truncate filenames less (show more)",
+ "sm_w8": "searching...",
"sm_prev": "search results below are from a previous query:\n ",
"sl_close": "close search results",
"sl_hits": "showing {0} hits",
@@ -467,16 +485,20 @@ var Ls = {
"un_del": "delete",
"un_m3": "loading your recent uploads...",
"un_busy": "deleting {0} files...",
+ "un_clip": "{0} links copied to clipboard",
"u_https1": "you should",
"u_https2": "switch to https",
"u_https3": "for better performance",
"u_ancient": 'your browser is impressively ancient -- maybe you should use bup instead',
"u_nowork": "need firefox 53+ or chrome 57+ or iOS 11+",
+ "u_nodrop": 'your browser is too old for drag-and-drop uploading',
+ "u_notdir": "that's not a folder!\n\nyour browser is too old,\nplease try dragdrop instead",
"u_uri": "to dragdrop images from other browser windows,\nplease drop it onto the big upload button",
"u_enpot": 'switch to potato UI (may improve upload speed)',
"u_depot": 'switch to fancy UI (may reduce upload speed)',
"u_gotpot": 'switching to the potato UI for improved upload speed,\n\nfeel free to disagree and switch back!',
+ "u_pott": "files: {0} finished, {1} failed, {2} busy, {3} queued
", "u_ever": "this is the basic uploader; up2k needs at least{1}
',
"u_unpt": "you can undo / delete this upload using the top-left 🧯",
+ "u_bigtab": 'about to show {0} files\n\nthis may crash your browser, are you sure?',
+ "u_scan": 'Scanning files...',
+ "u_dirstuck": 'directory iterator got stuck trying to access the following {0} items; will skip:',
"u_etadone": 'Done ({0}, {1} files)',
"u_etaprep": '(preparing to upload)',
"u_hashdone": 'hashing done',
"u_hashing": 'hash',
"u_dupdefer": "duplicate; will be processed after all other files",
+ "u_actx": "click this text to prevent loss ofEnter/OK
for å kopiere linken (for CTRL-V)\ntrykk ESC/Avbryt
for å bare bekrefte\n\n",
"frt_dec": "kan korrigere visse ødelagte filnavn\">url-decode",
@@ -873,6 +914,8 @@ var Ls = {
"fr_case": "versalfølsomme uttrykk\">Aa",
"fr_win": "bytt ut bokstavene <>:"\\|?*
med$Ntilsvarende som windows ikke får panikk av\">win",
"fr_slash": "bytt ut bokstaven /
slik at den ikke forårsaker at nye mapper opprettes\">ikke /",
+ "fr_re": "regex-mønster som kjøres på hvert filnavn. Grupper kan leses ut i format-feltet nedenfor, f.eks. <code>(1)</code> og <code>(2)</code> osv.",
+ "fr_fmt": "inspirert av foobar2000:$N<code>(title)</code> byttes ut med sangtittel,$N<code>[(artist) - ](title)</code> dropper [dette] hvis artist er blank$N<code>$lpad((tn),2,0)</code> viser sangnr. med 2 siffer",
"fr_pdel": "slett",
"fr_pnew": "lagre som",
"fr_pname": "gi innstillingene dine et navn",
@@ -932,6 +975,7 @@ var Ls = {
"gt_c1": "reduser maks-lengde på filnavn",
"gt_c2": "øk maks-lengde på filnavn",
+ "sm_w8": "søker...",
"sm_prev": "søkeresultatene er fra et tidligere søk:\n ",
"sl_close": "lukk søkeresultater",
"sl_hits": "viser {0} treff",
@@ -1004,16 +1048,20 @@ var Ls = {
"un_del": "slett",
"un_m3": "henter listen med nylig opplastede filer...",
"un_busy": "sletter {0} filer...",
+ "un_clip": "{0} lenker kopiert til utklippstavlen",
"u_https1": "du burde",
"u_https2": "bytte til https",
"u_https3": "for høyere hastighet",
"u_ancient": 'nettleseren din er prehistorisk -- mulig du burde bruke bup istedenfor',
"u_nowork": "krever firefox 53+, chrome 57+, eller iOS 11+",
+ "u_nodrop": 'nettleseren din er for gammel til å laste opp filer ved å dra dem inn i vinduet',
+ "u_notdir": "mottok ikke mappen!\n\nnettleseren din er for gammel,\nprøv å dra mappen inn i vinduet istedenfor",
"u_uri": "for å laste opp bilder ifra andre nettleservinduer,\nslipp bildet rett på den store last-opp-knappen",
"u_enpot": 'bytt til enkelt UI (gir sannsynlig raskere opplastning)',
"u_depot": 'bytt til snæsent UI (gir sannsynlig tregere opplastning)',
"u_gotpot": 'byttet til et enklere UI for å laste opp raskere,\n\ndu kan gjerne bytte tilbake altså!',
+ "u_pott": "filer: {0} ferdig, {1} feilet, {2} behandles, {3} i kø
", "u_ever": "dette er den primitive opplasteren; up2k krever minst:{1}
',
"u_unpt": "Du kan angre / slette opplastningen med 🧯 oppe til venstre",
+ "u_bigtab": 'Vil nå vise {0} filer...\n\nDette kan krasje nettleseren din. Fortsette?',
+ "u_scan": 'Leser mappene...',
+ "u_dirstuck": 'Nettleseren din fikk ikke tilgang til å lese følgende {0} filer/mapper, så de blir hoppet over:',
"u_etadone": 'Ferdig ({0}, {1} filer)',
"u_etaprep": '(forbereder opplastning)',
"u_hashdone": 'befaring ferdig',
"u_hashing": 'les',
"u_dupdefer": "duplikat; vil bli håndtert til slutt",
+ "u_actx": "klikk her for å forhindre tap avEnter/OK
复制到剪贴板\n按 ESC/Cancel
关闭\n\n",
"frt_dec": "可能修复一些损坏的文件名\">url-decode",
@@ -1410,6 +1477,8 @@ var Ls = {
"fr_case": "区分大小写的正则表达式\">case",
"fr_win": "Windows 安全名称;将 <>:"\\|?*
替换为日文全角字符\">win",
"fr_slash": "将 /
替换为不会导致新文件夹创建的字符\">不使用 /",
+ "fr_re": "正则表达式搜索模式应用于原始文件名;$N可以在下面的格式字段中引用捕获组,如<code>(1)</code>和<code>(2)</code>等等。", //m
+ "fr_fmt": "受到 foobar2000 的启发:$N<code>(title)</code> 被歌曲名称替换,$N<code>[(artist) - ](title)</code> 仅当歌曲艺术家不为空时才包含<code>[此]</code>部分$N<code>$lpad((tn),2,0)</code> 将曲目编号填充为 2 位数字", //m
"fr_pdel": "删除",
"fr_pnew": "另存为",
"fr_pname": "为你的新预设提供一个名称",
@@ -1419,7 +1488,7 @@ var Ls = {
"fr_tags": "选定文件的标签(只读,仅供参考):",
"fr_busy": "正在重命名 {0} 项...\n\n{1}",
"fr_efail": "重命名失败:\n",
- "fr_nchg": "{0} 个新名称由于 win
和/或 ikke /
被更改\n\n确定继续使用这些更改的新名称?",
+ "fr_nchg": "{0} 个新名称由于 win
和/或 不使用 /
被更改\n\n确定继续使用这些更改的新名称?",
"fd_ok": "删除成功",
"fd_err": "删除失败:\n",
@@ -1469,6 +1538,7 @@ var Ls = {
"gt_c1": "截断文件名更多(显示更少)",
"gt_c2": "截断文件名更少(显示更多)",
+ "sm_w8": "正在搜寻匹配...", //m
"sm_prev": "以下是来自先前查询的搜索结果:\n ",
"sl_close": "关闭搜索结果",
"sl_hits": "显示 {0} 个结果",
@@ -1541,16 +1611,20 @@ var Ls = {
"un_del": "删除",
"un_m3": "正在加载你的近期上传...",
"un_busy": "正在删除 {0} 个文件...",
+ "un_clip": "{0} 个链接已复制到剪贴板", //m
"u_https1": "你应该",
"u_https2": "切换到 https",
"u_https3": "以获得更好的性能",
"u_ancient": '你的浏览器非常古老 -- 也许你应该 改用 bup',
"u_nowork": "需要 Firefox 53+ 或 Chrome 57+ 或 iOS 11+",
+ "u_nodrop": '您的浏览器太旧,不支持通过拖动文件到窗口来上传文件', //m
+ "u_notdir": "未收到文件夹!\n\n您的浏览器太旧;\n请尝试将文件夹拖入窗口", //m
"u_uri": "要从其他浏览器窗口拖放图片,\n请将其拖放到大的上传按钮上",
"u_enpot": '切换到 简约 UI(可能提高上传速度)',
"u_depot": '切换到 精美 UI(可能降低上传速度)',
"u_gotpot": '切换到土豆 UI 以提高上传速度,\n\n随时可以不同意并切换回去!',
+ "u_pott": "个文件: {0} 已完成, {1} 失败, {2} 正在处理, {3} 已排队
", //m "u_ever": "这是基本的上传工具; up2k 需要至少{1}
',
"u_unpt": "你可以使用左上角的 🧯 撤销/删除此上传",
+ "u_bigtab": '即将显示 {0} 个文件。这可能会导致您的浏览器崩溃。您确定吗?', //m
+ "u_scan": '正在扫描文件...', //m
+ "u_dirstuck": '您的浏览器无法访问以下 {0} 个文件/文件夹,因此它们将被跳过:', //m
"u_etadone": '完成 ({0}, {1} 个文件)',
"u_etaprep": '(准备上传)',
"u_hashdone": '哈希完成',
"u_hashing": '哈希',
"u_dupdefer": "这是一个重复文件。它将在所有其他文件上传后进行处理", //m
+ "u_actx": "单击此文本以防止切换到其他窗口/选项卡时性能下降", //m
"u_fixed": "好! 已修复 👍",
"u_cuerr": "上传块 {0} 的 {1} 失败;\n可能无害,继续中\n\n文件:{2}",
"u_cuerr2": "服务器拒绝上传(块 {0} 的 {1});\n稍后重试\n\n文件:{2}\n\n错误 ",
@@ -1813,7 +1891,7 @@ ebi('op_cfg').innerHTML = (
'', - 'enable | ']; + '' + L.enable + '']; for (var a = 0; a < r.drch.length; a++) { html.push('' + r.drch[a] + ' | '); @@ -4504,7 +4582,7 @@ var fileman = (function () { surl = surl.slice(15); modal.confirm(L.fs_ok + esc(surl), function() { cliptxt(surl, function () { - toast.ok(2, 'copied to clipboard'); + toast.ok(2, L.clipped); }); }); } @@ -4519,7 +4597,7 @@ var fileman = (function () { plist.push(pbtns[a].textContent); shui.style.display = 'none'; - toast.inf(30, "creating share..."); + toast.inf(30, L.fs_w8); var body = { "k": sh_k.value, @@ -4607,8 +4685,8 @@ var fileman = (function () { '
regex | |
format | |
regex | |
format | |
preset | ', '', '', @@ -4616,7 +4694,9 @@ var fileman = (function () { ' |
' + (cheap ? ' | ' : '' + - '') + + '') + '' + ' |