From d95806cd324e8028224b8adf735a9e00cce9d659 Mon Sep 17 00:00:00 2001 From: Nik Afiq Date: Sun, 26 Jul 2026 03:10:50 +0900 Subject: [PATCH] fix: update JDownloader script to include download password in crawljob format --- manifests/media/jdownloader.yaml | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/manifests/media/jdownloader.yaml b/manifests/media/jdownloader.yaml index 08d41e5..b3a4c27 100644 --- a/manifests/media/jdownloader.yaml +++ b/manifests/media/jdownloader.yaml @@ -169,8 +169,14 @@ spec: package_name = basename.split('.', 1)[0] or 'subyshare' fname = f'{WATCH_DIR}/{int(time.time()*1000)}.crawljob' + lines = [f'text={url}', 'autoStart=TRUE', 'autoConfirm=TRUE', f'packageName={package_name}'] + password = params.get('password', [''])[0] + if password: + # crawljob format requires literal backslashes doubled + escaped_pw = password.replace('\\', '\\\\') + lines.append(f'downloadPassword={escaped_pw}') with open(fname, 'w') as f: - f.write(f'text={url}\nautoStart=TRUE\nautoConfirm=TRUE\npackageName={package_name}\n') + f.write('\n'.join(lines) + '\n') self.send_response(200); self.end_headers() self.wfile.write(b'Ok.') def log_message(self, *a): pass