feat: add upload schedule windows

Add local weekly upload windows with overnight support, live settings updates, and a shared abortable upload gate.

Keep active transfers running while queued jobs wait outside the window without consuming attempts or parallel slots. Validate and localize the automation settings in German and English, including next-start status and hidden Electron coverage.
This commit is contained in:
Sucukdeluxe
2026-08-16 23:56:13 +02:00
parent 2eaa30c0a8
commit c8170b8556
11 changed files with 708 additions and 3 deletions
+27
View File
@@ -258,11 +258,38 @@
['wie Wiederholungen, Geschwindigkeit, Parallelität, Dateigröße und Logging findest du im', 'such as retries, speed, parallelism, file size, and logging are available in'],
['Accounts-Tab.', 'the Accounts tab.'],
['Wiederholungen und überwachte Ordner für unbeaufsichtigte Uploads.', 'Retries and watched folders for unattended uploads.'],
['Wiederholungen, Upload-Zeitfenster und überwachte Ordner für unbeaufsichtigte Uploads.', 'Retries, upload schedules, and watched folders for unattended uploads.'],
['Unbeaufsichtigter Betrieb', 'Unattended operation'],
['Automatische Wiederholungsrunden', 'Automatic retry rounds'],
['0 = aus. Nach Batch-Ende werden transiente Fehler (Netzwerk, Hoster-Flake) automatisch bis zu N Runden neu versucht.', '0 = off. After a batch ends, transient errors (network or host issues) are retried automatically for up to N rounds.'],
['Wartezeit zwischen Runden', 'Delay between rounds'],
['Minuten · jede weitere Runde wartet entsprechend länger', 'Minutes · each additional round waits proportionally longer'],
['Upload-Zeitfenster', 'Upload schedule'],
['Neue Uploads nur im Zeitfenster starten', 'Start new uploads only during the schedule'],
['Laufende Uploads dürfen fertig werden. Wartende Uploads starten automatisch bei der nächsten Öffnung.', 'Active uploads may finish. Waiting uploads start automatically when the schedule opens again.'],
['Erlaubte Wochentage', 'Allowed weekdays'],
['Mo', 'Mon'],
['Di', 'Tue'],
['Mi', 'Wed'],
['Do', 'Thu'],
['Fr', 'Fri'],
['Sa', 'Sat'],
['So', 'Sun'],
['Start', 'Start'],
['Ende', 'End'],
['Lokale Systemzeit · Zeitfenster über Mitternacht werden unterstützt', 'Local system time · overnight schedules are supported'],
['Deaktiviert. Neue Uploads starten sofort.', 'Disabled. New uploads start immediately.'],
['Ungültig. Wähle mindestens einen Wochentag aus.', 'Invalid. Select at least one weekday.'],
['Ungültig. Start und Ende müssen unterschiedlich sein.', 'Invalid. Start and end must be different.'],
['Ungültig. Prüfe Start- und Endzeit.', 'Invalid. Check the start and end time.'],
['Geöffnet. Neue Uploads dürfen starten.', 'Open. New uploads may start.'],
['Geschlossen. Nächster erlaubter Start:', 'Closed. Next allowed start:'],
['Geöffnet', 'Open'],
['Geschlossen', 'Closed'],
['Ungültig', 'Invalid'],
['Wähle mindestens einen Wochentag für das Upload-Zeitfenster aus.', 'Select at least one weekday for the upload schedule.'],
['Start und Ende des Upload-Zeitfensters müssen unterschiedlich sein.', 'The upload schedule start and end must be different.'],
['Prüfe Start und Ende des Upload-Zeitfensters.', 'Check the upload schedule start and end.'],
['Ordnerüberwachung', 'Folder monitoring'],
['Inaktiv', 'Inactive'],
['Ordnerpfad', 'Folder path'],