mirror of
https://github.com/sabnzbd/sabnzbd.git
synced 2026-01-06 06:28:45 -05:00
Compare commits
212 Commits
3.6.0Beta4
...
3.5.2
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
fd4e059c13 | ||
|
|
a53575e154 | ||
|
|
4a73484603 | ||
|
|
03b380f90b | ||
|
|
a2bd3b2dfe | ||
|
|
56fe140ebf | ||
|
|
4fafcce740 | ||
|
|
02352c4ae6 | ||
|
|
4b74aab335 | ||
|
|
2d67ac189d | ||
|
|
8ece62e23d | ||
|
|
56c2bdd77d | ||
|
|
1f555f1930 | ||
|
|
8496432c14 | ||
|
|
1672ffa670 | ||
|
|
6aab199f12 | ||
|
|
46d0c379a4 | ||
|
|
99240f145a | ||
|
|
3c9079d73c | ||
|
|
0eb98b9a6c | ||
|
|
76bfd98b77 | ||
|
|
3348640c88 | ||
|
|
d81c64fd2b | ||
|
|
8b4c919617 | ||
|
|
76c58953df | ||
|
|
4ddc5caa49 | ||
|
|
694663bd95 | ||
|
|
62aba5844e | ||
|
|
d0d60cef05 | ||
|
|
3d293fdcb0 | ||
|
|
96e9528046 | ||
|
|
4ea24b3203 | ||
|
|
a756eea25a | ||
|
|
210020e489 | ||
|
|
e586ead024 | ||
|
|
14c80bf1dc | ||
|
|
bdd56e794a | ||
|
|
a544548934 | ||
|
|
e06c1d61fb | ||
|
|
600c5209c6 | ||
|
|
bee90366ee | ||
|
|
e9bc4e9417 | ||
|
|
f01ff15761 | ||
|
|
356ada159d | ||
|
|
cc831e16d8 | ||
|
|
b8dc46ad01 | ||
|
|
d8ab19087d | ||
|
|
ec8a79eedd | ||
|
|
f1e2a8e9d8 | ||
|
|
4042a5fe5d | ||
|
|
a4752751ed | ||
|
|
e23ecf46d1 | ||
|
|
70a8c597a6 | ||
|
|
fa639bdb53 | ||
|
|
233bdd5b1d | ||
|
|
a0ab6d35c7 | ||
|
|
bd29680ce7 | ||
|
|
7139e92554 | ||
|
|
897df53466 | ||
|
|
58281711f6 | ||
|
|
b524383aa3 | ||
|
|
75a16e3588 | ||
|
|
1453032ad6 | ||
|
|
824ab4afad | ||
|
|
73dd41c67f | ||
|
|
59ee77355d | ||
|
|
5c758773ad | ||
|
|
46de49df06 | ||
|
|
d1c54a9a74 | ||
|
|
e7527c45cd | ||
|
|
7d5207aa67 | ||
|
|
654302e691 | ||
|
|
ee673b57fd | ||
|
|
2be374b841 | ||
|
|
906e1eda89 | ||
|
|
ece02cc4fa | ||
|
|
876ad60ddf | ||
|
|
862da354ac | ||
|
|
8fd477b979 | ||
|
|
2d7005655c | ||
|
|
7322f8348a | ||
|
|
e3e3a12e73 | ||
|
|
77cdd057a4 | ||
|
|
e8206fbdd9 | ||
|
|
589f15a77b | ||
|
|
7bb443678a | ||
|
|
6390415101 | ||
|
|
4abf192e11 | ||
|
|
1fed37f9da | ||
|
|
a9d86a7447 | ||
|
|
2abe4c3cef | ||
|
|
0542c25003 | ||
|
|
1b8ee4e290 | ||
|
|
51128cba55 | ||
|
|
3612432581 | ||
|
|
deca000a1b | ||
|
|
39cccb5653 | ||
|
|
f6838dc985 | ||
|
|
8cd4d92395 | ||
|
|
3bf9906f45 | ||
|
|
9f7daf96ef | ||
|
|
67de4df155 | ||
|
|
bc51a4bd1c | ||
|
|
bb54616018 | ||
|
|
6bcff5e014 | ||
|
|
8970a03a9a | ||
|
|
3ad717ca35 | ||
|
|
b14f72c67a | ||
|
|
45d036804f | ||
|
|
8f606db233 | ||
|
|
3766ba5402 | ||
|
|
e851813cef | ||
|
|
4d49ad9141 | ||
|
|
16618b3af2 | ||
|
|
0e5c0f664f | ||
|
|
7be9281431 | ||
|
|
ee0327fac1 | ||
|
|
9930de3e7f | ||
|
|
e8503e89c6 | ||
|
|
1d9ed419eb | ||
|
|
0207652e3e | ||
|
|
0f1e99c5cb | ||
|
|
f134bc7efb | ||
|
|
dcd7c7180e | ||
|
|
fbbfcd075b | ||
|
|
f42d2e4140 | ||
|
|
88882cebbc | ||
|
|
17a979675c | ||
|
|
4642850c79 | ||
|
|
e8d6eebb04 | ||
|
|
864c5160c0 | ||
|
|
99b5a00c12 | ||
|
|
85ee1f07d7 | ||
|
|
e58b4394e0 | ||
|
|
1e91a57bf1 | ||
|
|
39cee52a7e | ||
|
|
72068f939d | ||
|
|
096d0d3cad | ||
|
|
2472ab0121 | ||
|
|
00421717b8 | ||
|
|
ae96d93f94 | ||
|
|
8522c40c8f | ||
|
|
23f86e95f1 | ||
|
|
eed2045189 | ||
|
|
217785bf0f | ||
|
|
6aef50dc5d | ||
|
|
16b6e3caa7 | ||
|
|
3de4c99a8a | ||
|
|
980aa19a75 | ||
|
|
fb4b57e056 | ||
|
|
03638365ea | ||
|
|
157cb1c83d | ||
|
|
e51f11c2b1 | ||
|
|
1ad0961dd8 | ||
|
|
46ff7dd4e2 | ||
|
|
8b067df914 | ||
|
|
ef43b13272 | ||
|
|
e8e9974224 | ||
|
|
feebbb9f04 | ||
|
|
bc4f06dd1d | ||
|
|
971e4fc909 | ||
|
|
51cc765949 | ||
|
|
19c6a4fffa | ||
|
|
105ac32d2f | ||
|
|
57550675d2 | ||
|
|
e674abc5c0 | ||
|
|
f965c96f51 | ||
|
|
c76b8ed9e0 | ||
|
|
4fbd0d8a7b | ||
|
|
2186c0fff6 | ||
|
|
1adca9a9c1 | ||
|
|
9408353f2b | ||
|
|
84f4d453d2 | ||
|
|
d10209f2a1 | ||
|
|
3ae149c72f | ||
|
|
47385acc3b | ||
|
|
814eeaa900 | ||
|
|
5f2ea13aad | ||
|
|
41ca217931 | ||
|
|
b57d36e8dd | ||
|
|
9a4be70734 | ||
|
|
a8443595a6 | ||
|
|
fd0a70ac58 | ||
|
|
8a8685c968 | ||
|
|
9e6cb8da8e | ||
|
|
054ec54d51 | ||
|
|
272ce773cb | ||
|
|
050b925f7b | ||
|
|
0087940898 | ||
|
|
e323c014f9 | ||
|
|
cc465c7554 | ||
|
|
14cb37564f | ||
|
|
094db56c3b | ||
|
|
aabb709b8b | ||
|
|
0833dd2db9 | ||
|
|
cd3f912be4 | ||
|
|
665c516db6 | ||
|
|
b670da9fa0 | ||
|
|
80bee9bffe | ||
|
|
d85a70e8ad | ||
|
|
8f21533e76 | ||
|
|
89996482a1 | ||
|
|
03c10dce91 | ||
|
|
bd5331be05 | ||
|
|
46e1645289 | ||
|
|
4ce3965747 | ||
|
|
9d4af19db3 | ||
|
|
48e034f4be | ||
|
|
f8959baa2f | ||
|
|
8ed5997eae | ||
|
|
daf9f50ac8 | ||
|
|
6b11013c1a |
10
.github/dependabot.yml
vendored
10
.github/dependabot.yml
vendored
@@ -1,6 +1,14 @@
|
||||
version: 2
|
||||
updates:
|
||||
- package-ecosystem: "github-actions"
|
||||
- package-ecosystem: "pip"
|
||||
directory: "/"
|
||||
schedule:
|
||||
interval: "weekly"
|
||||
- package-ecosystem: "pip"
|
||||
directory: "/builder"
|
||||
schedule:
|
||||
interval: "weekly"
|
||||
- package-ecosystem: "pip"
|
||||
directory: "/builder/osx"
|
||||
schedule:
|
||||
interval: "weekly"
|
||||
|
||||
3
.github/workflows/black.yml
vendored
3
.github/workflows/black.yml
vendored
@@ -5,7 +5,7 @@ jobs:
|
||||
black:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v2
|
||||
- name: Black Code Formatter
|
||||
uses: lgeiger/black-action@master
|
||||
with:
|
||||
@@ -15,7 +15,6 @@ jobs:
|
||||
scripts
|
||||
tools
|
||||
builder
|
||||
builder/SABnzbd.spec
|
||||
tests
|
||||
--line-length=120
|
||||
--target-version=py37
|
||||
|
||||
66
.github/workflows/build_release.yml
vendored
66
.github/workflows/build_release.yml
vendored
@@ -9,25 +9,15 @@ jobs:
|
||||
build_windows:
|
||||
name: Build Windows binary
|
||||
runs-on: windows-latest
|
||||
timeout-minutes: 30
|
||||
timeout-minutes: 15
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v2
|
||||
- name: Set up Python 3.10 (64bit)
|
||||
uses: actions/setup-python@v3
|
||||
uses: actions/setup-python@v2
|
||||
with:
|
||||
python-version: "3.10"
|
||||
architecture: "x64"
|
||||
- name: Cache Python virtualenv (64bit)
|
||||
uses: syphar/restore-virtualenv@v1.2
|
||||
id: cache-virtualenv-64bit
|
||||
with:
|
||||
custom_virtualenv_dir: "venv64"
|
||||
custom_cache_key_element: "release"
|
||||
requirement_files: |
|
||||
**/requirements.txt
|
||||
PKG-INFO
|
||||
- name: Install Python dependencies (64bit)
|
||||
if: steps.cache-virtualenv-64bit.outputs.cache-hit != 'true'
|
||||
run: |
|
||||
python --version
|
||||
pip install --upgrade pip wheel
|
||||
@@ -36,38 +26,28 @@ jobs:
|
||||
- name: Build source distribution
|
||||
run: python builder/package.py source
|
||||
- name: Upload source distribution
|
||||
uses: actions/upload-artifact@v3
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
path: "*-src.tar.gz"
|
||||
name: Source distribution
|
||||
- name: Build Windows standalone binary and installer (64bit)
|
||||
run: python builder/package.py installer
|
||||
- name: Upload Windows standalone binary (64bit)
|
||||
uses: actions/upload-artifact@v3
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
path: "*-win64-bin.zip"
|
||||
name: Windows Windows standalone binary (64bit)
|
||||
- name: Upload Windows installer (64bit)
|
||||
uses: actions/upload-artifact@v3
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
path: "*-win-setup.exe"
|
||||
name: Windows installer
|
||||
- name: Set up Python 3.8 (32bit and legacy)
|
||||
uses: actions/setup-python@v3
|
||||
uses: actions/setup-python@v2
|
||||
with:
|
||||
python-version: "3.8"
|
||||
architecture: "x86"
|
||||
- name: Cache Python virtualenv (32bit and legacy)
|
||||
uses: syphar/restore-virtualenv@v1.2
|
||||
id: cache-virtualenv-32bit
|
||||
with:
|
||||
custom_virtualenv_dir: "venv32"
|
||||
custom_cache_key_element: "release"
|
||||
requirement_files: |
|
||||
**/requirements.txt
|
||||
PKG-INFO
|
||||
- name: Install Python dependencies (32bit and legacy)
|
||||
if: steps.cache-virtualenv-32bit.outputs.cache-hit != 'true'
|
||||
run: |
|
||||
python --version
|
||||
pip install --upgrade pip wheel
|
||||
@@ -76,7 +56,7 @@ jobs:
|
||||
- name: Build Windows standalone binary (32bit and legacy)
|
||||
run: python builder/package.py binary
|
||||
- name: Upload Windows standalone binary (32bit and legacy)
|
||||
uses: actions/upload-artifact@v3
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
path: "*-win32-bin.zip"
|
||||
name: Windows Windows standalone binary (32bit and legacy)
|
||||
@@ -87,7 +67,7 @@ jobs:
|
||||
build_macos:
|
||||
name: Build macOS binary
|
||||
runs-on: macos-11
|
||||
timeout-minutes: 30
|
||||
timeout-minutes: 15
|
||||
env:
|
||||
SIGNING_AUTH: ${{ secrets.SIGNING_AUTH }}
|
||||
NOTARIZATION_USER: ${{ secrets.NOTARIZATION_USER }}
|
||||
@@ -95,15 +75,15 @@ jobs:
|
||||
# We need the official Python, because the GA ones only support newer macOS versions
|
||||
# The deployment target is picked up by the Python build tools automatically
|
||||
# If updated, make sure to also set LSMinimumSystemVersion in SABnzbd.spec
|
||||
PYTHON_VERSION: "3.10.4"
|
||||
PYTHON_VERSION: "3.10.2"
|
||||
MACOSX_DEPLOYMENT_TARGET: "10.9"
|
||||
# We need to force compile for universal2 support
|
||||
CFLAGS: -arch arm64 -arch x86_64
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v2
|
||||
- name: Cache Python download
|
||||
id: cache-python-download
|
||||
uses: actions/cache@v3
|
||||
uses: actions/cache@v2
|
||||
with:
|
||||
path: ~/python.pkg
|
||||
key: macOS-Python-${{ env.PYTHON_VERSION }}
|
||||
@@ -111,18 +91,7 @@ jobs:
|
||||
if: steps.cache-python-download.outputs.cache-hit != 'true'
|
||||
run: curl https://www.python.org/ftp/python/${PYTHON_VERSION}/python-${PYTHON_VERSION}-macos11.pkg -o ~/python.pkg
|
||||
- name: Install Python
|
||||
run: |
|
||||
sudo installer -pkg ~/python.pkg -target /
|
||||
unlink /usr/local/bin/python
|
||||
ln -s /usr/local/bin/python3 /usr/local/bin/python
|
||||
- name: Cache Python virtualenv
|
||||
uses: syphar/restore-virtualenv@v1.2
|
||||
id: cache-virtualenv
|
||||
with:
|
||||
custom_cache_key_element: "release"
|
||||
requirement_files: |
|
||||
**/requirements.txt
|
||||
PKG-INFO
|
||||
run: sudo installer -pkg ~/python.pkg -target /
|
||||
- name: Install Python dependencies
|
||||
# We have to manually install a few packages:
|
||||
# 1. cffi will pick up the single-arch libffi from Homebrew, while Apple provides universal2-version
|
||||
@@ -132,14 +101,13 @@ jobs:
|
||||
# https://github.com/pyca/cryptography/issues/5918
|
||||
# 3. We need to build the PyInstaller bootloader from sources:
|
||||
# https://github.com/pyinstaller/pyinstaller/issues/6235
|
||||
if: steps.cache-virtualenv.outputs.cache-hit != 'true'
|
||||
run: |
|
||||
python3 --version
|
||||
pip3 install --upgrade pip wheel
|
||||
|
||||
brew uninstall libffi --ignore-dependencies
|
||||
ARCHFLAGS="-arch x86_64 -arch arm64" pip3 install --upgrade cffi --no-binary cffi
|
||||
pip3 install --upgrade -r requirements.txt
|
||||
pip3 install --upgrade -r requirements.txt --no-binary sabyenc3
|
||||
|
||||
pip3 uninstall cryptography -y
|
||||
pip3 download -r builder/osx/requirements.txt --platform macosx_10_10_universal2 --only-binary :all: --no-deps --dest .
|
||||
@@ -157,7 +125,7 @@ jobs:
|
||||
python3 builder/package.py app
|
||||
python3 builder/make_dmg.py
|
||||
- name: Upload macOS binary
|
||||
uses: actions/upload-artifact@v3
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
path: "*-osx.dmg"
|
||||
name: macOS binary (not notarized)
|
||||
@@ -172,9 +140,9 @@ jobs:
|
||||
env:
|
||||
SNAP_TOKEN: ${{ secrets.SNAP_TOKEN }}
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v2
|
||||
- name: Set up Python
|
||||
uses: actions/setup-python@v3
|
||||
uses: actions/setup-python@v2
|
||||
with:
|
||||
python-version: "3.x"
|
||||
- name: Release latest available Snap
|
||||
|
||||
17
.github/workflows/integration_testing.yml
vendored
17
.github/workflows/integration_testing.yml
vendored
@@ -13,6 +13,7 @@ jobs:
|
||||
python-version: ["3.7", "3.8", "3.9", "3.10"]
|
||||
os: [ubuntu-20.04]
|
||||
include:
|
||||
# TODO: Update to 3.10 when all packages are available, currently lxml is missing
|
||||
- name: macOS
|
||||
os: macos-latest
|
||||
python-version: "3.10"
|
||||
@@ -21,27 +22,21 @@ jobs:
|
||||
python-version: "3.10"
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v2
|
||||
- name: Set up Python ${{ matrix.python-version }}
|
||||
uses: actions/setup-python@v3
|
||||
uses: actions/setup-python@v2
|
||||
with:
|
||||
python-version: ${{ matrix.python-version }}
|
||||
- name: Install system dependencies
|
||||
if: runner.os == 'Linux'
|
||||
run: sudo apt-get install unrar p7zip-full par2
|
||||
- name: Cache Python virtualenv
|
||||
uses: syphar/restore-virtualenv@v1.2
|
||||
id: cache-virtualenv
|
||||
with:
|
||||
custom_cache_key_element: "ci"
|
||||
requirement_files: |
|
||||
**/requirements.txt
|
||||
PKG-INFO
|
||||
- name: Install Python dependencies
|
||||
if: steps.cache-virtualenv.outputs.cache-hit != 'true'
|
||||
run: |
|
||||
python --version
|
||||
pip install --upgrade pip wheel
|
||||
pip install --upgrade -r requirements.txt
|
||||
pip install --upgrade -r tests/requirements.txt
|
||||
- name: Test SABnzbd
|
||||
run: pytest -s
|
||||
|
||||
|
||||
|
||||
4
.github/workflows/translations.yml
vendored
4
.github/workflows/translations.yml
vendored
@@ -11,7 +11,7 @@ jobs:
|
||||
env:
|
||||
TX_TOKEN: ${{ secrets.TX_TOKEN }}
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v2
|
||||
- name: Generate translatable texts
|
||||
run: |
|
||||
python3 tools/extract_pot.py
|
||||
@@ -30,7 +30,7 @@ jobs:
|
||||
run: |
|
||||
python3 tools/make_mo.py
|
||||
- name: Push translatable and translated texts back to repo
|
||||
uses: stefanzweifel/git-auto-commit-action@v4.14.0
|
||||
uses: stefanzweifel/git-auto-commit-action@v4.5.1
|
||||
if: env.TX_TOKEN
|
||||
with:
|
||||
commit_message: Update translatable texts
|
||||
|
||||
@@ -1,6 +0,0 @@
|
||||
branch: develop
|
||||
schedule: every week
|
||||
update: all
|
||||
pin: False
|
||||
label_prs: dependencies
|
||||
branch_prefix: pyup/
|
||||
4
PKG-INFO
4
PKG-INFO
@@ -1,7 +1,7 @@
|
||||
Metadata-Version: 1.0
|
||||
Name: SABnzbd
|
||||
Version: 3.6.0Beta4
|
||||
Summary: SABnzbd-3.6.0Beta4
|
||||
Version: 3.5.2
|
||||
Summary: SABnzbd-3.5.2
|
||||
Home-page: https://sabnzbd.org
|
||||
Author: The SABnzbd Team
|
||||
Author-email: team@sabnzbd.org
|
||||
|
||||
78
README.mkd
78
README.mkd
@@ -1,46 +1,48 @@
|
||||
Release Notes - SABnzbd 3.6.0 Beta 4
|
||||
Release Notes - SABnzbd 3.5.2
|
||||
=========================================================
|
||||
|
||||
## Changes and bugfixes since 3.6.0 Beta 3
|
||||
- Reverted changes to file assembly.
|
||||
- Implemented new Quick-check method.
|
||||
## Bugfix since 3.5.1
|
||||
- Reverted change to file assembly that resulted in disk errors.
|
||||
|
||||
## Changes and bugfixes since 3.6.0 Beta 2
|
||||
- Removed Indexer Feedback Integration.
|
||||
- Removed included `Deobfuscate.py` as it is outdated.
|
||||
- In case SIMD is available, multiple files will be assembled
|
||||
simultaneously. This further improves performance.
|
||||
## Changes and bugfixes since 3.5.0
|
||||
- Prevent permissions errors on systems that do not support them.
|
||||
- Small changes in file assembly and Direct Unpack processing.
|
||||
- Changes to the transition from download to active post-processing.
|
||||
- Malformed NZB files could result in a crash.
|
||||
- Prevent crash in Direct Unpack for obfuscated posts.
|
||||
- RSS feeds with HTML-characters in the name resulted in crashes.
|
||||
- macOS: failed to start on older macOS versions.
|
||||
|
||||
## Changes and bugfixes since 3.6.0 Beta 1
|
||||
- Updates to `sabyenc3` to support more compiler setups.
|
||||
- Optimization to the writing of partially downloaded data.
|
||||
- Added `ext_rename_ignore` to add custom extensions that should
|
||||
be ignored during the `Deobfuscate` step.
|
||||
- Prevent crash in API `history` call during post-processing.
|
||||
- Ignore `.par2` files that could not be parsed.
|
||||
## Changes since 3.4.2
|
||||
- Removed Python 3.6 support.
|
||||
- SOCKS5 proxy support for all outgoing connections.
|
||||
- Restored support for UUencoded jobs.
|
||||
- `Required` server option: in case of connection failures, the queue
|
||||
will be paused for a few minutes instead of skipping the server.
|
||||
- Added Special option to preserve paused state after a restart.
|
||||
- Show an estimated time-left indicator for repair and unpacking.
|
||||
- Require TLS version 1.2 or higher for SSL news server connections.
|
||||
- Setting custom ciphers forces the maximum TLS version to 1.2.
|
||||
- Reduced memory usage during and after parsing `.nzb` files.
|
||||
- Handle multiple passwords stored in NZB-file.
|
||||
- macOS/Linux: `Permissions` are only applied if any are set.
|
||||
- macOS/Windows: updated to Python 3.10.2.
|
||||
- macOS: run native on M1 systems. However, included tools
|
||||
(`par2`, `unrar` and `7za`) still require Rosetta emulation.
|
||||
- Snap: updated to `core20` base and restore 7zip support.
|
||||
|
||||
## Changes since 3.5.3
|
||||
- Significantly increased performance by using the yEnc-decoding
|
||||
library of @animetosho. Usenet articles are now decoded using
|
||||
specialized CPU instructions (SIMD) on x86 and ARM systems.
|
||||
- Create and restore backup of configuration and database.
|
||||
- Show source of lower download speed (CPU or disk).
|
||||
- Added keyboard shortcuts (Pause, Add, Status, Config).
|
||||
- Results of `Deobfuscate` step listed in History.
|
||||
- Disable `api_warnings` to prevent showing `Access Denied`
|
||||
information to the external client.
|
||||
- Jobs with `Force` priority always skip duplicate check.
|
||||
- Removed several status items from the `queue` API-call.
|
||||
- Linux: Added AppStream metadata, desktop shortcut and MimeInfo.
|
||||
- macOS: Application and included tools fully native on M1 systems.
|
||||
- macOS/Windows: Updated UnRar to 6.10 and 7-Zip to 21.07.
|
||||
- Windows: Updated MultiPar to v1.3.2.3.
|
||||
|
||||
# Bugfixes since 3.5.3
|
||||
- Extended timeout when measuring system performance.
|
||||
- Interface settings were sometimes reset on page reload.
|
||||
- Par2 sets with duplicate names could skip verification and repair.
|
||||
- Prevent crash if not enough repair blocks are available.
|
||||
## Bugfixes since 3.4.2
|
||||
- Global interface settings would not always be applied correctly.
|
||||
- Email notification setting was not shown correctly.
|
||||
- Improvements and fixes for `Defobfuscate final filenames`.
|
||||
- `Post-Process Only Verified Jobs` would not always work as intended.
|
||||
- Correctly detect too little disk space when unpacking 7zip's.
|
||||
- Improvements to handling of repair by MultiPar and par2cmdline.
|
||||
- HTML characters in configuration fields were shown incorrectly.
|
||||
- On Retry the number of downloaded bytes could exceed the total bytes.
|
||||
- `unrar` logging of Direct Unpack was not logged if it was aborted.
|
||||
- Windows: `portable.cmd` was not included in the release.
|
||||
- Windows: print low-level Windows error on `IOError`.
|
||||
|
||||
## Upgrade notices
|
||||
- The download statistics file `totals10.sab` is updated in 3.2.x
|
||||
|
||||
40
SABnzbd.py
40
SABnzbd.py
@@ -100,7 +100,7 @@ import sabnzbd.config as config
|
||||
import sabnzbd.cfg
|
||||
import sabnzbd.notifier as notifier
|
||||
import sabnzbd.zconfig
|
||||
from sabnzbd.getipaddress import localipv4, publicipv4, ipv6, dnslookup
|
||||
from sabnzbd.getipaddress import localipv4, publicipv4, ipv6
|
||||
from sabnzbd.utils.getperformance import getpystone, getcpu
|
||||
import sabnzbd.utils.ssdp as ssdp
|
||||
|
||||
@@ -397,7 +397,7 @@ def get_user_profile_paths():
|
||||
sabnzbd.DIR_HOME = long_path(sabnzbd.DIR_HOME)
|
||||
return
|
||||
|
||||
elif sabnzbd.MACOS:
|
||||
elif sabnzbd.DARWIN:
|
||||
home = os.environ.get("HOME")
|
||||
if home:
|
||||
sabnzbd.DIR_LCLDATA = "%s/Library/Application Support/SABnzbd" % home
|
||||
@@ -421,7 +421,6 @@ def print_modules():
|
||||
if sabnzbd.decoder.SABYENC_ENABLED:
|
||||
# Yes, we have SABYenc, and it's the correct version, so it's enabled
|
||||
logging.info("SABYenc module (v%s)... found!", sabnzbd.decoder.SABYENC_VERSION)
|
||||
logging.info("SABYenc module is using SIMD set: %s", sabnzbd.decoder.SABYENC_SIMD)
|
||||
else:
|
||||
# Something wrong with SABYenc, so let's determine and print what:
|
||||
if sabnzbd.decoder.SABYENC_VERSION:
|
||||
@@ -459,7 +458,7 @@ def print_modules():
|
||||
have_str = "%.2f" % (float(sabnzbd.newsunpack.RAR_VERSION) / 100)
|
||||
want_str = "%.2f" % (float(sabnzbd.constants.REC_RAR_VERSION) / 100)
|
||||
helpful_warning(T("Your UNRAR version is %s, we recommend version %s or higher.<br />"), have_str, want_str)
|
||||
elif not (sabnzbd.WIN32 or sabnzbd.MACOS):
|
||||
elif not (sabnzbd.WIN32 or sabnzbd.DARWIN):
|
||||
logging.info("UNRAR binary version %.2f", (float(sabnzbd.newsunpack.RAR_VERSION) / 100))
|
||||
else:
|
||||
logging.error(T("unrar binary... NOT found"))
|
||||
@@ -469,7 +468,7 @@ def print_modules():
|
||||
# If available, we prefer 7zip over unzip
|
||||
if sabnzbd.newsunpack.SEVENZIP_COMMAND:
|
||||
logging.info("7za binary... found (%s)", sabnzbd.newsunpack.SEVENZIP_COMMAND)
|
||||
if not (sabnzbd.WIN32 or sabnzbd.MACOS):
|
||||
if not (sabnzbd.WIN32 or sabnzbd.DARWIN):
|
||||
logging.info("7za binary version %s", sabnzbd.newsunpack.SEVENZIP_VERSION)
|
||||
else:
|
||||
logging.info(T("7za binary... NOT found!"))
|
||||
@@ -617,7 +616,7 @@ def get_webhost(cherryhost, cherryport, https_port):
|
||||
browserhost = cherryhost
|
||||
|
||||
# Some systems don't like brackets in numerical ipv6
|
||||
if sabnzbd.MACOS:
|
||||
if sabnzbd.DARWIN:
|
||||
cherryhost = cherryhost.strip("[]")
|
||||
else:
|
||||
try:
|
||||
@@ -632,7 +631,7 @@ def get_webhost(cherryhost, cherryport, https_port):
|
||||
if ipv6 and ipv4 and cherryhost == "" and sabnzbd.WIN32:
|
||||
helpful_warning(T("Please be aware the 0.0.0.0 hostname will need an IPv6 address for external access"))
|
||||
|
||||
if cherryhost == "localhost" and not sabnzbd.WIN32 and not sabnzbd.MACOS:
|
||||
if cherryhost == "localhost" and not sabnzbd.WIN32 and not sabnzbd.DARWIN:
|
||||
# On the Ubuntu family, localhost leads to problems for CherryPy
|
||||
ips = ip_extract()
|
||||
if "127.0.0.1" in ips and "::1" in ips:
|
||||
@@ -641,7 +640,7 @@ def get_webhost(cherryhost, cherryport, https_port):
|
||||
browserhost = "127.0.0.1"
|
||||
|
||||
# This is to please Chrome on macOS
|
||||
if cherryhost == "localhost" and sabnzbd.MACOS:
|
||||
if cherryhost == "localhost" and sabnzbd.DARWIN:
|
||||
cherryhost = "127.0.0.1"
|
||||
browserhost = "localhost"
|
||||
|
||||
@@ -1193,7 +1192,7 @@ def main():
|
||||
logging.info("Preferred encoding = %s", sabnzbd.encoding.CODEPAGE)
|
||||
|
||||
# On Linux/FreeBSD/Unix "UTF-8" is strongly, strongly adviced:
|
||||
if not sabnzbd.WIN32 and not sabnzbd.MACOS and not ("utf-8" in sabnzbd.encoding.CODEPAGE.lower()):
|
||||
if not sabnzbd.WIN32 and not sabnzbd.DARWIN and not ("utf-8" in sabnzbd.encoding.CODEPAGE.lower()):
|
||||
helpful_warning(
|
||||
T(
|
||||
"SABnzbd was started with encoding %s, this should be UTF-8. Expect problems with Unicoded file and directory names in downloads."
|
||||
@@ -1231,14 +1230,13 @@ def main():
|
||||
logging.debug("Available certificates = %s", repr(ssl.create_default_context().cert_store_stats()))
|
||||
|
||||
# List networking
|
||||
localipv4()
|
||||
publicipv4()
|
||||
ipv6()
|
||||
dnslookup()
|
||||
logging.debug("Local IPv4 address = %s", localipv4())
|
||||
logging.debug("Public IPv4 address = %s", publicipv4())
|
||||
logging.debug("IPv6 address = %s", ipv6())
|
||||
|
||||
# Measure basic system performance measured by pystone and - if possible - CPU model
|
||||
getpystone()
|
||||
getcpu()
|
||||
# Measure and log system performance measured by pystone and - if possible - CPU model
|
||||
logging.debug("CPU Pystone available performance = %s", getpystone())
|
||||
logging.debug("CPU model = %s", getcpu())
|
||||
|
||||
logging.info("Using INI file %s", inifile)
|
||||
|
||||
@@ -1584,13 +1582,9 @@ def main():
|
||||
sys.argv = sabnzbd.RESTART_ARGS
|
||||
os.chdir(org_dir)
|
||||
|
||||
# Restore backup
|
||||
if sabnzbd.RESTORE_DATA:
|
||||
config.restore_config_backup(sabnzbd.RESTORE_DATA)
|
||||
|
||||
# Binaries require special restart
|
||||
if hasattr(sys, "frozen"):
|
||||
if sabnzbd.MACOS:
|
||||
if sabnzbd.DARWIN:
|
||||
# On macOS restart of app instead of embedded python
|
||||
my_name = sabnzbd.MY_FULLNAME.replace("/Contents/MacOS/SABnzbd", "")
|
||||
my_args = " ".join(sys.argv[1:])
|
||||
@@ -1615,7 +1609,7 @@ def main():
|
||||
sys.stdout.flush()
|
||||
sabnzbd.pid_file()
|
||||
|
||||
if hasattr(sys, "frozen") and sabnzbd.MACOS:
|
||||
if hasattr(sys, "frozen") and sabnzbd.DARWIN:
|
||||
try:
|
||||
AppHelper.stopEventLoop()
|
||||
except:
|
||||
@@ -1753,7 +1747,7 @@ if __name__ == "__main__":
|
||||
if not handle_windows_service():
|
||||
main()
|
||||
|
||||
elif sabnzbd.MACOS and sabnzbd.FOUNDATION:
|
||||
elif sabnzbd.DARWIN and sabnzbd.FOUNDATION:
|
||||
# macOS binary runner
|
||||
from threading import Thread
|
||||
from PyObjCTools import AppHelper
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
# -*- mode: python -*-
|
||||
import os
|
||||
import re
|
||||
import sys
|
||||
import pkginfo
|
||||
@@ -46,7 +45,7 @@ extra_hiddenimports.extend(collect_submodules("guessit.data"))
|
||||
|
||||
# Add platform specific stuff
|
||||
if sys.platform == "darwin":
|
||||
extra_hiddenimports.extend(["objc", "PyObjCTools"])
|
||||
extra_hiddenimports.extend(["pyobjc", "objc", "PyObjCTools"])
|
||||
# macOS folders
|
||||
extra_folders += ["osx/par2/", "osx/unrar/", "osx/7zip/"]
|
||||
# Add NZB-icon file
|
||||
@@ -127,12 +126,6 @@ pyi_analysis = Analysis(
|
||||
|
||||
pyz = PYZ(pyi_analysis.pure, pyi_analysis.zipped_data)
|
||||
|
||||
codesign_identity = os.environ.get("SIGNING_AUTH")
|
||||
if not codesign_identity:
|
||||
# PyInstaller needs specifically None, not just an empty value
|
||||
codesign_identity = None
|
||||
|
||||
# macOS specific parameters are ignored on other platforms
|
||||
exe = EXE(
|
||||
pyz,
|
||||
pyi_analysis.scripts,
|
||||
@@ -145,8 +138,6 @@ exe = EXE(
|
||||
icon="icons/sabnzbd.ico",
|
||||
version=version_info,
|
||||
target_arch="universal2",
|
||||
entitlements_file="builder/osx/entitlements.plist",
|
||||
codesign_identity=codesign_identity,
|
||||
)
|
||||
|
||||
coll = COLLECT(exe, pyi_analysis.binaries, pyi_analysis.zipfiles, pyi_analysis.datas, name="SABnzbd")
|
||||
@@ -198,10 +189,4 @@ if sys.platform == "darwin":
|
||||
"LSEnvironment": {"LANG": "en_US.UTF-8", "LC_ALL": "en_US.UTF-8"},
|
||||
}
|
||||
|
||||
app = BUNDLE(
|
||||
coll,
|
||||
name="SABnzbd.app",
|
||||
icon="builder/osx/image/sabnzbdplus.icns",
|
||||
bundle_identifier="org.sabnzbd.sabnzbd",
|
||||
info_plist=info_plist,
|
||||
)
|
||||
app = BUNDLE(coll, name="SABnzbd.app", icon="builder/osx/image/sabnzbdplus.icns", info_plist=info_plist)
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
# Special requirements for macOS universal2 binary release
|
||||
# This way dependabot can auto-update them
|
||||
cryptography==36.0.2
|
||||
cryptography==36.0.1
|
||||
@@ -30,7 +30,6 @@ import urllib.error
|
||||
import configobj
|
||||
import pkginfo
|
||||
import github
|
||||
from typing import List
|
||||
|
||||
|
||||
VERSION_FILE = "sabnzbd/version.py"
|
||||
@@ -80,12 +79,12 @@ def delete_files_glob(name):
|
||||
os.remove(f)
|
||||
|
||||
|
||||
def run_external_command(command: List[str], print_output: bool = True):
|
||||
def run_external_command(command):
|
||||
"""Wrapper to ease the use of calling external programs"""
|
||||
process = subprocess.Popen(command, text=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
|
||||
output, _ = process.communicate()
|
||||
ret = process.wait()
|
||||
if (output and print_output) or ret != 0:
|
||||
if output:
|
||||
print(output)
|
||||
if ret != 0:
|
||||
raise RuntimeError("Command returned non-zero exit code %s!" % ret)
|
||||
@@ -135,7 +134,7 @@ def test_sab_binary(binary_path: str):
|
||||
try:
|
||||
urllib.request.urlopen(base_url, timeout=1).read()
|
||||
break
|
||||
except:
|
||||
except urllib.error.URLError:
|
||||
time.sleep(1)
|
||||
else:
|
||||
raise urllib.error.URLError("Could not connect to SABnzbd")
|
||||
@@ -305,17 +304,28 @@ if __name__ == "__main__":
|
||||
notarization_user = os.environ.get("NOTARIZATION_USER")
|
||||
notarization_pass = os.environ.get("NOTARIZATION_PASS")
|
||||
|
||||
# We need to sign all the included binaries before packaging them
|
||||
# Otherwise the signature of the main application becomes invalid
|
||||
# Run PyInstaller and check output
|
||||
run_external_command([sys.executable, "-O", "-m", "PyInstaller", "SABnzbd.spec"])
|
||||
|
||||
# Make sure we created a fully universal2 release when releasing or during CI
|
||||
if RELEASE_THIS or ON_GITHUB_ACTIONS:
|
||||
for bin_to_check in glob.glob("dist/SABnzbd.app/Contents/MacOS/**/*.so", recursive=True):
|
||||
print("Checking if binary is universal2: %s" % bin_to_check)
|
||||
file_output = run_external_command(["file", bin_to_check])
|
||||
# Make sure we have both arm64 and x86
|
||||
if not ("x86_64" in file_output and "arm64" in file_output):
|
||||
raise RuntimeError("Non-universal2 binary found!")
|
||||
|
||||
# Only continue if we can sign
|
||||
if authority:
|
||||
files_to_sign = [
|
||||
"osx/par2/par2-sl64",
|
||||
"osx/par2/arm64/par2",
|
||||
"osx/par2/arm64/libomp.dylib",
|
||||
"osx/unrar/unrar",
|
||||
"osx/unrar/arm64/unrar",
|
||||
"osx/7zip/7zz",
|
||||
"dist/SABnzbd.app/Contents/MacOS/osx/par2/par2-sl64",
|
||||
"dist/SABnzbd.app/Contents/MacOS/osx/7zip/7za",
|
||||
"dist/SABnzbd.app/Contents/MacOS/osx/unrar/unrar",
|
||||
"dist/SABnzbd.app/Contents/MacOS/SABnzbd",
|
||||
"dist/SABnzbd.app",
|
||||
]
|
||||
|
||||
for file_to_sign in files_to_sign:
|
||||
print("Signing %s with hardended runtime" % file_to_sign)
|
||||
run_external_command(
|
||||
@@ -328,55 +338,15 @@ if __name__ == "__main__":
|
||||
"runtime",
|
||||
"--entitlements",
|
||||
"builder/osx/entitlements.plist",
|
||||
"-i",
|
||||
"org.sabnzbd.sabnzbd",
|
||||
"-s",
|
||||
authority,
|
||||
file_to_sign,
|
||||
],
|
||||
print_output=False,
|
||||
)
|
||||
print("Signed %s!" % file_to_sign)
|
||||
|
||||
# Run PyInstaller and check output
|
||||
run_external_command([sys.executable, "-O", "-m", "PyInstaller", "SABnzbd.spec"])
|
||||
|
||||
# Make sure we created a fully universal2 release when releasing or during CI
|
||||
if RELEASE_THIS or ON_GITHUB_ACTIONS:
|
||||
for bin_to_check in glob.glob("dist/SABnzbd.app/Contents/MacOS/**/*.so", recursive=True):
|
||||
print("Checking if binary is universal2: %s" % bin_to_check)
|
||||
file_output = run_external_command(["file", bin_to_check], print_output=False)
|
||||
# Make sure we have both arm64 and x86
|
||||
if not ("x86_64" in file_output and "arm64" in file_output):
|
||||
raise RuntimeError("Non-universal2 binary found!")
|
||||
|
||||
# Only continue if we can sign
|
||||
if authority:
|
||||
# We use PyInstaller to sign the main SABnzbd executable and the SABnzbd.app
|
||||
files_already_signed = [
|
||||
"dist/SABnzbd.app/Contents/MacOS/SABnzbd",
|
||||
"dist/SABnzbd.app",
|
||||
]
|
||||
for file_to_check in files_already_signed:
|
||||
print("Checking signature of %s" % file_to_check)
|
||||
sign_result = run_external_command(
|
||||
[
|
||||
"codesign",
|
||||
"-dv",
|
||||
"-r-",
|
||||
file_to_check,
|
||||
],
|
||||
print_output=False,
|
||||
) + run_external_command(
|
||||
[
|
||||
"codesign",
|
||||
"--verify",
|
||||
"--deep",
|
||||
file_to_check,
|
||||
],
|
||||
print_output=False,
|
||||
)
|
||||
if authority not in sign_result or "adhoc" in sign_result or "invalid" in sign_result:
|
||||
raise RuntimeError("Signature of %s seems invalid!" % file_to_check)
|
||||
|
||||
# Only notarize for real builds that we want to deploy
|
||||
if notarization_user and notarization_pass and RELEASE_THIS:
|
||||
# Prepare zip to upload to notarization service
|
||||
|
||||
@@ -1,18 +1,18 @@
|
||||
# Basic build requirements
|
||||
# Note that not all sub-dependencies are listed, but only ones we know could cause trouble
|
||||
pyinstaller==4.10
|
||||
pyinstaller-hooks-contrib==2022.3
|
||||
pyinstaller==4.8
|
||||
pyinstaller-hooks-contrib==2022.0
|
||||
altgraph==0.17.2
|
||||
wrapt==1.14.0
|
||||
setuptools==62.1.0
|
||||
wrapt==1.13.3
|
||||
setuptools==60.6.0
|
||||
pkginfo==1.8.2
|
||||
PyGithub==1.55
|
||||
charset-normalizer==2.0.12
|
||||
charset-normalizer==2.0.11
|
||||
certifi
|
||||
|
||||
# For the macOS build
|
||||
dmgbuild==1.5.2; sys_platform == 'darwin'
|
||||
mac-alias==2.2.0; sys_platform == 'darwin'
|
||||
macholib==1.16; sys_platform == 'darwin'
|
||||
macholib==1.15.2; sys_platform == 'darwin'
|
||||
ds-store==1.3.0; sys_platform == 'darwin'
|
||||
PyNaCl==1.5.0; sys_platform == 'darwin'
|
||||
@@ -12,7 +12,7 @@
|
||||
<div class="modal-body">
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<!--#if not $windows#-->
|
||||
<!--#if not $nt#-->
|
||||
<div class="checkbox">
|
||||
<label>
|
||||
<input type="checkbox" id="show_hidden_folders"> <span>$T('systemFolders')</span>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<!--#set global $pane="Config"#-->
|
||||
<!--#set global $help_uri="configuration/3.6/configure"#-->
|
||||
<!--#set global $help_uri="configuration/3.5/configure"#-->
|
||||
<!--#include $webdir + "/_inc_header_uc.tmpl"#-->
|
||||
|
||||
<!--#from sabnzbd.encoding import CODEPAGE#-->
|
||||
@@ -41,7 +41,7 @@
|
||||
</td>
|
||||
</tr>
|
||||
<!--#end if#-->
|
||||
<!--#if not $windows and not $macos#-->
|
||||
<!--#if not $nt and not $darwin#-->
|
||||
<tr>
|
||||
<th scope="row">$T('opt-multicore-par2')</th>
|
||||
<td>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<!--#set global $pane="Categories"#-->
|
||||
<!--#set global $help_uri="configuration/3.6/categories"#-->
|
||||
<!--#set global $help_uri="configuration/3.5/categories"#-->
|
||||
<!--#include $webdir + "/_inc_header_uc.tmpl"#-->
|
||||
<div class="colmask">
|
||||
<div class="section">
|
||||
@@ -111,7 +111,7 @@
|
||||
});
|
||||
|
||||
// Add autocomplete and file-browser
|
||||
\$('.fileBrowserSmall').typeahead({appendTo: 'body'}).fileBrowser();
|
||||
\$('.fileBrowserSmall').typeahead().fileBrowser();
|
||||
|
||||
// Make categories sortable
|
||||
\$('.padTable').sortable({
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<!--#set global $pane="Folders"#-->
|
||||
<!--#set global $help_uri="configuration/3.6/folders"#-->
|
||||
<!--#set global $help_uri="configuration/3.5/folders"#-->
|
||||
<!--#include $webdir + "/_inc_header_uc.tmpl"#-->
|
||||
|
||||
<div class="colmask">
|
||||
@@ -47,7 +47,7 @@
|
||||
<input type="checkbox" name="fulldisk_autoresume" id="fulldisk_autoresume" value="1" <!--#if int($fulldisk_autoresume) > 0 then 'checked="checked"' else ""#--> />
|
||||
<span class="desc">$T('explain-fulldisk_autoresume')</span>
|
||||
</div>
|
||||
<!--#if not $windows#-->
|
||||
<!--#if not $nt#-->
|
||||
<div class="field-pair advanced-settings">
|
||||
<label class="config" for="permissions">$T('opt-permissions')</label>
|
||||
<input type="text" name="permissions" id="permissions" value="$permissions" class="smaller_input" />
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<!--#set global $pane="General"#-->
|
||||
<!--#set global $help_uri="configuration/3.6/general"#-->
|
||||
<!--#set global $help_uri="configuration/3.5/general"#-->
|
||||
<!--#include $webdir + "/_inc_header_uc.tmpl"#-->
|
||||
|
||||
<div class="colmask">
|
||||
@@ -9,247 +9,220 @@
|
||||
</label>
|
||||
</div>
|
||||
<form action="saveGeneral" method="post" name="fullform" class="fullform" autocomplete="off">
|
||||
<input type="hidden" id="apikey" name="apikey" value="$apikey" />
|
||||
<input type="hidden" id="ajax" name="ajax" value="1" />
|
||||
<input type="hidden" name="output" value="json" />
|
||||
<div class="section">
|
||||
<div class="col2">
|
||||
<h3>$T('webServer') <a href="$helpuri$help_uri" target="_blank"><span class="glyphicon glyphicon-question-sign"></span></a></h3>
|
||||
<p><b>$T('restartRequired')</b></p>
|
||||
</div><!-- /col2 -->
|
||||
<div class="col1">
|
||||
<fieldset>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="host">$T('opt-host')</label>
|
||||
<input type="text" name="host" id="host" value="$host" />
|
||||
<span class="desc">$T('explain-host')</span>
|
||||
<input type="hidden" id="apikey" name="apikey" value="$apikey" />
|
||||
<input type="hidden" id="ajax" name="ajax" value="1" />
|
||||
<input type="hidden" name="output" value="json" />
|
||||
<div class="section">
|
||||
<div class="col2">
|
||||
<h3>$T('webServer') <a href="$helpuri$help_uri" target="_blank"><span class="glyphicon glyphicon-question-sign"></span></a></h3>
|
||||
<p><b>$T('restartRequired')</b></p>
|
||||
</div><!-- /col2 -->
|
||||
<div class="col1">
|
||||
<fieldset>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="host">$T('opt-host')</label>
|
||||
<input type="text" name="host" id="host" value="$host" />
|
||||
<span class="desc">$T('explain-host')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="port">$T('opt-port')</label>
|
||||
<input type="number" name="port" id="port" value="$port" size="8" data-original="$port" />
|
||||
<span class="desc">$T('explain-port')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="enable_https">$T('opt-enable_https')</label>
|
||||
<input type="checkbox" name="enable_https" id="enable_https" value="1" <!--#if int($enable_https) > 0 then 'checked="checked" data-original="1"' else ""#-->/>
|
||||
<span class="desc">$T('explain-enable_https')</span>
|
||||
<span class="desc"><span class="label label-warning">$T('warning').upper()</span> $T('explain-enable_https_warning')</span>
|
||||
</div>
|
||||
<div class="field-pair advanced-settings">
|
||||
<label class="config" for="web_dir">$T('opt-web_dir')</label>
|
||||
<select name="web_dir" id="web_dir">
|
||||
<!--#for $webline in $web_list#-->
|
||||
<!--#if $webline.lower() == $web_dir.lower()#-->
|
||||
<option value="$webline" selected="selected">$webline</option>
|
||||
<!--#else#-->
|
||||
<option value="$webline">$webline</option>
|
||||
<!--#end if#-->
|
||||
<!--#end for#-->
|
||||
</select>
|
||||
<span class="desc">$T('explain-web_dir') <a href="$caller_url">$caller_url</a></span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="language">$T('opt-language')</label>
|
||||
<select name="language" id="language" class="select">
|
||||
<!--#for $webline in $lang_list#-->
|
||||
<!--#if $webline[0].lower() == $language.lower()#-->
|
||||
<option value="$webline[0]" selected="selected">$webline[1]</option>
|
||||
<!--#else#-->
|
||||
<option value="$webline[0]">$webline[1]</option>
|
||||
<!--#end if#-->
|
||||
<!--#end for#-->
|
||||
</select>
|
||||
<span class="desc">$T('explain-language')</span>
|
||||
<div class="alert alert-info alert-translate">
|
||||
$T('explain-ask-language') <a href="https://sabnzbd.org/wiki/translate" target="_blank" class="alert-link">https://sabnzbd.org/wiki/translate</a>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="port">$T('opt-port')</label>
|
||||
<input type="number" name="port" id="port" value="$port" size="8" data-original="$port" />
|
||||
<span class="desc">$T('explain-port')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="enable_https">$T('opt-enable_https')</label>
|
||||
<input type="checkbox" name="enable_https" id="enable_https" value="1" <!--#if int($enable_https) > 0 then 'checked="checked" data-original="1"' else ""#-->/>
|
||||
<span class="desc">$T('explain-enable_https')</span>
|
||||
<span class="desc"><span class="label label-warning">$T('warning').upper()</span> $T('explain-enable_https_warning')</span>
|
||||
</div>
|
||||
<div class="field-pair advanced-settings">
|
||||
<label class="config" for="web_dir">$T('opt-web_dir')</label>
|
||||
<select name="web_dir" id="web_dir">
|
||||
<!--#for $webline in $web_list#-->
|
||||
<!--#if $webline.lower() == $web_dir.lower()#-->
|
||||
<option value="$webline" selected="selected">$webline</option>
|
||||
<!--#else#-->
|
||||
<option value="$webline">$webline</option>
|
||||
<!--#end if#-->
|
||||
<!--#end for#-->
|
||||
</select>
|
||||
<span class="desc">$T('explain-web_dir') <a href="$caller_url">$caller_url</a></span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="language">$T('opt-language')</label>
|
||||
<select name="language" id="language" class="select">
|
||||
<!--#for $webline in $lang_list#-->
|
||||
<!--#if $webline[0].lower() == $language.lower()#-->
|
||||
<option value="$webline[0]" selected="selected">$webline[1]</option>
|
||||
<!--#else#-->
|
||||
<option value="$webline[0]">$webline[1]</option>
|
||||
<!--#end if#-->
|
||||
<!--#end for#-->
|
||||
</select>
|
||||
<span class="desc">$T('explain-language')</span>
|
||||
<div class="alert alert-info alert-translate">
|
||||
$T('explain-ask-language') <a href="https://sabnzbd.org/wiki/translate" target="_blank" class="alert-link">https://sabnzbd.org/wiki/translate</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="field-pair advanced-settings">
|
||||
<h5 class="darkred nomargin">$T('base-folder'): <span class="path">$my_lcldata</span></h5>
|
||||
</div>
|
||||
<div class="field-pair advanced-settings">
|
||||
<label class="config" for="https_port">$T('opt-https_port')</label>
|
||||
<input type="number" name="https_port" id="https_port" value="$https_port" size="8" data-original="$https_port" />
|
||||
<span class="desc">$T('explain-https_port')</span>
|
||||
</div>
|
||||
<div class="field-pair advanced-settings">
|
||||
<label class="config" for="https_cert">$T('opt-https_cert')</label>
|
||||
<input type="text" name="https_cert" id="https_cert" value="$https_cert" />
|
||||
<button class="btn btn-default generate_cert" title="$T('explain-new-cert')">
|
||||
<span class="glyphicon glyphicon-repeat"></span>
|
||||
</button>
|
||||
<span class="desc">$T('explain-https_cert')</span>
|
||||
</div>
|
||||
<div class="field-pair advanced-settings">
|
||||
<label class="config" for="https_key">$T('opt-https_key')</label>
|
||||
<input type="text" name="https_key" id="https_key" value="$https_key" />
|
||||
<button class="btn btn-default generate_cert" title="$T('explain-new-cert')">
|
||||
<span class="glyphicon glyphicon-repeat"></span>
|
||||
</button>
|
||||
<span class="desc">$T('explain-https_key')</span>
|
||||
</div>
|
||||
<div class="field-pair advanced-settings">
|
||||
<label class="config" for="https_chain">$T('opt-https_chain')</label>
|
||||
<input type="text" name="https_chain" id="https_chain" value="$https_chain" />
|
||||
<span class="desc">$T('explain-https_chain')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<button class="btn btn-default saveButton"><span class="glyphicon glyphicon-ok"></span> $T('button-saveChanges')</button>
|
||||
<button class="btn btn-default sabnzbd_restart"><span class="glyphicon glyphicon-refresh"></span> $T('button-restart') SABnzbd</button>
|
||||
</div>
|
||||
</fieldset>
|
||||
</div>
|
||||
</div>
|
||||
<div class="field-pair advanced-settings">
|
||||
<h5 class="darkred nomargin">$T('base-folder'): <span class="path">$my_lcldata</span></h5>
|
||||
</div>
|
||||
<div class="field-pair advanced-settings">
|
||||
<label class="config" for="https_port">$T('opt-https_port')</label>
|
||||
<input type="number" name="https_port" id="https_port" value="$https_port" size="8" data-original="$https_port" />
|
||||
<span class="desc">$T('explain-https_port')</span>
|
||||
</div>
|
||||
<div class="field-pair advanced-settings">
|
||||
<label class="config" for="https_cert">$T('opt-https_cert')</label>
|
||||
<input type="text" name="https_cert" id="https_cert" value="$https_cert" />
|
||||
<button class="btn btn-default generate_cert" title="$T('explain-new-cert')">
|
||||
<span class="glyphicon glyphicon-repeat"></span>
|
||||
</button>
|
||||
<span class="desc">$T('explain-https_cert')</span>
|
||||
</div>
|
||||
<div class="field-pair advanced-settings">
|
||||
<label class="config" for="https_key">$T('opt-https_key')</label>
|
||||
<input type="text" name="https_key" id="https_key" value="$https_key" />
|
||||
<button class="btn btn-default generate_cert" title="$T('explain-new-cert')">
|
||||
<span class="glyphicon glyphicon-repeat"></span>
|
||||
</button>
|
||||
<span class="desc">$T('explain-https_key')</span>
|
||||
</div>
|
||||
<div class="field-pair advanced-settings">
|
||||
<label class="config" for="https_chain">$T('opt-https_chain')</label>
|
||||
<input type="text" name="https_chain" id="https_chain" value="$https_chain" />
|
||||
<span class="desc">$T('explain-https_chain')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<button class="btn btn-default saveButton"><span class="glyphicon glyphicon-ok"></span> $T('button-saveChanges')</button>
|
||||
<button class="btn btn-default sabnzbd_restart"><span class="glyphicon glyphicon-refresh"></span> $T('button-restart') SABnzbd</button>
|
||||
</div>
|
||||
</fieldset>
|
||||
</div>
|
||||
<div class="section">
|
||||
<div class="col2">
|
||||
<h3>$T('security') <a href="$helpuri$help_uri" target="_blank"><span class="glyphicon glyphicon-question-sign"></span></a></h3>
|
||||
<p><b>$T('restartRequired')</b></p>
|
||||
</div><!-- /col2 -->
|
||||
<div class="col1">
|
||||
<fieldset>
|
||||
<!-- Tricks to avoid browser auto-fill, fixed on-submit with javascript -->
|
||||
<div class="field-pair">
|
||||
<label class="config" for="${pid}_wu">$T('opt-web_username')</label>
|
||||
<input type="text" name="${pid}_wu" id="${pid}_wu" value="$username" data-hide="username" />
|
||||
<span class="desc">$T('explain-web_username')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="${pid}_wp">$T('opt-web_password')</label>
|
||||
<input type="text" name="${pid}_wp" id="${pid}_wp" value="$password" data-hide="password" />
|
||||
<span class="desc">$T('explain-web_password')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="inet_exposure">$T('opt-inet_exposure')</label>
|
||||
<select name="inet_exposure" id="inet_exposure" class="select">
|
||||
<optgroup label="API">
|
||||
<option value="0" <!--#if $inet_exposure == 0 then 'selected="selected"' else ""#-->>$T('inet-local')</option>
|
||||
<option value="1" <!--#if $inet_exposure == 1 then 'selected="selected"' else ""#-->>$T('inet-nzb')</option>
|
||||
<option value="2" <!--#if $inet_exposure == 2 then 'selected="selected"' else ""#-->>$T('inet-api')</option>
|
||||
<option value="3" <!--#if $inet_exposure == 3 then 'selected="selected"' else ""#-->>$T('inet-fullapi')</option>
|
||||
</optgroup>
|
||||
<optgroup label="$T('inet-fullapi') & $T('opt-web_dir')">
|
||||
<option value="4" <!--#if $inet_exposure == 4 then 'selected="selected"' else ""#-->>$T('inet-ui')</option>
|
||||
<option value="5" <!--#if $inet_exposure == 5 then 'selected="selected"' else ""#-->>$T('inet-ui') - $T('inet-external_login')</option>
|
||||
</optgroup>
|
||||
</select>
|
||||
<span class="desc">$T('explain-inet_exposure')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="apikey_display">$T('opt-apikey')</label>
|
||||
<input type="text" id="apikey_display" class="fileBrowserField" value="$apikey" readonly />
|
||||
<button class="btn btn-default show_qrcode" title="$T('explain-qr-code')" rel="$apikey" ><span class="glyphicon glyphicon-qrcode"></span></button>
|
||||
<button class="btn btn-default generate_key" id="generate_new_apikey" title="$T('button-apikey')"><span class="glyphicon glyphicon-repeat"></span></button>
|
||||
<span class="desc">$T('explain-apikey')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="nzbkey">$T('opt-nzbkey')</label>
|
||||
<input type="text" id="nzbkey" class="fileBrowserField" value="$nzb_key" readonly />
|
||||
<button class="btn btn-default show_qrcode" title="$T('explain-qr-code')" rel="$nzb_key" ><span class="glyphicon glyphicon-qrcode"></span></button>
|
||||
<button class="btn btn-default generate_key" id="generate_new_nzbkey" title="$T('button-apikey')"><span class="glyphicon glyphicon-repeat"></span></button>
|
||||
<span class="desc">$T('explain-nzbkey')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<button class="btn btn-default saveButton"><span class="glyphicon glyphicon-ok"></span> $T('button-saveChanges')</button>
|
||||
</div>
|
||||
</fieldset>
|
||||
</div><!-- /col1 -->
|
||||
</div><!-- /section -->
|
||||
<div class="section">
|
||||
<div class="col2">
|
||||
<h3>$T('cmenu-switches') <a href="$helpuri$help_uri" target="_blank"><span class="glyphicon glyphicon-question-sign"></span></a></h3>
|
||||
</div><!-- /col2 -->
|
||||
<div class="col1">
|
||||
<fieldset>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="auto_browser">$T('opt-auto_browser')</label>
|
||||
<input type="checkbox" name="auto_browser" id="auto_browser" value="1" <!--#if int($auto_browser) > 0 then 'checked="checked"' else ""#--> />
|
||||
<span class="desc">$T('explain-auto_browser')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="check_new_rel">$T('opt-check_new_rel')</label>
|
||||
<select name="check_new_rel" id="check_new_rel">
|
||||
<option value="0" <!--#if $check_new_rel == 0 then 'selected="selected"' else ""#--> >$T('off')</option>
|
||||
<option value="1" <!--#if $check_new_rel == 1 then 'selected="selected"' else ""#--> >$T('on')</option>
|
||||
<option value="2" <!--#if $check_new_rel == 2 then 'selected="selected"' else ""#--> >$T('also-test')</option>
|
||||
</div>
|
||||
<div class="section">
|
||||
<div class="col2">
|
||||
<h3>$T('security') <a href="$helpuri$help_uri" target="_blank"><span class="glyphicon glyphicon-question-sign"></span></a></h3>
|
||||
<p><b>$T('restartRequired')</b></p>
|
||||
</div><!-- /col2 -->
|
||||
<div class="col1">
|
||||
<fieldset>
|
||||
<!-- Tricks to avoid browser auto-fill, fixed on-submit with javascript -->
|
||||
<div class="field-pair">
|
||||
<label class="config" for="${pid}_wu">$T('opt-web_username')</label>
|
||||
<input type="text" name="${pid}_wu" id="${pid}_wu" value="$username" data-hide="username" />
|
||||
<span class="desc">$T('explain-web_username')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="${pid}_wp">$T('opt-web_password')</label>
|
||||
<input type="text" name="${pid}_wp" id="${pid}_wp" value="$password" data-hide="password" />
|
||||
<span class="desc">$T('explain-web_password')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="inet_exposure">$T('opt-inet_exposure')</label>
|
||||
<select name="inet_exposure" id="inet_exposure" class="select">
|
||||
<optgroup label="API">
|
||||
<option value="0" <!--#if $inet_exposure == 0 then 'selected="selected"' else ""#-->>$T('inet-local')</option>
|
||||
<option value="1" <!--#if $inet_exposure == 1 then 'selected="selected"' else ""#-->>$T('inet-nzb')</option>
|
||||
<option value="2" <!--#if $inet_exposure == 2 then 'selected="selected"' else ""#-->>$T('inet-api')</option>
|
||||
<option value="3" <!--#if $inet_exposure == 3 then 'selected="selected"' else ""#-->>$T('inet-fullapi')</option>
|
||||
</optgroup>
|
||||
<optgroup label="$T('inet-fullapi') & $T('opt-web_dir')">
|
||||
<option value="4" <!--#if $inet_exposure == 4 then 'selected="selected"' else ""#-->>$T('inet-ui')</option>
|
||||
<option value="5" <!--#if $inet_exposure == 5 then 'selected="selected"' else ""#-->>$T('inet-ui') - $T('inet-external_login')</option>
|
||||
</optgroup>
|
||||
</select>
|
||||
<span class="desc">$T('explain-check_new_rel')</span>
|
||||
</div>
|
||||
<div class="field-pair advanced-settings <!--#if int($certificate_validation) == 0 then "disabled" else ""#-->">
|
||||
<label class="config" for="enable_https_verification">$T('opt-enable_https_verification')</label>
|
||||
<input type="checkbox" name="enable_https_verification" id="enable_https_verification" value="1" <!--#if int($enable_https_verification) > 0 then 'checked="checked"' else ""#--> <!--#if int($certificate_validation) == 0 then "disabled=\"disabled\"" else ""#--> />
|
||||
<span class="desc">$T('explain-enable_https_verification')</span>
|
||||
</div>
|
||||
<div class="field-pair advanced-settings">
|
||||
<label class="config" for="socks5_proxy_url">$T('opt-socks5_proxy_url')</label>
|
||||
<input type="text" name="socks5_proxy_url" id="socks5_proxy_url" value="$socks5_proxy_url" placeholder="socks5://username:password@hostname:port" />
|
||||
<span class="desc">$T('explain-socks5_proxy_url') <br/>$T('readwiki')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<button class="btn btn-default saveButton"><span class="glyphicon glyphicon-ok"></span> $T('button-saveChanges')</button>
|
||||
</div>
|
||||
</fieldset>
|
||||
</div><!-- /col1 -->
|
||||
</div><!-- /section -->
|
||||
<div class="section">
|
||||
<div class="col2">
|
||||
<h3>$T('tuning') <a href="$helpuri$help_uri#toc2" target="_blank"><span class="glyphicon glyphicon-question-sign"></span></a></h3>
|
||||
</div><!-- /col2 -->
|
||||
<div class="col1">
|
||||
<fieldset>
|
||||
<div class="field-pair value-and-select">
|
||||
<label class="config" for="bandwidth_max_value">$T('opt-bandwidth_max')</label>
|
||||
<input type="number" name="bandwidth_max_value" id="bandwidth_max_value" class="smaller_input" />
|
||||
<select name="bandwidth_max_dropdown" id="bandwidth_max_dropdown">
|
||||
<option value="">B/s</option>
|
||||
<option value="K">KB/s</option>
|
||||
<option value="M" selected>MB/s</option>
|
||||
</select>
|
||||
<input type="hidden" name="bandwidth_max" id="bandwidth_max" value="$bandwidth_max" />
|
||||
</div>
|
||||
<div class="field-pair advanced-settings">
|
||||
<label class="config" for="bandwidth_perc">$T('opt-bandwidth_perc')</label>
|
||||
<input type="number" name="bandwidth_perc" id="bandwidth_perc" value="$bandwidth_perc" step="10" min="0" max="100"/>
|
||||
<span class="desc">$T('explain-bandwidth_perc')</span>
|
||||
</div>
|
||||
<div class="field-pair advanced-settings">
|
||||
<label class="config" for="cache_limit">$T('opt-cache_limitstr')</label>
|
||||
<input type="text" name="cache_limit" id="cache_limit" value="$cache_limit" class="smaller_input" />
|
||||
<span class="desc">$T('explain-cache_limitstr').replace("64M", "256M").replace("128M", "512M")</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<button class="btn btn-default saveButton"><span class="glyphicon glyphicon-ok"></span> $T('button-saveChanges')</button>
|
||||
</div>
|
||||
</fieldset>
|
||||
</div><!-- /col1 -->
|
||||
</div><!-- /section -->
|
||||
</form>
|
||||
<span class="desc">$T('explain-inet_exposure')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="apikey_display">$T('opt-apikey')</label>
|
||||
<input type="text" id="apikey_display" class="fileBrowserField" value="$apikey" readonly />
|
||||
<button class="btn btn-default show_qrcode" title="$T('explain-qr-code')" rel="$apikey" ><span class="glyphicon glyphicon-qrcode"></span></button>
|
||||
<button class="btn btn-default generate_key" id="generate_new_apikey" title="$T('button-apikey')"><span class="glyphicon glyphicon-repeat"></span></button>
|
||||
<span class="desc">$T('explain-apikey')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="nzbkey">$T('opt-nzbkey')</label>
|
||||
<input type="text" id="nzbkey" class="fileBrowserField" value="$nzb_key" readonly />
|
||||
<button class="btn btn-default show_qrcode" title="$T('explain-qr-code')" rel="$nzb_key" ><span class="glyphicon glyphicon-qrcode"></span></button>
|
||||
<button class="btn btn-default generate_key" id="generate_new_nzbkey" title="$T('button-apikey')"><span class="glyphicon glyphicon-repeat"></span></button>
|
||||
<span class="desc">$T('explain-nzbkey')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<button class="btn btn-default saveButton"><span class="glyphicon glyphicon-ok"></span> $T('button-saveChanges')</button>
|
||||
</div>
|
||||
</fieldset>
|
||||
</div><!-- /col1 -->
|
||||
</div><!-- /section -->
|
||||
<div class="section">
|
||||
<div class="col2">
|
||||
<h3>$T('cmenu-switches') <a href="$helpuri$help_uri" target="_blank"><span class="glyphicon glyphicon-question-sign"></span></a></h3>
|
||||
</div><!-- /col2 -->
|
||||
<div class="col1">
|
||||
<fieldset>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="auto_browser">$T('opt-auto_browser')</label>
|
||||
<input type="checkbox" name="auto_browser" id="auto_browser" value="1" <!--#if int($auto_browser) > 0 then 'checked="checked"' else ""#--> />
|
||||
<span class="desc">$T('explain-auto_browser')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="check_new_rel">$T('opt-check_new_rel')</label>
|
||||
<select name="check_new_rel" id="check_new_rel">
|
||||
<option value="0" <!--#if $check_new_rel == 0 then 'selected="selected"' else ""#--> >$T('off')</option>
|
||||
<option value="1" <!--#if $check_new_rel == 1 then 'selected="selected"' else ""#--> >$T('on')</option>
|
||||
<option value="2" <!--#if $check_new_rel == 2 then 'selected="selected"' else ""#--> >$T('also-test')</option>
|
||||
</select>
|
||||
<span class="desc">$T('explain-check_new_rel')</span>
|
||||
</div>
|
||||
<div class="field-pair advanced-settings <!--#if int($certificate_validation) == 0 then "disabled" else ""#-->">
|
||||
<label class="config" for="enable_https_verification">$T('opt-enable_https_verification')</label>
|
||||
<input type="checkbox" name="enable_https_verification" id="enable_https_verification" value="1" <!--#if int($enable_https_verification) > 0 then 'checked="checked"' else ""#--> <!--#if int($certificate_validation) == 0 then "disabled=\"disabled\"" else ""#--> />
|
||||
<span class="desc">$T('explain-enable_https_verification')</span>
|
||||
</div>
|
||||
<div class="field-pair advanced-settings">
|
||||
<label class="config" for="socks5_proxy_url">$T('opt-socks5_proxy_url')</label>
|
||||
<input type="text" name="socks5_proxy_url" id="socks5_proxy_url" value="$socks5_proxy_url" placeholder="socks5://username:password@hostname:port" />
|
||||
<span class="desc">$T('explain-socks5_proxy_url') <br/>$T('readwiki')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<button class="btn btn-default saveButton"><span class="glyphicon glyphicon-ok"></span> $T('button-saveChanges')</button>
|
||||
</div>
|
||||
</fieldset>
|
||||
</div><!-- /col1 -->
|
||||
</div><!-- /section -->
|
||||
<div class="section">
|
||||
<div class="col2">
|
||||
<h3>$T('tuning') <a href="$helpuri$help_uri#toc2" target="_blank"><span class="glyphicon glyphicon-question-sign"></span></a></h3>
|
||||
</div><!-- /col2 -->
|
||||
<div class="col1">
|
||||
<fieldset>
|
||||
<div class="field-pair value-and-select">
|
||||
<label class="config" for="bandwidth_max_value">$T('opt-bandwidth_max')</label>
|
||||
<input type="number" name="bandwidth_max_value" id="bandwidth_max_value" class="smaller_input" />
|
||||
<select name="bandwidth_max_dropdown" id="bandwidth_max_dropdown">
|
||||
<option value="">B/s</option>
|
||||
<option value="K">KB/s</option>
|
||||
<option value="M" selected>MB/s</option>
|
||||
</select>
|
||||
<input type="hidden" name="bandwidth_max" id="bandwidth_max" value="$bandwidth_max" />
|
||||
</div>
|
||||
<div class="field-pair advanced-settings">
|
||||
<label class="config" for="bandwidth_perc">$T('opt-bandwidth_perc')</label>
|
||||
<input type="number" name="bandwidth_perc" id="bandwidth_perc" value="$bandwidth_perc" step="10" min="0" max="100"/>
|
||||
<span class="desc">$T('explain-bandwidth_perc')</span>
|
||||
</div>
|
||||
<div class="field-pair advanced-settings">
|
||||
<label class="config" for="cache_limit">$T('opt-cache_limitstr')</label>
|
||||
<input type="text" name="cache_limit" id="cache_limit" value="$cache_limit" class="smaller_input" />
|
||||
<span class="desc">$T('explain-cache_limitstr').replace("64M", "256M").replace("128M", "512M")</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<button class="btn btn-default saveButton"><span class="glyphicon glyphicon-ok"></span> $T('button-saveChanges')</button>
|
||||
</div>
|
||||
</fieldset>
|
||||
</div><!-- /col1 -->
|
||||
</div><!-- /section -->
|
||||
|
||||
<form action="uploadConfig" method="post" name="fullform" class="fullform" autocomplete="off" enctype="multipart/form-data">
|
||||
<input type="hidden" name="apikey" value="$apikey" />
|
||||
<input type="hidden" name="ajax" value="1" />
|
||||
<input type="hidden" name="output" value="json" />
|
||||
<div class="section">
|
||||
<div class="col2">
|
||||
<h3>$T('backup') <a href="$helpuri$help_uri#toc3" target="_blank"><span class="glyphicon glyphicon-question-sign"></span></a></h3>
|
||||
<p><b>$T('restartRequired')</b></p>
|
||||
</div><!-- /col2 -->
|
||||
<div class="col1">
|
||||
<fieldset>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="download_backup">$T('download-backup')</label>
|
||||
<span class="desc"><a class="btn btn-default" href="../backup/?apikey=$apikey" target="_blank" id="download_backup"><span class="glyphicon glyphicon-download-alt"></span> $T('download-backup')</a></span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="config_backup_file">$T('restore-backup')</label>
|
||||
<input type="file" accept=".zip" name="config_backup_file" id="config_backup_file" />
|
||||
<span class="desc">$T('explain-admin_backup')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<button class="btn btn-default saveButton"><span class="glyphicon glyphicon-open"></span> $T('restore-backup')</button>
|
||||
</div>
|
||||
</fieldset>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div><!-- /colmask -->
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<!--#set global $pane="Email"#-->
|
||||
<!--#set global $help_uri="configuration/3.6/notifications"#-->
|
||||
<!--#set global $help_uri="configuration/3.5/notifications"#-->
|
||||
<!--#include $webdir + "/_inc_header_uc.tmpl"#-->
|
||||
|
||||
<!--#def show_notify_checkboxes($section_label)#-->
|
||||
@@ -124,7 +124,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<!--#end if#-->
|
||||
<!--#if $windows#-->
|
||||
<!--#if $nt#-->
|
||||
<div class="section">
|
||||
<div class="col2">
|
||||
<h3>$T('section-AC')</h3>
|
||||
@@ -178,7 +178,7 @@
|
||||
<!--#end if#-->
|
||||
<div class="section" id="nscript">
|
||||
<div class="col2">
|
||||
<h3>$T('section-NScript') <a href="$helpuri$help_uri#nscript" target="_blank"><span class="glyphicon glyphicon-question-sign"></span></a></h3>
|
||||
<h3>$T('section-NScript')</h3>
|
||||
<table>
|
||||
<tr>
|
||||
<td><input type="checkbox" name="nscript_enable" id="nscript_enable" value="1" <!--#if int($nscript_enable) > 0 then 'checked="checked"' else ""#--> /></td>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<!--#set global $pane="RSS"#-->
|
||||
<!--#set global $help_uri="configuration/3.6/rss"#-->
|
||||
<!--#set global $help_uri="configuration/3.5/rss"#-->
|
||||
<!--#include $webdir + "/_inc_header_uc.tmpl"#-->
|
||||
<!--#import html#-->
|
||||
<div class="colmask">
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<!--#set global $pane="Scheduling"#-->
|
||||
<!--#set global $help_uri="configuration/3.6/scheduling"#-->
|
||||
<!--#set global $help_uri="configuration/3.5/scheduling"#-->
|
||||
<!--#include $webdir + "/_inc_header_uc.tmpl"#-->
|
||||
|
||||
<%
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<!--#set global $pane="Servers"#-->
|
||||
<!--#set global $help_uri="configuration/3.6/servers"#-->
|
||||
<!--#set global $help_uri="configuration/3.5/servers"#-->
|
||||
<!--#include $webdir + "/_inc_header_uc.tmpl"#-->
|
||||
|
||||
<!--#import json#-->
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<!--#set global $pane="Sorting"#-->
|
||||
<!--#set global $help_uri="configuration/3.6/sorting"#-->
|
||||
<!--#set global $help_uri="configuration/3.5/sorting"#-->
|
||||
<!--#include $webdir + "/_inc_header_uc.tmpl"#-->
|
||||
|
||||
<div class="colmask">
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<!--#set global $pane="Special"#-->
|
||||
<!--#set global $help_uri="configuration/3.6/special"#-->
|
||||
<!--#set global $help_uri="configuration/3.5/special"#-->
|
||||
<!--#include $webdir + "/_inc_header_uc.tmpl"#-->
|
||||
|
||||
<div class="colmask">
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<!--#set global $pane="Switches"#-->
|
||||
<!--#set global $help_uri="configuration/3.6/switches"#-->
|
||||
<!--#set global $help_uri="configuration/3.5/switches"#-->
|
||||
<!--#include $webdir + "/_inc_header_uc.tmpl"#-->
|
||||
|
||||
<div class="colmask">
|
||||
@@ -178,7 +178,7 @@
|
||||
<input type="checkbox" name="enable_all_par" id="enable_all_par" value="1" <!--#if int($enable_all_par) > 0 then 'checked="checked"' else ""#--> />
|
||||
<span class="desc">$T('explain-enable_all_par').replace('. ', '.<br/>')</span>
|
||||
</div>
|
||||
<!--#if not $windows#-->
|
||||
<!--#if not $nt#-->
|
||||
<div class="field-pair advanced-settings <!--#if not $have_nice then "disabled" else "" #-->">
|
||||
<label class="config" for="nice">$T('opt-nice')</label>
|
||||
<input type="text" name="nice" id="nice" value="$nice" <!--#if not $have_nice then 'readonly="readonly" disabled="disabled"' else "" #--> />
|
||||
@@ -297,7 +297,7 @@
|
||||
<input type="checkbox" name="replace_dots" id="replace_dots" value="1" <!--#if int($replace_dots) > 0 then 'checked="checked"' else ""#--> />
|
||||
<span class="desc">$T('explain-replace_dots')</span>
|
||||
</div>
|
||||
<!--#if not $windows#-->
|
||||
<!--#if not $nt#-->
|
||||
<div class="field-pair">
|
||||
<label class="config" for="sanitize_safe">$T('opt-sanitize_safe')</label>
|
||||
<input type="checkbox" name="sanitize_safe" id="sanitize_safe" value="1" <!--#if int($sanitize_safe) > 0 then 'checked="checked"' else ""#--> />
|
||||
@@ -348,11 +348,149 @@
|
||||
</fieldset>
|
||||
</div><!-- /col1 -->
|
||||
</div><!-- /section -->
|
||||
<div class="section">
|
||||
<div class="col2">
|
||||
<h3>$T('swtag-indexing') <a href="$helpuri$help_uri#toc6" target="_blank"><span class="glyphicon glyphicon-question-sign"></span></a></h3>
|
||||
</div><!-- /col2 -->
|
||||
<div class="col1">
|
||||
<fieldset>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="rating_enable">$T('opt-rating_enable')</label>
|
||||
<input type="checkbox" name="rating_enable" id="rating_enable" value="1" <!--#if int($rating_enable) > 0 then 'checked="checked"' else ""#--> />
|
||||
<span class="desc">$T('explain-rating_enable').replace('. ', '.<br/>')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="rating_api_key">$T('opt-rating_api_key')</label>
|
||||
<input type="text" name="rating_api_key" id="rating_api_key" value="$rating_api_key" />
|
||||
<span class="desc">$T('explain-rating_api_key')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="rating_filter_enable">$T('opt-rating_filter_enable')</label>
|
||||
<input type="checkbox" name="rating_filter_enable" id="rating_filter_enable" value="1" <!--#if int($rating_filter_enable) > 0 then 'checked="checked"' else ""#--> />
|
||||
<span class="desc">$T('explain-rating_filter_enable')</span>
|
||||
</div>
|
||||
<div class="field-pair" id="rating_filter_abort">
|
||||
<label class="config">$T('opt-rating_filter_abort_if')</label>
|
||||
<div class="rating-filter">
|
||||
<p>
|
||||
<label for="rating_filter_abort_video">$T('opt-rating_filter_video')</label>
|
||||
<select name="rating_filter_abort_video" id="rating_filter_abort_video">
|
||||
<option value="0" <!--#if $rating_filter_abort_video == 0 then 'selected="selected"' else ""#--> >$T('notUsed')</option>
|
||||
<!--#for $val in $range(1, 10)#--><option value="$val" <!--#if $rating_filter_abort_video == $val then 'selected="selected"' else ""#--> >$val $T('orLess')</option><!--#end for#-->
|
||||
</select>
|
||||
</p>
|
||||
<p>
|
||||
<label for="rating_filter_abort_audio">$T('opt-rating_filter_audio')</label>
|
||||
<select name="rating_filter_abort_audio" id="rating_filter_abort_audio">
|
||||
<option value="0" <!--#if $rating_filter_abort_audio == 0 then 'selected="selected"' else ""#--> >$T('notUsed')</option>
|
||||
<!--#for $val in $range(1, 10)#--><option value="$val" <!--#if $rating_filter_abort_audio == $val then 'selected="selected"' else ""#--> >$val $T('orLess')</option><!--#end for#-->
|
||||
</select>
|
||||
</p>
|
||||
<p>
|
||||
<span>
|
||||
<input type="checkbox" value="1" id="rating_filter_abort_encrypted" name="rating_filter_abort_encrypted" <!--#if int($rating_filter_abort_encrypted) > 0 then 'checked="checked"' else ""#--> />
|
||||
<label for="rating_filter_abort_encrypted">$T('opt-rating_filter_passworded')</label>
|
||||
</span>
|
||||
<span>
|
||||
<input type="checkbox" value="1" id="rating_filter_abort_encrypted_confirm" name="rating_filter_abort_encrypted_confirm" <!--#if int($rating_filter_abort_encrypted_confirm) > 0 then 'checked="checked"' else ""#--> />
|
||||
<label for="rating_filter_abort_encrypted_confirm">$T('opt-rating_filter_confirmed')</label>
|
||||
</span>
|
||||
</p>
|
||||
<p>
|
||||
<span>
|
||||
<input type="checkbox" value="1" id="rating_filter_abort_spam" name="rating_filter_abort_spam" <!--#if int($rating_filter_abort_spam) > 0 then 'checked="checked"' else ""#--> />
|
||||
<label for="rating_filter_abort_spam">$T('opt-rating_filter_spam')</label>
|
||||
</span>
|
||||
<span>
|
||||
<input type="checkbox" value="1" id="rating_filter_abort_spam_confirm" name="rating_filter_abort_spam_confirm" <!--#if int($rating_filter_abort_spam_confirm) > 0 then 'checked="checked"' else ""#--> />
|
||||
<label for="rating_filter_abort_spam_confirm">$T('opt-rating_filter_confirmed')</label>
|
||||
</span>
|
||||
</p>
|
||||
<p>
|
||||
<input type="checkbox" value="1" id="rating_filter_abort_downvoted" name="rating_filter_abort_downvoted" <!--#if int($rating_filter_abort_downvoted) > 0 then 'checked="checked"' else ""#--> />
|
||||
<label for="rating_filter_abort_downvoted">$T('opt-rating_filter_downvoted')</label>
|
||||
</p>
|
||||
<p>
|
||||
<label for="rating_filter_abort_keywords">$T('opt-rating_filter_keywords')</label>
|
||||
<input type="text" name="rating_filter_abort_keywords" id="rating_filter_abort_keywords" value="$rating_filter_abort_keywords"/>
|
||||
<span class="desc">$T('explain-rating_filter_keywords')</span>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="field-pair" id="rating_filter_pause">
|
||||
<label class="config">$T('opt-rating_filter_pause_if')</label>
|
||||
<div class="rating-filter">
|
||||
<p>
|
||||
<label for="rating_filter_pause_video">$T('opt-rating_filter_video')</label>
|
||||
<select name="rating_filter_pause_video" id="rating_filter_pause_video">
|
||||
<option value="0" <!--#if $rating_filter_pause_video == 0 then 'selected="selected"' else ""#--> >$T('notUsed')</option>
|
||||
<!--#for $val in $range(1, 10)#--><option value="$val" <!--#if $rating_filter_pause_video == $val then 'selected="selected"' else ""#--> >$val $T('orLess')</option><!--#end for#-->
|
||||
</select>
|
||||
</p>
|
||||
<p>
|
||||
<label for="rating_filter_pause_audio">$T('opt-rating_filter_audio')</label>
|
||||
<select name="rating_filter_pause_audio" id="rating_filter_pause_audio">
|
||||
<option value="0" <!--#if $rating_filter_pause_audio == 0 then 'selected="selected"' else ""#--> >$T('notUsed')</option>
|
||||
<!--#for $val in $range(1, 10)#--><option value="$val" <!--#if $rating_filter_pause_audio == $val then 'selected="selected"' else ""#--> >$val $T('orLess') </option><!--#end for#-->
|
||||
</select>
|
||||
</p>
|
||||
<p>
|
||||
<span>
|
||||
<input type="checkbox" value="1" id="rating_filter_pause_encrypted" name="rating_filter_pause_encrypted" <!--#if int($rating_filter_pause_encrypted) > 0 then 'checked="checked"' else ""#--> />
|
||||
<label for="rating_filter_pause_encrypted">$T('opt-rating_filter_passworded')</label>
|
||||
</span>
|
||||
<span>
|
||||
<input type="checkbox" value="1" id="rating_filter_pause_encrypted_confirm" name="rating_filter_pause_encrypted_confirm" <!--#if int($rating_filter_pause_encrypted_confirm) > 0 then 'checked="checked"' else ""#--> />
|
||||
<label for="rating_filter_pause_encrypted_confirm">$T('opt-rating_filter_confirmed')</label>
|
||||
</span>
|
||||
</p>
|
||||
<p>
|
||||
<span>
|
||||
<input type="checkbox" value="1" id="rating_filter_pause_spam" name="rating_filter_pause_spam" <!--#if int($rating_filter_pause_spam) > 0 then 'checked="checked"' else ""#--> />
|
||||
<label for="rating_filter_pause_spam">$T('opt-rating_filter_spam')</label>
|
||||
</span>
|
||||
<span>
|
||||
<input type="checkbox" value="1" id="rating_filter_pause_spam_confirm" name="rating_filter_pause_spam_confirm" <!--#if int($rating_filter_pause_spam_confirm) > 0 then 'checked="checked"' else ""#--> />
|
||||
<label for="rating_filter_pause_spam_confirm">$T('opt-rating_filter_confirmed')</label>
|
||||
</span>
|
||||
</p>
|
||||
<p>
|
||||
<input type="checkbox" value="1" id="rating_filter_pause_downvoted" name="rating_filter_pause_downvoted" <!--#if int($rating_filter_pause_downvoted) > 0 then 'checked="checked"' else ""#--> />
|
||||
<label for="rating_filter_pause_downvoted">$T('opt-rating_filter_downvoted')</label>
|
||||
</p>
|
||||
<p>
|
||||
<label for="rating_filter_pause_keywords">$T('opt-rating_filter_keywords')</label>
|
||||
<input type="text" name="rating_filter_pause_keywords" id="rating_filter_pause_keywords" value="$rating_filter_pause_keywords"/>
|
||||
<span class="desc">$T('explain-rating_filter_keywords')</span>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<button class="btn btn-default saveButton"><span class="glyphicon glyphicon-ok"></span> $T('button-saveChanges')</button>
|
||||
</div>
|
||||
</fieldset>
|
||||
</div><!-- /col1 -->
|
||||
</div><!-- /section -->
|
||||
</form>
|
||||
</div><!-- /colmask -->
|
||||
|
||||
<script type="text/javascript">
|
||||
\$(document).ready(function() {
|
||||
if (!\$('#rating_filter_enable').is(":checked")) {
|
||||
\$("#rating_filter_abort").hide();
|
||||
\$("#rating_filter_pause").hide();
|
||||
}
|
||||
\$('#rating_filter_enable').change(function () {
|
||||
if (\$(this).is(":checked")) {
|
||||
\$("#rating_filter_abort").show();
|
||||
\$("#rating_filter_pause").show();
|
||||
}
|
||||
else {
|
||||
\$("#rating_filter_abort").hide();
|
||||
\$("#rating_filter_pause").hide();
|
||||
}
|
||||
});
|
||||
|
||||
\$('#history_retention_select, #history_retention_number').on('change', updateHistoryRetention)
|
||||
function updateHistoryRetention() {
|
||||
var retention_setting = \$('#history_retention')
|
||||
|
||||
@@ -139,9 +139,6 @@ label.wide,
|
||||
font-size: 12px;
|
||||
font-style: italic;
|
||||
}
|
||||
.desc .btn {
|
||||
font-style: normal;
|
||||
}
|
||||
.desc.narrow {
|
||||
margin: 0 0 0 200px!important;
|
||||
}
|
||||
@@ -727,6 +724,41 @@ ul.tabs li.active a {
|
||||
.checkbox-days label {
|
||||
padding: 2px 20px;
|
||||
}
|
||||
.rating-filter {
|
||||
float: left;
|
||||
}
|
||||
.rating-filter p {
|
||||
margin: 0 0 10px 0;
|
||||
}
|
||||
.rating-filter select {
|
||||
vertical-align: middle;
|
||||
}
|
||||
.rating-filter input {
|
||||
vertical-align: middle;
|
||||
margin-top: -1px;
|
||||
}
|
||||
.rating-filter label {
|
||||
display: inline-block;
|
||||
padding-left: 0px;
|
||||
width: 100px;
|
||||
}
|
||||
.rating-filter input[type="checkbox"] {
|
||||
display: inline;
|
||||
}
|
||||
.rating-filter input[type="checkbox"] + label {
|
||||
padding-left: 20px;
|
||||
padding-top: 5px;
|
||||
width: auto;
|
||||
}
|
||||
.rating-filter p > span:first-child {
|
||||
float: left;
|
||||
width: 130px;
|
||||
}
|
||||
.rating-filter .desc {
|
||||
display: block;
|
||||
margin: 0px;
|
||||
padding-left: 103px;
|
||||
}
|
||||
|
||||
/** EDITS 2015 **/
|
||||
* {
|
||||
|
||||
@@ -215,7 +215,7 @@ $.fn.extractFormDataTo = function(target) {
|
||||
* (c) 2015 SABnzbd Team, Inc. All rights reserved.
|
||||
*/
|
||||
function config_success() {
|
||||
$('.saveButton[disabled=disabled]').each(function () {
|
||||
$('.saveButton').each(function () {
|
||||
$(this).removeAttr("disabled").html('<span class="glyphicon glyphicon-ok"></span> '+configTranslate.saveChanges);
|
||||
});
|
||||
// Let us leave!
|
||||
@@ -223,7 +223,7 @@ function config_success() {
|
||||
formHasChanged = false;
|
||||
}
|
||||
function config_failure() {
|
||||
$('.saveButton[disabled=disabled]').each(function () {
|
||||
$('.saveButton').each(function () {
|
||||
$(this).removeAttr("disabled").addClass('btn-danger').html('<span class="glyphicon glyphicon-remove"></span> '+configTranslate.failed);
|
||||
});
|
||||
// Can't go yet..
|
||||
@@ -345,9 +345,8 @@ $(document).ready(function () {
|
||||
datatype: 'json',
|
||||
// But first remove Obfuscation!
|
||||
beforeSerialize: removeObfuscation,
|
||||
beforeSubmit: function (arr, form, options) {
|
||||
// Only in the current form
|
||||
form.find('.saveButton').each(function () {
|
||||
beforeSubmit: function () {
|
||||
$('.saveButton').each(function () {
|
||||
$(this).attr("disabled", "disabled").removeClass('btn-danger').html('<span class="glyphicon glyphicon-transfer"></span> ' + configTranslate.saving);
|
||||
});
|
||||
},
|
||||
@@ -408,7 +407,7 @@ $(document).ready(function () {
|
||||
$('input[type="checkbox"]').parents('label').addClass('config-hover')
|
||||
|
||||
// Disable sections
|
||||
var checkDisabled = '#enable_tv_sorting, #enable_movie_sorting, #enable_date_sorting'
|
||||
var checkDisabled = '#rating_enable, #enable_tv_sorting, #enable_movie_sorting, #enable_date_sorting'
|
||||
|
||||
$(checkDisabled).on('change', function() {
|
||||
$(this).parent().nextAll().toggleClass('disabled')
|
||||
|
||||
@@ -41,11 +41,102 @@
|
||||
</span>
|
||||
</div>
|
||||
</td>
|
||||
<td class="name">
|
||||
<td class="name" data-bind="css: { 'name-has-ratings' : historyStatus.has_rating }">
|
||||
<div class="row-wrap-text">
|
||||
<a class="retry-buttontext" href="#" data-bind="visible: (failed() && canRetry()), click: retry">$T('button-retry')</a>
|
||||
<span data-bind="text: historyStatus.name, attr: { 'title': historyStatus.name() }"></span>
|
||||
</div>
|
||||
|
||||
<!-- ko if: historyStatus.has_rating -->
|
||||
<div class="dropdown history-ratings">
|
||||
<a href="#" class="name-icons hover-button" data-toggle="dropdown" onclick="keepOpen(this)">
|
||||
<span class="glyphicon glyphicon-thumbs-up"></span> <span data-bind="text: historyStatus.rating_avg_vote_up"></span>
|
||||
<span class="glyphicon glyphicon-thumbs-down"></span> <span data-bind="text: historyStatus.rating_avg_vote_down"></span>
|
||||
</a>
|
||||
<ul class="dropdown-menu history-ratings-menu">
|
||||
<li>
|
||||
<form class="history-ratings-basic">
|
||||
<label>
|
||||
<input type="radio" value="up" data-bind="attr: { 'name': 'ratings-status-'+nzo_id, 'checked': historyStatus.rating_user_vote() == 1 }, event: { change: setUserVote }" />
|
||||
<span class="glyphicon glyphicon-thumbs-up"></span>
|
||||
<span data-bind="text: historyStatus.rating_avg_vote_up"></span>
|
||||
</label>
|
||||
<label>
|
||||
<input type="radio" value="down" data-bind="attr: { 'name': 'ratings-status-'+nzo_id, 'checked': historyStatus.rating_user_vote() == 2 }, event: { change: setUserVote }" />
|
||||
<span class="glyphicon glyphicon-thumbs-down"></span>
|
||||
<span data-bind="text: historyStatus.rating_avg_vote_down"></span>
|
||||
</label>
|
||||
<label>
|
||||
<span class="glyphicon glyphicon-facetime-video"></span>
|
||||
<select name="ratings-video" data-bind="value: historyStatus.rating_user_video, event: { change: setUserRating }, disable: historyStatus.rating_user_video">
|
||||
<option value=""> </option>
|
||||
<option value="1">1</option>
|
||||
<option value="2">2</option>
|
||||
<option value="3">3</option>
|
||||
<option value="4">4</option>
|
||||
<option value="5">5</option>
|
||||
<option value="6">6</option>
|
||||
<option value="7">7</option>
|
||||
<option value="8">8</option>
|
||||
<option value="9">9</option>
|
||||
<option value="10">10</option>
|
||||
</select>
|
||||
</label>
|
||||
<label>
|
||||
<span class="glyphicon glyphicon-volume-up"></span>
|
||||
<select name="ratings-audio" data-bind="value: historyStatus.rating_user_audio, event: { change: setUserRating }, disable: historyStatus.rating_user_audio">
|
||||
<option value=""> </option>
|
||||
<option value="1">1</option>
|
||||
<option value="2">2</option>
|
||||
<option value="3">3</option>
|
||||
<option value="4">4</option>
|
||||
<option value="5">5</option>
|
||||
<option value="6">6</option>
|
||||
<option value="7">7</option>
|
||||
<option value="8">8</option>
|
||||
<option value="9">9</option>
|
||||
<option value="10">10</option>
|
||||
</select>
|
||||
</label>
|
||||
<!-- ko if: historyStatus.url_info -->
|
||||
<a href="#" target="_blank" data-bind="attr: { 'href':historyStatus.url_info }" title="$T('Glitter-openInfoURL')"><span class="glyphicon glyphicon-globe"></span></a>
|
||||
<!-- /ko -->
|
||||
</form>
|
||||
</li>
|
||||
<li class="divider"></li>
|
||||
<li>
|
||||
<form class="history-ratings-report" data-bind="submit: setUserReport">
|
||||
<strong>$T('report')</strong>
|
||||
<br />
|
||||
<label>
|
||||
<input type="radio" name="rating_flag" value="spam" /> $T('spam')
|
||||
</label>
|
||||
<br />
|
||||
<label>
|
||||
<input type="radio" name="rating_flag" value="encrypted" /> $T('encrypted')
|
||||
</label>
|
||||
<br />
|
||||
<label>
|
||||
<input type="radio" name="rating_flag" value="expired" /> $T('expired')
|
||||
<select name="ratings-report-expired-server" class="ratings-report-hidden form-control" data-bind="options: \$parent.servers, optionsText: 'host', optionsValue: 'host', optionsCaption: '$T('nzo-all')'"></select>
|
||||
</label>
|
||||
<br />
|
||||
<label>
|
||||
<input type="radio" name="rating_flag" value="other" /> $T('otherProblem')
|
||||
<input type="text" class="form-control ratings-report-hidden" name="ratings-report-other" />
|
||||
</label>
|
||||
<br />
|
||||
<label>
|
||||
<input type="radio" name="rating_flag" value="comment" /> $T('comment')
|
||||
<input type="text" class="form-control ratings-report-hidden" name="ratings-report-comment" />
|
||||
</label>
|
||||
<br />
|
||||
<button type="submit" class="btn btn-default"><span class="glyphicon glyphicon-ok"></span> $T('send')</button>
|
||||
</form>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<!-- /ko -->
|
||||
</td>
|
||||
<td class="status row-wrap-text" data-bind="text: statusText()" onclick="showDetails(this)"></td>
|
||||
<!-- ko foreach: parent.parent.extraHistoryColumns -->
|
||||
|
||||
@@ -107,7 +107,7 @@
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-sm-6">$T('dashboard-NameserverDNS') </div>
|
||||
<div class="col-sm-6" data-bind="visible: hasStatusInfo, text: !statusInfo.dnslookup() ? '$T('dashboard-connectionError')' : 'OK', css: { 'options-bad-status' : !statusInfo.dnslookup() }"></div>
|
||||
<div class="col-sm-6" data-bind="visible: hasStatusInfo, text: !statusInfo.dnslookup() ? '$T('dashboard-connectionError')' : statusInfo.dnslookup(), css: { 'options-bad-status' : (statusInfo.dnslookup() != 'OK') }"></div>
|
||||
<div class="col-sm-6 col-loading" data-bind="visible: !hasStatusInfo()">$T('Glitter-loading')<span class="loader-dot-one">.</span><span class="loader-dot-two">.</span><span class="loader-dot-three">.</span></div>
|
||||
</div>
|
||||
<hr/>
|
||||
@@ -117,39 +117,30 @@
|
||||
<span data-bind="text: cacheSize"></span> (<span data-bind="text: cacheArticles"></span> $T('Glitter-articles'))
|
||||
</div>
|
||||
</div>
|
||||
<div class="row" data-bind="visible: statusInfo.delayed_decoder() > 5 || statusInfo.delayed_assembler() > 5">
|
||||
<div class="col-sm-6">$T('dashboard-delayed') </div>
|
||||
<div class="col-sm-6">
|
||||
<span data-bind="visible: statusInfo.delayed_decoder() > 5">$T('dashboard-delayed-cpu')</span>
|
||||
<small data-bind="visible: statusInfo.delayed_decoder() > 5">(<span data-bind="text: statusInfo.delayed_decoder"></span>x)</small>
|
||||
<span data-bind="visible: statusInfo.delayed_assembler() > 5">$T('dashboard-delayed-disk')</span>
|
||||
<small data-bind="visible: statusInfo.delayed_assembler() > 5">(<span data-bind="text: statusInfo.delayed_assembler"></span>x)</small>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-sm-6">$T('dashboard-systemPerformance') </div>
|
||||
<div class="col-sm-6 col-dot-overflow" data-bind="visible: hasPerformanceInfo">
|
||||
<div class="col-sm-6" data-bind="visible: hasPerformanceInfo">
|
||||
<span data-bind="text: statusInfo.pystone"></span>
|
||||
<a href="#" class="diskspeed-button" data-bind="click: loadStatusInfo" data-tooltip="true" data-placement="right" title="$T('dashboard-repeatTest')"><span class="glyphicon glyphicon-repeat"></span></a>
|
||||
<small title="$cpumodel $cpusimd" data-tooltip="true">$cpumodel $cpusimd</small>
|
||||
<small data-bind="truncatedText: statusInfo.cpumodel, length: 25, attr: { 'data-original-title': statusInfo.cpumodel }" data-tooltip="true"></small>
|
||||
</div>
|
||||
<div class="col-sm-6 col-loading" data-bind="visible: !hasPerformanceInfo()">$T('Glitter-loading')<span class="loader-dot-one">.</span><span class="loader-dot-two">.</span><span class="loader-dot-three">.</span></div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-sm-6">$T('dashboard-downloadDirSpeed') </div>
|
||||
<div class="col-sm-6 col-dot-overflow" data-bind="visible: hasPerformanceInfo">
|
||||
<div class="col-sm-6" data-bind="visible: hasPerformanceInfo">
|
||||
<span data-bind="text: statusInfo.downloaddirspeed()"></span> MB/s
|
||||
<a href="#" class="diskspeed-button" data-bind="click: loadStatusInfo" data-tooltip="true" data-placement="right" title="$T('dashboard-repeatTest')"><span class="glyphicon glyphicon-repeat"></span></a>
|
||||
<small data-bind="text: statusInfo.downloaddir, attr: { 'data-original-title': statusInfo.downloaddir }" data-tooltip="true"></small>
|
||||
<small>(<span data-bind="truncatedText: statusInfo.downloaddir, length: 24, attr: { 'data-original-title': statusInfo.downloaddir }" data-tooltip="true"></span>)</small>
|
||||
</div>
|
||||
<div class="col-sm-6 col-loading" data-bind="visible: !hasPerformanceInfo()">$T('Glitter-loading')<span class="loader-dot-one">.</span><span class="loader-dot-two">.</span><span class="loader-dot-three">.</span></div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-sm-6">$T('dashboard-completeDirSpeed') </div>
|
||||
<div class="col-sm-6 col-dot-overflow" data-bind="visible: hasPerformanceInfo">
|
||||
<div class="col-sm-6" data-bind="visible: hasPerformanceInfo">
|
||||
<span data-bind="text: statusInfo.completedirspeed()"></span> MB/s
|
||||
<a href="#" class="diskspeed-button" data-bind="click: loadStatusInfo" data-tooltip="true" data-placement="right" title="$T('dashboard-repeatTest')"><span class="glyphicon glyphicon-repeat"></span></a>
|
||||
<small data-bind="text: statusInfo.completedir, attr: { 'data-original-title': statusInfo.completedir }" data-tooltip="true"></small>
|
||||
<small>(<span data-bind="truncatedText: statusInfo.completedir, length: 24, attr: { 'data-original-title': statusInfo.completedir }" data-tooltip="true"></span>)</small>
|
||||
</div>
|
||||
<div class="col-sm-6 col-loading" data-bind="visible: !hasPerformanceInfo()">$T('Glitter-loading')<span class="loader-dot-one">.</span><span class="loader-dot-two">.</span><span class="loader-dot-three">.</span></div>
|
||||
</div>
|
||||
@@ -158,7 +149,7 @@
|
||||
<div class="col-sm-6" data-bind="visible: hasPerformanceInfo">
|
||||
<span data-bind="text: statusInfo.internetbandwidth()"></span> MB/s
|
||||
<a href="#" class="diskspeed-button" data-bind="click: loadStatusInfo" data-tooltip="true" data-placement="right" title="$T('dashboard-repeatTest')"><span class="glyphicon glyphicon-repeat"></span></a>
|
||||
<small><span data-bind="text: statusInfo.internetbandwidth()*8"></span> Mbps</small>
|
||||
<small>(<span data-bind="text: statusInfo.internetbandwidth()*8"></span> Mbps)</small>
|
||||
</div>
|
||||
<div class="col-sm-6 col-loading" data-bind="visible: !hasPerformanceInfo()">$T('Glitter-loading')<span class="loader-dot-one">.</span><span class="loader-dot-two">.</span><span class="loader-dot-three">.</span></div>
|
||||
</div>
|
||||
@@ -168,6 +159,7 @@
|
||||
<a href="#" class="btn btn-default" data-bind="click: testDownload" data-size="100MB" data-tooltip="true" data-placement="top" title="$T('dashboard-testDownload-explain')"><span class="glyphicon glyphicon-download-alt"></span> 100 MB</a>
|
||||
<a href="#" class="btn btn-default" data-bind="click: testDownload" data-size="1000MB" data-tooltip="true" data-placement="top" title="$T('dashboard-testDownload-explain')"><span class="glyphicon glyphicon-download-alt"></span> 1 GB</a>
|
||||
<a href="#" class="btn btn-default" data-bind="click: testDownload" data-size="10GB" data-tooltip="true" data-placement="top" title="$T('dashboard-testDownload-explain')"><span class="glyphicon glyphicon-download-alt"></span> 10 GB</a>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<hr />
|
||||
@@ -190,7 +182,7 @@
|
||||
<div class="col-sm-6">
|
||||
<div class="input-group" data-tooltip="true" data-placement="top" title="$T('logging')">
|
||||
<span class="input-group-addon"><span class="glyphicon glyphicon-comment"></span></span>
|
||||
<select class="form-control" data-bind="value: loglevel">
|
||||
<select class="form-control" data-bind="value: statusInfo.loglevel">
|
||||
<option value="0">$T('log-errWarn')</option>
|
||||
<option value="1">$T('log-info')</option>
|
||||
<option value="2">$T('log-debug')</option>
|
||||
@@ -447,14 +439,6 @@
|
||||
<input type="checkbox" name="confirmDeleteHistory" value="true" data-bind="checked: confirmDeleteHistory" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group form-checkbox">
|
||||
<label class="col-sm-6 control-label">
|
||||
$T("Glitter-keyboardShortcuts")
|
||||
</label>
|
||||
<div class="col-sm-4">
|
||||
<input type="checkbox" name="keyboardShortcuts" value="true" data-bind="checked: keyboardShortcuts" />
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -70,6 +70,7 @@
|
||||
glitterTranslate.tooLarge = "$T('Glitter-tooLarge')";
|
||||
glitterTranslate.unwanted = "$T('Glitter-unwanted')";
|
||||
glitterTranslate.incomplete = "$T('Glitter-incomplete')";
|
||||
glitterTranslate.filtered = "$T('Glitter-filtered')";
|
||||
glitterTranslate.waitSec = "$T('Glitter-waitSec')";
|
||||
glitterTranslate.checking = "$T('post-Checking')";
|
||||
glitterTranslate.misingArt = "$T('missingArt')";
|
||||
|
||||
@@ -24,7 +24,7 @@ if(isMobile) {
|
||||
}
|
||||
|
||||
// Basic API-call
|
||||
function callAPI(data, timeout = 10000) {
|
||||
function callAPI(data) {
|
||||
// Fill basis var's
|
||||
data.output = "json";
|
||||
data.apikey = apiKey;
|
||||
@@ -33,7 +33,24 @@ function callAPI(data, timeout = 10000) {
|
||||
type: "GET",
|
||||
cache: false,
|
||||
data: data,
|
||||
timeout: timeout
|
||||
timeout: 10000 // Wait a little longer on mobile connections
|
||||
});
|
||||
|
||||
return $.when(ajaxQuery);
|
||||
}
|
||||
|
||||
// Special API call
|
||||
function callSpecialAPI(url, data) {
|
||||
// Did we get input?
|
||||
if(data == undefined) data = {};
|
||||
// Fill basis var's
|
||||
data.output = "json";
|
||||
data.apikey = apiKey;
|
||||
var ajaxQuery = $.ajax({
|
||||
url: url,
|
||||
type: "GET",
|
||||
cache: false,
|
||||
data: data
|
||||
});
|
||||
|
||||
return $.when(ajaxQuery);
|
||||
|
||||
@@ -449,4 +449,103 @@ function HistoryModel(parent, data) {
|
||||
|
||||
}
|
||||
};
|
||||
|
||||
// User voting
|
||||
self.setUserVote = function(item, event) {
|
||||
// Send vote
|
||||
callAPI({
|
||||
mode: 'queue',
|
||||
name: 'rating',
|
||||
type: 'vote',
|
||||
setting: $(event.target).val(),
|
||||
value: self.nzo_id
|
||||
}).then(function(response) {
|
||||
// Update all info
|
||||
self.updateAllHistory = true;
|
||||
self.parent.parent.refresh(true)
|
||||
})
|
||||
}
|
||||
|
||||
// User rating
|
||||
self.setUserRating = function(item, event) {
|
||||
// Audio or video
|
||||
var changeWhat = 'audio';
|
||||
if($(event.target).attr('name') == 'ratings-video') {
|
||||
changeWhat = 'video';
|
||||
}
|
||||
|
||||
// Only on user-event, not the auto-fired ones
|
||||
if(!event.originalEvent) return;
|
||||
|
||||
// Send vote
|
||||
callAPI({
|
||||
mode: 'queue',
|
||||
name: 'rating',
|
||||
type: changeWhat,
|
||||
setting: $(event.target).val(),
|
||||
value: self.nzo_id
|
||||
}).then(function(response) {
|
||||
// Update all info
|
||||
self.updateAllHistory = true;
|
||||
self.parent.parent.refresh(true)
|
||||
})
|
||||
}
|
||||
|
||||
// User comment
|
||||
self.setUserReport = function(form) {
|
||||
// What are we reporting?
|
||||
var userReport = $(form).find('input[name="rating_flag"]:checked').val();
|
||||
var userDetail = '';
|
||||
|
||||
// Anything selected?
|
||||
if(!userReport) {
|
||||
alert(glitterTranslate.noSelect)
|
||||
return;
|
||||
}
|
||||
|
||||
// Extra info?
|
||||
if(userReport == 'comment') userDetail = $(form).find('input[name="ratings-report-comment"]').val();
|
||||
if(userReport == 'other') userDetail = $(form).find('input[name="ratings-report-other"]').val();
|
||||
|
||||
// Exception for servers
|
||||
if(userReport == 'expired') {
|
||||
// Which server?
|
||||
userDetail = $(form).find('select[name="ratings-report-expired-server"]').val();
|
||||
|
||||
// All?
|
||||
if(userDetail == "") {
|
||||
// Loop over all servers
|
||||
$.each(parent.parent.servers, function(index, server) {
|
||||
// Set timeout because simultanious requests don't work (yet)
|
||||
setTimeout(function() {
|
||||
submitUserReport(server.name)
|
||||
}, index * 1500)
|
||||
})
|
||||
|
||||
} else {
|
||||
// Just the one server
|
||||
submitUserReport(userDetail)
|
||||
}
|
||||
} else {
|
||||
submitUserReport(userDetail)
|
||||
}
|
||||
|
||||
// After all, close it
|
||||
form.reset();
|
||||
$(form).parent().parent().dropdown('toggle');
|
||||
alert(glitterTranslate.sendThanks)
|
||||
|
||||
function submitUserReport(theDetail) {
|
||||
// Send note
|
||||
callAPI({
|
||||
mode: 'queue',
|
||||
name: 'rating',
|
||||
type: 'flag',
|
||||
setting: userReport,
|
||||
detail: theDetail,
|
||||
value: self.nzo_id
|
||||
})
|
||||
}
|
||||
return false
|
||||
}
|
||||
}
|
||||
@@ -18,7 +18,6 @@ function ViewModel() {
|
||||
self.displayFullWidth = ko.observable(false).extend({ persist: 'displayFullWidth' });
|
||||
self.confirmDeleteQueue = ko.observable(true).extend({ persist: 'confirmDeleteQueue' });
|
||||
self.confirmDeleteHistory = ko.observable(true).extend({ persist: 'confirmDeleteHistory' });
|
||||
self.keyboardShortcuts = ko.observable(true).extend({ persist: 'keyboardShortcuts' });
|
||||
self.extraQueueColumns = ko.observableArray([]).extend({ persist: 'extraColumns' });
|
||||
self.extraHistoryColumns = ko.observableArray([]).extend({ persist: 'extraHistoryColumns' });
|
||||
self.showActiveConnections = ko.observable(false).extend({ persist: 'showActiveConnections' });
|
||||
@@ -44,7 +43,6 @@ function ViewModel() {
|
||||
self.systemLoad = ko.observable();
|
||||
self.cacheSize = ko.observable();
|
||||
self.cacheArticles = ko.observable();
|
||||
self.loglevel = ko.observable();
|
||||
self.nrWarnings = ko.observable(0);
|
||||
self.allWarnings = ko.observableArray([]);
|
||||
self.allMessages = ko.observableArray([]);
|
||||
@@ -62,9 +60,9 @@ function ViewModel() {
|
||||
self.statusInfo.publicipv4 = ko.observable();
|
||||
self.statusInfo.ipv6 = ko.observable();
|
||||
self.statusInfo.dnslookup = ko.observable();
|
||||
self.statusInfo.delayed_decoder = ko.observable();
|
||||
self.statusInfo.delayed_assembler = ko.observable();
|
||||
self.statusInfo.pystone = ko.observable();
|
||||
self.statusInfo.cpumodel = ko.observable();
|
||||
self.statusInfo.loglevel = ko.observable();
|
||||
self.statusInfo.downloaddir = ko.observable();
|
||||
self.statusInfo.downloaddirspeed = ko.observable();
|
||||
self.statusInfo.completedir = ko.observable();
|
||||
@@ -725,20 +723,20 @@ function ViewModel() {
|
||||
self.hasPerformanceInfo(false)
|
||||
}
|
||||
|
||||
// Load the custom status info, allowing for longer timeouts
|
||||
// Load the custom status info
|
||||
callAPI({
|
||||
mode: 'status',
|
||||
skip_dashboard: (!statusFullRefresh)*1,
|
||||
calculate_performance: statusPerformance*1,
|
||||
}, 30000).then(function(data) {
|
||||
skip_dashboard: (!statusFullRefresh)*1
|
||||
}).then(function(data) {
|
||||
// Update basic
|
||||
self.statusInfo.loglevel(data.status.loglevel)
|
||||
self.statusInfo.folders(data.status.folders)
|
||||
self.statusInfo.delayed_decoder(data.status.delayed_decoder)
|
||||
self.statusInfo.delayed_assembler(data.status.delayed_assembler)
|
||||
|
||||
// Update the full set if the data is available
|
||||
if("dnslookup" in data.status) {
|
||||
// Update the full set
|
||||
if(statusFullRefresh) {
|
||||
self.statusInfo.pystone(data.status.pystone)
|
||||
self.statusInfo.cpumodel(data.status.cpumodel)
|
||||
self.statusInfo.downloaddir(data.status.downloaddir)
|
||||
self.statusInfo.downloaddirspeed(data.status.downloaddirspeed)
|
||||
self.statusInfo.completedir(data.status.completedir)
|
||||
@@ -749,10 +747,25 @@ function ViewModel() {
|
||||
self.statusInfo.localipv4(data.status.localipv4)
|
||||
self.statusInfo.publicipv4(data.status.publicipv4)
|
||||
self.statusInfo.ipv6(data.status.ipv6 || glitterTranslate.noneText)
|
||||
// Loaded disk info
|
||||
self.hasPerformanceInfo(true)
|
||||
}
|
||||
|
||||
// Update the servers
|
||||
if(self.statusInfo.servers().length != data.status.servers.length) {
|
||||
// Only now we can subscribe to the log-level-changes! (only at start)
|
||||
if(self.statusInfo.servers().length == 0) {
|
||||
self.statusInfo.loglevel.subscribe(function(newValue) {
|
||||
// Update log-level
|
||||
callAPI({
|
||||
mode: "set_config",
|
||||
section: "logging",
|
||||
keyword: "log_level",
|
||||
value: newValue
|
||||
});
|
||||
})
|
||||
}
|
||||
|
||||
// Empty them, in case of update
|
||||
self.statusInfo.servers([])
|
||||
|
||||
@@ -795,7 +808,6 @@ function ViewModel() {
|
||||
|
||||
// Stop it spin
|
||||
self.hasStatusInfo(true)
|
||||
self.hasPerformanceInfo(true)
|
||||
});
|
||||
}
|
||||
|
||||
@@ -1038,24 +1050,18 @@ function ViewModel() {
|
||||
}
|
||||
}
|
||||
|
||||
self.globalInterfaceSettings = [
|
||||
'dateFormat',
|
||||
'extraQueueColumns',
|
||||
'extraHistoryColumns',
|
||||
'displayCompact',
|
||||
'displayFullWidth',
|
||||
'displayTabbed',
|
||||
'confirmDeleteQueue',
|
||||
'confirmDeleteHistory',
|
||||
'keyboardShortcuts'
|
||||
]
|
||||
|
||||
// Save the rest in config if global-settings
|
||||
var saveInterfaceSettings = function(newValue) {
|
||||
var interfaceSettings = {}
|
||||
for (const setting of self.globalInterfaceSettings) {
|
||||
interfaceSettings[setting] = self[setting]
|
||||
}
|
||||
var interfaceSettings = {
|
||||
"dateFormat": self.dateFormat,
|
||||
"extraQueueColumns": self.extraQueueColumns,
|
||||
"extraHistoryColumns": self.extraHistoryColumns,
|
||||
"displayCompact": self.displayCompact,
|
||||
"displayFullWidth": self.displayFullWidth,
|
||||
"displayTabbed": self.displayTabbed,
|
||||
"confirmDeleteQueue": self.confirmDeleteQueue,
|
||||
"confirmDeleteHistory": self.confirmDeleteHistory
|
||||
};
|
||||
callAPI({
|
||||
mode: "set_config",
|
||||
section: "misc",
|
||||
@@ -1074,46 +1080,46 @@ function ViewModel() {
|
||||
if(!response.config.misc.refresh_rate) response.config.misc.refresh_rate = 1;
|
||||
self.refreshRate(response.config.misc.refresh_rate.toString());
|
||||
|
||||
// Set history and queue limit
|
||||
// Set history limit
|
||||
self.history.paginationLimit(response.config.misc.history_limit.toString())
|
||||
|
||||
// Set queue limit
|
||||
self.queue.paginationLimit(response.config.misc.queue_limit.toString())
|
||||
|
||||
// Import the rest of the settings
|
||||
if(response.config.misc.interface_settings) {
|
||||
var interfaceSettings = JSON.parse(response.config.misc.interface_settings);
|
||||
for (const setting of self.globalInterfaceSettings){
|
||||
if(setting in interfaceSettings) {
|
||||
self[setting](interfaceSettings[setting]);
|
||||
}
|
||||
}
|
||||
self.dateFormat(interfaceSettings['dateFormat']);
|
||||
self.extraQueueColumns(interfaceSettings['extraQueueColumns']);
|
||||
self.extraHistoryColumns(interfaceSettings['extraHistoryColumns']);
|
||||
self.displayCompact(interfaceSettings['displayCompact']);
|
||||
self.displayFullWidth(interfaceSettings['displayFullWidth']);
|
||||
self.displayTabbed(interfaceSettings['displayTabbed']);
|
||||
self.confirmDeleteQueue(interfaceSettings['confirmDeleteQueue']);
|
||||
self.confirmDeleteHistory(interfaceSettings['confirmDeleteHistory']);
|
||||
}
|
||||
|
||||
// Only subscribe now to prevent collisions between localStorage and config settings updates
|
||||
for (const setting of self.globalInterfaceSettings) {
|
||||
self[setting].subscribe(saveInterfaceSettings);
|
||||
}
|
||||
self.dateFormat.subscribe(saveInterfaceSettings);
|
||||
self.extraQueueColumns.subscribe(saveInterfaceSettings);
|
||||
self.extraHistoryColumns.subscribe(saveInterfaceSettings);
|
||||
self.displayCompact.subscribe(saveInterfaceSettings);
|
||||
self.displayFullWidth.subscribe(saveInterfaceSettings);
|
||||
self.displayTabbed.subscribe(saveInterfaceSettings);
|
||||
self.confirmDeleteQueue.subscribe(saveInterfaceSettings);
|
||||
self.confirmDeleteHistory.subscribe(saveInterfaceSettings);
|
||||
}
|
||||
|
||||
// Set bandwidth limit
|
||||
if(!response.config.misc.bandwidth_max) response.config.misc.bandwidth_max = false;
|
||||
self.bandwithLimit(response.config.misc.bandwidth_max);
|
||||
|
||||
// Save servers (for reporting functionality)
|
||||
// Save servers (for reporting functionality of OZnzb)
|
||||
self.servers = response.config.servers;
|
||||
|
||||
// Already set if we are using a proxy
|
||||
if(response.config.misc.socks5_proxy_url) self.statusInfo.active_socks5_proxy(true)
|
||||
|
||||
// Set logging and only then subscribe to changes
|
||||
self.loglevel(response.config.logging.log_level);
|
||||
self.loglevel.subscribe(function(newValue) {
|
||||
callAPI({
|
||||
mode: "set_config",
|
||||
section: "logging",
|
||||
keyword: "log_level",
|
||||
value: newValue
|
||||
});
|
||||
})
|
||||
|
||||
// Update message
|
||||
if(newRelease) {
|
||||
self.allMessages.push({
|
||||
@@ -1201,31 +1207,6 @@ function ViewModel() {
|
||||
});
|
||||
}
|
||||
|
||||
document.onkeydown = function(e) {
|
||||
if(self.keyboardShortcuts()) {
|
||||
// Ignore if the user used a combination
|
||||
if(e.altKey || e.metaKey || e.ctrlKey) return;
|
||||
|
||||
// Do not act if the user is typing something
|
||||
if($("input:focus, textarea:focus").length === 0) {
|
||||
if (e.code === 'KeyP') {
|
||||
self.pauseToggle();
|
||||
}
|
||||
if (e.code === 'KeyA') {
|
||||
$('#modal-add-nzb').modal('show');
|
||||
}
|
||||
if (e.code === 'KeyC') {
|
||||
window.location.href = './config/';
|
||||
}
|
||||
if (e.code === 'KeyS') {
|
||||
self.loadStatusInfo(true, true)
|
||||
$('#modal-options').modal('show');
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
/***
|
||||
Date-stuff
|
||||
***/
|
||||
|
||||
@@ -1,3 +1,15 @@
|
||||
ko.bindingHandlers.truncatedText = {
|
||||
update: function(element, valueAccessor, allBindingsAccessor) {
|
||||
var value = ko.utils.unwrapObservable(valueAccessor());
|
||||
if (!value) return
|
||||
var length = ko.utils.unwrapObservable(allBindingsAccessor().length) || ko.bindingHandlers.truncatedText.defaultLength,
|
||||
truncatedValue = value.length > length ? convertHTMLtoText(value.substring(0, Math.min(value.length, length))) + "…" : convertHTMLtoText(value);
|
||||
ko.bindingHandlers.html.update(element, function() {
|
||||
return truncatedValue;
|
||||
});
|
||||
},
|
||||
defaultLength: 15
|
||||
};
|
||||
ko.bindingHandlers.truncatedTextCenter = {
|
||||
update: function(element, valueAccessor, allBindingsAccessor) {
|
||||
var value = ko.utils.unwrapObservable(valueAccessor())
|
||||
|
||||
@@ -94,8 +94,7 @@ legend,
|
||||
.nav-tabs>li.active>a,
|
||||
.nav-tabs>li.active>a:focus,
|
||||
.nav-tabs>li.active>a:hover,
|
||||
.nav-tabs>li>a:hover,
|
||||
.nav-tabs>li>a:focus {
|
||||
.nav-tabs>li>a:hover {
|
||||
background-color: #ddd;
|
||||
color: #555 !important;
|
||||
box-shadow: 0px -1px 1px 1px rgba(0,0,0,0.15);
|
||||
|
||||
@@ -1009,6 +1009,10 @@ tr.queue-item>td:first-child>a {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.history-table td.name.name-has-ratings .row-wrap-text {
|
||||
max-width: calc(100% - 80px) ;
|
||||
}
|
||||
|
||||
.history-failed-download:hover .retry-button .glyphicon:before,
|
||||
.retry-button:hover .glyphicon:before {
|
||||
content: " \e030 ";
|
||||
@@ -1073,6 +1077,83 @@ tr.queue-item>td:first-child>a {
|
||||
.history-status-hidden {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.history-ratings {
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.history-ratings.open a {
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
.history-ratings .name-icons {
|
||||
float: none !important;
|
||||
}
|
||||
|
||||
.history-ratings-menu {
|
||||
width: 300px;
|
||||
padding: 10px;
|
||||
margin-top: 4px !important;
|
||||
}
|
||||
|
||||
.history-ratings-menu .divider {
|
||||
background-color: black;
|
||||
}
|
||||
|
||||
.history-ratings-menu label {
|
||||
margin-right: 12px;
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
.history-ratings-basic input[type="radio"] {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.history-ratings-basic input[type="radio"]+span {
|
||||
opacity: 0.6;
|
||||
cursor: pointer;
|
||||
font-size: 1.3em;
|
||||
font-weight: bold;
|
||||
top: 3px;
|
||||
margin-left: 3px;
|
||||
}
|
||||
|
||||
.history-ratings-basic input[type="radio"]+span+span {
|
||||
opacity: 0.3;
|
||||
}
|
||||
|
||||
.history-ratings-basic input[type="radio"]:checked+span,
|
||||
.history-ratings-basic input[type="radio"]:checked+span+span {
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
.history-ratings-basic .history-ratings-spacer {
|
||||
margin-left: 10px;
|
||||
}
|
||||
|
||||
.history-ratings-basic select {
|
||||
margin-left: 3px;
|
||||
background-color: transparent;
|
||||
border: 1px solid #ccc;
|
||||
}
|
||||
|
||||
.history-ratings-basic select:disabled {
|
||||
background-color: #F5F5F5;
|
||||
}
|
||||
|
||||
.history-ratings-report label {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.history-ratings-report .ratings-report-hidden {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.history-ratings-report input[type="radio"]:checked+input,
|
||||
.history-ratings-report input[type="radio"]:checked+select {
|
||||
display: block;
|
||||
}
|
||||
|
||||
#history-options {
|
||||
margin-top: 0;
|
||||
margin-left: 10px;
|
||||
@@ -1289,12 +1370,6 @@ tr.queue-item>td:first-child>a {
|
||||
padding-top: 3px;
|
||||
}
|
||||
|
||||
#modal-options .col-dot-overflow {
|
||||
white-space: nowrap;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
}
|
||||
|
||||
#modal-options #options-status .glyphicon:not(.glyphicon-comment) {
|
||||
margin-right: 5px;
|
||||
margin-left: 3px;
|
||||
@@ -1879,6 +1954,10 @@ input[name="nzbURL"] {
|
||||
#feedback-slider {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.glyphicon-facetime-video {
|
||||
top: 2px;
|
||||
}
|
||||
}
|
||||
|
||||
@media only screen and (min-device-width:768px) and (max-device-width:1024px) and (orientation:portrait) {
|
||||
@@ -1957,6 +2036,7 @@ a:focus {
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.glyphicon-volume-up,
|
||||
.glyphicon-trash {
|
||||
top: 2px;
|
||||
}
|
||||
@@ -2025,6 +2105,15 @@ a:focus {
|
||||
content: '';
|
||||
}
|
||||
|
||||
.history-ratings-menu:after {
|
||||
right: inherit !important;
|
||||
left: 23px;
|
||||
}
|
||||
.history-ratings-menu:before {
|
||||
right: inherit !important;
|
||||
left: 22px;
|
||||
}
|
||||
|
||||
.open > .dropdown-menu {
|
||||
opacity: 1;
|
||||
visibility: visible;
|
||||
|
||||
@@ -180,6 +180,14 @@ tr.queue-item>td:first-child>a {
|
||||
min-width: 0px;
|
||||
}
|
||||
|
||||
.history-table .history-ratings {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.name-has-ratings .row-wrap-text {
|
||||
max-width: calc(100% - 1px) !important;
|
||||
}
|
||||
|
||||
.history-table .delete .dropdown-menu {
|
||||
width: 100%;
|
||||
left: 0;
|
||||
|
||||
@@ -26,13 +26,12 @@
|
||||
</div>
|
||||
<hr />
|
||||
<div class="row">
|
||||
<div class="col-md-4 text-center">
|
||||
<div class="col-xs-4 text-center">
|
||||
<a class="btn btn-danger" href="../shutdown/?apikey=$apikey&pid=$pid"><span class="glyphicon glyphicon-remove"></span> $T('wizard-exit')</a>
|
||||
</div>
|
||||
<div class="col-md-4 text-center">
|
||||
<a class="btn btn-default" href="../config/general/#config_backup_file"><span class="glyphicon glyphicon-open"></span> $T('restore-backup')</a>
|
||||
<div class="col-xs-4 text-center">
|
||||
</div>
|
||||
<div class="col-md-4 text-center">
|
||||
<div class="col-xs-4 text-center">
|
||||
<button class="btn btn-default">$T('wizard-start') <span class="glyphicon glyphicon-chevron-right"></span></button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -1,53 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- Copyright 2022 The SABnzbd-Team <team@sabnzbd.org> -->
|
||||
<component type="desktop-application">
|
||||
<id>org.sabnzbd.sabnzbd</id>
|
||||
<metadata_license>MIT</metadata_license>
|
||||
<name>SABnzbd</name>
|
||||
<summary>Free and easy binary newsreader</summary>
|
||||
<description>
|
||||
<p>
|
||||
SABnzbd is a free and Open Source web-based binary newsreader,
|
||||
with support for the popular nzb file format. It greatly simplifies
|
||||
the process of downloading from Usenet, thanks to a friendly
|
||||
web-based user interface and advanced built-in post-processing
|
||||
options including the ability to automatically verify, repair,
|
||||
extract and clean up downloaded posts. It runs anywhere, comes in
|
||||
over a dozen languages, and integrates with a host of tools, apps
|
||||
and services that help automate the download process.
|
||||
</p>
|
||||
</description>
|
||||
<categories>
|
||||
<category>Network</category>
|
||||
<category>FileTransfer</category>
|
||||
</categories>
|
||||
<url type="homepage">https://sabnzbd.org</url>
|
||||
<url type="bugtracker">https://github.com/sabnzbd/sabnzbd/issues</url>
|
||||
<url type="translate">https://sabnzbd.org/wiki/translate</url>
|
||||
<url type="donation">https://sabnzbd.org/donate</url>
|
||||
<url type="help">https://sabnzbd.org/wiki/</url>
|
||||
<url type="faq">https://sabnzbd.org/wiki/faq</url>
|
||||
<url type="contact">https://forums.sabnzbd.org</url>
|
||||
<launchable type="desktop-id">sabnzbd.desktop</launchable>
|
||||
<provides>
|
||||
<mediatype>application/x-nzb</mediatype>
|
||||
<mediatype>application/x-compressed-nzb</mediatype>
|
||||
</provides>
|
||||
<project_license>GPL-2.0-or-later</project_license>
|
||||
<developer_name>The SABnzbd-team</developer_name>
|
||||
<screenshots>
|
||||
<screenshot type="default">
|
||||
<image>https://sabnzbd.org/images/landing/screenshots/interface.png</image>
|
||||
<caption>Web interface</caption>
|
||||
</screenshot>
|
||||
<screenshot>
|
||||
<image>https://sabnzbd.org/images/landing/screenshots/night-mode.png</image>
|
||||
<caption>Night mode</caption>
|
||||
</screenshot>
|
||||
<screenshot>
|
||||
<image>https://sabnzbd.org/images/landing/screenshots/config.png</image>
|
||||
<caption>Easy configuration</caption>
|
||||
</screenshot>
|
||||
</screenshots>
|
||||
<content_rating type="oars-1.1"/>
|
||||
</component>
|
||||
@@ -1,9 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info">
|
||||
<mime-type type="application/x-compressed-nzb">
|
||||
<sub-class-of type="application/x-nzb"/>
|
||||
<comment>NewzBin Usenet index (compressed)</comment>
|
||||
<glob pattern="*.nzb.gz"/>
|
||||
<glob pattern="*.nzb.bz2"/>
|
||||
</mime-type>
|
||||
</mime-info>
|
||||
@@ -1,11 +0,0 @@
|
||||
[Desktop Entry]
|
||||
Name=SABnzbd
|
||||
GenericName=Binary newsreader
|
||||
Comment=Download from Usenet
|
||||
Exec=/opt/sabnzbd/SABnzbd.py --browser 1 %F
|
||||
Icon=sabnzbd
|
||||
Terminal=false
|
||||
Type=Application
|
||||
Categories=Network;FileTransfer;
|
||||
Keywords=usenet;binaries;download;nzb;nntp;newsreader;
|
||||
MimeType=application/x-nzb;application/x-compressed-nzb;
|
||||
BIN
osx/7zip/7za
Executable file
BIN
osx/7zip/7za
Executable file
Binary file not shown.
BIN
osx/7zip/7zz
BIN
osx/7zip/7zz
Binary file not shown.
@@ -1,21 +1,17 @@
|
||||
7-Zip
|
||||
~~~~~
|
||||
7-Zip source code
|
||||
~~~~~~~~~~~~~~~~~
|
||||
License for use and distribution
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
7-Zip Copyright (C) 1999-2021 Igor Pavlov.
|
||||
7-Zip Copyright (C) 1999-2016 Igor Pavlov.
|
||||
|
||||
The licenses for 7zz file are:
|
||||
Licenses for files are:
|
||||
|
||||
- The "GNU LGPL" as main license for most of the code
|
||||
- The "GNU LGPL" with "unRAR license restriction" for some code
|
||||
- The "BSD 3-clause License" for some code
|
||||
1) CPP/7zip/Compress/Rar* files: GNU LGPL + unRAR restriction
|
||||
2) All other files: GNU LGPL
|
||||
|
||||
Redistributions in binary form must reproduce related license information from this file.
|
||||
|
||||
Note:
|
||||
You can use 7-Zip on any computer, including a computer in a commercial
|
||||
organization. You don't need to register or pay for 7-Zip.
|
||||
The GNU LGPL + unRAR restriction means that you must follow both
|
||||
GNU LGPL rules and unRAR restriction rules.
|
||||
|
||||
|
||||
GNU LGPL information
|
||||
@@ -31,57 +27,26 @@
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You can receive a copy of the GNU Lesser General Public License from
|
||||
http://www.gnu.org/
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with this library; if not, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301
|
||||
USA
|
||||
|
||||
|
||||
unRAR restriction
|
||||
-----------------
|
||||
|
||||
|
||||
BSD 3-clause License
|
||||
--------------------
|
||||
|
||||
The "BSD 3-clause License" is used for the code in 7z.dll that implements LZFSE data decompression.
|
||||
That code was derived from the code in the "LZFSE compression library" developed by Apple Inc,
|
||||
that also uses the "BSD 3-clause License":
|
||||
|
||||
----
|
||||
Copyright (c) 2015-2016, Apple Inc. All rights reserved.
|
||||
|
||||
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
|
||||
|
||||
1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
|
||||
|
||||
2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer
|
||||
in the documentation and/or other materials provided with the distribution.
|
||||
|
||||
3. Neither the name of the copyright holder(s) nor the names of any contributors may be used to endorse or promote products derived
|
||||
from this software without specific prior written permission.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
||||
COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
||||
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
----
|
||||
|
||||
|
||||
|
||||
|
||||
unRAR license restriction
|
||||
-------------------------
|
||||
|
||||
The decompression engine for RAR archives was developed using source
|
||||
The decompression engine for RAR archives was developed using source
|
||||
code of unRAR program.
|
||||
All copyrights to original unRAR code are owned by Alexander Roshal.
|
||||
|
||||
The license for original unRAR code has the following restriction:
|
||||
|
||||
The unRAR sources cannot be used to re-create the RAR compression algorithm,
|
||||
which is proprietary. Distribution of modified unRAR sources in separate form
|
||||
or as a part of other software is permitted, provided that it is clearly
|
||||
stated in the documentation and source comments that the code may
|
||||
not be used to develop a RAR (WinRAR) compatible archiver.
|
||||
The unRAR sources cannot be used to re-create the RAR compression algorithm,
|
||||
which is proprietary. Distribution of modified unRAR sources in separate form
|
||||
or as a part of other software is permitted, provided that it is clearly
|
||||
stated in the documentation and source comments that the code may
|
||||
not be used to develop a RAR (WinRAR) compatible archiver.
|
||||
|
||||
|
||||
--
|
||||
|
||||
@@ -1,340 +0,0 @@
|
||||
GNU GENERAL PUBLIC LICENSE
|
||||
Version 2, June 1991
|
||||
|
||||
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
|
||||
59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
|
||||
Preamble
|
||||
|
||||
The licenses for most software are designed to take away your
|
||||
freedom to share and change it. By contrast, the GNU General Public
|
||||
License is intended to guarantee your freedom to share and change free
|
||||
software--to make sure the software is free for all its users. This
|
||||
General Public License applies to most of the Free Software
|
||||
Foundation's software and to any other program whose authors commit to
|
||||
using it. (Some other Free Software Foundation software is covered by
|
||||
the GNU Library General Public License instead.) You can apply it to
|
||||
your programs, too.
|
||||
|
||||
When we speak of free software, we are referring to freedom, not
|
||||
price. Our General Public Licenses are designed to make sure that you
|
||||
have the freedom to distribute copies of free software (and charge for
|
||||
this service if you wish), that you receive source code or can get it
|
||||
if you want it, that you can change the software or use pieces of it
|
||||
in new free programs; and that you know you can do these things.
|
||||
|
||||
To protect your rights, we need to make restrictions that forbid
|
||||
anyone to deny you these rights or to ask you to surrender the rights.
|
||||
These restrictions translate to certain responsibilities for you if you
|
||||
distribute copies of the software, or if you modify it.
|
||||
|
||||
For example, if you distribute copies of such a program, whether
|
||||
gratis or for a fee, you must give the recipients all the rights that
|
||||
you have. You must make sure that they, too, receive or can get the
|
||||
source code. And you must show them these terms so they know their
|
||||
rights.
|
||||
|
||||
We protect your rights with two steps: (1) copyright the software, and
|
||||
(2) offer you this license which gives you legal permission to copy,
|
||||
distribute and/or modify the software.
|
||||
|
||||
Also, for each author's protection and ours, we want to make certain
|
||||
that everyone understands that there is no warranty for this free
|
||||
software. If the software is modified by someone else and passed on, we
|
||||
want its recipients to know that what they have is not the original, so
|
||||
that any problems introduced by others will not reflect on the original
|
||||
authors' reputations.
|
||||
|
||||
Finally, any free program is threatened constantly by software
|
||||
patents. We wish to avoid the danger that redistributors of a free
|
||||
program will individually obtain patent licenses, in effect making the
|
||||
program proprietary. To prevent this, we have made it clear that any
|
||||
patent must be licensed for everyone's free use or not licensed at all.
|
||||
|
||||
The precise terms and conditions for copying, distribution and
|
||||
modification follow.
|
||||
|
||||
GNU GENERAL PUBLIC LICENSE
|
||||
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
||||
|
||||
0. This License applies to any program or other work which contains
|
||||
a notice placed by the copyright holder saying it may be distributed
|
||||
under the terms of this General Public License. The "Program", below,
|
||||
refers to any such program or work, and a "work based on the Program"
|
||||
means either the Program or any derivative work under copyright law:
|
||||
that is to say, a work containing the Program or a portion of it,
|
||||
either verbatim or with modifications and/or translated into another
|
||||
language. (Hereinafter, translation is included without limitation in
|
||||
the term "modification".) Each licensee is addressed as "you".
|
||||
|
||||
Activities other than copying, distribution and modification are not
|
||||
covered by this License; they are outside its scope. The act of
|
||||
running the Program is not restricted, and the output from the Program
|
||||
is covered only if its contents constitute a work based on the
|
||||
Program (independent of having been made by running the Program).
|
||||
Whether that is true depends on what the Program does.
|
||||
|
||||
1. You may copy and distribute verbatim copies of the Program's
|
||||
source code as you receive it, in any medium, provided that you
|
||||
conspicuously and appropriately publish on each copy an appropriate
|
||||
copyright notice and disclaimer of warranty; keep intact all the
|
||||
notices that refer to this License and to the absence of any warranty;
|
||||
and give any other recipients of the Program a copy of this License
|
||||
along with the Program.
|
||||
|
||||
You may charge a fee for the physical act of transferring a copy, and
|
||||
you may at your option offer warranty protection in exchange for a fee.
|
||||
|
||||
2. You may modify your copy or copies of the Program or any portion
|
||||
of it, thus forming a work based on the Program, and copy and
|
||||
distribute such modifications or work under the terms of Section 1
|
||||
above, provided that you also meet all of these conditions:
|
||||
|
||||
a) You must cause the modified files to carry prominent notices
|
||||
stating that you changed the files and the date of any change.
|
||||
|
||||
b) You must cause any work that you distribute or publish, that in
|
||||
whole or in part contains or is derived from the Program or any
|
||||
part thereof, to be licensed as a whole at no charge to all third
|
||||
parties under the terms of this License.
|
||||
|
||||
c) If the modified program normally reads commands interactively
|
||||
when run, you must cause it, when started running for such
|
||||
interactive use in the most ordinary way, to print or display an
|
||||
announcement including an appropriate copyright notice and a
|
||||
notice that there is no warranty (or else, saying that you provide
|
||||
a warranty) and that users may redistribute the program under
|
||||
these conditions, and telling the user how to view a copy of this
|
||||
License. (Exception: if the Program itself is interactive but
|
||||
does not normally print such an announcement, your work based on
|
||||
the Program is not required to print an announcement.)
|
||||
|
||||
These requirements apply to the modified work as a whole. If
|
||||
identifiable sections of that work are not derived from the Program,
|
||||
and can be reasonably considered independent and separate works in
|
||||
themselves, then this License, and its terms, do not apply to those
|
||||
sections when you distribute them as separate works. But when you
|
||||
distribute the same sections as part of a whole which is a work based
|
||||
on the Program, the distribution of the whole must be on the terms of
|
||||
this License, whose permissions for other licensees extend to the
|
||||
entire whole, and thus to each and every part regardless of who wrote it.
|
||||
|
||||
Thus, it is not the intent of this section to claim rights or contest
|
||||
your rights to work written entirely by you; rather, the intent is to
|
||||
exercise the right to control the distribution of derivative or
|
||||
collective works based on the Program.
|
||||
|
||||
In addition, mere aggregation of another work not based on the Program
|
||||
with the Program (or with a work based on the Program) on a volume of
|
||||
a storage or distribution medium does not bring the other work under
|
||||
the scope of this License.
|
||||
|
||||
3. You may copy and distribute the Program (or a work based on it,
|
||||
under Section 2) in object code or executable form under the terms of
|
||||
Sections 1 and 2 above provided that you also do one of the following:
|
||||
|
||||
a) Accompany it with the complete corresponding machine-readable
|
||||
source code, which must be distributed under the terms of Sections
|
||||
1 and 2 above on a medium customarily used for software interchange; or,
|
||||
|
||||
b) Accompany it with a written offer, valid for at least three
|
||||
years, to give any third party, for a charge no more than your
|
||||
cost of physically performing source distribution, a complete
|
||||
machine-readable copy of the corresponding source code, to be
|
||||
distributed under the terms of Sections 1 and 2 above on a medium
|
||||
customarily used for software interchange; or,
|
||||
|
||||
c) Accompany it with the information you received as to the offer
|
||||
to distribute corresponding source code. (This alternative is
|
||||
allowed only for noncommercial distribution and only if you
|
||||
received the program in object code or executable form with such
|
||||
an offer, in accord with Subsection b above.)
|
||||
|
||||
The source code for a work means the preferred form of the work for
|
||||
making modifications to it. For an executable work, complete source
|
||||
code means all the source code for all modules it contains, plus any
|
||||
associated interface definition files, plus the scripts used to
|
||||
control compilation and installation of the executable. However, as a
|
||||
special exception, the source code distributed need not include
|
||||
anything that is normally distributed (in either source or binary
|
||||
form) with the major components (compiler, kernel, and so on) of the
|
||||
operating system on which the executable runs, unless that component
|
||||
itself accompanies the executable.
|
||||
|
||||
If distribution of executable or object code is made by offering
|
||||
access to copy from a designated place, then offering equivalent
|
||||
access to copy the source code from the same place counts as
|
||||
distribution of the source code, even though third parties are not
|
||||
compelled to copy the source along with the object code.
|
||||
|
||||
4. You may not copy, modify, sublicense, or distribute the Program
|
||||
except as expressly provided under this License. Any attempt
|
||||
otherwise to copy, modify, sublicense or distribute the Program is
|
||||
void, and will automatically terminate your rights under this License.
|
||||
However, parties who have received copies, or rights, from you under
|
||||
this License will not have their licenses terminated so long as such
|
||||
parties remain in full compliance.
|
||||
|
||||
5. You are not required to accept this License, since you have not
|
||||
signed it. However, nothing else grants you permission to modify or
|
||||
distribute the Program or its derivative works. These actions are
|
||||
prohibited by law if you do not accept this License. Therefore, by
|
||||
modifying or distributing the Program (or any work based on the
|
||||
Program), you indicate your acceptance of this License to do so, and
|
||||
all its terms and conditions for copying, distributing or modifying
|
||||
the Program or works based on it.
|
||||
|
||||
6. Each time you redistribute the Program (or any work based on the
|
||||
Program), the recipient automatically receives a license from the
|
||||
original licensor to copy, distribute or modify the Program subject to
|
||||
these terms and conditions. You may not impose any further
|
||||
restrictions on the recipients' exercise of the rights granted herein.
|
||||
You are not responsible for enforcing compliance by third parties to
|
||||
this License.
|
||||
|
||||
7. If, as a consequence of a court judgment or allegation of patent
|
||||
infringement or for any other reason (not limited to patent issues),
|
||||
conditions are imposed on you (whether by court order, agreement or
|
||||
otherwise) that contradict the conditions of this License, they do not
|
||||
excuse you from the conditions of this License. If you cannot
|
||||
distribute so as to satisfy simultaneously your obligations under this
|
||||
License and any other pertinent obligations, then as a consequence you
|
||||
may not distribute the Program at all. For example, if a patent
|
||||
license would not permit royalty-free redistribution of the Program by
|
||||
all those who receive copies directly or indirectly through you, then
|
||||
the only way you could satisfy both it and this License would be to
|
||||
refrain entirely from distribution of the Program.
|
||||
|
||||
If any portion of this section is held invalid or unenforceable under
|
||||
any particular circumstance, the balance of the section is intended to
|
||||
apply and the section as a whole is intended to apply in other
|
||||
circumstances.
|
||||
|
||||
It is not the purpose of this section to induce you to infringe any
|
||||
patents or other property right claims or to contest validity of any
|
||||
such claims; this section has the sole purpose of protecting the
|
||||
integrity of the free software distribution system, which is
|
||||
implemented by public license practices. Many people have made
|
||||
generous contributions to the wide range of software distributed
|
||||
through that system in reliance on consistent application of that
|
||||
system; it is up to the author/donor to decide if he or she is willing
|
||||
to distribute software through any other system and a licensee cannot
|
||||
impose that choice.
|
||||
|
||||
This section is intended to make thoroughly clear what is believed to
|
||||
be a consequence of the rest of this License.
|
||||
|
||||
8. If the distribution and/or use of the Program is restricted in
|
||||
certain countries either by patents or by copyrighted interfaces, the
|
||||
original copyright holder who places the Program under this License
|
||||
may add an explicit geographical distribution limitation excluding
|
||||
those countries, so that distribution is permitted only in or among
|
||||
countries not thus excluded. In such case, this License incorporates
|
||||
the limitation as if written in the body of this License.
|
||||
|
||||
9. The Free Software Foundation may publish revised and/or new versions
|
||||
of the General Public License from time to time. Such new versions will
|
||||
be similar in spirit to the present version, but may differ in detail to
|
||||
address new problems or concerns.
|
||||
|
||||
Each version is given a distinguishing version number. If the Program
|
||||
specifies a version number of this License which applies to it and "any
|
||||
later version", you have the option of following the terms and conditions
|
||||
either of that version or of any later version published by the Free
|
||||
Software Foundation. If the Program does not specify a version number of
|
||||
this License, you may choose any version ever published by the Free Software
|
||||
Foundation.
|
||||
|
||||
10. If you wish to incorporate parts of the Program into other free
|
||||
programs whose distribution conditions are different, write to the author
|
||||
to ask for permission. For software which is copyrighted by the Free
|
||||
Software Foundation, write to the Free Software Foundation; we sometimes
|
||||
make exceptions for this. Our decision will be guided by the two goals
|
||||
of preserving the free status of all derivatives of our free software and
|
||||
of promoting the sharing and reuse of software generally.
|
||||
|
||||
NO WARRANTY
|
||||
|
||||
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
|
||||
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
|
||||
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
|
||||
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
|
||||
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
|
||||
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
|
||||
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
|
||||
REPAIR OR CORRECTION.
|
||||
|
||||
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
|
||||
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
|
||||
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
|
||||
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
|
||||
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
|
||||
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
|
||||
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
|
||||
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
|
||||
POSSIBILITY OF SUCH DAMAGES.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
How to Apply These Terms to Your New Programs
|
||||
|
||||
If you develop a new program, and you want it to be of the greatest
|
||||
possible use to the public, the best way to achieve this is to make it
|
||||
free software which everyone can redistribute and change under these terms.
|
||||
|
||||
To do so, attach the following notices to the program. It is safest
|
||||
to attach them to the start of each source file to most effectively
|
||||
convey the exclusion of warranty; and each file should have at least
|
||||
the "copyright" line and a pointer to where the full notice is found.
|
||||
|
||||
<one line to give the program's name and a brief idea of what it does.>
|
||||
Copyright (C) <year> <name of author>
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software
|
||||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
|
||||
Also add information on how to contact you by electronic and paper mail.
|
||||
|
||||
If the program is interactive, make it output a short notice like this
|
||||
when it starts in an interactive mode:
|
||||
|
||||
Gnomovision version 69, Copyright (C) year name of author
|
||||
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
|
||||
This is free software, and you are welcome to redistribute it
|
||||
under certain conditions; type `show c' for details.
|
||||
|
||||
The hypothetical commands `show w' and `show c' should show the appropriate
|
||||
parts of the General Public License. Of course, the commands you use may
|
||||
be called something other than `show w' and `show c'; they could even be
|
||||
mouse-clicks or menu items--whatever suits your program.
|
||||
|
||||
You should also get your employer (if you work as a programmer) or your
|
||||
school, if any, to sign a "copyright disclaimer" for the program, if
|
||||
necessary. Here is a sample; alter the names:
|
||||
|
||||
Yoyodyne, Inc., hereby disclaims all copyright interest in the program
|
||||
`Gnomovision' (which makes passes at compilers) written by James Hacker.
|
||||
|
||||
<signature of Ty Coon>, 1 April 1989
|
||||
Ty Coon, President of Vice
|
||||
|
||||
This General Public License does not permit incorporating your program into
|
||||
proprietary programs. If your program is a subroutine library, you may
|
||||
consider it more useful to permit linking proprietary applications with the
|
||||
library. If this is what you want to do, use the GNU Library General
|
||||
Public License instead of this License.
|
||||
@@ -1,28 +0,0 @@
|
||||
# Creating `par2` for M1 systems
|
||||
|
||||
Compiled on an M1 system using these steps.
|
||||
|
||||
If you do not use llvm and `clang++` it will not include multithreading support.
|
||||
|
||||
However, I was unable to statically link the `libomp` library inside the `par2` executable.
|
||||
I extracted it from the llvm libs folder and modified `par2` to look for the `libomp.dylib` in the same folder using `install_name_tool`.
|
||||
|
||||
Ref: https://stackoverflow.com/questions/4677044/how-to-use-dylib-in-mac-os-x-c
|
||||
|
||||
```shell
|
||||
brew install automake
|
||||
brew install llvm
|
||||
echo 'export PATH="/opt/homebrew/opt/llvm/bin:$PATH"' >> ~/.zshrc
|
||||
|
||||
# Restart terminal and clone/download par2cmdline sources
|
||||
|
||||
./automake.sh
|
||||
CPPFLAGS="-I/opt/homebrew/opt/llvm/include" LDFLAGS="-L/opt/homebrew/opt/llvm/lib" CXX="clang++" ./configure
|
||||
make clean
|
||||
make
|
||||
make check
|
||||
|
||||
# Do magic to copy and modify the OpenMP library
|
||||
cp /opt/homebrew/opt/llvm/lib/libomp.dylib .
|
||||
install_name_tool -change /opt/homebrew/opt/llvm/lib/libomp.dylib @executable_path/libomp.dylib ./par2
|
||||
```
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
osx/unrar/unrar
BIN
osx/unrar/unrar
Binary file not shown.
@@ -5,7 +5,7 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
|
||||
"Project-Id-Version: SABnzbd-develop\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: team@sabnzbd.org\n"
|
||||
"Language-Team: SABnzbd <team@sabnzbd.org>\n"
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
|
||||
"Project-Id-Version: SABnzbd-develop\n"
|
||||
"PO-Revision-Date: 2020-06-27 15:56+0000\n"
|
||||
"Language-Team: Czech (https://www.transifex.com/sabnzbd/teams/111101/cs/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
|
||||
"Project-Id-Version: SABnzbd-develop\n"
|
||||
"PO-Revision-Date: 2020-06-27 15:56+0000\n"
|
||||
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2020\n"
|
||||
"Language-Team: Danish (https://www.transifex.com/sabnzbd/teams/111101/da/)\n"
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
|
||||
"Project-Id-Version: SABnzbd-develop\n"
|
||||
"PO-Revision-Date: 2020-06-27 15:56+0000\n"
|
||||
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2020\n"
|
||||
"Language-Team: German (https://www.transifex.com/sabnzbd/teams/111101/de/)\n"
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
|
||||
"Project-Id-Version: SABnzbd-develop\n"
|
||||
"PO-Revision-Date: 2020-06-27 15:56+0000\n"
|
||||
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2020\n"
|
||||
"Language-Team: Spanish (https://www.transifex.com/sabnzbd/teams/111101/es/)\n"
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
|
||||
"Project-Id-Version: SABnzbd-develop\n"
|
||||
"PO-Revision-Date: 2020-06-27 15:56+0000\n"
|
||||
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2020\n"
|
||||
"Language-Team: Finnish (https://www.transifex.com/sabnzbd/teams/111101/fi/)\n"
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
|
||||
"Project-Id-Version: SABnzbd-develop\n"
|
||||
"PO-Revision-Date: 2020-06-27 15:56+0000\n"
|
||||
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2020\n"
|
||||
"Language-Team: French (https://www.transifex.com/sabnzbd/teams/111101/fr/)\n"
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
|
||||
"Project-Id-Version: SABnzbd-develop\n"
|
||||
"PO-Revision-Date: 2020-06-27 15:56+0000\n"
|
||||
"Last-Translator: ION, 2020\n"
|
||||
"Language-Team: Hebrew (https://www.transifex.com/sabnzbd/teams/111101/he/)\n"
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
|
||||
"Project-Id-Version: SABnzbd-develop\n"
|
||||
"PO-Revision-Date: 2020-06-27 15:56+0000\n"
|
||||
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2020\n"
|
||||
"Language-Team: Norwegian Bokmål (https://www.transifex.com/sabnzbd/teams/111101/nb/)\n"
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
|
||||
"Project-Id-Version: SABnzbd-develop\n"
|
||||
"PO-Revision-Date: 2020-06-27 15:56+0000\n"
|
||||
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2020\n"
|
||||
"Language-Team: Dutch (https://www.transifex.com/sabnzbd/teams/111101/nl/)\n"
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
|
||||
"Project-Id-Version: SABnzbd-develop\n"
|
||||
"PO-Revision-Date: 2020-06-27 15:56+0000\n"
|
||||
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2020\n"
|
||||
"Language-Team: Polish (https://www.transifex.com/sabnzbd/teams/111101/pl/)\n"
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
|
||||
"Project-Id-Version: SABnzbd-develop\n"
|
||||
"PO-Revision-Date: 2020-06-27 15:56+0000\n"
|
||||
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2020\n"
|
||||
"Language-Team: Portuguese (Brazil) (https://www.transifex.com/sabnzbd/teams/111101/pt_BR/)\n"
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
|
||||
"Project-Id-Version: SABnzbd-develop\n"
|
||||
"PO-Revision-Date: 2020-06-27 15:56+0000\n"
|
||||
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2020\n"
|
||||
"Language-Team: Romanian (https://www.transifex.com/sabnzbd/teams/111101/ro/)\n"
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
|
||||
"Project-Id-Version: SABnzbd-develop\n"
|
||||
"PO-Revision-Date: 2020-06-27 15:56+0000\n"
|
||||
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2020\n"
|
||||
"Language-Team: Russian (https://www.transifex.com/sabnzbd/teams/111101/ru/)\n"
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
|
||||
"Project-Id-Version: SABnzbd-develop\n"
|
||||
"PO-Revision-Date: 2020-06-27 15:56+0000\n"
|
||||
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2020\n"
|
||||
"Language-Team: Serbian (https://www.transifex.com/sabnzbd/teams/111101/sr/)\n"
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
|
||||
"Project-Id-Version: SABnzbd-develop\n"
|
||||
"PO-Revision-Date: 2020-06-27 15:56+0000\n"
|
||||
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2020\n"
|
||||
"Language-Team: Swedish (https://www.transifex.com/sabnzbd/teams/111101/sv/)\n"
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
|
||||
"Project-Id-Version: SABnzbd-develop\n"
|
||||
"PO-Revision-Date: 2020-06-27 15:56+0000\n"
|
||||
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2020\n"
|
||||
"Language-Team: Chinese (China) (https://www.transifex.com/sabnzbd/teams/111101/zh_CN/)\n"
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
|
||||
"Project-Id-Version: SABnzbd-develop\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: team@sabnzbd.org\n"
|
||||
"Language-Team: SABnzbd <team@sabnzbd.org>\n"
|
||||
@@ -185,6 +185,11 @@ msgstr ""
|
||||
msgid "Failed to compile regex for search term: %s"
|
||||
msgstr ""
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Too little diskspace forcing PAUSE"
|
||||
msgstr ""
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Disk full! Forcing Pause"
|
||||
@@ -200,11 +205,6 @@ msgstr ""
|
||||
msgid "Fatal error in Assembler"
|
||||
msgstr ""
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Too little diskspace forcing PAUSE"
|
||||
msgstr ""
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Paused job \"%s\" because of encrypted RAR file (if supplied, all passwords were tried)"
|
||||
@@ -232,6 +232,20 @@ msgstr ""
|
||||
msgid "Aborted, unwanted extension detected"
|
||||
msgstr ""
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Paused job \"%s\" because of rating (%s)"
|
||||
msgstr ""
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Aborted job \"%s\" because of rating (%s)"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Aborted, rating filter matched (%s)"
|
||||
msgstr ""
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Job \"%s\" is probably encrypted due to RAR with same name inside this RAR"
|
||||
@@ -242,6 +256,30 @@ msgstr ""
|
||||
msgid "Job \"%s\" is probably encrypted: \"password\" in filename \"%s\""
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "video"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "audio"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "spam"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "passworded"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "downvoted"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "keywords"
|
||||
msgstr ""
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/bpsmeter.py
|
||||
msgid "Quota spent, pausing downloading"
|
||||
@@ -295,11 +333,6 @@ msgstr ""
|
||||
msgid "Cannot create backup file for %s"
|
||||
msgstr ""
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/config.py
|
||||
msgid "Could not restore backup"
|
||||
msgstr ""
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/config.py
|
||||
msgid "Incorrectly encoded password %s"
|
||||
@@ -340,18 +373,6 @@ msgstr ""
|
||||
msgid "Unknown Error while decoding %s"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/deobfuscate_filenames.py
|
||||
msgid "Deobfuscate skipped due to DVD/Bluray directories"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/deobfuscate_filenames.py
|
||||
msgid "Deobfuscate corrected the extension of %d file(s)"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/deobfuscate_filenames.py
|
||||
msgid "Deobfuscate renamed %d file(s)"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/directunpacker.py, sabnzbd/skintext.py
|
||||
msgid "Direct Unpack"
|
||||
msgstr ""
|
||||
@@ -483,7 +504,7 @@ msgstr ""
|
||||
msgid "Failed to close mail connection"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/emailer.py, sabnzbd/notifier.py
|
||||
#: sabnzbd/emailer.py, sabnzbd/notifier.py, sabnzbd/rating.py
|
||||
msgid "Cannot send, missing required data"
|
||||
msgstr ""
|
||||
|
||||
@@ -604,10 +625,6 @@ msgstr ""
|
||||
msgid "The Completed Download Folder cannot be the same or a subfolder of the Temporary Download Folder"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/interface.py
|
||||
msgid "Invalid backup archive"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/interface.py
|
||||
msgid "Warning: LOCALHOST is ambiguous, use numerical IP-address."
|
||||
msgstr ""
|
||||
@@ -1143,6 +1160,10 @@ msgstr ""
|
||||
msgid "UNWANTED"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
|
||||
msgid "FILTERED"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
|
||||
msgid "WAIT %s sec"
|
||||
msgstr ""
|
||||
@@ -1505,6 +1526,23 @@ msgstr ""
|
||||
msgid "Received a DBus exception %s"
|
||||
msgstr ""
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/rating.py
|
||||
msgid "Indexer id (%s) not found for ratings file"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/rating.py
|
||||
msgid "Server address"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/rating.py, sabnzbd/skintext.py
|
||||
msgid "API Key"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/rating.py, sabnzbd/skintext.py
|
||||
msgid "This key provides identity to indexer. Check your profile on the indexer's website."
|
||||
msgstr ""
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/rss.py
|
||||
msgid "Incorrect RSS feed description \"%s\""
|
||||
@@ -1625,11 +1663,6 @@ msgstr ""
|
||||
msgid "Unpack"
|
||||
msgstr ""
|
||||
|
||||
#. PP phase "deobfuscate"
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Deobfuscate"
|
||||
msgstr ""
|
||||
|
||||
#. PP phase "script" - Notification Script settings
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Script"
|
||||
@@ -2589,18 +2622,6 @@ msgstr ""
|
||||
msgid "CPU Model"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Download speed limited by"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "CPU"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Disk speed"
|
||||
msgstr ""
|
||||
|
||||
#. Do not translate Pystone
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "System Performance (Pystone)"
|
||||
@@ -2861,14 +2882,6 @@ msgstr ""
|
||||
msgid "Cache articles in memory to reduce disk access.<br /><i>In bytes, optionally follow with K,M,G. For example: \"64M\" or \"128M\"</i>"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Download backup"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Save or restore a backup of the configuration file and databases."
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Cleanup List"
|
||||
msgstr ""
|
||||
@@ -2929,10 +2942,6 @@ msgstr ""
|
||||
msgid "Help us translate SABnzbd in your language! <br/>Add untranslated texts or improved existing translations here:"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "API Key"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "This key will give 3rd party programs full access to SABnzbd."
|
||||
msgstr ""
|
||||
@@ -3498,6 +3507,58 @@ msgstr ""
|
||||
msgid "When during download it becomes clear that too much data is missing, abort the job"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Enable Indexer Integration"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Indexers can supply rating information when a job is added and SABnzbd can report to the indexer if a job couldn't be completed."
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Enable Filtering"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Action downloads according to filtering rules."
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Abort If"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Else Pause If"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Video rating"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Audio rating"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Spam"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Confirmed"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "More thumbs down than up"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Title keywords"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Comma separated list"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Server IP address selection"
|
||||
msgstr ""
|
||||
@@ -4547,10 +4608,6 @@ msgstr ""
|
||||
msgid "Confirm History Deletions"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Keyboard shortcuts"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "How long or untill when do you want to pause? (in English!)"
|
||||
msgstr ""
|
||||
@@ -4697,10 +4754,6 @@ msgstr ""
|
||||
msgid "Start Wizard"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Restore backup"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid ""
|
||||
"\n"
|
||||
|
||||
191
po/main/cs.po
191
po/main/cs.po
@@ -3,14 +3,14 @@
|
||||
# team@sabnzbd.org
|
||||
#
|
||||
# Translators:
|
||||
# Safihre <safihre@sabnzbd.org>, 2020
|
||||
# Pavel C <quoing_transifex@mess.cz>, 2021
|
||||
# Safihre <safihre@sabnzbd.org>, 2022
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
|
||||
"Project-Id-Version: SABnzbd-develop\n"
|
||||
"PO-Revision-Date: 2020-06-27 15:49+0000\n"
|
||||
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2022\n"
|
||||
"Last-Translator: Pavel C <quoing_transifex@mess.cz>, 2021\n"
|
||||
"Language-Team: Czech (https://www.transifex.com/sabnzbd/teams/111101/cs/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
@@ -203,6 +203,11 @@ msgstr "Výchozí"
|
||||
msgid "Failed to compile regex for search term: %s"
|
||||
msgstr "Nepodařilo se zkompilovat regex pro hledaný výraz: %s"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Too little diskspace forcing PAUSE"
|
||||
msgstr "Příliš málo místa na disku, přenos POZASTAVEN"
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Disk full! Forcing Pause"
|
||||
@@ -218,11 +223,6 @@ msgstr "Probém s vytvořením souboru %s na disku"
|
||||
msgid "Fatal error in Assembler"
|
||||
msgstr "Neopravitelná chyba v Assembleru"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Too little diskspace forcing PAUSE"
|
||||
msgstr "Příliš málo místa na disku, přenos POZASTAVEN"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid ""
|
||||
@@ -258,6 +258,20 @@ msgstr "Neočekávaná přípona v rar souboru %s"
|
||||
msgid "Aborted, unwanted extension detected"
|
||||
msgstr "Přerušeno, nalezena neočekávaná připona"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Paused job \"%s\" because of rating (%s)"
|
||||
msgstr "Pozastavený úkol \"%s\" kvůli hodnocení (%s)"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Aborted job \"%s\" because of rating (%s)"
|
||||
msgstr "Zrušený úkol \"%s\" kvůli hodnocení (%s)"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Aborted, rating filter matched (%s)"
|
||||
msgstr "Zrušeno, zachyceno hodnotícím filtrem (%s)"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Job \"%s\" is probably encrypted due to RAR with same name inside this RAR"
|
||||
@@ -268,6 +282,30 @@ msgstr ""
|
||||
msgid "Job \"%s\" is probably encrypted: \"password\" in filename \"%s\""
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "video"
|
||||
msgstr "video"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "audio"
|
||||
msgstr "audio"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "spam"
|
||||
msgstr "spam"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "passworded"
|
||||
msgstr "zaheslováno"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "downvoted"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "keywords"
|
||||
msgstr "klíčová slova"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/bpsmeter.py
|
||||
msgid "Quota spent, pausing downloading"
|
||||
@@ -323,11 +361,6 @@ msgstr "Nelze zapisovat do INI souboru %s"
|
||||
msgid "Cannot create backup file for %s"
|
||||
msgstr "Nelze vytvořit zálohu souboru %s"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/config.py
|
||||
msgid "Could not restore backup"
|
||||
msgstr ""
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/config.py
|
||||
msgid "Incorrectly encoded password %s"
|
||||
@@ -368,18 +401,6 @@ msgstr "Chyba dekodéru: nedostatek paměti"
|
||||
msgid "Unknown Error while decoding %s"
|
||||
msgstr "Neznámá chyba při dekódování %s"
|
||||
|
||||
#: sabnzbd/deobfuscate_filenames.py
|
||||
msgid "Deobfuscate skipped due to DVD/Bluray directories"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/deobfuscate_filenames.py
|
||||
msgid "Deobfuscate corrected the extension of %d file(s)"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/deobfuscate_filenames.py
|
||||
msgid "Deobfuscate renamed %d file(s)"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/directunpacker.py, sabnzbd/skintext.py
|
||||
msgid "Direct Unpack"
|
||||
msgstr "Přímé rozbalení"
|
||||
@@ -518,7 +539,7 @@ msgstr "Nezdařilo se odeslat e-mail"
|
||||
msgid "Failed to close mail connection"
|
||||
msgstr "Nezdařilo se uzavřít spojení pro mail"
|
||||
|
||||
#: sabnzbd/emailer.py, sabnzbd/notifier.py
|
||||
#: sabnzbd/emailer.py, sabnzbd/notifier.py, sabnzbd/rating.py
|
||||
msgid "Cannot send, missing required data"
|
||||
msgstr "Nelze odeslat, chybějí požadovaná data"
|
||||
|
||||
@@ -653,10 +674,6 @@ msgid ""
|
||||
"Temporary Download Folder"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/interface.py
|
||||
msgid "Invalid backup archive"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/interface.py
|
||||
msgid "Warning: LOCALHOST is ambiguous, use numerical IP-address."
|
||||
msgstr ""
|
||||
@@ -1210,6 +1227,10 @@ msgstr "NEKOMPLETNÍ"
|
||||
msgid "UNWANTED"
|
||||
msgstr "NECHTĚNÝ"
|
||||
|
||||
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
|
||||
msgid "FILTERED"
|
||||
msgstr "FILTROVANÝ"
|
||||
|
||||
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
|
||||
msgid "WAIT %s sec"
|
||||
msgstr "ČEKÁNÍ %s s"
|
||||
@@ -1579,6 +1600,25 @@ msgstr ""
|
||||
msgid "Received a DBus exception %s"
|
||||
msgstr ""
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/rating.py
|
||||
msgid "Indexer id (%s) not found for ratings file"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/rating.py
|
||||
msgid "Server address"
|
||||
msgstr "Adresa serveru"
|
||||
|
||||
#: sabnzbd/rating.py, sabnzbd/skintext.py
|
||||
msgid "API Key"
|
||||
msgstr "API klíč"
|
||||
|
||||
#: sabnzbd/rating.py, sabnzbd/skintext.py
|
||||
msgid ""
|
||||
"This key provides identity to indexer. Check your profile on the indexer's "
|
||||
"website."
|
||||
msgstr ""
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/rss.py
|
||||
msgid "Incorrect RSS feed description \"%s\""
|
||||
@@ -1700,11 +1740,6 @@ msgstr "Spojit soubory"
|
||||
msgid "Unpack"
|
||||
msgstr "Rozbalit"
|
||||
|
||||
#. PP phase "deobfuscate"
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Deobfuscate"
|
||||
msgstr ""
|
||||
|
||||
#. PP phase "script" - Notification Script settings
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Script"
|
||||
@@ -2667,18 +2702,6 @@ msgstr "DNS server / DNS dotazy"
|
||||
msgid "CPU Model"
|
||||
msgstr "Model procesoru"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Download speed limited by"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "CPU"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Disk speed"
|
||||
msgstr ""
|
||||
|
||||
#. Do not translate Pystone
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "System Performance (Pystone)"
|
||||
@@ -2966,14 +2989,6 @@ msgid ""
|
||||
" follow with K,M,G. For example: \"64M\" or \"128M\"</i>"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Download backup"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Save or restore a backup of the configuration file and databases."
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Cleanup List"
|
||||
msgstr ""
|
||||
@@ -3042,10 +3057,6 @@ msgstr ""
|
||||
"Pomozte nám přeložit SABnzbd do vaší řeči! <br/> Doplňte chybějící texty "
|
||||
"nebo vylepšete existující překlad:"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "API Key"
|
||||
msgstr "API klíč"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "This key will give 3rd party programs full access to SABnzbd."
|
||||
msgstr ""
|
||||
@@ -3663,6 +3674,60 @@ msgid ""
|
||||
"the job"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Enable Indexer Integration"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid ""
|
||||
"Indexers can supply rating information when a job is added and SABnzbd can "
|
||||
"report to the indexer if a job couldn't be completed."
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Enable Filtering"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Action downloads according to filtering rules."
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Abort If"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Else Pause If"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Video rating"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Audio rating"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Spam"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Confirmed"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "More thumbs down than up"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Title keywords"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Comma separated list"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Server IP address selection"
|
||||
msgstr "Výběr IP adresy serveru"
|
||||
@@ -4737,10 +4802,6 @@ msgstr ""
|
||||
msgid "Confirm History Deletions"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Keyboard shortcuts"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "How long or untill when do you want to pause? (in English!)"
|
||||
msgstr ""
|
||||
@@ -4891,10 +4952,6 @@ msgstr ""
|
||||
msgid "Start Wizard"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Restore backup"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid ""
|
||||
"\n"
|
||||
|
||||
193
po/main/da.po
193
po/main/da.po
@@ -3,13 +3,13 @@
|
||||
# team@sabnzbd.org
|
||||
#
|
||||
# Translators:
|
||||
# Safihre <safihre@sabnzbd.org>, 2022
|
||||
# Safihre <safihre@sabnzbd.org>, 2021
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
|
||||
"Project-Id-Version: SABnzbd-develop\n"
|
||||
"PO-Revision-Date: 2020-06-27 15:49+0000\n"
|
||||
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2022\n"
|
||||
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2021\n"
|
||||
"Language-Team: Danish (https://www.transifex.com/sabnzbd/teams/111101/da/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
@@ -203,6 +203,11 @@ msgstr "Standard"
|
||||
msgid "Failed to compile regex for search term: %s"
|
||||
msgstr "Det lykkedes ikke at kompilere regex for søgestreng: %s"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Too little diskspace forcing PAUSE"
|
||||
msgstr "For lidt diskplads tvinger system i PAUSE"
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Disk full! Forcing Pause"
|
||||
@@ -218,11 +223,6 @@ msgstr "Diskfejl ved oprettelse af fil %s"
|
||||
msgid "Fatal error in Assembler"
|
||||
msgstr "Fatal fejl i Assembler"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Too little diskspace forcing PAUSE"
|
||||
msgstr "For lidt diskplads tvinger system i PAUSE"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid ""
|
||||
@@ -258,6 +258,20 @@ msgstr "Uønsket extension i rar fil %s"
|
||||
msgid "Aborted, unwanted extension detected"
|
||||
msgstr "Afbrudt, uønsket extension fundet"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Paused job \"%s\" because of rating (%s)"
|
||||
msgstr "Pause job \"%s\" på grund af rating (%s)"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Aborted job \"%s\" because of rating (%s)"
|
||||
msgstr "Afbrudt job \"%s\" på grund af rating (%s)"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Aborted, rating filter matched (%s)"
|
||||
msgstr "Afbrudt, rating filter matchede (%s)"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Job \"%s\" is probably encrypted due to RAR with same name inside this RAR"
|
||||
@@ -268,6 +282,30 @@ msgstr ""
|
||||
msgid "Job \"%s\" is probably encrypted: \"password\" in filename \"%s\""
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "video"
|
||||
msgstr "video"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "audio"
|
||||
msgstr "lyd"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "spam"
|
||||
msgstr "spam"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "passworded"
|
||||
msgstr "beskyttet med adgangskode"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "downvoted"
|
||||
msgstr "downvoted"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "keywords"
|
||||
msgstr "nøgleord"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/bpsmeter.py
|
||||
msgid "Quota spent, pausing downloading"
|
||||
@@ -323,11 +361,6 @@ msgstr "Kan ikke skrive til INI fil %s"
|
||||
msgid "Cannot create backup file for %s"
|
||||
msgstr "Kan ikke oprette backup fil for %s"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/config.py
|
||||
msgid "Could not restore backup"
|
||||
msgstr ""
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/config.py
|
||||
msgid "Incorrectly encoded password %s"
|
||||
@@ -368,18 +401,6 @@ msgstr "Dekoder fejl: Ikke mere hukommelse"
|
||||
msgid "Unknown Error while decoding %s"
|
||||
msgstr "Ukendt fejl under afkodning af %s"
|
||||
|
||||
#: sabnzbd/deobfuscate_filenames.py
|
||||
msgid "Deobfuscate skipped due to DVD/Bluray directories"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/deobfuscate_filenames.py
|
||||
msgid "Deobfuscate corrected the extension of %d file(s)"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/deobfuscate_filenames.py
|
||||
msgid "Deobfuscate renamed %d file(s)"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/directunpacker.py, sabnzbd/skintext.py
|
||||
msgid "Direct Unpack"
|
||||
msgstr ""
|
||||
@@ -516,7 +537,7 @@ msgstr "Det lykkedes ikke at sende e-mail"
|
||||
msgid "Failed to close mail connection"
|
||||
msgstr "Det lykkedes ikke at lukke e-mail tilslutning"
|
||||
|
||||
#: sabnzbd/emailer.py, sabnzbd/notifier.py
|
||||
#: sabnzbd/emailer.py, sabnzbd/notifier.py, sabnzbd/rating.py
|
||||
msgid "Cannot send, missing required data"
|
||||
msgstr "Kan ikke sende, mangler nødvendige data"
|
||||
|
||||
@@ -661,10 +682,6 @@ msgid ""
|
||||
"Temporary Download Folder"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/interface.py
|
||||
msgid "Invalid backup archive"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/interface.py
|
||||
msgid "Warning: LOCALHOST is ambiguous, use numerical IP-address."
|
||||
msgstr "Advarsel: Localhost er tvetydig, bruge numerisk IP-adresse."
|
||||
@@ -1213,6 +1230,10 @@ msgstr "UFULDSTÆNDIG"
|
||||
msgid "UNWANTED"
|
||||
msgstr "UØNSKET"
|
||||
|
||||
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
|
||||
msgid "FILTERED"
|
||||
msgstr "FILTERED"
|
||||
|
||||
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
|
||||
msgid "WAIT %s sec"
|
||||
msgstr "VENT %s sekunder"
|
||||
@@ -1610,6 +1631,27 @@ msgstr "Fejl ved lukning af system"
|
||||
msgid "Received a DBus exception %s"
|
||||
msgstr ""
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/rating.py
|
||||
msgid "Indexer id (%s) not found for ratings file"
|
||||
msgstr "Indexer id (%s) ikke fundet for ratings fil"
|
||||
|
||||
#: sabnzbd/rating.py
|
||||
msgid "Server address"
|
||||
msgstr "Serveradresse"
|
||||
|
||||
#: sabnzbd/rating.py, sabnzbd/skintext.py
|
||||
msgid "API Key"
|
||||
msgstr "API-nøgle"
|
||||
|
||||
#: sabnzbd/rating.py, sabnzbd/skintext.py
|
||||
msgid ""
|
||||
"This key provides identity to indexer. Check your profile on the indexer's "
|
||||
"website."
|
||||
msgstr ""
|
||||
"Denne nøgle indeholder identitet indekseringen. Tjek din profil på "
|
||||
"indekseringens hjemmeside."
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/rss.py
|
||||
msgid "Incorrect RSS feed description \"%s\""
|
||||
@@ -1731,11 +1773,6 @@ msgstr "Sammenlægger filer"
|
||||
msgid "Unpack"
|
||||
msgstr "Udpak"
|
||||
|
||||
#. PP phase "deobfuscate"
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Deobfuscate"
|
||||
msgstr ""
|
||||
|
||||
#. PP phase "script" - Notification Script settings
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Script"
|
||||
@@ -2698,18 +2735,6 @@ msgstr "Nameserver/DNS Lookup"
|
||||
msgid "CPU Model"
|
||||
msgstr "CPU Model"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Download speed limited by"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "CPU"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Disk speed"
|
||||
msgstr ""
|
||||
|
||||
#. Do not translate Pystone
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "System Performance (Pystone)"
|
||||
@@ -3012,14 +3037,6 @@ msgstr ""
|
||||
"Cache artikler i hukommelsen for at reducere diskadgang.<br /><i>I bytes, "
|
||||
"efterfulgt af K,M,G. For eksempel: \"64M\" eller \"128M\"</i>"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Download backup"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Save or restore a backup of the configuration file and databases."
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Cleanup List"
|
||||
msgstr "Ryd listen"
|
||||
@@ -3090,10 +3107,6 @@ msgstr ""
|
||||
"Hjælp os med at oversætte SABnzbd på dit sprog! <br/>Tilføj uoversatte "
|
||||
"tekster eller forbedrede eksisterende oversættelser her:"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "API Key"
|
||||
msgstr "API-nøgle"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "This key will give 3rd party programs full access to SABnzbd."
|
||||
msgstr "Denne nøgle vil give 3. parts programmer fuld adgang til SABnzbd."
|
||||
@@ -3753,6 +3766,60 @@ msgstr ""
|
||||
"Når under download det bliver klart, at for meget data mangler, afbryd "
|
||||
"jobbet"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Enable Indexer Integration"
|
||||
msgstr "Aktiver indekseringen Integration"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid ""
|
||||
"Indexers can supply rating information when a job is added and SABnzbd can "
|
||||
"report to the indexer if a job couldn't be completed."
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Enable Filtering"
|
||||
msgstr "Aktivere filtrering"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Action downloads according to filtering rules."
|
||||
msgstr "Håndter downloads efter filtrering regler."
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Abort If"
|
||||
msgstr "Afbryd hvis"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Else Pause If"
|
||||
msgstr "Ellers pause hvis"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Video rating"
|
||||
msgstr "Video rating"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Audio rating"
|
||||
msgstr "Lyd rating"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Spam"
|
||||
msgstr "Spam"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Confirmed"
|
||||
msgstr "Bekræftet"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "More thumbs down than up"
|
||||
msgstr "Flere thumbs ned end op"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Title keywords"
|
||||
msgstr "Titel nøgleord"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Comma separated list"
|
||||
msgstr "Kommasepareret liste"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Server IP address selection"
|
||||
msgstr ""
|
||||
@@ -4844,10 +4911,6 @@ msgstr "Bekræft Kø-fjernelse"
|
||||
msgid "Confirm History Deletions"
|
||||
msgstr "Bekræft Historik-fjernelse"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Keyboard shortcuts"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "How long or untill when do you want to pause? (in English!)"
|
||||
msgstr "Hvor længe eller indtil hvornår du vil standse? (på engelsk!)"
|
||||
@@ -5000,10 +5063,6 @@ msgstr "Afslut SABnzbd"
|
||||
msgid "Start Wizard"
|
||||
msgstr "Start guide"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Restore backup"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid ""
|
||||
"\n"
|
||||
|
||||
196
po/main/de.po
196
po/main/de.po
@@ -9,15 +9,15 @@
|
||||
# Ben Hecht <benjamin.hecht@me.com>, 2021
|
||||
# Manuel C. Senn, 2021
|
||||
# Andreas Kames, 2021
|
||||
# Safihre <safihre@sabnzbd.org>, 2021
|
||||
# Simon W., 2021
|
||||
# Nils Briggen, 2022
|
||||
# Safihre <safihre@sabnzbd.org>, 2022
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
|
||||
"Project-Id-Version: SABnzbd-develop\n"
|
||||
"PO-Revision-Date: 2020-06-27 15:49+0000\n"
|
||||
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2022\n"
|
||||
"Last-Translator: Nils Briggen, 2022\n"
|
||||
"Language-Team: German (https://www.transifex.com/sabnzbd/teams/111101/de/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
@@ -219,6 +219,11 @@ msgid "Failed to compile regex for search term: %s"
|
||||
msgstr ""
|
||||
"Kompilieren des regulären Ausdrucks für den Suchbegriff %s fehlgeschlagen."
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Too little diskspace forcing PAUSE"
|
||||
msgstr "Angehalten wegen zu wenig freiem Speicherplatz"
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Disk full! Forcing Pause"
|
||||
@@ -234,11 +239,6 @@ msgstr "Festplattenfehler beim Anlegen der Datei %s"
|
||||
msgid "Fatal error in Assembler"
|
||||
msgstr "Schwerer Fehler im Assembler"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Too little diskspace forcing PAUSE"
|
||||
msgstr "Angehalten wegen zu wenig freiem Speicherplatz"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid ""
|
||||
@@ -274,6 +274,20 @@ msgstr "Unerwünschter Dateityp im RAR-Archiv %s"
|
||||
msgid "Aborted, unwanted extension detected"
|
||||
msgstr "Abgebrochen, unerwünschte Dateieindung gefunden"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Paused job \"%s\" because of rating (%s)"
|
||||
msgstr "Aufgabe \"%s\" aufgrund der Bewertung (%s) pausiert."
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Aborted job \"%s\" because of rating (%s)"
|
||||
msgstr "Aufgabe \"%s\" aufgrund der Bewertung (%s) abgebrochen"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Aborted, rating filter matched (%s)"
|
||||
msgstr "Abbruch, Bewertungsfilter stimmt überein (%s)"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Job \"%s\" is probably encrypted due to RAR with same name inside this RAR"
|
||||
@@ -286,6 +300,30 @@ msgstr ""
|
||||
msgid "Job \"%s\" is probably encrypted: \"password\" in filename \"%s\""
|
||||
msgstr "Aufgabe \"%s\" ist wahrscheinlich verschlüsselt: \"Passwort\" im Dateiname \"%s\""
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "video"
|
||||
msgstr "Video"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "audio"
|
||||
msgstr "Audio"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "spam"
|
||||
msgstr "Spam"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "passworded"
|
||||
msgstr "passwortgeschützt"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "downvoted"
|
||||
msgstr "als schlecht bewertet"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "keywords"
|
||||
msgstr "Schlüsselwörter"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/bpsmeter.py
|
||||
msgid "Quota spent, pausing downloading"
|
||||
@@ -346,11 +384,6 @@ msgstr "Kann INI-Datei %s nicht schreiben"
|
||||
msgid "Cannot create backup file for %s"
|
||||
msgstr "Kann keine Sicherungsdatei erstellen für %s"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/config.py
|
||||
msgid "Could not restore backup"
|
||||
msgstr ""
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/config.py
|
||||
msgid "Incorrectly encoded password %s"
|
||||
@@ -393,18 +426,6 @@ msgstr "Decoder Fehler: Nicht genügend Speicher"
|
||||
msgid "Unknown Error while decoding %s"
|
||||
msgstr "Unbekannter Fehler %s beim Dekodieren"
|
||||
|
||||
#: sabnzbd/deobfuscate_filenames.py
|
||||
msgid "Deobfuscate skipped due to DVD/Bluray directories"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/deobfuscate_filenames.py
|
||||
msgid "Deobfuscate corrected the extension of %d file(s)"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/deobfuscate_filenames.py
|
||||
msgid "Deobfuscate renamed %d file(s)"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/directunpacker.py, sabnzbd/skintext.py
|
||||
msgid "Direct Unpack"
|
||||
msgstr "Direkt entpacken"
|
||||
@@ -544,7 +565,7 @@ msgstr "Senden des E-Mails fehlgeschlagen"
|
||||
msgid "Failed to close mail connection"
|
||||
msgstr "Schliessen der Mail-Verbindung fehlgeschlagen"
|
||||
|
||||
#: sabnzbd/emailer.py, sabnzbd/notifier.py
|
||||
#: sabnzbd/emailer.py, sabnzbd/notifier.py, sabnzbd/rating.py
|
||||
msgid "Cannot send, missing required data"
|
||||
msgstr "Absenden nicht möglich, benötigte Daten fehlen"
|
||||
|
||||
@@ -694,10 +715,6 @@ msgstr ""
|
||||
"Der \"Abgeschlossene Downloads\"-Ordner darf kein Unterordner des "
|
||||
"\"Temporäre Downloads\"-Ordners sein."
|
||||
|
||||
#: sabnzbd/interface.py
|
||||
msgid "Invalid backup archive"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/interface.py
|
||||
msgid "Warning: LOCALHOST is ambiguous, use numerical IP-address."
|
||||
msgstr ""
|
||||
@@ -1261,6 +1278,10 @@ msgstr "UNVOLLSTÄNDIG"
|
||||
msgid "UNWANTED"
|
||||
msgstr "UNERWÜNSCHT"
|
||||
|
||||
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
|
||||
msgid "FILTERED"
|
||||
msgstr "GEFILTERT"
|
||||
|
||||
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
|
||||
msgid "WAIT %s sec"
|
||||
msgstr "WARTE %s Sek"
|
||||
@@ -1671,6 +1692,27 @@ msgstr "Fehler beim Herunterfahren des Systems"
|
||||
msgid "Received a DBus exception %s"
|
||||
msgstr "DBus-Ausnahmefehler empfangen %s "
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/rating.py
|
||||
msgid "Indexer id (%s) not found for ratings file"
|
||||
msgstr "Indexer ID (%s) für Bewertung nicht gefunden"
|
||||
|
||||
#: sabnzbd/rating.py
|
||||
msgid "Server address"
|
||||
msgstr "Server-Adresse"
|
||||
|
||||
#: sabnzbd/rating.py, sabnzbd/skintext.py
|
||||
msgid "API Key"
|
||||
msgstr "API-Schlüssel"
|
||||
|
||||
#: sabnzbd/rating.py, sabnzbd/skintext.py
|
||||
msgid ""
|
||||
"This key provides identity to indexer. Check your profile on the indexer's "
|
||||
"website."
|
||||
msgstr ""
|
||||
"Der Schlüssel liefert die Identität des Indexers. Prüfe dein Profil auf der "
|
||||
"indexer Webseite."
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/rss.py
|
||||
msgid "Incorrect RSS feed description \"%s\""
|
||||
@@ -1792,11 +1834,6 @@ msgstr "Dateien zusammenfügen"
|
||||
msgid "Unpack"
|
||||
msgstr "Entpacken"
|
||||
|
||||
#. PP phase "deobfuscate"
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Deobfuscate"
|
||||
msgstr ""
|
||||
|
||||
#. PP phase "script" - Notification Script settings
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Script"
|
||||
@@ -2762,18 +2799,6 @@ msgstr "DNS-Server"
|
||||
msgid "CPU Model"
|
||||
msgstr "CPU-Modell"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Download speed limited by"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "CPU"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Disk speed"
|
||||
msgstr ""
|
||||
|
||||
#. Do not translate Pystone
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "System Performance (Pystone)"
|
||||
@@ -3096,14 +3121,6 @@ msgstr ""
|
||||
"Festplatte zu reduzieren.<br /><i>In Bytes, gefolgt von einem optionalen K, "
|
||||
"M oder G. Zum Beispiel: \"64M\" oder \"128M\"</i>"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Download backup"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Save or restore a backup of the configuration file and databases."
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Cleanup List"
|
||||
msgstr "Unerwünschte Dateien"
|
||||
@@ -3176,10 +3193,6 @@ msgstr ""
|
||||
"Hilf uns beim Übersetzen von SABnzbd in deiner Sprache! <br/>Neue "
|
||||
"Übersetzungen hinzufügen oder bestehende verbessern kannst du hier:"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "API Key"
|
||||
msgstr "API-Schlüssel"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "This key will give 3rd party programs full access to SABnzbd."
|
||||
msgstr ""
|
||||
@@ -3884,6 +3897,63 @@ msgstr ""
|
||||
"Job abbrechen falls während des Downloads klar wird, dass zuviele Daten "
|
||||
"fehlen"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Enable Indexer Integration"
|
||||
msgstr "Indexer Integration eingeschaltet"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid ""
|
||||
"Indexers can supply rating information when a job is added and SABnzbd can "
|
||||
"report to the indexer if a job couldn't be completed."
|
||||
msgstr ""
|
||||
"Indexer können Rating Informationen liefern, wenn ein Job hinzugefügt wird "
|
||||
"und SABnzbd kann dem Indexer melden, wenn ein Job nicht abgeschlossen werden"
|
||||
" konnte."
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Enable Filtering"
|
||||
msgstr "Filter aktivieren"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Action downloads according to filtering rules."
|
||||
msgstr "Action-Downloads nach Filterregeln."
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Abort If"
|
||||
msgstr "Abbrechen wenn"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Else Pause If"
|
||||
msgstr "Andererseits pausieren wenn"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Video rating"
|
||||
msgstr "Videobewertung"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Audio rating"
|
||||
msgstr "Audiobewertung"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Spam"
|
||||
msgstr "Spam"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Confirmed"
|
||||
msgstr "Bestätigt"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "More thumbs down than up"
|
||||
msgstr "Mehr Daumen-Hoch als -Runter"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Title keywords"
|
||||
msgstr "Titel-Schlüsselwörter"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Comma separated list"
|
||||
msgstr "Durch Komma getrennte Liste"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Server IP address selection"
|
||||
msgstr "Auswahl der Server-IP-Adresse"
|
||||
@@ -4984,10 +5054,6 @@ msgstr "Löschen von Downloads bestätigen"
|
||||
msgid "Confirm History Deletions"
|
||||
msgstr "Löschen von Verlaufeinträgen bestätigen"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Keyboard shortcuts"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "How long or untill when do you want to pause? (in English!)"
|
||||
msgstr "Wie lange oder bis wann möchtest du pausieren? (in Englisch!)"
|
||||
@@ -5142,10 +5208,6 @@ msgstr "SABnzbd beenden"
|
||||
msgid "Start Wizard"
|
||||
msgstr "Assistenten starten"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Restore backup"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid ""
|
||||
"\n"
|
||||
|
||||
198
po/main/es.po
198
po/main/es.po
@@ -5,13 +5,13 @@
|
||||
# Translators:
|
||||
# Ester Molla Aragones <moarages@gmail.com>, 2020
|
||||
# 1024mb <angelb2203@gmail.com>, 2020
|
||||
# Safihre <safihre@sabnzbd.org>, 2022
|
||||
# Safihre <safihre@sabnzbd.org>, 2021
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
|
||||
"Project-Id-Version: SABnzbd-develop\n"
|
||||
"PO-Revision-Date: 2020-06-27 15:49+0000\n"
|
||||
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2022\n"
|
||||
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2021\n"
|
||||
"Language-Team: Spanish (https://www.transifex.com/sabnzbd/teams/111101/es/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
@@ -211,6 +211,11 @@ msgstr "Predeterminado"
|
||||
msgid "Failed to compile regex for search term: %s"
|
||||
msgstr "Compilación de regex para término fallo: %s"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Too little diskspace forcing PAUSE"
|
||||
msgstr "Muy poco espacio en disco forzando PAUSA"
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Disk full! Forcing Pause"
|
||||
@@ -226,11 +231,6 @@ msgstr "Error de disco al crear el archivo %s"
|
||||
msgid "Fatal error in Assembler"
|
||||
msgstr "Error grave en el ensamblador"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Too little diskspace forcing PAUSE"
|
||||
msgstr "Muy poco espacio en disco forzando PAUSA"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid ""
|
||||
@@ -268,6 +268,20 @@ msgstr "Se ha encontrado una extensión desconocida en el fichero rar %s"
|
||||
msgid "Aborted, unwanted extension detected"
|
||||
msgstr "Se interrumpió la acción porque se detectó una extensión no deseada"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Paused job \"%s\" because of rating (%s)"
|
||||
msgstr "Se ha pausado el trabajo \"%s\" debido a su puntuación (%s)"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Aborted job \"%s\" because of rating (%s)"
|
||||
msgstr "Se ha abortado el trabajo \"%s\" debido a su puntuación (%s)"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Aborted, rating filter matched (%s)"
|
||||
msgstr "Abortado, se ha encontrado un filtro de calificación (%s)"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Job \"%s\" is probably encrypted due to RAR with same name inside this RAR"
|
||||
@@ -282,6 +296,30 @@ msgstr ""
|
||||
"La tarea \"%s\" está probablemente codificada: \"contraseña\" en el nombre "
|
||||
"de archivo \"%s\""
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "video"
|
||||
msgstr "vídeo"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "audio"
|
||||
msgstr "audio"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "spam"
|
||||
msgstr "correo basura"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "passworded"
|
||||
msgstr "protegidos por contraseña"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "downvoted"
|
||||
msgstr "votados negativamente"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "keywords"
|
||||
msgstr "palabras clave"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/bpsmeter.py
|
||||
msgid "Quota spent, pausing downloading"
|
||||
@@ -337,11 +375,6 @@ msgstr "No se puede escribir al archivo INI %s"
|
||||
msgid "Cannot create backup file for %s"
|
||||
msgstr "No se puede crear copia de seguridad del archivo %s"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/config.py
|
||||
msgid "Could not restore backup"
|
||||
msgstr ""
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/config.py
|
||||
msgid "Incorrectly encoded password %s"
|
||||
@@ -385,18 +418,6 @@ msgstr "Fallo del decodificador: no hay memoria"
|
||||
msgid "Unknown Error while decoding %s"
|
||||
msgstr "Error inespecifico mientras descodificando %s"
|
||||
|
||||
#: sabnzbd/deobfuscate_filenames.py
|
||||
msgid "Deobfuscate skipped due to DVD/Bluray directories"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/deobfuscate_filenames.py
|
||||
msgid "Deobfuscate corrected the extension of %d file(s)"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/deobfuscate_filenames.py
|
||||
msgid "Deobfuscate renamed %d file(s)"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/directunpacker.py, sabnzbd/skintext.py
|
||||
msgid "Direct Unpack"
|
||||
msgstr "Descomprimir directamente"
|
||||
@@ -537,7 +558,7 @@ msgstr "No se pudo enviar correo electrónico"
|
||||
msgid "Failed to close mail connection"
|
||||
msgstr "No se pudo cerrar la conexión de correo"
|
||||
|
||||
#: sabnzbd/emailer.py, sabnzbd/notifier.py
|
||||
#: sabnzbd/emailer.py, sabnzbd/notifier.py, sabnzbd/rating.py
|
||||
msgid "Cannot send, missing required data"
|
||||
msgstr "No se ha podido enviar, faltan datos"
|
||||
|
||||
@@ -682,10 +703,6 @@ msgid ""
|
||||
"Temporary Download Folder"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/interface.py
|
||||
msgid "Invalid backup archive"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/interface.py
|
||||
msgid "Warning: LOCALHOST is ambiguous, use numerical IP-address."
|
||||
msgstr "Alerta: LOCALHOST es ambiguo, use dirección de IP numérica"
|
||||
@@ -1257,6 +1274,10 @@ msgstr "INCOMPLETO"
|
||||
msgid "UNWANTED"
|
||||
msgstr "NO DESEADO"
|
||||
|
||||
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
|
||||
msgid "FILTERED"
|
||||
msgstr "FILTRADO"
|
||||
|
||||
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
|
||||
msgid "WAIT %s sec"
|
||||
msgstr "ESPERAR %s seg"
|
||||
@@ -1663,6 +1684,29 @@ msgstr "Error al apagarel sistema"
|
||||
msgid "Received a DBus exception %s"
|
||||
msgstr "Se ha recibido una excepción DBus %s"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/rating.py
|
||||
msgid "Indexer id (%s) not found for ratings file"
|
||||
msgstr ""
|
||||
"Identificación del indexador (%s) no encontrado para archivo de "
|
||||
"calificaciones"
|
||||
|
||||
#: sabnzbd/rating.py
|
||||
msgid "Server address"
|
||||
msgstr "Dirección del Servidor"
|
||||
|
||||
#: sabnzbd/rating.py, sabnzbd/skintext.py
|
||||
msgid "API Key"
|
||||
msgstr "Clave API"
|
||||
|
||||
#: sabnzbd/rating.py, sabnzbd/skintext.py
|
||||
msgid ""
|
||||
"This key provides identity to indexer. Check your profile on the indexer's "
|
||||
"website."
|
||||
msgstr ""
|
||||
"Esta llave proporciona una identidad al indexer. Compruebe su perfil en la "
|
||||
"página web del indexer."
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/rss.py
|
||||
msgid "Incorrect RSS feed description \"%s\""
|
||||
@@ -1786,11 +1830,6 @@ msgstr "Unir ficheros"
|
||||
msgid "Unpack"
|
||||
msgstr "Descomprimir"
|
||||
|
||||
#. PP phase "deobfuscate"
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Deobfuscate"
|
||||
msgstr ""
|
||||
|
||||
#. PP phase "script" - Notification Script settings
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Script"
|
||||
@@ -2756,18 +2795,6 @@ msgstr "Nombre del servidor / Búsqueda de DNS"
|
||||
msgid "CPU Model"
|
||||
msgstr "Modelo de CPU"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Download speed limited by"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "CPU"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Disk speed"
|
||||
msgstr ""
|
||||
|
||||
#. Do not translate Pystone
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "System Performance (Pystone)"
|
||||
@@ -3086,14 +3113,6 @@ msgstr ""
|
||||
"Cachear artículos en memoria para reducir el acceso a disco.<br /><i>En "
|
||||
"bytes, opcionalmente seguido de K,M,G. Por ejemplo: \"64M\" o \"128M\"</i>"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Download backup"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Save or restore a backup of the configuration file and databases."
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Cleanup List"
|
||||
msgstr "Lista de elementos a limpiar"
|
||||
@@ -3167,10 +3186,6 @@ msgstr ""
|
||||
"¡Ayúdanos a traducir SABnzbd en tu idioma!<br/>Traduce textos que aun no "
|
||||
"tienen ninguna traducción o mejora los que ya lo están traducidos aquí:"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "API Key"
|
||||
msgstr "Clave API"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "This key will give 3rd party programs full access to SABnzbd."
|
||||
msgstr ""
|
||||
@@ -3853,6 +3868,63 @@ msgstr ""
|
||||
"Cuando este bajando, si es claro que mucha data esta faltando, aborte el "
|
||||
"trabajo."
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Enable Indexer Integration"
|
||||
msgstr "Permitir la integración del Indexer"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid ""
|
||||
"Indexers can supply rating information when a job is added and SABnzbd can "
|
||||
"report to the indexer if a job couldn't be completed."
|
||||
msgstr ""
|
||||
"Los Indexer pueden proporcionar información sobre la valoración cuando se "
|
||||
"añade una tarea, y SABnzbd puede informar al Indexer si una de las tareas no"
|
||||
" se ha podido completar."
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Enable Filtering"
|
||||
msgstr "Habilitar Filtrado"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Action downloads according to filtering rules."
|
||||
msgstr "Acciones de descarga acordes a las reglas de filtrado."
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Abort If"
|
||||
msgstr "Abortar si"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Else Pause If"
|
||||
msgstr "sino pausar si"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Video rating"
|
||||
msgstr "Puntuación"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Audio rating"
|
||||
msgstr "Valoración de Audio"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Spam"
|
||||
msgstr "Spam"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Confirmed"
|
||||
msgstr "Confirmado"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "More thumbs down than up"
|
||||
msgstr "Más votos negativos que positivos"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Title keywords"
|
||||
msgstr "Palabras clave"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Comma separated list"
|
||||
msgstr "Lista separada por comas"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Server IP address selection"
|
||||
msgstr "Selección de la dirección IP del servidor"
|
||||
@@ -4955,10 +5027,6 @@ msgstr "Confirmar eliminación de la cola"
|
||||
msgid "Confirm History Deletions"
|
||||
msgstr "Confirmar eliminación del historial"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Keyboard shortcuts"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "How long or untill when do you want to pause? (in English!)"
|
||||
msgstr "¿Durante cuánto tiempo quieres dejarlo pausado?"
|
||||
@@ -5114,10 +5182,6 @@ msgstr "Salir SABnzbd"
|
||||
msgid "Start Wizard"
|
||||
msgstr "Iniciar Asistente"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Restore backup"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid ""
|
||||
"\n"
|
||||
|
||||
191
po/main/fi.po
191
po/main/fi.po
@@ -3,13 +3,13 @@
|
||||
# team@sabnzbd.org
|
||||
#
|
||||
# Translators:
|
||||
# Safihre <safihre@sabnzbd.org>, 2022
|
||||
# Safihre <safihre@sabnzbd.org>, 2020
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
|
||||
"Project-Id-Version: SABnzbd-develop\n"
|
||||
"PO-Revision-Date: 2020-06-27 15:49+0000\n"
|
||||
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2022\n"
|
||||
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2020\n"
|
||||
"Language-Team: Finnish (https://www.transifex.com/sabnzbd/teams/111101/fi/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
@@ -204,6 +204,11 @@ msgstr "Oletus"
|
||||
msgid "Failed to compile regex for search term: %s"
|
||||
msgstr "Regex käännös epäonnistui hakutermille: %s"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Too little diskspace forcing PAUSE"
|
||||
msgstr "Levytilaa ei ole tarpeeksi, pakotetaan KESKEYTYS"
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Disk full! Forcing Pause"
|
||||
@@ -219,11 +224,6 @@ msgstr "Levyvirhe luotaessa tiedostoa %s"
|
||||
msgid "Fatal error in Assembler"
|
||||
msgstr "Vakava virhe kohteessa Assembler"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Too little diskspace forcing PAUSE"
|
||||
msgstr "Levytilaa ei ole tarpeeksi, pakotetaan KESKEYTYS"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid ""
|
||||
@@ -255,6 +255,20 @@ msgstr "Ei toivottu tiedostopääte on rar arkistossa %s"
|
||||
msgid "Aborted, unwanted extension detected"
|
||||
msgstr "Peruutettu, ei toivottu tiedostopääte havaittu"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Paused job \"%s\" because of rating (%s)"
|
||||
msgstr ""
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Aborted job \"%s\" because of rating (%s)"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Aborted, rating filter matched (%s)"
|
||||
msgstr "Peruutettu, luokituksessa esiintyi suodatinosuma (%s)"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Job \"%s\" is probably encrypted due to RAR with same name inside this RAR"
|
||||
@@ -265,6 +279,30 @@ msgstr ""
|
||||
msgid "Job \"%s\" is probably encrypted: \"password\" in filename \"%s\""
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "video"
|
||||
msgstr "video"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "audio"
|
||||
msgstr "ääni"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "spam"
|
||||
msgstr "roskaposti"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "passworded"
|
||||
msgstr "salasanasuojattu"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "downvoted"
|
||||
msgstr "epäsuosittu"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "keywords"
|
||||
msgstr "avainsanat"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/bpsmeter.py
|
||||
msgid "Quota spent, pausing downloading"
|
||||
@@ -320,11 +358,6 @@ msgstr "Ei voitu kirjoittaa INI tiedostoa %s"
|
||||
msgid "Cannot create backup file for %s"
|
||||
msgstr "Ei voitu luoda varmuuskopiotiedostoa kohteelle %s"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/config.py
|
||||
msgid "Could not restore backup"
|
||||
msgstr ""
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/config.py
|
||||
msgid "Incorrectly encoded password %s"
|
||||
@@ -365,18 +398,6 @@ msgstr ""
|
||||
msgid "Unknown Error while decoding %s"
|
||||
msgstr "Tuntematon virhe dekoodattaessa %s"
|
||||
|
||||
#: sabnzbd/deobfuscate_filenames.py
|
||||
msgid "Deobfuscate skipped due to DVD/Bluray directories"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/deobfuscate_filenames.py
|
||||
msgid "Deobfuscate corrected the extension of %d file(s)"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/deobfuscate_filenames.py
|
||||
msgid "Deobfuscate renamed %d file(s)"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/directunpacker.py, sabnzbd/skintext.py
|
||||
msgid "Direct Unpack"
|
||||
msgstr ""
|
||||
@@ -512,7 +533,7 @@ msgstr "Sähköpostin lähetys epäonnistui"
|
||||
msgid "Failed to close mail connection"
|
||||
msgstr "Sähköpostiyhteyden sulkeminen epäonnistui"
|
||||
|
||||
#: sabnzbd/emailer.py, sabnzbd/notifier.py
|
||||
#: sabnzbd/emailer.py, sabnzbd/notifier.py, sabnzbd/rating.py
|
||||
msgid "Cannot send, missing required data"
|
||||
msgstr "Ei voida lähettää, vaaditut tiedot ovat puutteelliset"
|
||||
|
||||
@@ -657,10 +678,6 @@ msgid ""
|
||||
"Temporary Download Folder"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/interface.py
|
||||
msgid "Invalid backup archive"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/interface.py
|
||||
msgid "Warning: LOCALHOST is ambiguous, use numerical IP-address."
|
||||
msgstr "Varoitus: LOCALHOST on hämärä, käytä numeerista IP-osoitetta."
|
||||
@@ -1206,6 +1223,10 @@ msgstr "KESKENERÄINEN"
|
||||
msgid "UNWANTED"
|
||||
msgstr "EI TOIVOTTU"
|
||||
|
||||
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
|
||||
msgid "FILTERED"
|
||||
msgstr "SUODATETTU"
|
||||
|
||||
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
|
||||
msgid "WAIT %s sec"
|
||||
msgstr "ODOTA %s sekuntia"
|
||||
@@ -1603,6 +1624,25 @@ msgstr "Virhe sammutettaessa järjestelmää"
|
||||
msgid "Received a DBus exception %s"
|
||||
msgstr ""
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/rating.py
|
||||
msgid "Indexer id (%s) not found for ratings file"
|
||||
msgstr "Indeksoijan id:tä (%s) ei löydetty arviointitiedostolle"
|
||||
|
||||
#: sabnzbd/rating.py
|
||||
msgid "Server address"
|
||||
msgstr "Palvelimen osoite"
|
||||
|
||||
#: sabnzbd/rating.py, sabnzbd/skintext.py
|
||||
msgid "API Key"
|
||||
msgstr "API avain"
|
||||
|
||||
#: sabnzbd/rating.py, sabnzbd/skintext.py
|
||||
msgid ""
|
||||
"This key provides identity to indexer. Check your profile on the indexer's "
|
||||
"website."
|
||||
msgstr ""
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/rss.py
|
||||
msgid "Incorrect RSS feed description \"%s\""
|
||||
@@ -1724,11 +1764,6 @@ msgstr "Yhdistä tiedostot"
|
||||
msgid "Unpack"
|
||||
msgstr "Pura"
|
||||
|
||||
#. PP phase "deobfuscate"
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Deobfuscate"
|
||||
msgstr ""
|
||||
|
||||
#. PP phase "script" - Notification Script settings
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Script"
|
||||
@@ -2691,18 +2726,6 @@ msgstr "Nimipalvelin / DNS-selvitys"
|
||||
msgid "CPU Model"
|
||||
msgstr "Prosessorin malli"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Download speed limited by"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "CPU"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Disk speed"
|
||||
msgstr ""
|
||||
|
||||
#. Do not translate Pystone
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "System Performance (Pystone)"
|
||||
@@ -3010,14 +3033,6 @@ msgstr ""
|
||||
"/><i>Tavuina, vaihtoehtoisesti lisää pääte K,M,G. Esimerkiksi: \"64M\" tai "
|
||||
"\"128M\"</i>"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Download backup"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Save or restore a backup of the configuration file and databases."
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Cleanup List"
|
||||
msgstr "Puhdistuslista"
|
||||
@@ -3088,10 +3103,6 @@ msgstr ""
|
||||
"Auta meitä kääntämään SABnzbd sinun kielellesi!<br/>Käännä tai muokkaa "
|
||||
"olemassaolevia käännöksiä täällä:"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "API Key"
|
||||
msgstr "API avain"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "This key will give 3rd party programs full access to SABnzbd."
|
||||
msgstr ""
|
||||
@@ -3755,6 +3766,60 @@ msgid ""
|
||||
msgstr ""
|
||||
"Peruutetaan lataus, jos ladattaessa huomataan liikaa tiedostoja puuttuvan"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Enable Indexer Integration"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid ""
|
||||
"Indexers can supply rating information when a job is added and SABnzbd can "
|
||||
"report to the indexer if a job couldn't be completed."
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Enable Filtering"
|
||||
msgstr "Suodatus päälle"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Action downloads according to filtering rules."
|
||||
msgstr "Latauksien toiminto suodatinsääntöjen mukaan."
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Abort If"
|
||||
msgstr "Peruuta jos"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Else Pause If"
|
||||
msgstr "Muutoin keskeytä jos"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Video rating"
|
||||
msgstr "Videon suosio"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Audio rating"
|
||||
msgstr "Äänen suosio"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Spam"
|
||||
msgstr "Spämmi"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Confirmed"
|
||||
msgstr "Vahvistettu"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "More thumbs down than up"
|
||||
msgstr "Enemmän alapeukkuja kuin yläpeukkuja"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Title keywords"
|
||||
msgstr "Nimen avainsanat"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Comma separated list"
|
||||
msgstr "Pilkulla erotettu lista"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Server IP address selection"
|
||||
msgstr ""
|
||||
@@ -4849,10 +4914,6 @@ msgstr "Varmista jonon poistot"
|
||||
msgid "Confirm History Deletions"
|
||||
msgstr "Varmista historian poistot"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Keyboard shortcuts"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "How long or untill when do you want to pause? (in English!)"
|
||||
msgstr "Kuinka pitkään tai mihin asti haluat keskeyttää? (englanniksi!)"
|
||||
@@ -5006,10 +5067,6 @@ msgstr "Poistu SABnzbd:stä"
|
||||
msgid "Start Wizard"
|
||||
msgstr "Käynnistä velho"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Restore backup"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid ""
|
||||
"\n"
|
||||
|
||||
209
po/main/fr.po
209
po/main/fr.po
@@ -3,12 +3,12 @@
|
||||
# team@sabnzbd.org
|
||||
#
|
||||
# Translators:
|
||||
# Safihre <safihre@sabnzbd.org>, 2022
|
||||
# Safihre <safihre@sabnzbd.org>, 2020
|
||||
# Fred L <88com88@gmail.com>, 2022
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
|
||||
"Project-Id-Version: SABnzbd-develop\n"
|
||||
"PO-Revision-Date: 2020-06-27 15:49+0000\n"
|
||||
"Last-Translator: Fred L <88com88@gmail.com>, 2022\n"
|
||||
"Language-Team: French (https://www.transifex.com/sabnzbd/teams/111101/fr/)\n"
|
||||
@@ -214,6 +214,11 @@ msgstr "Par défaut"
|
||||
msgid "Failed to compile regex for search term: %s"
|
||||
msgstr "Echec de la compilation de regex pour la recherche du terme : %s"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Too little diskspace forcing PAUSE"
|
||||
msgstr "Espace disque faible, PAUSE forcée"
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Disk full! Forcing Pause"
|
||||
@@ -229,11 +234,6 @@ msgstr "Erreur de disque lors de la création du fichier %s"
|
||||
msgid "Fatal error in Assembler"
|
||||
msgstr "Erreur fatale dans l'assembleur"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Too little diskspace forcing PAUSE"
|
||||
msgstr "Espace disque faible, PAUSE forcée"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid ""
|
||||
@@ -271,6 +271,20 @@ msgstr "L'extension indésirable est dans le fichier rar %s"
|
||||
msgid "Aborted, unwanted extension detected"
|
||||
msgstr "Interrompu, extension indésirable détectée"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Paused job \"%s\" because of rating (%s)"
|
||||
msgstr "Tâche \"%s\" mise en pause à cause du classement (%s)"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Aborted job \"%s\" because of rating (%s)"
|
||||
msgstr "Tâche \"%s\" annulée à cause du classement (%s)"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Aborted, rating filter matched (%s)"
|
||||
msgstr "Tâche annulée, le filtre de classement a été vérifié (%s)"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Job \"%s\" is probably encrypted due to RAR with same name inside this RAR"
|
||||
@@ -285,6 +299,30 @@ msgstr ""
|
||||
"La tâche \"%s\" est probablement chiffrée : \"password\" dans le nom de "
|
||||
"fichier \"%s\""
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "video"
|
||||
msgstr "vidéo"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "audio"
|
||||
msgstr "audio"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "spam"
|
||||
msgstr "spam"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "passworded"
|
||||
msgstr "protégé par mot de passe"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "downvoted"
|
||||
msgstr "rejeté"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "keywords"
|
||||
msgstr "mots-clés"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/bpsmeter.py
|
||||
msgid "Quota spent, pausing downloading"
|
||||
@@ -343,11 +381,6 @@ msgstr "Impossible d'écrire dans le fichier INI %s"
|
||||
msgid "Cannot create backup file for %s"
|
||||
msgstr "Impossible de créer le fichier de sauvegarde pour %s"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/config.py
|
||||
msgid "Could not restore backup"
|
||||
msgstr "Impossible de restaurer la sauvegarde"
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/config.py
|
||||
msgid "Incorrectly encoded password %s"
|
||||
@@ -390,18 +423,6 @@ msgstr "Échec du décodeur : mémoire insuffisante"
|
||||
msgid "Unknown Error while decoding %s"
|
||||
msgstr "Erreur inconnue lors du décodage de %s"
|
||||
|
||||
#: sabnzbd/deobfuscate_filenames.py
|
||||
msgid "Deobfuscate skipped due to DVD/Bluray directories"
|
||||
msgstr "Désobfuscation ignorée à cause des répertoires DVD/Bluray"
|
||||
|
||||
#: sabnzbd/deobfuscate_filenames.py
|
||||
msgid "Deobfuscate corrected the extension of %d file(s)"
|
||||
msgstr "La désobfuscation a corrigé l'extension de %d fichier(s)"
|
||||
|
||||
#: sabnzbd/deobfuscate_filenames.py
|
||||
msgid "Deobfuscate renamed %d file(s)"
|
||||
msgstr "La désobfuscation a renommé %d fichier(s)"
|
||||
|
||||
#: sabnzbd/directunpacker.py, sabnzbd/skintext.py
|
||||
msgid "Direct Unpack"
|
||||
msgstr "Décompression Directe"
|
||||
@@ -543,7 +564,7 @@ msgstr "Échec de l'envoi de l'e-mail"
|
||||
msgid "Failed to close mail connection"
|
||||
msgstr "Échec de la fermeture de la connexion à la messagerie"
|
||||
|
||||
#: sabnzbd/emailer.py, sabnzbd/notifier.py
|
||||
#: sabnzbd/emailer.py, sabnzbd/notifier.py, sabnzbd/rating.py
|
||||
msgid "Cannot send, missing required data"
|
||||
msgstr "Impossible d'envoyer, données requises manquantes"
|
||||
|
||||
@@ -690,10 +711,6 @@ msgstr ""
|
||||
"Le dossier des téléchargements terminés ne peut pas être le même dossier que"
|
||||
" les téléchargements temporaires, ni être l'un de ses sous-dossiers"
|
||||
|
||||
#: sabnzbd/interface.py
|
||||
msgid "Invalid backup archive"
|
||||
msgstr "Archives de sauvegarde non valides"
|
||||
|
||||
#: sabnzbd/interface.py
|
||||
msgid "Warning: LOCALHOST is ambiguous, use numerical IP-address."
|
||||
msgstr ""
|
||||
@@ -1118,7 +1135,7 @@ msgstr "Échec de l'envoi de la notification macOS"
|
||||
#. Warning message
|
||||
#: sabnzbd/notifier.py
|
||||
msgid "Failed to send Prowl message"
|
||||
msgstr "Échec d'envoi du message Prowl"
|
||||
msgstr "Echec d'envoi du message Prowl"
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/notifier.py
|
||||
@@ -1255,6 +1272,10 @@ msgstr "INCOMPLET"
|
||||
msgid "UNWANTED"
|
||||
msgstr "INDÉSIRABLE"
|
||||
|
||||
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
|
||||
msgid "FILTERED"
|
||||
msgstr "FILTRÉ"
|
||||
|
||||
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
|
||||
msgid "WAIT %s sec"
|
||||
msgstr "PATIENTER %s sec"
|
||||
@@ -1664,6 +1685,27 @@ msgstr "Erreur lors de l'arrêt du système"
|
||||
msgid "Received a DBus exception %s"
|
||||
msgstr "Exception DBus reçue %s"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/rating.py
|
||||
msgid "Indexer id (%s) not found for ratings file"
|
||||
msgstr "id de l'Indexer (%s) non trouvé pour le fichier des classements"
|
||||
|
||||
#: sabnzbd/rating.py
|
||||
msgid "Server address"
|
||||
msgstr "Adresse du serveur"
|
||||
|
||||
#: sabnzbd/rating.py, sabnzbd/skintext.py
|
||||
msgid "API Key"
|
||||
msgstr "Clé API"
|
||||
|
||||
#: sabnzbd/rating.py, sabnzbd/skintext.py
|
||||
msgid ""
|
||||
"This key provides identity to indexer. Check your profile on the indexer's "
|
||||
"website."
|
||||
msgstr ""
|
||||
"Cette clé fournit l'identité à l'indexeur. Vérifiez votre profil sur le site"
|
||||
" web de l'indexeur."
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/rss.py
|
||||
msgid "Incorrect RSS feed description \"%s\""
|
||||
@@ -1786,11 +1828,6 @@ msgstr "Concaténer"
|
||||
msgid "Unpack"
|
||||
msgstr "Décompresser"
|
||||
|
||||
#. PP phase "deobfuscate"
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Deobfuscate"
|
||||
msgstr "Désobfuscation"
|
||||
|
||||
#. PP phase "script" - Notification Script settings
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Script"
|
||||
@@ -1973,7 +2010,7 @@ msgstr "Désactivé"
|
||||
#. Prowl priority
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Very Low"
|
||||
msgstr "Très bas"
|
||||
msgstr "Très basse"
|
||||
|
||||
#. Prowl priority
|
||||
#: sabnzbd/skintext.py
|
||||
@@ -2756,18 +2793,6 @@ msgstr "Nameserver / DNS Lookup"
|
||||
msgid "CPU Model"
|
||||
msgstr "Modèle de CPU"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Download speed limited by"
|
||||
msgstr "Vitesse de téléchargement limitée par"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "CPU"
|
||||
msgstr "processeur"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Disk speed"
|
||||
msgstr "Vitesse du disque"
|
||||
|
||||
#. Do not translate Pystone
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "System Performance (Pystone)"
|
||||
@@ -3090,16 +3115,6 @@ msgstr ""
|
||||
"Mettre les articles en cache pour réduire les accès disque.<br /><i>En "
|
||||
"Octets, peut être suivi de K,M,G. Par exemple : \"64M\" ou \"128M\"</i>"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Download backup"
|
||||
msgstr "Télécharger la sauvegarde"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Save or restore a backup of the configuration file and databases."
|
||||
msgstr ""
|
||||
"Sauvegarder ou restaurer une sauvegarde du fichier de configuration et des "
|
||||
"bases de données."
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Cleanup List"
|
||||
msgstr "Nettoyer la liste"
|
||||
@@ -3173,10 +3188,6 @@ msgstr ""
|
||||
"Aidez-nous à traduire SABnzbd dans votre langue ! <br/>Améliorez les "
|
||||
"traductions existantes ou ajoutez celles qui manquent ici :"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "API Key"
|
||||
msgstr "Clé API"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "This key will give 3rd party programs full access to SABnzbd."
|
||||
msgstr ""
|
||||
@@ -3881,6 +3892,63 @@ msgstr ""
|
||||
"S'il apparait clairement pendant le téléchargement qu'il manque trop de "
|
||||
"données, annuler la tâche"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Enable Indexer Integration"
|
||||
msgstr "Activer l'intégration de l'indexeur"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid ""
|
||||
"Indexers can supply rating information when a job is added and SABnzbd can "
|
||||
"report to the indexer if a job couldn't be completed."
|
||||
msgstr ""
|
||||
"Les indexeurs peuvent fournir des informations de notation lorsqu'une tâche "
|
||||
"est ajoutée, et SABnzbd peut signaler à l'indexeur si une tâche n'a pas pu "
|
||||
"être terminée."
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Enable Filtering"
|
||||
msgstr "Activer le filtrage"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Action downloads according to filtering rules."
|
||||
msgstr "Activer les téléchargements selon les règles de filtrage."
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Abort If"
|
||||
msgstr "Abandonner si"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Else Pause If"
|
||||
msgstr "Sinon, mettre en pause si"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Video rating"
|
||||
msgstr "Classement vidéo"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Audio rating"
|
||||
msgstr "Classement audio"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Spam"
|
||||
msgstr "Spam"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Confirmed"
|
||||
msgstr "Confirmé"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "More thumbs down than up"
|
||||
msgstr "Plus de mauvais votes que de bons"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Title keywords"
|
||||
msgstr "Mots-clés titre"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Comma separated list"
|
||||
msgstr "Liste séparée par des virgules"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Server IP address selection"
|
||||
msgstr "Sélection de l'adresse IP du serveur"
|
||||
@@ -4359,12 +4427,12 @@ msgstr "Jeton (token) d'application (obligatoire)"
|
||||
#. Pushover settings
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "User Key"
|
||||
msgstr "Clé utilisateur"
|
||||
msgstr "Clé de l'utilisateur"
|
||||
|
||||
#. Pushover settings
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "User Key (required)"
|
||||
msgstr "Clé utilisateur (obligatoire)"
|
||||
msgstr "Clé de l'utilisateur (obligatoire)"
|
||||
|
||||
#. Pushover settings
|
||||
#: sabnzbd/skintext.py
|
||||
@@ -4392,7 +4460,8 @@ msgstr "Expiration d'urgence"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "How many seconds your notification will continue to be retried"
|
||||
msgstr "Réessayer la notification pendant combien de secondes"
|
||||
msgstr ""
|
||||
"Tenter à nouveau votre notification pendant combien de temps (en secondes)"
|
||||
|
||||
#. Header for Pushbullet notification section
|
||||
#: sabnzbd/skintext.py
|
||||
@@ -4417,7 +4486,7 @@ msgstr "Clé API personnelle"
|
||||
#. Pushbullet settings
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Your personal Pushbullet API key (required)"
|
||||
msgstr "Votre clé API Pushbullet personnelle (obligatoire)"
|
||||
msgstr "Votre clé API Pushbullet personnelle (obligatoire )"
|
||||
|
||||
#. Pushbullet settings
|
||||
#: sabnzbd/skintext.py
|
||||
@@ -4992,10 +5061,6 @@ msgstr "Confirmer les suppressions de la file d'attente"
|
||||
msgid "Confirm History Deletions"
|
||||
msgstr "Confirmer les suppressions de l'historique"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Keyboard shortcuts"
|
||||
msgstr "Raccourcis clavier"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "How long or untill when do you want to pause? (in English!)"
|
||||
msgstr "Combien de temps ou jusqu'à quand souhaitez-vous mettre en pause ?"
|
||||
@@ -5151,10 +5216,6 @@ msgstr "Quitter SABnzbd"
|
||||
msgid "Start Wizard"
|
||||
msgstr "Lancer l'assistant"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Restore backup"
|
||||
msgstr "Restaurer la sauvegarde"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid ""
|
||||
"\n"
|
||||
|
||||
198
po/main/he.po
198
po/main/he.po
@@ -3,14 +3,14 @@
|
||||
# team@sabnzbd.org
|
||||
#
|
||||
# Translators:
|
||||
# Safihre <safihre@sabnzbd.org>, 2022
|
||||
# ION, 2022
|
||||
# Safihre <safihre@sabnzbd.org>, 2020
|
||||
# ION, 2021
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
|
||||
"Project-Id-Version: SABnzbd-develop\n"
|
||||
"PO-Revision-Date: 2020-06-27 15:49+0000\n"
|
||||
"Last-Translator: ION, 2022\n"
|
||||
"Last-Translator: ION, 2021\n"
|
||||
"Language-Team: Hebrew (https://www.transifex.com/sabnzbd/teams/111101/he/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
@@ -104,8 +104,6 @@ msgid ""
|
||||
"Current umask (%o) might deny SABnzbd access to the files and folders it "
|
||||
"creates."
|
||||
msgstr ""
|
||||
"פקודת umask נוכחית (%o) עשויה לדחות גישה מן SABnzbd אל הקבצים והתיקיות שהוא "
|
||||
"יוצר."
|
||||
|
||||
#. Warning message
|
||||
#: SABnzbd.py
|
||||
@@ -201,6 +199,11 @@ msgstr "ברירת מחדל"
|
||||
msgid "Failed to compile regex for search term: %s"
|
||||
msgstr "עבור מונח חיפוש regex נכשל בליקוט: %s"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Too little diskspace forcing PAUSE"
|
||||
msgstr "שטח דיסק קטן מדי, מאלץ השהיה"
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Disk full! Forcing Pause"
|
||||
@@ -216,11 +219,6 @@ msgstr "שגיאת דיסק ביצירת קובץ %s"
|
||||
msgid "Fatal error in Assembler"
|
||||
msgstr "שגיאה חמורה ב־Assembler"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Too little diskspace forcing PAUSE"
|
||||
msgstr "שטח דיסק קטן מדי, מאלץ השהיה"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid ""
|
||||
@@ -253,6 +251,20 @@ msgstr "סיומת בלתי רצויה בקובץ rar %s"
|
||||
msgid "Aborted, unwanted extension detected"
|
||||
msgstr "בוטל, סיומת בלתי רצויה התגלתה"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Paused job \"%s\" because of rating (%s)"
|
||||
msgstr "העבודה \"%s\" הושהתה בגלל דירוג (%s)"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Aborted job \"%s\" because of rating (%s)"
|
||||
msgstr "העבודה \"%s\" בוטלה בגלל דירוג (%s)"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Aborted, rating filter matched (%s)"
|
||||
msgstr "בוטל, מסנן דירוג היה תואם (%s)"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Job \"%s\" is probably encrypted due to RAR with same name inside this RAR"
|
||||
@@ -263,6 +275,30 @@ msgstr "העבודה \"%s\" כנראה מוצפנת עקב RAR עם אותו ה
|
||||
msgid "Job \"%s\" is probably encrypted: \"password\" in filename \"%s\""
|
||||
msgstr "העבודה \"%s\" כנראה מוצפנת: \"סיסמה\" בשם הקובץ \"%s\""
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "video"
|
||||
msgstr "וידאו"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "audio"
|
||||
msgstr "שמע"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "spam"
|
||||
msgstr "זבל"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "passworded"
|
||||
msgstr "מוגן בסיסמה"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "downvoted"
|
||||
msgstr "הוצבע נגד"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "keywords"
|
||||
msgstr "מילות מפתח"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/bpsmeter.py
|
||||
msgid "Quota spent, pausing downloading"
|
||||
@@ -298,7 +334,6 @@ msgid ""
|
||||
"Permissions setting of %s might deny SABnzbd access to the files and folders"
|
||||
" it creates."
|
||||
msgstr ""
|
||||
"הגדרת הרשאות של %s עשויה לדחות גישה מן SABnzbd אל הקבצים והתיקיות שהוא יוצר."
|
||||
|
||||
#: sabnzbd/cfg.py
|
||||
msgid "Error: Queue not empty, cannot change folder."
|
||||
@@ -319,11 +354,6 @@ msgstr "לא ניתן לכתוב אל קובץ INI %s"
|
||||
msgid "Cannot create backup file for %s"
|
||||
msgstr "לא ניתן ליצור קובץ גיבוי עבור %s"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/config.py
|
||||
msgid "Could not restore backup"
|
||||
msgstr "לא היה ניתן לשחזר גיבוי"
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/config.py
|
||||
msgid "Incorrectly encoded password %s"
|
||||
@@ -364,18 +394,6 @@ msgstr "כישלון מפענח: אין זיכרון"
|
||||
msgid "Unknown Error while decoding %s"
|
||||
msgstr "שגיאה בלתי ידועה בעת פענוח %s"
|
||||
|
||||
#: sabnzbd/deobfuscate_filenames.py
|
||||
msgid "Deobfuscate skipped due to DVD/Bluray directories"
|
||||
msgstr "אי־האפלה דולגה עקב תיקיות DVD/Blu-ray"
|
||||
|
||||
#: sabnzbd/deobfuscate_filenames.py
|
||||
msgid "Deobfuscate corrected the extension of %d file(s)"
|
||||
msgstr "אי־האפלה תיקנה את הסיומת של %d קבצים"
|
||||
|
||||
#: sabnzbd/deobfuscate_filenames.py
|
||||
msgid "Deobfuscate renamed %d file(s)"
|
||||
msgstr "אי־האפלה שינתה שם של %d קבצים"
|
||||
|
||||
#: sabnzbd/directunpacker.py, sabnzbd/skintext.py
|
||||
msgid "Direct Unpack"
|
||||
msgstr "פריקה ישירה"
|
||||
@@ -512,7 +530,7 @@ msgstr "נכשל בשליחת דוא״ל"
|
||||
msgid "Failed to close mail connection"
|
||||
msgstr "נכשל בסגירת חיבור דוא״ל"
|
||||
|
||||
#: sabnzbd/emailer.py, sabnzbd/notifier.py
|
||||
#: sabnzbd/emailer.py, sabnzbd/notifier.py, sabnzbd/rating.py
|
||||
msgid "Cannot send, missing required data"
|
||||
msgstr "לא ניתן לשלוח, נתונים דרושים חסרים"
|
||||
|
||||
@@ -657,10 +675,6 @@ msgstr ""
|
||||
"תיקיית ההורדות השלמות אינה יכולה להיות אותה תיקייה או תת־תיקייה של תיקיית "
|
||||
"ההורדות הזמניות"
|
||||
|
||||
#: sabnzbd/interface.py
|
||||
msgid "Invalid backup archive"
|
||||
msgstr "ארכיון בלתי תקף של גיבוי"
|
||||
|
||||
#: sabnzbd/interface.py
|
||||
msgid "Warning: LOCALHOST is ambiguous, use numerical IP-address."
|
||||
msgstr "אזהרה: LOCALHOST הוא דו־משמעי, השתמש בכתובת IP מספרית."
|
||||
@@ -1209,6 +1223,10 @@ msgstr "בלתי שלם"
|
||||
msgid "UNWANTED"
|
||||
msgstr "בלתי רצוי"
|
||||
|
||||
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
|
||||
msgid "FILTERED"
|
||||
msgstr "מסונן"
|
||||
|
||||
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
|
||||
msgid "WAIT %s sec"
|
||||
msgstr "המתן %s שניות"
|
||||
@@ -1610,6 +1628,25 @@ msgstr "שגיאה בזמן כיבוי מערכת"
|
||||
msgid "Received a DBus exception %s"
|
||||
msgstr "חריגת DBus התקבלה %s"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/rating.py
|
||||
msgid "Indexer id (%s) not found for ratings file"
|
||||
msgstr "זהות מדדן (%s) לא נמצאה עבור קובץ דירוגים"
|
||||
|
||||
#: sabnzbd/rating.py
|
||||
msgid "Server address"
|
||||
msgstr "כתובת שרת"
|
||||
|
||||
#: sabnzbd/rating.py, sabnzbd/skintext.py
|
||||
msgid "API Key"
|
||||
msgstr "מפתח API"
|
||||
|
||||
#: sabnzbd/rating.py, sabnzbd/skintext.py
|
||||
msgid ""
|
||||
"This key provides identity to indexer. Check your profile on the indexer's "
|
||||
"website."
|
||||
msgstr "מפתח זה מספק זהות למדדן. בדוק את המתאר שלך באתר של המדדן."
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/rss.py
|
||||
msgid "Incorrect RSS feed description \"%s\""
|
||||
@@ -1731,11 +1768,6 @@ msgstr "אחד קבצים"
|
||||
msgid "Unpack"
|
||||
msgstr "פרוק"
|
||||
|
||||
#. PP phase "deobfuscate"
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Deobfuscate"
|
||||
msgstr "אי־האפלה"
|
||||
|
||||
#. PP phase "script" - Notification Script settings
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Script"
|
||||
@@ -2700,18 +2732,6 @@ msgstr "שם שרת / חיפוש DNS"
|
||||
msgid "CPU Model"
|
||||
msgstr "דגם יע״ם"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Download speed limited by"
|
||||
msgstr "מהירות הורדה מוגבלת ע״י"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "CPU"
|
||||
msgstr "יע״מ"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Disk speed"
|
||||
msgstr "מהירות דיסק"
|
||||
|
||||
#. Do not translate Pystone
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "System Performance (Pystone)"
|
||||
@@ -3016,14 +3036,6 @@ msgstr ""
|
||||
"הטמן מאמרים בזיכרון כדי להפחית גישת דיסק.<br /><i>בבתים, יכול לבוא עם K,M,G."
|
||||
" לדוגמה: \"64M\" או \"128M\"</i>"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Download backup"
|
||||
msgstr "הורד גיבוי"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Save or restore a backup of the configuration file and databases."
|
||||
msgstr "שמור או שחזר גיבוי של קובץ התצורה ומסדי נתונים."
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Cleanup List"
|
||||
msgstr "רשימת ניקוי"
|
||||
@@ -3096,10 +3108,6 @@ msgstr ""
|
||||
"עזור לנו לתרגם את SABnzbd לעברית! <br/>הוסף מלל לא מתורגם או שפר תרגומים "
|
||||
"קיימים כאן:"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "API Key"
|
||||
msgstr "מפתח API"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "This key will give 3rd party programs full access to SABnzbd."
|
||||
msgstr "מפתח זה יתן לתוכניות צד שלישי גישה מלאה אל SABnzbd."
|
||||
@@ -3753,6 +3761,62 @@ msgid ""
|
||||
"the job"
|
||||
msgstr "כאשר במהלך הורדה מתבהר שיותר מדי נתונים חסרים, בטל את העבודה"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Enable Indexer Integration"
|
||||
msgstr "אפשר מיזוג מדדן"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid ""
|
||||
"Indexers can supply rating information when a job is added and SABnzbd can "
|
||||
"report to the indexer if a job couldn't be completed."
|
||||
msgstr ""
|
||||
"מדדנים יכולים לספק מידע דירוג כאשר עבודה מתווספת ו־SABnzbd יכול לדווח למדדן "
|
||||
"במקרה שעבודה לא יכלה להישלם."
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Enable Filtering"
|
||||
msgstr "אפשר סינון"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Action downloads according to filtering rules."
|
||||
msgstr "הורדה בהתאם לכללי הסינון."
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Abort If"
|
||||
msgstr "בטל אם"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Else Pause If"
|
||||
msgstr "ולא השהה אם"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Video rating"
|
||||
msgstr "דירוג וידאו"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Audio rating"
|
||||
msgstr "דירוג שמע"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Spam"
|
||||
msgstr "זבל"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Confirmed"
|
||||
msgstr "מאושר"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "More thumbs down than up"
|
||||
msgstr "יותר אגודלים למטה מאשר למעלה"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Title keywords"
|
||||
msgstr "מילות מפתח של כותרת"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Comma separated list"
|
||||
msgstr "רשימה מופרדת בפסיקים"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Server IP address selection"
|
||||
msgstr "בחירת כתובת IP של שרת"
|
||||
@@ -4847,10 +4911,6 @@ msgstr "אשר מחיקות תור"
|
||||
msgid "Confirm History Deletions"
|
||||
msgstr "אשר מחיקות היסטוריה"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Keyboard shortcuts"
|
||||
msgstr "קיצורי דרך במקלדת"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "How long or untill when do you want to pause? (in English!)"
|
||||
msgstr "כמה זמן או עד מתי תרצה להשהות? (באנגלית!)"
|
||||
@@ -5005,10 +5065,6 @@ msgstr "צא מן SABnzbd"
|
||||
msgid "Start Wizard"
|
||||
msgstr "התחל אשף"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Restore backup"
|
||||
msgstr "שחזר גיבוי"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid ""
|
||||
"\n"
|
||||
|
||||
191
po/main/nb.po
191
po/main/nb.po
@@ -3,13 +3,13 @@
|
||||
# team@sabnzbd.org
|
||||
#
|
||||
# Translators:
|
||||
# Safihre <safihre@sabnzbd.org>, 2022
|
||||
# Safihre <safihre@sabnzbd.org>, 2020
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
|
||||
"Project-Id-Version: SABnzbd-develop\n"
|
||||
"PO-Revision-Date: 2020-06-27 15:49+0000\n"
|
||||
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2022\n"
|
||||
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2020\n"
|
||||
"Language-Team: Norwegian Bokmål (https://www.transifex.com/sabnzbd/teams/111101/nb/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
@@ -201,6 +201,11 @@ msgstr "Standard"
|
||||
msgid "Failed to compile regex for search term: %s"
|
||||
msgstr "Kunne ikke lage regex for søkestreng: %s"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Too little diskspace forcing PAUSE"
|
||||
msgstr "For lite diskplass, nedlasting satt på pause"
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Disk full! Forcing Pause"
|
||||
@@ -216,11 +221,6 @@ msgstr "Diskfeil under opprettelse av fil %s"
|
||||
msgid "Fatal error in Assembler"
|
||||
msgstr "Kritisk feil i Assembler"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Too little diskspace forcing PAUSE"
|
||||
msgstr "For lite diskplass, nedlasting satt på pause"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid ""
|
||||
@@ -252,6 +252,20 @@ msgstr "Uønsket forlenging finnes i rar fil %s"
|
||||
msgid "Aborted, unwanted extension detected"
|
||||
msgstr "Avbryt, uønsket forlenging oppdaget"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Paused job \"%s\" because of rating (%s)"
|
||||
msgstr ""
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Aborted job \"%s\" because of rating (%s)"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Aborted, rating filter matched (%s)"
|
||||
msgstr "Avbrøt, rangeringsfilter var lik (%s)"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Job \"%s\" is probably encrypted due to RAR with same name inside this RAR"
|
||||
@@ -262,6 +276,30 @@ msgstr ""
|
||||
msgid "Job \"%s\" is probably encrypted: \"password\" in filename \"%s\""
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "video"
|
||||
msgstr "video"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "audio"
|
||||
msgstr "lyd"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "spam"
|
||||
msgstr "søppel"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "passworded"
|
||||
msgstr "passordbeskyttet"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "downvoted"
|
||||
msgstr "nedstemt"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "keywords"
|
||||
msgstr "nøkkelord"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/bpsmeter.py
|
||||
msgid "Quota spent, pausing downloading"
|
||||
@@ -317,11 +355,6 @@ msgstr "Kan ikke skrive til INI-fil %s"
|
||||
msgid "Cannot create backup file for %s"
|
||||
msgstr "Kan ikke sikkerhetskopiere fil %s"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/config.py
|
||||
msgid "Could not restore backup"
|
||||
msgstr ""
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/config.py
|
||||
msgid "Incorrectly encoded password %s"
|
||||
@@ -362,18 +395,6 @@ msgstr ""
|
||||
msgid "Unknown Error while decoding %s"
|
||||
msgstr "Ukjent feil oppstod under dekoding av %s"
|
||||
|
||||
#: sabnzbd/deobfuscate_filenames.py
|
||||
msgid "Deobfuscate skipped due to DVD/Bluray directories"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/deobfuscate_filenames.py
|
||||
msgid "Deobfuscate corrected the extension of %d file(s)"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/deobfuscate_filenames.py
|
||||
msgid "Deobfuscate renamed %d file(s)"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/directunpacker.py, sabnzbd/skintext.py
|
||||
msgid "Direct Unpack"
|
||||
msgstr ""
|
||||
@@ -508,7 +529,7 @@ msgstr "Kunne ikke sende e-post"
|
||||
msgid "Failed to close mail connection"
|
||||
msgstr "Kunne ikke stenge e-post-tilkobling"
|
||||
|
||||
#: sabnzbd/emailer.py, sabnzbd/notifier.py
|
||||
#: sabnzbd/emailer.py, sabnzbd/notifier.py, sabnzbd/rating.py
|
||||
msgid "Cannot send, missing required data"
|
||||
msgstr "Kan ikke sendes, mangler nødvendig data"
|
||||
|
||||
@@ -653,10 +674,6 @@ msgid ""
|
||||
"Temporary Download Folder"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/interface.py
|
||||
msgid "Invalid backup archive"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/interface.py
|
||||
msgid "Warning: LOCALHOST is ambiguous, use numerical IP-address."
|
||||
msgstr "Advarsel: LOCALHOST er tvetydig, bruk numerisk IP-adresse."
|
||||
@@ -1203,6 +1220,10 @@ msgstr "UFULLSTENDIG"
|
||||
msgid "UNWANTED"
|
||||
msgstr "UØNSKET"
|
||||
|
||||
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
|
||||
msgid "FILTERED"
|
||||
msgstr "FILTRERT"
|
||||
|
||||
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
|
||||
msgid "WAIT %s sec"
|
||||
msgstr "VENT %s sek"
|
||||
@@ -1600,6 +1621,25 @@ msgstr "Feil under avslutting av systemet"
|
||||
msgid "Received a DBus exception %s"
|
||||
msgstr ""
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/rating.py
|
||||
msgid "Indexer id (%s) not found for ratings file"
|
||||
msgstr "Fant ikke indekser id (%s) for rangeringsfil."
|
||||
|
||||
#: sabnzbd/rating.py
|
||||
msgid "Server address"
|
||||
msgstr "Tjeneradresse"
|
||||
|
||||
#: sabnzbd/rating.py, sabnzbd/skintext.py
|
||||
msgid "API Key"
|
||||
msgstr "API-nøkkel"
|
||||
|
||||
#: sabnzbd/rating.py, sabnzbd/skintext.py
|
||||
msgid ""
|
||||
"This key provides identity to indexer. Check your profile on the indexer's "
|
||||
"website."
|
||||
msgstr ""
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/rss.py
|
||||
msgid "Incorrect RSS feed description \"%s\""
|
||||
@@ -1721,11 +1761,6 @@ msgstr "Slå sammen filer"
|
||||
msgid "Unpack"
|
||||
msgstr "Utpakking"
|
||||
|
||||
#. PP phase "deobfuscate"
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Deobfuscate"
|
||||
msgstr ""
|
||||
|
||||
#. PP phase "script" - Notification Script settings
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Script"
|
||||
@@ -2690,18 +2725,6 @@ msgstr "Navnserver / DNS oppslag"
|
||||
msgid "CPU Model"
|
||||
msgstr "CPU-modell"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Download speed limited by"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "CPU"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Disk speed"
|
||||
msgstr ""
|
||||
|
||||
#. Do not translate Pystone
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "System Performance (Pystone)"
|
||||
@@ -3002,14 +3025,6 @@ msgstr ""
|
||||
"Lagrer artikler i minnet for å redusere diskaktivitet.<br /><i>I bytes, "
|
||||
"fulgt av K,M,G. For eksempel: \"64M\" eller \"128M\"</i>"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Download backup"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Save or restore a backup of the configuration file and databases."
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Cleanup List"
|
||||
msgstr "Rens liste"
|
||||
@@ -3078,10 +3093,6 @@ msgid ""
|
||||
"improved existing translations here:"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "API Key"
|
||||
msgstr "API-nøkkel"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "This key will give 3rd party programs full access to SABnzbd."
|
||||
msgstr "Denne nøkkelen vil gi tredjepartsprogrammer full tilgang til SABnzbd"
|
||||
@@ -3733,6 +3744,60 @@ msgid ""
|
||||
msgstr ""
|
||||
"Avbryt jobben om det blir klart under nedlasting at for mye data mangler"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Enable Indexer Integration"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid ""
|
||||
"Indexers can supply rating information when a job is added and SABnzbd can "
|
||||
"report to the indexer if a job couldn't be completed."
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Enable Filtering"
|
||||
msgstr "Aktiver filtrering"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Action downloads according to filtering rules."
|
||||
msgstr "Bruk nedlastinghandlinger ifølge filtreringsreglene."
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Abort If"
|
||||
msgstr "Avbryt Hvis"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Else Pause If"
|
||||
msgstr "Ellers Pause Hvis"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Video rating"
|
||||
msgstr "Video-rangering"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Audio rating"
|
||||
msgstr "Audio-rangering"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Spam"
|
||||
msgstr "Søppelpost"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Confirmed"
|
||||
msgstr "Bekreftet"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "More thumbs down than up"
|
||||
msgstr "Flere tommeler ned enn opp"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Title keywords"
|
||||
msgstr "Tittel-nøkkelord"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Comma separated list"
|
||||
msgstr "Kommaseparert liste"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Server IP address selection"
|
||||
msgstr ""
|
||||
@@ -4818,10 +4883,6 @@ msgstr "Bekreft Sletting av Kø"
|
||||
msgid "Confirm History Deletions"
|
||||
msgstr "Bekreft Sletting av Historie"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Keyboard shortcuts"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "How long or untill when do you want to pause? (in English!)"
|
||||
msgstr "Hvor lenge ønsker du å pause? (skriv på engelsk!)"
|
||||
@@ -4976,10 +5037,6 @@ msgstr "Avslutt SABnzbd"
|
||||
msgid "Start Wizard"
|
||||
msgstr "Start Veiviser"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Restore backup"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid ""
|
||||
"\n"
|
||||
|
||||
198
po/main/nl.po
198
po/main/nl.po
@@ -3,14 +3,14 @@
|
||||
# team@sabnzbd.org
|
||||
#
|
||||
# Translators:
|
||||
# Safihre <safihre@sabnzbd.org>, 2021
|
||||
# Rik Brouwer, 2022
|
||||
# Safihre <safihre@sabnzbd.org>, 2022
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
|
||||
"Project-Id-Version: SABnzbd-develop\n"
|
||||
"PO-Revision-Date: 2020-06-27 15:49+0000\n"
|
||||
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2022\n"
|
||||
"Last-Translator: Rik Brouwer, 2022\n"
|
||||
"Language-Team: Dutch (https://www.transifex.com/sabnzbd/teams/111101/nl/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
@@ -208,6 +208,11 @@ msgstr "Standaard"
|
||||
msgid "Failed to compile regex for search term: %s"
|
||||
msgstr "Het compileren van 'regex' voor de zoekterm lukt niet: %s"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Too little diskspace forcing PAUSE"
|
||||
msgstr "Te weinig schijfruimte, pauze geforceerd"
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Disk full! Forcing Pause"
|
||||
@@ -223,11 +228,6 @@ msgstr "Schrijffout bij opslaan van bestand %s"
|
||||
msgid "Fatal error in Assembler"
|
||||
msgstr "Onherstelbare fout in de Assembler"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Too little diskspace forcing PAUSE"
|
||||
msgstr "Te weinig schijfruimte, pauze geforceerd"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid ""
|
||||
@@ -263,6 +263,20 @@ msgstr "De ongewenste extensie zit in RAR-bestand %s"
|
||||
msgid "Aborted, unwanted extension detected"
|
||||
msgstr "Afgebroken, ongewenste extensie ontdekt"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Paused job \"%s\" because of rating (%s)"
|
||||
msgstr "Download '%s' gepauzeerd vanwege rating (%s)"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Aborted job \"%s\" because of rating (%s)"
|
||||
msgstr "Download '%s' afgebroken vanwege rating (%s)"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Aborted, rating filter matched (%s)"
|
||||
msgstr "Afgebroken, ratingfilter komt overeen (%s)"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Job \"%s\" is probably encrypted due to RAR with same name inside this RAR"
|
||||
@@ -277,6 +291,30 @@ msgstr ""
|
||||
"Download \"%s\" is waarschijnlijk versleuteld, omdat \"password\" in de naam"
|
||||
" \"%s\" voor komt."
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "video"
|
||||
msgstr "video"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "audio"
|
||||
msgstr "audio"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "spam"
|
||||
msgstr "spam"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "passworded"
|
||||
msgstr "van wachtwoord voorzien"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "downvoted"
|
||||
msgstr "negatief beoordeeld"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "keywords"
|
||||
msgstr "trefwoorden"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/bpsmeter.py
|
||||
msgid "Quota spent, pausing downloading"
|
||||
@@ -334,11 +372,6 @@ msgstr "Schrijven naar het INI-bestand %s lukt niet"
|
||||
msgid "Cannot create backup file for %s"
|
||||
msgstr "Backupbestand maken voor %s niet mogelijk"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/config.py
|
||||
msgid "Could not restore backup"
|
||||
msgstr "De backup kon niet hersteld worden"
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/config.py
|
||||
msgid "Incorrectly encoded password %s"
|
||||
@@ -382,20 +415,6 @@ msgstr "Decoder fout: onvoldoende geheugen"
|
||||
msgid "Unknown Error while decoding %s"
|
||||
msgstr "Onbekende fout tijdens het decoderen van %s"
|
||||
|
||||
#: sabnzbd/deobfuscate_filenames.py
|
||||
msgid "Deobfuscate skipped due to DVD/Bluray directories"
|
||||
msgstr ""
|
||||
"Verbetering van bestandsnamen overgeslagen omdat er DVD/Bluray mappen "
|
||||
"gevonden zijn"
|
||||
|
||||
#: sabnzbd/deobfuscate_filenames.py
|
||||
msgid "Deobfuscate corrected the extension of %d file(s)"
|
||||
msgstr "Extensie van %d bestand(en) gecorrigeerd"
|
||||
|
||||
#: sabnzbd/deobfuscate_filenames.py
|
||||
msgid "Deobfuscate renamed %d file(s)"
|
||||
msgstr "Bestandsnamen van %d bestand(en) aangepast."
|
||||
|
||||
#: sabnzbd/directunpacker.py, sabnzbd/skintext.py
|
||||
msgid "Direct Unpack"
|
||||
msgstr "Direct Uitpakken"
|
||||
@@ -535,7 +554,7 @@ msgstr "Verzenden van e-mail is mislukt"
|
||||
msgid "Failed to close mail connection"
|
||||
msgstr "Beëindigen e-mailverbinding mislukt"
|
||||
|
||||
#: sabnzbd/emailer.py, sabnzbd/notifier.py
|
||||
#: sabnzbd/emailer.py, sabnzbd/notifier.py, sabnzbd/rating.py
|
||||
msgid "Cannot send, missing required data"
|
||||
msgstr "Versturen kan niet, vereiste gegevens ontbreken"
|
||||
|
||||
@@ -682,10 +701,6 @@ msgstr ""
|
||||
"De Map voor verwerkte downloads mag niet een map in de Tijdelijke download "
|
||||
"map zijn."
|
||||
|
||||
#: sabnzbd/interface.py
|
||||
msgid "Invalid backup archive"
|
||||
msgstr "Ongeldig backup bestand"
|
||||
|
||||
#: sabnzbd/interface.py
|
||||
msgid "Warning: LOCALHOST is ambiguous, use numerical IP-address."
|
||||
msgstr "Let op: LOCALHOST is niet eenduidig, gebruik een numeriek IP-adres."
|
||||
@@ -1242,6 +1257,10 @@ msgstr "ONVOLLEDIG"
|
||||
msgid "UNWANTED"
|
||||
msgstr "ONGEWENST"
|
||||
|
||||
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
|
||||
msgid "FILTERED"
|
||||
msgstr "GEFILTERD"
|
||||
|
||||
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
|
||||
msgid "WAIT %s sec"
|
||||
msgstr "WACHT %s sec"
|
||||
@@ -1644,6 +1663,27 @@ msgstr "Fout bij het afsluiten van het systeem"
|
||||
msgid "Received a DBus exception %s"
|
||||
msgstr "DBus foutmelding %s "
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/rating.py
|
||||
msgid "Indexer id (%s) not found for ratings file"
|
||||
msgstr "Indexer id (%s) niet gevonden in het bestand met beoordelingen"
|
||||
|
||||
#: sabnzbd/rating.py
|
||||
msgid "Server address"
|
||||
msgstr "Server adres"
|
||||
|
||||
#: sabnzbd/rating.py, sabnzbd/skintext.py
|
||||
msgid "API Key"
|
||||
msgstr "API-sleutel"
|
||||
|
||||
#: sabnzbd/rating.py, sabnzbd/skintext.py
|
||||
msgid ""
|
||||
"This key provides identity to indexer. Check your profile on the indexer's "
|
||||
"website."
|
||||
msgstr ""
|
||||
"Deze sleutel is voor je identificatie door de indexer. Kijk in je profiel op"
|
||||
" de website van de indexer."
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/rss.py
|
||||
msgid "Incorrect RSS feed description \"%s\""
|
||||
@@ -1765,11 +1805,6 @@ msgstr "Samenvoegen"
|
||||
msgid "Unpack"
|
||||
msgstr "Uitpakken"
|
||||
|
||||
#. PP phase "deobfuscate"
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Deobfuscate"
|
||||
msgstr "Bestandsnaam verbeteren"
|
||||
|
||||
#. PP phase "script" - Notification Script settings
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Script"
|
||||
@@ -2734,18 +2769,6 @@ msgstr "Nameserver / DNS opzoeken"
|
||||
msgid "CPU Model"
|
||||
msgstr "CPU-model"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Download speed limited by"
|
||||
msgstr "Downloadsnelheid beperkt door"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "CPU"
|
||||
msgstr "Processor"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Disk speed"
|
||||
msgstr "Hardeschijf"
|
||||
|
||||
#. Do not translate Pystone
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "System Performance (Pystone)"
|
||||
@@ -3066,14 +3089,6 @@ msgstr ""
|
||||
"Bewaar de artikelen in het werkgeheugen (verminderd schijf gebruik).<br "
|
||||
"/><i>In bytes, in K,M,G notatie. Bijvoorbeeld: \"64M\" of \"128M\"</i>"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Download backup"
|
||||
msgstr "Backup downloaden"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Save or restore a backup of the configuration file and databases."
|
||||
msgstr "Backup van de configuratie en de database opslaan of herstellen"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Cleanup List"
|
||||
msgstr "Opschoon lijst"
|
||||
@@ -3147,10 +3162,6 @@ msgstr ""
|
||||
"Help ons om SABnzbd in jouw taal te vertalen! <br/>Met nieuwe vertalingen of"
|
||||
" verbeteringen kun je hier terecht:"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "API Key"
|
||||
msgstr "API-sleutel"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "This key will give 3rd party programs full access to SABnzbd."
|
||||
msgstr ""
|
||||
@@ -3834,6 +3845,63 @@ msgstr ""
|
||||
"Als tijdens het downloaden duidelijk wordt dat te veel data ontbreekt, breek"
|
||||
" dan de download af"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Enable Indexer Integration"
|
||||
msgstr "Sta integratie met index websites toe"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid ""
|
||||
"Indexers can supply rating information when a job is added and SABnzbd can "
|
||||
"report to the indexer if a job couldn't be completed."
|
||||
msgstr ""
|
||||
"Indexers kunnen beoordelingen meesturen wanneer een download wordt "
|
||||
"toegevoegd en SABnzbd kan de indexer informeren wanneer een download niet "
|
||||
"slaagt."
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Enable Filtering"
|
||||
msgstr "Filtering aan"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Action downloads according to filtering rules."
|
||||
msgstr "Verwerk downloads volgens de filter regels"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Abort If"
|
||||
msgstr "Afbreken indien"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Else Pause If"
|
||||
msgstr "Anders pauzeren indien"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Video rating"
|
||||
msgstr "Video rating"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Audio rating"
|
||||
msgstr "Audio rating"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Spam"
|
||||
msgstr "Spam"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Confirmed"
|
||||
msgstr "Bevestigd"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "More thumbs down than up"
|
||||
msgstr "Meer duimen omlaag dan omhoog"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Title keywords"
|
||||
msgstr "Titel trefwoorden"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Comma separated list"
|
||||
msgstr "Door komma's gescheiden lijst"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Server IP address selection"
|
||||
msgstr "Server IP adres selectie"
|
||||
@@ -4941,10 +5009,6 @@ msgstr "Bevestig verwijderen uit wachtrij"
|
||||
msgid "Confirm History Deletions"
|
||||
msgstr "Bevestig verwijderen uit geschiedenis"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Keyboard shortcuts"
|
||||
msgstr "Sneltoetsen"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "How long or untill when do you want to pause? (in English!)"
|
||||
msgstr "Voor hoe lang of tot wanneer wilt u pauzeren? (in het Engels!)"
|
||||
@@ -5099,10 +5163,6 @@ msgstr "Stop SABnzbd"
|
||||
msgid "Start Wizard"
|
||||
msgstr "Wizard starten"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Restore backup"
|
||||
msgstr "Backup herstellen"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid ""
|
||||
"\n"
|
||||
|
||||
191
po/main/pl.po
191
po/main/pl.po
@@ -3,13 +3,13 @@
|
||||
# team@sabnzbd.org
|
||||
#
|
||||
# Translators:
|
||||
# Safihre <safihre@sabnzbd.org>, 2022
|
||||
# Safihre <safihre@sabnzbd.org>, 2020
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
|
||||
"Project-Id-Version: SABnzbd-develop\n"
|
||||
"PO-Revision-Date: 2020-06-27 15:49+0000\n"
|
||||
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2022\n"
|
||||
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2020\n"
|
||||
"Language-Team: Polish (https://www.transifex.com/sabnzbd/teams/111101/pl/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
@@ -196,6 +196,11 @@ msgstr "Domyślne"
|
||||
msgid "Failed to compile regex for search term: %s"
|
||||
msgstr "Błąd kompilacji wyrażenia regularnego dla wyszukiwania: %s"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Too little diskspace forcing PAUSE"
|
||||
msgstr "Zbyt mało miejsca na dysku, wymuszanie WSTRZYMANIA"
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Disk full! Forcing Pause"
|
||||
@@ -211,11 +216,6 @@ msgstr "Błąd dysku podczas tworzenia pliku %s"
|
||||
msgid "Fatal error in Assembler"
|
||||
msgstr "Błąd krytyczny w module składającym"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Too little diskspace forcing PAUSE"
|
||||
msgstr "Zbyt mało miejsca na dysku, wymuszanie WSTRZYMANIA"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid ""
|
||||
@@ -247,6 +247,20 @@ msgstr "Niepożądane rozszerzenie w pliku RAR %s"
|
||||
msgid "Aborted, unwanted extension detected"
|
||||
msgstr "Przerwano, wykryto niepożądane rozszerzenie"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Paused job \"%s\" because of rating (%s)"
|
||||
msgstr ""
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Aborted job \"%s\" because of rating (%s)"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Aborted, rating filter matched (%s)"
|
||||
msgstr "Przerwano, odfiltrowane z powodu oceny (%s)"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Job \"%s\" is probably encrypted due to RAR with same name inside this RAR"
|
||||
@@ -257,6 +271,30 @@ msgstr ""
|
||||
msgid "Job \"%s\" is probably encrypted: \"password\" in filename \"%s\""
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "video"
|
||||
msgstr "wideo"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "audio"
|
||||
msgstr "audio"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "spam"
|
||||
msgstr "spam"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "passworded"
|
||||
msgstr "zabezpieczone hasłem"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "downvoted"
|
||||
msgstr "źle oceniane"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "keywords"
|
||||
msgstr "słowa kluczowe"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/bpsmeter.py
|
||||
msgid "Quota spent, pausing downloading"
|
||||
@@ -312,11 +350,6 @@ msgstr "Nie można zapisać pliku INI %s"
|
||||
msgid "Cannot create backup file for %s"
|
||||
msgstr "Nie można utworzyć kopii zapasowej %s"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/config.py
|
||||
msgid "Could not restore backup"
|
||||
msgstr ""
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/config.py
|
||||
msgid "Incorrectly encoded password %s"
|
||||
@@ -357,18 +390,6 @@ msgstr ""
|
||||
msgid "Unknown Error while decoding %s"
|
||||
msgstr "Nieznany błąd podczas dekodowania %s"
|
||||
|
||||
#: sabnzbd/deobfuscate_filenames.py
|
||||
msgid "Deobfuscate skipped due to DVD/Bluray directories"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/deobfuscate_filenames.py
|
||||
msgid "Deobfuscate corrected the extension of %d file(s)"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/deobfuscate_filenames.py
|
||||
msgid "Deobfuscate renamed %d file(s)"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/directunpacker.py, sabnzbd/skintext.py
|
||||
msgid "Direct Unpack"
|
||||
msgstr ""
|
||||
@@ -507,7 +528,7 @@ msgstr "Błąd wysyłania wiadomości email"
|
||||
msgid "Failed to close mail connection"
|
||||
msgstr "Nie udało się zamknąć połączenia z serwerem pocztowym"
|
||||
|
||||
#: sabnzbd/emailer.py, sabnzbd/notifier.py
|
||||
#: sabnzbd/emailer.py, sabnzbd/notifier.py, sabnzbd/rating.py
|
||||
msgid "Cannot send, missing required data"
|
||||
msgstr "Nie można wysłać wiadomości, brak wymaganych danych"
|
||||
|
||||
@@ -652,10 +673,6 @@ msgid ""
|
||||
"Temporary Download Folder"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/interface.py
|
||||
msgid "Invalid backup archive"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/interface.py
|
||||
msgid "Warning: LOCALHOST is ambiguous, use numerical IP-address."
|
||||
msgstr "Uwaga: LOCALHOST jest niejednoznaczne, użyj adresu IP."
|
||||
@@ -1204,6 +1221,10 @@ msgstr "NIEKOMPLETNY"
|
||||
msgid "UNWANTED"
|
||||
msgstr "NIEPOŻĄDANY"
|
||||
|
||||
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
|
||||
msgid "FILTERED"
|
||||
msgstr "ODFILTROWANE"
|
||||
|
||||
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
|
||||
msgid "WAIT %s sec"
|
||||
msgstr "CZEKAM %s s"
|
||||
@@ -1605,6 +1626,25 @@ msgstr "Wyłączenie systemu nie powiodło się"
|
||||
msgid "Received a DBus exception %s"
|
||||
msgstr ""
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/rating.py
|
||||
msgid "Indexer id (%s) not found for ratings file"
|
||||
msgstr "Identyfikator indeksera (%s) nie został znaleziony w pliku ocen"
|
||||
|
||||
#: sabnzbd/rating.py
|
||||
msgid "Server address"
|
||||
msgstr "Adres serwera"
|
||||
|
||||
#: sabnzbd/rating.py, sabnzbd/skintext.py
|
||||
msgid "API Key"
|
||||
msgstr "Klucz API"
|
||||
|
||||
#: sabnzbd/rating.py, sabnzbd/skintext.py
|
||||
msgid ""
|
||||
"This key provides identity to indexer. Check your profile on the indexer's "
|
||||
"website."
|
||||
msgstr ""
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/rss.py
|
||||
msgid "Incorrect RSS feed description \"%s\""
|
||||
@@ -1726,11 +1766,6 @@ msgstr "Połącz pliki"
|
||||
msgid "Unpack"
|
||||
msgstr "Rozpakuj"
|
||||
|
||||
#. PP phase "deobfuscate"
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Deobfuscate"
|
||||
msgstr ""
|
||||
|
||||
#. PP phase "script" - Notification Script settings
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Script"
|
||||
@@ -2693,18 +2728,6 @@ msgstr "Serwer DNS"
|
||||
msgid "CPU Model"
|
||||
msgstr "Model procesora"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Download speed limited by"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "CPU"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Disk speed"
|
||||
msgstr ""
|
||||
|
||||
#. Do not translate Pystone
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "System Performance (Pystone)"
|
||||
@@ -3007,14 +3030,6 @@ msgstr ""
|
||||
"dostępu do dysku.<br /><i>W bajtach, opcjonalnie z przyrostkiem K, M, G. "
|
||||
"Przykład: \"64M\" lub \"128M\"</i>"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Download backup"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Save or restore a backup of the configuration file and databases."
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Cleanup List"
|
||||
msgstr "Lista czyszczenia"
|
||||
@@ -3083,10 +3098,6 @@ msgid ""
|
||||
"improved existing translations here:"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "API Key"
|
||||
msgstr "Klucz API"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "This key will give 3rd party programs full access to SABnzbd."
|
||||
msgstr "Ten klucz umożliwi innym programom dostęp do SABnzbd"
|
||||
@@ -3741,6 +3752,60 @@ msgstr ""
|
||||
"Jeśli podczas pobierania okaże się, że brakuje zbyt dużej ilości danych, "
|
||||
"przerwij zadanie"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Enable Indexer Integration"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid ""
|
||||
"Indexers can supply rating information when a job is added and SABnzbd can "
|
||||
"report to the indexer if a job couldn't be completed."
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Enable Filtering"
|
||||
msgstr "Włącz filtrowanie"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Action downloads according to filtering rules."
|
||||
msgstr "Wykonuj działania na zadaniach w oparciu o reguły filtrowania"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Abort If"
|
||||
msgstr "Przerwij, jeśli"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Else Pause If"
|
||||
msgstr "Bądź wstrzymaj, jeśli"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Video rating"
|
||||
msgstr "Ocena wideo"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Audio rating"
|
||||
msgstr "Ocena audio"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Spam"
|
||||
msgstr "Spam"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Confirmed"
|
||||
msgstr "Potwierdzone"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "More thumbs down than up"
|
||||
msgstr "Więcej ocen negatywnych niż pozytywnych"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Title keywords"
|
||||
msgstr "Słowa kluczowe w tytule"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Comma separated list"
|
||||
msgstr "Lista wartości oddzielonych przecinkami"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Server IP address selection"
|
||||
msgstr ""
|
||||
@@ -4826,10 +4891,6 @@ msgstr "Potwierdzaj usuwanie z kolejki"
|
||||
msgid "Confirm History Deletions"
|
||||
msgstr "Potwierdzaj usuwanie z historii"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Keyboard shortcuts"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "How long or untill when do you want to pause? (in English!)"
|
||||
msgstr "Jak długo lub do kiedy chcesz wstrzymać? (po angielsku!)"
|
||||
@@ -4982,10 +5043,6 @@ msgstr "Wyjście z SABnzbd"
|
||||
msgid "Start Wizard"
|
||||
msgstr "Uruchom kreatora konfiguracji"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Restore backup"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid ""
|
||||
"\n"
|
||||
|
||||
191
po/main/pt_BR.po
191
po/main/pt_BR.po
@@ -3,13 +3,13 @@
|
||||
# team@sabnzbd.org
|
||||
#
|
||||
# Translators:
|
||||
# Safihre <safihre@sabnzbd.org>, 2022
|
||||
# Safihre <safihre@sabnzbd.org>, 2020
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
|
||||
"Project-Id-Version: SABnzbd-develop\n"
|
||||
"PO-Revision-Date: 2020-06-27 15:49+0000\n"
|
||||
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2022\n"
|
||||
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2020\n"
|
||||
"Language-Team: Portuguese (Brazil) (https://www.transifex.com/sabnzbd/teams/111101/pt_BR/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
@@ -200,6 +200,11 @@ msgstr "Padrão"
|
||||
msgid "Failed to compile regex for search term: %s"
|
||||
msgstr "Falha ao compilar a expressão para o termo pesquisado: %s"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Too little diskspace forcing PAUSE"
|
||||
msgstr "Muito pouco espaço em disco. Forçando PAUSE"
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Disk full! Forcing Pause"
|
||||
@@ -215,11 +220,6 @@ msgstr "Erro de disco na criação do arquivo %s"
|
||||
msgid "Fatal error in Assembler"
|
||||
msgstr "Erro fatal no Assembler"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Too little diskspace forcing PAUSE"
|
||||
msgstr "Muito pouco espaço em disco. Forçando PAUSE"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid ""
|
||||
@@ -251,6 +251,20 @@ msgstr "A extensão indesejada está no arquivo rar %s"
|
||||
msgid "Aborted, unwanted extension detected"
|
||||
msgstr "Cancelado, extensão indesejada detectada"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Paused job \"%s\" because of rating (%s)"
|
||||
msgstr ""
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Aborted job \"%s\" because of rating (%s)"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Aborted, rating filter matched (%s)"
|
||||
msgstr "Interrompido, filtro de pontuação encontrado (%s)"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Job \"%s\" is probably encrypted due to RAR with same name inside this RAR"
|
||||
@@ -261,6 +275,30 @@ msgstr ""
|
||||
msgid "Job \"%s\" is probably encrypted: \"password\" in filename \"%s\""
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "video"
|
||||
msgstr "vídeo"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "audio"
|
||||
msgstr "áudio"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "spam"
|
||||
msgstr "spam"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "passworded"
|
||||
msgstr "protegido por senha"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "downvoted"
|
||||
msgstr "votos negativos recebido"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "keywords"
|
||||
msgstr "palavras chave"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/bpsmeter.py
|
||||
msgid "Quota spent, pausing downloading"
|
||||
@@ -316,11 +354,6 @@ msgstr "Não é possível gravar no arquivo INI %s"
|
||||
msgid "Cannot create backup file for %s"
|
||||
msgstr "Não é possível criar um arquivo de backup para %s"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/config.py
|
||||
msgid "Could not restore backup"
|
||||
msgstr ""
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/config.py
|
||||
msgid "Incorrectly encoded password %s"
|
||||
@@ -363,18 +396,6 @@ msgstr ""
|
||||
msgid "Unknown Error while decoding %s"
|
||||
msgstr "Erro desconhecido ao decodificar %s"
|
||||
|
||||
#: sabnzbd/deobfuscate_filenames.py
|
||||
msgid "Deobfuscate skipped due to DVD/Bluray directories"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/deobfuscate_filenames.py
|
||||
msgid "Deobfuscate corrected the extension of %d file(s)"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/deobfuscate_filenames.py
|
||||
msgid "Deobfuscate renamed %d file(s)"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/directunpacker.py, sabnzbd/skintext.py
|
||||
msgid "Direct Unpack"
|
||||
msgstr ""
|
||||
@@ -511,7 +532,7 @@ msgstr "Falha ao enviar o e-mail"
|
||||
msgid "Failed to close mail connection"
|
||||
msgstr "Falha ao fechar a conexão de e-mail"
|
||||
|
||||
#: sabnzbd/emailer.py, sabnzbd/notifier.py
|
||||
#: sabnzbd/emailer.py, sabnzbd/notifier.py, sabnzbd/rating.py
|
||||
msgid "Cannot send, missing required data"
|
||||
msgstr "Não foi possível enviar, faltam dados obrigatórios"
|
||||
|
||||
@@ -656,10 +677,6 @@ msgid ""
|
||||
"Temporary Download Folder"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/interface.py
|
||||
msgid "Invalid backup archive"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/interface.py
|
||||
msgid "Warning: LOCALHOST is ambiguous, use numerical IP-address."
|
||||
msgstr "Atenção: LOCALHOST é ambíguo, use endereço IP numérico."
|
||||
@@ -1205,6 +1222,10 @@ msgstr "INCOMPLETO"
|
||||
msgid "UNWANTED"
|
||||
msgstr "INDESEJADO"
|
||||
|
||||
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
|
||||
msgid "FILTERED"
|
||||
msgstr "FILTRADO"
|
||||
|
||||
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
|
||||
msgid "WAIT %s sec"
|
||||
msgstr "Espere %s segundo(s)"
|
||||
@@ -1607,6 +1628,25 @@ msgstr "Erro ao desligar o sistema"
|
||||
msgid "Received a DBus exception %s"
|
||||
msgstr ""
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/rating.py
|
||||
msgid "Indexer id (%s) not found for ratings file"
|
||||
msgstr "Indexador id (%s) não foi encontrador para avaliar arquivos"
|
||||
|
||||
#: sabnzbd/rating.py
|
||||
msgid "Server address"
|
||||
msgstr "Endereço do servidor"
|
||||
|
||||
#: sabnzbd/rating.py, sabnzbd/skintext.py
|
||||
msgid "API Key"
|
||||
msgstr "Chave API"
|
||||
|
||||
#: sabnzbd/rating.py, sabnzbd/skintext.py
|
||||
msgid ""
|
||||
"This key provides identity to indexer. Check your profile on the indexer's "
|
||||
"website."
|
||||
msgstr ""
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/rss.py
|
||||
msgid "Incorrect RSS feed description \"%s\""
|
||||
@@ -1729,11 +1769,6 @@ msgstr "Unir arquivos"
|
||||
msgid "Unpack"
|
||||
msgstr "Descompactar"
|
||||
|
||||
#. PP phase "deobfuscate"
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Deobfuscate"
|
||||
msgstr ""
|
||||
|
||||
#. PP phase "script" - Notification Script settings
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Script"
|
||||
@@ -2696,18 +2731,6 @@ msgstr "Nome do servidor / DNS Lookup"
|
||||
msgid "CPU Model"
|
||||
msgstr "Modelo da CPU"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Download speed limited by"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "CPU"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Disk speed"
|
||||
msgstr ""
|
||||
|
||||
#. Do not translate Pystone
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "System Performance (Pystone)"
|
||||
@@ -3011,14 +3034,6 @@ msgstr ""
|
||||
"Manter artigos em memória para reduzir o acesso a disco.<br /><i>Em bytes, "
|
||||
"opcionalmente seguido de K,M,G. Por exemplo: \"64M\" ou \"128M\"</i>"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Download backup"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Save or restore a backup of the configuration file and databases."
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Cleanup List"
|
||||
msgstr "Lista de Limpeza"
|
||||
@@ -3087,10 +3102,6 @@ msgid ""
|
||||
"improved existing translations here:"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "API Key"
|
||||
msgstr "Chave API"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "This key will give 3rd party programs full access to SABnzbd."
|
||||
msgstr "Esta chave dará a programas de terceiros pleno acesso ao SABnzbd."
|
||||
@@ -3745,6 +3756,60 @@ msgstr ""
|
||||
"Quando durante o download ficar claro que muitos dados estão faltando, "
|
||||
"cancela a tarefa"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Enable Indexer Integration"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid ""
|
||||
"Indexers can supply rating information when a job is added and SABnzbd can "
|
||||
"report to the indexer if a job couldn't be completed."
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Enable Filtering"
|
||||
msgstr "Habilitar filtros"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Action downloads according to filtering rules."
|
||||
msgstr "Ação faz o download de acordo com as regras de filtro"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Abort If"
|
||||
msgstr "Interrompa se"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Else Pause If"
|
||||
msgstr "Ou então pause se"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Video rating"
|
||||
msgstr "Pontuação do vídeo"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Audio rating"
|
||||
msgstr "Pontuação do áudio"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Spam"
|
||||
msgstr "Spam"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Confirmed"
|
||||
msgstr "Confirmado"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "More thumbs down than up"
|
||||
msgstr "Mais votos negativos do que positivos"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Title keywords"
|
||||
msgstr "Palavras chave do título"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Comma separated list"
|
||||
msgstr "Lista separada por vírgulas"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Server IP address selection"
|
||||
msgstr ""
|
||||
@@ -4830,10 +4895,6 @@ msgstr "Confirmar Exclusões da Fila"
|
||||
msgid "Confirm History Deletions"
|
||||
msgstr "Confirmar Exclusões do Histórico"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Keyboard shortcuts"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "How long or untill when do you want to pause? (in English!)"
|
||||
msgstr "Por quanto tempo ou até quando você quer pausar? (em Inglês!)"
|
||||
@@ -4986,10 +5047,6 @@ msgstr "Sair do SABnzbd"
|
||||
msgid "Start Wizard"
|
||||
msgstr "Iniciar o Assistente"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Restore backup"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid ""
|
||||
"\n"
|
||||
|
||||
191
po/main/ro.po
191
po/main/ro.po
@@ -3,14 +3,14 @@
|
||||
# team@sabnzbd.org
|
||||
#
|
||||
# Translators:
|
||||
# Safihre <safihre@sabnzbd.org>, 2020
|
||||
# Eduard Baniceru <war4peace@gmail.com>, 2021
|
||||
# Safihre <safihre@sabnzbd.org>, 2022
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
|
||||
"Project-Id-Version: SABnzbd-develop\n"
|
||||
"PO-Revision-Date: 2020-06-27 15:49+0000\n"
|
||||
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2022\n"
|
||||
"Last-Translator: Eduard Baniceru <war4peace@gmail.com>, 2021\n"
|
||||
"Language-Team: Romanian (https://www.transifex.com/sabnzbd/teams/111101/ro/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
@@ -206,6 +206,11 @@ msgstr "Implicit"
|
||||
msgid "Failed to compile regex for search term: %s"
|
||||
msgstr "Compilarea unei căutări regex nereuşită: %s"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Too little diskspace forcing PAUSE"
|
||||
msgstr "Prea puţin spaţiu disc forţez PAUZĂ"
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Disk full! Forcing Pause"
|
||||
@@ -221,11 +226,6 @@ msgstr "Eroare disc la crearea fişierului %s"
|
||||
msgid "Fatal error in Assembler"
|
||||
msgstr "Eroare fatală în Assembler"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Too little diskspace forcing PAUSE"
|
||||
msgstr "Prea puţin spaţiu disc forţez PAUZĂ"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid ""
|
||||
@@ -261,6 +261,20 @@ msgstr "Extensii fișier nedorite în fișierul rar %s"
|
||||
msgid "Aborted, unwanted extension detected"
|
||||
msgstr "Oprit, extensii nedorite detectate"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Paused job \"%s\" because of rating (%s)"
|
||||
msgstr "Sarcina \"%s\" întreruptă datorită ratingului (%s)"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Aborted job \"%s\" because of rating (%s)"
|
||||
msgstr "Sarcina \"%s\" anulată datorită ratingului (%s)"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Aborted, rating filter matched (%s)"
|
||||
msgstr "Abandonat, filtru de rating potrivit (%s)"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Job \"%s\" is probably encrypted due to RAR with same name inside this RAR"
|
||||
@@ -273,6 +287,30 @@ msgstr ""
|
||||
msgid "Job \"%s\" is probably encrypted: \"password\" in filename \"%s\""
|
||||
msgstr "Sarcina „%s” este probabil criptată: „parolă” în fișierul „%s”"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "video"
|
||||
msgstr "video"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "audio"
|
||||
msgstr "audio"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "spam"
|
||||
msgstr "spam"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "passworded"
|
||||
msgstr "parolat"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "downvoted"
|
||||
msgstr "vot negativ"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "keywords"
|
||||
msgstr "cuvinte cheie"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/bpsmeter.py
|
||||
msgid "Quota spent, pausing downloading"
|
||||
@@ -328,11 +366,6 @@ msgstr "Nu pot scrie în fişierul INI %s"
|
||||
msgid "Cannot create backup file for %s"
|
||||
msgstr "Nu pot crea copie de rezervă pentru %s"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/config.py
|
||||
msgid "Could not restore backup"
|
||||
msgstr ""
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/config.py
|
||||
msgid "Incorrectly encoded password %s"
|
||||
@@ -374,18 +407,6 @@ msgstr "Eroare decodare: lipsă memorie"
|
||||
msgid "Unknown Error while decoding %s"
|
||||
msgstr "Eroare Necunoscută în timpul decodării %s"
|
||||
|
||||
#: sabnzbd/deobfuscate_filenames.py
|
||||
msgid "Deobfuscate skipped due to DVD/Bluray directories"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/deobfuscate_filenames.py
|
||||
msgid "Deobfuscate corrected the extension of %d file(s)"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/deobfuscate_filenames.py
|
||||
msgid "Deobfuscate renamed %d file(s)"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/directunpacker.py, sabnzbd/skintext.py
|
||||
msgid "Direct Unpack"
|
||||
msgstr "Dezarhivare directă"
|
||||
@@ -525,7 +546,7 @@ msgstr "Trimitere email nereuşiă"
|
||||
msgid "Failed to close mail connection"
|
||||
msgstr "Închidere conexiune mail nereuşită"
|
||||
|
||||
#: sabnzbd/emailer.py, sabnzbd/notifier.py
|
||||
#: sabnzbd/emailer.py, sabnzbd/notifier.py, sabnzbd/rating.py
|
||||
msgid "Cannot send, missing required data"
|
||||
msgstr "Nu pot trimite, informații necesare lipsă"
|
||||
|
||||
@@ -672,10 +693,6 @@ msgstr ""
|
||||
"Directorul de descărcări finalizate nu poate fi același, sau un subdirector "
|
||||
"al directorului de descărcări temporare"
|
||||
|
||||
#: sabnzbd/interface.py
|
||||
msgid "Invalid backup archive"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/interface.py
|
||||
msgid "Warning: LOCALHOST is ambiguous, use numerical IP-address."
|
||||
msgstr "Atenţie:LOCALHOST este ambiguu, folosiţi o adresă IP numerică"
|
||||
@@ -1231,6 +1248,10 @@ msgstr "INCOMPLET"
|
||||
msgid "UNWANTED"
|
||||
msgstr "NEDORIT"
|
||||
|
||||
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
|
||||
msgid "FILTERED"
|
||||
msgstr "FLTRAT"
|
||||
|
||||
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
|
||||
msgid "WAIT %s sec"
|
||||
msgstr "AŞTEAPTĂ %s sec"
|
||||
@@ -1636,6 +1657,25 @@ msgstr "Eroare la oprirea sistemului"
|
||||
msgid "Received a DBus exception %s"
|
||||
msgstr ""
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/rating.py
|
||||
msgid "Indexer id (%s) not found for ratings file"
|
||||
msgstr "Id-ul indexului (%s) nu a fost găsit pentru fișierul de rating"
|
||||
|
||||
#: sabnzbd/rating.py
|
||||
msgid "Server address"
|
||||
msgstr "Adresă server"
|
||||
|
||||
#: sabnzbd/rating.py, sabnzbd/skintext.py
|
||||
msgid "API Key"
|
||||
msgstr "Cheie API"
|
||||
|
||||
#: sabnzbd/rating.py, sabnzbd/skintext.py
|
||||
msgid ""
|
||||
"This key provides identity to indexer. Check your profile on the indexer's "
|
||||
"website."
|
||||
msgstr ""
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/rss.py
|
||||
msgid "Incorrect RSS feed description \"%s\""
|
||||
@@ -1757,11 +1797,6 @@ msgstr "Uneşte fişierele"
|
||||
msgid "Unpack"
|
||||
msgstr "Dezarhivează"
|
||||
|
||||
#. PP phase "deobfuscate"
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Deobfuscate"
|
||||
msgstr ""
|
||||
|
||||
#. PP phase "script" - Notification Script settings
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Script"
|
||||
@@ -2724,18 +2759,6 @@ msgstr "Server de nume/Căutare DNS"
|
||||
msgid "CPU Model"
|
||||
msgstr "Model CPU"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Download speed limited by"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "CPU"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Disk speed"
|
||||
msgstr ""
|
||||
|
||||
#. Do not translate Pystone
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "System Performance (Pystone)"
|
||||
@@ -3038,14 +3061,6 @@ msgstr ""
|
||||
"Stochează articolele în memorie pentru a reduce acesul disc.<br /><i>În "
|
||||
"octeţi, opţional urmaţi de K,M,G. De exemplu : \"64M\" sau\"128M\"</i>"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Download backup"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Save or restore a backup of the configuration file and databases."
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Cleanup List"
|
||||
msgstr "Listă Curăţenie"
|
||||
@@ -3114,10 +3129,6 @@ msgid ""
|
||||
"improved existing translations here:"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "API Key"
|
||||
msgstr "Cheie API"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "This key will give 3rd party programs full access to SABnzbd."
|
||||
msgstr "Această cheie va oferi programelor terţe acces deplin la SABnzbd."
|
||||
@@ -3772,6 +3783,60 @@ msgstr ""
|
||||
"Atunci când e clar că o sarcină va eșua din cauza lipsei de date pe "
|
||||
"server(e), anulează sarcina"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Enable Indexer Integration"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid ""
|
||||
"Indexers can supply rating information when a job is added and SABnzbd can "
|
||||
"report to the indexer if a job couldn't be completed."
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Enable Filtering"
|
||||
msgstr "Activează Filtrare"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Action downloads according to filtering rules."
|
||||
msgstr "Acțiune când se descarcă în baza de reguli de filtrare."
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Abort If"
|
||||
msgstr "Renunță Dacă"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Else Pause If"
|
||||
msgstr "Altfel Întrerupe Dacă"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Video rating"
|
||||
msgstr "Rating Video"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Audio rating"
|
||||
msgstr "Rating Audio"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Spam"
|
||||
msgstr "Spam"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Confirmed"
|
||||
msgstr "Confirmat"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "More thumbs down than up"
|
||||
msgstr "Mai multe voturi pozitive ca negative"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Title keywords"
|
||||
msgstr "Cuvinte cheie din Titlu"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Comma separated list"
|
||||
msgstr "Listă separată prin virgulă"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Server IP address selection"
|
||||
msgstr ""
|
||||
@@ -4858,10 +4923,6 @@ msgstr "Confirmă Ştergere Coadă"
|
||||
msgid "Confirm History Deletions"
|
||||
msgstr "Confirmă Ştergere Istoric"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Keyboard shortcuts"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "How long or untill when do you want to pause? (in English!)"
|
||||
msgstr "Cât timp sau până când doriți să întrerupeți? (în Engleză!)"
|
||||
@@ -5015,10 +5076,6 @@ msgstr "Închide SABnzbd"
|
||||
msgid "Start Wizard"
|
||||
msgstr "Porneşte Vrăjitor"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Restore backup"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid ""
|
||||
"\n"
|
||||
|
||||
187
po/main/ru.po
187
po/main/ru.po
@@ -7,7 +7,7 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
|
||||
"Project-Id-Version: SABnzbd-develop\n"
|
||||
"PO-Revision-Date: 2020-06-27 15:49+0000\n"
|
||||
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2020\n"
|
||||
"Language-Team: Russian (https://www.transifex.com/sabnzbd/teams/111101/ru/)\n"
|
||||
@@ -200,6 +200,11 @@ msgstr "по умолчанию"
|
||||
msgid "Failed to compile regex for search term: %s"
|
||||
msgstr "Не удалось составить регулярное выражение поиска: %s"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Too little diskspace forcing PAUSE"
|
||||
msgstr "Приостановка из-за нехватки места на диске"
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Disk full! Forcing Pause"
|
||||
@@ -215,11 +220,6 @@ msgstr "Ошибка диска при создании файла %s"
|
||||
msgid "Fatal error in Assembler"
|
||||
msgstr ""
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Too little diskspace forcing PAUSE"
|
||||
msgstr "Приостановка из-за нехватки места на диске"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid ""
|
||||
@@ -251,6 +251,20 @@ msgstr ""
|
||||
msgid "Aborted, unwanted extension detected"
|
||||
msgstr ""
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Paused job \"%s\" because of rating (%s)"
|
||||
msgstr ""
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Aborted job \"%s\" because of rating (%s)"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Aborted, rating filter matched (%s)"
|
||||
msgstr ""
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Job \"%s\" is probably encrypted due to RAR with same name inside this RAR"
|
||||
@@ -261,6 +275,30 @@ msgstr ""
|
||||
msgid "Job \"%s\" is probably encrypted: \"password\" in filename \"%s\""
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "video"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "audio"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "spam"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "passworded"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "downvoted"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "keywords"
|
||||
msgstr ""
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/bpsmeter.py
|
||||
msgid "Quota spent, pausing downloading"
|
||||
@@ -316,11 +354,6 @@ msgstr "Не удаётся записать INI-файл %s"
|
||||
msgid "Cannot create backup file for %s"
|
||||
msgstr "Не удаётся создать файл резервной копии для %s"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/config.py
|
||||
msgid "Could not restore backup"
|
||||
msgstr ""
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/config.py
|
||||
msgid "Incorrectly encoded password %s"
|
||||
@@ -361,18 +394,6 @@ msgstr ""
|
||||
msgid "Unknown Error while decoding %s"
|
||||
msgstr "Неизвестная ошибка декодирования %s"
|
||||
|
||||
#: sabnzbd/deobfuscate_filenames.py
|
||||
msgid "Deobfuscate skipped due to DVD/Bluray directories"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/deobfuscate_filenames.py
|
||||
msgid "Deobfuscate corrected the extension of %d file(s)"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/deobfuscate_filenames.py
|
||||
msgid "Deobfuscate renamed %d file(s)"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/directunpacker.py, sabnzbd/skintext.py
|
||||
msgid "Direct Unpack"
|
||||
msgstr ""
|
||||
@@ -507,7 +528,7 @@ msgstr "Не удалось отправить электронное письм
|
||||
msgid "Failed to close mail connection"
|
||||
msgstr "Не удалось разорвать соединение с почтовым сервером"
|
||||
|
||||
#: sabnzbd/emailer.py, sabnzbd/notifier.py
|
||||
#: sabnzbd/emailer.py, sabnzbd/notifier.py, sabnzbd/rating.py
|
||||
msgid "Cannot send, missing required data"
|
||||
msgstr ""
|
||||
|
||||
@@ -652,10 +673,6 @@ msgid ""
|
||||
"Temporary Download Folder"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/interface.py
|
||||
msgid "Invalid backup archive"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/interface.py
|
||||
msgid "Warning: LOCALHOST is ambiguous, use numerical IP-address."
|
||||
msgstr ""
|
||||
@@ -1205,6 +1222,10 @@ msgstr "НЕПОЛНЫЙ"
|
||||
msgid "UNWANTED"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
|
||||
msgid "FILTERED"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
|
||||
msgid "WAIT %s sec"
|
||||
msgstr "ОЖИДАНИЕ %s с"
|
||||
@@ -1604,6 +1625,25 @@ msgstr "Не удалось завершить работу системы"
|
||||
msgid "Received a DBus exception %s"
|
||||
msgstr ""
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/rating.py
|
||||
msgid "Indexer id (%s) not found for ratings file"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/rating.py
|
||||
msgid "Server address"
|
||||
msgstr "Адрес сервера"
|
||||
|
||||
#: sabnzbd/rating.py, sabnzbd/skintext.py
|
||||
msgid "API Key"
|
||||
msgstr "Ключ API"
|
||||
|
||||
#: sabnzbd/rating.py, sabnzbd/skintext.py
|
||||
msgid ""
|
||||
"This key provides identity to indexer. Check your profile on the indexer's "
|
||||
"website."
|
||||
msgstr ""
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/rss.py
|
||||
msgid "Incorrect RSS feed description \"%s\""
|
||||
@@ -1725,11 +1765,6 @@ msgstr "Объединить файлы"
|
||||
msgid "Unpack"
|
||||
msgstr "Распаковать"
|
||||
|
||||
#. PP phase "deobfuscate"
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Deobfuscate"
|
||||
msgstr ""
|
||||
|
||||
#. PP phase "script" - Notification Script settings
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Script"
|
||||
@@ -2692,18 +2727,6 @@ msgstr ""
|
||||
msgid "CPU Model"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Download speed limited by"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "CPU"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Disk speed"
|
||||
msgstr ""
|
||||
|
||||
#. Do not translate Pystone
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "System Performance (Pystone)"
|
||||
@@ -3004,14 +3027,6 @@ msgstr ""
|
||||
"/><i>В байтах, после числа можно добавить K, M или G. Пример: «64M» или "
|
||||
"«128M»</i>"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Download backup"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Save or restore a backup of the configuration file and databases."
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Cleanup List"
|
||||
msgstr "Список очистки"
|
||||
@@ -3078,10 +3093,6 @@ msgid ""
|
||||
"improved existing translations here:"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "API Key"
|
||||
msgstr "Ключ API"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "This key will give 3rd party programs full access to SABnzbd."
|
||||
msgstr ""
|
||||
@@ -3734,6 +3745,60 @@ msgid ""
|
||||
"the job"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Enable Indexer Integration"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid ""
|
||||
"Indexers can supply rating information when a job is added and SABnzbd can "
|
||||
"report to the indexer if a job couldn't be completed."
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Enable Filtering"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Action downloads according to filtering rules."
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Abort If"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Else Pause If"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Video rating"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Audio rating"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Spam"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Confirmed"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "More thumbs down than up"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Title keywords"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Comma separated list"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Server IP address selection"
|
||||
msgstr ""
|
||||
@@ -4824,10 +4889,6 @@ msgstr "Подтвердите удаление очереди"
|
||||
msgid "Confirm History Deletions"
|
||||
msgstr "Подтвердите удаление журнала"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Keyboard shortcuts"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "How long or untill when do you want to pause? (in English!)"
|
||||
msgstr ""
|
||||
@@ -4982,10 +5043,6 @@ msgstr ""
|
||||
msgid "Start Wizard"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Restore backup"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid ""
|
||||
"\n"
|
||||
|
||||
191
po/main/sr.po
191
po/main/sr.po
@@ -3,13 +3,13 @@
|
||||
# team@sabnzbd.org
|
||||
#
|
||||
# Translators:
|
||||
# Safihre <safihre@sabnzbd.org>, 2022
|
||||
# Safihre <safihre@sabnzbd.org>, 2020
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
|
||||
"Project-Id-Version: SABnzbd-develop\n"
|
||||
"PO-Revision-Date: 2020-06-27 15:49+0000\n"
|
||||
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2022\n"
|
||||
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2020\n"
|
||||
"Language-Team: Serbian (https://www.transifex.com/sabnzbd/teams/111101/sr/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
@@ -198,6 +198,11 @@ msgstr "Подразумевано"
|
||||
msgid "Failed to compile regex for search term: %s"
|
||||
msgstr "Neuspešna kompilacija regularne ekspresije za termin pretrage: %s"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Too little diskspace forcing PAUSE"
|
||||
msgstr "Premalo prostora na disku, prisiljena PAUZA"
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Disk full! Forcing Pause"
|
||||
@@ -213,11 +218,6 @@ msgstr "Greška na disku prilikom kreiranja datoteke %s"
|
||||
msgid "Fatal error in Assembler"
|
||||
msgstr "Fatalna greška u Assembler-u"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Too little diskspace forcing PAUSE"
|
||||
msgstr "Premalo prostora na disku, prisiljena PAUZA"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid ""
|
||||
@@ -249,6 +249,20 @@ msgstr "Neželjena ekstenzija je u rar datoteci %s"
|
||||
msgid "Aborted, unwanted extension detected"
|
||||
msgstr "Prekinuto, detektovana neželjena ekstenzija"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Paused job \"%s\" because of rating (%s)"
|
||||
msgstr ""
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Aborted job \"%s\" because of rating (%s)"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Aborted, rating filter matched (%s)"
|
||||
msgstr "Prekinuto, filter ocene se poklopio (%s)"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Job \"%s\" is probably encrypted due to RAR with same name inside this RAR"
|
||||
@@ -259,6 +273,30 @@ msgstr ""
|
||||
msgid "Job \"%s\" is probably encrypted: \"password\" in filename \"%s\""
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "video"
|
||||
msgstr "video"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "audio"
|
||||
msgstr "аудио"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "spam"
|
||||
msgstr "neželjeno"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "passworded"
|
||||
msgstr "šifrovano"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "downvoted"
|
||||
msgstr "dole je glasao"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "keywords"
|
||||
msgstr "кључне речи"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/bpsmeter.py
|
||||
msgid "Quota spent, pausing downloading"
|
||||
@@ -314,11 +352,6 @@ msgstr "Ne može da se upiše u INI datoteku %s"
|
||||
msgid "Cannot create backup file for %s"
|
||||
msgstr "Ne može se kreirati sigurnosna kopija za %s"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/config.py
|
||||
msgid "Could not restore backup"
|
||||
msgstr ""
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/config.py
|
||||
msgid "Incorrectly encoded password %s"
|
||||
@@ -359,18 +392,6 @@ msgstr ""
|
||||
msgid "Unknown Error while decoding %s"
|
||||
msgstr "Nepoznata greška pri dešifrovanju %s"
|
||||
|
||||
#: sabnzbd/deobfuscate_filenames.py
|
||||
msgid "Deobfuscate skipped due to DVD/Bluray directories"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/deobfuscate_filenames.py
|
||||
msgid "Deobfuscate corrected the extension of %d file(s)"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/deobfuscate_filenames.py
|
||||
msgid "Deobfuscate renamed %d file(s)"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/directunpacker.py, sabnzbd/skintext.py
|
||||
msgid "Direct Unpack"
|
||||
msgstr ""
|
||||
@@ -506,7 +527,7 @@ msgstr "Neuspešno slanje e-mail poruke"
|
||||
msgid "Failed to close mail connection"
|
||||
msgstr "Неуспешно затварање везе е-поште"
|
||||
|
||||
#: sabnzbd/emailer.py, sabnzbd/notifier.py
|
||||
#: sabnzbd/emailer.py, sabnzbd/notifier.py, sabnzbd/rating.py
|
||||
msgid "Cannot send, missing required data"
|
||||
msgstr "Nemoguće poslati, nedostaju obavezni podaci"
|
||||
|
||||
@@ -649,10 +670,6 @@ msgid ""
|
||||
"Temporary Download Folder"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/interface.py
|
||||
msgid "Invalid backup archive"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/interface.py
|
||||
msgid "Warning: LOCALHOST is ambiguous, use numerical IP-address."
|
||||
msgstr "Пажња: LOCALHOST је двосмислен, користите ИП адресе."
|
||||
@@ -1199,6 +1216,10 @@ msgstr "НЕПОТПУНО"
|
||||
msgid "UNWANTED"
|
||||
msgstr "NEŽELJENI"
|
||||
|
||||
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
|
||||
msgid "FILTERED"
|
||||
msgstr "FILTRIRANO"
|
||||
|
||||
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
|
||||
msgid "WAIT %s sec"
|
||||
msgstr "Чекање %s сек"
|
||||
@@ -1596,6 +1617,25 @@ msgstr "Greška pri gašenju sistema"
|
||||
msgid "Received a DBus exception %s"
|
||||
msgstr ""
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/rating.py
|
||||
msgid "Indexer id (%s) not found for ratings file"
|
||||
msgstr "Indekser id (%s) nije pronađen za datoteku ocenjivanja"
|
||||
|
||||
#: sabnzbd/rating.py
|
||||
msgid "Server address"
|
||||
msgstr "Адреса сервера"
|
||||
|
||||
#: sabnzbd/rating.py, sabnzbd/skintext.py
|
||||
msgid "API Key"
|
||||
msgstr "API кључ"
|
||||
|
||||
#: sabnzbd/rating.py, sabnzbd/skintext.py
|
||||
msgid ""
|
||||
"This key provides identity to indexer. Check your profile on the indexer's "
|
||||
"website."
|
||||
msgstr ""
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/rss.py
|
||||
msgid "Incorrect RSS feed description \"%s\""
|
||||
@@ -1717,11 +1757,6 @@ msgstr "Прилепити датотеке"
|
||||
msgid "Unpack"
|
||||
msgstr "Распакуј"
|
||||
|
||||
#. PP phase "deobfuscate"
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Deobfuscate"
|
||||
msgstr ""
|
||||
|
||||
#. PP phase "script" - Notification Script settings
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Script"
|
||||
@@ -2684,18 +2719,6 @@ msgstr "Nameserver/DNS Pretraga"
|
||||
msgid "CPU Model"
|
||||
msgstr "Модел процесора"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Download speed limited by"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "CPU"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Disk speed"
|
||||
msgstr ""
|
||||
|
||||
#. Do not translate Pystone
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "System Performance (Pystone)"
|
||||
@@ -2992,14 +3015,6 @@ msgstr ""
|
||||
"Кеширати артикле у меморији. То смањује приступ диска.<br /><i>У бајтовима, "
|
||||
"опционо додати K,M,G. Пример: \"64M\" или \"128M\"</i>"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Download backup"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Save or restore a backup of the configuration file and databases."
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Cleanup List"
|
||||
msgstr "Списак чишћења"
|
||||
@@ -3068,10 +3083,6 @@ msgid ""
|
||||
"improved existing translations here:"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "API Key"
|
||||
msgstr "API кључ"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "This key will give 3rd party programs full access to SABnzbd."
|
||||
msgstr "Овај кључ допушта пун приступ SABnzbd-а другим програмима."
|
||||
@@ -3720,6 +3731,60 @@ msgstr ""
|
||||
"Када током преузимања постаје јасно да превише података недостаје, прекинути"
|
||||
" посао"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Enable Indexer Integration"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid ""
|
||||
"Indexers can supply rating information when a job is added and SABnzbd can "
|
||||
"report to the indexer if a job couldn't be completed."
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Enable Filtering"
|
||||
msgstr "Omogući filtriranje"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Action downloads according to filtering rules."
|
||||
msgstr "Radnje pri preuzimanju prema pravilima filtriranja."
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Abort If"
|
||||
msgstr "Obustavi ako"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Else Pause If"
|
||||
msgstr "Inače pauziraj ako"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Video rating"
|
||||
msgstr "Ocena videa"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Audio rating"
|
||||
msgstr "Ocena zvuka"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Spam"
|
||||
msgstr "Непожељна"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Confirmed"
|
||||
msgstr "Potvrđeno"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "More thumbs down than up"
|
||||
msgstr "Više negativnih nego pozitivnih"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Title keywords"
|
||||
msgstr "Ključne reči naziva"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Comma separated list"
|
||||
msgstr "Lista razdvojena zarezom"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Server IP address selection"
|
||||
msgstr ""
|
||||
@@ -4803,10 +4868,6 @@ msgstr "Потврда брисања реда"
|
||||
msgid "Confirm History Deletions"
|
||||
msgstr "Потврда брисања хронологије"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Keyboard shortcuts"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "How long or untill when do you want to pause? (in English!)"
|
||||
msgstr "Koliko dugo ili dokle želite da pauzirate? (na engleskom!)"
|
||||
@@ -4959,10 +5020,6 @@ msgstr "Затвори SABnzbd"
|
||||
msgid "Start Wizard"
|
||||
msgstr "Покрени чаробњака"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Restore backup"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid ""
|
||||
"\n"
|
||||
|
||||
191
po/main/sv.po
191
po/main/sv.po
@@ -3,13 +3,13 @@
|
||||
# team@sabnzbd.org
|
||||
#
|
||||
# Translators:
|
||||
# Safihre <safihre@sabnzbd.org>, 2022
|
||||
# Safihre <safihre@sabnzbd.org>, 2020
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
|
||||
"Project-Id-Version: SABnzbd-develop\n"
|
||||
"PO-Revision-Date: 2020-06-27 15:49+0000\n"
|
||||
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2022\n"
|
||||
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2020\n"
|
||||
"Language-Team: Swedish (https://www.transifex.com/sabnzbd/teams/111101/sv/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
@@ -198,6 +198,11 @@ msgstr "Standard"
|
||||
msgid "Failed to compile regex for search term: %s"
|
||||
msgstr "Det gick inte att kompilera regex för sök-sträng: %s"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Too little diskspace forcing PAUSE"
|
||||
msgstr "För lite diskutrymme pausar systemet"
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Disk full! Forcing Pause"
|
||||
@@ -213,11 +218,6 @@ msgstr "Diskfel vid skapande av fil %s"
|
||||
msgid "Fatal error in Assembler"
|
||||
msgstr "Kritiskt fel i Assembler"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Too little diskspace forcing PAUSE"
|
||||
msgstr "För lite diskutrymme pausar systemet"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid ""
|
||||
@@ -249,6 +249,20 @@ msgstr "Oönskad filändelse i RAR-fil %s"
|
||||
msgid "Aborted, unwanted extension detected"
|
||||
msgstr "Avbruten, oönskad filändelse detekterad"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Paused job \"%s\" because of rating (%s)"
|
||||
msgstr ""
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Aborted job \"%s\" because of rating (%s)"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Aborted, rating filter matched (%s)"
|
||||
msgstr "Avbrutet, betyget matchade (%s)"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Job \"%s\" is probably encrypted due to RAR with same name inside this RAR"
|
||||
@@ -259,6 +273,30 @@ msgstr ""
|
||||
msgid "Job \"%s\" is probably encrypted: \"password\" in filename \"%s\""
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "video"
|
||||
msgstr "video"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "audio"
|
||||
msgstr "ljud"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "spam"
|
||||
msgstr "spam"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "passworded"
|
||||
msgstr "lösenordskyddad"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "downvoted"
|
||||
msgstr "nedröstad"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "keywords"
|
||||
msgstr "nyckelord"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/bpsmeter.py
|
||||
msgid "Quota spent, pausing downloading"
|
||||
@@ -314,11 +352,6 @@ msgstr "Kan inte skriva till INI filen %s"
|
||||
msgid "Cannot create backup file for %s"
|
||||
msgstr "Kan inte skapa backup-fil för %s"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/config.py
|
||||
msgid "Could not restore backup"
|
||||
msgstr ""
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/config.py
|
||||
msgid "Incorrectly encoded password %s"
|
||||
@@ -360,18 +393,6 @@ msgstr ""
|
||||
msgid "Unknown Error while decoding %s"
|
||||
msgstr "Okänt fel under avkodning av %s"
|
||||
|
||||
#: sabnzbd/deobfuscate_filenames.py
|
||||
msgid "Deobfuscate skipped due to DVD/Bluray directories"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/deobfuscate_filenames.py
|
||||
msgid "Deobfuscate corrected the extension of %d file(s)"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/deobfuscate_filenames.py
|
||||
msgid "Deobfuscate renamed %d file(s)"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/directunpacker.py, sabnzbd/skintext.py
|
||||
msgid "Direct Unpack"
|
||||
msgstr ""
|
||||
@@ -506,7 +527,7 @@ msgstr "Det gick inte att skicka e-mail"
|
||||
msgid "Failed to close mail connection"
|
||||
msgstr "Det gick inte att stänga e-mail anslutning"
|
||||
|
||||
#: sabnzbd/emailer.py, sabnzbd/notifier.py
|
||||
#: sabnzbd/emailer.py, sabnzbd/notifier.py, sabnzbd/rating.py
|
||||
msgid "Cannot send, missing required data"
|
||||
msgstr "Kunde inte skicka, saknar nödvändig data"
|
||||
|
||||
@@ -651,10 +672,6 @@ msgid ""
|
||||
"Temporary Download Folder"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/interface.py
|
||||
msgid "Invalid backup archive"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/interface.py
|
||||
msgid "Warning: LOCALHOST is ambiguous, use numerical IP-address."
|
||||
msgstr "Varning: LOCALHOST är tvetydigt, använda numerisk IP-adress ."
|
||||
@@ -1203,6 +1220,10 @@ msgstr "INKOMPLETT"
|
||||
msgid "UNWANTED"
|
||||
msgstr "OÖNSKAD"
|
||||
|
||||
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
|
||||
msgid "FILTERED"
|
||||
msgstr "FILTRERAD"
|
||||
|
||||
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
|
||||
msgid "WAIT %s sec"
|
||||
msgstr "VÄNTA %s SEKUNDER"
|
||||
@@ -1602,6 +1623,25 @@ msgstr "Fel uppstod då systemet skulle stängas"
|
||||
msgid "Received a DBus exception %s"
|
||||
msgstr ""
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/rating.py
|
||||
msgid "Indexer id (%s) not found for ratings file"
|
||||
msgstr "Index id (%s) inte hittad för betygsfil"
|
||||
|
||||
#: sabnzbd/rating.py
|
||||
msgid "Server address"
|
||||
msgstr "Serveradress"
|
||||
|
||||
#: sabnzbd/rating.py, sabnzbd/skintext.py
|
||||
msgid "API Key"
|
||||
msgstr "API-nyckel"
|
||||
|
||||
#: sabnzbd/rating.py, sabnzbd/skintext.py
|
||||
msgid ""
|
||||
"This key provides identity to indexer. Check your profile on the indexer's "
|
||||
"website."
|
||||
msgstr ""
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/rss.py
|
||||
msgid "Incorrect RSS feed description \"%s\""
|
||||
@@ -1723,11 +1763,6 @@ msgstr "Slår ihop filer"
|
||||
msgid "Unpack"
|
||||
msgstr "Packa upp"
|
||||
|
||||
#. PP phase "deobfuscate"
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Deobfuscate"
|
||||
msgstr ""
|
||||
|
||||
#. PP phase "script" - Notification Script settings
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Script"
|
||||
@@ -2690,18 +2725,6 @@ msgstr "Namnserver /DNS Lookup"
|
||||
msgid "CPU Model"
|
||||
msgstr "CPU Modell"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Download speed limited by"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "CPU"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Disk speed"
|
||||
msgstr ""
|
||||
|
||||
#. Do not translate Pystone
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "System Performance (Pystone)"
|
||||
@@ -3001,14 +3024,6 @@ msgstr ""
|
||||
"Sparar artiklar i minnet för att reducera diskåtkomst.<br /><i>I bytes, "
|
||||
"följt av K,M,G. Till exempel: \"64M\" eller \"128M\"</i>"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Download backup"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Save or restore a backup of the configuration file and databases."
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Cleanup List"
|
||||
msgstr "Rensa lista"
|
||||
@@ -3077,10 +3092,6 @@ msgid ""
|
||||
"improved existing translations here:"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "API Key"
|
||||
msgstr "API-nyckel"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "This key will give 3rd party programs full access to SABnzbd."
|
||||
msgstr "Denna nyckel ger tredjepartsprogram full tillgång till SABnzbd."
|
||||
@@ -3732,6 +3743,60 @@ msgid ""
|
||||
msgstr ""
|
||||
"Under nerladdning och det märks att för mycket data saknas, avbryt jobbet"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Enable Indexer Integration"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid ""
|
||||
"Indexers can supply rating information when a job is added and SABnzbd can "
|
||||
"report to the indexer if a job couldn't be completed."
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Enable Filtering"
|
||||
msgstr "Aktivera Filtrering"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Action downloads according to filtering rules."
|
||||
msgstr "Action nedladdningar enligt filtreringsregler."
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Abort If"
|
||||
msgstr "Avbryt Om"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Else Pause If"
|
||||
msgstr "Annars Pausa Om"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Video rating"
|
||||
msgstr "Videobetyg"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Audio rating"
|
||||
msgstr "Audiobetyg"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Spam"
|
||||
msgstr "Spam"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Confirmed"
|
||||
msgstr "Bekräftad"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "More thumbs down than up"
|
||||
msgstr "Fler tummar ner än upp"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Title keywords"
|
||||
msgstr "Titelns nyckelord"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Comma separated list"
|
||||
msgstr "Kommaseparerad lista"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Server IP address selection"
|
||||
msgstr ""
|
||||
@@ -4815,10 +4880,6 @@ msgstr "Bekräfta Kö-borttagningar"
|
||||
msgid "Confirm History Deletions"
|
||||
msgstr "Bekräfta Historik-borttagningar"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Keyboard shortcuts"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "How long or untill when do you want to pause? (in English!)"
|
||||
msgstr "Hur lång tid eller tills då vill du pausa? (på engelska!)"
|
||||
@@ -4973,10 +5034,6 @@ msgstr "Avsluta SABnzbd"
|
||||
msgid "Start Wizard"
|
||||
msgstr "Starta guide"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Restore backup"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid ""
|
||||
"\n"
|
||||
|
||||
191
po/main/zh_CN.po
191
po/main/zh_CN.po
@@ -3,13 +3,13 @@
|
||||
# team@sabnzbd.org
|
||||
#
|
||||
# Translators:
|
||||
# Safihre <safihre@sabnzbd.org>, 2022
|
||||
# Safihre <safihre@sabnzbd.org>, 2020
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
|
||||
"Project-Id-Version: SABnzbd-develop\n"
|
||||
"PO-Revision-Date: 2020-06-27 15:49+0000\n"
|
||||
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2022\n"
|
||||
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2020\n"
|
||||
"Language-Team: Chinese (China) (https://www.transifex.com/sabnzbd/teams/111101/zh_CN/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
@@ -196,6 +196,11 @@ msgstr "默认"
|
||||
msgid "Failed to compile regex for search term: %s"
|
||||
msgstr "为搜索关键词编译正则表达式失败: %s"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Too little diskspace forcing PAUSE"
|
||||
msgstr "磁盘空间过低,强制 *暂停*"
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Disk full! Forcing Pause"
|
||||
@@ -211,11 +216,6 @@ msgstr "创建文件 %s 时磁盘出错"
|
||||
msgid "Fatal error in Assembler"
|
||||
msgstr "Assembler 出现致命错误"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Too little diskspace forcing PAUSE"
|
||||
msgstr "磁盘空间过低,强制 *暂停*"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid ""
|
||||
@@ -247,6 +247,20 @@ msgstr "rar 文件中出现不需要的扩展名 %s"
|
||||
msgid "Aborted, unwanted extension detected"
|
||||
msgstr "已中止,侦测到不需要的扩展名"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Paused job \"%s\" because of rating (%s)"
|
||||
msgstr "任务“%s”已暂停,由于评分过低 (%s)"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Aborted job \"%s\" because of rating (%s)"
|
||||
msgstr "任务“%s”已中止,由于评分过低 (%s)"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Aborted, rating filter matched (%s)"
|
||||
msgstr "已中止,评分筛选器已命中 (%s)"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "Job \"%s\" is probably encrypted due to RAR with same name inside this RAR"
|
||||
@@ -257,6 +271,30 @@ msgstr "任务 \"%s\" 可能受加密保护,RAR 文件中存在相同名称的
|
||||
msgid "Job \"%s\" is probably encrypted: \"password\" in filename \"%s\""
|
||||
msgstr "任务 \"%s\" 可能受加密保护:文件名 \"%s\" 中有 \"password\" 字符"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "video"
|
||||
msgstr "视频"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "audio"
|
||||
msgstr "音频"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "spam"
|
||||
msgstr "垃圾"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "passworded"
|
||||
msgstr "有密码"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "downvoted"
|
||||
msgstr "已减分"
|
||||
|
||||
#: sabnzbd/assembler.py
|
||||
msgid "keywords"
|
||||
msgstr "关键词"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/bpsmeter.py
|
||||
msgid "Quota spent, pausing downloading"
|
||||
@@ -312,11 +350,6 @@ msgstr "无法写入 INI 文件 %s"
|
||||
msgid "Cannot create backup file for %s"
|
||||
msgstr "无法为 %s 创建备份文件"
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/config.py
|
||||
msgid "Could not restore backup"
|
||||
msgstr ""
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/config.py
|
||||
msgid "Incorrectly encoded password %s"
|
||||
@@ -357,18 +390,6 @@ msgstr "解码器失败:内存不足"
|
||||
msgid "Unknown Error while decoding %s"
|
||||
msgstr "解码 %s 时发生未知错误"
|
||||
|
||||
#: sabnzbd/deobfuscate_filenames.py
|
||||
msgid "Deobfuscate skipped due to DVD/Bluray directories"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/deobfuscate_filenames.py
|
||||
msgid "Deobfuscate corrected the extension of %d file(s)"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/deobfuscate_filenames.py
|
||||
msgid "Deobfuscate renamed %d file(s)"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/directunpacker.py, sabnzbd/skintext.py
|
||||
msgid "Direct Unpack"
|
||||
msgstr ""
|
||||
@@ -503,7 +524,7 @@ msgstr "无法发送 e-mail"
|
||||
msgid "Failed to close mail connection"
|
||||
msgstr "无法关闭邮件连接"
|
||||
|
||||
#: sabnzbd/emailer.py, sabnzbd/notifier.py
|
||||
#: sabnzbd/emailer.py, sabnzbd/notifier.py, sabnzbd/rating.py
|
||||
msgid "Cannot send, missing required data"
|
||||
msgstr "无法发送,缺少必要的数据"
|
||||
|
||||
@@ -642,10 +663,6 @@ msgid ""
|
||||
"Temporary Download Folder"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/interface.py
|
||||
msgid "Invalid backup archive"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/interface.py
|
||||
msgid "Warning: LOCALHOST is ambiguous, use numerical IP-address."
|
||||
msgstr "警告: LOCALHOST 太含糊,请使用数字 IP 地址。"
|
||||
@@ -1190,6 +1207,10 @@ msgstr "*不完整*"
|
||||
msgid "UNWANTED"
|
||||
msgstr "不需要"
|
||||
|
||||
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
|
||||
msgid "FILTERED"
|
||||
msgstr "已过滤"
|
||||
|
||||
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
|
||||
msgid "WAIT %s sec"
|
||||
msgstr "*等待* %s 秒"
|
||||
@@ -1587,6 +1608,25 @@ msgstr "关闭系统时出错"
|
||||
msgid "Received a DBus exception %s"
|
||||
msgstr ""
|
||||
|
||||
#. Warning message
|
||||
#: sabnzbd/rating.py
|
||||
msgid "Indexer id (%s) not found for ratings file"
|
||||
msgstr "评分文件的索引器 id (%s) 未找到"
|
||||
|
||||
#: sabnzbd/rating.py
|
||||
msgid "Server address"
|
||||
msgstr "服务器地址"
|
||||
|
||||
#: sabnzbd/rating.py, sabnzbd/skintext.py
|
||||
msgid "API Key"
|
||||
msgstr "API Key"
|
||||
|
||||
#: sabnzbd/rating.py, sabnzbd/skintext.py
|
||||
msgid ""
|
||||
"This key provides identity to indexer. Check your profile on the indexer's "
|
||||
"website."
|
||||
msgstr "这个密钥用来向服务器表明身份。查看您在索引网站上的个人档案。"
|
||||
|
||||
#. Error message
|
||||
#: sabnzbd/rss.py
|
||||
msgid "Incorrect RSS feed description \"%s\""
|
||||
@@ -1708,11 +1748,6 @@ msgstr "合并文件"
|
||||
msgid "Unpack"
|
||||
msgstr "解压"
|
||||
|
||||
#. PP phase "deobfuscate"
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Deobfuscate"
|
||||
msgstr ""
|
||||
|
||||
#. PP phase "script" - Notification Script settings
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Script"
|
||||
@@ -2675,18 +2710,6 @@ msgstr "域名服务器 / DNS 查询"
|
||||
msgid "CPU Model"
|
||||
msgstr "CPU 型号"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Download speed limited by"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "CPU"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Disk speed"
|
||||
msgstr ""
|
||||
|
||||
#. Do not translate Pystone
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "System Performance (Pystone)"
|
||||
@@ -2974,14 +2997,6 @@ msgid ""
|
||||
" follow with K,M,G. For example: \"64M\" or \"128M\"</i>"
|
||||
msgstr "在内存中缓存文章,以减轻硬盘访问压力。<br /><i>单位为字节,可以选择加上 K、M、G 后缀。例如: \"64M\" 或 \"128M\"</i>"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Download backup"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Save or restore a backup of the configuration file and databases."
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Cleanup List"
|
||||
msgstr "清理列表"
|
||||
@@ -3048,10 +3063,6 @@ msgid ""
|
||||
"improved existing translations here:"
|
||||
msgstr "帮助我们来本地化 SABnzbd !<br/>您可以在这里来添加未被翻译的文字或者改进现有的翻译:"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "API Key"
|
||||
msgstr "API Key"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "This key will give 3rd party programs full access to SABnzbd."
|
||||
msgstr "该 key 将授予第三方程序 SABnzbd 的完整权限。"
|
||||
@@ -3670,6 +3681,60 @@ msgid ""
|
||||
"the job"
|
||||
msgstr "下载时若发现缺失数据过多,则中止对应任务"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Enable Indexer Integration"
|
||||
msgstr "启用索引集成"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid ""
|
||||
"Indexers can supply rating information when a job is added and SABnzbd can "
|
||||
"report to the indexer if a job couldn't be completed."
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Enable Filtering"
|
||||
msgstr "启用过滤"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Action downloads according to filtering rules."
|
||||
msgstr "根据过滤规则对下载任务执行操作"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Abort If"
|
||||
msgstr "中止的条件"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Else Pause If"
|
||||
msgstr "否则暂停的条件"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Video rating"
|
||||
msgstr "视频评分"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Audio rating"
|
||||
msgstr "音频评分"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Spam"
|
||||
msgstr "垃圾"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Confirmed"
|
||||
msgstr "已确认"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "More thumbs down than up"
|
||||
msgstr "缩略图的减分比加分多"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Title keywords"
|
||||
msgstr "标题关键词"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Comma separated list"
|
||||
msgstr "逗号分隔的列表"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Server IP address selection"
|
||||
msgstr ""
|
||||
@@ -4750,10 +4815,6 @@ msgstr "确认队列删除"
|
||||
msgid "Confirm History Deletions"
|
||||
msgstr "确认历史删除"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Keyboard shortcuts"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "How long or untill when do you want to pause? (in English!)"
|
||||
msgstr "您希望在多久之后/什么时候暂停? (用英语作答!)"
|
||||
@@ -4904,10 +4965,6 @@ msgstr "退出 SABnzbd"
|
||||
msgid "Start Wizard"
|
||||
msgstr "启动向导"
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid "Restore backup"
|
||||
msgstr ""
|
||||
|
||||
#: sabnzbd/skintext.py
|
||||
msgid ""
|
||||
"\n"
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
|
||||
"Project-Id-Version: SABnzbd-develop\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: team@sabnzbd.org\n"
|
||||
"Language-Team: SABnzbd <team@sabnzbd.org>\n"
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
|
||||
"Project-Id-Version: SABnzbd-develop\n"
|
||||
"PO-Revision-Date: 2020-06-27 15:56+0000\n"
|
||||
"Language-Team: Czech (https://www.transifex.com/sabnzbd/teams/111101/cs/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
|
||||
"Project-Id-Version: SABnzbd-develop\n"
|
||||
"PO-Revision-Date: 2020-06-27 15:56+0000\n"
|
||||
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2020\n"
|
||||
"Language-Team: Danish (https://www.transifex.com/sabnzbd/teams/111101/da/)\n"
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
|
||||
"Project-Id-Version: SABnzbd-develop\n"
|
||||
"PO-Revision-Date: 2020-06-27 15:56+0000\n"
|
||||
"Last-Translator: Simon W., 2021\n"
|
||||
"Language-Team: German (https://www.transifex.com/sabnzbd/teams/111101/de/)\n"
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
|
||||
"Project-Id-Version: SABnzbd-develop\n"
|
||||
"PO-Revision-Date: 2020-06-27 15:56+0000\n"
|
||||
"Last-Translator: Ester Molla Aragones <moarages@gmail.com>, 2020\n"
|
||||
"Language-Team: Spanish (https://www.transifex.com/sabnzbd/teams/111101/es/)\n"
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
|
||||
"Project-Id-Version: SABnzbd-develop\n"
|
||||
"PO-Revision-Date: 2020-06-27 15:56+0000\n"
|
||||
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2020\n"
|
||||
"Language-Team: Finnish (https://www.transifex.com/sabnzbd/teams/111101/fi/)\n"
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
|
||||
"Project-Id-Version: SABnzbd-develop\n"
|
||||
"PO-Revision-Date: 2020-06-27 15:56+0000\n"
|
||||
"Last-Translator: Fred L <88com88@gmail.com>, 2021\n"
|
||||
"Language-Team: French (https://www.transifex.com/sabnzbd/teams/111101/fr/)\n"
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
|
||||
"Project-Id-Version: SABnzbd-develop\n"
|
||||
"PO-Revision-Date: 2020-06-27 15:56+0000\n"
|
||||
"Last-Translator: ION, 2021\n"
|
||||
"Language-Team: Hebrew (https://www.transifex.com/sabnzbd/teams/111101/he/)\n"
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
|
||||
"Project-Id-Version: SABnzbd-develop\n"
|
||||
"PO-Revision-Date: 2020-06-27 15:56+0000\n"
|
||||
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2020\n"
|
||||
"Language-Team: Norwegian Bokmål (https://www.transifex.com/sabnzbd/teams/111101/nb/)\n"
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
|
||||
"Project-Id-Version: SABnzbd-develop\n"
|
||||
"PO-Revision-Date: 2020-06-27 15:56+0000\n"
|
||||
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2021\n"
|
||||
"Language-Team: Dutch (https://www.transifex.com/sabnzbd/teams/111101/nl/)\n"
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
|
||||
"Project-Id-Version: SABnzbd-develop\n"
|
||||
"PO-Revision-Date: 2020-06-27 15:56+0000\n"
|
||||
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2020\n"
|
||||
"Language-Team: Polish (https://www.transifex.com/sabnzbd/teams/111101/pl/)\n"
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
|
||||
"Project-Id-Version: SABnzbd-develop\n"
|
||||
"PO-Revision-Date: 2020-06-27 15:56+0000\n"
|
||||
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2020\n"
|
||||
"Language-Team: Portuguese (Brazil) (https://www.transifex.com/sabnzbd/teams/111101/pt_BR/)\n"
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
|
||||
"Project-Id-Version: SABnzbd-develop\n"
|
||||
"PO-Revision-Date: 2020-06-27 15:56+0000\n"
|
||||
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2020\n"
|
||||
"Language-Team: Romanian (https://www.transifex.com/sabnzbd/teams/111101/ro/)\n"
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
|
||||
"Project-Id-Version: SABnzbd-develop\n"
|
||||
"PO-Revision-Date: 2020-06-27 15:56+0000\n"
|
||||
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2020\n"
|
||||
"Language-Team: Russian (https://www.transifex.com/sabnzbd/teams/111101/ru/)\n"
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
|
||||
"Project-Id-Version: SABnzbd-develop\n"
|
||||
"PO-Revision-Date: 2020-06-27 15:56+0000\n"
|
||||
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2020\n"
|
||||
"Language-Team: Serbian (https://www.transifex.com/sabnzbd/teams/111101/sr/)\n"
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
|
||||
"Project-Id-Version: SABnzbd-develop\n"
|
||||
"PO-Revision-Date: 2020-06-27 15:56+0000\n"
|
||||
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2020\n"
|
||||
"Language-Team: Swedish (https://www.transifex.com/sabnzbd/teams/111101/sv/)\n"
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user