Compare commits

...

192 Commits

Author SHA1 Message Date
Safihre
4f2b6d4cd7 Update text files for 3.7.0Alpha1 2022-09-22 14:52:44 +02:00
Safihre
92067fa3f3 Build release using Python 3.11 RC 2
Set PYTHONNODEBUGRANGES
Use main pyinstaller branch
rustup target add aarch64-apple-darwin
2022-09-22 14:19:32 +02:00
SABnzbd Automation
c26ea4ceeb Update translatable texts
[skip ci]
2022-09-22 12:13:12 +00:00
Safihre
35ccbff5b9 Update label for System load 2022-09-22 14:12:29 +02:00
SABnzbd Automation
1a265a5176 Update translatable texts 2022-09-22 10:49:38 +00:00
Safihre
ef2d243fa8 Move sysload indicator to status window 2022-09-22 12:48:58 +02:00
Safihre
c2b8fa59a6 Update sabyenc3 to 5.4.4
Only adds Python 3.11 wheels
2022-09-22 12:35:10 +02:00
Safihre
a85f9e39bd Force-downloads can result in extra data downloaded of other jobs 2022-09-22 12:12:42 +02:00
Safihre
a13f8828fb Move Server - Port setting to Advanced settings 2022-09-22 12:02:32 +02:00
Safihre
7d391b8465 Small improvement of BPSMeter.get_sums
Leftover of Python 2 days
2022-09-21 23:06:50 +02:00
Safihre
dbfa7cc4eb Refactor Downloader.bandwidth_perc and bandwidth_limit usage 2022-09-21 22:49:41 +02:00
Safihre
66e99df303 Free Space Detection too strict when using Direct Unpack
Closes #2299
2022-09-21 21:41:24 +02:00
Safihre
77ecf64443 Prevent crash on disappearing Article
Closes #2295
2022-09-21 21:31:02 +02:00
Safihre
f7060804b2 Set logging to info when no file given to deobfuscate
Closes #2297
2022-09-20 10:22:00 +02:00
renovate[bot]
a44a1269c0 Update all dependencies 2022-09-19 01:53:27 +00:00
Safihre
ac6fc37c7d Small improvements of to_units and opts_to_pp 2022-09-16 06:50:48 +02:00
Safihre
9472d65af9 Update output tests to match removed API fields 2022-09-15 22:49:36 +02:00
Safihre
1b4c07f229 Remove categories and scripts from queue-API-call
So we don't check the disk for available scripts every second
2022-09-15 14:49:20 +02:00
Safihre
a645058ae1 Update Snapcraft release process 2022-09-13 16:48:28 +02:00
Safihre
edec6defbb Show the custom job name in case of fetch-failure
Closes #2294
2022-09-12 22:52:44 +02:00
SABnzbd Automation
27b3a3ddef Update translatable texts 2022-09-12 13:58:44 +00:00
Safihre
da0903b8a6 Link to Not-complete info on low article availability 2022-09-12 15:57:57 +02:00
renovate[bot]
a49a3b45e5 Update dependency cryptography to v38 2022-09-12 05:08:14 +00:00
SABnzbd Automation
b9225fb153 Update translatable texts 2022-09-12 03:09:18 +00:00
renovate[bot]
656b7f0948 Update dependency pyinstaller to v5.4.1 2022-09-12 03:08:39 +00:00
SABnzbd Automation
08b249ee09 Update translatable texts 2022-09-08 15:15:35 +00:00
Safihre
5d76ebfe6e Force push requires automation token 2022-09-08 17:14:40 +02:00
Safihre
0d53b12ade Force-push updates to translation files 2022-09-08 17:01:54 +02:00
Safihre
f403e12a2a Add option to specify Backup Folder and clarify scheduler usage
Closes #2288
2022-09-08 16:54:13 +02:00
Safihre
5abce26309 Update build_release.yml
Update the actual macOS build code
2022-09-06 12:35:44 +00:00
Safihre
e73cb0958f Update macOS build script 2022-09-06 12:35:44 +00:00
renovate[bot]
70070e2f1c Update dependency pyinstaller-hooks-contrib to v2022.10 2022-09-06 12:35:44 +00:00
Sander
2685f9adab more some extensions that are non-mainstream (#2285)
Co-authored-by: sander <san.d.erjonkers+github@gmail.com>
2022-09-03 16:20:59 +02:00
renovate[bot]
c43e74eabd Update all dependencies 2022-08-29 01:51:48 +00:00
m0vie
b0d3306209 Determine password from <meta> before running preprocessing script (#2282)
This way the environment variable SAB_PASSWORD (whose documentation
says is supplied by user OR the nzb) is filled properly and the
password is available in a preprocessing script.
2022-08-27 20:08:08 +02:00
Safihre
4aaabae109 Pin jaraco.text to lower version due to irrelevant extra dependencies 2022-08-26 11:32:02 +02:00
Safihre
b8188f999e Prevent failure in TestPar2Repair if it takes more than 0 seconds
Closes #2273
2022-08-25 20:28:39 +02:00
Safihre
4dc5ceb9b1 Delete .pyup.yml 2022-08-25 13:20:50 +02:00
Safihre
4f8e5053f7 Update renovate.json (#2280) 2022-08-25 07:23:48 +00:00
renovate[bot]
3d97ce99e1 Update all dependencies 2022-08-24 16:34:41 +00:00
renovate[bot]
8620412b3a Configure Renovate (#2277)
* Add renovate.json

* Create renovate.json

* Delete renovate.json

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Safihre <safihre@sabnzbd.org>
2022-08-24 14:25:35 +00:00
SABnzbd Automation
a6d07d89d0 Update translatable texts 2022-08-22 17:55:36 +00:00
Safihre
a63efcefd6 Make sure also short-dates are detected as YY-MM-DD in Sorting 2022-08-22 19:54:49 +02:00
Safihre
bce9207161 Update backup tests 2022-08-22 10:40:45 +02:00
SABnzbd Automation
12670dedbe Update translatable texts 2022-08-21 20:14:14 +00:00
Safihre
40393f9548 Add Create Backup to Scheduler 2022-08-21 22:13:31 +02:00
Safihre
94cae5f015 Only allow Config-backup to the Complete Folder
Closes #2261
2022-08-21 22:05:42 +02:00
Safihre
8353227f9d No longer install builder requirements during CI 2022-08-20 23:13:38 +02:00
Safihre
5c1d69b934 Run Linux CI tests on Python 3.11 2022-08-20 23:03:40 +02:00
thezoggy
fb04b58b57 selenium syntax update (#2271)
* handle sab path with spaces

* fix py3.10 win "Unable to remove cache dir"

* remove unused imports

* update selenium find_element(s) syntax

* Fix selenium_wrapper usage

Co-authored-by: Safihre <safihre@sabnzbd.org>
2022-08-19 22:25:48 +02:00
Safihre
2bb14bba2a Correct: Compressed NZB filename could exceed OS limitation 2022-08-19 13:31:33 +02:00
Safihre
91195eb21b Compressed NZB filename could exceed OS limitation
See https://www.reddit.com/r/SABnzbd/comments/wrserd/importing_nzb_files/
2022-08-19 13:15:38 +02:00
Sander
3b8d6dd3c8 detect and log fully encrypted (obfuscated) rars (#2266)
* detect fully encrypted rars

* debug.warning working, nzo.fail_msg alas is overwritten

* a bit of clean-up

* a bit of clean-up

* the real clean-up

* no intermediate variable

Co-authored-by: Safihre <safihre@sabnzbd.org>

* Shorter message

Co-authored-by: Safihre <safihre@sabnzbd.org>

* more clean-up

* unittest

Co-authored-by: sander <san.d.erjonkers+github@gmail.com>
Co-authored-by: Safihre <safihre@sabnzbd.org>
2022-08-17 02:00:26 +02:00
Safihre
ff2ab2da8d Pyup/scheduled update 2022 08 15 (#2270)
* Update setuptools from 63.4.2 to 65.0.0

* Update orjson from 3.7.11 to 3.7.12

* Update jaraco.text from 3.8.1 to 3.9.0

* Update more-itertools from 8.13.0 to 8.14.0

* Update pytz from 2022.1 to 2022.2.1

Co-authored-by: pyup-bot <github-bot@pyup.io>
2022-08-16 20:20:07 +02:00
Sander
85aed457b2 Handle Unicoded filenames add via SAB GUI (cherrypy) (#2268)
* Linux: handle Unicoded filenames add via SAB GUI

* Unittest

* Unittest

* Unittest

* Unittest

* Unittest

* Unittest more

* naming, less code

* even less code

* better unittests

* and less, less code

Closes #2267

Co-authored-by: sander <san.d.erjonkers+github@gmail.com>
2022-08-15 19:57:58 +02:00
Safihre
d624d1d5b6 Do not repeatedly add password to meta-password list 2022-08-14 11:36:55 +02:00
Safihre
6c6a1049ea Validation error would not be shown on Config General page
Due to #2253
2022-08-12 16:48:30 +02:00
SABnzbd Automation
f380889d98 Update translatable texts 2022-08-12 14:44:22 +00:00
Sander
f61df0e126 Check if host is valid: an IP address, or a name/FQDN that resolves (#2253)
* Check if host is valid: an IP address, or a name/FQDN that resolves

* Check if host is valid: an IP address, or a name/FQDN that resolves

* default to "127.0.0.1"

* default to "127.0.0.1"

* manual black

* manual black

* manual black

* based on feedback, plus back-to-basics

* based on feedback, plus back-to-basics, plus debug logging

* based on feedback, plus back-to-basics, plus debug logging

* based on feedback, plus back-to-basics, plus debug logging

* clean formatting

* clean formatting

Co-authored-by: sander <san.d.erjonkers+github@gmail.com>
2022-08-12 16:43:40 +02:00
Safihre
ffca12123f Update Unrar to 6.11/6.12
Closes #2265
2022-08-12 10:49:10 +02:00
SABnzbd Automation
1077ca3753 Update translatable texts 2022-08-12 08:45:59 +00:00
Safihre
c7189dbceb Graceful log sabyenc decoding (CRC/formatting) errors
Closes sabnzbd/sabyenc#62
2022-08-12 10:43:59 +02:00
SABnzbd Automation
f2361c49b4 Update translatable texts 2022-08-10 06:54:38 +00:00
thezoggy
f84cbb66c3 Add option to replace underscores in folder name. (#2263) 2022-08-10 08:53:54 +02:00
Safihre
e45f254d19 strftime does not require explicit call to localtime 2022-08-09 21:54:04 +02:00
Safihre
b6cd3c0bae Config backup filename in same format as *arr apps
See #2261
2022-08-09 21:51:58 +02:00
pyup.io bot
4a98724a35 Update setuptools from 63.3.0 to 63.4.2 (#2262) 2022-08-09 07:39:49 +02:00
SABnzbd Automation
4680fa5ae9 Update translatable texts 2022-08-05 19:19:00 +00:00
Safihre
458f4e2bdc Remove deprecation notices 2022-08-05 21:18:12 +02:00
Safihre
3357fd81c7 Add Filter and Age columns to Downloaded RSS-feed tab
Closes #2257
2022-08-03 21:58:40 +02:00
Safihre
3ebe277303 Update macOS Python version to 3.10.6 2022-08-02 22:30:26 +02:00
Safihre
29c57dce0f Remove new QuickCheck implementation
See https://github.com/sabnzbd/sabnzbd/discussions/2160
And https://github.com/sabnzbd/sabnzbd/issues/2251
2022-08-02 22:16:21 +02:00
Safihre
27a9330638 Pyup/scheduled update 2022 08 01 (#2260)
* Update pyinstaller from 5.2 to 5.3

* Update setuptools from 63.2.0 to 63.3.0

* Update orjson from 3.7.8 to 3.7.11

Co-authored-by: pyup-bot <github-bot@pyup.io>
2022-08-02 20:25:31 +02:00
Safihre
4b42b1f55d Upgrade pip/wheel before installing requirements
Closes #2244
2022-07-26 09:52:58 +02:00
pyup.io bot
db761395e5 Update orjson from 3.7.7 to 3.7.8 (#2250) 2022-07-26 09:51:09 +02:00
Sander
249d73e270 Deobfuscation: comments and logging (#2246)
* Comment block that explains what deobfuscation does

* get better logging (with reason of no deobfuscation), leading to other code structure

* get better logging (with reason of no deobfuscation), leading to other code structure

* get better logging (with reason of no deobfuscation), leading to other code structure

* based on feedback: comment with typical cases to the beginning of function, error logging if file is not given/found, other logical notation in if-statement
2022-07-25 22:19:11 +02:00
Safihre
5d359afedb Downloads in Checking-status were not displayed correctly
Closes #2249
2022-07-25 11:02:26 +02:00
Safihre
5e8e37e6a2 Correctly remove disable_api_key 2022-07-21 21:39:07 +02:00
SABnzbd Automation
a74df6f04f Update translatable texts 2022-07-21 19:30:52 +00:00
Safihre
10991d5472 Remove replace_illegal option 2022-07-21 21:26:30 +02:00
Safihre
b3206fe1db Remove enable_meta option 2022-07-21 21:24:29 +02:00
Safihre
70391ea055 Remove disable_key option 2022-07-21 21:22:19 +02:00
thezoggy
5b69155d49 Tweak hotkeys, add pagination navigation, use jquery.hotkeys (#2235) 2022-07-20 13:38:11 +02:00
pyup.io bot
941bb8adca Scheduled weekly dependency update for week 29 (#2242)
* Update setuptools from 63.1.0 to 63.2.0

* Update cherrypy from 18.7.0 to 18.8.0

* Update jaraco.functools from 3.5.0 to 3.5.1

* Update jaraco.collections from 3.5.1 to 3.5.2

* Update jaraco.text from 3.8.0 to 3.8.1

* Update jaraco.classes from 3.2.1 to 3.2.2

* Update jaraco.context from 4.1.1 to 4.1.2

* Update tempora from 5.0.1 to 5.0.2
2022-07-20 13:36:55 +02:00
Sander
b5eb014084 Only pick biggest file for deobfuscation (#2241)
* Only pick biggest file for deobfuscation

* unit tests working again

* unit tests working again

* get counter nr_files_renamed right

* also deobfuscate sample and other files with same basename

* also deobfuscate sample and other files with same basename

* naming, comments

* unit test with just one small file (should get deobfuscated). Plus improved text/names.

* Moved most typical unit test (test_deobfuscate_big_file_small_accompanying_files() ) more to the top

* Moved most typical unit test (test_deobfuscate_big_file_small_accompanying_files() ) more to the top
2022-07-20 13:36:40 +02:00
jcfp
ee4b9339a7 use OSType in pyfakefs instead of setting separate properties (#2243) 2022-07-19 22:36:44 +02:00
pyup.io bot
3acfe19499 Scheduled weekly dependency update for week 28 (#2239)
* Update cryptography from 37.0.3 to 37.0.4

* Update cryptography from 37.0.3 to 37.0.4

* Update pyinstaller from 5.1 to 5.2

* Update pyinstaller-hooks-contrib from 2022.7 to 2022.8

* Update orjson from 3.7.6 to 3.7.7

* Update cherrypy from 18.6.1 to 18.7.0
2022-07-12 08:09:54 +02:00
pyup.io bot
9bac23b38f Scheduled weekly dependency update for week 27 (#2237)
* Update setuptools from 62.6.0 to 63.1.0

* Update orjson from 3.7.3 to 3.7.6

* Update cffi from 1.15 to 1.15.1

* Update ujson from 5.3.0 to 5.4.0
2022-07-04 23:20:33 +02:00
Safihre
b028258cbd Pyup/scheduled update 2022 06 27 (#2226)
* Update cryptography from 37.0.2 to 37.0.3

* Update cryptography from 37.0.2 to 37.0.3

* Update orjson from 3.7.2 to 3.7.3

* Update chardet from 4.0.0 to 5.0.0

* Force selenium<4.3.0

Co-authored-by: pyup-bot <github-bot@pyup.io>
2022-06-28 08:48:45 +02:00
Safihre
4d442159cb Remove unused code 2022-06-22 20:17:29 +02:00
Safihre
181a91ccf6 Prevent crash if DNS lookup fails for external IPv4
Closes #2217
2022-06-21 22:31:01 +02:00
SABnzbd Automation
1c6f2e9d10 Update translatable texts 2022-06-21 07:54:26 +00:00
Safihre
244fe3b116 Remove unused translations from Glitter 2022-06-21 09:52:41 +02:00
Safihre
9ee7391918 Pyup/scheduled update 2022 06 20 (#2215)
* Update setuptools from 62.4.0 to 62.6.0

* Update charset-normalizer from 2.0.12 to 2.1.0

Co-authored-by: pyup-bot <github-bot@pyup.io>
2022-06-21 08:32:28 +02:00
Safihre
2eadc3ace6 Merge osx_menu, osx_speed and win_menu into tray_icon
See also #2214
2022-06-21 08:28:09 +02:00
SABnzbd Automation
786b29c18d Update translatable texts 2022-06-19 18:38:48 +00:00
Safihre
315f787d20 Prevent scheduler crash if event is canceled that was no longer queued
https://www.reddit.com/r/SABnzbd/comments/vfa1fr/what_is_causing_this_error_its_not_harming/
2022-06-19 20:38:04 +02:00
Safihre
0347907044 Prevent crash in new Quick-check if file was already moved 2022-06-16 13:53:54 +02:00
Joulinar
f2ae281195 Update sabyenc3 to 5.4.3 (#2209)
* Update requirements.txt

Update requirements sabyenc3 to new version

* Update sabyenc3 to 5.4.3

Update sabyenc3 to 5.4.2
2022-06-15 13:24:12 +02:00
Safihre
a4f76d59b0 Prevent showing crash on Status window during Shutdown 2022-06-14 11:36:00 +02:00
Safihre
52a3e04eae Fix macOS cffi version and test orjson by installing build requirements 2022-06-14 11:26:25 +02:00
pyup.io bot
390abb00df Scheduled weekly dependency update for week 24 (#2208)
* Update pyinstaller-hooks-contrib from 2022.6 to 2022.7

* Update setuptools from 62.3.2 to 62.4.0

* Update pkginfo from 1.8.2 to 1.8.3

* Update orjson from 3.7.1 to 3.7.2
2022-06-14 10:58:38 +02:00
dependabot[bot]
02c50e4b17 Bump actions/setup-python from 3 to 4 (#2207)
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 3 to 4.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-13 13:35:42 +02:00
Sander
8c8a78c0ab Less narrow exception handling with publicipv4 (#2202)
* wider exception handling

* Easier coding for easier reading

* Easier coding for easier reading

* except Exception:
2022-06-09 20:05:25 +02:00
Safihre
fb75cde710 Print hashes for Synology release 2022-06-09 08:47:17 +02:00
Safihre
fc855dccff Remove enable_https_verification from possible deprecation list 2022-06-07 09:31:22 +02:00
pyup.io bot
3d57def676 Scheduled weekly dependency update for week 23 (#2198)
* Update orjson from 3.6.8 to 3.7.1

* Update jaraco.text from 3.7.0 to 3.8.0
2022-06-06 22:51:42 +02:00
pyup.io bot
74d2da8857 Update pyinstaller-hooks-contrib from 2022.5 to 2022.6 (#2195) 2022-05-31 00:12:43 +02:00
Safihre
8cfd721ef6 Prevent unnecessary update API-calls when searching 2022-05-30 14:48:30 +02:00
Safihre
d4e10f32e7 Added filtering for Queue (category, priority) and History (category)
Closes #1158
2022-05-30 10:55:19 +02:00
Safihre
5a7cff491d Update sabyenc3 to 5.4.2 2022-05-29 14:29:09 +02:00
puzzledsab
392ae695d0 Change variable names from completed to remaining for consistency and fix sort order (#2194) 2022-05-29 13:01:15 +02:00
SABnzbd Automation
b39effc067 Update translatable texts 2022-05-28 18:23:22 +00:00
Safihre
908f4f01cf Update develop branch to 3.7.0-develop 2022-05-28 20:22:43 +02:00
Safihre
8baab13192 Additional refactor of queue sorting 2022-05-27 22:17:05 +02:00
SABnzbd Automation
abb38d3e49 Update translatable texts 2022-05-27 17:50:11 +00:00
puzzledsab
d0016e390a Optimize sort_queue_function (#2192) 2022-05-27 19:49:33 +02:00
puzzledsab
c80012e367 Remove redundant if in _nzo_completed_cmp (#2191) 2022-05-26 22:19:31 +02:00
SABnzbd Automation
19fc60a1d8 Update translatable texts 2022-05-26 09:58:29 +00:00
puzzledsab
487c9e96ce Add sort by completedness (#2186)
* Add sort by completedness

* Change sortCompleted text and move resort code

* Update explain-auto_sort

* Split explain-auto_sort for easier translation update
2022-05-26 11:57:46 +02:00
Safihre
cd337cb164 NZB files not removed when rejected by pre-queue script
Closes #2188
2022-05-24 17:25:47 +02:00
Safihre
5c15747d62 Also check for writing of special characters even if sanitize_safe is on
Relates to #2165
2022-05-24 10:39:35 +02:00
Safihre
7f11e6946b Scheduled weekly dependency update for week 21 (#2189)
* Update pyinstaller from 5.0.1 to 5.1

* Update pyinstaller-hooks-contrib from 2022.4 to 2022.5

* Update setuptools from 62.2.0 to 62.3.2

* Update sabyenc3 from 5.3.0 to 5.4.0

* Update feedparser from 6.0.8 to 6.0.10

* Update ujson from 5.2.0 to 5.3.0

* Update sabyenc3 to 5.4.1

Co-authored-by: pyup-bot <github-bot@pyup.io>
2022-05-24 10:16:31 +02:00
SABnzbd Automation
8fa77691d0 Update translatable texts 2022-05-23 14:41:12 +00:00
Safihre
894e5910c3 Also allow "cat" to filter categories on history call 2022-05-23 16:40:16 +02:00
SABnzbd Automation
54f33a72c4 Update translatable texts 2022-05-23 09:26:34 +00:00
Safihre
566f90ff30 Switched noslots and noslots_total
Closes #2187
2022-05-23 11:25:57 +02:00
SABnzbd Automation
debc59744f Update translatable texts 2022-05-19 10:31:16 +00:00
Safihre
33c6ac813c Update text files for 3.6.0RC2 2022-05-19 12:30:35 +02:00
Safihre
04875d07c5 Update sabyenc3 to 5.3.0 2022-05-19 12:20:01 +02:00
SABnzbd Automation
39eb594e12 Update translatable texts 2022-05-18 11:56:30 +00:00
Safihre
2561182126 Remove unused and undocumented API-calls 2022-05-18 13:46:58 +02:00
SABnzbd Automation
a68ab27bac Update translatable texts 2022-05-17 08:33:00 +00:00
Safihre
c27acb0e90 Warn users that we want to remove some settings 2022-05-17 10:32:02 +02:00
SABnzbd Automation
875d1ab952 Update translatable texts 2022-05-17 08:30:21 +00:00
Safihre
3496480254 Remove unused option movie_extra_folder 2022-05-17 10:29:27 +02:00
pyup.io bot
2ca79ab3b9 Scheduled weekly dependency update for week 20 (#2181)
* Update setuptools from 62.1.0 to 62.2.0

* Update puremagic from 1.12 to 1.14
2022-05-17 07:42:11 +02:00
Safihre
51ce7b657c Use directory of Default Category if the NZB-Category doesn't have one
Closes #2179
2022-05-16 13:45:31 +02:00
Safihre
67a34dcc78 Test for consistency of sabyenc3 version between code and requirements 2022-05-16 13:42:20 +02:00
Safihre
81d27ece54 Update BPS when we delay the Downloader due to full queues
Prevents "constant" speed that users see
2022-05-13 16:08:29 +02:00
Koen van Wijngaarden
f3a2e54e61 Disable password manager autofill on socks5 field (#2177)
* disable password manager autofill on socks5 field

* autocomplete="off" in socks5 field
2022-05-12 23:04:59 +02:00
Safihre
1894ed72e3 Move the building of source distribution to macOS job 2022-05-12 16:51:29 +02:00
SABnzbd Automation
64bf7d541e Update translatable texts 2022-05-12 09:33:36 +00:00
Safihre
8beba13430 Update text files for 3.6.0RC1 2022-05-12 11:32:40 +02:00
Safihre
6379869d41 Also create complete directory, if it does not exists 2022-05-12 10:52:28 +02:00
Safihre
5a666a28ef Remove tr language files (empty) 2022-05-12 09:56:54 +02:00
SABnzbd Automation
3c80053010 Update translatable texts 2022-05-12 06:37:57 +00:00
jcfp
7fd4941923 Add bash completion (#2175)
* add bash completion

* restore missing return for --server
2022-05-12 08:37:15 +02:00
SABnzbd Automation
b42e600285 Update translatable texts 2022-05-11 17:41:00 +00:00
Sander
df8859d49e Check filesystem capability for writing and writing filenames with special characters (#2167)
* functions to test directory for writing capabilities

* functions to test directory for writing capabilities

* use checking in postproc, and give warning if needed

* use checking in postproc, and give warning if needed

* put into function, with translatable folder names

* remove test file if still there

* better message formatting

* remove friendly directory name. Less comments

* move stuff into filesystem.py

* clean it up

* unit test for check_directory_writing_capability on tempdir

* unit test for check_directory_writing_capability on tempdir

* unit test for check_directory_writing_capability on tempdir

* unit test for check_directory_writing_capability on tempdir

* unit test for check_directory_writing_capability on tempdir

* Update sabnzbd/filesystem.py

Co-authored-by: Safihre <safihre@sabnzbd.org>

* feedback processed

* feedback processed

* feedback processed

* Merge remote-tracking branch 'origin/check_filesystem_capabilty' into check_filesystem_capabilty

# Conflicts:
#	sabnzbd/filesystem.py

* typo: uniformed on "writable"

Co-authored-by: Safihre <safihre@sabnzbd.org>
2022-05-11 19:40:19 +02:00
Safihre
d62d006398 Do not show extrapar files twice in get_files API-call
Regression from the removal of QNFO tuples.
2022-05-11 14:17:03 +02:00
Safihre
dadf1bdcc1 Use orjson with fallback to ujson/json 2022-05-10 15:04:30 +02:00
pyup.io bot
da961b7722 Scheduled weekly dependency update for week 19 (#2174)
* Update cryptography from 37.0.1 to 37.0.2

* Update cryptography from 37.0.1 to 37.0.2

* Update more-itertools from 8.12.0 to 8.13.0
2022-05-10 03:14:53 +02:00
SABnzbd Automation
087326ed32 Update translatable texts 2022-05-06 18:59:46 +00:00
Safihre
fc9f66e3e2 Update test_par2file 2022-05-06 20:59:02 +02:00
Safihre
cb25e0dcb3 Add test to see if every option has a Wiki-entry
Maybe annoying, but needed.
2022-05-05 12:54:09 +02:00
Safihre
88da458c2b Allow multiple parameters to be passed to par2cmdline/Multipar
Closes #2172
2022-05-05 08:39:09 +02:00
SABnzbd Automation
705b3aa74e Update translatable texts 2022-05-04 14:30:21 +00:00
Safihre
f35bfa45db Update text files for 3.6.0Beta6 2022-05-04 16:29:09 +02:00
SABnzbd Automation
cc59037fbc Update translatable texts 2022-05-04 11:44:09 +00:00
Safihre
1c442128dd Small changes to osxmenu 2022-05-04 13:40:25 +02:00
Safihre
d70d8d34dc Delay in test_adding_nzbs_nzoids to allow transition to History 2022-05-03 09:30:14 +02:00
Safihre
2c972995d3 UnRar on Windows escapes quotes by double quoting them 2022-05-03 09:30:14 +02:00
Safihre
794f6239bb Pyup/scheduled update 2022 05 02 (#2168)
* Update cryptography from 36.0.2 to 37.0.1

* Update cryptography from 36.0.2 to 37.0.1

* Update wrapt from 1.14.0 to 1.14.1

* Update pywin32 from 303 to 304

Co-authored-by: pyup-bot <github-bot@pyup.io>
2022-05-03 08:46:31 +02:00
SABnzbd Automation
5f498c3bb1 Update translatable texts 2022-05-02 10:52:58 +00:00
Safihre
8efce7430f Refactor queue-API data collection and XML output changes 2022-05-02 12:51:56 +02:00
SABnzbd Automation
fa3bf93464 Update translatable texts 2022-04-28 20:12:24 +00:00
Safihre
ff1f0986cf Remove "eta" API-fields from main queue and slots
Please let me know if this is a problem.
2022-04-28 22:11:33 +02:00
SABnzbd Automation
a1601a0c1f Update translatable texts 2022-04-28 20:03:12 +00:00
Safihre
2f457c2721 Remove unused texts from skintext and add test for it 2022-04-28 22:02:31 +02:00
Safihre
02c9d0d387 Keep nzo.md5packs for backwards compatibility 2022-04-28 20:18:31 +02:00
Safihre
9b002fe568 Set minval for num_simd_decoders 2022-04-28 20:15:53 +02:00
Safihre
73ec5df88d Move test_adding_nzbs_nzoids to separate module to have a clean instance 2022-04-28 11:08:50 +02:00
Safihre
82e0635995 Previous tests could break nzo_ids test 2022-04-27 14:30:53 +02:00
SABnzbd Automation
da0ff7be27 Update translatable texts 2022-04-27 06:54:31 +00:00
Safihre
569260b396 Update text files for 3.6.0Beta4 2022-04-27 08:53:32 +02:00
Safihre
bbce0afbf4 Add tests for correct nzo_ids on failed NZBs 2022-04-26 16:00:08 +02:00
Safihre
33022d82c4 Remove undocumented "xcat" API-option 2022-04-26 12:44:43 +02:00
Safihre
a7c29fa317 Refactor NZB rejection, no nzo_ids were returned for Fail to history
See: https://forums.sabnzbd.org/viewtopic.php?p=127386
2022-04-26 12:36:46 +02:00
Safihre
8974944044 Make sure duplicate md5of16k hashes are not used in Quick-check 2022-04-26 08:34:19 +02:00
pyup.io bot
60c86a45da Scheduled weekly dependency update for week 17 (#2163)
* Update pyinstaller from 5.0 to 5.0.1

* Update pyobjc from 8.4.1 to 8.5
2022-04-26 07:09:56 +02:00
Safihre
92883f313a Improve new Quick-check implementation
We only care about missing/broken articles in files that we have par2 for. So we check for each NZF if it has bad articles, and only fail if it is part of a par2 set. Additionally we check if the file size matches the one from par2.

Since this also enables CRC check for sabyenc3, it will be slower and the default of num_simd_decoders is increased to 2.
2022-04-25 13:45:49 +02:00
Safihre
ce4524e2bb Do not show traceback when getipaddress functions timeout 2022-04-21 11:26:17 +02:00
SABnzbd Automation
fdf4242a6c Update translatable texts 2022-04-20 23:44:32 +00:00
Safihre
e44c603ba7 Interface did not default correctly to Glitter - Auto 2022-04-21 01:43:44 +02:00
Safihre
1f30714e17 Move Black to CI Test workflow 2022-04-19 09:43:05 +02:00
SABnzbd Automation
36f32f518f Update translatable texts 2022-04-19 07:39:29 +00:00
Safihre
bdbd02fa0b Warn in case there are no valid servers
https://forums.sabnzbd.org/viewtopic.php?p=127310
2022-04-19 09:38:42 +02:00
pyup.io bot
0a1e018144 Scheduled weekly dependency update for week 16 (#2159)
* Update pyinstaller from 4.10 to 5.0

* Update pyinstaller-hooks-contrib from 2022.3 to 2022.4
2022-04-19 06:38:02 +02:00
dependabot[bot]
601649e028 Bump stefanzweifel/git-auto-commit-action from 4.14.0 to 4.14.1 (#2157)
Bumps [stefanzweifel/git-auto-commit-action](https://github.com/stefanzweifel/git-auto-commit-action) from 4.14.0 to 4.14.1.
- [Release notes](https://github.com/stefanzweifel/git-auto-commit-action/releases)
- [Changelog](https://github.com/stefanzweifel/git-auto-commit-action/blob/master/CHANGELOG.md)
- [Commits](https://github.com/stefanzweifel/git-auto-commit-action/compare/v4.14.0...v4.14.1)

---
updated-dependencies:
- dependency-name: stefanzweifel/git-auto-commit-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-04-18 15:29:28 +02:00
Sander
7c17dc64c9 Solve traceback and failing GUI when unknown language setting sabnzbd.ini (#2156)
* solve traceback and failing GUI when unknown langauge setting in sabnzbd.ini

* make black happy

* make black happy
2022-04-16 22:17:37 +02:00
SABnzbd Automation
647f04b6f0 Update translatable texts 2022-04-14 11:08:25 +00:00
160 changed files with 4404 additions and 8815 deletions

36
.github/renovate.json vendored Normal file
View File

@@ -0,0 +1,36 @@
{
"$schema":"https://docs.renovatebot.com/renovate-schema.json",
"extends":[
"config:base",
":disableDependencyDashboard"
],
"schedule":[
"before 3am on Monday"
],
"ignorePaths":[
"tests/**",
".github/workflows/**"
],
"pip_requirements":{
"fileMatch":[
"requirements.txt",
"builder/requirements.txt",
"builder/osx/requirements.txt"
]
},
"ignoreDeps":[
"jaraco.text"
],
"packageRules":[
{
"matchPackagePatterns":[
"*"
],
"groupName":"all dependencies",
"groupSlug":"all",
"automerge":true
}
],
"automergeStrategy":"squash",
"platformAutomerge":true
}

View File

@@ -1,23 +0,0 @@
name: Black Code Formatter
on: [push, pull_request]
jobs:
black:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Black Code Formatter
uses: lgeiger/black-action@master
with:
args: >
SABnzbd.py
sabnzbd
scripts
tools
builder
builder/SABnzbd.spec
tests
--line-length=120
--target-version=py37
--check
--diff

View File

@@ -2,8 +2,10 @@ name: Build binaries and source distribution
on: [push, pull_request]
# Setting PYTHONNODEBUGRANGES reduces binary size
env:
AUTOMATION_GITHUB_TOKEN: ${{ secrets.AUTOMATION_GITHUB_TOKEN }}
PYTHONNODEBUGRANGES: 1
jobs:
build_windows:
@@ -12,10 +14,10 @@ jobs:
timeout-minutes: 30
steps:
- uses: actions/checkout@v3
- name: Set up Python 3.10 (64bit)
uses: actions/setup-python@v3
- name: Set up Python 3.11 (64bit)
uses: actions/setup-python@v4
with:
python-version: "3.10"
python-version: "3.11.0-rc.2"
architecture: "x64"
- name: Cache Python virtualenv (64bit)
uses: syphar/restore-virtualenv@v1.2
@@ -33,13 +35,6 @@ jobs:
pip install --upgrade pip wheel
pip install --upgrade -r requirements.txt
pip install --upgrade -r builder/requirements.txt
- name: Build source distribution
run: python builder/package.py source
- name: Upload source distribution
uses: actions/upload-artifact@v3
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)
@@ -53,7 +48,7 @@ jobs:
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@v4
with:
python-version: "3.8"
architecture: "x86"
@@ -95,10 +90,11 @@ 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.11.0"
MACOSX_DEPLOYMENT_TARGET: "10.9"
# We need to force compile for universal2 support
CFLAGS: -arch arm64 -arch x86_64
CFLAGS: -arch x86_64 -arch arm64
ARCHFLAGS: -arch x86_64 -arch arm64
steps:
- uses: actions/checkout@v3
- name: Cache Python download
@@ -109,7 +105,7 @@ jobs:
key: macOS-Python-${{ env.PYTHON_VERSION }}
- name: Get Python
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
run: curl https://www.python.org/ftp/python/${PYTHON_VERSION}/python-${PYTHON_VERSION}rc2-macos11.pkg -o ~/python.pkg
- name: Install Python
run: |
sudo installer -pkg ~/python.pkg -target /
@@ -124,27 +120,26 @@ jobs:
**/requirements.txt
PKG-INFO
- 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
# of libffi with XCode. So we forcefully have to remove the Homebrew one.
# 2. Because building cryptography is hard, and we cannot force pip to fetch universal2 version we
# We have to manually take a few steps:
# 1. Because building cryptography is hard, and we cannot force pip to fetch universal2 version we
# first install the x86 version (and it's dependencies) and then manually fetch the universal2 build
# https://github.com/pyca/cryptography/issues/5918
# 3. We need to build the PyInstaller bootloader from sources:
# 2. We need to build the PyInstaller bootloader:
# https://github.com/pyinstaller/pyinstaller/issues/6235
# 3. TEMPORARY: Add aarch64 for orjson universal2 build, until they provide a wheel
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 cffi
pip3 uninstall cryptography -y
pip3 download -r builder/osx/requirements.txt --platform macosx_10_10_universal2 --only-binary :all: --no-deps --dest .
pip3 install -r builder/osx/requirements.txt --no-cache-dir --no-index --find-links .
rustup target add aarch64-apple-darwin
PYINSTALLER_COMPILE_BOOTLOADER=1 pip3 install --upgrade -r builder/requirements.txt --no-binary pyinstaller
- name: Import macOS codesign certificates
uses: apple-actions/import-codesign-certs@v1
@@ -152,6 +147,14 @@ jobs:
with:
p12-file-base64: ${{ secrets.CERTIFICATES_P12 }}
p12-password: ${{ secrets.CERTIFICATES_P12_PASSWORD }}
- name: Build source distribution
# Run this on macOS so the line endings are correct by default
run: python builder/package.py source
- name: Upload source distribution
uses: actions/upload-artifact@v3
with:
path: "*-src.tar.gz"
name: Source distribution
- name: Build macOS binary
run: |
python3 builder/package.py app
@@ -170,15 +173,14 @@ jobs:
runs-on: ubuntu-latest
if: github.event_name == 'push' && contains(github.ref, 'refs/tags/')
env:
SNAP_TOKEN: ${{ secrets.SNAP_TOKEN }}
SNAPCRAFT_STORE_CREDENTIALS: ${{ secrets.SNAP_TOKEN }}
steps:
- uses: actions/checkout@v3
- name: Set up Python
uses: actions/setup-python@v3
uses: actions/setup-python@v4
with:
python-version: "3.x"
- name: Release latest available Snap
run: |
sudo snap install snapcraft --classic
echo "${SNAP_TOKEN}" | snapcraft login --with -
python3 snap/local/release_snap.py

View File

@@ -3,6 +3,27 @@ name: CI Tests
on: [push, pull_request]
jobs:
black:
name: Black Code Formatter
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Black Code Formatter
uses: lgeiger/black-action@master
with:
args: >
SABnzbd.py
sabnzbd
scripts
tools
builder
builder/SABnzbd.spec
tests
--line-length=120
--target-version=py37
--check
--diff
test:
name: Test ${{ matrix.name }} - Python ${{ matrix.python-version }}
runs-on: ${{ matrix.os }}
@@ -10,7 +31,7 @@ jobs:
strategy:
fail-fast: false
matrix:
python-version: ["3.7", "3.8", "3.9", "3.10"]
python-version: ["3.7", "3.8", "3.9", "3.10", "3.11.0-rc.2"]
os: [ubuntu-20.04]
include:
- name: macOS
@@ -23,7 +44,7 @@ jobs:
steps:
- uses: actions/checkout@v3
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v3
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
- name: Install system dependencies
@@ -41,6 +62,7 @@ jobs:
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

View File

@@ -7,11 +7,14 @@ on:
jobs:
translations:
name: Update translatable texts
runs-on: ubuntu-latest
env:
TX_TOKEN: ${{ secrets.TX_TOKEN }}
steps:
- uses: actions/checkout@v3
with:
token: ${{ secrets.AUTOMATION_GITHUB_TOKEN }}
- name: Generate translatable texts
run: |
python3 tools/extract_pot.py
@@ -30,10 +33,13 @@ 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.14.1
if: env.TX_TOKEN
with:
commit_message: Update translatable texts
commit_message: |
Update translatable texts
[skip ci]
commit_user_name: SABnzbd Automation
commit_user_email: bugs@sabnzbd.org
commit_author: SABnzbd Automation <bugs@sabnzbd.org>
push_options: --force

View File

@@ -1,6 +0,0 @@
branch: develop
schedule: every week
update: all
pin: False
label_prs: dependencies
branch_prefix: pyup/

View File

@@ -53,3 +53,6 @@
to your servers to a total of 7. There is a CPU-usage reduction feature in SABnzbd that
gets confused by the way some VPN's handle the state of a connection. Below 8 connections
this feature is not active.
- If the queue is paused but one or more jobs have the Force priority, SABnzbd might still
download some data from other jobs in the queue if active servers have unused connections.

View File

@@ -1,7 +1,7 @@
Metadata-Version: 1.0
Name: SABnzbd
Version: 3.6.0Beta4
Summary: SABnzbd-3.6.0Beta4
Version: 3.7.0Alpha1
Summary: SABnzbd-3.7.0Alpha1
Home-page: https://sabnzbd.org
Author: The SABnzbd Team
Author-email: team@sabnzbd.org

View File

@@ -1,46 +1,35 @@
Release Notes - SABnzbd 3.6.0 Beta 4
Release Notes - SABnzbd 3.7.0 Alpha 1
=========================================================
## Changes and bugfixes since 3.6.0 Beta 3
- Reverted changes to file assembly.
- Implemented new Quick-check method.
## Changes since 3.6.1
- The queue and history can be filtered using keywords:
`cat` and `priority`. For example: `show name cat:tv`.
- Use shortcut `shift + arrow-key` to navigate the queue/history pages.
- The backup is now created in a local folder for security.
- Recurring backups can be configured using the scheduler.
- Improvements to Deobfuscate File Filenames.
- RSS overview shows the rule that accepted the job.
- Added option to sort the queue by `% downloaded`.
- Added option to replace underscores with dots in folder names.
- SABnzbd Host input will be validated before being applied.
- Moved system load information from the main page to the Status window.
- Removed Special settings `enable_meta`, `disable_key`,
`replace_illegal`, `osx_speed` and `show_sysload`.
- Merged Special settings `win_menu` and `osx_menu` into `tray_icon`.
- macOS/Windows: Use Python 3.11rc2, boosting general performance.
## 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.
# API changes since 3.6.1
- Minor improvements in API call performance.
- Removed fields `scripts` and `categories` from `queue` API call.
- Moved `loadavg` from `queue` to `status` API call.
## 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.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.6.1
- Free Space Detection was too strict when using Direct Unpack.
- File uploads with special characters would be parsed incorrectly.
- Passwords from NZB meta-data were tried multiple times.
- Passwords were not always supplied to the pre-queue script.
- Make sure also short-dates are detected as `YY-MM-DD` in Sorting.
- Show the custom job name in History when the NZB could not be fetched.
## Upgrade notices
- The download statistics file `totals10.sab` is updated in 3.2.x

View File

@@ -64,7 +64,7 @@ from sabnzbd.constants import (
DEF_TIMEOUT,
DEF_LOG_ERRFILE,
DEF_MAIN_TMPL,
DEF_STDINTF,
DEF_STD_WEB_DIR,
DEF_WORKDIR,
DEF_INTERFACES,
DEF_LANGUAGE,
@@ -74,7 +74,7 @@ from sabnzbd.constants import (
MAX_WARNINGS,
RSS_FILE_NAME,
DEF_LOG_FILE,
DEF_STDCONFIG,
DEF_STD_CONFIG,
DEF_LOG_CHERRY,
)
import sabnzbd.newsunpack
@@ -326,7 +326,7 @@ def identify_web_template(key, defweb, wdir):
if not os.path.exists(full_main):
helpful_warning(T("Cannot find web template: %s, trying standard template"), full_main)
full_dir = real_path(sabnzbd.DIR_INTERFACES, DEF_STDINTF)
full_dir = real_path(sabnzbd.DIR_INTERFACES, DEF_STD_WEB_DIR)
full_main = real_path(full_dir, DEF_MAIN_TMPL)
if not os.path.exists(full_main):
logging.exception("Cannot find standard template: %s", full_dir)
@@ -1208,6 +1208,9 @@ def main():
sabnzbd.ORG_UMASK,
)
# Log JSON module in case of problems
logging.debug("JSON-module = %s %s", sabnzbd.api.json.__name__, sabnzbd.api.json.__version__)
# SSL Information
logging.info("SSL version = %s", ssl.OPENSSL_VERSION)
@@ -1249,15 +1252,15 @@ def main():
os.chdir(sabnzbd.DIR_PROG)
sabnzbd.WEB_DIR = identify_web_template(sabnzbd.cfg.web_dir, DEF_STDINTF, fix_webname(web_dir))
sabnzbd.WEB_DIR_CONFIG = identify_web_template(None, DEF_STDCONFIG, "")
sabnzbd.WEB_DIR = identify_web_template(sabnzbd.cfg.web_dir, DEF_STD_WEB_DIR, fix_webname(web_dir))
sabnzbd.WEB_DIR_CONFIG = identify_web_template(None, DEF_STD_CONFIG, "")
sabnzbd.WIZARD_DIR = os.path.join(sabnzbd.DIR_INTERFACES, "wizard")
sabnzbd.WEB_COLOR = check_template_scheme(sabnzbd.cfg.web_color(), sabnzbd.WEB_DIR)
sabnzbd.cfg.web_color.set(sabnzbd.WEB_COLOR)
# Handle the several tray icons
if sabnzbd.cfg.win_menu() and not sabnzbd.DAEMON and not sabnzbd.WIN_SERVICE:
if sabnzbd.cfg.tray_icon() and not sabnzbd.DAEMON and not sabnzbd.WIN_SERVICE:
if sabnzbd.WIN32:
sabnzbd.WINTRAY = sabnzbd.sabtray.SABTrayThread()
elif sabnzbd.LINUX_POWER and os.environ.get("DISPLAY"):
@@ -1268,7 +1271,7 @@ def main():
from gi.repository import Gtk
import sabnzbd.sabtraylinux
sabnzbd.LINUXTRAY = sabnzbd.sabtraylinux.StatusIcon()
sabnzbd.sabtraylinux.StatusIcon()
except:
logging.info("python3-gi not found, no SysTray.")

View File

@@ -122,7 +122,7 @@ pyi_analysis = Analysis(
["SABnzbd.py"],
datas=extra_pyinstaller_files,
hiddenimports=extra_hiddenimports,
excludes=["FixTk", "tcl", "tk", "_tkinter", "tkinter", "Tkinter"],
excludes=["ujson", "FixTk", "tcl", "tk", "_tkinter", "tkinter", "Tkinter"],
)
pyz = PYZ(pyi_analysis.pure, pyi_analysis.zipped_data)

View File

@@ -1,3 +1,3 @@
# Special requirements for macOS universal2 binary release
# This way dependabot can auto-update them
cryptography==36.0.2
cryptography==38.0.1

View File

@@ -16,6 +16,7 @@
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
import glob
import hashlib
import platform
import re
import sys
@@ -482,6 +483,16 @@ if __name__ == "__main__":
# Remove source folder
safe_remove(src_folder)
# Calculate hashes for Synology release
with open(RELEASE_SRC, "rb") as inp_file:
source_data = inp_file.read()
print("----")
print(RELEASE_SRC, "SHA1", hashlib.sha1(source_data).hexdigest())
print(RELEASE_SRC, "SHA256", hashlib.sha256(source_data).hexdigest())
print(RELEASE_SRC, "MD5", hashlib.md5(source_data).hexdigest())
print("----")
# Release to github
if "release" in sys.argv:
# Check if tagged as release and check for token

View File

@@ -1,18 +1,23 @@
# 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==5.4.1; python_version < '3.11'
git+https://github.com/pyinstaller/pyinstaller.git; python_version > '3.10'
pyinstaller-hooks-contrib==2022.10
altgraph==0.17.2
wrapt==1.14.0
setuptools==62.1.0
pkginfo==1.8.2
wrapt==1.14.1
setuptools==65.3.0
pkginfo==1.8.3
PyGithub==1.55
charset-normalizer==2.0.12
charset-normalizer==2.1.1
certifi
# orjson does not support 32bit Windows, exclude it based on Python-version
# This way we also test ujson on Python 3.7 and 3.8 in the CI-tests
orjson==3.8.0; python_version > '3.8'
# 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'
ds-store==1.3.0; sys_platform == 'darwin'
PyNaCl==1.5.0; sys_platform == 'darwin'
PyNaCl==1.5.0; sys_platform == 'darwin'

View File

@@ -1,5 +1,5 @@
<!--#set global $pane="Config"#-->
<!--#set global $help_uri="configuration/3.6/configure"#-->
<!--#set global $help_uri="configuration/3.7/configure"#-->
<!--#include $webdir + "/_inc_header_uc.tmpl"#-->
<!--#from sabnzbd.encoding import CODEPAGE#-->

View File

@@ -1,5 +1,5 @@
<!--#set global $pane="Categories"#-->
<!--#set global $help_uri="configuration/3.6/categories"#-->
<!--#set global $help_uri="configuration/3.7/categories"#-->
<!--#include $webdir + "/_inc_header_uc.tmpl"#-->
<div class="colmask">
<div class="section">

View File

@@ -1,5 +1,5 @@
<!--#set global $pane="Folders"#-->
<!--#set global $help_uri="configuration/3.6/folders"#-->
<!--#set global $help_uri="configuration/3.7/folders"#-->
<!--#include $webdir + "/_inc_header_uc.tmpl"#-->
<div class="colmask">
@@ -104,6 +104,11 @@
<span class="desc">$T('explain-admin_dir1')</span>
<span class="desc">$T('explain-admin_dir2')</span>
</div>
<div class="field-pair">
<label class="config" for="backup_dir">$T('opt-backup_dir')</label>
<input type="text" name="backup_dir" id="backup_dir" value="$backup_dir" data-initialdir="$my_home" />
<span class="desc">$T('explain-backup_dir')</span>
</div>
<div class="field-pair">
<label class="config" for="log_dir">$T('opt-log_dir')</label>
<input type="text" name="log_dir" id="log_dir" value="$log_dir" data-initialdir="$my_lcldata" />

View File

@@ -1,5 +1,5 @@
<!--#set global $pane="General"#-->
<!--#set global $help_uri="configuration/3.6/general"#-->
<!--#set global $help_uri="configuration/3.7/general"#-->
<!--#include $webdir + "/_inc_header_uc.tmpl"#-->
<div class="colmask">
@@ -181,7 +181,7 @@
</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" />
<input type="text" name="socks5_proxy_url" id="socks5_proxy_url" value="$socks5_proxy_url" autocomplete="off" placeholder="socks5://user:pass@hostname:port" />
<span class="desc">$T('explain-socks5_proxy_url') <br/>$T('readwiki')</span>
</div>
<div class="field-pair">
@@ -231,18 +231,18 @@
<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>
<label class="config" for="create_backup">$T('create-backup')</label>
<span class="desc"><button class="btn btn-default createBackup" type="button" id="create_backup"><span class="glyphicon glyphicon glyphicon-import"></span> $T('create-backup')</button></span>
<span class="desc">$T('explain-create_backup')</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>
<span class="desc">$T('restartRequired')</span>
</div>
<div class="field-pair">
<button class="btn btn-default saveButton"><span class="glyphicon glyphicon-open"></span> $T('restore-backup')</button>
@@ -399,6 +399,20 @@
}
})
\$('#create_backup').click(function () {
$.ajax({
type: "POST",
url: "../../api",
data: {mode:'config', name:'create_backup', output:'json', apikey: \$('#apikey').val()},
success: function(data) {
if(data.value.result) {
alert("$T('backup'):\n" + data.value.message)
} else {
alert("$T('button-failed')")
}
}
});
});
});
</script>

View File

@@ -1,5 +1,5 @@
<!--#set global $pane="Email"#-->
<!--#set global $help_uri="configuration/3.6/notifications"#-->
<!--#set global $help_uri="configuration/3.7/notifications"#-->
<!--#include $webdir + "/_inc_header_uc.tmpl"#-->
<!--#def show_notify_checkboxes($section_label)#-->

View File

@@ -1,5 +1,5 @@
<!--#set global $pane="RSS"#-->
<!--#set global $help_uri="configuration/3.6/rss"#-->
<!--#set global $help_uri="configuration/3.7/rss"#-->
<!--#include $webdir + "/_inc_header_uc.tmpl"#-->
<!--#import html#-->
<div class="colmask">
@@ -481,18 +481,22 @@
<thead>
<tr>
<th class="default-sort">$T('rss-added')</th>
<th>$T('rss-filter')</th>
<th>$T('size')</th>
<th width="60%">$T('sort-title')</th>
<th>$T('category')</th>
<th>$T('nzo-age')</th>
<th>$T('source')</th>
</tr>
</thead>
<!--#for $job in $downloaded#-->
<tr class="infoTableSeperator">
<td data-sort-value="$job['time_downloaded_ms']">$job['time_downloaded']</td>
<td>$job['rule'] $job['skip']</td>
<td data-sort-value="$job['size']">$job['size_units']</td>
<td>$job['title']</td>
<td>$job['cat']</td>
<td data-sort-value="$job['age_ms']">$job['age']</td>
<td data-sort-value="$job['baselink']" title="$job['baselink']">
<!--#if not $job['infourl']#-->
<div class="favicon source-icon" style="background-image: url(//$job['baselink']/favicon.ico);" data-domain="$job['baselink']"></div>

View File

@@ -1,5 +1,5 @@
<!--#set global $pane="Scheduling"#-->
<!--#set global $help_uri="configuration/3.6/scheduling"#-->
<!--#set global $help_uri="configuration/3.7/scheduling"#-->
<!--#include $webdir + "/_inc_header_uc.tmpl"#-->
<%

View File

@@ -1,5 +1,5 @@
<!--#set global $pane="Servers"#-->
<!--#set global $help_uri="configuration/3.6/servers"#-->
<!--#set global $help_uri="configuration/3.7/servers"#-->
<!--#include $webdir + "/_inc_header_uc.tmpl"#-->
<!--#import json#-->
@@ -49,7 +49,7 @@
<label class="config" for="host">$T('srv-host')</label>
<input type="text" name="host" id="host" required />
</div>
<div class="field-pair">
<div class="field-pair advanced-settings">
<label class="config" for="port">$T('srv-port')</label>
<input type="number" name="port" id="port" size="8" value="119" min="0" />
</div>
@@ -180,7 +180,7 @@
<label class="config" for="host$cur">$T('srv-host')</label>
<input type="text" name="host" id="host$cur" value="$server['host']" required />
</div>
<div class="field-pair">
<div class="field-pair advanced-settings">
<label class="config" for="port$cur">$T('srv-port')</label>
<input type="number" name="port" id="port$cur" value="$server['port']" size="8" min="0" required />
</div>
@@ -259,7 +259,7 @@
<label class="config" for="notes$cur">$T('srv-notes')</label>
<textarea name="notes" id="notes$cur" rows="3" cols="50">$server['notes']</textarea>
</div>
<div class="field-pair">
<div class="field-pair no-field-pair-bg">
<button class="btn btn-default saveButton"><span class="glyphicon glyphicon-ok"></span> $T('button-saveChanges')</button>
<button class="btn btn-default testServer" type="button"><span class="glyphicon glyphicon-sort"></span> $T('button-testServer')</button>
<button class="btn btn-default delServer"><span class="glyphicon glyphicon-trash"></span> $T('button-delServer')</button>
@@ -283,7 +283,8 @@
<p title="$T('readwiki')">
<b>$T('srv-article-availability'):</b><br/>
$T('selectedDates'): <span id="server-article-value-${cur}"></span>
$T('selectedDates'): <span id="server-article-value-${cur}"></span><br/>
<a href="https://sabnzbd.org/not-complete" id="server-article-not-complete-${cur}" target="_blank">https://sabnzbd.org/not-complete</a>
</p>
<!--#if $server['expire_date']#-->
<p><b>$T('srv-expire_date'):</b> $(server['expire_date'])</p>
@@ -402,8 +403,11 @@
if(!isNaN(articleRatio)) {
// Use filesize to convert to unit-display
\$('#server-article-value-' + server_id).text('$T("srv-articles-tried")'.replace('%f', articleRatio).replace('%d', filesize(totalArticlesTriedThisRange, {unix: true, round: 0, spacer: "", base: 1})))
// If we have a low value, we link them to the website
if(articleRatio > 60) \$('#server-article-not-complete-' + server_id).hide()
} else {
\$('#server-article-value-' + server_id).text('$T("notAvailable")')
\$('#server-article-not-complete-' + server_id).hide()
}
// Save bandwidth data in a very ugly way, but we need to do this

View File

@@ -1,5 +1,5 @@
<!--#set global $pane="Sorting"#-->
<!--#set global $help_uri="configuration/3.6/sorting"#-->
<!--#set global $help_uri="configuration/3.7/sorting"#-->
<!--#include $webdir + "/_inc_header_uc.tmpl"#-->
<div class="colmask">
@@ -242,10 +242,6 @@
<label class="config wide" for="enable_movie_sorting">$T('opt-movieSort')</label>
<input type="checkbox" name="enable_movie_sorting" id="enable_movie_sorting" value="1" <!--#if int($enable_movie_sorting)> 0 then 'checked="checked"' else ""#--> />
</div>
<div class="field-pair">
<label class="config wide" for="movie_extra_folder">$T('opt-movieExtra')</label>
<input type="checkbox" name="movie_extra_folder" id="movie_extra_folder" value="1" <!--#if int($movie_extra_folder)> 0 then 'checked="checked"' else ""#--> />
</div>
<div class="field-pair">
<label class="config" for="moviefoldername">$T('sortString')</label>
<input type="text" name="movie_sort_string" id="moviefoldername" value="$movie_sort_string" /><button class="btn btn-default clearBtn" type="button"><span class="glyphicon glyphicon-remove"></span> $T('button-clear')</button>
@@ -257,9 +253,9 @@
<div class="field-pair">
<label class="config">$T('presetSort')</label>
<div class="presets float-left">
<input type="button" class="btn btn-default" onclick="movieSet('%title (%y)/%title (%y).%ext',' CD%1');movieExtraFolder(false)" value="$T('button-inFolders')" />
<input type="button" class="btn btn-default" onclick="movieSet('%title (%y).%ext',' CD%1');movieExtraFolder(true)" value="$T('button-noFolders')" />
<input type="button" class="btn btn-default" onclick="movieSet('%0decade/%title (%y).%ext',' CD%1');movieExtraFolder(true)" value="$T('decade')" />
<input type="button" class="btn btn-default" onclick="movieSet('%title (%y)/%title (%y).%ext',' CD%1');" value="$T('button-inFolders')" />
<input type="button" class="btn btn-default" onclick="movieSet('%title (%y).%ext',' CD%1');" value="$T('button-noFolders')" />
<input type="button" class="btn btn-default" onclick="movieSet('%0decade/%title (%y).%ext',' CD%1');" value="$T('decade')" />
<input type="button" class="btn btn-default" onclick="movieSet('%dn.%ext')" value="$T('button-FileLikeFolder')" />
</div>
</div>
@@ -642,10 +638,6 @@
new_previewmovie();
}
function movieExtraFolder(value) {
\$('#movie_extra_folder').attr("checked", value);
}
function dateSet(val) {
\$('#datefoldername').val(val);
new_previewdate();

View File

@@ -1,5 +1,5 @@
<!--#set global $pane="Special"#-->
<!--#set global $help_uri="configuration/3.6/special"#-->
<!--#set global $help_uri="configuration/3.7/special"#-->
<!--#include $webdir + "/_inc_header_uc.tmpl"#-->
<div class="colmask">

View File

@@ -1,5 +1,5 @@
<!--#set global $pane="Switches"#-->
<!--#set global $help_uri="configuration/3.6/switches"#-->
<!--#set global $help_uri="configuration/3.7/switches"#-->
<!--#include $webdir + "/_inc_header_uc.tmpl"#-->
<div class="colmask">
@@ -141,6 +141,7 @@
<label class="config" for="auto_sort">$T('opt-auto_sort')</label>
<select name="auto_sort" id="auto_sort">
<option value="">$T('default')</option>
<option value="remaining asc" <!--#if $auto_sort == "remaining asc" then 'selected="selected"' else ""#--> >$T('Glitter-sortRemaining')</option>
<option value="avg_age desc" <!--#if $auto_sort == "avg_age desc" then 'selected="selected"' else ""#--> >$T('Glitter-sortAgeAsc')</option>
<option value="avg_age asc" <!--#if $auto_sort == "avg_age asc" then 'selected="selected"' else ""#--> >$T('Glitter-sortAgeDesc')</option>
<option value="name asc" <!--#if $auto_sort == "name asc" then 'selected="selected"' else ""#--> >$T('Glitter-sortNameAsc')</option>
@@ -148,7 +149,7 @@
<option value="size asc" <!--#if $auto_sort == "size asc" then 'selected="selected"' else ""#--> >$T('Glitter-sortSizeAsc')</option>
<option value="size desc" <!--#if $auto_sort == "size desc" then 'selected="selected"' else ""#--> >$T('Glitter-sortSizeDesc')</option>
</select>
<span class="desc">$T('explain-auto_sort')</span>
<span class="desc">$T('explain-auto_sort') $T('explain-auto_sort_remaining')</span>
</div>
<div class="field-pair">
<label class="config" for="direct_unpack">$T('opt-direct_unpack')</label>
@@ -247,11 +248,6 @@
<input type="checkbox" name="deobfuscate_final_filenames" id="deobfuscate_final_filenames" value="1" <!--#if int($deobfuscate_final_filenames) > 0 then 'checked="checked"' else ""#--> />
<span class="desc">$T('explain-deobfuscate_final_filenames') $T('explain-deobfuscate_final_filenames-ext')</span>
</div>
<div class="field-pair advanced-settings">
<label class="config" for="enable_meta">$T('opt-enable_meta')</label>
<input type="checkbox" name="enable_meta" id="enable_meta" value="1" <!--#if int($enable_meta) > 0 then 'checked="checked"' else ""#--> />
<span class="desc">$T('explain-enable_meta').replace('. ', '.<br/>')</span>
</div>
<div class="field-pair">
<label class="config" for="cleanup_list">$T('opt-cleanup_list')</label>
<input type="text" name="cleanup_list" id="cleanup_list" value="$cleanup_list"/>
@@ -292,6 +288,11 @@
<input type="checkbox" name="replace_spaces" id="replace_spaces" value="1" <!--#if int($replace_spaces) > 0 then 'checked="checked"' else ""#--> />
<span class="desc">$T('explain-replace_spaces')</span>
</div>
<div class="field-pair">
<label class="config" for="replace_underscores">$T('opt-replace_underscores')</label>
<input type="checkbox" name="replace_underscores" id="replace_underscores" value="1" <!--#if int($replace_underscores) > 0 then 'checked="checked"' else ""#--> />
<span class="desc">$T('explain-replace_underscores')</span>
</div>
<div class="field-pair">
<label class="config" for="replace_dots">$T('opt-replace_dots')</label>
<input type="checkbox" name="replace_dots" id="replace_dots" value="1" <!--#if int($replace_dots) > 0 then 'checked="checked"' else ""#--> />

View File

@@ -86,7 +86,7 @@
<div class="col-sm-2">$T('srv-password')</div>
<div class="col-sm-10" data-bind="text: historyStatus.password"></div>
</div>
<div class="row">
<div class="row" data-bind="visible: historyStatus.storage() || historyStatus.path()">
<div class="col-sm-2">$T('msg-path')</div>
<div class="col-sm-10" data-bind="text: historyStatus.storage() == '' ? historyStatus.path : historyStatus.storage"></div>
</div>

View File

@@ -43,7 +43,7 @@
<button type="button" class="btn btn-default navbar-btn dropdown-toggle" data-toggle="dropdown" onclick="keepOpen(this)">
<span class="caret"></span>
</button>
<a href="#" class="max-speed-input-clear hover-button" data-bind="click: clearSpeedLimit, visible:(speedLimit() != 100)" style="display: none;">
<a href="#" class="max-speed-input-clear hover-button" data-bind="click: clearSpeedLimit, visible:(speedLimit() < 100 && speedLimit() > 0)" style="display: none;">
<span class="glyphicon glyphicon-link"></span>
</a>
<div class="dropdown-menu max-speed-input">
@@ -81,7 +81,7 @@
<li data-tooltip="true" data-placement="bottom" title="SABnzbd $T('menu-config')">
<a href="./config/"><span class="glyphicon glyphicon-cog"></span></a>
</li>
<li class="dropdown main-menu-link" data-bind="css: { 'active-on-queue-finish-menu': onQueueFinish()}">
<li class="dropdown main-menu-link" data-bind="css: { 'active-on-queue-finish-menu': finishaction()}">
<a href="#" data-toggle="dropdown" onclick="keepOpen(this)">
<span class="icon-bar"></span>
<span class="icon-bar"></span>
@@ -102,7 +102,8 @@
<li class="divider"></li>
<li class="dropdown-header"><span class="glyphicon glyphicon-off"></span> $T('Glitter-onFinish'):</li>
<li>
<select data-bind="value: onQueueFinish, event: { change: setOnQueueFinish }" class="form-control">
<!-- ko if: queue.scriptsListLoaded -->
<select data-bind="value: finishaction, event: { change: setOnQueueFinish }" class="form-control">
<option value=""></option>
<optgroup label="$T('eoq-actions')">
<option value="shutdown_program">$T('shutdownSab')</option>
@@ -114,12 +115,13 @@
</optgroup>
<optgroup label="$T('eoq-scripts')" data-bind="visible: queue.scriptsList().length > 1">
<!-- ko foreach: queue.scriptsList -->
<!-- ko if: \$data != glitterTranslate.noneText -->
<option data-bind="text: \$data, attr: { value: 'script_'+\$data } " ></option>
<!-- ko if: \$data.scriptValue != 'None' -->
<option data-bind="text: \$data.scriptText, attr: { value: 'script_'+\$data.scriptValue } " ></option>
<!-- /ko -->
<!-- /ko -->
</optgroup>
</select>
<!-- /ko -->
</li>
</ul>
</li>

View File

@@ -117,6 +117,12 @@
<span data-bind="text: cacheSize"></span> (<span data-bind="text: cacheArticles"></span> $T('Glitter-articles'))
</div>
</div>
<div class="row" data-bind="visible: statusInfo.loadavg()">
<div class="col-sm-6">$T('dashboard-loadavg') &nbsp; </div>
<div class="col-sm-6">
<span data-bind="text: statusInfo.loadavg"></span>
</div>
</div>
<div class="row" data-bind="visible: statusInfo.delayed_decoder() > 5 || statusInfo.delayed_assembler() > 5">
<div class="col-sm-6">$T('dashboard-delayed') &nbsp; </div>
<div class="col-sm-6">
@@ -517,7 +523,7 @@
<div class="form-group">
<label class="col-sm-4 control-label">$T('category')</label>
<div class="col-sm-6">
<select name="Category" class="form-control" data-bind="options: queue.categoriesList, optionsValue: 'catValue', optionsText: 'catText',"></select>
<select name="Category" class="form-control" data-bind="options: queue.categoriesList, optionsValue: 'catValue', optionsText: 'catText'"></select>
<span class="glyphicon glyphicon-tag"></span>
</div>
</div>
@@ -538,7 +544,7 @@
<div class="form-group">
<label class="col-sm-4 control-label">$T('eoq-scripts')</label>
<div class="col-sm-6">
<select name="Post-processing" class="form-control" data-bind="options: queue.scriptsList, optionsCaption: '$T('default')', enable: (queue.scriptsList().length > 1)"></select>
<select name="Post-processing" class="form-control" data-bind="options: queue.scriptsList, optionsCaption: '$T('default')', optionsValue: 'scriptValue', optionsText: 'scriptText', enable: (queue.scriptsList().length > 1)"></select>
<span class="glyphicon glyphicon-flash"></span>
</div>
</div>

View File

@@ -9,12 +9,6 @@
</a>
</div>
<!-- /ko -->
<!--#if $loadavg#-->
<div class="info-container-box" title="$T('ft-sysload') - $T('menu-config') &#10140; $T('cmenu-special') &#10140; show_sysload">
<span class="glyphicon glyphicon-record"></span>
<span data-bind="text: systemLoad"></span>
</div>
<!--#end if#-->
<!-- ko if: (queueDataLeft() != '') -->
<div class="info-container-box">
<span class="glyphicon glyphicon-save"></span>
@@ -52,6 +46,7 @@
<span class="glyphicon glyphicon-tasks" data-tooltip="true" data-placement="left" title="$T('Glitter-multiOperations')"></span>
</a>
<ul class="dropdown-menu">
<li><a href="#" data-action="sortRemainingAsc" data-bind="click: queue.queueSorting">$T('Glitter-sortRemaining')</a></li>
<li><a href="#" data-action="sortAgeAsc" data-bind="click: queue.queueSorting">$T('Glitter-sortAgeAsc')</a></li>
<li><a href="#" data-action="sortAgeDesc" data-bind="click: queue.queueSorting">$T('Glitter-sortAgeDesc')</a></li>
<li><a href="#" data-action="sortNameAsc" data-bind="click: queue.queueSorting">$T('Glitter-sortNameAsc')</a></li>
@@ -162,7 +157,7 @@
</li>
<li title="$T('eoq-scripts')" data-tooltip="true" data-placement="left">
<span class="glyphicon glyphicon-flash"></span>
<select name="Post-processing" class="form-control" data-bind="options: parent.scriptsList, value: script, event: { change: changeScript }, enable: (parent.scriptsList().length > 1)"></select>
<select name="Post-processing" class="form-control" data-bind="options: parent.scriptsList, value: script, optionsValue: 'scriptValue', optionsText: 'scriptText', event: { change: changeScript }, enable: (parent.scriptsList().length > 1)"></select>
</li>
</ul>
<!-- /ko -->
@@ -209,7 +204,7 @@
</div>
<div class="add-nzb-inputbox" data-tooltip="true" data-placement="top" title="$T('eoq-scripts')">
<span class="glyphicon glyphicon-flash"></span>
<select name="Post-processing" class="form-control" data-bind="options: queue.scriptsList, optionsCaption: '', event: { change: queue.doMultiEditUpdate }"></select>
<select name="Post-processing" class="form-control" data-bind="options: queue.scriptsList, optionsValue: 'scriptValue', optionsText: 'scriptText', optionsCaption: '', event: { change: queue.doMultiEditUpdate }"></select>
</div>
<div class="clearfix"></div>
</form>

View File

@@ -65,16 +65,8 @@
glitterTranslate.renameAbort = "$T('Glitter-confirmAbortDirectUnpack')\n$T('confirm')";
glitterTranslate.retryAll = "$T('link-retryAll')?";
glitterTranslate.fetch = "$T('Glitter-fetch')";
glitterTranslate.encrypted = "$T('Glitter-encrypted')";
glitterTranslate.duplicate = "$T('Glitter-duplicate')";
glitterTranslate.tooLarge = "$T('Glitter-tooLarge')";
glitterTranslate.unwanted = "$T('Glitter-unwanted')";
glitterTranslate.incomplete = "$T('Glitter-incomplete')";
glitterTranslate.waitSec = "$T('Glitter-waitSec')";
glitterTranslate.checking = "$T('post-Checking')";
glitterTranslate.misingArt = "$T('missingArt')";
glitterTranslate.noSelect = "$T('Glitter-noSelect')";
glitterTranslate.sendThanks = "$T('Glitter-sendThanks')";
glitterTranslate.chooseFile = "$T('Glitter-chooseFile')";
glitterTranslate.orphanedJobsMsg = "$T('explain-orphans')";
glitterTranslate.useCache = "$T('explain-cache_limitstr').replace("64M", "256M").replace("128M", "512M")";
@@ -102,6 +94,7 @@
glitterTranslate.status['Repair'] = "$T('stage-repair')";
glitterTranslate.status['Filejoin'] = "$T('stage-filejoin')";
glitterTranslate.status['Unpack'] = "$T('stage-unpack')";
glitterTranslate.status['Deobfuscate'] = "$T('stage-deobfuscate')";
glitterTranslate.status['Script'] = "$T('stage-script')";
glitterTranslate.status['Source'] = "$T('stage-source')";
glitterTranslate.status['Servers'] = "$T('stage-servers')";
@@ -128,9 +121,11 @@
<!--#include raw $webdir + "/static/javascripts/jquery-3.5.1.min.js"#-->
<!--#include raw $webdir + "/static/javascripts/jquery-ui.min.js"#-->
<!--#include raw $webdir + "/static/javascripts/jquery.peity.min.js"#-->
<!--#include raw $webdir + "/static/javascripts/jquery.hotkeys.min.js"#-->
<!--#include raw $webdir + "/static/javascripts/moment-2.26.0.min.js"#-->
<!--#include raw $webdir + "/static/javascripts/knockout-3.5.1.min.js"#-->
<!--#include raw $webdir + "/static/javascripts/knockout-extensions.js"#-->
<!--#include raw $webdir + "/static/javascripts/search-query-parser.js"#-->
<!--#include raw $webdir + "/static/bootstrap/js/bootstrap.min.js"#-->
<!--#include $webdir + "/static/javascripts/glitter.js"#-->
</script>

View File

@@ -294,7 +294,7 @@ function paginationModel(parent) {
self.nrPages(1)
self.currentStart(0);
// Are we on next page?
// Are we on next page? Bad!
if(self.currentPage() > 1) {
// Force full update
parent.parent.refresh(true);
@@ -302,9 +302,6 @@ function paginationModel(parent) {
// Move to current page
self.currentPage(1);
// Force full update
parent.parent.refresh(true);
} else {
// Calculate number of pages needed
var newNrPages = Math.ceil(parent.totalItems() / parent.paginationLimit())

View File

@@ -10,7 +10,7 @@ function HistoryListModel(parent) {
self.historyItems = ko.observableArray([])
self.showFailed = ko.observable(false).extend({ persist: 'historyShowFailed' });
self.isLoading = ko.observable(false).extend({ rateLimit: 100 });
self.searchTerm = ko.observable('').extend({ rateLimit: { timeout: 200, method: "notifyWhenChangesStop" } });
self.searchTerm = ko.observable('').extend({ rateLimit: { timeout: 400, method: "notifyWhenChangesStop" } });
self.paginationLimit = ko.observable(10).extend({ persist: 'historyPaginationLimit' });
self.totalItems = ko.observable(0);
self.pagination = new paginationModel(self);
@@ -139,14 +139,15 @@ function HistoryListModel(parent) {
form.reset()
}
// Searching in history (rate-limited in decleration)
// Searching in history (rate-limited in declaration)
self.searchTerm.subscribe(function() {
// Make sure we refresh
self.lastUpdate = 0
self.parent.refresh();
// Go back to page 1
if(self.pagination.currentPage() != 1) {
// This forces a refresh
self.pagination.moveToPage(1);
} else {
// Make sure we refresh
self.parent.refresh(true);
}
})
@@ -157,7 +158,6 @@ function HistoryListModel(parent) {
// Set the loader so it doesn't flicker and then switch
self.isLoading(true)
self.searchTerm('');
self.parent.refresh()
}
// Was it click and the field is empty? Then we focus on the field
if(event.type == 'mousedown' && self.searchTerm() == '') {

View File

@@ -48,7 +48,7 @@ function ViewModel() {
self.nrWarnings = ko.observable(0);
self.allWarnings = ko.observableArray([]);
self.allMessages = ko.observableArray([]);
self.onQueueFinish = ko.observable('');
self.finishaction = ko.observable();
self.speedHistory = [];
// Statusinfo container
@@ -64,6 +64,7 @@ function ViewModel() {
self.statusInfo.dnslookup = ko.observable();
self.statusInfo.delayed_decoder = ko.observable();
self.statusInfo.delayed_assembler = ko.observable();
self.statusInfo.loadavg = ko.observable();
self.statusInfo.pystone = ko.observable();
self.statusInfo.downloaddir = ko.observable();
self.statusInfo.downloaddirspeed = ko.observable();
@@ -78,7 +79,7 @@ function ViewModel() {
// Make the speedlimit tekst
self.speedLimitText = ko.pureComputed(function() {
// Set?
if(!self.bandwithLimit()) return;
if (!self.bandwithLimit()) return;
// The text
var bandwithLimitText = self.bandwithLimit().replace(/[^a-zA-Z]+/g, '');
@@ -87,10 +88,10 @@ function ViewModel() {
var speedLimitNumberFull = (parseFloat(self.bandwithLimit()) * (self.speedLimit() / 100));
// Trick to only get decimal-point when needed
var speedLimitNumber = Math.round(speedLimitNumberFull*10)/10;
var speedLimitNumber = Math.round(speedLimitNumberFull * 10) / 10;
// Fix it for lower than 1MB/s
if(bandwithLimitText == 'M' && speedLimitNumber < 1) {
if (bandwithLimitText == 'M' && speedLimitNumber < 1) {
bandwithLimitText = 'K';
speedLimitNumber = Math.round(speedLimitNumberFull * 1024);
}
@@ -106,7 +107,7 @@ function ViewModel() {
// Dynamic icon
self.SABIcon = ko.pureComputed(function() {
if(self.downloadsPaused()) {
if (self.downloadsPaused()) {
return './staticcfg/ico/faviconpaused.ico?v=1.1.0';
} else {
return './staticcfg/ico/favicon.ico?v=1.1.0';
@@ -115,7 +116,7 @@ function ViewModel() {
// Dynamic queue length check
self.hasQueue = ko.pureComputed(function() {
return(self.queue.queueItems().length > 0 || self.queue.searchTerm() || self.queue.isLoading())
return (self.queue.queueItems().length > 0 || self.queue.searchTerm() || self.queue.isLoading())
})
// Dynamic history length check
@@ -125,7 +126,7 @@ function ViewModel() {
})
self.hasWarnings = ko.pureComputed(function() {
return(self.allWarnings().length > 0)
return (self.allWarnings().length > 0)
})
// Check for any warnings/messages
@@ -136,10 +137,10 @@ function ViewModel() {
// Update main queue
self.updateQueue = function(response) {
// Block in case off dragging
if(!self.queue.shouldUpdate()) return;
if (!self.queue.shouldUpdate()) return;
// Make sure we are displaying the interface
if(self.isRestarting() >= 1) {
if (self.isRestarting() >= 1) {
// Decrease the counter by 1
// In case of restart (which takes time to fire) we count down
// In case of re-connect after failure it counts from 1 so emmediate continuation
@@ -150,7 +151,7 @@ function ViewModel() {
/***
Possible login failure?
***/
if(response.hasOwnProperty('error') && response.error == 'Missing authentication') {
if (response.hasOwnProperty('error') && response.error == 'Missing authentication') {
// Restart
document.location = document.location;
}
@@ -165,29 +166,26 @@ function ViewModel() {
self.downloadsPaused(response.queue.paused);
// Finish action. Replace null with empty
self.onQueueFinish(response.queue.finishaction ? response.queue.finishaction : '');
self.finishaction(response.queue.finishaction ? response.queue.finishaction : '');
// Disk sizes
self.diskSpaceLeft1(response.queue.diskspace1_norm)
// Same sizes? Then it's all 1 disk!
if(response.queue.diskspace1 != response.queue.diskspace2) {
if (response.queue.diskspace1 != response.queue.diskspace2) {
self.diskSpaceLeft2(response.queue.diskspace2_norm)
} else {
self.diskSpaceLeft2('')
}
// Did we exceed the space?
self.diskSpaceExceeded1(parseInt(response.queue.mbleft)/1024 > parseFloat(response.queue.diskspace1))
self.diskSpaceExceeded2(parseInt(response.queue.mbleft)/1024 > parseFloat(response.queue.diskspace2))
self.diskSpaceExceeded1(parseInt(response.queue.mbleft) / 1024 > parseFloat(response.queue.diskspace1))
self.diskSpaceExceeded2(parseInt(response.queue.mbleft) / 1024 > parseFloat(response.queue.diskspace2))
// Quota
self.quotaLimit(response.queue.quota)
self.quotaLimitLeft(response.queue.left_quota)
// System load
self.systemLoad(response.queue.loadavg)
// Cache
self.cacheSize(response.queue.cache_size)
self.cacheArticles(response.queue.cache_art)
@@ -199,7 +197,7 @@ function ViewModel() {
Spark line
***/
// Break the speed if empty queue
if(response.queue.sizeleft == '0 B') {
if (response.queue.sizeleft == '0 B') {
response.queue.kbpersec = 0;
response.queue.speed = '0';
}
@@ -210,7 +208,7 @@ function ViewModel() {
self.speedMetric(speedSplit[1]);
// Update sparkline data
if(self.speedHistory.length >= 275) {
if (self.speedHistory.length >= 275) {
// Remove first one
self.speedHistory.shift();
}
@@ -218,12 +216,12 @@ function ViewModel() {
self.speedHistory.push(parseInt(response.queue.kbpersec));
// Is sparkline visible? Not on small mobile devices..
if($('.sparkline-container').css('display') != 'none') {
if ($('.sparkline-container').css('display') != 'none') {
// Make sparkline
if(self.speedHistory.length == 1) {
if (self.speedHistory.length == 1) {
// We only use speedhistory from SAB if we use global settings
// Otherwise SAB doesn't know the refresh rate
if(!self.useGlobalOptions()) {
if (!self.useGlobalOptions()) {
sabSpeedHistory = [];
} else {
// Update internally
@@ -254,30 +252,31 @@ function ViewModel() {
/***
Speedlimit
***/
// Nothing = 100%
response.queue.speedlimit = (response.queue.speedlimit == '') ? 100.0 : parseFloat(response.queue.speedlimit).toFixed(1);
// Trick to only get decimal-point when needed
response.queue.speedlimit = Math.round(response.queue.speedlimit*10)/10;
self.speedLimitInt(response.queue.speedlimit)
// Nothing or 0 means 100%
if(response.queue.speedlimit == '' || response.queue.speedlimit == '0') {
self.speedLimitInt(100)
} else {
self.speedLimitInt(parseInt(response.queue.speedlimit));
}
// Only update from external source when user isn't doing input
if(!$('.speedlimit-dropdown .btn-group .btn-group').is('.open')) {
self.speedLimit(response.queue.speedlimit)
if (!$('.speedlimit-dropdown .btn-group .btn-group').is('.open')) {
self.speedLimit(self.speedLimitInt())
}
/***
Download timing and pausing
***/
var timeString = response.queue.timeleft;
if(timeString === '') {
if (timeString === '') {
timeString = '0:00';
} else {
timeString = rewriteTime(response.queue.timeleft)
}
// Paused main queue
if(self.downloadsPaused()) {
if(response.queue.pause_int == '0') {
if (self.downloadsPaused()) {
if (response.queue.pause_int == '0') {
timeString = glitterTranslate.paused;
} else {
var pauseSplit = response.queue.pause_int.split(/:/);
@@ -287,21 +286,21 @@ function ViewModel() {
seconds -= minutes * 60;
// Add leading zeros
if(minutes < 10) minutes = '0' + minutes;
if(seconds < 10) seconds = '0' + seconds;
if (minutes < 10) minutes = '0' + minutes;
if (seconds < 10) seconds = '0' + seconds;
// Final formating
timeString = glitterTranslate.paused + ' (' + rewriteTime(hours + ":" + minutes + ":" + seconds) + ')';
}
// Add info about amount of download (if actually downloading)
if(response.queue.noofslots > 0 && parseInt(self.queueDataLeft()) > 0) {
if (response.queue.noofslots > 0 && parseInt(self.queueDataLeft()) > 0) {
self.title(timeString + ' - ' + self.queueDataLeft() + ' ' + glitterTranslate.left + ' - SABnzbd')
} else {
// Set title with pause information
self.title(timeString + ' - SABnzbd')
}
} else if(response.queue.noofslots > 0 && parseInt(self.queueDataLeft()) > 0) {
} else if (response.queue.noofslots > 0 && parseInt(self.queueDataLeft()) > 0) {
// Set title only if we are actually downloading something..
self.title(self.speedText() + ' - ' + self.queueDataLeft() + ' ' + glitterTranslate.left + ' - SABnzbd')
} else {
@@ -318,7 +317,7 @@ function ViewModel() {
// Update history items
self.updateHistory = function(response) {
if(!response) return;
if (!response) return;
self.history.updateFromData(response.history);
}
@@ -334,38 +333,46 @@ function ViewModel() {
// Do requests for full information
// Catch the fail to display message
var queueApi = callAPI({
var api_call = {
mode: "queue",
search: self.queue.searchTerm(),
start: self.queue.pagination.currentStart(),
limit: parseInt(self.queue.paginationLimit())
})
.done(self.updateQueue)
.fail(function(response) {
// Catch the failure of authorization error
if(response.status == 401) {
// Stop refresh and reload
clearInterval(self.interval)
location.reload();
}
// Show screen
self.isRestarting(1)
}).always(self.setNextUpdate);
}
if (self.queue.searchTerm()) {
parseSearchQuery(api_call, self.queue.searchTerm(), ["cat", "category", "priority"])
}
var queueApi = callAPI(api_call)
.done(self.updateQueue)
.fail(function(response) {
// Catch the failure of authorization error
if (response.status == 401) {
// Stop refresh and reload
clearInterval(self.interval)
location.reload();
}
// Show screen
self.isRestarting(1)
}).always(self.setNextUpdate);
// Force full history update?
if(forceFullHistory) {
if (forceFullHistory) {
self.history.lastUpdate = 0
}
// History
callAPI({
// Build history request and parse search
var history_call = {
mode: "history",
search: self.history.searchTerm(),
failed_only: self.history.showFailed()*1,
failed_only: self.history.showFailed() * 1,
start: self.history.pagination.currentStart(),
limit: parseInt(self.history.paginationLimit()),
last_history_update: self.history.lastUpdate
}).done(self.updateHistory);
}
if (self.history.searchTerm()) {
parseSearchQuery(history_call, self.history.searchTerm(), ["cat", "category"])
}
// History
callAPI(history_call).done(self.updateHistory);
// We are now done with any loading
// But we wait a few ms so Knockout has time to update
@@ -378,6 +385,25 @@ function ViewModel() {
return queueApi;
};
function parseSearchQuery(api_request, search, keywords) {
var parsed_query = search_query_parse(search, { keywords: keywords })
api_request["search"] = parsed_query.text
for (const keyword of keywords) {
if (Array.isArray(parsed_query[keyword])) {
api_request[keyword] = parsed_query[keyword].join(",")
} else {
api_request[keyword] = parsed_query[keyword]
}
// Special case for priority, dirty replace of string by numeric value
if (keyword == "priority" && api_request["priority"]) {
for (const prio_name in self.queue.priorityName) {
api_request["priority"] = api_request["priority"].replace(prio_name, self.queue.priorityName[prio_name])
}
}
}
}
// Set pause action on click of toggle
self.pauseToggle = function() {
callAPI({
@@ -399,23 +425,23 @@ function ViewModel() {
// Open modal
self.openCustomPauseTime = function() {
// Was it loaded already?
if(!Date.i18n) {
jQuery.getScript('./static/javascripts/date.min.js').then(function() {
if (!Date.i18n) {
jQuery.getScript('./static/javascripts/date.min.js').then(function() {
// After loading we start again
self.openCustomPauseTime()
})
return;
})
return;
}
// Show modal
$('#modal_custom_pause').modal('show')
// Focus on the input field
$('#modal_custom_pause').on('shown.bs.modal', function () {
$('#modal_custom_pause').on('shown.bs.modal', function() {
$('#customPauseInput').focus()
})
// Reset on modal close
$('#modal_custom_pause').on('hide.bs.modal', function () {
$('#modal_custom_pause').on('hide.bs.modal', function() {
self.pauseCustom('');
})
}
@@ -423,13 +449,13 @@ function ViewModel() {
// Update on changes
self.pauseCustom.subscribe(function(newValue) {
// Is it plain numbers?
if(newValue.match(/^\s*\d+\s*$/)) {
if (newValue.match(/^\s*\d+\s*$/)) {
// Treat it as a number of minutes
newValue += "minutes";
}
// At least 3 charaters
if(newValue.length < 3) {
if (newValue.length < 3) {
$('#customPauseOutput').text('').data('time', 0)
$('#modal_custom_pause .btn-default').addClass('disabled')
return;
@@ -445,19 +471,19 @@ function ViewModel() {
var pauseParsed = Date.parse(newValue);
// Did we get it?
if(pauseParsed) {
if (pauseParsed) {
// Is it just now?
if(pauseParsed <= Date.parse('now')) {
if (pauseParsed <= Date.parse('now')) {
// Try again with the '+' in front, the parser doesn't get 100min
pauseParsed = Date.parse('+' + newValue);
}
// Calculate difference in minutes and save
var pauseDuration = Math.round((pauseParsed - Date.parse('now'))/1000/60);
$('#customPauseOutput').html('<span class="glyphicon glyphicon-pause"></span> ' +glitterTranslate.pauseFor + ' ' + pauseDuration + ' ' + glitterTranslate.minutes)
var pauseDuration = Math.round((pauseParsed - Date.parse('now')) / 1000 / 60);
$('#customPauseOutput').html('<span class="glyphicon glyphicon-pause"></span> ' + glitterTranslate.pauseFor + ' ' + pauseDuration + ' ' + glitterTranslate.minutes)
$('#customPauseOutput').data('time', pauseDuration)
$('#modal_custom_pause .btn-default').removeClass('disabled')
} else if(newValue) {
} else if (newValue) {
// No..
$('#customPauseOutput').text(glitterTranslate.pausePromptFail)
$('#modal_custom_pause .btn-default').addClass('disabled')
@@ -470,7 +496,7 @@ function ViewModel() {
var pauseDuration = $('#customPauseOutput').data('time');
// If in the future
if(pauseDuration > 0) {
if (pauseDuration > 0) {
callAPI({
mode: 'config',
name: 'set_pause',
@@ -487,7 +513,7 @@ function ViewModel() {
// Update the warnings
self.nrWarnings.subscribe(function(newValue) {
// Really any change?
if(newValue == self.allWarnings().length) return;
if (newValue == self.allWarnings().length) return;
// Get all warnings
callAPI({
@@ -496,7 +522,7 @@ function ViewModel() {
// Reset it all
self.allWarnings.removeAll();
if(response) {
if (response) {
// Newest first
response.warnings.reverse()
@@ -537,10 +563,10 @@ function ViewModel() {
// Update on speed-limit change
self.speedLimit.subscribe(function(newValue) {
// Only on new load
if(!self.speedLimitInt()) return;
if (!self.speedLimitInt()) return;
// Update
if(self.speedLimitInt() != newValue) {
if (self.speedLimitInt() != newValue) {
callAPI({
mode: "config",
name: "speedlimit",
@@ -563,24 +589,18 @@ function ViewModel() {
// Shutdown options
self.setOnQueueFinish = function(model, event) {
// Ignore updates before the page is done
if(!self.hasStatusInfo()) return;
// Something changes
callAPI({
mode: 'queue',
name: 'change_complete_action',
value: $(event.target).val()
})
// Top stop blinking while the API is calling
self.onQueueFinish($(event.target).val())
}
// Use global settings or device-specific?
self.useGlobalOptions.subscribe(function(newValue) {
// Reload in case of enabling global options
if(newValue) document.location = document.location;
if (newValue) document.location = document.location;
})
// Update refreshrate
@@ -589,7 +609,7 @@ function ViewModel() {
self.refresh();
// Save in config if global-settings
if(self.useGlobalOptions()) {
if (self.useGlobalOptions()) {
callAPI({
mode: "set_config",
section: "misc",
@@ -607,24 +627,24 @@ function ViewModel() {
// Get filename
var fileName = $(event.target).val().replace(/\\/g, '/').replace(/.*\//, '');
// Set label
if(fileName) $('.btn-file em').text(fileName)
if (fileName) $('.btn-file em').text(fileName)
}
// Add NZB form
self.addNZB = function(form) {
// Anything?
if(!$(form.nzbFile)[0].files[0] && !$(form.nzbURL).val()) {
if (!$(form.nzbFile)[0].files[0] && !$(form.nzbURL).val()) {
$('.btn-file, input[name="nzbURL"]').attr('style', 'border-color: red !important')
setTimeout(function() { $('.btn-file, input[name="nzbURL"]').css('border-color', '') }, 2000)
return false;
}
// Upload file using the method we also use for drag-and-drop
if($(form.nzbFile)[0].files[0]) {
if ($(form.nzbFile)[0].files[0]) {
self.addNZBFromFile($(form.nzbFile)[0].files);
// Hide modal, upload will reset the form
$("#modal-add-nzb").modal("hide");
} else if($(form.nzbURL).val()) {
} else if ($(form.nzbURL).val()) {
// Or add URL
var theCall = {
mode: "addurl",
@@ -637,8 +657,8 @@ function ViewModel() {
}
// Optional, otherwise they get mis-labeled if left empty
if($('#modal-add-nzb select[name="Category"]').val() != '*') theCall.cat = $('#modal-add-nzb select[name="Category"]').val()
if($('#modal-add-nzb select[name="Processing"]').val()) theCall.pp = $('#modal-add-nzb select[name="Category"]').val()
if ($('#modal-add-nzb select[name="Category"]').val() != '*') theCall.cat = $('#modal-add-nzb select[name="Category"]').val()
if ($('#modal-add-nzb select[name="Processing"]').val()) theCall.pp = $('#modal-add-nzb select[name="Category"]').val()
// Add
callAPI(theCall).then(function(r) {
@@ -654,14 +674,14 @@ function ViewModel() {
// From the upload or filedrop
self.addNZBFromFile = function(files, fileindex) {
// First file
if(fileindex === undefined) {
if (fileindex === undefined) {
fileindex = 0
}
var file = files[fileindex]
fileindex++
// Check if it's maybe a folder, we can't handle those
if(!file.type && file.size % 4096 == 0) return;
if (!file.type && file.size % 4096 == 0) return;
// Add notification
showNotification('.main-notification-box-uploading', 0, fileindex)
@@ -677,8 +697,8 @@ function ViewModel() {
data.append("apikey", apiKey);
// Optional, otherwise they get mis-labeled if left empty
if($('#modal-add-nzb select[name="Category"]').val() != '*') data.append("cat", $('#modal-add-nzb select[name="Category"]').val());
if($('#modal-add-nzb select[name="Processing"]').val()) data.append("pp", $('#modal-add-nzb select[name="Processing"]').val());
if ($('#modal-add-nzb select[name="Category"]').val() != '*') data.append("cat", $('#modal-add-nzb select[name="Category"]').val());
if ($('#modal-add-nzb select[name="Processing"]').val()) data.append("pp", $('#modal-add-nzb select[name="Processing"]').val());
// Add this one
$.ajax({
@@ -690,7 +710,7 @@ function ViewModel() {
data: data
}).then(function(r) {
// Are we done?
if(fileindex < files.length) {
if (fileindex < files.length) {
// Do the next one
self.addNZBFromFile(files, fileindex)
} else {
@@ -716,28 +736,29 @@ function ViewModel() {
// Make it spin if the user requested it otherwise we don't,
// because browsers use a lot of CPU for the animation
if(statusFullRefresh) {
if (statusFullRefresh) {
self.hasStatusInfo(false)
}
// Show loading text for performance measures
if(statusPerformance) {
if (statusPerformance) {
self.hasPerformanceInfo(false)
}
// Load the custom status info, allowing for longer timeouts
callAPI({
mode: 'status',
skip_dashboard: (!statusFullRefresh)*1,
calculate_performance: statusPerformance*1,
skip_dashboard: (!statusFullRefresh) * 1,
calculate_performance: statusPerformance * 1,
}, 30000).then(function(data) {
// Update basic
self.statusInfo.folders(data.status.folders)
self.statusInfo.loadavg(data.status.loadavg)
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) {
if ("dnslookup" in data.status) {
self.statusInfo.pystone(data.status.pystone)
self.statusInfo.downloaddir(data.status.downloaddir)
self.statusInfo.downloaddirspeed(data.status.downloaddirspeed)
@@ -752,7 +773,7 @@ function ViewModel() {
}
// Update the servers
if(self.statusInfo.servers().length != data.status.servers.length) {
if (self.statusInfo.servers().length != data.status.servers.length) {
// Empty them, in case of update
self.statusInfo.servers([])
@@ -777,21 +798,21 @@ function ViewModel() {
$.each(data.status.servers, function(index) {
var activeServer = self.statusInfo.servers()[index];
activeServer.servername(this.servername),
activeServer.serveroptional(this.serveroptional),
activeServer.serverpriority(this.serverpriority),
activeServer.servertotalconn(this.servertotalconn),
activeServer.serverssl(this.serverssl),
activeServer.serversslinfo(this.serversslinfo),
activeServer.serveractiveconn(this.serveractiveconn),
activeServer.servererror(this.servererror),
activeServer.serveractive(this.serveractive),
activeServer.serverconnections(this.serverconnections),
activeServer.serverbps(this.serverbps)
activeServer.serveroptional(this.serveroptional),
activeServer.serverpriority(this.serverpriority),
activeServer.servertotalconn(this.servertotalconn),
activeServer.serverssl(this.serverssl),
activeServer.serversslinfo(this.serversslinfo),
activeServer.serveractiveconn(this.serveractiveconn),
activeServer.servererror(this.servererror),
activeServer.serveractive(this.serveractive),
activeServer.serverconnections(this.serverconnections),
activeServer.serverbps(this.serverbps)
})
}
// Add tooltips to possible new items
if(!isMobile) $('#modal-options [data-tooltip="true"]').tooltip({ trigger: 'hover', container: 'body' })
if (!isMobile) $('#modal-options [data-tooltip="true"]').tooltip({ trigger: 'hover', container: 'body' })
// Stop it spin
self.hasStatusInfo(true)
@@ -804,7 +825,7 @@ function ViewModel() {
var nzbSize = $(event.target).data('size')
// Maybe it was a click on the icon?
if(nzbSize == undefined) {
if (nzbSize == undefined) {
nzbSize = $(event.target.parentElement).data('size')
}
@@ -846,7 +867,7 @@ function ViewModel() {
checkSize()
// Check if still visible
if(!$('#options_connections').is(':visible') && connectionRefresh) {
if (!$('#options_connections').is(':visible') && connectionRefresh) {
// Stop refreshing
clearInterval(connectionRefresh)
return
@@ -865,9 +886,9 @@ function ViewModel() {
// Function that handles the actual sizing of connections tab
function checkSize() {
// Any connections?
if(self.showActiveConnections() && $('#options_connections').is(':visible') && $('.table-server-connections').height() > 1) {
if (self.showActiveConnections() && $('#options_connections').is(':visible') && $('.table-server-connections').height() > 1) {
var mainWidth = $('.main-content').width()
$('#modal-options .modal-dialog').width(mainWidth*0.85 > 650 ? mainWidth*0.85 : '')
$('#modal-options .modal-dialog').width(mainWidth * 0.85 > 650 ? mainWidth * 0.85 : '')
} else {
// Small again
$('#modal-options .modal-dialog').width('')
@@ -875,7 +896,7 @@ function ViewModel() {
}
// Make sure Connections get refreshed also after open->close->open
$('#modal-options').on('show.bs.modal', function () {
$('#modal-options').on('show.bs.modal', function() {
// Trigger
$('.nav-tabs a[href="#options_connections"]').trigger('shown.bs.tab')
})
@@ -886,7 +907,7 @@ function ViewModel() {
$('#options-orphans [data-tooltip="true"]').tooltip('hide')
// Show notification on delete
if($(htmlElement.currentTarget).data('action') == 'delete_orphan') {
if ($(htmlElement.currentTarget).data('action') == 'delete_orphan') {
showNotification('.main-notification-box-removing', 1000)
} else {
// Adding back to queue
@@ -908,8 +929,8 @@ function ViewModel() {
// Orphaned folder deletion of all
self.removeAllOrphaned = function() {
if(!self.confirmDeleteHistory() || confirm(glitterTranslate.clearWarn)) {
// Show notification
if (!self.confirmDeleteHistory() || confirm(glitterTranslate.clearWarn)) {
// Show notification
showNotification('.main-notification-box-removing-multiple', 0, self.statusInfo.folders().length)
// Delete them all
callAPI({
@@ -925,8 +946,8 @@ function ViewModel() {
// Orphaned folder adding of all
self.addAllOrphaned = function() {
if(!self.confirmDeleteHistory() || confirm(glitterTranslate.clearWarn)) {
// Show notification
if (!self.confirmDeleteHistory() || confirm(glitterTranslate.clearWarn)) {
// Show notification
showNotification('.main-notification-box-sendback')
// Delete them all
callAPI({
@@ -956,7 +977,7 @@ function ViewModel() {
})
// Change hash for page-reload
$('.history-queue-swicher .nav-tabs a').on('shown.bs.tab', function (e) {
$('.history-queue-swicher .nav-tabs a').on('shown.bs.tab', function(e) {
window.location.hash = e.target.hash;
})
@@ -965,7 +986,7 @@ function ViewModel() {
**/
// Shutdown
self.shutdownSAB = function() {
if(confirm(glitterTranslate.shutdown)) {
if (confirm(glitterTranslate.shutdown)) {
// Show notification and return true to follow the URL
showNotification('.main-notification-box-shutdown')
return true
@@ -973,14 +994,14 @@ function ViewModel() {
}
// Restart
self.restartSAB = function() {
if(!confirm(glitterTranslate.restart)) return;
if (!confirm(glitterTranslate.restart)) return;
// Call restart function
callAPI({ mode: "restart" })
// Set counter, we need at least 15 seconds
self.isRestarting(Math.max(1, Math.floor(15 / self.refreshRate())));
// Force refresh in case of very long refresh-times
if(self.refreshRate() > 30) {
if (self.refreshRate() > 30) {
setTimeout(self.refresh, 30 * 1000)
}
}
@@ -989,7 +1010,7 @@ function ViewModel() {
// Event
var theAction = $(event.target).data('mode');
// Show notification if available
if(['rss_now', 'watched_now'].indexOf(theAction) > -1) {
if (['rss_now', 'watched_now'].indexOf(theAction) > -1) {
showNotification('.main-notification-box-' + theAction, 2000)
}
// Send to the API
@@ -997,7 +1018,7 @@ function ViewModel() {
}
// Repair queue
self.repairQueue = function() {
if(!confirm(glitterTranslate.repair)) return;
if (!confirm(glitterTranslate.repair)) return;
// Hide the modal and show the notifucation
$("#modal-options").modal("hide");
showNotification('.main-notification-box-queue-repair', 5000)
@@ -1018,18 +1039,18 @@ function ViewModel() {
Retrieve config information and do startup functions
***/
// Force compact mode as fast as possible
if(localStorageGetItem('displayCompact') === 'true') {
if (localStorageGetItem('displayCompact') === 'true') {
// Add extra class
$('body').addClass('container-compact')
}
if(localStorageGetItem('displayFullWidth') === 'true') {
if (localStorageGetItem('displayFullWidth') === 'true') {
// Add extra class
$('body').addClass('container-full-width')
}
// Tabbed layout?
if(localStorageGetItem('displayTabbed') === 'true') {
if (localStorageGetItem('displayTabbed') === 'true') {
$('body').addClass('container-tabbed')
var tab_from_hash = location.hash.replace(/^#/, '');
@@ -1069,9 +1090,9 @@ function ViewModel() {
mode: 'get_config'
}).then(function(response) {
// Do we use global, or local settings?
if(self.useGlobalOptions()) {
if (self.useGlobalOptions()) {
// Set refreshrate (defaults to 1/s)
if(!response.config.misc.refresh_rate) response.config.misc.refresh_rate = 1;
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
@@ -1079,10 +1100,10 @@ function ViewModel() {
self.queue.paginationLimit(response.config.misc.queue_limit.toString())
// Import the rest of the settings
if(response.config.misc.interface_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) {
for (const setting of self.globalInterfaceSettings) {
if (setting in interfaceSettings) {
self[setting](interfaceSettings[setting]);
}
}
@@ -1094,14 +1115,37 @@ function ViewModel() {
}
// Set bandwidth limit
if(!response.config.misc.bandwidth_max) response.config.misc.bandwidth_max = false;
if (!response.config.misc.bandwidth_max) response.config.misc.bandwidth_max = false;
self.bandwithLimit(response.config.misc.bandwidth_max);
// Save servers (for reporting functionality)
self.servers = response.config.servers;
// Reformat and set categories
self.queue.categoriesList($.map(response.config.categories, function(cat) {
// Default?
if(cat.name == '*') return { catValue: '*', catText: glitterTranslate.defaultText };
return { catValue: cat.name, catText: cat.name };
}))
// Get the scripts, if there are any
if(response.config.misc.script_dir) {
callAPI({
mode: 'get_scripts'
}).then(function(script_response) {
// Reformat script-list
self.queue.scriptsList($.map(script_response.scripts, function(script) {
// None?
if(script == 'None') return { scriptValue: 'None', scriptText: glitterTranslate.noneText };
return { scriptValue: script, scriptText: script };
}))
self.queue.scriptsListLoaded(true)
})
} else {
// We can already continue
self.queue.scriptsListLoaded(true)
}
// Already set if we are using a proxy
if(response.config.misc.socks5_proxy_url) self.statusInfo.active_socks5_proxy(true)
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);
@@ -1115,28 +1159,28 @@ function ViewModel() {
})
// Update message
if(newRelease) {
if (newRelease) {
self.allMessages.push({
index: 'UpdateMsg',
type: glitterTranslate.status['INFO'],
text: ('<a class="queue-update-sab" href="'+newReleaseUrl+'" target="_blank">'+glitterTranslate.updateAvailable+' '+newRelease+' <span class="glyphicon glyphicon-save"></span></a>'),
text: ('<a class="queue-update-sab" href="' + newReleaseUrl + '" target="_blank">' + glitterTranslate.updateAvailable + ' ' + newRelease + ' <span class="glyphicon glyphicon-save"></span></a>'),
css: 'info'
});
}
// Message about cache - Not for 5 days if user ignored it
if(!response.config.misc.cache_limit && localStorageGetItem('CacheMsg')*1+(1000*3600*24*5) < Date.now()) {
if (!response.config.misc.cache_limit && localStorageGetItem('CacheMsg') * 1 + (1000 * 3600 * 24 * 5) < Date.now()) {
self.allMessages.push({
index: 'CacheMsg',
type: glitterTranslate.status['INFO'],
text: ('<a href="./config/general/#cache_limit">'+glitterTranslate.useCache.replace(/<br \/>/g, " ")+' <span class="glyphicon glyphicon-cog"></span></a>'),
text: ('<a href="./config/general/#cache_limit">' + glitterTranslate.useCache.replace(/<br \/>/g, " ") + ' <span class="glyphicon glyphicon-cog"></span></a>'),
css: 'info',
clear: function() { self.clearMessages('CacheMsg')}
clear: function() { self.clearMessages('CacheMsg') }
});
}
// Message about tips and tricks, only once
if(response.config.misc.notified_new_skin < 2) {
if (response.config.misc.notified_new_skin < 2) {
self.allMessages.push({
index: 'TipsMsgV110',
type: glitterTranslate.status['INFO'],
@@ -1159,71 +1203,87 @@ function ViewModel() {
})
// Orphaned folder check - Not for 5 days if user ignored it
var orphanMsg = localStorageGetItem('OrphanedMsg')*1+(1000*3600*24*5) < Date.now();
var orphanMsg = localStorageGetItem('OrphanedMsg') * 1 + (1000 * 3600 * 24 * 5) < Date.now();
// Delay the check
if(orphanMsg) {
if (orphanMsg) {
setTimeout(self.loadStatusInfo, 200);
}
// On any status load we check Orphaned folders
self.hasStatusInfo.subscribe(function(finishedLoading) {
// Loaded or just starting?
if(!finishedLoading) return;
if (!finishedLoading) return;
// Orphaned folders? If user clicked away we check again in 5 days
if(self.statusInfo.folders().length >= 3 && orphanMsg) {
if (self.statusInfo.folders().length >= 3 && orphanMsg) {
// Check if not already there
if(!ko.utils.arrayFirst(self.allMessages(), function(item) { return item.index == 'OrphanedMsg' })) {
if (!ko.utils.arrayFirst(self.allMessages(), function(item) { return item.index == 'OrphanedMsg' })) {
self.allMessages.push({
index: 'OrphanedMsg',
type: glitterTranslate.status['INFO'],
text: glitterTranslate.orphanedJobsMsg + ' <a href="#" onclick="showOrphans()"><span class="glyphicon glyphicon-wrench"></span></a>',
css: 'info',
clear: function() { self.clearMessages('OrphanedMsg')}
clear: function() { self.clearMessages('OrphanedMsg') }
});
}
} else {
// Remove any message, if it was there
self.allMessages.remove(function(item) {
return item.index == 'OrphanedMsg';
return item.index == 'OrphanedMsg';
})
}
})
// Message about localStorage not being enabled every 20 days
if(!hasLocalStorage && localStorageGetItem('LocalStorageMsg')*1+(1000*3600*24*20) < Date.now()) {
if (!hasLocalStorage && localStorageGetItem('LocalStorageMsg') * 1 + (1000 * 3600 * 24 * 20) < Date.now()) {
self.allMessages.push({
index: 'LocalStorageMsg',
type: glitterTranslate.status['WARNING'].replace(':', ''),
text: glitterTranslate.noLocalStorage,
css: 'warning',
clear: function() { self.clearMessages('LocalStorageMsg')}
clear: function() { self.clearMessages('LocalStorageMsg') }
});
}
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');
}
if (self.keyboardShortcuts()) {
$(document).bind('keydown', 'p', function(e) {
self.pauseToggle();
});
$(document).bind('keydown', 'a', function(e) {
// avoid modal clashes
if (!$('.modal-dialog').is(':visible')) {
$('#modal-add-nzb').modal('show');
}
}
});
$(document).bind('keydown', 'c', function(e) {
window.location.href = './config/';
});
$(document).bind('keydown', 's', function(e) {
// avoid modal clashes
if (!$('.modal-dialog').is(':visible')) {
$('#modal-options').modal('show');
}
});
$(document).bind('keydown', 'shift+left', function(e) {
$('#history-tab.active > ul.pagination li.active').prev().click();
$('#queue-tab.active > ul.pagination li.active').prev().click();
e.preventDefault();
});
$(document).bind('keydown', 'shift+right', function(e) {
$('#history-tab.active > ul.pagination li.active').next().click();
$('#queue-tab.active > ul.pagination li.active').next().click();
e.preventDefault();
});
$(document).bind('keydown', 'shift+up', function(e) {
$('#history-tab.active > ul.pagination li').first().click();
$('#queue-tab.active > ul.pagination li').first().click();
e.preventDefault();
});
$(document).bind('keydown', 'shift+down', function(e) {
$('#history-tab.active > ul.pagination li').last().click();
$('#queue-tab.active > ul.pagination li').last().click();
e.preventDefault();
});
}
/***
@@ -1241,7 +1301,7 @@ function ViewModel() {
$('[data-timestamp]').each(function() {
$(this).text(displayDateTime($(this).data('timestamp'), self.dateFormat(), 'X'))
})
}, 60*1000)
}, 60 * 1000)
/***
End of main functions, start of the fun!
@@ -1253,5 +1313,5 @@ function ViewModel() {
self.refresh()
// Activate tooltips
if(!isMobile) $('[data-tooltip="true"]').tooltip({ trigger: 'hover', container: 'body' })
if (!isMobile) $('[data-tooltip="true"]').tooltip({ trigger: 'hover', container: 'body' })
}

View File

@@ -6,8 +6,6 @@ function QueueListModel(parent) {
var self = this;
self.parent = parent;
self.dragging = false;
self.rawCatList = [];
self.rawScriptList = [];
// Because SABNZB returns the name
// But when you want to set Priority you need the number..
@@ -39,7 +37,8 @@ function QueueListModel(parent) {
self.multiEditItems = ko.observableArray([]);
self.categoriesList = ko.observableArray([]);
self.scriptsList = ko.observableArray([]);
self.searchTerm = ko.observable('').extend({ rateLimit: { timeout: 200, method: "notifyWhenChangesStop" } });
self.scriptsListLoaded = ko.observable(false);
self.searchTerm = ko.observable('').extend({ rateLimit: { timeout: 400, method: "notifyWhenChangesStop" } });
self.paginationLimit = ko.observable(20).extend({ persist: 'queuePaginationLimit' });
self.pagination = new paginationModel(self);
@@ -66,31 +65,6 @@ function QueueListModel(parent) {
return i.id;
});
// Did the category-list change?
// Otherwise KO will send updates to all <select> for every refresh()
if(self.rawCatList != data.categories.toString()) {
// Reformat categories
self.categoriesList($.map(data.categories, function(cat) {
// Default?
if(cat == '*') return { catValue: '*', catText: glitterTranslate.defaultText };
return { catValue: cat, catText: cat };
}))
// Update
self.rawCatList = data.categories.toString();
}
// Did the script-list change?
if(self.rawScriptList != data.scripts.toString()) {
// Reformat script-list
self.scriptsList($.map(data.scripts, function(script) {
// Default?
if(script == 'None') return glitterTranslate.noneText;
return script;
}))
// Update
self.rawScriptList = data.scripts.toString();
}
// Set limit
self.totalItems(data.noofslots);
@@ -194,11 +168,13 @@ function QueueListModel(parent) {
// Searching in queue (rate-limited in decleration)
self.searchTerm.subscribe(function() {
// Refresh now
self.parent.refresh();
// Go back to page 1
if(self.pagination.currentPage() != 1) {
// This forces a refresh
self.pagination.moveToPage(1);
} else {
// Refresh now
self.parent.refresh();
}
})
@@ -208,7 +184,6 @@ function QueueListModel(parent) {
if(event.type == 'mousedown' || (event.keyCode && event.keyCode == 27)) {
self.isLoading(true)
self.searchTerm('');
self.parent.refresh()
}
// Was it click and the field is empty? Then we focus on the field
if(event.type == 'mousedown' && self.searchTerm() == '') {
@@ -226,6 +201,10 @@ function QueueListModel(parent) {
// What action?
var sort, dir;
switch($(event.currentTarget).data('action')) {
case 'sortRemainingAsc':
sort = 'remaining';
dir = 'asc';
break;
case 'sortAgeAsc':
sort = 'avg_age';
dir = 'desc';
@@ -693,8 +672,6 @@ function QueueModel(parent, data) {
})
}
self.changeScript = function(item) {
// Not on empty handlers
if(!item.script() || parent.scriptsList().length <= 1) return;
callAPI({
mode: 'change_script',
value: item.id,

View File

@@ -0,0 +1,12 @@
/*
* jQuery Hotkeys Plugin
* Copyright 2010, John Resig
* Dual licensed under the MIT or GPL Version 2 licenses.
*
* Based upon the plugin by Tzury Bar Yochay:
* https://github.com/tzuryby/jquery.hotkeys
*
* Original idea by:
* Binny V A, http://www.openjs.com/scripts/events/keyboard_shortcuts/
*/
!function(c){function e(e){var o,f;"string"==typeof e.data&&(e.data={keys:e.data}),e.data&&e.data.keys&&"string"==typeof e.data.keys&&(o=e.handler,f=e.data.keys.toLowerCase().split(" "),e.handler=function(a){if(this===a.target||!(/textarea|select/i.test(a.target.nodeName)||c.hotkeys.options.filterTextInputs&&-1<c.inArray(a.target.type,c.hotkeys.textAcceptingInputTypes))){var s="keypress"!==a.type&&c.hotkeys.specialKeys[a.which],e=String.fromCharCode(a.which).toLowerCase(),r="",t={};c.each(["alt","ctrl","shift"],function(e,t){a[t+"Key"]&&s!==t&&(r+=t+"+")}),a.metaKey&&!a.ctrlKey&&"meta"!==s&&(r+="meta+"),a.metaKey&&"meta"!==s&&-1<r.indexOf("alt+ctrl+shift+")&&(r=r.replace("alt+ctrl+shift+","hyper+")),s?t[r+s]=!0:(t[r+e]=!0,t[r+c.hotkeys.shiftNums[e]]=!0,"shift+"===r&&(t[c.hotkeys.shiftNums[e]]=!0));for(var i=0,n=f.length;i<n;i++)if(t[f[i]])return o.apply(this,arguments)}})}c.hotkeys={version:"0.8",specialKeys:{8:"backspace",9:"tab",10:"return",13:"return",16:"shift",17:"ctrl",18:"alt",19:"pause",20:"capslock",27:"esc",32:"space",33:"pageup",34:"pagedown",35:"end",36:"home",37:"left",38:"up",39:"right",40:"down",45:"insert",46:"del",59:";",61:"=",96:"0",97:"1",98:"2",99:"3",100:"4",101:"5",102:"6",103:"7",104:"8",105:"9",106:"*",107:"+",109:"-",110:".",111:"/",112:"f1",113:"f2",114:"f3",115:"f4",116:"f5",117:"f6",118:"f7",119:"f8",120:"f9",121:"f10",122:"f11",123:"f12",144:"numlock",145:"scroll",173:"-",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'"},shiftNums:{"`":"~",1:"!",2:"@",3:"#",4:"$",5:"%",6:"^",7:"&",8:"*",9:"(",0:")","-":"_","=":"+",";":": ","'":'"',",":"<",".":">","/":"?","\\":"|"},textAcceptingInputTypes:["text","password","number","email","url","range","date","month","week","time","datetime","datetime-local","search","color","tel"],options:{filterTextInputs:!0}},c.each(["keydown","keyup","keypress"],function(){c.event.special[this]={add:e}})}(jQuery||this.jQuery||window.jQuery);

View File

@@ -0,0 +1,307 @@
/*!
* search-search-query-parser.js
* Copyright(c) 2014-2019
* MIT Licensed
*
* Modified for SABnzbd use!
* Adapted to use without NPM.
*/
function search_query_parse(string, options) {
// Set a default options object when none is provided
if (!options) {
options = {offsets: true};
} else {
// If options offsets was't passed, set it to true
options.offsets = (typeof options.offsets === 'undefined' ? true : options.offsets)
}
if (!string) {
string = '';
}
// When no keywords or ranges set, treat as a simple string
else if (!options.keywords && !options.ranges && !options.tokenize) {
return string;
}
// Otherwise parse the advanced query syntax
else {
// Our object to store the query object
var query = {text: []};
// When offsets is true, create their array
if (options.offsets) {
query.offsets = [];
}
var exclusion = {};
var terms = [];
// Get a list of search terms respecting single and double quotes
var regex = /(\S+:'(?:[^'\\]|\\.)*')|(\S+:"(?:[^"\\]|\\.)*")|(-?"(?:[^"\\]|\\.)*")|(-?'(?:[^'\\]|\\.)*')|\S+|\S+:\S+/g;
var match;
while ((match = regex.exec(string)) !== null) {
var term = match[0];
var sepIndex = term.indexOf(':');
if (sepIndex !== -1) {
var split = term.split(':'),
key = term.slice(0, sepIndex),
val = term.slice(sepIndex + 1);
// Strip surrounding quotes
val = val.replace(/^\"|\"$|^\'|\'$/g, '');
// Strip backslashes respecting escapes
val = (val + '').replace(/\\(.?)/g, function (s, n1) {
switch (n1) {
case '\\':
return '\\';
case '0':
return '\u0000';
case '':
return '';
default:
return n1;
}
});
terms.push({
keyword: key,
value: val,
offsetStart: match.index,
offsetEnd: match.index + term.length
});
} else {
var isExcludedTerm = false;
if (term[0] === '-') {
isExcludedTerm = true;
term = term.slice(1);
}
// Strip surrounding quotes
term = term.replace(/^\"|\"$|^\'|\'$/g, '');
// Strip backslashes respecting escapes
term = (term + '').replace(/\\(.?)/g, function (s, n1) {
switch (n1) {
case '\\':
return '\\';
case '0':
return '\u0000';
case '':
return '';
default:
return n1;
}
});
if (isExcludedTerm) {
if (exclusion['text']) {
if (exclusion['text'] instanceof Array) {
exclusion['text'].push(term);
} else {
exclusion['text'] = [exclusion['text']];
exclusion['text'].push(term);
}
} else {
// First time seeing an excluded text term
exclusion['text'] = term;
}
} else {
terms.push({
text: term,
offsetStart: match.index,
offsetEnd: match.index + term.length
});
}
}
}
// Reverse to ensure proper order when pop()'ing.
terms.reverse();
// For each search term
var term;
while (term = terms.pop()) {
// When just a simple term
if (term.text) {
// We add it as pure text
query.text.push(term.text);
// When offsets is true, push a new offset
if (options.offsets) {
query.offsets.push(term);
}
}
// We got an advanced search syntax
else {
var key = term.keyword;
// Check if the key is a registered keyword
options.keywords = options.keywords || [];
var isKeyword = false;
var isExclusion = false;
if (!/^-/.test(key)) {
isKeyword = !(-1 === options.keywords.indexOf(key));
} else if (key[0] === '-') {
var _key = key.slice(1);
isKeyword = !(-1 === options.keywords.indexOf(_key))
if (isKeyword) {
key = _key;
isExclusion = true;
}
}
// Check if the key is a registered range
options.ranges = options.ranges || [];
var isRange = !(-1 === options.ranges.indexOf(key));
// When the key matches a keyword
if (isKeyword) {
// When offsets is true, push a new offset
if (options.offsets) {
query.offsets.push({
keyword: key,
value: term.value,
offsetStart: isExclusion ? term.offsetStart + 1 : term.offsetStart,
offsetEnd: term.offsetEnd
});
}
var value = term.value;
// When value is a thing
if (value.length) {
// Get an array of values when several are there
var values = value.split(',');
if (isExclusion) {
if (exclusion[key]) {
// ...many times...
if (exclusion[key] instanceof Array) {
// ...and got several values this time...
if (values.length > 1) {
// ... concatenate both arrays.
exclusion[key] = exclusion[key].concat(values);
} else {
// ... append the current single value.
exclusion[key].push(value);
}
}
// We saw that keyword only once before
else {
// Put both the current value and the new
// value in an array
exclusion[key] = [exclusion[key]];
exclusion[key].push(value);
}
}
// First time we see that keyword
else {
// ...and got several values this time...
if (values.length > 1) {
// ...add all values seen.
exclusion[key] = values;
}
// Got only a single value this time
else {
// Record its value as a string
if (options.alwaysArray) {
// ...but we always return an array if option alwaysArray is true
exclusion[key] = [value];
} else {
// Record its value as a string
exclusion[key] = value;
}
}
}
} else {
// If we already have seen that keyword...
if (query[key]) {
// ...many times...
if (query[key] instanceof Array) {
// ...and got several values this time...
if (values.length > 1) {
// ... concatenate both arrays.
query[key] = query[key].concat(values);
} else {
// ... append the current single value.
query[key].push(value);
}
}
// We saw that keyword only once before
else {
// Put both the current value and the new
// value in an array
query[key] = [query[key]];
query[key].push(value);
}
}
// First time we see that keyword
else {
// ...and got several values this time...
if (values.length > 1) {
// ...add all values seen.
query[key] = values;
}
// Got only a single value this time
else {
if (options.alwaysArray) {
// ...but we always return an array if option alwaysArray is true
query[key] = [value];
} else {
// Record its value as a string
query[key] = value;
}
}
}
}
}
}
// The key allows a range
else if (isRange) {
// When offsets is true, push a new offset
if (options.offsets) {
query.offsets.push(term);
}
var value = term.value;
// Range are separated with a dash
var rangeValues = value.split('-');
// When both end of the range are specified
// keyword:XXXX-YYYY
query[key] = {};
if (2 === rangeValues.length) {
query[key].from = rangeValues[0];
query[key].to = rangeValues[1];
}
// When pairs of ranges are specified
// keyword:XXXX-YYYY,AAAA-BBBB
else if (!rangeValues.length % 2) {
}
// When only getting a single value,
// or an odd number of values
else {
query[key].from = value;
}
} else {
// We add it as pure text
var text = term.keyword + ':' + term.value;
query.text.push(text);
// When offsets is true, push a new offset
if (options.offsets) {
query.offsets.push({
text: text,
offsetStart: term.offsetStart,
offsetEnd: term.offsetEnd
});
}
}
}
}
// Concatenate all text terms if any
if (query.text.length) {
if (!options.tokenize) {
query.text = query.text.join(' ').trim();
}
}
// Just remove the attribute text when it's empty
else {
delete query.text;
}
// Return forged query object
query.exclude = exclusion;
return query;
}
}

View File

@@ -0,0 +1,63 @@
# bash completion for sabnzbd
_sabnzbd()
{
local cur prev words cword split
# list all options here
local all_options="-f --config-file --pidfile -t --templates --pid -l --logging -w --weblogging -d --daemon -h
--help -v --version -c --clean -p --pause --repair --repair-all --no-login --log-all --console
--disable-file-log --new -b --browser --ipv6_hosting --inet_exposure --https -s --server"
_init_completion -s || return
# handle options that take arguments
case $prev in
# 0..1
--browser|--ipv6_hosting|-!(-*)[b])
COMPREPLY=( $(compgen -W '{0..1}' -- "$cur") )
return
;;
# -1..2
--logging|-!(-*)[l])
COMPREPLY=( $(compgen -W '{-1..2}' -- "$cur") )
return
;;
# 0..5
--inet_exposure)
COMPREPLY=( $(compgen -W '{0..5}' -- "$cur") )
return
;;
# directory path
--templates|--pid|-!(-*)[t])
compopt +o nospace
_filedir -d
return
;;
# file path
--config-file|--pidfile|-!(-*)[f])
compopt +o nospace
_filedir
return
;;
# port number
--https)
COMPREPLY=( $(compgen -W '{0..65535}' -- "$cur") )
return
;;
# host:port
--server|-!(-*)[s])
# suggest possible formats
COMPREPLY=( $(compgen -W 'hostname :port hostname:port ipv4 ipv4:port [ipv6] [ipv6]:port' -- "$cur") )
return
;;
esac
$split && return
if [[ "$cur" == -* ]]; then
COMPREPLY=( $(compgen -W "$all_options" -- "$cur") )
else
_filedir '@(nzb|nzb.gz|nzb.bz2|zip|rar|7z)'
fi
} &&
complete -F _sabnzbd SABnzbd.py sabnzbd sabnzbdplus

View File

Binary file not shown.

View File

Binary file not shown.

View File

@@ -5,7 +5,7 @@
#
msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
"Project-Id-Version: SABnzbd-3.7.0-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"

View File

@@ -4,7 +4,7 @@
#
msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
"Project-Id-Version: SABnzbd-3.7.0-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"

View File

@@ -7,7 +7,7 @@
#
msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
"Project-Id-Version: SABnzbd-3.7.0-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"

View File

@@ -7,7 +7,7 @@
#
msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
"Project-Id-Version: SABnzbd-3.7.0-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"

View File

@@ -7,7 +7,7 @@
#
msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
"Project-Id-Version: SABnzbd-3.7.0-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"
@@ -15,7 +15,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: es\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"Plural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"
#: email/email.tmpl:1
msgid ""

View File

@@ -7,7 +7,7 @@
#
msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
"Project-Id-Version: SABnzbd-3.7.0-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"

View File

@@ -7,7 +7,7 @@
#
msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
"Project-Id-Version: SABnzbd-3.7.0-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"
@@ -15,7 +15,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: fr\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"Plural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"
#: email/email.tmpl:1
msgid ""

View File

@@ -7,7 +7,7 @@
#
msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
"Project-Id-Version: SABnzbd-3.7.0-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"

View File

@@ -7,7 +7,7 @@
#
msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
"Project-Id-Version: SABnzbd-3.7.0-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"

View File

@@ -7,7 +7,7 @@
#
msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
"Project-Id-Version: SABnzbd-3.7.0-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"

View File

@@ -7,7 +7,7 @@
#
msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
"Project-Id-Version: SABnzbd-3.7.0-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"

View File

@@ -7,7 +7,7 @@
#
msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
"Project-Id-Version: SABnzbd-3.7.0-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"
@@ -15,7 +15,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: pt_BR\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"Plural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"
#: email/email.tmpl:1
msgid ""

View File

@@ -7,7 +7,7 @@
#
msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
"Project-Id-Version: SABnzbd-3.7.0-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"

View File

@@ -7,7 +7,7 @@
#
msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
"Project-Id-Version: SABnzbd-3.7.0-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"

View File

@@ -7,7 +7,7 @@
#
msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
"Project-Id-Version: SABnzbd-3.7.0-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"

View File

@@ -7,7 +7,7 @@
#
msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
"Project-Id-Version: SABnzbd-3.7.0-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"

View File

@@ -7,7 +7,7 @@
#
msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
"Project-Id-Version: SABnzbd-3.7.0-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"

View File

@@ -5,7 +5,7 @@
#
msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
"Project-Id-Version: SABnzbd-3.7.0-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"
@@ -166,11 +166,7 @@ msgstr ""
msgid "&nbsp;Resolving address"
msgstr ""
#: sabnzbd/api.py
msgid "unknown"
msgstr ""
#. No value, used in dropdown menus - Job details page, select no files
#. No value, used in dropdown menus
#: sabnzbd/api.py, sabnzbd/skintext.py
msgid "None"
msgstr ""
@@ -263,6 +259,10 @@ msgstr ""
msgid "Server address required"
msgstr ""
#: sabnzbd/cfg.py, sabnzbd/utils/servertests.py
msgid "Invalid server address."
msgstr ""
#: sabnzbd/cfg.py
msgid "%s is not a valid script"
msgstr ""
@@ -356,7 +356,7 @@ msgstr ""
msgid "Direct Unpack"
msgstr ""
#. PP status - History: job status
#. PP status
#: sabnzbd/directunpacker.py, sabnzbd/skintext.py
msgid "Completed"
msgstr ""
@@ -407,6 +407,11 @@ msgstr ""
msgid "Server %s will be ignored for %s minutes"
msgstr ""
#. Warning message
#: sabnzbd/downloader.py
msgid "There are no active servers!"
msgstr ""
#. Error message
#: sabnzbd/downloader.py
msgid "Failed to initialize %s@%s with reason: %s"
@@ -562,6 +567,16 @@ msgstr ""
msgid "Loading %s failed"
msgstr ""
#. Warning message
#: sabnzbd/filesystem.py
msgid "%s is not writable with special character filenames. This can cause problems."
msgstr ""
#. Warning message
#: sabnzbd/filesystem.py
msgid "%s is not writable at all. This blocks downloads."
msgstr ""
#: sabnzbd/interface.py
msgid "Refused connection from:"
msgstr ""
@@ -587,10 +602,6 @@ msgstr ""
msgid "API Key incorrect, Use the api key from Config->General in your 3rd party program:"
msgstr ""
#: sabnzbd/interface.py
msgid "Authentication missing, please enter username/password from Config->General into your 3rd party program:"
msgstr ""
#: sabnzbd/interface.py, sabnzbd/newswrapper.py, sabnzbd/utils/servertests.py
msgid "Authentication failed, check username/password."
msgstr ""
@@ -1123,27 +1134,27 @@ msgstr ""
msgid "Error importing %s"
msgstr ""
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "DUPLICATE"
msgstr ""
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "ENCRYPTED"
msgstr ""
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "TOO LARGE"
msgstr ""
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "INCOMPLETE"
msgstr ""
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "UNWANTED"
msgstr ""
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "WAIT %s sec"
msgstr ""
@@ -1456,11 +1467,11 @@ msgid "Trying RAR-based verification"
msgstr ""
#: sabnzbd/postproc.py
msgid "[%s] RAR-based verification failed: %s"
msgid "Passworded"
msgstr ""
#: sabnzbd/postproc.py, sabnzbd/skintext.py
msgid "Passworded"
#: sabnzbd/postproc.py
msgid "[%s] RAR-based verification failed: %s"
msgstr ""
#: sabnzbd/postproc.py
@@ -1577,7 +1588,7 @@ msgstr ""
msgid "Pause for 6 hours"
msgstr ""
#. Shutdown SABnzbd - Config->Scheduling
#. Config->Scheduling
#: sabnzbd/sabtray.py, sabnzbd/sabtraylinux.py, sabnzbd/skintext.py
msgid "Shutdown"
msgstr ""
@@ -1645,11 +1656,6 @@ msgstr ""
msgid "Servers"
msgstr ""
#. PP Failure message
#: sabnzbd/skintext.py
msgid "Failure"
msgstr ""
#. PP status
#: sabnzbd/skintext.py
msgid "Failed"
@@ -1695,20 +1701,6 @@ msgstr ""
msgid "Verifying..."
msgstr ""
#. Pseudo-PP status, in reality used for Queue-status
#: sabnzbd/skintext.py
msgid "Downloading"
msgstr ""
#: sabnzbd/skintext.py
msgid "Propagation delay"
msgstr ""
#. #: Config->Scheduler
#: sabnzbd/skintext.py
msgid "Task"
msgstr ""
#. #: Config->Scheduler
#: sabnzbd/skintext.py
msgid "disable server"
@@ -1839,21 +1831,6 @@ msgstr ""
msgid "Low"
msgstr ""
#. Megabytes
#: sabnzbd/skintext.py
msgid "MB"
msgstr ""
#. Gigabytes
#: sabnzbd/skintext.py
msgid "GB"
msgstr ""
#. Bytes (used as postfix, as in "GB", "TB")
#: sabnzbd/skintext.py
msgid "B"
msgstr ""
#. One hour
#: sabnzbd/skintext.py
msgid "hour"
@@ -1899,54 +1876,6 @@ msgstr ""
msgid "Year"
msgstr ""
#: sabnzbd/skintext.py
msgid "January"
msgstr ""
#: sabnzbd/skintext.py
msgid "February"
msgstr ""
#: sabnzbd/skintext.py
msgid "March"
msgstr ""
#: sabnzbd/skintext.py
msgid "April"
msgstr ""
#: sabnzbd/skintext.py
msgid "May"
msgstr ""
#: sabnzbd/skintext.py
msgid "June"
msgstr ""
#: sabnzbd/skintext.py
msgid "July"
msgstr ""
#: sabnzbd/skintext.py
msgid "August"
msgstr ""
#: sabnzbd/skintext.py
msgid "September"
msgstr ""
#: sabnzbd/skintext.py
msgid "October"
msgstr ""
#: sabnzbd/skintext.py
msgid "November"
msgstr ""
#: sabnzbd/skintext.py
msgid "December"
msgstr ""
#: sabnzbd/skintext.py
msgid "Day of month"
msgstr ""
@@ -1971,14 +1900,6 @@ msgstr ""
msgid "Total"
msgstr ""
#: sabnzbd/skintext.py
msgid "Custom"
msgstr ""
#: sabnzbd/skintext.py
msgid "Speed"
msgstr ""
#: sabnzbd/skintext.py
msgid "on"
msgstr ""
@@ -2007,42 +1928,10 @@ msgstr ""
msgid "Host"
msgstr ""
#: sabnzbd/skintext.py
msgid "Comment"
msgstr ""
#: sabnzbd/skintext.py
msgid "Send"
msgstr ""
#: sabnzbd/skintext.py
msgid "Cancel"
msgstr ""
#: sabnzbd/skintext.py
msgid "Other"
msgstr ""
#: sabnzbd/skintext.py
msgid "Report"
msgstr ""
#: sabnzbd/skintext.py
msgid "Video"
msgstr ""
#: sabnzbd/skintext.py
msgid "Audio"
msgstr ""
#: sabnzbd/skintext.py
msgid "Not used"
msgstr ""
#: sabnzbd/skintext.py
msgid "or less"
msgstr ""
#: sabnzbd/skintext.py
msgid "Log in"
msgstr ""
@@ -2055,11 +1944,6 @@ msgstr ""
msgid "Remember me"
msgstr ""
#. SABnzbd's theme line
#: sabnzbd/skintext.py
msgid "The automatic usenet download tool"
msgstr ""
#. "Save" button
#: sabnzbd/skintext.py
msgid "Save"
@@ -2074,11 +1958,6 @@ msgstr ""
msgid "Are you sure?"
msgstr ""
#. Used in confirmation popups
#: sabnzbd/skintext.py
msgid "Delete all downloaded files?"
msgstr ""
#. Main menu item
#: sabnzbd/skintext.py
msgid "Home"
@@ -2178,22 +2057,6 @@ msgstr ""
msgid "Download Dir"
msgstr ""
#: sabnzbd/skintext.py
msgid "PAUSED"
msgstr ""
#: sabnzbd/skintext.py
msgid "Cached %s articles (%s)"
msgstr ""
#: sabnzbd/skintext.py
msgid "Sysload"
msgstr ""
#: sabnzbd/skintext.py
msgid "New release %s available at"
msgstr ""
#: sabnzbd/skintext.py
msgid "Are you sure you want to shutdown SABnzbd?"
msgstr ""
@@ -2203,21 +2066,11 @@ msgstr ""
msgid "Add"
msgstr ""
#. Add NZB file to queue (header
#: sabnzbd/skintext.py
msgid "Add File"
msgstr ""
#. Job category
#: sabnzbd/skintext.py
msgid "Category"
msgstr ""
#. Queue page table column header
#: sabnzbd/skintext.py
msgid "Processing"
msgstr ""
#. Server priority
#: sabnzbd/skintext.py
msgid "Priority"
@@ -2238,21 +2091,6 @@ msgstr ""
msgid "+Delete"
msgstr ""
#. Post processing pick list: abbreviation for "+Repair"
#: sabnzbd/skintext.py
msgid "R"
msgstr ""
#. Post processing pick list: abbreviation for "+Unpack"
#: sabnzbd/skintext.py
msgid "U"
msgstr ""
#. Post processing pick list: abbreviation for "+Delete"
#: sabnzbd/skintext.py
msgid "D"
msgstr ""
#. Priority pick list
#: sabnzbd/skintext.py
msgid "Force"
@@ -2268,11 +2106,6 @@ msgstr ""
msgid "Enter URL"
msgstr ""
#. Queue page selection menu
#: sabnzbd/skintext.py
msgid "On queue finish"
msgstr ""
#. Queue page end-of-queue action
#: sabnzbd/skintext.py
msgid "Shutdown PC"
@@ -2293,36 +2126,16 @@ msgstr ""
msgid "Shutdown SABnzbd"
msgstr ""
#. Queue page selection menu or entry box
#. Queue page table column header
#: sabnzbd/skintext.py
msgid "Speed Limit"
msgid "Processing"
msgstr ""
#. Queue page table column header - Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Order"
msgstr ""
#. Queue page table column header - Job details page
#. Queue page table column header
#: sabnzbd/skintext.py
msgid "Name"
msgstr ""
#. Queue page table column header, "estimated time of arrival"
#: sabnzbd/skintext.py
msgid "ETA"
msgstr ""
#. Queue page table column header, "age of the NZB"
#: sabnzbd/skintext.py
msgid "AGE"
msgstr ""
#. Queue page table, "Delete" button
#: sabnzbd/skintext.py
msgid "Del"
msgstr ""
#. Queue page button
#: sabnzbd/skintext.py
msgid "Retry"
@@ -2353,11 +2166,6 @@ msgstr ""
msgid "Purge NZBs & Delete Files"
msgstr ""
#. Retry all failed jobs dialog box
#: sabnzbd/skintext.py
msgid "Retry all failed jobs"
msgstr ""
#. Queue page button
#: sabnzbd/skintext.py
msgid "Remove NZB"
@@ -2368,11 +2176,6 @@ msgstr ""
msgid "Remove NZB & Delete Files"
msgstr ""
#. Queue page, as in "4G *of* 10G"
#: sabnzbd/skintext.py
msgid "of"
msgstr ""
#. Caption for missing articles in Queue
#: sabnzbd/skintext.py
msgid "Missing articles"
@@ -2392,11 +2195,6 @@ msgstr ""
msgid "Reset Quota now"
msgstr ""
#. Confirmation popup
#: sabnzbd/skintext.py
msgid "Delete all completed items from History?"
msgstr ""
#. Button/link hiding History job details
#: sabnzbd/skintext.py
msgid "Hide details"
@@ -2453,24 +2251,7 @@ msgstr ""
#. Retry all failed jobs in History
#: sabnzbd/skintext.py
msgid "Retry all failed"
msgstr ""
#. Retry all button for Retry All Failed Jobs
#: sabnzbd/skintext.py
msgid "Retry All"
msgstr ""
#: sabnzbd/skintext.py
msgid "Virus/spam"
msgstr ""
#: sabnzbd/skintext.py
msgid "Out of retention"
msgstr ""
#: sabnzbd/skintext.py
msgid "Other problem"
msgid "Retry all failed jobs"
msgstr ""
#. Status page button
@@ -2521,21 +2302,6 @@ msgstr ""
msgid "Connections"
msgstr ""
#. Status page, table header
#: sabnzbd/skintext.py
msgid "Latest Warnings"
msgstr ""
#. Status page button
#: sabnzbd/skintext.py
msgid "clear"
msgstr ""
#. Status page button
#: sabnzbd/skintext.py
msgid "Unblock"
msgstr ""
#. Status page, article identifier
#: sabnzbd/skintext.py
msgid "Article identifier"
@@ -2546,25 +2312,11 @@ msgstr ""
msgid "File set"
msgstr ""
#. Status page, table column header, when error occured
#: sabnzbd/skintext.py
msgid "When"
msgstr ""
#. Status page, table column header, type of message - Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Type"
msgstr ""
#. Status page, indicator that server is enabled
#: sabnzbd/skintext.py
msgid "Enabled"
msgstr ""
#: sabnzbd/skintext.py
msgid "Dashboard"
msgstr ""
#: sabnzbd/skintext.py
msgid "Connection failed!"
msgstr ""
@@ -2585,10 +2337,6 @@ msgstr ""
msgid "Nameserver / DNS Lookup"
msgstr ""
#: sabnzbd/skintext.py
msgid "CPU Model"
msgstr ""
#: sabnzbd/skintext.py
msgid "Download speed limited by"
msgstr ""
@@ -2601,6 +2349,10 @@ msgstr ""
msgid "Disk speed"
msgstr ""
#: sabnzbd/skintext.py
msgid "System load"
msgstr ""
#. Do not translate Pystone
#: sabnzbd/skintext.py
msgid "System Performance (Pystone)"
@@ -2614,22 +2366,10 @@ msgstr ""
msgid "Complete folder speed"
msgstr ""
#: sabnzbd/skintext.py
msgid "Writing speed"
msgstr ""
#: sabnzbd/skintext.py
msgid "Could not write. Check that the directory is writable."
msgstr ""
#: sabnzbd/skintext.py
msgid "Internet Bandwidth"
msgstr ""
#: sabnzbd/skintext.py
msgid "Click on Repeat test button below to determine"
msgstr ""
#: sabnzbd/skintext.py
msgid "Repeat test"
msgstr ""
@@ -2781,10 +2521,6 @@ msgstr ""
msgid "Enable HTTPS"
msgstr ""
#: sabnzbd/skintext.py
msgid "not installed"
msgstr ""
#: sabnzbd/skintext.py
msgid "Enable accessing the interface from a HTTPS address."
msgstr ""
@@ -2861,12 +2597,13 @@ 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 ""
#. Config->Scheduling
#: sabnzbd/skintext.py
msgid "Download backup"
msgid "Create backup"
msgstr ""
#: sabnzbd/skintext.py
msgid "Save or restore a backup of the configuration file and databases."
msgid "Create a backup of the configuration file and databases in the Backup Folder.<br>If the Backup Folder is not set, the backup will be created in the Completed Download Folder.<br>Recurring backups can be configured on the Scheduling page."
msgstr ""
#: sabnzbd/skintext.py
@@ -2998,10 +2735,6 @@ msgstr ""
msgid "Browse"
msgstr ""
#: sabnzbd/skintext.py
msgid "In"
msgstr ""
#: sabnzbd/skintext.py
msgid "Temporary Download Folder"
msgstr ""
@@ -3103,6 +2836,14 @@ msgstr ""
msgid "Location for queue admin and history database.<br /><i>Can only be changed when queue is empty.</i>"
msgstr ""
#: sabnzbd/skintext.py
msgid "Backup Folder"
msgstr ""
#: sabnzbd/skintext.py
msgid "Location where the backups of the configuration file and databases are stored.<br />If left empty, the backup will be created in the Completed Download Folder."
msgstr ""
#: sabnzbd/skintext.py
msgid "<i>Data will <b>not</b> be moved. Requires SABnzbd restart!</i>"
msgstr ""
@@ -3267,14 +3008,6 @@ msgstr ""
msgid "Some servers provide an alternative NZB when a download fails."
msgstr ""
#: sabnzbd/skintext.py
msgid "Use tags from indexer"
msgstr ""
#: sabnzbd/skintext.py
msgid "When sorting, use tags from indexer for title, season, episode, etc. Otherwise all naming is derived from the NZB name."
msgstr ""
#: sabnzbd/skintext.py
msgid "Enable folder rename"
msgstr ""
@@ -3323,6 +3056,14 @@ msgstr ""
msgid "Automatically sort jobs in the queue when a new job is added."
msgstr ""
#: sabnzbd/skintext.py
msgid "The queue will resort every 30 seconds if % downloaded is selected."
msgstr ""
#: sabnzbd/skintext.py
msgid "Propagation delay"
msgstr ""
#: sabnzbd/skintext.py
msgid "Posts will be paused untill they are at least this age. Setting job priority to Force will skip the delay."
msgstr ""
@@ -3348,6 +3089,14 @@ msgstr ""
msgid "Replace spaces with underscores in folder names."
msgstr ""
#: sabnzbd/skintext.py
msgid "Replace underscores in folder name"
msgstr ""
#: sabnzbd/skintext.py
msgid "Replace underscores with dots in folder names."
msgstr ""
#: sabnzbd/skintext.py
msgid "Replace dots in Foldername"
msgstr ""
@@ -3436,10 +3185,6 @@ msgstr ""
msgid "Quota"
msgstr ""
#: sabnzbd/skintext.py
msgid "Indexing"
msgstr ""
#: sabnzbd/skintext.py
msgid "How much can be downloaded this month (K/M/G)"
msgstr ""
@@ -3676,7 +3421,7 @@ msgstr ""
msgid "Frequency"
msgstr ""
#. Config->Scheduling - Job details page, section header
#. Config->Scheduling
#: sabnzbd/skintext.py
msgid "Action"
msgstr ""
@@ -3720,6 +3465,16 @@ msgstr ""
msgid "Next scan at"
msgstr ""
#. Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Order"
msgstr ""
#. Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Type"
msgstr ""
#. Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Filter"
@@ -4054,11 +3809,6 @@ msgstr ""
msgid "Indexer Categories / Groups"
msgstr ""
#. Small delete button
#: sabnzbd/skintext.py
msgid "X"
msgstr ""
#. Warning message
#: sabnzbd/skintext.py, sabnzbd/sorting.py
msgid "Select at least 1 category."
@@ -4089,10 +3839,6 @@ msgstr ""
msgid "Presets"
msgstr ""
#: sabnzbd/skintext.py
msgid "Example"
msgstr ""
#. Warning message
#: sabnzbd/skintext.py, sabnzbd/sorting.py
msgid "Movie Sorting"
@@ -4102,10 +3848,6 @@ msgstr ""
msgid "Enable Movie Sorting"
msgstr ""
#: sabnzbd/skintext.py
msgid "Keep loose downloads in extra folders"
msgstr ""
#: sabnzbd/skintext.py
msgid "Affected Categories"
msgstr ""
@@ -4314,51 +4056,11 @@ msgstr ""
msgid "Delete"
msgstr ""
#. Job details page, move file to top
#: sabnzbd/skintext.py
msgid "Top"
msgstr ""
#. Job details page, move file one place up
#: sabnzbd/skintext.py
msgid "Up"
msgstr ""
#. Job details page, move file one place down
#: sabnzbd/skintext.py
msgid "Down"
msgstr ""
#. Job details page, move file to bottom
#: sabnzbd/skintext.py
msgid "Bottom"
msgstr ""
#. Job details page, select all files
#: sabnzbd/skintext.py
msgid "All"
msgstr ""
#. Job details page, invert file selection
#: sabnzbd/skintext.py
msgid "Invert"
msgstr ""
#. Job details page, filename column header
#: sabnzbd/skintext.py
msgid "Filename"
msgstr ""
#. Job details page, subject column header
#: sabnzbd/skintext.py
msgid "Subject"
msgstr ""
#. Job details page, section header
#: sabnzbd/skintext.py
msgid "Selection"
msgstr ""
#: sabnzbd/skintext.py
msgid "Free Space"
msgstr ""
@@ -4383,6 +4085,10 @@ msgstr ""
msgid "Restart SABnzbd"
msgstr ""
#: sabnzbd/skintext.py
msgid "On queue finish"
msgstr ""
#: sabnzbd/skintext.py
msgid "Status and interface options"
msgstr ""
@@ -4459,6 +4165,10 @@ msgstr ""
msgid "Show active connections"
msgstr ""
#: sabnzbd/skintext.py
msgid "Unblock"
msgstr ""
#: sabnzbd/skintext.py
msgid "Orphaned jobs"
msgstr ""
@@ -4491,18 +4201,6 @@ msgstr ""
msgid "Submit"
msgstr ""
#: sabnzbd/skintext.py
msgid "Open Informational URL"
msgstr ""
#: sabnzbd/skintext.py
msgid "Submitted. Thank you!"
msgstr ""
#: sabnzbd/skintext.py
msgid "Nothing selected!"
msgstr ""
#: sabnzbd/skintext.py
msgid "Remove all selected files"
msgstr ""
@@ -4511,6 +4209,14 @@ msgstr ""
msgid "Hide/show completed files"
msgstr ""
#: sabnzbd/skintext.py
msgid "Top"
msgstr ""
#: sabnzbd/skintext.py
msgid "Bottom"
msgstr ""
#: sabnzbd/skintext.py
msgid "View Script Log"
msgstr ""
@@ -4527,6 +4233,10 @@ msgstr ""
msgid "Glitter has some (new) features you might like!"
msgstr ""
#: sabnzbd/skintext.py
msgid "Custom"
msgstr ""
#: sabnzbd/skintext.py
msgid "Compact layout"
msgstr ""
@@ -4539,6 +4249,10 @@ msgstr ""
msgid "Tabbed layout <br/>(separate queue and history)"
msgstr ""
#: sabnzbd/skintext.py
msgid "Speed"
msgstr ""
#: sabnzbd/skintext.py
msgid "Confirm Queue Deletions"
msgstr ""
@@ -4571,6 +4285,10 @@ msgstr ""
msgid "All usernames, passwords and API-keys are automatically removed from the log and the included copy of your settings."
msgstr ""
#: sabnzbd/skintext.py
msgid "Sort by % downloaded <small>Most&rarr;Least</small>"
msgstr ""
#: sabnzbd/skintext.py
msgid "Sort by Age <small>Oldest&rarr;Newest</small>"
msgstr ""
@@ -4709,14 +4427,6 @@ msgid ""
"It is licensed under the GNU GENERAL PUBLIC LICENSE Version 2 or (at your option) any later version.\n"
msgstr ""
#: sabnzbd/skintext.py
msgid "In order to download from usenet you will require access to a provider. Your ISP may provide you with access, however a premium provider is recommended."
msgstr ""
#: sabnzbd/skintext.py
msgid "Don't have a usenet provider? We recommend trying %s."
msgstr ""
#. Error message
#: sabnzbd/sorting.py
msgid "Failed to rename: %s to %s"
@@ -4784,10 +4494,6 @@ msgstr ""
msgid "Unknown SSL protocol: Try disabling SSL or connecting on a different port."
msgstr ""
#: sabnzbd/utils/servertests.py
msgid "Invalid server address."
msgstr ""
#: sabnzbd/utils/servertests.py
msgid "Server quit during login sequence."
msgstr ""

View File

@@ -8,7 +8,7 @@
#
msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
"Project-Id-Version: SABnzbd-3.7.0-develop\n"
"PO-Revision-Date: 2020-06-27 15:49+0000\n"
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2022\n"
"Language-Team: Czech (https://www.transifex.com/sabnzbd/teams/111101/cs/)\n"
@@ -184,11 +184,7 @@ msgstr "Otestovat notifikace"
msgid "&nbsp;Resolving address"
msgstr "Překládám adresu"
#: sabnzbd/api.py
msgid "unknown"
msgstr "neznámé"
#. No value, used in dropdown menus - Job details page, select no files
#. No value, used in dropdown menus
#: sabnzbd/api.py, sabnzbd/skintext.py
msgid "None"
msgstr "Žádný"
@@ -289,6 +285,10 @@ msgstr "%s není validní emailová adresa"
msgid "Server address required"
msgstr "Adresa serveru je vyžadována"
#: sabnzbd/cfg.py, sabnzbd/utils/servertests.py
msgid "Invalid server address."
msgstr ""
#: sabnzbd/cfg.py
msgid "%s is not a valid script"
msgstr "%s neni validní skript"
@@ -384,7 +384,7 @@ msgstr ""
msgid "Direct Unpack"
msgstr "Přímé rozbalení"
#. PP status - History: job status
#. PP status
#: sabnzbd/directunpacker.py, sabnzbd/skintext.py
msgid "Completed"
msgstr "Dokončeno"
@@ -442,6 +442,11 @@ msgstr "Nebylo možné přeložit jméno serveru"
msgid "Server %s will be ignored for %s minutes"
msgstr "Server %s bude ignorován po dobu %s minut"
#. Warning message
#: sabnzbd/downloader.py
msgid "There are no active servers!"
msgstr ""
#. Error message
#: sabnzbd/downloader.py
msgid "Failed to initialize %s@%s with reason: %s"
@@ -597,6 +602,18 @@ msgstr "Ukládání %s selhalo"
msgid "Loading %s failed"
msgstr "Načítání %s selhalo"
#. Warning message
#: sabnzbd/filesystem.py
msgid ""
"%s is not writable with special character filenames. This can cause "
"problems."
msgstr ""
#. Warning message
#: sabnzbd/filesystem.py
msgid "%s is not writable at all. This blocks downloads."
msgstr ""
#: sabnzbd/interface.py
msgid "Refused connection from:"
msgstr "Odmítnuto spojení z:"
@@ -630,14 +647,6 @@ msgstr ""
"Nesprávný API klíč, použijte api klíč z Nastavení->Obecné ve vašem programu "
"třetí strany:"
#: sabnzbd/interface.py
msgid ""
"Authentication missing, please enter username/password from Config->General "
"into your 3rd party program:"
msgstr ""
"Chybějící přihlašovací údaje, prosím zadejte jméno/heslo z Nastavení->Obecné"
" do vašeho programu třetí strany:"
#: sabnzbd/interface.py, sabnzbd/newswrapper.py, sabnzbd/utils/servertests.py
msgid "Authentication failed, check username/password."
msgstr "Přihlášené selhalo, zkontrolujte jméno a heslo."
@@ -1190,27 +1199,27 @@ msgstr "Zrušeno, nelze dokončit"
msgid "Error importing %s"
msgstr "Chyba při importu %s"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "DUPLICATE"
msgstr "DUPLIKÁT"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "ENCRYPTED"
msgstr "ŠIFROVANÉ"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "TOO LARGE"
msgstr "PŘÍLIŠ VELKÝ"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "INCOMPLETE"
msgstr "NEKOMPLETNÍ"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "UNWANTED"
msgstr "NECHTĚNÝ"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "WAIT %s sec"
msgstr "ČEKÁNÍ %s s"
@@ -1530,13 +1539,13 @@ msgid "Trying RAR-based verification"
msgstr ""
#: sabnzbd/postproc.py
msgid "[%s] RAR-based verification failed: %s"
msgstr ""
#: sabnzbd/postproc.py, sabnzbd/skintext.py
msgid "Passworded"
msgstr "Zaheslováno"
#: sabnzbd/postproc.py
msgid "[%s] RAR-based verification failed: %s"
msgstr ""
#: sabnzbd/postproc.py
msgid "RAR files verified successfully"
msgstr ""
@@ -1651,7 +1660,7 @@ msgstr "Pozastavit na 3 hodiny"
msgid "Pause for 6 hours"
msgstr "Pozastavit na 6 hodin"
#. Shutdown SABnzbd - Config->Scheduling
#. Config->Scheduling
#: sabnzbd/sabtray.py, sabnzbd/sabtraylinux.py, sabnzbd/skintext.py
msgid "Shutdown"
msgstr "Vypnout"
@@ -1720,11 +1729,6 @@ msgstr "Zdroj"
msgid "Servers"
msgstr "Servery"
#. PP Failure message
#: sabnzbd/skintext.py
msgid "Failure"
msgstr "Chyba"
#. PP status
#: sabnzbd/skintext.py
msgid "Failed"
@@ -1770,20 +1774,6 @@ msgstr "Rychlá kontrola..."
msgid "Verifying..."
msgstr "Kontroluji..."
#. Pseudo-PP status, in reality used for Queue-status
#: sabnzbd/skintext.py
msgid "Downloading"
msgstr "Stahování"
#: sabnzbd/skintext.py
msgid "Propagation delay"
msgstr ""
#. #: Config->Scheduler
#: sabnzbd/skintext.py
msgid "Task"
msgstr "Úkol"
#. #: Config->Scheduler
#: sabnzbd/skintext.py
msgid "disable server"
@@ -1914,21 +1904,6 @@ msgstr ""
msgid "Low"
msgstr "Nízká"
#. Megabytes
#: sabnzbd/skintext.py
msgid "MB"
msgstr "MB"
#. Gigabytes
#: sabnzbd/skintext.py
msgid "GB"
msgstr "GB"
#. Bytes (used as postfix, as in "GB", "TB")
#: sabnzbd/skintext.py
msgid "B"
msgstr "B"
#. One hour
#: sabnzbd/skintext.py
msgid "hour"
@@ -1974,54 +1949,6 @@ msgstr "měsíc"
msgid "Year"
msgstr "Rok"
#: sabnzbd/skintext.py
msgid "January"
msgstr "Leden"
#: sabnzbd/skintext.py
msgid "February"
msgstr "Únor"
#: sabnzbd/skintext.py
msgid "March"
msgstr "Březen"
#: sabnzbd/skintext.py
msgid "April"
msgstr "Duben"
#: sabnzbd/skintext.py
msgid "May"
msgstr "Květen"
#: sabnzbd/skintext.py
msgid "June"
msgstr "Červen"
#: sabnzbd/skintext.py
msgid "July"
msgstr "Červenec"
#: sabnzbd/skintext.py
msgid "August"
msgstr "Srpen"
#: sabnzbd/skintext.py
msgid "September"
msgstr "Září"
#: sabnzbd/skintext.py
msgid "October"
msgstr "Říjen"
#: sabnzbd/skintext.py
msgid "November"
msgstr "Listopad"
#: sabnzbd/skintext.py
msgid "December"
msgstr "Prosinec"
#: sabnzbd/skintext.py
msgid "Day of month"
msgstr "Den v měsíci"
@@ -2046,14 +1973,6 @@ msgstr "Dnes"
msgid "Total"
msgstr "Celkem"
#: sabnzbd/skintext.py
msgid "Custom"
msgstr "Vlastní"
#: sabnzbd/skintext.py
msgid "Speed"
msgstr "Rychlost"
#: sabnzbd/skintext.py
msgid "on"
msgstr "zapnuto"
@@ -2082,42 +2001,10 @@ msgstr "nebo"
msgid "Host"
msgstr ""
#: sabnzbd/skintext.py
msgid "Comment"
msgstr "Komentář"
#: sabnzbd/skintext.py
msgid "Send"
msgstr "Odeslat"
#: sabnzbd/skintext.py
msgid "Cancel"
msgstr "Zrušit"
#: sabnzbd/skintext.py
msgid "Other"
msgstr "Ostatní"
#: sabnzbd/skintext.py
msgid "Report"
msgstr "Výkaz"
#: sabnzbd/skintext.py
msgid "Video"
msgstr "Video"
#: sabnzbd/skintext.py
msgid "Audio"
msgstr "Audio"
#: sabnzbd/skintext.py
msgid "Not used"
msgstr "Nepoužito"
#: sabnzbd/skintext.py
msgid "or less"
msgstr "nebo méně"
#: sabnzbd/skintext.py
msgid "Log in"
msgstr "Přihlásit"
@@ -2130,11 +2017,6 @@ msgstr "Odhlásit"
msgid "Remember me"
msgstr "Zapamatuj si mě"
#. SABnzbd's theme line
#: sabnzbd/skintext.py
msgid "The automatic usenet download tool"
msgstr ""
#. "Save" button
#: sabnzbd/skintext.py
msgid "Save"
@@ -2149,11 +2031,6 @@ msgstr "Ukládám..."
msgid "Are you sure?"
msgstr "Jste si jistí?"
#. Used in confirmation popups
#: sabnzbd/skintext.py
msgid "Delete all downloaded files?"
msgstr "Smazat všechny stažené soubory?"
#. Main menu item
#: sabnzbd/skintext.py
msgid "Home"
@@ -2253,22 +2130,6 @@ msgstr "Vyhledávání"
msgid "Download Dir"
msgstr ""
#: sabnzbd/skintext.py
msgid "PAUSED"
msgstr "POZASTAVENO"
#: sabnzbd/skintext.py
msgid "Cached %s articles (%s)"
msgstr ""
#: sabnzbd/skintext.py
msgid "Sysload"
msgstr ""
#: sabnzbd/skintext.py
msgid "New release %s available at"
msgstr ""
#: sabnzbd/skintext.py
msgid "Are you sure you want to shutdown SABnzbd?"
msgstr ""
@@ -2278,21 +2139,11 @@ msgstr ""
msgid "Add"
msgstr "Přidat"
#. Add NZB file to queue (header
#: sabnzbd/skintext.py
msgid "Add File"
msgstr "Přidat soubor"
#. Job category
#: sabnzbd/skintext.py
msgid "Category"
msgstr "Kategorie"
#. Queue page table column header
#: sabnzbd/skintext.py
msgid "Processing"
msgstr ""
#. Server priority
#: sabnzbd/skintext.py
msgid "Priority"
@@ -2313,21 +2164,6 @@ msgstr "+Rozbalit"
msgid "+Delete"
msgstr "+Smazat"
#. Post processing pick list: abbreviation for "+Repair"
#: sabnzbd/skintext.py
msgid "R"
msgstr ""
#. Post processing pick list: abbreviation for "+Unpack"
#: sabnzbd/skintext.py
msgid "U"
msgstr ""
#. Post processing pick list: abbreviation for "+Delete"
#: sabnzbd/skintext.py
msgid "D"
msgstr ""
#. Priority pick list
#: sabnzbd/skintext.py
msgid "Force"
@@ -2343,11 +2179,6 @@ msgstr "Zastaveno"
msgid "Enter URL"
msgstr "Zadejte URL"
#. Queue page selection menu
#: sabnzbd/skintext.py
msgid "On queue finish"
msgstr "Při dokončení fronty"
#. Queue page end-of-queue action
#: sabnzbd/skintext.py
msgid "Shutdown PC"
@@ -2368,36 +2199,16 @@ msgstr "Hibernovat PC"
msgid "Shutdown SABnzbd"
msgstr "Vypnout SABnzbd"
#. Queue page selection menu or entry box
#. Queue page table column header
#: sabnzbd/skintext.py
msgid "Speed Limit"
msgstr "Limit rychlosti"
msgid "Processing"
msgstr ""
#. Queue page table column header - Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Order"
msgstr "Pořadí"
#. Queue page table column header - Job details page
#. Queue page table column header
#: sabnzbd/skintext.py
msgid "Name"
msgstr "Jméno"
#. Queue page table column header, "estimated time of arrival"
#: sabnzbd/skintext.py
msgid "ETA"
msgstr ""
#. Queue page table column header, "age of the NZB"
#: sabnzbd/skintext.py
msgid "AGE"
msgstr "Stáří"
#. Queue page table, "Delete" button
#: sabnzbd/skintext.py
msgid "Del"
msgstr ""
#. Queue page button
#: sabnzbd/skintext.py
msgid "Retry"
@@ -2428,11 +2239,6 @@ msgstr "Vymazat všechny NZB"
msgid "Purge NZBs & Delete Files"
msgstr "Vymazat všechny NZB a smazat soubory"
#. Retry all failed jobs dialog box
#: sabnzbd/skintext.py
msgid "Retry all failed jobs"
msgstr "Opakovat všechny nedokončené úkoly"
#. Queue page button
#: sabnzbd/skintext.py
msgid "Remove NZB"
@@ -2443,11 +2249,6 @@ msgstr "Odstranit NZB"
msgid "Remove NZB & Delete Files"
msgstr "Odstranit NZB a smazat soubory"
#. Queue page, as in "4G *of* 10G"
#: sabnzbd/skintext.py
msgid "of"
msgstr "z"
#. Caption for missing articles in Queue
#: sabnzbd/skintext.py
msgid "Missing articles"
@@ -2467,11 +2268,6 @@ msgstr "ručně"
msgid "Reset Quota now"
msgstr "Vynulovat kvótu"
#. Confirmation popup
#: sabnzbd/skintext.py
msgid "Delete all completed items from History?"
msgstr "Smazat věchny dokončené položky z historie?"
#. Button/link hiding History job details
#: sabnzbd/skintext.py
msgid "Hide details"
@@ -2528,25 +2324,8 @@ msgstr "Cesta"
#. Retry all failed jobs in History
#: sabnzbd/skintext.py
msgid "Retry all failed"
msgstr "Opakovat všechny nedokončené"
#. Retry all button for Retry All Failed Jobs
#: sabnzbd/skintext.py
msgid "Retry All"
msgstr "Opakovat všechny"
#: sabnzbd/skintext.py
msgid "Virus/spam"
msgstr "Virus/spam"
#: sabnzbd/skintext.py
msgid "Out of retention"
msgstr ""
#: sabnzbd/skintext.py
msgid "Other problem"
msgstr ""
msgid "Retry all failed jobs"
msgstr "Opakovat všechny nedokončené úkoly"
#. Status page button
#: sabnzbd/skintext.py
@@ -2598,21 +2377,6 @@ msgstr "+ Ladění"
msgid "Connections"
msgstr "Spojení"
#. Status page, table header
#: sabnzbd/skintext.py
msgid "Latest Warnings"
msgstr "Poslední výstrahy"
#. Status page button
#: sabnzbd/skintext.py
msgid "clear"
msgstr "vymazat"
#. Status page button
#: sabnzbd/skintext.py
msgid "Unblock"
msgstr "Odblokovat"
#. Status page, article identifier
#: sabnzbd/skintext.py
msgid "Article identifier"
@@ -2623,26 +2387,11 @@ msgstr ""
msgid "File set"
msgstr ""
#. Status page, table column header, when error occured
#: sabnzbd/skintext.py
msgid "When"
msgstr ""
#. Status page, table column header, type of message - Config->RSS table
#. column header
#: sabnzbd/skintext.py
msgid "Type"
msgstr "Typ"
#. Status page, indicator that server is enabled
#: sabnzbd/skintext.py
msgid "Enabled"
msgstr "Zapnuto"
#: sabnzbd/skintext.py
msgid "Dashboard"
msgstr ""
#: sabnzbd/skintext.py
msgid "Connection failed!"
msgstr "Spojení selhalo!"
@@ -2663,10 +2412,6 @@ msgstr "IPv6 adresa"
msgid "Nameserver / DNS Lookup"
msgstr "DNS server / DNS dotazy"
#: sabnzbd/skintext.py
msgid "CPU Model"
msgstr "Model procesoru"
#: sabnzbd/skintext.py
msgid "Download speed limited by"
msgstr ""
@@ -2679,6 +2424,10 @@ msgstr ""
msgid "Disk speed"
msgstr ""
#: sabnzbd/skintext.py
msgid "System load"
msgstr ""
#. Do not translate Pystone
#: sabnzbd/skintext.py
msgid "System Performance (Pystone)"
@@ -2692,22 +2441,10 @@ msgstr "Rychlost složky pro download"
msgid "Complete folder speed"
msgstr "Rychlost složko pro dokončené"
#: sabnzbd/skintext.py
msgid "Writing speed"
msgstr "Rychlost zápisu"
#: sabnzbd/skintext.py
msgid "Could not write. Check that the directory is writable."
msgstr ""
#: sabnzbd/skintext.py
msgid "Internet Bandwidth"
msgstr "Rychlost internetu"
#: sabnzbd/skintext.py
msgid "Click on Repeat test button below to determine"
msgstr ""
#: sabnzbd/skintext.py
msgid "Repeat test"
msgstr "Opakovat test"
@@ -2879,10 +2616,6 @@ msgstr "Bezpečnost"
msgid "Enable HTTPS"
msgstr "Povolit HTTPS"
#: sabnzbd/skintext.py
msgid "not installed"
msgstr "není nainstalováno"
#: sabnzbd/skintext.py
msgid "Enable accessing the interface from a HTTPS address."
msgstr ""
@@ -2966,12 +2699,17 @@ msgid ""
" follow with K,M,G. For example: \"64M\" or \"128M\"</i>"
msgstr ""
#. Config->Scheduling
#: sabnzbd/skintext.py
msgid "Download backup"
msgid "Create backup"
msgstr ""
#: sabnzbd/skintext.py
msgid "Save or restore a backup of the configuration file and databases."
msgid ""
"Create a backup of the configuration file and databases in the Backup "
"Folder.<br>If the Backup Folder is not set, the backup will be created in "
"the Completed Download Folder.<br>Recurring backups can be configured on the"
" Scheduling page."
msgstr ""
#: sabnzbd/skintext.py
@@ -3113,10 +2851,6 @@ msgstr "Uživatelská složka"
msgid "Browse"
msgstr ""
#: sabnzbd/skintext.py
msgid "In"
msgstr ""
#: sabnzbd/skintext.py
msgid "Temporary Download Folder"
msgstr ""
@@ -3233,6 +2967,17 @@ msgid ""
"when queue is empty.</i>"
msgstr ""
#: sabnzbd/skintext.py
msgid "Backup Folder"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Location where the backups of the configuration file and databases are "
"stored.<br />If left empty, the backup will be created in the Completed "
"Download Folder."
msgstr ""
#: sabnzbd/skintext.py
msgid "<i>Data will <b>not</b> be moved. Requires SABnzbd restart!</i>"
msgstr ""
@@ -3415,16 +3160,6 @@ msgstr ""
msgid "Some servers provide an alternative NZB when a download fails."
msgstr ""
#: sabnzbd/skintext.py
msgid "Use tags from indexer"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"When sorting, use tags from indexer for title, season, episode, etc. "
"Otherwise all naming is derived from the NZB name."
msgstr ""
#: sabnzbd/skintext.py
msgid "Enable folder rename"
msgstr ""
@@ -3475,6 +3210,14 @@ msgstr ""
msgid "Automatically sort jobs in the queue when a new job is added."
msgstr ""
#: sabnzbd/skintext.py
msgid "The queue will resort every 30 seconds if % downloaded is selected."
msgstr ""
#: sabnzbd/skintext.py
msgid "Propagation delay"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Posts will be paused untill they are at least this age. Setting job priority"
@@ -3502,6 +3245,14 @@ msgstr ""
msgid "Replace spaces with underscores in folder names."
msgstr ""
#: sabnzbd/skintext.py
msgid "Replace underscores in folder name"
msgstr ""
#: sabnzbd/skintext.py
msgid "Replace underscores with dots in folder names."
msgstr ""
#: sabnzbd/skintext.py
msgid "Replace dots in Foldername"
msgstr ""
@@ -3597,10 +3348,6 @@ msgstr ""
msgid "Quota"
msgstr ""
#: sabnzbd/skintext.py
msgid "Indexing"
msgstr ""
#: sabnzbd/skintext.py
msgid "How much can be downloaded this month (K/M/G)"
msgstr ""
@@ -3848,7 +3595,7 @@ msgstr ""
msgid "Frequency"
msgstr ""
#. Config->Scheduling - Job details page, section header
#. Config->Scheduling
#: sabnzbd/skintext.py
msgid "Action"
msgstr ""
@@ -3896,6 +3643,16 @@ msgstr ""
msgid "Next scan at"
msgstr ""
#. Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Order"
msgstr "Pořadí"
#. Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Type"
msgstr "Typ"
#. Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Filter"
@@ -4238,11 +3995,6 @@ msgstr ""
msgid "Indexer Categories / Groups"
msgstr ""
#. Small delete button
#: sabnzbd/skintext.py
msgid "X"
msgstr ""
#. Warning message
#: sabnzbd/skintext.py, sabnzbd/sorting.py
msgid "Select at least 1 category."
@@ -4273,10 +4025,6 @@ msgstr ""
msgid "Presets"
msgstr ""
#: sabnzbd/skintext.py
msgid "Example"
msgstr ""
#. Warning message
#: sabnzbd/skintext.py, sabnzbd/sorting.py
msgid "Movie Sorting"
@@ -4286,10 +4034,6 @@ msgstr ""
msgid "Enable Movie Sorting"
msgstr ""
#: sabnzbd/skintext.py
msgid "Keep loose downloads in extra folders"
msgstr ""
#: sabnzbd/skintext.py
msgid "Affected Categories"
msgstr ""
@@ -4502,51 +4246,11 @@ msgstr ""
msgid "Delete"
msgstr ""
#. Job details page, move file to top
#: sabnzbd/skintext.py
msgid "Top"
msgstr ""
#. Job details page, move file one place up
#: sabnzbd/skintext.py
msgid "Up"
msgstr "Nahoru"
#. Job details page, move file one place down
#: sabnzbd/skintext.py
msgid "Down"
msgstr ""
#. Job details page, move file to bottom
#: sabnzbd/skintext.py
msgid "Bottom"
msgstr ""
#. Job details page, select all files
#: sabnzbd/skintext.py
msgid "All"
msgstr ""
#. Job details page, invert file selection
#: sabnzbd/skintext.py
msgid "Invert"
msgstr ""
#. Job details page, filename column header
#: sabnzbd/skintext.py
msgid "Filename"
msgstr ""
#. Job details page, subject column header
#: sabnzbd/skintext.py
msgid "Subject"
msgstr ""
#. Job details page, section header
#: sabnzbd/skintext.py
msgid "Selection"
msgstr ""
#: sabnzbd/skintext.py
msgid "Free Space"
msgstr ""
@@ -4571,6 +4275,10 @@ msgstr ""
msgid "Restart SABnzbd"
msgstr ""
#: sabnzbd/skintext.py
msgid "On queue finish"
msgstr "Při dokončení fronty"
#: sabnzbd/skintext.py
msgid "Status and interface options"
msgstr ""
@@ -4647,6 +4355,10 @@ msgstr ""
msgid "Show active connections"
msgstr ""
#: sabnzbd/skintext.py
msgid "Unblock"
msgstr "Odblokovat"
#: sabnzbd/skintext.py
msgid "Orphaned jobs"
msgstr ""
@@ -4679,18 +4391,6 @@ msgstr ""
msgid "Submit"
msgstr ""
#: sabnzbd/skintext.py
msgid "Open Informational URL"
msgstr ""
#: sabnzbd/skintext.py
msgid "Submitted. Thank you!"
msgstr ""
#: sabnzbd/skintext.py
msgid "Nothing selected!"
msgstr ""
#: sabnzbd/skintext.py
msgid "Remove all selected files"
msgstr ""
@@ -4699,6 +4399,14 @@ msgstr ""
msgid "Hide/show completed files"
msgstr ""
#: sabnzbd/skintext.py
msgid "Top"
msgstr ""
#: sabnzbd/skintext.py
msgid "Bottom"
msgstr ""
#: sabnzbd/skintext.py
msgid "View Script Log"
msgstr ""
@@ -4717,6 +4425,10 @@ msgstr ""
msgid "Glitter has some (new) features you might like!"
msgstr ""
#: sabnzbd/skintext.py
msgid "Custom"
msgstr "Vlastní"
#: sabnzbd/skintext.py
msgid "Compact layout"
msgstr ""
@@ -4729,6 +4441,10 @@ msgstr ""
msgid "Tabbed layout <br/>(separate queue and history)"
msgstr ""
#: sabnzbd/skintext.py
msgid "Speed"
msgstr "Rychlost"
#: sabnzbd/skintext.py
msgid "Confirm Queue Deletions"
msgstr ""
@@ -4763,6 +4479,10 @@ msgid ""
" and the included copy of your settings."
msgstr ""
#: sabnzbd/skintext.py
msgid "Sort by % downloaded <small>Most&rarr;Least</small>"
msgstr ""
#: sabnzbd/skintext.py
msgid "Sort by Age <small>Oldest&rarr;Newest</small>"
msgstr ""
@@ -4903,16 +4623,6 @@ msgid ""
"It is licensed under the GNU GENERAL PUBLIC LICENSE Version 2 or (at your option) any later version.\n"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"In order to download from usenet you will require access to a provider. Your"
" ISP may provide you with access, however a premium provider is recommended."
msgstr ""
#: sabnzbd/skintext.py
msgid "Don't have a usenet provider? We recommend trying %s."
msgstr ""
#. Error message
#: sabnzbd/sorting.py
msgid "Failed to rename: %s to %s"
@@ -4981,10 +4691,6 @@ msgid ""
"Unknown SSL protocol: Try disabling SSL or connecting on a different port."
msgstr ""
#: sabnzbd/utils/servertests.py
msgid "Invalid server address."
msgstr ""
#: sabnzbd/utils/servertests.py
msgid "Server quit during login sequence."
msgstr ""

View File

@@ -7,7 +7,7 @@
#
msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
"Project-Id-Version: SABnzbd-3.7.0-develop\n"
"PO-Revision-Date: 2020-06-27 15:49+0000\n"
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2022\n"
"Language-Team: Danish (https://www.transifex.com/sabnzbd/teams/111101/da/)\n"
@@ -184,11 +184,7 @@ msgstr "Afprøv notifikation"
msgid "&nbsp;Resolving address"
msgstr "&nbsp; Server løsning"
#: sabnzbd/api.py
msgid "unknown"
msgstr "ukendt"
#. No value, used in dropdown menus - Job details page, select no files
#. No value, used in dropdown menus
#: sabnzbd/api.py, sabnzbd/skintext.py
msgid "None"
msgstr "Ingen"
@@ -289,6 +285,10 @@ msgstr "%s er ikke en godkendt e-mail adresse"
msgid "Server address required"
msgstr "Kræver serveradresse"
#: sabnzbd/cfg.py, sabnzbd/utils/servertests.py
msgid "Invalid server address."
msgstr "Ugyldig server adresse."
#: sabnzbd/cfg.py
msgid "%s is not a valid script"
msgstr ""
@@ -384,7 +384,7 @@ msgstr ""
msgid "Direct Unpack"
msgstr ""
#. PP status - History: job status
#. PP status
#: sabnzbd/directunpacker.py, sabnzbd/skintext.py
msgid "Completed"
msgstr "Færdig"
@@ -440,6 +440,11 @@ msgstr "Servernavnet løser ikke"
msgid "Server %s will be ignored for %s minutes"
msgstr "Server %s vil blive ignoreret for i %s minutter"
#. Warning message
#: sabnzbd/downloader.py
msgid "There are no active servers!"
msgstr ""
#. Error message
#: sabnzbd/downloader.py
msgid "Failed to initialize %s@%s with reason: %s"
@@ -605,6 +610,18 @@ msgstr "Gemmes %s mislykkedes"
msgid "Loading %s failed"
msgstr "Downloadning af %s mislykkedes"
#. Warning message
#: sabnzbd/filesystem.py
msgid ""
"%s is not writable with special character filenames. This can cause "
"problems."
msgstr ""
#. Warning message
#: sabnzbd/filesystem.py
msgid "%s is not writable at all. This blocks downloads."
msgstr ""
#: sabnzbd/interface.py
msgid "Refused connection from:"
msgstr ""
@@ -638,14 +655,6 @@ msgstr ""
"Forkert API-nøgle, anvend api-nøglen fra Konfiguration->Generelt i dit "
"tredjepartsprogram:"
#: sabnzbd/interface.py
msgid ""
"Authentication missing, please enter username/password from Config->General "
"into your 3rd party program:"
msgstr ""
"Brugeroplysninger mangler, indtast brugernavn/adgangskode fra "
"Konfiguration->Generelt i dit tredjepartsprogram:"
#: sabnzbd/interface.py, sabnzbd/newswrapper.py, sabnzbd/utils/servertests.py
msgid "Authentication failed, check username/password."
msgstr "Godkendelse mislykkedes, kontrollere brugernavn/adgangskode."
@@ -1193,27 +1202,27 @@ msgstr "Afbrudt, kan ikke afsluttes"
msgid "Error importing %s"
msgstr "Det lykkedes ikke at importere %s"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "DUPLICATE"
msgstr "DUPLIKERE"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "ENCRYPTED"
msgstr "KRYPTEREDE"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "TOO LARGE"
msgstr "FOR STOR"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "INCOMPLETE"
msgstr "UFULDSTÆNDIG"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "UNWANTED"
msgstr "UØNSKET"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "WAIT %s sec"
msgstr "VENT %s sekunder"
@@ -1561,13 +1570,13 @@ msgid "Trying RAR-based verification"
msgstr "Forsøger RAR-baseret kontrol"
#: sabnzbd/postproc.py
msgid "[%s] RAR-based verification failed: %s"
msgstr "[%s] RAR-baserede kontrollen mislykkedes: %s"
#: sabnzbd/postproc.py, sabnzbd/skintext.py
msgid "Passworded"
msgstr "Behov adgangskode"
#: sabnzbd/postproc.py
msgid "[%s] RAR-based verification failed: %s"
msgstr "[%s] RAR-baserede kontrollen mislykkedes: %s"
#: sabnzbd/postproc.py
msgid "RAR files verified successfully"
msgstr "RAR filer kontrolleres med succes"
@@ -1682,7 +1691,7 @@ msgstr "Pause 3 timer"
msgid "Pause for 6 hours"
msgstr "Pause 6 timer"
#. Shutdown SABnzbd - Config->Scheduling
#. Config->Scheduling
#: sabnzbd/sabtray.py, sabnzbd/sabtraylinux.py, sabnzbd/skintext.py
msgid "Shutdown"
msgstr "Luk ned"
@@ -1751,11 +1760,6 @@ msgstr "Kilde"
msgid "Servers"
msgstr "Server"
#. PP Failure message
#: sabnzbd/skintext.py
msgid "Failure"
msgstr "Mislykkedes"
#. PP status
#: sabnzbd/skintext.py
msgid "Failed"
@@ -1801,20 +1805,6 @@ msgstr "Hurtig kontrol..."
msgid "Verifying..."
msgstr "Bekræftelse..."
#. Pseudo-PP status, in reality used for Queue-status
#: sabnzbd/skintext.py
msgid "Downloading"
msgstr "Downloader"
#: sabnzbd/skintext.py
msgid "Propagation delay"
msgstr "Propagation delay"
#. #: Config->Scheduler
#: sabnzbd/skintext.py
msgid "Task"
msgstr "Opgave"
#. #: Config->Scheduler
#: sabnzbd/skintext.py
msgid "disable server"
@@ -1945,21 +1935,6 @@ msgstr "Nødsituation"
msgid "Low"
msgstr "Lav"
#. Megabytes
#: sabnzbd/skintext.py
msgid "MB"
msgstr "MB"
#. Gigabytes
#: sabnzbd/skintext.py
msgid "GB"
msgstr "GB"
#. Bytes (used as postfix, as in "GB", "TB")
#: sabnzbd/skintext.py
msgid "B"
msgstr "B"
#. One hour
#: sabnzbd/skintext.py
msgid "hour"
@@ -2005,54 +1980,6 @@ msgstr "Måned"
msgid "Year"
msgstr "År"
#: sabnzbd/skintext.py
msgid "January"
msgstr "januar"
#: sabnzbd/skintext.py
msgid "February"
msgstr "februar"
#: sabnzbd/skintext.py
msgid "March"
msgstr "marts"
#: sabnzbd/skintext.py
msgid "April"
msgstr "april"
#: sabnzbd/skintext.py
msgid "May"
msgstr "maj"
#: sabnzbd/skintext.py
msgid "June"
msgstr "juni"
#: sabnzbd/skintext.py
msgid "July"
msgstr "juli"
#: sabnzbd/skintext.py
msgid "August"
msgstr "august"
#: sabnzbd/skintext.py
msgid "September"
msgstr "september"
#: sabnzbd/skintext.py
msgid "October"
msgstr "oktober"
#: sabnzbd/skintext.py
msgid "November"
msgstr "november"
#: sabnzbd/skintext.py
msgid "December"
msgstr "december"
#: sabnzbd/skintext.py
msgid "Day of month"
msgstr "Månedsdag"
@@ -2077,14 +2004,6 @@ msgstr "I dag"
msgid "Total"
msgstr "Totalt"
#: sabnzbd/skintext.py
msgid "Custom"
msgstr "Tilpasse"
#: sabnzbd/skintext.py
msgid "Speed"
msgstr "Hastighed"
#: sabnzbd/skintext.py
msgid "on"
msgstr "på"
@@ -2113,42 +2032,10 @@ msgstr "eller"
msgid "Host"
msgstr "Vært"
#: sabnzbd/skintext.py
msgid "Comment"
msgstr "Kommentar"
#: sabnzbd/skintext.py
msgid "Send"
msgstr "Send"
#: sabnzbd/skintext.py
msgid "Cancel"
msgstr "Annullér"
#: sabnzbd/skintext.py
msgid "Other"
msgstr "Andet"
#: sabnzbd/skintext.py
msgid "Report"
msgstr "Rapportér"
#: sabnzbd/skintext.py
msgid "Video"
msgstr "Video"
#: sabnzbd/skintext.py
msgid "Audio"
msgstr "Lyd"
#: sabnzbd/skintext.py
msgid "Not used"
msgstr "Bruges ikke"
#: sabnzbd/skintext.py
msgid "or less"
msgstr "eller mindre"
#: sabnzbd/skintext.py
msgid "Log in"
msgstr "Log in"
@@ -2161,11 +2048,6 @@ msgstr "Log ud"
msgid "Remember me"
msgstr "Husk mig"
#. SABnzbd's theme line
#: sabnzbd/skintext.py
msgid "The automatic usenet download tool"
msgstr "Det automatiske usenet download værktøj"
#. "Save" button
#: sabnzbd/skintext.py
msgid "Save"
@@ -2180,11 +2062,6 @@ msgstr "Gemmer.."
msgid "Are you sure?"
msgstr "Er du sikker?"
#. Used in confirmation popups
#: sabnzbd/skintext.py
msgid "Delete all downloaded files?"
msgstr "Slet alle hentede filer?"
#. Main menu item
#: sabnzbd/skintext.py
msgid "Home"
@@ -2284,22 +2161,6 @@ msgstr "Søg"
msgid "Download Dir"
msgstr "Download mappe"
#: sabnzbd/skintext.py
msgid "PAUSED"
msgstr "PAUSET"
#: sabnzbd/skintext.py
msgid "Cached %s articles (%s)"
msgstr "Cached %s artikler (%s)"
#: sabnzbd/skintext.py
msgid "Sysload"
msgstr "Sysload"
#: sabnzbd/skintext.py
msgid "New release %s available at"
msgstr "Ny version %s tilgængelig"
#: sabnzbd/skintext.py
msgid "Are you sure you want to shutdown SABnzbd?"
msgstr "Er du sikker på du vil lukke SABnzbd?"
@@ -2309,21 +2170,11 @@ msgstr "Er du sikker på du vil lukke SABnzbd?"
msgid "Add"
msgstr "Tilføj"
#. Add NZB file to queue (header
#: sabnzbd/skintext.py
msgid "Add File"
msgstr "Tilføj fil"
#. Job category
#: sabnzbd/skintext.py
msgid "Category"
msgstr "Kategori"
#. Queue page table column header
#: sabnzbd/skintext.py
msgid "Processing"
msgstr "Forløb"
#. Server priority
#: sabnzbd/skintext.py
msgid "Priority"
@@ -2344,21 +2195,6 @@ msgstr "+Udpakke"
msgid "+Delete"
msgstr "+Slette"
#. Post processing pick list: abbreviation for "+Repair"
#: sabnzbd/skintext.py
msgid "R"
msgstr "R"
#. Post processing pick list: abbreviation for "+Unpack"
#: sabnzbd/skintext.py
msgid "U"
msgstr "P"
#. Post processing pick list: abbreviation for "+Delete"
#: sabnzbd/skintext.py
msgid "D"
msgstr "T"
#. Priority pick list
#: sabnzbd/skintext.py
msgid "Force"
@@ -2374,11 +2210,6 @@ msgstr "Stop"
msgid "Enter URL"
msgstr "URL"
#. Queue page selection menu
#: sabnzbd/skintext.py
msgid "On queue finish"
msgstr "Når køen er færdig"
#. Queue page end-of-queue action
#: sabnzbd/skintext.py
msgid "Shutdown PC"
@@ -2399,36 +2230,16 @@ msgstr "Sæt computer i dvale"
msgid "Shutdown SABnzbd"
msgstr "Afslut SABnzbd"
#. Queue page selection menu or entry box
#. Queue page table column header
#: sabnzbd/skintext.py
msgid "Speed Limit"
msgstr "Hastighedsbegrænsning"
msgid "Processing"
msgstr "Forløb"
#. Queue page table column header - Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Order"
msgstr "Rækkefølge"
#. Queue page table column header - Job details page
#. Queue page table column header
#: sabnzbd/skintext.py
msgid "Name"
msgstr "Navn"
#. Queue page table column header, "estimated time of arrival"
#: sabnzbd/skintext.py
msgid "ETA"
msgstr "Tid tilbage"
#. Queue page table column header, "age of the NZB"
#: sabnzbd/skintext.py
msgid "AGE"
msgstr "ALDER"
#. Queue page table, "Delete" button
#: sabnzbd/skintext.py
msgid "Del"
msgstr "Fjern"
#. Queue page button
#: sabnzbd/skintext.py
msgid "Retry"
@@ -2459,11 +2270,6 @@ msgstr "Rens NZB'er"
msgid "Purge NZBs & Delete Files"
msgstr "Rens NZB'er & slet filer"
#. Retry all failed jobs dialog box
#: sabnzbd/skintext.py
msgid "Retry all failed jobs"
msgstr "Prøv igen alle mislykkede job"
#. Queue page button
#: sabnzbd/skintext.py
msgid "Remove NZB"
@@ -2474,11 +2280,6 @@ msgstr "Fjern NZB"
msgid "Remove NZB & Delete Files"
msgstr "Fjern NZB & slet filer"
#. Queue page, as in "4G *of* 10G"
#: sabnzbd/skintext.py
msgid "of"
msgstr "fra"
#. Caption for missing articles in Queue
#: sabnzbd/skintext.py
msgid "Missing articles"
@@ -2498,11 +2299,6 @@ msgstr "manuelt"
msgid "Reset Quota now"
msgstr "Nulstil kvota nu"
#. Confirmation popup
#: sabnzbd/skintext.py
msgid "Delete all completed items from History?"
msgstr "Slet alle afsluttede emner fra historie?"
#. Button/link hiding History job details
#: sabnzbd/skintext.py
msgid "Hide details"
@@ -2559,25 +2355,8 @@ msgstr "Sti"
#. Retry all failed jobs in History
#: sabnzbd/skintext.py
msgid "Retry all failed"
msgstr "Prøv igen alle mislykkede"
#. Retry all button for Retry All Failed Jobs
#: sabnzbd/skintext.py
msgid "Retry All"
msgstr "Prøv igen alle"
#: sabnzbd/skintext.py
msgid "Virus/spam"
msgstr "Virus/spam"
#: sabnzbd/skintext.py
msgid "Out of retention"
msgstr "Udenfor retention"
#: sabnzbd/skintext.py
msgid "Other problem"
msgstr "Et andet problem"
msgid "Retry all failed jobs"
msgstr "Prøv igen alle mislykkede job"
#. Status page button
#: sabnzbd/skintext.py
@@ -2629,21 +2408,6 @@ msgstr "+ Fejlfinding"
msgid "Connections"
msgstr "Forbindelser"
#. Status page, table header
#: sabnzbd/skintext.py
msgid "Latest Warnings"
msgstr "Seneste advarsler"
#. Status page button
#: sabnzbd/skintext.py
msgid "clear"
msgstr "ryd"
#. Status page button
#: sabnzbd/skintext.py
msgid "Unblock"
msgstr "Ophæv blokering"
#. Status page, article identifier
#: sabnzbd/skintext.py
msgid "Article identifier"
@@ -2654,26 +2418,11 @@ msgstr "Artikel identifikator"
msgid "File set"
msgstr "Fil sæt"
#. Status page, table column header, when error occured
#: sabnzbd/skintext.py
msgid "When"
msgstr "Når"
#. Status page, table column header, type of message - Config->RSS table
#. column header
#: sabnzbd/skintext.py
msgid "Type"
msgstr "Type"
#. Status page, indicator that server is enabled
#: sabnzbd/skintext.py
msgid "Enabled"
msgstr "Aktiveret"
#: sabnzbd/skintext.py
msgid "Dashboard"
msgstr "Oversigt"
#: sabnzbd/skintext.py
msgid "Connection failed!"
msgstr "Tilslutning mislykkedes!"
@@ -2694,10 +2443,6 @@ msgstr "IPv6 adresse"
msgid "Nameserver / DNS Lookup"
msgstr "Nameserver/DNS Lookup"
#: sabnzbd/skintext.py
msgid "CPU Model"
msgstr "CPU Model"
#: sabnzbd/skintext.py
msgid "Download speed limited by"
msgstr ""
@@ -2710,6 +2455,10 @@ msgstr ""
msgid "Disk speed"
msgstr ""
#: sabnzbd/skintext.py
msgid "System load"
msgstr ""
#. Do not translate Pystone
#: sabnzbd/skintext.py
msgid "System Performance (Pystone)"
@@ -2723,22 +2472,10 @@ msgstr "Download mappe hastighed"
msgid "Complete folder speed"
msgstr "Komplet mappe hastighed"
#: sabnzbd/skintext.py
msgid "Writing speed"
msgstr "Skrive hastighed"
#: sabnzbd/skintext.py
msgid "Could not write. Check that the directory is writable."
msgstr "Kunne ikke skrive. Kontrollér, at mappen er skrivbar."
#: sabnzbd/skintext.py
msgid "Internet Bandwidth"
msgstr ""
#: sabnzbd/skintext.py
msgid "Click on Repeat test button below to determine"
msgstr "Klik på gentagelse testknappen nedenfor for at afgøre"
#: sabnzbd/skintext.py
msgid "Repeat test"
msgstr "Gentagelse test"
@@ -2921,10 +2658,6 @@ msgstr "Sikkerhed"
msgid "Enable HTTPS"
msgstr "HTTPS Aktivering"
#: sabnzbd/skintext.py
msgid "not installed"
msgstr "ikke installeret"
#: sabnzbd/skintext.py
msgid "Enable accessing the interface from a HTTPS address."
msgstr "Aktiver adgang til interface fra en HTTPS-adresse."
@@ -3012,12 +2745,17 @@ msgstr ""
"Cache artikler i hukommelsen for at reducere diskadgang.<br /><i>I bytes, "
"efterfulgt af K,M,G. For eksempel: \"64M\" eller \"128M\"</i>"
#. Config->Scheduling
#: sabnzbd/skintext.py
msgid "Download backup"
msgid "Create backup"
msgstr ""
#: sabnzbd/skintext.py
msgid "Save or restore a backup of the configuration file and databases."
msgid ""
"Create a backup of the configuration file and databases in the Backup "
"Folder.<br>If the Backup Folder is not set, the backup will be created in "
"the Completed Download Folder.<br>Recurring backups can be configured on the"
" Scheduling page."
msgstr ""
#: sabnzbd/skintext.py
@@ -3164,10 +2902,6 @@ msgstr "Brugermapper"
msgid "Browse"
msgstr "Gennemse"
#: sabnzbd/skintext.py
msgid "In"
msgstr "Ligger i"
#: sabnzbd/skintext.py
msgid "Temporary Download Folder"
msgstr "Midlertidig download mappe"
@@ -3298,6 +3032,17 @@ msgstr ""
"Placering for kø administrativ og historik database.<br /><i>Kan kun ændres,"
" når køen er tom.</i>"
#: sabnzbd/skintext.py
msgid "Backup Folder"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Location where the backups of the configuration file and databases are "
"stored.<br />If left empty, the backup will be created in the Completed "
"Download Folder."
msgstr ""
#: sabnzbd/skintext.py
msgid "<i>Data will <b>not</b> be moved. Requires SABnzbd restart!</i>"
msgstr "<i>Data vil <b>ikke</b> blive flyttet. Kræver SABnzbd genstartet!</i>"
@@ -3492,16 +3237,6 @@ msgstr "Ved fejl, prøv alternativ NZB"
msgid "Some servers provide an alternative NZB when a download fails."
msgstr "Nogle servere levere en alternativ NZB når et download mislykkes."
#: sabnzbd/skintext.py
msgid "Use tags from indexer"
msgstr "Brug mærker fra indexer"
#: sabnzbd/skintext.py
msgid ""
"When sorting, use tags from indexer for title, season, episode, etc. "
"Otherwise all naming is derived from the NZB name."
msgstr ""
#: sabnzbd/skintext.py
msgid "Enable folder rename"
msgstr "Aktiver mappe omdøbning"
@@ -3554,6 +3289,14 @@ msgstr ""
msgid "Automatically sort jobs in the queue when a new job is added."
msgstr ""
#: sabnzbd/skintext.py
msgid "The queue will resort every 30 seconds if % downloaded is selected."
msgstr ""
#: sabnzbd/skintext.py
msgid "Propagation delay"
msgstr "Propagation delay"
#: sabnzbd/skintext.py
msgid ""
"Posts will be paused untill they are at least this age. Setting job priority"
@@ -3583,6 +3326,14 @@ msgstr "Erstat mellemrum i mappenavn"
msgid "Replace spaces with underscores in folder names."
msgstr "Erstat mellemrum med understreg i mappenavn."
#: sabnzbd/skintext.py
msgid "Replace underscores in folder name"
msgstr ""
#: sabnzbd/skintext.py
msgid "Replace underscores with dots in folder names."
msgstr ""
#: sabnzbd/skintext.py
msgid "Replace dots in Foldername"
msgstr "Erstat punktummer i mappenavn"
@@ -3682,10 +3433,6 @@ msgstr "Navngivning"
msgid "Quota"
msgstr "Kvota"
#: sabnzbd/skintext.py
msgid "Indexing"
msgstr "Indeksering"
#: sabnzbd/skintext.py
msgid "How much can be downloaded this month (K/M/G)"
msgstr "Hvor meget der kan downloades i denne måned (K/M/G)"
@@ -3939,7 +3686,7 @@ msgstr "Opret planlægning"
msgid "Frequency"
msgstr "Forekomst"
#. Config->Scheduling - Job details page, section header
#. Config->Scheduling
#: sabnzbd/skintext.py
msgid "Action"
msgstr "Udfør"
@@ -3991,6 +3738,16 @@ msgstr ""
msgid "Next scan at"
msgstr ""
#. Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Order"
msgstr "Rækkefølge"
#. Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Type"
msgstr "Type"
#. Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Filter"
@@ -4339,11 +4096,6 @@ msgstr "Mappe/Søgesti"
msgid "Indexer Categories / Groups"
msgstr "Indekseringen kategorier/grupper"
#. Small delete button
#: sabnzbd/skintext.py
msgid "X"
msgstr "X"
#. Warning message
#: sabnzbd/skintext.py, sabnzbd/sorting.py
msgid "Select at least 1 category."
@@ -4374,10 +4126,6 @@ msgstr "Anvend filtre"
msgid "Presets"
msgstr "Forudindstillinger"
#: sabnzbd/skintext.py
msgid "Example"
msgstr "Eksempel"
#. Warning message
#: sabnzbd/skintext.py, sabnzbd/sorting.py
msgid "Movie Sorting"
@@ -4387,10 +4135,6 @@ msgstr "Film sortering"
msgid "Enable Movie Sorting"
msgstr "Aktivere filmsortering"
#: sabnzbd/skintext.py
msgid "Keep loose downloads in extra folders"
msgstr "Behold løse download i ekstra mapper"
#: sabnzbd/skintext.py
msgid "Affected Categories"
msgstr "Påvirkede Kategorier"
@@ -4607,51 +4351,11 @@ msgstr "Ændre NZB detaljer"
msgid "Delete"
msgstr "Slet"
#. Job details page, move file to top
#: sabnzbd/skintext.py
msgid "Top"
msgstr "Øverst"
#. Job details page, move file one place up
#: sabnzbd/skintext.py
msgid "Up"
msgstr "Op"
#. Job details page, move file one place down
#: sabnzbd/skintext.py
msgid "Down"
msgstr "Ned"
#. Job details page, move file to bottom
#: sabnzbd/skintext.py
msgid "Bottom"
msgstr "Bunden"
#. Job details page, select all files
#: sabnzbd/skintext.py
msgid "All"
msgstr "Alle"
#. Job details page, invert file selection
#: sabnzbd/skintext.py
msgid "Invert"
msgstr "Invertere"
#. Job details page, filename column header
#: sabnzbd/skintext.py
msgid "Filename"
msgstr "Filnavn"
#. Job details page, subject column header
#: sabnzbd/skintext.py
msgid "Subject"
msgstr "Emne"
#. Job details page, section header
#: sabnzbd/skintext.py
msgid "Selection"
msgstr "Udvælgelse"
#: sabnzbd/skintext.py
msgid "Free Space"
msgstr "Ledig diskplads"
@@ -4676,6 +4380,10 @@ msgstr "Tjek alle"
msgid "Restart SABnzbd"
msgstr "Genstart SABnzbd"
#: sabnzbd/skintext.py
msgid "On queue finish"
msgstr "Når køen er færdig"
#: sabnzbd/skintext.py
msgid "Status and interface options"
msgstr "Status og grænseflade indstillinger"
@@ -4752,6 +4460,10 @@ msgstr "Kø reparation"
msgid "Show active connections"
msgstr "Vis aktive forbindelser"
#: sabnzbd/skintext.py
msgid "Unblock"
msgstr "Ophæv blokering"
#: sabnzbd/skintext.py
msgid "Orphaned jobs"
msgstr "Forældreløse jobs"
@@ -4784,18 +4496,6 @@ msgstr "Angiv et valgfrit filnavn"
msgid "Submit"
msgstr "Tilføj"
#: sabnzbd/skintext.py
msgid "Open Informational URL"
msgstr "Åbn informations URL"
#: sabnzbd/skintext.py
msgid "Submitted. Thank you!"
msgstr "Tilføjet. Mange tak!"
#: sabnzbd/skintext.py
msgid "Nothing selected!"
msgstr "Intet er valgt!"
#: sabnzbd/skintext.py
msgid "Remove all selected files"
msgstr "Fjern alle valgte filer"
@@ -4804,6 +4504,14 @@ msgstr "Fjern alle valgte filer"
msgid "Hide/show completed files"
msgstr "Skjul/vis komplette filer"
#: sabnzbd/skintext.py
msgid "Top"
msgstr "Øverst"
#: sabnzbd/skintext.py
msgid "Bottom"
msgstr "Bunden"
#: sabnzbd/skintext.py
msgid "View Script Log"
msgstr "Vis scriptlog"
@@ -4824,6 +4532,10 @@ msgstr ""
msgid "Glitter has some (new) features you might like!"
msgstr "Glitter har nogle (nye) egenskaber, du kan lide!"
#: sabnzbd/skintext.py
msgid "Custom"
msgstr "Tilpasse"
#: sabnzbd/skintext.py
msgid "Compact layout"
msgstr "Kompakt layout"
@@ -4836,6 +4548,10 @@ msgstr ""
msgid "Tabbed layout <br/>(separate queue and history)"
msgstr "Tabbed layout <br/>(separat kø og historie)"
#: sabnzbd/skintext.py
msgid "Speed"
msgstr "Hastighed"
#: sabnzbd/skintext.py
msgid "Confirm Queue Deletions"
msgstr "Bekræft Kø-fjernelse"
@@ -4870,6 +4586,10 @@ msgid ""
" and the included copy of your settings."
msgstr ""
#: sabnzbd/skintext.py
msgid "Sort by % downloaded <small>Most&rarr;Least</small>"
msgstr ""
#: sabnzbd/skintext.py
msgid "Sort by Age <small>Oldest&rarr;Newest</small>"
msgstr "Sortere efter alder <small>Ældst&rarr;Nyeste</small>"
@@ -5016,18 +4736,6 @@ msgstr ""
"Det er gratis software, og du er velkommen til at videredistribuere det under visse betingelser. \n"
"Den er licenseret under GNU General Public License version 2 eller (efter eget valg) enhver senere version.\n"
#: sabnzbd/skintext.py
msgid ""
"In order to download from usenet you will require access to a provider. Your"
" ISP may provide you with access, however a premium provider is recommended."
msgstr ""
"For at hente fra usenet kræves der adgang fra en udbyder. Din "
"internetudbyder kan give dig adgang, men en præmie udbyder anbefales."
#: sabnzbd/skintext.py
msgid "Don't have a usenet provider? We recommend trying %s."
msgstr "Har du ingen usenet leverandør? Vi anbefaler at prøve %s."
#. Error message
#: sabnzbd/sorting.py
msgid "Failed to rename: %s to %s"
@@ -5098,10 +4806,6 @@ msgstr ""
"Ukendt SSL protokol: Prøv at deaktivere SSL eller forbinder på en anden "
"port."
#: sabnzbd/utils/servertests.py
msgid "Invalid server address."
msgstr "Ugyldig server adresse."
#: sabnzbd/utils/servertests.py
msgid "Server quit during login sequence."
msgstr "Server afslut under login-sekvens."

View File

@@ -15,7 +15,7 @@
#
msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
"Project-Id-Version: SABnzbd-3.7.0-develop\n"
"PO-Revision-Date: 2020-06-27 15:49+0000\n"
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2022\n"
"Language-Team: German (https://www.transifex.com/sabnzbd/teams/111101/de/)\n"
@@ -199,11 +199,7 @@ msgstr "Benachrichtigungen testen"
msgid "&nbsp;Resolving address"
msgstr "&nbsp;Adresse wird aufgelöst …"
#: sabnzbd/api.py
msgid "unknown"
msgstr "unbekannt"
#. No value, used in dropdown menus - Job details page, select no files
#. No value, used in dropdown menus
#: sabnzbd/api.py, sabnzbd/skintext.py
msgid "None"
msgstr "Nichts"
@@ -307,6 +303,10 @@ msgstr "%s ist keine gültige E-Mail-Adresse"
msgid "Server address required"
msgstr "Server-Adresse wird benötigt"
#: sabnzbd/cfg.py, sabnzbd/utils/servertests.py
msgid "Invalid server address."
msgstr "Ungültige Server-Adresse."
#: sabnzbd/cfg.py
msgid "%s is not a valid script"
msgstr "%s ist kein gültiges Script"
@@ -409,7 +409,7 @@ msgstr ""
msgid "Direct Unpack"
msgstr "Direkt entpacken"
#. PP status - History: job status
#. PP status
#: sabnzbd/directunpacker.py, sabnzbd/skintext.py
msgid "Completed"
msgstr "Fertiggestellt"
@@ -468,6 +468,11 @@ msgstr "Konnte Servernamen nicht auflösen"
msgid "Server %s will be ignored for %s minutes"
msgstr "Server %s wird für %s Minuten ignoriert"
#. Warning message
#: sabnzbd/downloader.py
msgid "There are no active servers!"
msgstr ""
#. Error message
#: sabnzbd/downloader.py
msgid "Failed to initialize %s@%s with reason: %s"
@@ -635,6 +640,18 @@ msgstr "Fehler beim Speichern von %s"
msgid "Loading %s failed"
msgstr "Fehler beim Laden von %s"
#. Warning message
#: sabnzbd/filesystem.py
msgid ""
"%s is not writable with special character filenames. This can cause "
"problems."
msgstr ""
#. Warning message
#: sabnzbd/filesystem.py
msgid "%s is not writable at all. This blocks downloads."
msgstr ""
#: sabnzbd/interface.py
msgid "Refused connection from:"
msgstr "Abgelehnte Verbindung von:"
@@ -668,14 +685,6 @@ msgstr ""
"API-Schlüssel ungültig. Bitte API-Schlüssel aus Einstellungen->Allgemein in "
"die externe Anwendung eingeben:"
#: sabnzbd/interface.py
msgid ""
"Authentication missing, please enter username/password from Config->General "
"into your 3rd party program:"
msgstr ""
"Authentifizierung fehlt. Bitte Benutzernamen und Passwort aus "
"Einstellungen->Allgemein in die externe Anwendung eingeben:"
#: sabnzbd/interface.py, sabnzbd/newswrapper.py, sabnzbd/utils/servertests.py
msgid "Authentication failed, check username/password."
msgstr ""
@@ -1241,27 +1250,27 @@ msgstr "Abgebrochen, kann nicht fertiggestellt werden"
msgid "Error importing %s"
msgstr "Fehler beim Importieren von %s"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "DUPLICATE"
msgstr "DUPLIKAT"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "ENCRYPTED"
msgstr "VERSCHLÜSSELT"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "TOO LARGE"
msgstr "ZU GROSS"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "INCOMPLETE"
msgstr "UNVOLLSTÄNDIG"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "UNWANTED"
msgstr "UNERWÜNSCHT"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "WAIT %s sec"
msgstr "WARTE %s Sek"
@@ -1622,13 +1631,13 @@ msgid "Trying RAR-based verification"
msgstr "RAR-basierte Überprüfung versuchen"
#: sabnzbd/postproc.py
msgid "[%s] RAR-based verification failed: %s"
msgstr "[%s] RAR-basierte Überprüfung ist fehlgeschlagen: %s"
#: sabnzbd/postproc.py, sabnzbd/skintext.py
msgid "Passworded"
msgstr "passwortgeschützt"
#: sabnzbd/postproc.py
msgid "[%s] RAR-based verification failed: %s"
msgstr "[%s] RAR-basierte Überprüfung ist fehlgeschlagen: %s"
#: sabnzbd/postproc.py
msgid "RAR files verified successfully"
msgstr "RAR-Datei erfolgreich überprüft"
@@ -1743,7 +1752,7 @@ msgstr "3 Stunden anhalten"
msgid "Pause for 6 hours"
msgstr "6 Stunden anhalten"
#. Shutdown SABnzbd - Config->Scheduling
#. Config->Scheduling
#: sabnzbd/sabtray.py, sabnzbd/sabtraylinux.py, sabnzbd/skintext.py
msgid "Shutdown"
msgstr "Beenden"
@@ -1812,11 +1821,6 @@ msgstr "Quelle"
msgid "Servers"
msgstr "Server"
#. PP Failure message
#: sabnzbd/skintext.py
msgid "Failure"
msgstr "Fehler"
#. PP status
#: sabnzbd/skintext.py
msgid "Failed"
@@ -1862,20 +1866,6 @@ msgstr "Schnelle Überprüfung …"
msgid "Verifying..."
msgstr "Überprüfung läuft …"
#. Pseudo-PP status, in reality used for Queue-status
#: sabnzbd/skintext.py
msgid "Downloading"
msgstr "Am herunterladen"
#: sabnzbd/skintext.py
msgid "Propagation delay"
msgstr "Ausbreitungsverzögerung"
#. #: Config->Scheduler
#: sabnzbd/skintext.py
msgid "Task"
msgstr "Aufgabe"
#. #: Config->Scheduler
#: sabnzbd/skintext.py
msgid "disable server"
@@ -2006,21 +1996,6 @@ msgstr "Notfall"
msgid "Low"
msgstr "Gering"
#. Megabytes
#: sabnzbd/skintext.py
msgid "MB"
msgstr "MB"
#. Gigabytes
#: sabnzbd/skintext.py
msgid "GB"
msgstr "GB"
#. Bytes (used as postfix, as in "GB", "TB")
#: sabnzbd/skintext.py
msgid "B"
msgstr "B"
#. One hour
#: sabnzbd/skintext.py
msgid "hour"
@@ -2066,54 +2041,6 @@ msgstr "Monat"
msgid "Year"
msgstr "Jahr"
#: sabnzbd/skintext.py
msgid "January"
msgstr "Januar"
#: sabnzbd/skintext.py
msgid "February"
msgstr "Februar"
#: sabnzbd/skintext.py
msgid "March"
msgstr "März"
#: sabnzbd/skintext.py
msgid "April"
msgstr "April"
#: sabnzbd/skintext.py
msgid "May"
msgstr "Mai"
#: sabnzbd/skintext.py
msgid "June"
msgstr "Juni"
#: sabnzbd/skintext.py
msgid "July"
msgstr "Juli"
#: sabnzbd/skintext.py
msgid "August"
msgstr "August"
#: sabnzbd/skintext.py
msgid "September"
msgstr "September"
#: sabnzbd/skintext.py
msgid "October"
msgstr "Oktober"
#: sabnzbd/skintext.py
msgid "November"
msgstr "November"
#: sabnzbd/skintext.py
msgid "December"
msgstr "Dezember"
#: sabnzbd/skintext.py
msgid "Day of month"
msgstr "Tag im Monat"
@@ -2138,14 +2065,6 @@ msgstr "Heute"
msgid "Total"
msgstr "Gesamt"
#: sabnzbd/skintext.py
msgid "Custom"
msgstr "Benutzerdefiniert"
#: sabnzbd/skintext.py
msgid "Speed"
msgstr "Geschwindigkeit"
#: sabnzbd/skintext.py
msgid "on"
msgstr "An"
@@ -2174,42 +2093,10 @@ msgstr "oder"
msgid "Host"
msgstr "Adresse"
#: sabnzbd/skintext.py
msgid "Comment"
msgstr "Kommentar"
#: sabnzbd/skintext.py
msgid "Send"
msgstr "Absenden"
#: sabnzbd/skintext.py
msgid "Cancel"
msgstr "Abbrechen"
#: sabnzbd/skintext.py
msgid "Other"
msgstr "Andere"
#: sabnzbd/skintext.py
msgid "Report"
msgstr "Bericht"
#: sabnzbd/skintext.py
msgid "Video"
msgstr "Video"
#: sabnzbd/skintext.py
msgid "Audio"
msgstr "Audio"
#: sabnzbd/skintext.py
msgid "Not used"
msgstr "Nicht verwendet"
#: sabnzbd/skintext.py
msgid "or less"
msgstr "oder weniger"
#: sabnzbd/skintext.py
msgid "Log in"
msgstr "Anmelden"
@@ -2222,11 +2109,6 @@ msgstr "Abmelden"
msgid "Remember me"
msgstr "Automatische Anmeldung"
#. SABnzbd's theme line
#: sabnzbd/skintext.py
msgid "The automatic usenet download tool"
msgstr "Automatisiertes Programm für Usenet-Downloads"
#. "Save" button
#: sabnzbd/skintext.py
msgid "Save"
@@ -2241,11 +2123,6 @@ msgstr "Speichervorgang …"
msgid "Are you sure?"
msgstr "Sind Sie sicher?"
#. Used in confirmation popups
#: sabnzbd/skintext.py
msgid "Delete all downloaded files?"
msgstr "Alle heruntergeladenen Dateien löschen?"
#. Main menu item
#: sabnzbd/skintext.py
msgid "Home"
@@ -2345,22 +2222,6 @@ msgstr "Suchen"
msgid "Download Dir"
msgstr "Downloads"
#: sabnzbd/skintext.py
msgid "PAUSED"
msgstr "ANGEHALTEN"
#: sabnzbd/skintext.py
msgid "Cached %s articles (%s)"
msgstr "%s Artikel im Cache (%s)"
#: sabnzbd/skintext.py
msgid "Sysload"
msgstr "Systemlast"
#: sabnzbd/skintext.py
msgid "New release %s available at"
msgstr "Neue Version %s verfügbar unter"
#: sabnzbd/skintext.py
msgid "Are you sure you want to shutdown SABnzbd?"
msgstr "Möchten Sie SABnzbd wirklich beenden?"
@@ -2370,21 +2231,11 @@ msgstr "Möchten Sie SABnzbd wirklich beenden?"
msgid "Add"
msgstr "Hinzufügen einer"
#. Add NZB file to queue (header
#: sabnzbd/skintext.py
msgid "Add File"
msgstr "Datei hinzufügen"
#. Job category
#: sabnzbd/skintext.py
msgid "Category"
msgstr "Kategorie"
#. Queue page table column header
#: sabnzbd/skintext.py
msgid "Processing"
msgstr "Verarbeiten"
#. Server priority
#: sabnzbd/skintext.py
msgid "Priority"
@@ -2405,21 +2256,6 @@ msgstr "+Entpacken"
msgid "+Delete"
msgstr "+Löschen"
#. Post processing pick list: abbreviation for "+Repair"
#: sabnzbd/skintext.py
msgid "R"
msgstr "R"
#. Post processing pick list: abbreviation for "+Unpack"
#: sabnzbd/skintext.py
msgid "U"
msgstr "E"
#. Post processing pick list: abbreviation for "+Delete"
#: sabnzbd/skintext.py
msgid "D"
msgstr "L"
#. Priority pick list
#: sabnzbd/skintext.py
msgid "Force"
@@ -2435,11 +2271,6 @@ msgstr "Anhalten"
msgid "Enter URL"
msgstr "URL"
#. Queue page selection menu
#: sabnzbd/skintext.py
msgid "On queue finish"
msgstr "Wenn fertig"
#. Queue page end-of-queue action
#: sabnzbd/skintext.py
msgid "Shutdown PC"
@@ -2460,36 +2291,16 @@ msgstr "Rechner in den Ruhezustand versetzen"
msgid "Shutdown SABnzbd"
msgstr "SABnzbd beenden"
#. Queue page selection menu or entry box
#. Queue page table column header
#: sabnzbd/skintext.py
msgid "Speed Limit"
msgstr "Geschwindigkeitsbegrenzung"
msgid "Processing"
msgstr "Verarbeiten"
#. Queue page table column header - Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Order"
msgstr "Reihenfolge"
#. Queue page table column header - Job details page
#. Queue page table column header
#: sabnzbd/skintext.py
msgid "Name"
msgstr "Name"
#. Queue page table column header, "estimated time of arrival"
#: sabnzbd/skintext.py
msgid "ETA"
msgstr "ETA"
#. Queue page table column header, "age of the NZB"
#: sabnzbd/skintext.py
msgid "AGE"
msgstr "Alter"
#. Queue page table, "Delete" button
#: sabnzbd/skintext.py
msgid "Del"
msgstr "Löschen"
#. Queue page button
#: sabnzbd/skintext.py
msgid "Retry"
@@ -2520,11 +2331,6 @@ msgstr "NZBs löschen"
msgid "Purge NZBs & Delete Files"
msgstr "NZBs und Dateien löschen"
#. Retry all failed jobs dialog box
#: sabnzbd/skintext.py
msgid "Retry all failed jobs"
msgstr "Fehlgeschlagene Aufträge neustarten"
#. Queue page button
#: sabnzbd/skintext.py
msgid "Remove NZB"
@@ -2535,11 +2341,6 @@ msgstr "NZB löschen"
msgid "Remove NZB & Delete Files"
msgstr "NZBs und Dateien löschen"
#. Queue page, as in "4G *of* 10G"
#: sabnzbd/skintext.py
msgid "of"
msgstr "von"
#. Caption for missing articles in Queue
#: sabnzbd/skintext.py
msgid "Missing articles"
@@ -2559,11 +2360,6 @@ msgstr "Manuell"
msgid "Reset Quota now"
msgstr "Kontingent jetzt zurücksetzen"
#. Confirmation popup
#: sabnzbd/skintext.py
msgid "Delete all completed items from History?"
msgstr "Alle fertigen Downloads aus dem Verlauf entfernen?"
#. Button/link hiding History job details
#: sabnzbd/skintext.py
msgid "Hide details"
@@ -2620,25 +2416,8 @@ msgstr "Pfad"
#. Retry all failed jobs in History
#: sabnzbd/skintext.py
msgid "Retry all failed"
msgstr "Alle fehlgeschlagenen neustarten"
#. Retry all button for Retry All Failed Jobs
#: sabnzbd/skintext.py
msgid "Retry All"
msgstr "Alle neustarten"
#: sabnzbd/skintext.py
msgid "Virus/spam"
msgstr "Virus/Spam"
#: sabnzbd/skintext.py
msgid "Out of retention"
msgstr "Außerhalb der Serverretention"
#: sabnzbd/skintext.py
msgid "Other problem"
msgstr "Anderes Problem"
msgid "Retry all failed jobs"
msgstr "Fehlgeschlagene Aufträge neustarten"
#. Status page button
#: sabnzbd/skintext.py
@@ -2693,21 +2472,6 @@ msgstr "+ Fehlersuche"
msgid "Connections"
msgstr "Verbindungen"
#. Status page, table header
#: sabnzbd/skintext.py
msgid "Latest Warnings"
msgstr "Neuste Warnungen"
#. Status page button
#: sabnzbd/skintext.py
msgid "clear"
msgstr "Leeren"
#. Status page button
#: sabnzbd/skintext.py
msgid "Unblock"
msgstr "Freigeben"
#. Status page, article identifier
#: sabnzbd/skintext.py
msgid "Article identifier"
@@ -2718,26 +2482,11 @@ msgstr "Artikelbezeichner"
msgid "File set"
msgstr "Dateimenge"
#. Status page, table column header, when error occured
#: sabnzbd/skintext.py
msgid "When"
msgstr "Wann"
#. Status page, table column header, type of message - Config->RSS table
#. column header
#: sabnzbd/skintext.py
msgid "Type"
msgstr "Typ"
#. Status page, indicator that server is enabled
#: sabnzbd/skintext.py
msgid "Enabled"
msgstr "Aktiv"
#: sabnzbd/skintext.py
msgid "Dashboard"
msgstr "Übersichtsseite"
#: sabnzbd/skintext.py
msgid "Connection failed!"
msgstr "Verbindung fehlgeschlagen!"
@@ -2758,10 +2507,6 @@ msgstr "IPv6-Adresse"
msgid "Nameserver / DNS Lookup"
msgstr "DNS-Server"
#: sabnzbd/skintext.py
msgid "CPU Model"
msgstr "CPU-Modell"
#: sabnzbd/skintext.py
msgid "Download speed limited by"
msgstr ""
@@ -2774,6 +2519,10 @@ msgstr ""
msgid "Disk speed"
msgstr ""
#: sabnzbd/skintext.py
msgid "System load"
msgstr ""
#. Do not translate Pystone
#: sabnzbd/skintext.py
msgid "System Performance (Pystone)"
@@ -2787,22 +2536,10 @@ msgstr "Zielverzeichnis Geschwindigkeit"
msgid "Complete folder speed"
msgstr "Zielverzeichnis Geschwindigkeit"
#: sabnzbd/skintext.py
msgid "Writing speed"
msgstr "Schreibgeschwindigkeit"
#: sabnzbd/skintext.py
msgid "Could not write. Check that the directory is writable."
msgstr "Konnte nicht schreiben. Überprüfe, ob der Ordner beschreibbar ist."
#: sabnzbd/skintext.py
msgid "Internet Bandwidth"
msgstr "Internet Bandbreite"
#: sabnzbd/skintext.py
msgid "Click on Repeat test button below to determine"
msgstr "Klick auf \"Test wiederholen\" um es festzustellen"
#: sabnzbd/skintext.py
msgid "Repeat test"
msgstr "Test wiederholen"
@@ -2997,10 +2734,6 @@ msgstr "Sicherheit"
msgid "Enable HTTPS"
msgstr "HTTPS aktivieren"
#: sabnzbd/skintext.py
msgid "not installed"
msgstr "nicht installiert"
#: sabnzbd/skintext.py
msgid "Enable accessing the interface from a HTTPS address."
msgstr "Zugriff auf die Oberfläche über HTTPS-Adressen erlauben"
@@ -3096,12 +2829,17 @@ msgstr ""
"Festplatte zu reduzieren.<br /><i>In Bytes, gefolgt von einem optionalen K, "
"M oder G. Zum Beispiel: \"64M\" oder \"128M\"</i>"
#. Config->Scheduling
#: sabnzbd/skintext.py
msgid "Download backup"
msgid "Create backup"
msgstr ""
#: sabnzbd/skintext.py
msgid "Save or restore a backup of the configuration file and databases."
msgid ""
"Create a backup of the configuration file and databases in the Backup "
"Folder.<br>If the Backup Folder is not set, the backup will be created in "
"the Completed Download Folder.<br>Recurring backups can be configured on the"
" Scheduling page."
msgstr ""
#: sabnzbd/skintext.py
@@ -3254,10 +2992,6 @@ msgstr "Benutzer-Ordner"
msgid "Browse"
msgstr "Durchsuchen"
#: sabnzbd/skintext.py
msgid "In"
msgstr "In"
#: sabnzbd/skintext.py
msgid "Temporary Download Folder"
msgstr "Temporärer Download-Ordner"
@@ -3395,6 +3129,17 @@ msgstr ""
"Datenbanken enthält.<br /><i>Kann nur geändert werden, wenn die "
"Warteschlange leer ist.</i>"
#: sabnzbd/skintext.py
msgid "Backup Folder"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Location where the backups of the configuration file and databases are "
"stored.<br />If left empty, the backup will be created in the Completed "
"Download Folder."
msgstr ""
#: sabnzbd/skintext.py
msgid "<i>Data will <b>not</b> be moved. Requires SABnzbd restart!</i>"
msgstr ""
@@ -3603,18 +3348,6 @@ msgstr ""
"Manche Server stellen ein alternatives NZB zur Verfügung, falls ein Download"
" fehlschlägt."
#: sabnzbd/skintext.py
msgid "Use tags from indexer"
msgstr "Übernehme Markierungen vom Indexer"
#: sabnzbd/skintext.py
msgid ""
"When sorting, use tags from indexer for title, season, episode, etc. "
"Otherwise all naming is derived from the NZB name."
msgstr ""
"Beim Sortieren, verwende Tags aus Indexer für Titel, Saison, Episode, usw. "
"Andernfalls wird alle Namensgebung aus dem NZB-Namen abgeleitet."
#: sabnzbd/skintext.py
msgid "Enable folder rename"
msgstr "Ordner-Umbenennung aktivieren"
@@ -3671,6 +3404,14 @@ msgid "Automatically sort jobs in the queue when a new job is added."
msgstr ""
"Warteschlange automatisch sortieren wenn ein neuer Job hinzugefügt wird."
#: sabnzbd/skintext.py
msgid "The queue will resort every 30 seconds if % downloaded is selected."
msgstr ""
#: sabnzbd/skintext.py
msgid "Propagation delay"
msgstr "Ausbreitungsverzögerung"
#: sabnzbd/skintext.py
msgid ""
"Posts will be paused untill they are at least this age. Setting job priority"
@@ -3701,6 +3442,14 @@ msgstr "Leerzeichen in Ordnernamen ersetzen"
msgid "Replace spaces with underscores in folder names."
msgstr "Leerzeichen in Ordnernamen durch Unterstriche ersetzen."
#: sabnzbd/skintext.py
msgid "Replace underscores in folder name"
msgstr ""
#: sabnzbd/skintext.py
msgid "Replace underscores with dots in folder names."
msgstr ""
#: sabnzbd/skintext.py
msgid "Replace dots in Foldername"
msgstr "Punkte in Ordner-Namen ersetzen"
@@ -3807,10 +3556,6 @@ msgstr "Benennung"
msgid "Quota"
msgstr "Kontingent"
#: sabnzbd/skintext.py
msgid "Indexing"
msgstr "Indexierung"
#: sabnzbd/skintext.py
msgid "How much can be downloaded this month (K/M/G)"
msgstr "Wie viel kann in diesem Monat heruntergeladen werden (K/M/G)?"
@@ -4073,7 +3818,7 @@ msgstr "Regel hinzufügen"
msgid "Frequency"
msgstr "Häufigkeit"
#. Config->Scheduling - Job details page, section header
#. Config->Scheduling
#: sabnzbd/skintext.py
msgid "Action"
msgstr "Aktion"
@@ -4125,6 +3870,16 @@ msgstr "Bearbeiten"
msgid "Next scan at"
msgstr "Nächster Scan um"
#. Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Order"
msgstr "Reihenfolge"
#. Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Type"
msgstr "Typ"
#. Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Filter"
@@ -4479,11 +4234,6 @@ msgstr "Ordner/Pfad"
msgid "Indexer Categories / Groups"
msgstr "Indexer Kategorien/Gruppen"
#. Small delete button
#: sabnzbd/skintext.py
msgid "X"
msgstr "X"
#. Warning message
#: sabnzbd/skintext.py, sabnzbd/sorting.py
msgid "Select at least 1 category."
@@ -4514,10 +4264,6 @@ msgstr "Filter übernehmen"
msgid "Presets"
msgstr "Voreinstellungen"
#: sabnzbd/skintext.py
msgid "Example"
msgstr "Beispiel"
#. Warning message
#: sabnzbd/skintext.py, sabnzbd/sorting.py
msgid "Movie Sorting"
@@ -4527,10 +4273,6 @@ msgstr "Film Sortierung"
msgid "Enable Movie Sorting"
msgstr "Film-Sortierung aktivieren"
#: sabnzbd/skintext.py
msgid "Keep loose downloads in extra folders"
msgstr "Unbestimmte Downloads in einem zusätzlichen Ordner speichern."
#: sabnzbd/skintext.py
msgid "Affected Categories"
msgstr "Betroffene Kategorien"
@@ -4747,51 +4489,11 @@ msgstr "NZB-Details bearbeiten"
msgid "Delete"
msgstr "Löschen"
#. Job details page, move file to top
#: sabnzbd/skintext.py
msgid "Top"
msgstr "Ganz nach oben"
#. Job details page, move file one place up
#: sabnzbd/skintext.py
msgid "Up"
msgstr "Nach oben"
#. Job details page, move file one place down
#: sabnzbd/skintext.py
msgid "Down"
msgstr "Nach unten"
#. Job details page, move file to bottom
#: sabnzbd/skintext.py
msgid "Bottom"
msgstr "Ganz nach unten"
#. Job details page, select all files
#: sabnzbd/skintext.py
msgid "All"
msgstr "Alle"
#. Job details page, invert file selection
#: sabnzbd/skintext.py
msgid "Invert"
msgstr "Invertieren"
#. Job details page, filename column header
#: sabnzbd/skintext.py
msgid "Filename"
msgstr "Dateiname"
#. Job details page, subject column header
#: sabnzbd/skintext.py
msgid "Subject"
msgstr "Betreff"
#. Job details page, section header
#: sabnzbd/skintext.py
msgid "Selection"
msgstr "Auswahl"
#: sabnzbd/skintext.py
msgid "Free Space"
msgstr "Freier Speicherplatz"
@@ -4816,6 +4518,10 @@ msgstr "Alle auswählen"
msgid "Restart SABnzbd"
msgstr "SABnzbd neustarten"
#: sabnzbd/skintext.py
msgid "On queue finish"
msgstr "Wenn fertig"
#: sabnzbd/skintext.py
msgid "Status and interface options"
msgstr "Status und Interface-Optionen"
@@ -4892,6 +4598,10 @@ msgstr "Reparatur der Warteschlange"
msgid "Show active connections"
msgstr "Aktive Verbindungen anzeigen"
#: sabnzbd/skintext.py
msgid "Unblock"
msgstr "Freigeben"
#: sabnzbd/skintext.py
msgid "Orphaned jobs"
msgstr "Verwaiste Aufträge"
@@ -4924,18 +4634,6 @@ msgstr "Wahlweise einen Dateinamen angeben:"
msgid "Submit"
msgstr "Senden"
#: sabnzbd/skintext.py
msgid "Open Informational URL"
msgstr "Open Informational-URL"
#: sabnzbd/skintext.py
msgid "Submitted. Thank you!"
msgstr "Versendet. Danke!"
#: sabnzbd/skintext.py
msgid "Nothing selected!"
msgstr "Nichts ausgewählt!"
#: sabnzbd/skintext.py
msgid "Remove all selected files"
msgstr "Alle ausgewählten Dateien entfernen"
@@ -4944,6 +4642,14 @@ msgstr "Alle ausgewählten Dateien entfernen"
msgid "Hide/show completed files"
msgstr "Vollendete Dateien anzeigen/verstecken"
#: sabnzbd/skintext.py
msgid "Top"
msgstr "Ganz nach oben"
#: sabnzbd/skintext.py
msgid "Bottom"
msgstr "Ganz nach unten"
#: sabnzbd/skintext.py
msgid "View Script Log"
msgstr "Skript-Protokoll anzeigen"
@@ -4964,6 +4670,10 @@ msgstr ""
msgid "Glitter has some (new) features you might like!"
msgstr "Glitter hat ein paar (neue) Feature die du bestimmt magst!"
#: sabnzbd/skintext.py
msgid "Custom"
msgstr "Benutzerdefiniert"
#: sabnzbd/skintext.py
msgid "Compact layout"
msgstr "Kompaktes Layout"
@@ -4976,6 +4686,10 @@ msgstr "Benutze die volle Fensterbreite"
msgid "Tabbed layout <br/>(separate queue and history)"
msgstr "Tab Layout <br/>(separate Warteschlange und Verlauf)"
#: sabnzbd/skintext.py
msgid "Speed"
msgstr "Geschwindigkeit"
#: sabnzbd/skintext.py
msgid "Confirm Queue Deletions"
msgstr "Löschen von Downloads bestätigen"
@@ -5012,6 +4726,10 @@ msgstr ""
"Alle Benutzernamen, Passwörter und API-Schlüssel werden automatisch aus dem "
"Log und der darin enthaltenen Kopie deiner Einstellungen entfernt."
#: sabnzbd/skintext.py
msgid "Sort by % downloaded <small>Most&rarr;Least</small>"
msgstr ""
#: sabnzbd/skintext.py
msgid "Sort by Age <small>Oldest&rarr;Newest</small>"
msgstr "Sortieren nach Alter <small>Älteste&rarr;Neuste</small>"
@@ -5158,19 +4876,6 @@ msgstr ""
"SABnzbd ist freie Software, die Sie unter bestimmten Bedingungen weitergeben dürfen.\n"
"Sie steht unter der GNU GENERAL PUBLIC LICENSE Version 2 oder (nach Ihrer Option) jeder späteren Version.\n"
#: sabnzbd/skintext.py
msgid ""
"In order to download from usenet you will require access to a provider. Your"
" ISP may provide you with access, however a premium provider is recommended."
msgstr ""
"Um aus dem Usenet herunterladen zu können, benötigen Sie Zugriff auf einen "
"Usenet-Provider. Ihr ISP bieten dies möglicherweise an, jedoch werden "
"kostenpflichtige Provider empfohlen."
#: sabnzbd/skintext.py
msgid "Don't have a usenet provider? We recommend trying %s."
msgstr "Wenn Sie noch keinen Usenet-Provider haben, empfehlen wir Ihnen %s."
#. Error message
#: sabnzbd/sorting.py
msgid "Failed to rename: %s to %s"
@@ -5245,10 +4950,6 @@ msgstr ""
"Unbekanntes SSL-Protokoll: SSL deaktivieren oder alternativen Port "
"versuchen."
#: sabnzbd/utils/servertests.py
msgid "Invalid server address."
msgstr "Ungültige Server-Adresse."
#: sabnzbd/utils/servertests.py
msgid "Server quit during login sequence."
msgstr "Sever beendet beim Anmeldeverlauf."

View File

@@ -9,7 +9,7 @@
#
msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
"Project-Id-Version: SABnzbd-3.7.0-develop\n"
"PO-Revision-Date: 2020-06-27 15:49+0000\n"
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2022\n"
"Language-Team: Spanish (https://www.transifex.com/sabnzbd/teams/111101/es/)\n"
@@ -17,7 +17,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: es\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"Plural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"
#. Notification - Status page, table column header, actual message
#: SABnzbd.py, sabnzbd/notifier.py, sabnzbd/skintext.py
@@ -192,11 +192,7 @@ msgstr "Notificación de prueba"
msgid "&nbsp;Resolving address"
msgstr "&nbsp;Resolviendo sitio"
#: sabnzbd/api.py
msgid "unknown"
msgstr "desconocido"
#. No value, used in dropdown menus - Job details page, select no files
#. No value, used in dropdown menus
#: sabnzbd/api.py, sabnzbd/skintext.py
msgid "None"
msgstr "Ninguno"
@@ -303,6 +299,10 @@ msgstr "%s no es una dirección de correo electrónico válida."
msgid "Server address required"
msgstr "Se necesita la dirección del servidor"
#: sabnzbd/cfg.py, sabnzbd/utils/servertests.py
msgid "Invalid server address."
msgstr "Dirección del servidor no válida."
#: sabnzbd/cfg.py
msgid "%s is not a valid script"
msgstr ""
@@ -401,7 +401,7 @@ msgstr ""
msgid "Direct Unpack"
msgstr "Descomprimir directamente"
#. PP status - History: job status
#. PP status
#: sabnzbd/directunpacker.py, sabnzbd/skintext.py
msgid "Completed"
msgstr "Completado"
@@ -460,6 +460,11 @@ msgstr "No se puede resolver el nombre de servidor"
msgid "Server %s will be ignored for %s minutes"
msgstr "El servidor %s se ignorará por %s minutos"
#. Warning message
#: sabnzbd/downloader.py
msgid "There are no active servers!"
msgstr ""
#. Error message
#: sabnzbd/downloader.py
msgid "Failed to initialize %s@%s with reason: %s"
@@ -626,6 +631,18 @@ msgstr "Guardar de %s no se pudo completar."
msgid "Loading %s failed"
msgstr "Cargar de %s no se pudo completar."
#. Warning message
#: sabnzbd/filesystem.py
msgid ""
"%s is not writable with special character filenames. This can cause "
"problems."
msgstr ""
#. Warning message
#: sabnzbd/filesystem.py
msgid "%s is not writable at all. This blocks downloads."
msgstr ""
#: sabnzbd/interface.py
msgid "Refused connection from:"
msgstr ""
@@ -659,14 +676,6 @@ msgstr ""
"Clave de API erróneo, favor ingresar la clave correcta desde Config->General"
" en tu aplicacion externa:"
#: sabnzbd/interface.py
msgid ""
"Authentication missing, please enter username/password from Config->General "
"into your 3rd party program:"
msgstr ""
"Faltaron datos de cuenta, favor ingresar usuario/contraseña desde "
"Config->General en tu aplicacion externa:"
#: sabnzbd/interface.py, sabnzbd/newswrapper.py, sabnzbd/utils/servertests.py
msgid "Authentication failed, check username/password."
msgstr "Autenticación fallida, compruebe el usuario o la contraseña."
@@ -1237,27 +1246,27 @@ msgstr "Abortado, No puede ser completado"
msgid "Error importing %s"
msgstr "Error importando %s"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "DUPLICATE"
msgstr "DUPLICADO"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "ENCRYPTED"
msgstr "ENCRIPTADO"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "TOO LARGE"
msgstr "DEMASIADO GRANDE"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "INCOMPLETE"
msgstr "INCOMPLETO"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "UNWANTED"
msgstr "NO DESEADO"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "WAIT %s sec"
msgstr "ESPERAR %s seg"
@@ -1614,13 +1623,13 @@ msgid "Trying RAR-based verification"
msgstr "Intentando la verificación basada en RAR"
#: sabnzbd/postproc.py
msgid "[%s] RAR-based verification failed: %s"
msgstr "[%s] La verificación basada en RAR ha fallado: %s"
#: sabnzbd/postproc.py, sabnzbd/skintext.py
msgid "Passworded"
msgstr "Con contraseña"
#: sabnzbd/postproc.py
msgid "[%s] RAR-based verification failed: %s"
msgstr "[%s] La verificación basada en RAR ha fallado: %s"
#: sabnzbd/postproc.py
msgid "RAR files verified successfully"
msgstr "Los archivos RAR se han verificado con éxito"
@@ -1737,7 +1746,7 @@ msgstr "Pausar 3 horas"
msgid "Pause for 6 hours"
msgstr "Pausar 6 horas"
#. Shutdown SABnzbd - Config->Scheduling
#. Config->Scheduling
#: sabnzbd/sabtray.py, sabnzbd/sabtraylinux.py, sabnzbd/skintext.py
msgid "Shutdown"
msgstr "Apagar"
@@ -1806,11 +1815,6 @@ msgstr "Fuente"
msgid "Servers"
msgstr "Servidores"
#. PP Failure message
#: sabnzbd/skintext.py
msgid "Failure"
msgstr "Fallo"
#. PP status
#: sabnzbd/skintext.py
msgid "Failed"
@@ -1856,20 +1860,6 @@ msgstr "Chequeo Rápido..."
msgid "Verifying..."
msgstr "Verificando..."
#. Pseudo-PP status, in reality used for Queue-status
#: sabnzbd/skintext.py
msgid "Downloading"
msgstr "Descargando"
#: sabnzbd/skintext.py
msgid "Propagation delay"
msgstr "Demora de la propagación"
#. #: Config->Scheduler
#: sabnzbd/skintext.py
msgid "Task"
msgstr "Tarea"
#. #: Config->Scheduler
#: sabnzbd/skintext.py
msgid "disable server"
@@ -2000,21 +1990,6 @@ msgstr "Emergencia"
msgid "Low"
msgstr "Baja"
#. Megabytes
#: sabnzbd/skintext.py
msgid "MB"
msgstr "MB"
#. Gigabytes
#: sabnzbd/skintext.py
msgid "GB"
msgstr "GB"
#. Bytes (used as postfix, as in "GB", "TB")
#: sabnzbd/skintext.py
msgid "B"
msgstr "B"
#. One hour
#: sabnzbd/skintext.py
msgid "hour"
@@ -2060,54 +2035,6 @@ msgstr "Mes"
msgid "Year"
msgstr "Año"
#: sabnzbd/skintext.py
msgid "January"
msgstr "Enero"
#: sabnzbd/skintext.py
msgid "February"
msgstr "Febrero"
#: sabnzbd/skintext.py
msgid "March"
msgstr "Marzo"
#: sabnzbd/skintext.py
msgid "April"
msgstr "Abril"
#: sabnzbd/skintext.py
msgid "May"
msgstr "Mayo"
#: sabnzbd/skintext.py
msgid "June"
msgstr "Junio"
#: sabnzbd/skintext.py
msgid "July"
msgstr "Julio"
#: sabnzbd/skintext.py
msgid "August"
msgstr "Agosto"
#: sabnzbd/skintext.py
msgid "September"
msgstr "Septiembre"
#: sabnzbd/skintext.py
msgid "October"
msgstr "Octubre"
#: sabnzbd/skintext.py
msgid "November"
msgstr "Noviembre"
#: sabnzbd/skintext.py
msgid "December"
msgstr "Diciembre"
#: sabnzbd/skintext.py
msgid "Day of month"
msgstr "Día del mes"
@@ -2132,14 +2059,6 @@ msgstr "Hoy"
msgid "Total"
msgstr "Total"
#: sabnzbd/skintext.py
msgid "Custom"
msgstr "Personalizar"
#: sabnzbd/skintext.py
msgid "Speed"
msgstr "Velocidad"
#: sabnzbd/skintext.py
msgid "on"
msgstr "activado"
@@ -2168,42 +2087,10 @@ msgstr "o"
msgid "Host"
msgstr "Equipo"
#: sabnzbd/skintext.py
msgid "Comment"
msgstr "Comentar"
#: sabnzbd/skintext.py
msgid "Send"
msgstr "Enviar"
#: sabnzbd/skintext.py
msgid "Cancel"
msgstr "Cancelar"
#: sabnzbd/skintext.py
msgid "Other"
msgstr "Otro"
#: sabnzbd/skintext.py
msgid "Report"
msgstr "Denunciar"
#: sabnzbd/skintext.py
msgid "Video"
msgstr "Vídeo"
#: sabnzbd/skintext.py
msgid "Audio"
msgstr "Audio"
#: sabnzbd/skintext.py
msgid "Not used"
msgstr "No usado"
#: sabnzbd/skintext.py
msgid "or less"
msgstr "o menos"
#: sabnzbd/skintext.py
msgid "Log in"
msgstr "Iniciar sesión"
@@ -2216,11 +2103,6 @@ msgstr "Cerrar sesión"
msgid "Remember me"
msgstr "Mantenerme conectado"
#. SABnzbd's theme line
#: sabnzbd/skintext.py
msgid "The automatic usenet download tool"
msgstr "La herramienta de descarga automática para usenet"
#. "Save" button
#: sabnzbd/skintext.py
msgid "Save"
@@ -2235,11 +2117,6 @@ msgstr "Guardando..."
msgid "Are you sure?"
msgstr "¿Estás seguro?"
#. Used in confirmation popups
#: sabnzbd/skintext.py
msgid "Delete all downloaded files?"
msgstr "¿Elimiar todos los ficheros descargados?"
#. Main menu item
#: sabnzbd/skintext.py
msgid "Home"
@@ -2339,22 +2216,6 @@ msgstr "Buscar"
msgid "Download Dir"
msgstr "Dir de Descarga"
#: sabnzbd/skintext.py
msgid "PAUSED"
msgstr "PAUSADO"
#: sabnzbd/skintext.py
msgid "Cached %s articles (%s)"
msgstr "%s artículos cacheados (%s)"
#: sabnzbd/skintext.py
msgid "Sysload"
msgstr "Carga del Sistema"
#: sabnzbd/skintext.py
msgid "New release %s available at"
msgstr "Nueva versión %s disponible en"
#: sabnzbd/skintext.py
msgid "Are you sure you want to shutdown SABnzbd?"
msgstr "¿Seguro que deseas detener SABnzbd?"
@@ -2364,21 +2225,11 @@ msgstr "¿Seguro que deseas detener SABnzbd?"
msgid "Add"
msgstr "Añadir"
#. Add NZB file to queue (header
#: sabnzbd/skintext.py
msgid "Add File"
msgstr "Añadir fichero"
#. Job category
#: sabnzbd/skintext.py
msgid "Category"
msgstr "Categoría"
#. Queue page table column header
#: sabnzbd/skintext.py
msgid "Processing"
msgstr "En proceso"
#. Server priority
#: sabnzbd/skintext.py
msgid "Priority"
@@ -2399,21 +2250,6 @@ msgstr "+Descomprimir"
msgid "+Delete"
msgstr "+Eliminar"
#. Post processing pick list: abbreviation for "+Repair"
#: sabnzbd/skintext.py
msgid "R"
msgstr "R"
#. Post processing pick list: abbreviation for "+Unpack"
#: sabnzbd/skintext.py
msgid "U"
msgstr "U"
#. Post processing pick list: abbreviation for "+Delete"
#: sabnzbd/skintext.py
msgid "D"
msgstr "D"
#. Priority pick list
#: sabnzbd/skintext.py
msgid "Force"
@@ -2429,11 +2265,6 @@ msgstr "Parar"
msgid "Enter URL"
msgstr "Introduzca la URL"
#. Queue page selection menu
#: sabnzbd/skintext.py
msgid "On queue finish"
msgstr "Al finalizar cola"
#. Queue page end-of-queue action
#: sabnzbd/skintext.py
msgid "Shutdown PC"
@@ -2454,36 +2285,16 @@ msgstr "Hibernar PC"
msgid "Shutdown SABnzbd"
msgstr "Apagar SABnzbd"
#. Queue page selection menu or entry box
#. Queue page table column header
#: sabnzbd/skintext.py
msgid "Speed Limit"
msgstr "Límite de velocidad"
msgid "Processing"
msgstr "En proceso"
#. Queue page table column header - Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Order"
msgstr "Orden"
#. Queue page table column header - Job details page
#. Queue page table column header
#: sabnzbd/skintext.py
msgid "Name"
msgstr "Nombre"
#. Queue page table column header, "estimated time of arrival"
#: sabnzbd/skintext.py
msgid "ETA"
msgstr "Tiempo estimado"
#. Queue page table column header, "age of the NZB"
#: sabnzbd/skintext.py
msgid "AGE"
msgstr "ANTIGÜEDAD"
#. Queue page table, "Delete" button
#: sabnzbd/skintext.py
msgid "Del"
msgstr "Borrar"
#. Queue page button
#: sabnzbd/skintext.py
msgid "Retry"
@@ -2514,11 +2325,6 @@ msgstr "Purgar NZBs"
msgid "Purge NZBs & Delete Files"
msgstr "Purgar NZBs y Eliminar Ficheros"
#. Retry all failed jobs dialog box
#: sabnzbd/skintext.py
msgid "Retry all failed jobs"
msgstr "Vuelva a intentar todos los trabajos con errores"
#. Queue page button
#: sabnzbd/skintext.py
msgid "Remove NZB"
@@ -2529,11 +2335,6 @@ msgstr "Eliminar NZB"
msgid "Remove NZB & Delete Files"
msgstr "Eliminar NZB y Eliminar Ficheros"
#. Queue page, as in "4G *of* 10G"
#: sabnzbd/skintext.py
msgid "of"
msgstr "de"
#. Caption for missing articles in Queue
#: sabnzbd/skintext.py
msgid "Missing articles"
@@ -2553,11 +2354,6 @@ msgstr "manual"
msgid "Reset Quota now"
msgstr "Reinicializar Quota ahora"
#. Confirmation popup
#: sabnzbd/skintext.py
msgid "Delete all completed items from History?"
msgstr "¿Eliminar todos los elementos completados del Historial?"
#. Button/link hiding History job details
#: sabnzbd/skintext.py
msgid "Hide details"
@@ -2614,25 +2410,8 @@ msgstr "Ruta"
#. Retry all failed jobs in History
#: sabnzbd/skintext.py
msgid "Retry all failed"
msgstr "Re-intentar todos los fallados"
#. Retry all button for Retry All Failed Jobs
#: sabnzbd/skintext.py
msgid "Retry All"
msgstr "Re-intentar todo"
#: sabnzbd/skintext.py
msgid "Virus/spam"
msgstr "Virus / spam"
#: sabnzbd/skintext.py
msgid "Out of retention"
msgstr "Fuera de retención"
#: sabnzbd/skintext.py
msgid "Other problem"
msgstr "Otro problema"
msgid "Retry all failed jobs"
msgstr "Vuelva a intentar todos los trabajos con errores"
#. Status page button
#: sabnzbd/skintext.py
@@ -2687,21 +2466,6 @@ msgstr "+Depuración"
msgid "Connections"
msgstr "Conexiones"
#. Status page, table header
#: sabnzbd/skintext.py
msgid "Latest Warnings"
msgstr "Últimas advertencias"
#. Status page button
#: sabnzbd/skintext.py
msgid "clear"
msgstr "limpiar"
#. Status page button
#: sabnzbd/skintext.py
msgid "Unblock"
msgstr "Desbloquear"
#. Status page, article identifier
#: sabnzbd/skintext.py
msgid "Article identifier"
@@ -2712,26 +2476,11 @@ msgstr "Identificador de artículo"
msgid "File set"
msgstr "Conjunto de ficheros"
#. Status page, table column header, when error occured
#: sabnzbd/skintext.py
msgid "When"
msgstr "Cuando"
#. Status page, table column header, type of message - Config->RSS table
#. column header
#: sabnzbd/skintext.py
msgid "Type"
msgstr "Tipo"
#. Status page, indicator that server is enabled
#: sabnzbd/skintext.py
msgid "Enabled"
msgstr "Habilitado"
#: sabnzbd/skintext.py
msgid "Dashboard"
msgstr "Tablero"
#: sabnzbd/skintext.py
msgid "Connection failed!"
msgstr "¡Ha fallado la conexión!"
@@ -2752,10 +2501,6 @@ msgstr "Dirección IPv6"
msgid "Nameserver / DNS Lookup"
msgstr "Nombre del servidor / Búsqueda de DNS"
#: sabnzbd/skintext.py
msgid "CPU Model"
msgstr "Modelo de CPU"
#: sabnzbd/skintext.py
msgid "Download speed limited by"
msgstr ""
@@ -2768,6 +2513,10 @@ msgstr ""
msgid "Disk speed"
msgstr ""
#: sabnzbd/skintext.py
msgid "System load"
msgstr ""
#. Do not translate Pystone
#: sabnzbd/skintext.py
msgid "System Performance (Pystone)"
@@ -2781,24 +2530,10 @@ msgstr "La velocidad de descarga carpeta"
msgid "Complete folder speed"
msgstr "Velocidad completa carpeta"
#: sabnzbd/skintext.py
msgid "Writing speed"
msgstr "velocidad de escritura"
#: sabnzbd/skintext.py
msgid "Could not write. Check that the directory is writable."
msgstr ""
"No se pudo escribir . Compruebe que el directorio tiene permisos de "
"escritura ."
#: sabnzbd/skintext.py
msgid "Internet Bandwidth"
msgstr "Ancho de banda de internet"
#: sabnzbd/skintext.py
msgid "Click on Repeat test button below to determine"
msgstr "Haga clic en el botón de prueba Repita a continuación para determinar"
#: sabnzbd/skintext.py
msgid "Repeat test"
msgstr "Repita la prueba"
@@ -2991,10 +2726,6 @@ msgstr "Seguridad"
msgid "Enable HTTPS"
msgstr "Habilitar HTTPS"
#: sabnzbd/skintext.py
msgid "not installed"
msgstr "no instalado"
#: sabnzbd/skintext.py
msgid "Enable accessing the interface from a HTTPS address."
msgstr "Habilia el acceso a la interfaz con una dirección HTTPS"
@@ -3086,12 +2817,17 @@ 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>"
#. Config->Scheduling
#: sabnzbd/skintext.py
msgid "Download backup"
msgid "Create backup"
msgstr ""
#: sabnzbd/skintext.py
msgid "Save or restore a backup of the configuration file and databases."
msgid ""
"Create a backup of the configuration file and databases in the Backup "
"Folder.<br>If the Backup Folder is not set, the backup will be created in "
"the Completed Download Folder.<br>Recurring backups can be configured on the"
" Scheduling page."
msgstr ""
#: sabnzbd/skintext.py
@@ -3243,10 +2979,6 @@ msgstr "Directorios del usuario"
msgid "Browse"
msgstr "Examinar"
#: sabnzbd/skintext.py
msgid "In"
msgstr "En"
#: sabnzbd/skintext.py
msgid "Temporary Download Folder"
msgstr "Directorio de descarga temporal"
@@ -3378,6 +3110,17 @@ msgstr ""
"Ubicación de la base de datos de historial y administración.<br /><i>Sólo se"
" puede cambiar si la cola está vacía.</i>"
#: sabnzbd/skintext.py
msgid "Backup Folder"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Location where the backups of the configuration file and databases are "
"stored.<br />If left empty, the backup will be created in the Completed "
"Download Folder."
msgstr ""
#: sabnzbd/skintext.py
msgid "<i>Data will <b>not</b> be moved. Requires SABnzbd restart!</i>"
msgstr ""
@@ -3578,19 +3321,6 @@ msgid "Some servers provide an alternative NZB when a download fails."
msgstr ""
"Algunos servidores ofrecen una NZB alternativa cuando falla una descarga ."
#: sabnzbd/skintext.py
msgid "Use tags from indexer"
msgstr "Utilizar etiquetas del indexer"
#: sabnzbd/skintext.py
msgid ""
"When sorting, use tags from indexer for title, season, episode, etc. "
"Otherwise all naming is derived from the NZB name."
msgstr ""
"Al clasificar, utilice etiquetas del indexer para el título, temporada, "
"episodio, etc. De no hacerlo así, todos los nombres se extraen del nombre "
"NZB."
#: sabnzbd/skintext.py
msgid "Enable folder rename"
msgstr "Habilitar renombrado de directorios"
@@ -3646,6 +3376,14 @@ msgstr ""
"Clasifique tareas de forma automática en la cola cuando se añade una tarea "
"nueva."
#: sabnzbd/skintext.py
msgid "The queue will resort every 30 seconds if % downloaded is selected."
msgstr ""
#: sabnzbd/skintext.py
msgid "Propagation delay"
msgstr "Demora de la propagación"
#: sabnzbd/skintext.py
msgid ""
"Posts will be paused untill they are at least this age. Setting job priority"
@@ -3677,6 +3415,14 @@ msgid "Replace spaces with underscores in folder names."
msgstr ""
"Reemplaza los espacios con guiones bajos en los nombres de directorio."
#: sabnzbd/skintext.py
msgid "Replace underscores in folder name"
msgstr ""
#: sabnzbd/skintext.py
msgid "Replace underscores with dots in folder names."
msgstr ""
#: sabnzbd/skintext.py
msgid "Replace dots in Foldername"
msgstr "Reemplazar puntos en los directorios"
@@ -3780,10 +3526,6 @@ msgstr "Nombrado"
msgid "Quota"
msgstr "Cuota"
#: sabnzbd/skintext.py
msgid "Indexing"
msgstr "Indexación"
#: sabnzbd/skintext.py
msgid "How much can be downloaded this month (K/M/G)"
msgstr "Cantidad de descarga permitida este mes (K/M/G)"
@@ -4044,7 +3786,7 @@ msgstr "Añadir planificación"
msgid "Frequency"
msgstr "Frecuencia"
#. Config->Scheduling - Job details page, section header
#. Config->Scheduling
#: sabnzbd/skintext.py
msgid "Action"
msgstr "Acción"
@@ -4096,6 +3838,16 @@ msgstr ""
msgid "Next scan at"
msgstr ""
#. Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Order"
msgstr "Orden"
#. Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Type"
msgstr "Tipo"
#. Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Filter"
@@ -4448,11 +4200,6 @@ msgstr "Directorio/Ruta"
msgid "Indexer Categories / Groups"
msgstr "Categorías Indexer / Grupos"
#. Small delete button
#: sabnzbd/skintext.py
msgid "X"
msgstr "X"
#. Warning message
#: sabnzbd/skintext.py, sabnzbd/sorting.py
msgid "Select at least 1 category."
@@ -4483,10 +4230,6 @@ msgstr "Aplicar filtros"
msgid "Presets"
msgstr "Preajustes"
#: sabnzbd/skintext.py
msgid "Example"
msgstr "Ejemplo"
#. Warning message
#: sabnzbd/skintext.py, sabnzbd/sorting.py
msgid "Movie Sorting"
@@ -4496,10 +4239,6 @@ msgstr "Clasificación de películas"
msgid "Enable Movie Sorting"
msgstr "Habilitar Ordenado de Películas"
#: sabnzbd/skintext.py
msgid "Keep loose downloads in extra folders"
msgstr "Mantener descargas en directorios extra."
#: sabnzbd/skintext.py
msgid "Affected Categories"
msgstr "Categorías Afectadas"
@@ -4716,51 +4455,11 @@ msgstr "Editar Detalles de NZB"
msgid "Delete"
msgstr "Eliminar"
#. Job details page, move file to top
#: sabnzbd/skintext.py
msgid "Top"
msgstr "Superior"
#. Job details page, move file one place up
#: sabnzbd/skintext.py
msgid "Up"
msgstr "Encima"
#. Job details page, move file one place down
#: sabnzbd/skintext.py
msgid "Down"
msgstr "Abajo"
#. Job details page, move file to bottom
#: sabnzbd/skintext.py
msgid "Bottom"
msgstr "Último"
#. Job details page, select all files
#: sabnzbd/skintext.py
msgid "All"
msgstr "Todos"
#. Job details page, invert file selection
#: sabnzbd/skintext.py
msgid "Invert"
msgstr "Invertir"
#. Job details page, filename column header
#: sabnzbd/skintext.py
msgid "Filename"
msgstr "Nombre de archivo"
#. Job details page, subject column header
#: sabnzbd/skintext.py
msgid "Subject"
msgstr "Asunto"
#. Job details page, section header
#: sabnzbd/skintext.py
msgid "Selection"
msgstr "Selección"
#: sabnzbd/skintext.py
msgid "Free Space"
msgstr "Espacio libre"
@@ -4785,6 +4484,10 @@ msgstr "Marcar todo"
msgid "Restart SABnzbd"
msgstr "Reiniciar SABnzbd"
#: sabnzbd/skintext.py
msgid "On queue finish"
msgstr "Al finalizar cola"
#: sabnzbd/skintext.py
msgid "Status and interface options"
msgstr "Opciones de estado e interfaz"
@@ -4863,6 +4566,10 @@ msgstr "Reparar cola"
msgid "Show active connections"
msgstr "Mostrar conexiones activas"
#: sabnzbd/skintext.py
msgid "Unblock"
msgstr "Desbloquear"
#: sabnzbd/skintext.py
msgid "Orphaned jobs"
msgstr "Trabajos descolgados"
@@ -4895,18 +4602,6 @@ msgstr "Opcionalmente especificar un nombre de fichero"
msgid "Submit"
msgstr "Enviar"
#: sabnzbd/skintext.py
msgid "Open Informational URL"
msgstr "Abrir URL de informacion"
#: sabnzbd/skintext.py
msgid "Submitted. Thank you!"
msgstr "Enviado. ¡Muchas gracias!"
#: sabnzbd/skintext.py
msgid "Nothing selected!"
msgstr "¡No hay nada seleccionado!"
#: sabnzbd/skintext.py
msgid "Remove all selected files"
msgstr "Eliminar todos los ficheros seleccionados"
@@ -4915,6 +4610,14 @@ msgstr "Eliminar todos los ficheros seleccionados"
msgid "Hide/show completed files"
msgstr "Ocultar/Mostrar ficheros completados"
#: sabnzbd/skintext.py
msgid "Top"
msgstr "Superior"
#: sabnzbd/skintext.py
msgid "Bottom"
msgstr "Último"
#: sabnzbd/skintext.py
msgid "View Script Log"
msgstr "Ver bitacora de Scripts"
@@ -4935,6 +4638,10 @@ msgstr ""
msgid "Glitter has some (new) features you might like!"
msgstr "¡Glitter tiene alguna nueva funcionalidad que puede gustarte!"
#: sabnzbd/skintext.py
msgid "Custom"
msgstr "Personalizar"
#: sabnzbd/skintext.py
msgid "Compact layout"
msgstr "Diseño compacto"
@@ -4947,6 +4654,10 @@ msgstr ""
msgid "Tabbed layout <br/>(separate queue and history)"
msgstr "Diseño de pestañas<br/>(separa la cola de espera y la historia)"
#: sabnzbd/skintext.py
msgid "Speed"
msgstr "Velocidad"
#: sabnzbd/skintext.py
msgid "Confirm Queue Deletions"
msgstr "Confirmar eliminación de la cola"
@@ -4984,6 +4695,10 @@ msgstr ""
"Todos los nombres de usuarios, contraseñas y llaves-API se eliminan "
"automáticamente del registro y se incluye una copia de su configuración."
#: sabnzbd/skintext.py
msgid "Sort by % downloaded <small>Most&rarr;Least</small>"
msgstr ""
#: sabnzbd/skintext.py
msgid "Sort by Age <small>Oldest&rarr;Newest</small>"
msgstr "Ordenar por Fecha <small>Más viejo&rarr;Más nuevo</small>"
@@ -5130,19 +4845,6 @@ msgstr ""
"Este es un software libre, y eres bienvenido a redistribuirlo bajo determinadas condiciones.\n"
"Está licenciado bajo la versión 2 ó posterior de GNU GENERAL PUBLIC LICENSE.\n"
#: sabnzbd/skintext.py
msgid ""
"In order to download from usenet you will require access to a provider. Your"
" ISP may provide you with access, however a premium provider is recommended."
msgstr ""
"Para poder descargar de Usenet, necesitas acceso con un proveedor. Tu "
"proveedor de acceso a internet te lo puede dar, aunque recomendamos "
"proveedores premium."
#: sabnzbd/skintext.py
msgid "Don't have a usenet provider? We recommend trying %s."
msgstr "¿No tienes proveedor de Usenet? Nosotros recomendamos probar %s."
#. Error message
#: sabnzbd/sorting.py
msgid "Failed to rename: %s to %s"
@@ -5213,10 +4915,6 @@ msgstr ""
"Protocolo SSL desconocido: intente desabilitar el SSL o conectarse a un "
"puerto diferente."
#: sabnzbd/utils/servertests.py
msgid "Invalid server address."
msgstr "Dirección del servidor no válida."
#: sabnzbd/utils/servertests.py
msgid "Server quit during login sequence."
msgstr "El servidor se ha cerrado durante el login"

View File

@@ -7,7 +7,7 @@
#
msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
"Project-Id-Version: SABnzbd-3.7.0-develop\n"
"PO-Revision-Date: 2020-06-27 15:49+0000\n"
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2022\n"
"Language-Team: Finnish (https://www.transifex.com/sabnzbd/teams/111101/fi/)\n"
@@ -185,11 +185,7 @@ msgstr "Testaa ilmoitusta"
msgid "&nbsp;Resolving address"
msgstr "&nbsp;Selvitetään osoitetta"
#: sabnzbd/api.py
msgid "unknown"
msgstr "tuntematon"
#. No value, used in dropdown menus - Job details page, select no files
#. No value, used in dropdown menus
#: sabnzbd/api.py, sabnzbd/skintext.py
msgid "None"
msgstr "Ei mitään"
@@ -286,6 +282,10 @@ msgstr "%s ei ole kelvollinen sähköpostiosoite"
msgid "Server address required"
msgstr "Palvelimen osoite vaaditaan"
#: sabnzbd/cfg.py, sabnzbd/utils/servertests.py
msgid "Invalid server address."
msgstr "Virheellinen palvelimen osoite."
#: sabnzbd/cfg.py
msgid "%s is not a valid script"
msgstr ""
@@ -381,7 +381,7 @@ msgstr ""
msgid "Direct Unpack"
msgstr ""
#. PP status - History: job status
#. PP status
#: sabnzbd/directunpacker.py, sabnzbd/skintext.py
msgid "Completed"
msgstr "Valmistunut"
@@ -436,6 +436,11 @@ msgstr "Palvelimen osoitetta ei voitu selvittää"
msgid "Server %s will be ignored for %s minutes"
msgstr "Palvelin %s ohitetaan %s minuutiksi"
#. Warning message
#: sabnzbd/downloader.py
msgid "There are no active servers!"
msgstr ""
#. Error message
#: sabnzbd/downloader.py
msgid "Failed to initialize %s@%s with reason: %s"
@@ -601,6 +606,18 @@ msgstr "Kohteen %s tallentaminen epäonnistui"
msgid "Loading %s failed"
msgstr "Kohteen %s lataaminen epäonnistui"
#. Warning message
#: sabnzbd/filesystem.py
msgid ""
"%s is not writable with special character filenames. This can cause "
"problems."
msgstr ""
#. Warning message
#: sabnzbd/filesystem.py
msgid "%s is not writable at all. This blocks downloads."
msgstr ""
#: sabnzbd/interface.py
msgid "Refused connection from:"
msgstr ""
@@ -634,14 +651,6 @@ msgstr ""
"API avain virheellinen, käytä Asetukset->Yleiset löytyvää api avainta "
"käyttämääsi kolmannen osapuolen ohjelmaan:"
#: sabnzbd/interface.py
msgid ""
"Authentication missing, please enter username/password from Config->General "
"into your 3rd party program:"
msgstr ""
"Authentikointi puuttuu, ole hyvä ja syötä käyttäjänimi/salasana "
"Asetukset->Yleiset kolmannen osapuolen ohjelmaasi:"
#: sabnzbd/interface.py, sabnzbd/newswrapper.py, sabnzbd/utils/servertests.py
msgid "Authentication failed, check username/password."
msgstr "Varmennus epäonnistui, tarkista käyttäjänimi/salasana."
@@ -1186,27 +1195,27 @@ msgstr "Peruutettu, ei voi valmistua"
msgid "Error importing %s"
msgstr "Virhe tuotaessa %s"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "DUPLICATE"
msgstr "KAKSOISKAPPALE"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "ENCRYPTED"
msgstr "SALATTU"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "TOO LARGE"
msgstr "LIIAN SUURI"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "INCOMPLETE"
msgstr "KESKENERÄINEN"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "UNWANTED"
msgstr "EI TOIVOTTU"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "WAIT %s sec"
msgstr "ODOTA %s sekuntia"
@@ -1554,13 +1563,13 @@ msgid "Trying RAR-based verification"
msgstr "Yritetään RAR-pohjaista varmennusta"
#: sabnzbd/postproc.py
msgid "[%s] RAR-based verification failed: %s"
msgstr "[%s] RAR-pohjainen varmennus epäonnistui: %s"
#: sabnzbd/postproc.py, sabnzbd/skintext.py
msgid "Passworded"
msgstr "Salasanasuojattu"
#: sabnzbd/postproc.py
msgid "[%s] RAR-based verification failed: %s"
msgstr "[%s] RAR-pohjainen varmennus epäonnistui: %s"
#: sabnzbd/postproc.py
msgid "RAR files verified successfully"
msgstr "RAR arkistot varmennettiin onnistuneesti"
@@ -1675,7 +1684,7 @@ msgstr "Keskeytä 3:ksi tunniksi"
msgid "Pause for 6 hours"
msgstr "Keskeytä 6:ksi tunniksi"
#. Shutdown SABnzbd - Config->Scheduling
#. Config->Scheduling
#: sabnzbd/sabtray.py, sabnzbd/sabtraylinux.py, sabnzbd/skintext.py
msgid "Shutdown"
msgstr "Sammuta"
@@ -1744,11 +1753,6 @@ msgstr "Lähde"
msgid "Servers"
msgstr "Palvelimet"
#. PP Failure message
#: sabnzbd/skintext.py
msgid "Failure"
msgstr "Epäonnistui"
#. PP status
#: sabnzbd/skintext.py
msgid "Failed"
@@ -1794,20 +1798,6 @@ msgstr "Pikatarkistus..."
msgid "Verifying..."
msgstr "Varmennetaan..."
#. Pseudo-PP status, in reality used for Queue-status
#: sabnzbd/skintext.py
msgid "Downloading"
msgstr "Ladataan"
#: sabnzbd/skintext.py
msgid "Propagation delay"
msgstr "Levitysviive"
#. #: Config->Scheduler
#: sabnzbd/skintext.py
msgid "Task"
msgstr "Tehtävä"
#. #: Config->Scheduler
#: sabnzbd/skintext.py
msgid "disable server"
@@ -1938,21 +1928,6 @@ msgstr "Hälytys"
msgid "Low"
msgstr "Matala"
#. Megabytes
#: sabnzbd/skintext.py
msgid "MB"
msgstr "Mt"
#. Gigabytes
#: sabnzbd/skintext.py
msgid "GB"
msgstr "Gt"
#. Bytes (used as postfix, as in "GB", "TB")
#: sabnzbd/skintext.py
msgid "B"
msgstr "B"
#. One hour
#: sabnzbd/skintext.py
msgid "hour"
@@ -1998,54 +1973,6 @@ msgstr "Kuukausi"
msgid "Year"
msgstr "Vuosi"
#: sabnzbd/skintext.py
msgid "January"
msgstr ""
#: sabnzbd/skintext.py
msgid "February"
msgstr ""
#: sabnzbd/skintext.py
msgid "March"
msgstr ""
#: sabnzbd/skintext.py
msgid "April"
msgstr ""
#: sabnzbd/skintext.py
msgid "May"
msgstr ""
#: sabnzbd/skintext.py
msgid "June"
msgstr ""
#: sabnzbd/skintext.py
msgid "July"
msgstr ""
#: sabnzbd/skintext.py
msgid "August"
msgstr ""
#: sabnzbd/skintext.py
msgid "September"
msgstr ""
#: sabnzbd/skintext.py
msgid "October"
msgstr ""
#: sabnzbd/skintext.py
msgid "November"
msgstr ""
#: sabnzbd/skintext.py
msgid "December"
msgstr ""
#: sabnzbd/skintext.py
msgid "Day of month"
msgstr "Kuukauden päivä"
@@ -2070,14 +1997,6 @@ msgstr "Tänään"
msgid "Total"
msgstr "Yhteensä"
#: sabnzbd/skintext.py
msgid "Custom"
msgstr "Mukautettu"
#: sabnzbd/skintext.py
msgid "Speed"
msgstr "Nopeus"
#: sabnzbd/skintext.py
msgid "on"
msgstr "käytössä"
@@ -2106,42 +2025,10 @@ msgstr "tai"
msgid "Host"
msgstr "Isäntä"
#: sabnzbd/skintext.py
msgid "Comment"
msgstr "Kommentti"
#: sabnzbd/skintext.py
msgid "Send"
msgstr "Lähetä"
#: sabnzbd/skintext.py
msgid "Cancel"
msgstr "Peruuta"
#: sabnzbd/skintext.py
msgid "Other"
msgstr "Muu"
#: sabnzbd/skintext.py
msgid "Report"
msgstr "Ilmoita"
#: sabnzbd/skintext.py
msgid "Video"
msgstr "Video"
#: sabnzbd/skintext.py
msgid "Audio"
msgstr "Ääni"
#: sabnzbd/skintext.py
msgid "Not used"
msgstr "Ei käytössä"
#: sabnzbd/skintext.py
msgid "or less"
msgstr "tai vähemmän"
#: sabnzbd/skintext.py
msgid "Log in"
msgstr "Kirjaudu sisään"
@@ -2154,11 +2041,6 @@ msgstr "Kirjaudu ulos"
msgid "Remember me"
msgstr "Muista minut"
#. SABnzbd's theme line
#: sabnzbd/skintext.py
msgid "The automatic usenet download tool"
msgstr "Automaattinen usenet lataustyökalu"
#. "Save" button
#: sabnzbd/skintext.py
msgid "Save"
@@ -2173,11 +2055,6 @@ msgstr "Tallennetaan..."
msgid "Are you sure?"
msgstr "Oletko varma?"
#. Used in confirmation popups
#: sabnzbd/skintext.py
msgid "Delete all downloaded files?"
msgstr "Poistetaanko kaikki ladatut tiedostot?"
#. Main menu item
#: sabnzbd/skintext.py
msgid "Home"
@@ -2277,22 +2154,6 @@ msgstr "Etsi"
msgid "Download Dir"
msgstr "Lataukset-kansio"
#: sabnzbd/skintext.py
msgid "PAUSED"
msgstr "KESKEYTETTY"
#: sabnzbd/skintext.py
msgid "Cached %s articles (%s)"
msgstr "%s artikkelia välimuistitettu (%s)"
#: sabnzbd/skintext.py
msgid "Sysload"
msgstr "Kuorma"
#: sabnzbd/skintext.py
msgid "New release %s available at"
msgstr "Uusi versio %s saatavilla osoitteesta"
#: sabnzbd/skintext.py
msgid "Are you sure you want to shutdown SABnzbd?"
msgstr "Oletko varma, että haluat sammuttaa SABnzbdn?"
@@ -2302,21 +2163,11 @@ msgstr "Oletko varma, että haluat sammuttaa SABnzbdn?"
msgid "Add"
msgstr "Lisää"
#. Add NZB file to queue (header
#: sabnzbd/skintext.py
msgid "Add File"
msgstr "Lisää tiedostosta"
#. Job category
#: sabnzbd/skintext.py
msgid "Category"
msgstr "Kategoria"
#. Queue page table column header
#: sabnzbd/skintext.py
msgid "Processing"
msgstr "Käsitellään"
#. Server priority
#: sabnzbd/skintext.py
msgid "Priority"
@@ -2337,21 +2188,6 @@ msgstr "+Pura"
msgid "+Delete"
msgstr "+Poista"
#. Post processing pick list: abbreviation for "+Repair"
#: sabnzbd/skintext.py
msgid "R"
msgstr "R"
#. Post processing pick list: abbreviation for "+Unpack"
#: sabnzbd/skintext.py
msgid "U"
msgstr "U"
#. Post processing pick list: abbreviation for "+Delete"
#: sabnzbd/skintext.py
msgid "D"
msgstr "D"
#. Priority pick list
#: sabnzbd/skintext.py
msgid "Force"
@@ -2367,11 +2203,6 @@ msgstr "Pysäytä"
msgid "Enter URL"
msgstr "Syötä osoite"
#. Queue page selection menu
#: sabnzbd/skintext.py
msgid "On queue finish"
msgstr "Kun jono on tyhjä"
#. Queue page end-of-queue action
#: sabnzbd/skintext.py
msgid "Shutdown PC"
@@ -2392,36 +2223,16 @@ msgstr "Horrostila"
msgid "Shutdown SABnzbd"
msgstr "Sammuta SABnzbd"
#. Queue page selection menu or entry box
#. Queue page table column header
#: sabnzbd/skintext.py
msgid "Speed Limit"
msgstr "Nopeusrajoitus"
msgid "Processing"
msgstr "Käsitellään"
#. Queue page table column header - Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Order"
msgstr "Järjestys"
#. Queue page table column header - Job details page
#. Queue page table column header
#: sabnzbd/skintext.py
msgid "Name"
msgstr "Nimi"
#. Queue page table column header, "estimated time of arrival"
#: sabnzbd/skintext.py
msgid "ETA"
msgstr "Aikaa jäljellä"
#. Queue page table column header, "age of the NZB"
#: sabnzbd/skintext.py
msgid "AGE"
msgstr "IKÄ"
#. Queue page table, "Delete" button
#: sabnzbd/skintext.py
msgid "Del"
msgstr "Poista"
#. Queue page button
#: sabnzbd/skintext.py
msgid "Retry"
@@ -2452,11 +2263,6 @@ msgstr "Puhdista NZBt"
msgid "Purge NZBs & Delete Files"
msgstr "Puhdista NZBt & poista tiedostot"
#. Retry all failed jobs dialog box
#: sabnzbd/skintext.py
msgid "Retry all failed jobs"
msgstr "Yritä uudelleen kaikki epäonnistuneet lataukset"
#. Queue page button
#: sabnzbd/skintext.py
msgid "Remove NZB"
@@ -2467,11 +2273,6 @@ msgstr "Poista NZB"
msgid "Remove NZB & Delete Files"
msgstr "Poista NZB ja tiedostot"
#. Queue page, as in "4G *of* 10G"
#: sabnzbd/skintext.py
msgid "of"
msgstr "/"
#. Caption for missing articles in Queue
#: sabnzbd/skintext.py
msgid "Missing articles"
@@ -2491,11 +2292,6 @@ msgstr "käsikäyttöinen"
msgid "Reset Quota now"
msgstr "Resetoi latausrajoitus nyt"
#. Confirmation popup
#: sabnzbd/skintext.py
msgid "Delete all completed items from History?"
msgstr "Poistetaanko kaikki valmistuneet kohteet historiasta?"
#. Button/link hiding History job details
#: sabnzbd/skintext.py
msgid "Hide details"
@@ -2552,25 +2348,8 @@ msgstr "Polku"
#. Retry all failed jobs in History
#: sabnzbd/skintext.py
msgid "Retry all failed"
msgstr "Yritä uudelleen kaikki epäonnistuneet"
#. Retry all button for Retry All Failed Jobs
#: sabnzbd/skintext.py
msgid "Retry All"
msgstr "Yritä uudelleen kaikki"
#: sabnzbd/skintext.py
msgid "Virus/spam"
msgstr "Virus/roskaposti"
#: sabnzbd/skintext.py
msgid "Out of retention"
msgstr "Säilytyksen ulkopuolella"
#: sabnzbd/skintext.py
msgid "Other problem"
msgstr "Muu ongelma"
msgid "Retry all failed jobs"
msgstr "Yritä uudelleen kaikki epäonnistuneet lataukset"
#. Status page button
#: sabnzbd/skintext.py
@@ -2622,21 +2401,6 @@ msgstr "+ Debug"
msgid "Connections"
msgstr "Yhteydet"
#. Status page, table header
#: sabnzbd/skintext.py
msgid "Latest Warnings"
msgstr "Viimeisimmät varoitukset"
#. Status page button
#: sabnzbd/skintext.py
msgid "clear"
msgstr "tyhjennä"
#. Status page button
#: sabnzbd/skintext.py
msgid "Unblock"
msgstr "Poista esto"
#. Status page, article identifier
#: sabnzbd/skintext.py
msgid "Article identifier"
@@ -2647,26 +2411,11 @@ msgstr "Artikkelin tunniste"
msgid "File set"
msgstr "Tiedostojoukko"
#. Status page, table column header, when error occured
#: sabnzbd/skintext.py
msgid "When"
msgstr "Milloin"
#. Status page, table column header, type of message - Config->RSS table
#. column header
#: sabnzbd/skintext.py
msgid "Type"
msgstr "Tyyppi"
#. Status page, indicator that server is enabled
#: sabnzbd/skintext.py
msgid "Enabled"
msgstr "Käytössä"
#: sabnzbd/skintext.py
msgid "Dashboard"
msgstr "Hallintapaneeli"
#: sabnzbd/skintext.py
msgid "Connection failed!"
msgstr "Yhteys epäonnistui!"
@@ -2687,10 +2436,6 @@ msgstr "IPv6 osoite"
msgid "Nameserver / DNS Lookup"
msgstr "Nimipalvelin / DNS-selvitys"
#: sabnzbd/skintext.py
msgid "CPU Model"
msgstr "Prosessorin malli"
#: sabnzbd/skintext.py
msgid "Download speed limited by"
msgstr ""
@@ -2703,6 +2448,10 @@ msgstr ""
msgid "Disk speed"
msgstr ""
#: sabnzbd/skintext.py
msgid "System load"
msgstr ""
#. Do not translate Pystone
#: sabnzbd/skintext.py
msgid "System Performance (Pystone)"
@@ -2716,23 +2465,10 @@ msgstr "Latauskansion nopeus"
msgid "Complete folder speed"
msgstr "Valmistuneet-kansion nopeus"
#: sabnzbd/skintext.py
msgid "Writing speed"
msgstr "Kirjoitusnopeus"
#: sabnzbd/skintext.py
msgid "Could not write. Check that the directory is writable."
msgstr ""
"Ei voitu kirjoittaa. Varmista, että sinulla on kirjoitusoikeus kansioon."
#: sabnzbd/skintext.py
msgid "Internet Bandwidth"
msgstr ""
#: sabnzbd/skintext.py
msgid "Click on Repeat test button below to determine"
msgstr "Paina Toista testi -painiketta alapuolella määrittääksesi"
#: sabnzbd/skintext.py
msgid "Repeat test"
msgstr "Toista testi"
@@ -2915,10 +2651,6 @@ msgstr ""
msgid "Enable HTTPS"
msgstr "HTTPS käytössä"
#: sabnzbd/skintext.py
msgid "not installed"
msgstr "ei asennettu"
#: sabnzbd/skintext.py
msgid "Enable accessing the interface from a HTTPS address."
msgstr "Ota käyttöön käyttöliittymän käyttäminen HTTPS-osoitteesta."
@@ -3010,12 +2742,17 @@ msgstr ""
"/><i>Tavuina, vaihtoehtoisesti lisää pääte K,M,G. Esimerkiksi: \"64M\" tai "
"\"128M\"</i>"
#. Config->Scheduling
#: sabnzbd/skintext.py
msgid "Download backup"
msgid "Create backup"
msgstr ""
#: sabnzbd/skintext.py
msgid "Save or restore a backup of the configuration file and databases."
msgid ""
"Create a backup of the configuration file and databases in the Backup "
"Folder.<br>If the Backup Folder is not set, the backup will be created in "
"the Completed Download Folder.<br>Recurring backups can be configured on the"
" Scheduling page."
msgstr ""
#: sabnzbd/skintext.py
@@ -3166,10 +2903,6 @@ msgstr "Käyttäjähakemistot"
msgid "Browse"
msgstr "Selaa"
#: sabnzbd/skintext.py
msgid "In"
msgstr "Kohteessa"
#: sabnzbd/skintext.py
msgid "Temporary Download Folder"
msgstr "Väliaikaiset lataukset kansio"
@@ -3301,6 +3034,17 @@ msgstr ""
"Sijainti jonne tallennetaan jonon hallinnan ja historian tietokannat.<br "
"/><i>Voidaan muuttaa vain jonon ollessa tyhjä.</i>"
#: sabnzbd/skintext.py
msgid "Backup Folder"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Location where the backups of the configuration file and databases are "
"stored.<br />If left empty, the backup will be created in the Completed "
"Download Folder."
msgstr ""
#: sabnzbd/skintext.py
msgid "<i>Data will <b>not</b> be moved. Requires SABnzbd restart!</i>"
msgstr ""
@@ -3494,16 +3238,6 @@ msgid "Some servers provide an alternative NZB when a download fails."
msgstr ""
"Jotkin palvelimet tarjoavat vaihtoehtoisen NZB:n kun lataus epäonnistuu."
#: sabnzbd/skintext.py
msgid "Use tags from indexer"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"When sorting, use tags from indexer for title, season, episode, etc. "
"Otherwise all naming is derived from the NZB name."
msgstr ""
#: sabnzbd/skintext.py
msgid "Enable folder rename"
msgstr "Kansion uudelleennimeäminen käytössä"
@@ -3558,6 +3292,14 @@ msgstr ""
msgid "Automatically sort jobs in the queue when a new job is added."
msgstr ""
#: sabnzbd/skintext.py
msgid "The queue will resort every 30 seconds if % downloaded is selected."
msgstr ""
#: sabnzbd/skintext.py
msgid "Propagation delay"
msgstr "Levitysviive"
#: sabnzbd/skintext.py
msgid ""
"Posts will be paused untill they are at least this age. Setting job priority"
@@ -3587,6 +3329,14 @@ msgstr "Korvaa välilyönnit kansionimessä"
msgid "Replace spaces with underscores in folder names."
msgstr "Korvaa välilyönnit alaviivoilla kansionimissä."
#: sabnzbd/skintext.py
msgid "Replace underscores in folder name"
msgstr ""
#: sabnzbd/skintext.py
msgid "Replace underscores with dots in folder names."
msgstr ""
#: sabnzbd/skintext.py
msgid "Replace dots in Foldername"
msgstr "Korvaa pisteet kansionimessä"
@@ -3686,10 +3436,6 @@ msgstr "Nimeäminen"
msgid "Quota"
msgstr "Latausrajoitus"
#: sabnzbd/skintext.py
msgid "Indexing"
msgstr "Indeksoidaan"
#: sabnzbd/skintext.py
msgid "How much can be downloaded this month (K/M/G)"
msgstr "Kuinka paljon voidaan ladata tässä kuussa (K/M/G)"
@@ -3941,7 +3687,7 @@ msgstr "Lisää ajastus"
msgid "Frequency"
msgstr "Toisto"
#. Config->Scheduling - Job details page, section header
#. Config->Scheduling
#: sabnzbd/skintext.py
msgid "Action"
msgstr "Toiminto"
@@ -3993,6 +3739,16 @@ msgstr ""
msgid "Next scan at"
msgstr ""
#. Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Order"
msgstr "Järjestys"
#. Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Type"
msgstr "Tyyppi"
#. Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Filter"
@@ -4341,11 +4097,6 @@ msgstr "Kansio/Polku"
msgid "Indexer Categories / Groups"
msgstr "Indeksoijan kategoriat / ryhmä"
#. Small delete button
#: sabnzbd/skintext.py
msgid "X"
msgstr "X"
#. Warning message
#: sabnzbd/skintext.py, sabnzbd/sorting.py
msgid "Select at least 1 category."
@@ -4376,10 +4127,6 @@ msgstr ""
msgid "Presets"
msgstr "Esiasetukset"
#: sabnzbd/skintext.py
msgid "Example"
msgstr "Esimerkki"
#. Warning message
#: sabnzbd/skintext.py, sabnzbd/sorting.py
msgid "Movie Sorting"
@@ -4389,10 +4136,6 @@ msgstr ""
msgid "Enable Movie Sorting"
msgstr "Elokuvien lajittelu käytössä"
#: sabnzbd/skintext.py
msgid "Keep loose downloads in extra folders"
msgstr "Pidä irralliset lataukset ylimääräisissä kansioissa"
#: sabnzbd/skintext.py
msgid "Affected Categories"
msgstr "Kategoriat joita koskee"
@@ -4610,51 +4353,11 @@ msgstr "NZB tietojen muokkaus"
msgid "Delete"
msgstr "Poista"
#. Job details page, move file to top
#: sabnzbd/skintext.py
msgid "Top"
msgstr "Ylin"
#. Job details page, move file one place up
#: sabnzbd/skintext.py
msgid "Up"
msgstr "Ylös"
#. Job details page, move file one place down
#: sabnzbd/skintext.py
msgid "Down"
msgstr "Alas"
#. Job details page, move file to bottom
#: sabnzbd/skintext.py
msgid "Bottom"
msgstr "Alin"
#. Job details page, select all files
#: sabnzbd/skintext.py
msgid "All"
msgstr "Kaikki"
#. Job details page, invert file selection
#: sabnzbd/skintext.py
msgid "Invert"
msgstr "Käänteinen"
#. Job details page, filename column header
#: sabnzbd/skintext.py
msgid "Filename"
msgstr "Tiedostonimi"
#. Job details page, subject column header
#: sabnzbd/skintext.py
msgid "Subject"
msgstr "Otsikko"
#. Job details page, section header
#: sabnzbd/skintext.py
msgid "Selection"
msgstr "Valinta"
#: sabnzbd/skintext.py
msgid "Free Space"
msgstr "Vapaa tila"
@@ -4679,6 +4382,10 @@ msgstr "Valitse kaikki"
msgid "Restart SABnzbd"
msgstr "Uudelleenkäynnistä SABnzbd"
#: sabnzbd/skintext.py
msgid "On queue finish"
msgstr "Kun jono on tyhjä"
#: sabnzbd/skintext.py
msgid "Status and interface options"
msgstr "Tilan ja käyttöliittymän asetukset"
@@ -4756,6 +4463,10 @@ msgstr "Jonon korjaus"
msgid "Show active connections"
msgstr "Näytä aktiiviset yhteydet"
#: sabnzbd/skintext.py
msgid "Unblock"
msgstr "Poista esto"
#: sabnzbd/skintext.py
msgid "Orphaned jobs"
msgstr "Orvot lataukset"
@@ -4788,18 +4499,6 @@ msgstr "Vaihtoehtoisesti anna tiedostonimi"
msgid "Submit"
msgstr "Lähetä"
#: sabnzbd/skintext.py
msgid "Open Informational URL"
msgstr "Avaa tietoja sisältävä osoite"
#: sabnzbd/skintext.py
msgid "Submitted. Thank you!"
msgstr "Lähetetty. Kiitos!"
#: sabnzbd/skintext.py
msgid "Nothing selected!"
msgstr "Ei mitään valittuna!"
#: sabnzbd/skintext.py
msgid "Remove all selected files"
msgstr "Poista kaikki valitut tiedostot"
@@ -4808,6 +4507,14 @@ msgstr "Poista kaikki valitut tiedostot"
msgid "Hide/show completed files"
msgstr "Piilota/näytä valmistuneet tiedostot"
#: sabnzbd/skintext.py
msgid "Top"
msgstr "Ylin"
#: sabnzbd/skintext.py
msgid "Bottom"
msgstr "Alin"
#: sabnzbd/skintext.py
msgid "View Script Log"
msgstr "Näytä skriptien loki"
@@ -4829,6 +4536,10 @@ msgid "Glitter has some (new) features you might like!"
msgstr ""
"Glitter-teemassa on muutamia (uusia) ominaisuuksia joista saatat pitää!"
#: sabnzbd/skintext.py
msgid "Custom"
msgstr "Mukautettu"
#: sabnzbd/skintext.py
msgid "Compact layout"
msgstr "Tiivis käyttöliittymä"
@@ -4841,6 +4552,10 @@ msgstr ""
msgid "Tabbed layout <br/>(separate queue and history)"
msgstr "Välilehditetty käyttöliittymä <br/>(erillinen jono ja historia)"
#: sabnzbd/skintext.py
msgid "Speed"
msgstr "Nopeus"
#: sabnzbd/skintext.py
msgid "Confirm Queue Deletions"
msgstr "Varmista jonon poistot"
@@ -4875,6 +4590,10 @@ msgid ""
" and the included copy of your settings."
msgstr ""
#: sabnzbd/skintext.py
msgid "Sort by % downloaded <small>Most&rarr;Least</small>"
msgstr ""
#: sabnzbd/skintext.py
msgid "Sort by Age <small>Oldest&rarr;Newest</small>"
msgstr "Järjestä iän mukaan <small>Vanhin&rarr;Uusin</small>"
@@ -5022,18 +4741,6 @@ msgstr ""
"Tämä on ilmainen ohjelma ja olet vapaa levittämään sitä tiettyjen ehtojen ollessa voimassa.\n"
"Se on lisensoitu GNU GENERAL PUBLIC LICENSE Versio 2 alaiseksi ja (oman valinnan mukaan) myös myöhempien versioiden.\n"
#: sabnzbd/skintext.py
msgid ""
"In order to download from usenet you will require access to a provider. Your"
" ISP may provide you with access, however a premium provider is recommended."
msgstr ""
"Jotta voit ladata usenetistä tarvitset tarjoajan. Palveluntarjoajasi saattaa"
" tarjota sinulle sellaisen, mutta on suositeltavaa hankkia premium-tarjoaja."
#: sabnzbd/skintext.py
msgid "Don't have a usenet provider? We recommend trying %s."
msgstr "Eikö sinulla ole usenet tarjoajaa? Suosittelemme kokeilemaan %s."
#. Error message
#: sabnzbd/sorting.py
msgid "Failed to rename: %s to %s"
@@ -5103,10 +4810,6 @@ msgid ""
msgstr ""
"Tuntematon SSL protokolla: Kokeile ottaa SSL käytöstä tai vaihda porttia."
#: sabnzbd/utils/servertests.py
msgid "Invalid server address."
msgstr "Virheellinen palvelimen osoite."
#: sabnzbd/utils/servertests.py
msgid "Server quit during login sequence."
msgstr "Palvelin lopetettiin kesken kirjautumisen"

View File

@@ -8,7 +8,7 @@
#
msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
"Project-Id-Version: SABnzbd-3.7.0-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"
@@ -16,7 +16,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: fr\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"Plural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"
#. Notification - Status page, table column header, actual message
#: SABnzbd.py, sabnzbd/notifier.py, sabnzbd/skintext.py
@@ -195,11 +195,7 @@ msgstr "Test de Notification"
msgid "&nbsp;Resolving address"
msgstr "&nbsp;Résolution de l'adresse"
#: sabnzbd/api.py
msgid "unknown"
msgstr "inconnu"
#. No value, used in dropdown menus - Job details page, select no files
#. No value, used in dropdown menus
#: sabnzbd/api.py, sabnzbd/skintext.py
msgid "None"
msgstr "Aucun"
@@ -306,6 +302,10 @@ msgstr "%s n'est pas une adresse email valide"
msgid "Server address required"
msgstr "Adresse du serveur requise"
#: sabnzbd/cfg.py, sabnzbd/utils/servertests.py
msgid "Invalid server address."
msgstr "Adresse du serveur erronée"
#: sabnzbd/cfg.py
msgid "%s is not a valid script"
msgstr "%s n'est pas un script valide"
@@ -406,7 +406,7 @@ msgstr "La désobfuscation a renommé %d fichier(s)"
msgid "Direct Unpack"
msgstr "Décompression Directe"
#. PP status - History: job status
#. PP status
#: sabnzbd/directunpacker.py, sabnzbd/skintext.py
msgid "Completed"
msgstr "Terminé"
@@ -465,6 +465,11 @@ msgstr "Resolution du nom de serveur impossible"
msgid "Server %s will be ignored for %s minutes"
msgstr "Le serveur %s sera ignoré pendant %s minutes"
#. Warning message
#: sabnzbd/downloader.py
msgid "There are no active servers!"
msgstr "Il n'y a aucun serveur actif !"
#. Error message
#: sabnzbd/downloader.py
msgid "Failed to initialize %s@%s with reason: %s"
@@ -632,6 +637,20 @@ msgstr "L'enregistrement de %s a échoué"
msgid "Loading %s failed"
msgstr "Echec du chargement de %s"
#. Warning message
#: sabnzbd/filesystem.py
msgid ""
"%s is not writable with special character filenames. This can cause "
"problems."
msgstr ""
"Le fichier %s n'est pas inscriptible à cause des caractères spéciaux dans le"
" nom. Cela peut causer des problèmes."
#. Warning message
#: sabnzbd/filesystem.py
msgid "%s is not writable at all. This blocks downloads."
msgstr "%s n'est pas du tout inscriptible. Les téléchargements sont bloqués."
#: sabnzbd/interface.py
msgid "Refused connection from:"
msgstr "Connexion refusée de:"
@@ -665,14 +684,6 @@ msgstr ""
"Clé API incorrecte, utilisez la clé API de la configuration générale dans "
"votre application tierce :"
#: sabnzbd/interface.py
msgid ""
"Authentication missing, please enter username/password from Config->General "
"into your 3rd party program:"
msgstr ""
"Authentification manquante, entrez vos identifiant/mot de passe de la "
"configuration générale dans votre application tierce :"
#: sabnzbd/interface.py, sabnzbd/newswrapper.py, sabnzbd/utils/servertests.py
msgid "Authentication failed, check username/password."
msgstr "Echec d'authentification, vérifiez les identifiant/mot de passe."
@@ -1235,27 +1246,27 @@ msgstr "Interrompu, ne peut être achevé"
msgid "Error importing %s"
msgstr "Erreur lors de l'importation de %s"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "DUPLICATE"
msgstr "DOUBLON"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "ENCRYPTED"
msgstr "CHIFFRÉ"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "TOO LARGE"
msgstr "TROP VOLUMINEUX"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "INCOMPLETE"
msgstr "INCOMPLET"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "UNWANTED"
msgstr "INDÉSIRABLE"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "WAIT %s sec"
msgstr "PATIENTER %s sec"
@@ -1521,7 +1532,7 @@ msgid ""
"Completed Download Folder %s is on FAT file system, limiting maximum file "
"size to 4GB"
msgstr ""
"Le système de fichiers du dossier de téléchargements terminés %s est au "
"Le système de fichiers du dossier des téléchargements terminés %s est au "
"format FAT, limitant la taille maximale d'un fichier à 4 Go"
#: sabnzbd/postproc.py
@@ -1615,13 +1626,13 @@ msgid "Trying RAR-based verification"
msgstr "Tentative de vérification RAR"
#: sabnzbd/postproc.py
msgid "[%s] RAR-based verification failed: %s"
msgstr "[%s] La vérification RAR a échoué: %s"
#: sabnzbd/postproc.py, sabnzbd/skintext.py
msgid "Passworded"
msgstr "Protégé par un mot de passe"
#: sabnzbd/postproc.py
msgid "[%s] RAR-based verification failed: %s"
msgstr "[%s] La vérification RAR a échoué: %s"
#: sabnzbd/postproc.py
msgid "RAR files verified successfully"
msgstr "Fichiers RAR vérifiés avec succès"
@@ -1737,7 +1748,7 @@ msgstr "Mettre en pause pendant 3 heures"
msgid "Pause for 6 hours"
msgstr "Mettre en pause pendant 6 heures"
#. Shutdown SABnzbd - Config->Scheduling
#. Config->Scheduling
#: sabnzbd/sabtray.py, sabnzbd/sabtraylinux.py, sabnzbd/skintext.py
msgid "Shutdown"
msgstr "Arrêter"
@@ -1806,11 +1817,6 @@ msgstr "Source"
msgid "Servers"
msgstr "Serveurs"
#. PP Failure message
#: sabnzbd/skintext.py
msgid "Failure"
msgstr "Échec"
#. PP status
#: sabnzbd/skintext.py
msgid "Failed"
@@ -1856,20 +1862,6 @@ msgstr "Vérification rapide..."
msgid "Verifying..."
msgstr "Vérification..."
#. Pseudo-PP status, in reality used for Queue-status
#: sabnzbd/skintext.py
msgid "Downloading"
msgstr "Téléchargement"
#: sabnzbd/skintext.py
msgid "Propagation delay"
msgstr "Délai de propagation"
#. #: Config->Scheduler
#: sabnzbd/skintext.py
msgid "Task"
msgstr "Tâche"
#. #: Config->Scheduler
#: sabnzbd/skintext.py
msgid "disable server"
@@ -2000,21 +1992,6 @@ msgstr "Urgence"
msgid "Low"
msgstr "Basse"
#. Megabytes
#: sabnzbd/skintext.py
msgid "MB"
msgstr "Mo"
#. Gigabytes
#: sabnzbd/skintext.py
msgid "GB"
msgstr "Go"
#. Bytes (used as postfix, as in "GB", "TB")
#: sabnzbd/skintext.py
msgid "B"
msgstr "B"
#. One hour
#: sabnzbd/skintext.py
msgid "hour"
@@ -2060,54 +2037,6 @@ msgstr "Mois"
msgid "Year"
msgstr "Année"
#: sabnzbd/skintext.py
msgid "January"
msgstr "Janvier"
#: sabnzbd/skintext.py
msgid "February"
msgstr "Février"
#: sabnzbd/skintext.py
msgid "March"
msgstr "Mars"
#: sabnzbd/skintext.py
msgid "April"
msgstr "Avril"
#: sabnzbd/skintext.py
msgid "May"
msgstr "Mai"
#: sabnzbd/skintext.py
msgid "June"
msgstr "Juin"
#: sabnzbd/skintext.py
msgid "July"
msgstr "Juillet"
#: sabnzbd/skintext.py
msgid "August"
msgstr "Août"
#: sabnzbd/skintext.py
msgid "September"
msgstr "Septembre"
#: sabnzbd/skintext.py
msgid "October"
msgstr "Octobre"
#: sabnzbd/skintext.py
msgid "November"
msgstr "Novembre"
#: sabnzbd/skintext.py
msgid "December"
msgstr "Décembre"
#: sabnzbd/skintext.py
msgid "Day of month"
msgstr "Jour du mois"
@@ -2132,14 +2061,6 @@ msgstr "Aujourd'hui"
msgid "Total"
msgstr "Total"
#: sabnzbd/skintext.py
msgid "Custom"
msgstr "Personnalisé"
#: sabnzbd/skintext.py
msgid "Speed"
msgstr "Vitesse"
#: sabnzbd/skintext.py
msgid "on"
msgstr "oui"
@@ -2168,42 +2089,10 @@ msgstr "ou"
msgid "Host"
msgstr "Hôte"
#: sabnzbd/skintext.py
msgid "Comment"
msgstr "Commentaire"
#: sabnzbd/skintext.py
msgid "Send"
msgstr "Envoyer"
#: sabnzbd/skintext.py
msgid "Cancel"
msgstr "Annuler"
#: sabnzbd/skintext.py
msgid "Other"
msgstr "Autre"
#: sabnzbd/skintext.py
msgid "Report"
msgstr "Signaler"
#: sabnzbd/skintext.py
msgid "Video"
msgstr "Vidéo"
#: sabnzbd/skintext.py
msgid "Audio"
msgstr "Audio"
#: sabnzbd/skintext.py
msgid "Not used"
msgstr "Non utilisé"
#: sabnzbd/skintext.py
msgid "or less"
msgstr "ou moins"
#: sabnzbd/skintext.py
msgid "Log in"
msgstr "Se connecter"
@@ -2216,11 +2105,6 @@ msgstr "Se déconnecter"
msgid "Remember me"
msgstr "Se souvenir de moi"
#. SABnzbd's theme line
#: sabnzbd/skintext.py
msgid "The automatic usenet download tool"
msgstr "L'outil de téléchargement usenet automatique"
#. "Save" button
#: sabnzbd/skintext.py
msgid "Save"
@@ -2235,11 +2119,6 @@ msgstr "Enregistrement.."
msgid "Are you sure?"
msgstr "Êtes-vous sûr ?"
#. Used in confirmation popups
#: sabnzbd/skintext.py
msgid "Delete all downloaded files?"
msgstr "Supprimer tous les fichiers téléchargés ?"
#. Main menu item
#: sabnzbd/skintext.py
msgid "Home"
@@ -2339,22 +2218,6 @@ msgstr "Rechercher"
msgid "Download Dir"
msgstr "Dossier de téléchargement"
#: sabnzbd/skintext.py
msgid "PAUSED"
msgstr "EN PAUSE"
#: sabnzbd/skintext.py
msgid "Cached %s articles (%s)"
msgstr "%s articles mis en cache (%s)"
#: sabnzbd/skintext.py
msgid "Sysload"
msgstr "Sysload"
#: sabnzbd/skintext.py
msgid "New release %s available at"
msgstr "Une nouvelle version %s est disponible"
#: sabnzbd/skintext.py
msgid "Are you sure you want to shutdown SABnzbd?"
msgstr "Etes-vous sûr de vouloir arrêter SABnzbd ?"
@@ -2364,21 +2227,11 @@ msgstr "Etes-vous sûr de vouloir arrêter SABnzbd ?"
msgid "Add"
msgstr "Ajouter"
#. Add NZB file to queue (header
#: sabnzbd/skintext.py
msgid "Add File"
msgstr "Ajouter un fichier"
#. Job category
#: sabnzbd/skintext.py
msgid "Category"
msgstr "Catégorie"
#. Queue page table column header
#: sabnzbd/skintext.py
msgid "Processing"
msgstr "Traitement en cours"
#. Server priority
#: sabnzbd/skintext.py
msgid "Priority"
@@ -2399,21 +2252,6 @@ msgstr "+Décompresser"
msgid "+Delete"
msgstr "+Supprimer"
#. Post processing pick list: abbreviation for "+Repair"
#: sabnzbd/skintext.py
msgid "R"
msgstr "R"
#. Post processing pick list: abbreviation for "+Unpack"
#: sabnzbd/skintext.py
msgid "U"
msgstr "D"
#. Post processing pick list: abbreviation for "+Delete"
#: sabnzbd/skintext.py
msgid "D"
msgstr "S"
#. Priority pick list
#: sabnzbd/skintext.py
msgid "Force"
@@ -2429,11 +2267,6 @@ msgstr "Arrêter"
msgid "Enter URL"
msgstr "Saisir une URL"
#. Queue page selection menu
#: sabnzbd/skintext.py
msgid "On queue finish"
msgstr "En fin de file d'attente"
#. Queue page end-of-queue action
#: sabnzbd/skintext.py
msgid "Shutdown PC"
@@ -2454,36 +2287,16 @@ msgstr "Mettre le PC en hibernation"
msgid "Shutdown SABnzbd"
msgstr "Arrêter SABnzbd"
#. Queue page selection menu or entry box
#. Queue page table column header
#: sabnzbd/skintext.py
msgid "Speed Limit"
msgstr "Vitesse limite"
msgid "Processing"
msgstr "Traitement en cours"
#. Queue page table column header - Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Order"
msgstr "Ordre"
#. Queue page table column header - Job details page
#. Queue page table column header
#: sabnzbd/skintext.py
msgid "Name"
msgstr "Nom"
#. Queue page table column header, "estimated time of arrival"
#: sabnzbd/skintext.py
msgid "ETA"
msgstr "TRE"
#. Queue page table column header, "age of the NZB"
#: sabnzbd/skintext.py
msgid "AGE"
msgstr "ÂGE"
#. Queue page table, "Delete" button
#: sabnzbd/skintext.py
msgid "Del"
msgstr "Suppr."
#. Queue page button
#: sabnzbd/skintext.py
msgid "Retry"
@@ -2514,11 +2327,6 @@ msgstr "Vider les NZB"
msgid "Purge NZBs & Delete Files"
msgstr "Purger les NZB & supprimer les fichiers"
#. Retry all failed jobs dialog box
#: sabnzbd/skintext.py
msgid "Retry all failed jobs"
msgstr "Réessayez toutes les tâches échouées"
#. Queue page button
#: sabnzbd/skintext.py
msgid "Remove NZB"
@@ -2529,11 +2337,6 @@ msgstr "Supprimer NZB"
msgid "Remove NZB & Delete Files"
msgstr "Supprimer le NZB & supprimer les fichiers"
#. Queue page, as in "4G *of* 10G"
#: sabnzbd/skintext.py
msgid "of"
msgstr "de"
#. Caption for missing articles in Queue
#: sabnzbd/skintext.py
msgid "Missing articles"
@@ -2553,11 +2356,6 @@ msgstr "manuel"
msgid "Reset Quota now"
msgstr "Réinitialiser le quota maintenant"
#. Confirmation popup
#: sabnzbd/skintext.py
msgid "Delete all completed items from History?"
msgstr "Supprimer tous les éléments terminés de l'historique ?"
#. Button/link hiding History job details
#: sabnzbd/skintext.py
msgid "Hide details"
@@ -2614,25 +2412,8 @@ msgstr "Chemin d'accès"
#. Retry all failed jobs in History
#: sabnzbd/skintext.py
msgid "Retry all failed"
msgstr "Relancer toutes les tâches échouéés"
#. Retry all button for Retry All Failed Jobs
#: sabnzbd/skintext.py
msgid "Retry All"
msgstr "Réessayer tous"
#: sabnzbd/skintext.py
msgid "Virus/spam"
msgstr "Virus/spam"
#: sabnzbd/skintext.py
msgid "Out of retention"
msgstr "En dehors du délai de rétention"
#: sabnzbd/skintext.py
msgid "Other problem"
msgstr "Autre problème"
msgid "Retry all failed jobs"
msgstr "Réessayez toutes les tâches échouées"
#. Status page button
#: sabnzbd/skintext.py
@@ -2687,21 +2468,6 @@ msgstr "+ Debug"
msgid "Connections"
msgstr "Connections"
#. Status page, table header
#: sabnzbd/skintext.py
msgid "Latest Warnings"
msgstr "Avertissements récents"
#. Status page button
#: sabnzbd/skintext.py
msgid "clear"
msgstr "éffacer"
#. Status page button
#: sabnzbd/skintext.py
msgid "Unblock"
msgstr "Débloquer"
#. Status page, article identifier
#: sabnzbd/skintext.py
msgid "Article identifier"
@@ -2712,26 +2478,11 @@ msgstr "Identifiant de l'article"
msgid "File set"
msgstr "Collection de fichiers"
#. Status page, table column header, when error occured
#: sabnzbd/skintext.py
msgid "When"
msgstr "Quand"
#. Status page, table column header, type of message - Config->RSS table
#. column header
#: sabnzbd/skintext.py
msgid "Type"
msgstr "Type"
#. Status page, indicator that server is enabled
#: sabnzbd/skintext.py
msgid "Enabled"
msgstr "Activé"
#: sabnzbd/skintext.py
msgid "Dashboard"
msgstr "Tableau de bord"
#: sabnzbd/skintext.py
msgid "Connection failed!"
msgstr "Echec de connexion !"
@@ -2752,10 +2503,6 @@ msgstr "Adresse IPv6"
msgid "Nameserver / DNS Lookup"
msgstr "Nameserver / DNS Lookup"
#: sabnzbd/skintext.py
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"
@@ -2768,6 +2515,10 @@ msgstr "processeur"
msgid "Disk speed"
msgstr "Vitesse du disque"
#: sabnzbd/skintext.py
msgid "System load"
msgstr ""
#. Do not translate Pystone
#: sabnzbd/skintext.py
msgid "System Performance (Pystone)"
@@ -2781,23 +2532,10 @@ msgstr "Vitesse du dossier \"Download\""
msgid "Complete folder speed"
msgstr "Vitesse du dossier \"Complete\""
#: sabnzbd/skintext.py
msgid "Writing speed"
msgstr "Vitesse d'écriture"
#: sabnzbd/skintext.py
msgid "Could not write. Check that the directory is writable."
msgstr ""
"Impossible d'écrire. Vérifiez que le répertoire est accessible en écriture."
#: sabnzbd/skintext.py
msgid "Internet Bandwidth"
msgstr "Bande passante Internet"
#: sabnzbd/skintext.py
msgid "Click on Repeat test button below to determine"
msgstr "Cliquez sur le bouton de test \"Répéter\" ci-dessous pour déterminer"
#: sabnzbd/skintext.py
msgid "Repeat test"
msgstr "Refaire le test"
@@ -2992,10 +2730,6 @@ msgstr "Sécurité"
msgid "Enable HTTPS"
msgstr "Activer HTTPS"
#: sabnzbd/skintext.py
msgid "not installed"
msgstr "non installé"
#: sabnzbd/skintext.py
msgid "Enable accessing the interface from a HTTPS address."
msgstr "Active l'accès à l'interface via une adresse HTTPS."
@@ -3090,15 +2824,23 @@ 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>"
#. Config->Scheduling
#: sabnzbd/skintext.py
msgid "Download backup"
msgstr "Télécharger la sauvegarde"
msgid "Create backup"
msgstr "Créer une sauvegarde"
#: sabnzbd/skintext.py
msgid "Save or restore a backup of the configuration file and databases."
msgid ""
"Create a backup of the configuration file and databases in the Backup "
"Folder.<br>If the Backup Folder is not set, the backup will be created in "
"the Completed Download Folder.<br>Recurring backups can be configured on the"
" Scheduling page."
msgstr ""
"Sauvegarder ou restaurer une sauvegarde du fichier de configuration et des "
"bases de données."
"Créer une sauvegarde du fichier de configuration et des bases de données "
"dans le Dossier de sauvegarde.<br>Si le Dossier de sauvegarde n'est pas "
"défini, la sauvegarde sera créée dans le Dossier des téléchargements "
"terminés.<br>Les sauvegardes récurrentes peuvent être configurées sur la "
"page Planification."
#: sabnzbd/skintext.py
msgid "Cleanup List"
@@ -3252,10 +2994,6 @@ msgstr "Dossiers utilisateur"
msgid "Browse"
msgstr "Parcourir"
#: sabnzbd/skintext.py
msgid "In"
msgstr "Dans"
#: sabnzbd/skintext.py
msgid "Temporary Download Folder"
msgstr "Dossier temporaire de téléchargement"
@@ -3283,7 +3021,7 @@ msgstr ""
#: sabnzbd/skintext.py
msgid "Completed Download Folder"
msgstr "Dossier de téléchargements terminés"
msgstr "Dossier des téléchargements terminés"
#: sabnzbd/skintext.py
msgid ""
@@ -3315,7 +3053,7 @@ msgid ""
"/>Checked every few minutes."
msgstr ""
"Le téléchargement reprendra automatiquement si l'espace libre minimum est à "
"nouveau disponible.<br />S'applique aux dossiers de téléchargements "
"nouveau disponible.<br />S'applique aux dossiers des téléchargements "
"temporaires et terminés.<br />Vérifié toutes les quelques minutes."
#: sabnzbd/skintext.py
@@ -3394,6 +3132,20 @@ msgstr ""
"Emplacement de la file d'attente et de la base de données d'historique.<br "
"/><i>Ne peut être changé que lorsque la file d'attente est vide.</i>"
#: sabnzbd/skintext.py
msgid "Backup Folder"
msgstr "Dossier de sauvegarde"
#: sabnzbd/skintext.py
msgid ""
"Location where the backups of the configuration file and databases are "
"stored.<br />If left empty, the backup will be created in the Completed "
"Download Folder."
msgstr ""
"Emplacement où sont stockées les sauvegardes du fichier de configuration et "
"des bases de données.<br />Si laissé vide, la sauvegarde sera créée dans le "
"Dossier des téléchargements terminés."
#: sabnzbd/skintext.py
msgid "<i>Data will <b>not</b> be moved. Requires SABnzbd restart!</i>"
msgstr ""
@@ -3601,19 +3353,6 @@ msgstr ""
"Certains serveurs proposent un NZB alternatif lorsqu'un téléchargement "
"échoue."
#: sabnzbd/skintext.py
msgid "Use tags from indexer"
msgstr "Utiliser les tags de l'indexeur"
#: sabnzbd/skintext.py
msgid ""
"When sorting, use tags from indexer for title, season, episode, etc. "
"Otherwise all naming is derived from the NZB name."
msgstr ""
"Lors du tri, utiliser les tags de l'indexeur pour le titre, la saison, "
"l'episode, etc. Sinon, toutes les dénominations seront dérivées du fichier "
"NZB."
#: sabnzbd/skintext.py
msgid "Enable folder rename"
msgstr "Activer le renommage du dossier"
@@ -3670,6 +3409,16 @@ msgstr ""
"Trier automatiquement la file d'attente lorsqu'une nouvelle tâche est "
"ajoutée."
#: sabnzbd/skintext.py
msgid "The queue will resort every 30 seconds if % downloaded is selected."
msgstr ""
"La file d'attente sera triée toutes les 30 secondes si le % de "
"téléchargement est sélectionné."
#: sabnzbd/skintext.py
msgid "Propagation delay"
msgstr "Délai de propagation"
#: sabnzbd/skintext.py
msgid ""
"Posts will be paused untill they are at least this age. Setting job priority"
@@ -3701,6 +3450,14 @@ msgid "Replace spaces with underscores in folder names."
msgstr ""
"Remplace les espaces par des underscores ( _ ) dans les noms de dossiers."
#: sabnzbd/skintext.py
msgid "Replace underscores in folder name"
msgstr "Remplacer les underscores dans le nom du dossier"
#: sabnzbd/skintext.py
msgid "Replace underscores with dots in folder names."
msgstr "Remplacer les underscores par des points dans les noms de dossiers"
#: sabnzbd/skintext.py
msgid "Replace dots in Foldername"
msgstr "Remplacer les points dans les noms de dossier"
@@ -3807,10 +3564,6 @@ msgstr "Appellation"
msgid "Quota"
msgstr "Quota"
#: sabnzbd/skintext.py
msgid "Indexing"
msgstr "Indexation"
#: sabnzbd/skintext.py
msgid "How much can be downloaded this month (K/M/G)"
msgstr "Combien peut-être télécharger ce mois (K/M/G)"
@@ -4075,7 +3828,7 @@ msgstr "Ajouter une planification"
msgid "Frequency"
msgstr "Fréquence"
#. Config->Scheduling - Job details page, section header
#. Config->Scheduling
#: sabnzbd/skintext.py
msgid "Action"
msgstr "Action"
@@ -4128,6 +3881,16 @@ msgstr "Modifier"
msgid "Next scan at"
msgstr "Prochain scan à"
#. Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Order"
msgstr "Ordre"
#. Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Type"
msgstr "Type"
#. Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Filter"
@@ -4483,11 +4246,6 @@ msgstr "Dossier/Chemin"
msgid "Indexer Categories / Groups"
msgstr "Catégories de l'indexeur / Groupes"
#. Small delete button
#: sabnzbd/skintext.py
msgid "X"
msgstr "X"
#. Warning message
#: sabnzbd/skintext.py, sabnzbd/sorting.py
msgid "Select at least 1 category."
@@ -4518,10 +4276,6 @@ msgstr "Appliquer les filtres"
msgid "Presets"
msgstr "Modèles prédéfinis"
#: sabnzbd/skintext.py
msgid "Example"
msgstr "Exemple"
#. Warning message
#: sabnzbd/skintext.py, sabnzbd/sorting.py
msgid "Movie Sorting"
@@ -4531,11 +4285,6 @@ msgstr "Tri des films"
msgid "Enable Movie Sorting"
msgstr "Activer le tri des films"
#: sabnzbd/skintext.py
msgid "Keep loose downloads in extra folders"
msgstr ""
"Conserver les téléchargements disséminés dans des dossiers supplémentaires"
#: sabnzbd/skintext.py
msgid "Affected Categories"
msgstr "Catégories affectées"
@@ -4752,51 +4501,11 @@ msgstr "Éditer les détails du NZB"
msgid "Delete"
msgstr "Supprimer"
#. Job details page, move file to top
#: sabnzbd/skintext.py
msgid "Top"
msgstr "Tout en haut"
#. Job details page, move file one place up
#: sabnzbd/skintext.py
msgid "Up"
msgstr "Monter"
#. Job details page, move file one place down
#: sabnzbd/skintext.py
msgid "Down"
msgstr "Descendre"
#. Job details page, move file to bottom
#: sabnzbd/skintext.py
msgid "Bottom"
msgstr "Tout en bas"
#. Job details page, select all files
#: sabnzbd/skintext.py
msgid "All"
msgstr "Tous"
#. Job details page, invert file selection
#: sabnzbd/skintext.py
msgid "Invert"
msgstr "Inverser"
#. Job details page, filename column header
#: sabnzbd/skintext.py
msgid "Filename"
msgstr "Nom de fichier"
#. Job details page, subject column header
#: sabnzbd/skintext.py
msgid "Subject"
msgstr "Sujet"
#. Job details page, section header
#: sabnzbd/skintext.py
msgid "Selection"
msgstr "Sélection"
#: sabnzbd/skintext.py
msgid "Free Space"
msgstr "Espace libre"
@@ -4821,6 +4530,10 @@ msgstr "Tout sélectionner"
msgid "Restart SABnzbd"
msgstr "Redémarrer SABnzbd"
#: sabnzbd/skintext.py
msgid "On queue finish"
msgstr "En fin de file d'attente"
#: sabnzbd/skintext.py
msgid "Status and interface options"
msgstr "Options de statut et d'interface"
@@ -4898,6 +4611,10 @@ msgstr "Réparer la file d'attente"
msgid "Show active connections"
msgstr "Afficher les connexions actives"
#: sabnzbd/skintext.py
msgid "Unblock"
msgstr "Débloquer"
#: sabnzbd/skintext.py
msgid "Orphaned jobs"
msgstr "Tâches orphelines"
@@ -4930,18 +4647,6 @@ msgstr "Vous pouvez également indiquer un nom de fichier"
msgid "Submit"
msgstr "Soumettre"
#: sabnzbd/skintext.py
msgid "Open Informational URL"
msgstr "Ouvrir URL Info."
#: sabnzbd/skintext.py
msgid "Submitted. Thank you!"
msgstr "Soumis. Merci !"
#: sabnzbd/skintext.py
msgid "Nothing selected!"
msgstr "Pas de sélection!"
#: sabnzbd/skintext.py
msgid "Remove all selected files"
msgstr "Supprimer tous les fichiers sélectionnés"
@@ -4950,6 +4655,14 @@ msgstr "Supprimer tous les fichiers sélectionnés"
msgid "Hide/show completed files"
msgstr "Afficher/masquer les fichiers terminés"
#: sabnzbd/skintext.py
msgid "Top"
msgstr "Tout en haut"
#: sabnzbd/skintext.py
msgid "Bottom"
msgstr "Tout en bas"
#: sabnzbd/skintext.py
msgid "View Script Log"
msgstr "Afficher le journal des scripts"
@@ -4972,6 +4685,10 @@ msgid "Glitter has some (new) features you might like!"
msgstr ""
"Glitter a des (nouvelles) fonctionnalités que vous devriez apprécier !"
#: sabnzbd/skintext.py
msgid "Custom"
msgstr "Personnalisé"
#: sabnzbd/skintext.py
msgid "Compact layout"
msgstr "Affichage compact"
@@ -4984,6 +4701,10 @@ msgstr "Toujours utiliser la largeur totale de l'écran"
msgid "Tabbed layout <br/>(separate queue and history)"
msgstr "Mise en page par onglets <br/>(file d'attente et historique séparés)"
#: sabnzbd/skintext.py
msgid "Speed"
msgstr "Vitesse"
#: sabnzbd/skintext.py
msgid "Confirm Queue Deletions"
msgstr "Confirmer les suppressions de la file d'attente"
@@ -5020,6 +4741,10 @@ msgstr ""
"Tous les noms d'utilisateur, mots de passe et clés API sont automatiquement "
"supprimés du journal et de la copie de vos réglages."
#: sabnzbd/skintext.py
msgid "Sort by % downloaded <small>Most&rarr;Least</small>"
msgstr "Trier par % téléchargé <small>Most&rarr;Least</small>"
#: sabnzbd/skintext.py
msgid "Sort by Age <small>Oldest&rarr;Newest</small>"
msgstr "Trier par Age <small>Moins récent&rarr;Plus récent</small>"
@@ -5167,20 +4892,6 @@ msgstr ""
"Ce logiciel est gratuit, et vous êtes invité à le redistribuer sous certaines conditions.\n"
"Il est distribué sous licence GNU GENERAL PUBLIC LICENSE Version 2 ou toute autre version ultérieure.\n"
#: sabnzbd/skintext.py
msgid ""
"In order to download from usenet you will require access to a provider. Your"
" ISP may provide you with access, however a premium provider is recommended."
msgstr ""
"Pour pouvoir télécharger sur les newsgroups, il est nécessaire d'avoir un "
"fournisseur usenet. Votre FAI peut vous fournir un accès, cependant un "
"fournisseur usenet premium est recommandé."
#: sabnzbd/skintext.py
msgid "Don't have a usenet provider? We recommend trying %s."
msgstr ""
"Vous n'avez pas de fournisseur usenet? Nous vous recommendons d'essayer %s."
#. Error message
#: sabnzbd/sorting.py
msgid "Failed to rename: %s to %s"
@@ -5254,10 +4965,6 @@ msgstr ""
"Protocole SSL inconnu: essayez de désactiver SSL ou de vous connecter sur un"
" autre port."
#: sabnzbd/utils/servertests.py
msgid "Invalid server address."
msgstr "Adresse du serveur erronée"
#: sabnzbd/utils/servertests.py
msgid "Server quit during login sequence."
msgstr "Le serveur a interrompu l'ouverture de session."

View File

@@ -8,7 +8,7 @@
#
msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
"Project-Id-Version: SABnzbd-3.7.0-develop\n"
"PO-Revision-Date: 2020-06-27 15:49+0000\n"
"Last-Translator: ION, 2022\n"
"Language-Team: Hebrew (https://www.transifex.com/sabnzbd/teams/111101/he/)\n"
@@ -182,11 +182,7 @@ msgstr "בחן התראה"
msgid "&nbsp;Resolving address"
msgstr "&nbsp;פותר כתובת"
#: sabnzbd/api.py
msgid "unknown"
msgstr "בלתי ידוע"
#. No value, used in dropdown menus - Job details page, select no files
#. No value, used in dropdown menus
#: sabnzbd/api.py, sabnzbd/skintext.py
msgid "None"
msgstr "אין"
@@ -284,6 +280,10 @@ msgstr "%s אינה כתובת דוא״ל תקפה"
msgid "Server address required"
msgstr "כתובת שרת דרושה"
#: sabnzbd/cfg.py, sabnzbd/utils/servertests.py
msgid "Invalid server address."
msgstr "כתובת שרת בלתי תקפה."
#: sabnzbd/cfg.py
msgid "%s is not a valid script"
msgstr "%s הוא לא תסריט תקף"
@@ -380,7 +380,7 @@ msgstr "אי־האפלה שינתה שם של %d קבצים"
msgid "Direct Unpack"
msgstr "פריקה ישירה"
#. PP status - History: job status
#. PP status
#: sabnzbd/directunpacker.py, sabnzbd/skintext.py
msgid "Completed"
msgstr "הושלם"
@@ -436,6 +436,11 @@ msgstr "שם השרת אינו פותר"
msgid "Server %s will be ignored for %s minutes"
msgstr "השרת %s ייתקל בהתעלמות למשך %s דקות"
#. Warning message
#: sabnzbd/downloader.py
msgid "There are no active servers!"
msgstr "אין שרתים פעילים!"
#. Error message
#: sabnzbd/downloader.py
msgid "Failed to initialize %s@%s with reason: %s"
@@ -601,6 +606,18 @@ msgstr "שמירת %s נכשלה"
msgid "Loading %s failed"
msgstr "טעינת %s נכשלה"
#. Warning message
#: sabnzbd/filesystem.py
msgid ""
"%s is not writable with special character filenames. This can cause "
"problems."
msgstr "%s אינו בר־כתיבה עם שמות קבצים עם תו מיוחד. זה יכול לגרום לבעיות."
#. Warning message
#: sabnzbd/filesystem.py
msgid "%s is not writable at all. This blocks downloads."
msgstr "%s אינו בר־כתיבה בכלל. זה חוסם הורדות."
#: sabnzbd/interface.py
msgid "Refused connection from:"
msgstr "חיבור מסורב מאת:"
@@ -632,14 +649,6 @@ msgid ""
"program:"
msgstr "מפתח API שגוי, השתמש במפתח ה־API מתצורה->כללי בתוכנית הצד השלישי שלך:"
#: sabnzbd/interface.py
msgid ""
"Authentication missing, please enter username/password from Config->General "
"into your 3rd party program:"
msgstr ""
"אימות חסר, אנא הכנס שם משתמש/סיסמה מתוך תצורה->כללי לתוך תוכנית הצד השלישי "
"שלך:"
#: sabnzbd/interface.py, sabnzbd/newswrapper.py, sabnzbd/utils/servertests.py
msgid "Authentication failed, check username/password."
msgstr "אימות נכשל, בדוק שם משתמש/סיסמה."
@@ -1189,27 +1198,27 @@ msgstr "בוטל, לא יכול להיות שלם"
msgid "Error importing %s"
msgstr "שגיאה ביבוא %s"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "DUPLICATE"
msgstr "כפול"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "ENCRYPTED"
msgstr "מוצפן"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "TOO LARGE"
msgstr "גדול מדי"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "INCOMPLETE"
msgstr "בלתי שלם"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "UNWANTED"
msgstr "בלתי רצוי"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "WAIT %s sec"
msgstr "המתן %s שניות"
@@ -1561,13 +1570,13 @@ msgid "Trying RAR-based verification"
msgstr "מנסה וידוא מבוסס RAR"
#: sabnzbd/postproc.py
msgid "[%s] RAR-based verification failed: %s"
msgstr "[%s] וידוא מבוסס RAR נכשל: %s"
#: sabnzbd/postproc.py, sabnzbd/skintext.py
msgid "Passworded"
msgstr "מוגן בסיסמה"
#: sabnzbd/postproc.py
msgid "[%s] RAR-based verification failed: %s"
msgstr "[%s] וידוא מבוסס RAR נכשל: %s"
#: sabnzbd/postproc.py
msgid "RAR files verified successfully"
msgstr "קבצי RAR וודאו בהצלחה"
@@ -1682,7 +1691,7 @@ msgstr "השהה למשך 3 שעות"
msgid "Pause for 6 hours"
msgstr "השהה למשך 6 שעות"
#. Shutdown SABnzbd - Config->Scheduling
#. Config->Scheduling
#: sabnzbd/sabtray.py, sabnzbd/sabtraylinux.py, sabnzbd/skintext.py
msgid "Shutdown"
msgstr "כבה"
@@ -1751,11 +1760,6 @@ msgstr "מקור"
msgid "Servers"
msgstr "שרתים"
#. PP Failure message
#: sabnzbd/skintext.py
msgid "Failure"
msgstr "כישלון"
#. PP status
#: sabnzbd/skintext.py
msgid "Failed"
@@ -1801,20 +1805,6 @@ msgstr "בדוק זריז…"
msgid "Verifying..."
msgstr "מוודא…"
#. Pseudo-PP status, in reality used for Queue-status
#: sabnzbd/skintext.py
msgid "Downloading"
msgstr "מוריד"
#: sabnzbd/skintext.py
msgid "Propagation delay"
msgstr "עיכוב רביה"
#. #: Config->Scheduler
#: sabnzbd/skintext.py
msgid "Task"
msgstr "מטלה"
#. #: Config->Scheduler
#: sabnzbd/skintext.py
msgid "disable server"
@@ -1945,21 +1935,6 @@ msgstr "חירום"
msgid "Low"
msgstr "נמוכה"
#. Megabytes
#: sabnzbd/skintext.py
msgid "MB"
msgstr "מ״ב"
#. Gigabytes
#: sabnzbd/skintext.py
msgid "GB"
msgstr "ג״ב"
#. Bytes (used as postfix, as in "GB", "TB")
#: sabnzbd/skintext.py
msgid "B"
msgstr "ב"
#. One hour
#: sabnzbd/skintext.py
msgid "hour"
@@ -2005,54 +1980,6 @@ msgstr "חודש"
msgid "Year"
msgstr "שנה"
#: sabnzbd/skintext.py
msgid "January"
msgstr "ינואר"
#: sabnzbd/skintext.py
msgid "February"
msgstr "פברואר"
#: sabnzbd/skintext.py
msgid "March"
msgstr "מרץ"
#: sabnzbd/skintext.py
msgid "April"
msgstr "אפריל"
#: sabnzbd/skintext.py
msgid "May"
msgstr "מאי"
#: sabnzbd/skintext.py
msgid "June"
msgstr "יוני"
#: sabnzbd/skintext.py
msgid "July"
msgstr "יולי"
#: sabnzbd/skintext.py
msgid "August"
msgstr "אוגוסט"
#: sabnzbd/skintext.py
msgid "September"
msgstr "ספטמבר"
#: sabnzbd/skintext.py
msgid "October"
msgstr "אוקטובר"
#: sabnzbd/skintext.py
msgid "November"
msgstr "נובמבר"
#: sabnzbd/skintext.py
msgid "December"
msgstr "דצמבר"
#: sabnzbd/skintext.py
msgid "Day of month"
msgstr "יום בחודש"
@@ -2077,14 +2004,6 @@ msgstr "היום"
msgid "Total"
msgstr "סה״כ"
#: sabnzbd/skintext.py
msgid "Custom"
msgstr "מותאם אישית"
#: sabnzbd/skintext.py
msgid "Speed"
msgstr "מהירות"
#: sabnzbd/skintext.py
msgid "on"
msgstr "פועל"
@@ -2113,42 +2032,10 @@ msgstr "או"
msgid "Host"
msgstr "מארח"
#: sabnzbd/skintext.py
msgid "Comment"
msgstr "הער"
#: sabnzbd/skintext.py
msgid "Send"
msgstr "שלח"
#: sabnzbd/skintext.py
msgid "Cancel"
msgstr "ביטול"
#: sabnzbd/skintext.py
msgid "Other"
msgstr "אחר"
#: sabnzbd/skintext.py
msgid "Report"
msgstr "דווח"
#: sabnzbd/skintext.py
msgid "Video"
msgstr "וידאו"
#: sabnzbd/skintext.py
msgid "Audio"
msgstr "שמע"
#: sabnzbd/skintext.py
msgid "Not used"
msgstr "לא בשימוש"
#: sabnzbd/skintext.py
msgid "or less"
msgstr "או פחות"
#: sabnzbd/skintext.py
msgid "Log in"
msgstr "התחבר"
@@ -2161,11 +2048,6 @@ msgstr "התנתק"
msgid "Remember me"
msgstr "זכור אותי"
#. SABnzbd's theme line
#: sabnzbd/skintext.py
msgid "The automatic usenet download tool"
msgstr "הכלי להורדה אוטומטית של Usenet"
#. "Save" button
#: sabnzbd/skintext.py
msgid "Save"
@@ -2180,11 +2062,6 @@ msgstr "שומר…"
msgid "Are you sure?"
msgstr "האם אתה בטוח?"
#. Used in confirmation popups
#: sabnzbd/skintext.py
msgid "Delete all downloaded files?"
msgstr "למחוק את כל הקבצים שהורדו?"
#. Main menu item
#: sabnzbd/skintext.py
msgid "Home"
@@ -2284,22 +2161,6 @@ msgstr "חיפוש"
msgid "Download Dir"
msgstr "תיקיית הורדות"
#: sabnzbd/skintext.py
msgid "PAUSED"
msgstr "מושהה"
#: sabnzbd/skintext.py
msgid "Cached %s articles (%s)"
msgstr "%s מאמרים הוטמנו (%s)"
#: sabnzbd/skintext.py
msgid "Sysload"
msgstr "עומס מערכת"
#: sabnzbd/skintext.py
msgid "New release %s available at"
msgstr "שחרור חדש %s זמין באתר"
#: sabnzbd/skintext.py
msgid "Are you sure you want to shutdown SABnzbd?"
msgstr "האם אתה בטוח שאתה רוצה לכבות את SABnzbd?"
@@ -2309,21 +2170,11 @@ msgstr "האם אתה בטוח שאתה רוצה לכבות את SABnzbd?"
msgid "Add"
msgstr "הוסף"
#. Add NZB file to queue (header
#: sabnzbd/skintext.py
msgid "Add File"
msgstr "הוסף קובץ"
#. Job category
#: sabnzbd/skintext.py
msgid "Category"
msgstr "קטגוריה"
#. Queue page table column header
#: sabnzbd/skintext.py
msgid "Processing"
msgstr "מעבד"
#. Server priority
#: sabnzbd/skintext.py
msgid "Priority"
@@ -2344,21 +2195,6 @@ msgstr "+פריקה"
msgid "+Delete"
msgstr "+מחיקה"
#. Post processing pick list: abbreviation for "+Repair"
#: sabnzbd/skintext.py
msgid "R"
msgstr "ת"
#. Post processing pick list: abbreviation for "+Unpack"
#: sabnzbd/skintext.py
msgid "U"
msgstr "פ"
#. Post processing pick list: abbreviation for "+Delete"
#: sabnzbd/skintext.py
msgid "D"
msgstr "מ"
#. Priority pick list
#: sabnzbd/skintext.py
msgid "Force"
@@ -2374,11 +2210,6 @@ msgstr "עצירה"
msgid "Enter URL"
msgstr "הכנס כתובת"
#. Queue page selection menu
#: sabnzbd/skintext.py
msgid "On queue finish"
msgstr "בסיום תור"
#. Queue page end-of-queue action
#: sabnzbd/skintext.py
msgid "Shutdown PC"
@@ -2399,36 +2230,16 @@ msgstr "חרוף מחשב"
msgid "Shutdown SABnzbd"
msgstr "כבה את SABnzbd"
#. Queue page selection menu or entry box
#. Queue page table column header
#: sabnzbd/skintext.py
msgid "Speed Limit"
msgstr "מגבלת מהירות"
msgid "Processing"
msgstr "מעבד"
#. Queue page table column header - Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Order"
msgstr "סידור"
#. Queue page table column header - Job details page
#. Queue page table column header
#: sabnzbd/skintext.py
msgid "Name"
msgstr "שם"
#. Queue page table column header, "estimated time of arrival"
#: sabnzbd/skintext.py
msgid "ETA"
msgstr "זמן משוער"
#. Queue page table column header, "age of the NZB"
#: sabnzbd/skintext.py
msgid "AGE"
msgstr "גיל"
#. Queue page table, "Delete" button
#: sabnzbd/skintext.py
msgid "Del"
msgstr "מחק"
#. Queue page button
#: sabnzbd/skintext.py
msgid "Retry"
@@ -2459,11 +2270,6 @@ msgstr "טהר הורדות"
msgid "Purge NZBs & Delete Files"
msgstr "טהר הורדות ומחק קבצים"
#. Retry all failed jobs dialog box
#: sabnzbd/skintext.py
msgid "Retry all failed jobs"
msgstr "נסה שוב את כל העבודות הנכשלות"
#. Queue page button
#: sabnzbd/skintext.py
msgid "Remove NZB"
@@ -2474,11 +2280,6 @@ msgstr "הסר NZB"
msgid "Remove NZB & Delete Files"
msgstr "הסר NZB ומחק קבצים"
#. Queue page, as in "4G *of* 10G"
#: sabnzbd/skintext.py
msgid "of"
msgstr "מתוך"
#. Caption for missing articles in Queue
#: sabnzbd/skintext.py
msgid "Missing articles"
@@ -2498,11 +2299,6 @@ msgstr "ידני"
msgid "Reset Quota now"
msgstr "אפס מכסה כעת"
#. Confirmation popup
#: sabnzbd/skintext.py
msgid "Delete all completed items from History?"
msgstr "למחוק את כל הפריטים השלמים מההיסטוריה?"
#. Button/link hiding History job details
#: sabnzbd/skintext.py
msgid "Hide details"
@@ -2559,25 +2355,8 @@ msgstr "נתיב"
#. Retry all failed jobs in History
#: sabnzbd/skintext.py
msgid "Retry all failed"
msgstr "נסה שוב כל הנכשלים"
#. Retry all button for Retry All Failed Jobs
#: sabnzbd/skintext.py
msgid "Retry All"
msgstr "נסה שוב הכל"
#: sabnzbd/skintext.py
msgid "Virus/spam"
msgstr "נגיף/זבל"
#: sabnzbd/skintext.py
msgid "Out of retention"
msgstr "אין שימור"
#: sabnzbd/skintext.py
msgid "Other problem"
msgstr "בעיה אחרת"
msgid "Retry all failed jobs"
msgstr "נסה שוב את כל העבודות הנכשלות"
#. Status page button
#: sabnzbd/skintext.py
@@ -2631,21 +2410,6 @@ msgstr "+ ניפוי תקלים"
msgid "Connections"
msgstr "חיבורים"
#. Status page, table header
#: sabnzbd/skintext.py
msgid "Latest Warnings"
msgstr "אזהרות אחרונות"
#. Status page button
#: sabnzbd/skintext.py
msgid "clear"
msgstr "נקה"
#. Status page button
#: sabnzbd/skintext.py
msgid "Unblock"
msgstr "בטל חסימה"
#. Status page, article identifier
#: sabnzbd/skintext.py
msgid "Article identifier"
@@ -2656,26 +2420,11 @@ msgstr "מזהי מאמר"
msgid "File set"
msgstr "ערכת קבצים"
#. Status page, table column header, when error occured
#: sabnzbd/skintext.py
msgid "When"
msgstr "מתי"
#. Status page, table column header, type of message - Config->RSS table
#. column header
#: sabnzbd/skintext.py
msgid "Type"
msgstr "סוג"
#. Status page, indicator that server is enabled
#: sabnzbd/skintext.py
msgid "Enabled"
msgstr "מאופשר"
#: sabnzbd/skintext.py
msgid "Dashboard"
msgstr "לוח מחוונים"
#: sabnzbd/skintext.py
msgid "Connection failed!"
msgstr "חיבור נכשל!"
@@ -2696,10 +2445,6 @@ msgstr "כתובת IPv6"
msgid "Nameserver / DNS Lookup"
msgstr "שם שרת / חיפוש DNS"
#: sabnzbd/skintext.py
msgid "CPU Model"
msgstr "דגם יע״ם"
#: sabnzbd/skintext.py
msgid "Download speed limited by"
msgstr "מהירות הורדה מוגבלת ע״י"
@@ -2712,6 +2457,10 @@ msgstr "יע״מ"
msgid "Disk speed"
msgstr "מהירות דיסק"
#: sabnzbd/skintext.py
msgid "System load"
msgstr ""
#. Do not translate Pystone
#: sabnzbd/skintext.py
msgid "System Performance (Pystone)"
@@ -2725,22 +2474,10 @@ msgstr "מהירות תיקיית הורדות"
msgid "Complete folder speed"
msgstr "מהירות תיקיית שלמים"
#: sabnzbd/skintext.py
msgid "Writing speed"
msgstr "מהירות כתיבה"
#: sabnzbd/skintext.py
msgid "Could not write. Check that the directory is writable."
msgstr "לא היה יכול לכתוב. בדוק שהספרייה ניתנת לכתיבה."
#: sabnzbd/skintext.py
msgid "Internet Bandwidth"
msgstr "רוחב־פס אינטרנט"
#: sabnzbd/skintext.py
msgid "Click on Repeat test button below to determine"
msgstr "לחץ על הכפתור חזור על בחינה למטה כדי לקבוע"
#: sabnzbd/skintext.py
msgid "Repeat test"
msgstr "חזור על בחינה"
@@ -2925,10 +2662,6 @@ msgstr "אבטחה"
msgid "Enable HTTPS"
msgstr "אפשר HTTPS"
#: sabnzbd/skintext.py
msgid "not installed"
msgstr "לא מותקן"
#: sabnzbd/skintext.py
msgid "Enable accessing the interface from a HTTPS address."
msgstr "אפשר מתן גישה אל הממשק מכתובת HTTPS."
@@ -3016,13 +2749,18 @@ msgstr ""
"הטמן מאמרים בזיכרון כדי להפחית גישת דיסק.<br /><i>בבתים, יכול לבוא עם K,M,G."
" לדוגמה: \"64M\" או \"128M\"</i>"
#. Config->Scheduling
#: sabnzbd/skintext.py
msgid "Download backup"
msgstr "הורד גיבוי"
msgid "Create backup"
msgstr ""
#: sabnzbd/skintext.py
msgid "Save or restore a backup of the configuration file and databases."
msgstr "שמור או שחזר גיבוי של קובץ התצורה ומסדי נתונים."
msgid ""
"Create a backup of the configuration file and databases in the Backup "
"Folder.<br>If the Backup Folder is not set, the backup will be created in "
"the Completed Download Folder.<br>Recurring backups can be configured on the"
" Scheduling page."
msgstr ""
#: sabnzbd/skintext.py
msgid "Cleanup List"
@@ -3169,10 +2907,6 @@ msgstr "תיקיות משתמש"
msgid "Browse"
msgstr "עיין"
#: sabnzbd/skintext.py
msgid "In"
msgstr "ב"
#: sabnzbd/skintext.py
msgid "Temporary Download Folder"
msgstr "תיקיית הורדות זמניות"
@@ -3303,6 +3037,17 @@ msgstr ""
"מיקום עבור מנהלן התור ומסד נתוני ההיסטוריה.<br /><i>ניתן לשינוי רק כאשר התור"
" ריק.</i>"
#: sabnzbd/skintext.py
msgid "Backup Folder"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Location where the backups of the configuration file and databases are "
"stored.<br />If left empty, the backup will be created in the Completed "
"Download Folder."
msgstr ""
#: sabnzbd/skintext.py
msgid "<i>Data will <b>not</b> be moved. Requires SABnzbd restart!</i>"
msgstr "<i>נתונים <b>לא</b> יועברו. דורש הפעלה מחדש של SABnzbd!</i>"
@@ -3493,18 +3238,6 @@ msgstr "בכישלון, נסה NZB חלופי"
msgid "Some servers provide an alternative NZB when a download fails."
msgstr "מספר שרתים מספקים קובץ NZB חלופי כאשר הורדה נכשלת."
#: sabnzbd/skintext.py
msgid "Use tags from indexer"
msgstr "השתמש בתגים ממדדן"
#: sabnzbd/skintext.py
msgid ""
"When sorting, use tags from indexer for title, season, episode, etc. "
"Otherwise all naming is derived from the NZB name."
msgstr ""
"בעת מיון, השתמש בתגים ממדדן עבור כותרת, עונה, פרק וכדומה. אחרת כל מתן השמות "
"נגזר משם קובץ NZB."
#: sabnzbd/skintext.py
msgid "Enable folder rename"
msgstr "אפשר שינוי שם תיקייה"
@@ -3557,6 +3290,14 @@ msgstr "מיין תור באופן אוטומטי"
msgid "Automatically sort jobs in the queue when a new job is added."
msgstr "מיין עבודות בתור באופן אוטומטי כאשר עבודה חדשה מתווספת."
#: sabnzbd/skintext.py
msgid "The queue will resort every 30 seconds if % downloaded is selected."
msgstr "התור ימוין כל 30 שניות אם האפשרות % ירד נבחרה."
#: sabnzbd/skintext.py
msgid "Propagation delay"
msgstr "עיכוב רביה"
#: sabnzbd/skintext.py
msgid ""
"Posts will be paused untill they are at least this age. Setting job priority"
@@ -3586,6 +3327,14 @@ msgstr "החלף רווחים בשמות תיקיות"
msgid "Replace spaces with underscores in folder names."
msgstr "החלף רווחים בקווים תחתונים בשמות תיקיות."
#: sabnzbd/skintext.py
msgid "Replace underscores in folder name"
msgstr ""
#: sabnzbd/skintext.py
msgid "Replace underscores with dots in folder names."
msgstr ""
#: sabnzbd/skintext.py
msgid "Replace dots in Foldername"
msgstr "החלף נקודות בשמות תיקיות"
@@ -3685,10 +3434,6 @@ msgstr "מתן שמות"
msgid "Quota"
msgstr "מכסה"
#: sabnzbd/skintext.py
msgid "Indexing"
msgstr "אחסון במדד"
#: sabnzbd/skintext.py
msgid "How much can be downloaded this month (K/M/G)"
msgstr "כמה ניתן להוריד החודש (ק״ב/מ״ב/ג״ב)"
@@ -3944,7 +3689,7 @@ msgstr "הוסף תזמון"
msgid "Frequency"
msgstr "תדירות"
#. Config->Scheduling - Job details page, section header
#. Config->Scheduling
#: sabnzbd/skintext.py
msgid "Action"
msgstr "פעולה"
@@ -3995,6 +3740,16 @@ msgstr "ערוך"
msgid "Next scan at"
msgstr "הסריקה הבאה במועד"
#. Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Order"
msgstr "סידור"
#. Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Type"
msgstr "סוג"
#. Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Filter"
@@ -4343,11 +4098,6 @@ msgstr "תיקייה/נתיב"
msgid "Indexer Categories / Groups"
msgstr "קטגוריות / קבוצות של מדדן"
#. Small delete button
#: sabnzbd/skintext.py
msgid "X"
msgstr "X"
#. Warning message
#: sabnzbd/skintext.py, sabnzbd/sorting.py
msgid "Select at least 1 category."
@@ -4378,10 +4128,6 @@ msgstr "החל מסננים"
msgid "Presets"
msgstr "קדם־קביעות"
#: sabnzbd/skintext.py
msgid "Example"
msgstr "דוגמה"
#. Warning message
#: sabnzbd/skintext.py, sabnzbd/sorting.py
msgid "Movie Sorting"
@@ -4391,10 +4137,6 @@ msgstr "מיון סרטים"
msgid "Enable Movie Sorting"
msgstr "אפשר מיון סרטים"
#: sabnzbd/skintext.py
msgid "Keep loose downloads in extra folders"
msgstr "שמור הורדות רפויות בתיקיות נוספות"
#: sabnzbd/skintext.py
msgid "Affected Categories"
msgstr "קטגוריות מושפעות"
@@ -4610,51 +4352,11 @@ msgstr "ערוך פרטי NZB"
msgid "Delete"
msgstr "מחק"
#. Job details page, move file to top
#: sabnzbd/skintext.py
msgid "Top"
msgstr "ראש"
#. Job details page, move file one place up
#: sabnzbd/skintext.py
msgid "Up"
msgstr "למעלה"
#. Job details page, move file one place down
#: sabnzbd/skintext.py
msgid "Down"
msgstr "למטה"
#. Job details page, move file to bottom
#: sabnzbd/skintext.py
msgid "Bottom"
msgstr "תחתית"
#. Job details page, select all files
#: sabnzbd/skintext.py
msgid "All"
msgstr "הכל"
#. Job details page, invert file selection
#: sabnzbd/skintext.py
msgid "Invert"
msgstr "הפוך"
#. Job details page, filename column header
#: sabnzbd/skintext.py
msgid "Filename"
msgstr "שם קובץ"
#. Job details page, subject column header
#: sabnzbd/skintext.py
msgid "Subject"
msgstr "נושא"
#. Job details page, section header
#: sabnzbd/skintext.py
msgid "Selection"
msgstr "בחירה"
#: sabnzbd/skintext.py
msgid "Free Space"
msgstr "שטח פנוי"
@@ -4679,6 +4381,10 @@ msgstr "סמן הכל"
msgid "Restart SABnzbd"
msgstr "הפעל מחדש את SABnzbd"
#: sabnzbd/skintext.py
msgid "On queue finish"
msgstr "בסיום תור"
#: sabnzbd/skintext.py
msgid "Status and interface options"
msgstr "אפשרויות של מעמד וממשק"
@@ -4755,6 +4461,10 @@ msgstr "תקן תור"
msgid "Show active connections"
msgstr "הראה חיבורים פעילים"
#: sabnzbd/skintext.py
msgid "Unblock"
msgstr "בטל חסימה"
#: sabnzbd/skintext.py
msgid "Orphaned jobs"
msgstr "עבודות יתומות"
@@ -4787,18 +4497,6 @@ msgstr "ציין באופן רשותי שם קובץ"
msgid "Submit"
msgstr "הגש"
#: sabnzbd/skintext.py
msgid "Open Informational URL"
msgstr "פתח כתובת של מידע"
#: sabnzbd/skintext.py
msgid "Submitted. Thank you!"
msgstr "הוגש. תודה!"
#: sabnzbd/skintext.py
msgid "Nothing selected!"
msgstr "שום דבר לא נבחר!"
#: sabnzbd/skintext.py
msgid "Remove all selected files"
msgstr "הסר את כל הקבצים הנבחרים"
@@ -4807,6 +4505,14 @@ msgstr "הסר את כל הקבצים הנבחרים"
msgid "Hide/show completed files"
msgstr "הסתר/הראה קבצים שלמים"
#: sabnzbd/skintext.py
msgid "Top"
msgstr "ראש"
#: sabnzbd/skintext.py
msgid "Bottom"
msgstr "תחתית"
#: sabnzbd/skintext.py
msgid "View Script Log"
msgstr "הצג יומן תסריטים"
@@ -4827,6 +4533,10 @@ msgstr ""
msgid "Glitter has some (new) features you might like!"
msgstr "אל Glitter יש מספר מאפיינים (חדשים) שאתה עשוי לאהוב!"
#: sabnzbd/skintext.py
msgid "Custom"
msgstr "מותאם אישית"
#: sabnzbd/skintext.py
msgid "Compact layout"
msgstr "פריסה צפופה"
@@ -4839,6 +4549,10 @@ msgstr "השתמש תמיד ברוחב של מסך מלא"
msgid "Tabbed layout <br/>(separate queue and history)"
msgstr "פריסה בלשוניות<br/>(תור והיסטוריה נפרדים)"
#: sabnzbd/skintext.py
msgid "Speed"
msgstr "מהירות"
#: sabnzbd/skintext.py
msgid "Confirm Queue Deletions"
msgstr "אשר מחיקות תור"
@@ -4875,6 +4589,10 @@ msgstr ""
"כל שמות המשתמש, הסיסמאות ומפתחות API מוסרים באופן אוטומטי מהיומן ומהעותק "
"הכלול של ההגדרות שלך."
#: sabnzbd/skintext.py
msgid "Sort by % downloaded <small>Most&rarr;Least</small>"
msgstr "מיין לפי % ירד <small>הכי הרבה&rarr;הכי מעט</small>"
#: sabnzbd/skintext.py
msgid "Sort by Age <small>Oldest&rarr;Newest</small>"
msgstr "מיין לפי גיל <small>החדש ביותר&larr;הישן ביותר</small>"
@@ -5021,18 +4739,6 @@ msgstr ""
"זו תוכנה חינמית, ואתה מוזמן להפיצה מחדש תחת תנאים מסוימים.\n"
"היא ברישיון תחת רישיון ציבורי כללי GNU גרסה 2 או (לבחירתך) כל גרסה שהיא מאוחרת יותר.\n"
#: sabnzbd/skintext.py
msgid ""
"In order to download from usenet you will require access to a provider. Your"
" ISP may provide you with access, however a premium provider is recommended."
msgstr ""
"על מנת להוריד מן Usenet תצטרך גישה אל ספק. ספק שירותי האינטרנט שלך עשוי לספק"
" לך גישה, אולם מומלץ ספק פרימיום."
#: sabnzbd/skintext.py
msgid "Don't have a usenet provider? We recommend trying %s."
msgstr "אין לך ספק Usenet? אנו ממליצים לנסות את %s."
#. Error message
#: sabnzbd/sorting.py
msgid "Failed to rename: %s to %s"
@@ -5101,10 +4807,6 @@ msgid ""
"Unknown SSL protocol: Try disabling SSL or connecting on a different port."
msgstr "פרוטוקול SSL בלתי ידוע: נסה להשבית SSL או להתחבר על פתחה שונה."
#: sabnzbd/utils/servertests.py
msgid "Invalid server address."
msgstr "כתובת שרת בלתי תקפה."
#: sabnzbd/utils/servertests.py
msgid "Server quit during login sequence."
msgstr "שרת יצא במהלך רצף כניסות."

View File

@@ -7,7 +7,7 @@
#
msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
"Project-Id-Version: SABnzbd-3.7.0-develop\n"
"PO-Revision-Date: 2020-06-27 15:49+0000\n"
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2022\n"
"Language-Team: Norwegian Bokmål (https://www.transifex.com/sabnzbd/teams/111101/nb/)\n"
@@ -182,11 +182,7 @@ msgstr "Test varslingen"
msgid "&nbsp;Resolving address"
msgstr "&nbsp;Løs adresse"
#: sabnzbd/api.py
msgid "unknown"
msgstr "ukjent"
#. No value, used in dropdown menus - Job details page, select no files
#. No value, used in dropdown menus
#: sabnzbd/api.py, sabnzbd/skintext.py
msgid "None"
msgstr "Ingen"
@@ -283,6 +279,10 @@ msgstr "%s er ikke en godkjent e-post-adresse"
msgid "Server address required"
msgstr "Krever server-adresse"
#: sabnzbd/cfg.py, sabnzbd/utils/servertests.py
msgid "Invalid server address."
msgstr "Ugyldig server-adresse."
#: sabnzbd/cfg.py
msgid "%s is not a valid script"
msgstr ""
@@ -378,7 +378,7 @@ msgstr ""
msgid "Direct Unpack"
msgstr ""
#. PP status - History: job status
#. PP status
#: sabnzbd/directunpacker.py, sabnzbd/skintext.py
msgid "Completed"
msgstr "Ferdig"
@@ -432,6 +432,11 @@ msgstr "Kunne ikke finne servernavn"
msgid "Server %s will be ignored for %s minutes"
msgstr "Server %s vil bli ignorert i løpet av %s minutter"
#. Warning message
#: sabnzbd/downloader.py
msgid "There are no active servers!"
msgstr ""
#. Error message
#: sabnzbd/downloader.py
msgid "Failed to initialize %s@%s with reason: %s"
@@ -597,6 +602,18 @@ msgstr "Lagring av %s mislyktes"
msgid "Loading %s failed"
msgstr "Lasting av %s mislyktes"
#. Warning message
#: sabnzbd/filesystem.py
msgid ""
"%s is not writable with special character filenames. This can cause "
"problems."
msgstr ""
#. Warning message
#: sabnzbd/filesystem.py
msgid "%s is not writable at all. This blocks downloads."
msgstr ""
#: sabnzbd/interface.py
msgid "Refused connection from:"
msgstr ""
@@ -630,14 +647,6 @@ msgstr ""
"API-nøkkel er feil, bruk API-nøkkel fra Konfigurasjon->Generelt i ditt "
"tredjepartsprogram:"
#: sabnzbd/interface.py
msgid ""
"Authentication missing, please enter username/password from Config->General "
"into your 3rd party program:"
msgstr ""
"Autentisering mangler, angi brukernavn/passord fra Konfigurasjon->Generelt i"
" ditt tredjepartsprogram:"
#: sabnzbd/interface.py, sabnzbd/newswrapper.py, sabnzbd/utils/servertests.py
msgid "Authentication failed, check username/password."
msgstr "Godkjenning mislyktes, kontroller brukernavn og passord."
@@ -1183,27 +1192,27 @@ msgstr "Avbrutt, kan ikke fullføres"
msgid "Error importing %s"
msgstr "Kunne ikke importere %s"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "DUPLICATE"
msgstr "DUPLIKAT"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "ENCRYPTED"
msgstr "KRYPTERT"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "TOO LARGE"
msgstr "FOR STOR"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "INCOMPLETE"
msgstr "UFULLSTENDIG"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "UNWANTED"
msgstr "UØNSKET"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "WAIT %s sec"
msgstr "VENT %s sek"
@@ -1551,13 +1560,13 @@ msgid "Trying RAR-based verification"
msgstr ""
#: sabnzbd/postproc.py
msgid "[%s] RAR-based verification failed: %s"
msgstr ""
#: sabnzbd/postproc.py, sabnzbd/skintext.py
msgid "Passworded"
msgstr "Passord"
#: sabnzbd/postproc.py
msgid "[%s] RAR-based verification failed: %s"
msgstr ""
#: sabnzbd/postproc.py
msgid "RAR files verified successfully"
msgstr ""
@@ -1672,7 +1681,7 @@ msgstr "Pause 3 timer"
msgid "Pause for 6 hours"
msgstr "Pause 6 timer"
#. Shutdown SABnzbd - Config->Scheduling
#. Config->Scheduling
#: sabnzbd/sabtray.py, sabnzbd/sabtraylinux.py, sabnzbd/skintext.py
msgid "Shutdown"
msgstr "Avslutt"
@@ -1741,11 +1750,6 @@ msgstr "Kilde"
msgid "Servers"
msgstr "Servere"
#. PP Failure message
#: sabnzbd/skintext.py
msgid "Failure"
msgstr "Feil"
#. PP status
#: sabnzbd/skintext.py
msgid "Failed"
@@ -1791,20 +1795,6 @@ msgstr "Hurtigkontroll..."
msgid "Verifying..."
msgstr "Verifserer..."
#. Pseudo-PP status, in reality used for Queue-status
#: sabnzbd/skintext.py
msgid "Downloading"
msgstr "Laster ned"
#: sabnzbd/skintext.py
msgid "Propagation delay"
msgstr ""
#. #: Config->Scheduler
#: sabnzbd/skintext.py
msgid "Task"
msgstr "Oppgave"
#. #: Config->Scheduler
#: sabnzbd/skintext.py
msgid "disable server"
@@ -1935,21 +1925,6 @@ msgstr "Nødssituasjon"
msgid "Low"
msgstr "Lav"
#. Megabytes
#: sabnzbd/skintext.py
msgid "MB"
msgstr "MB"
#. Gigabytes
#: sabnzbd/skintext.py
msgid "GB"
msgstr "GB"
#. Bytes (used as postfix, as in "GB", "TB")
#: sabnzbd/skintext.py
msgid "B"
msgstr "B"
#. One hour
#: sabnzbd/skintext.py
msgid "hour"
@@ -1995,54 +1970,6 @@ msgstr "Måned"
msgid "Year"
msgstr "År"
#: sabnzbd/skintext.py
msgid "January"
msgstr ""
#: sabnzbd/skintext.py
msgid "February"
msgstr ""
#: sabnzbd/skintext.py
msgid "March"
msgstr ""
#: sabnzbd/skintext.py
msgid "April"
msgstr ""
#: sabnzbd/skintext.py
msgid "May"
msgstr ""
#: sabnzbd/skintext.py
msgid "June"
msgstr ""
#: sabnzbd/skintext.py
msgid "July"
msgstr ""
#: sabnzbd/skintext.py
msgid "August"
msgstr ""
#: sabnzbd/skintext.py
msgid "September"
msgstr ""
#: sabnzbd/skintext.py
msgid "October"
msgstr ""
#: sabnzbd/skintext.py
msgid "November"
msgstr ""
#: sabnzbd/skintext.py
msgid "December"
msgstr ""
#: sabnzbd/skintext.py
msgid "Day of month"
msgstr "Dag i måneden"
@@ -2067,14 +1994,6 @@ msgstr "I dag"
msgid "Total"
msgstr "Totalt"
#: sabnzbd/skintext.py
msgid "Custom"
msgstr "Tilpasse"
#: sabnzbd/skintext.py
msgid "Speed"
msgstr "Hastighet"
#: sabnzbd/skintext.py
msgid "on"
msgstr "på"
@@ -2103,42 +2022,10 @@ msgstr "eller"
msgid "Host"
msgstr "Adresse"
#: sabnzbd/skintext.py
msgid "Comment"
msgstr "Kommentar"
#: sabnzbd/skintext.py
msgid "Send"
msgstr "Send"
#: sabnzbd/skintext.py
msgid "Cancel"
msgstr "Avbryt"
#: sabnzbd/skintext.py
msgid "Other"
msgstr "Andre"
#: sabnzbd/skintext.py
msgid "Report"
msgstr "Rapport"
#: sabnzbd/skintext.py
msgid "Video"
msgstr "Video"
#: sabnzbd/skintext.py
msgid "Audio"
msgstr "Lyd"
#: sabnzbd/skintext.py
msgid "Not used"
msgstr "Ubrukt"
#: sabnzbd/skintext.py
msgid "or less"
msgstr "eller mindre"
#: sabnzbd/skintext.py
msgid "Log in"
msgstr "Logg på"
@@ -2151,11 +2038,6 @@ msgstr "Logg av"
msgid "Remember me"
msgstr "Husk meg"
#. SABnzbd's theme line
#: sabnzbd/skintext.py
msgid "The automatic usenet download tool"
msgstr "Det automatiske usenet nedlastnings verktøyet"
#. "Save" button
#: sabnzbd/skintext.py
msgid "Save"
@@ -2170,11 +2052,6 @@ msgstr "Lagrer.."
msgid "Are you sure?"
msgstr "Er du sikker?"
#. Used in confirmation popups
#: sabnzbd/skintext.py
msgid "Delete all downloaded files?"
msgstr "Slett alle nedlastninger?"
#. Main menu item
#: sabnzbd/skintext.py
msgid "Home"
@@ -2213,7 +2090,7 @@ msgstr ""
#. Main menu item
#: sabnzbd/skintext.py
msgid "Support the project, Donate!"
msgstr ""
msgstr "Støtt prosjektet, donèr!"
#. Main menu item
#: sabnzbd/skintext.py
@@ -2274,22 +2151,6 @@ msgstr "Søk"
msgid "Download Dir"
msgstr "Midlertidig nedlastingsmappe"
#: sabnzbd/skintext.py
msgid "PAUSED"
msgstr "Pause"
#: sabnzbd/skintext.py
msgid "Cached %s articles (%s)"
msgstr "Lagret %s artikler (%s)"
#: sabnzbd/skintext.py
msgid "Sysload"
msgstr "Systemlast"
#: sabnzbd/skintext.py
msgid "New release %s available at"
msgstr "Ny utgave %s tilgjengelig"
#: sabnzbd/skintext.py
msgid "Are you sure you want to shutdown SABnzbd?"
msgstr "Er sikker på at du vil slå av SABnzbd?"
@@ -2299,21 +2160,11 @@ msgstr "Er sikker på at du vil slå av SABnzbd?"
msgid "Add"
msgstr "Legg-til"
#. Add NZB file to queue (header
#: sabnzbd/skintext.py
msgid "Add File"
msgstr "Legg til fil"
#. Job category
#: sabnzbd/skintext.py
msgid "Category"
msgstr "Kategori"
#. Queue page table column header
#: sabnzbd/skintext.py
msgid "Processing"
msgstr "Bearbeidinger"
#. Server priority
#: sabnzbd/skintext.py
msgid "Priority"
@@ -2334,21 +2185,6 @@ msgstr "+Pakker opp"
msgid "+Delete"
msgstr "+Fjern"
#. Post processing pick list: abbreviation for "+Repair"
#: sabnzbd/skintext.py
msgid "R"
msgstr "R"
#. Post processing pick list: abbreviation for "+Unpack"
#: sabnzbd/skintext.py
msgid "U"
msgstr "P"
#. Post processing pick list: abbreviation for "+Delete"
#: sabnzbd/skintext.py
msgid "D"
msgstr "T"
#. Priority pick list
#: sabnzbd/skintext.py
msgid "Force"
@@ -2364,11 +2200,6 @@ msgstr "Stopp"
msgid "Enter URL"
msgstr "URL"
#. Queue page selection menu
#: sabnzbd/skintext.py
msgid "On queue finish"
msgstr "Når køen er ferdig"
#. Queue page end-of-queue action
#: sabnzbd/skintext.py
msgid "Shutdown PC"
@@ -2389,36 +2220,16 @@ msgstr "Dvalemodus PC"
msgid "Shutdown SABnzbd"
msgstr "Avslutning av SABnzbd"
#. Queue page selection menu or entry box
#. Queue page table column header
#: sabnzbd/skintext.py
msgid "Speed Limit"
msgstr "Hastighetsgrense"
msgid "Processing"
msgstr "Bearbeidinger"
#. Queue page table column header - Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Order"
msgstr "Sortering"
#. Queue page table column header - Job details page
#. Queue page table column header
#: sabnzbd/skintext.py
msgid "Name"
msgstr "Navn"
#. Queue page table column header, "estimated time of arrival"
#: sabnzbd/skintext.py
msgid "ETA"
msgstr "Tid igjen"
#. Queue page table column header, "age of the NZB"
#: sabnzbd/skintext.py
msgid "AGE"
msgstr "Alder"
#. Queue page table, "Delete" button
#: sabnzbd/skintext.py
msgid "Del"
msgstr "Fjern"
#. Queue page button
#: sabnzbd/skintext.py
msgid "Retry"
@@ -2449,11 +2260,6 @@ msgstr "Slett NZB-filer"
msgid "Purge NZBs & Delete Files"
msgstr "Slett NZB & tilhørende filer"
#. Retry all failed jobs dialog box
#: sabnzbd/skintext.py
msgid "Retry all failed jobs"
msgstr "Prøv alle mislykkede jobber på nytt"
#. Queue page button
#: sabnzbd/skintext.py
msgid "Remove NZB"
@@ -2464,11 +2270,6 @@ msgstr "Fjern NZB"
msgid "Remove NZB & Delete Files"
msgstr "Fjern NZB & slett filer"
#. Queue page, as in "4G *of* 10G"
#: sabnzbd/skintext.py
msgid "of"
msgstr "av"
#. Caption for missing articles in Queue
#: sabnzbd/skintext.py
msgid "Missing articles"
@@ -2488,11 +2289,6 @@ msgstr "manuelt"
msgid "Reset Quota now"
msgstr "Nullstill kvote nå"
#. Confirmation popup
#: sabnzbd/skintext.py
msgid "Delete all completed items from History?"
msgstr "Slett alle fullførte nedlastinger fra historie?"
#. Button/link hiding History job details
#: sabnzbd/skintext.py
msgid "Hide details"
@@ -2549,27 +2345,8 @@ msgstr "Snarvei"
#. Retry all failed jobs in History
#: sabnzbd/skintext.py
msgid "Retry all failed"
msgstr "Prøv alle mislykkede på nytt"
#. Retry all button for Retry All Failed Jobs
#: sabnzbd/skintext.py
msgid "Retry All"
msgstr "Prøv alle på nytt"
#: sabnzbd/skintext.py
msgid "Virus/spam"
msgstr "Virus/spam"
#: sabnzbd/skintext.py
msgid "Out of retention"
msgstr ""
"Det du prøver å laste ned er eldre enn hva usenet leverandøren din har "
"lagret"
#: sabnzbd/skintext.py
msgid "Other problem"
msgstr "Andre problemer"
msgid "Retry all failed jobs"
msgstr "Prøv alle mislykkede jobber på nytt"
#. Status page button
#: sabnzbd/skintext.py
@@ -2621,21 +2398,6 @@ msgstr "+ Feilsøking"
msgid "Connections"
msgstr "Tilkoblinger"
#. Status page, table header
#: sabnzbd/skintext.py
msgid "Latest Warnings"
msgstr "Seneste Advarsler"
#. Status page button
#: sabnzbd/skintext.py
msgid "clear"
msgstr "slette"
#. Status page button
#: sabnzbd/skintext.py
msgid "Unblock"
msgstr "Fjern blokkering"
#. Status page, article identifier
#: sabnzbd/skintext.py
msgid "Article identifier"
@@ -2646,26 +2408,11 @@ msgstr "Artikkel-id"
msgid "File set"
msgstr "Filsett"
#. Status page, table column header, when error occured
#: sabnzbd/skintext.py
msgid "When"
msgstr "Når"
#. Status page, table column header, type of message - Config->RSS table
#. column header
#: sabnzbd/skintext.py
msgid "Type"
msgstr "Type"
#. Status page, indicator that server is enabled
#: sabnzbd/skintext.py
msgid "Enabled"
msgstr "Aktivert"
#: sabnzbd/skintext.py
msgid "Dashboard"
msgstr "Kontrollpanel"
#: sabnzbd/skintext.py
msgid "Connection failed!"
msgstr "Tilkobling mislykket!"
@@ -2686,10 +2433,6 @@ msgstr "IPv6-adresse"
msgid "Nameserver / DNS Lookup"
msgstr "Navnserver / DNS oppslag"
#: sabnzbd/skintext.py
msgid "CPU Model"
msgstr "CPU-modell"
#: sabnzbd/skintext.py
msgid "Download speed limited by"
msgstr ""
@@ -2702,6 +2445,10 @@ msgstr ""
msgid "Disk speed"
msgstr ""
#: sabnzbd/skintext.py
msgid "System load"
msgstr ""
#. Do not translate Pystone
#: sabnzbd/skintext.py
msgid "System Performance (Pystone)"
@@ -2715,22 +2462,10 @@ msgstr "Nedlastingsmappe-hastighet"
msgid "Complete folder speed"
msgstr "Ferdig mappe-hastighet"
#: sabnzbd/skintext.py
msgid "Writing speed"
msgstr "Skrivehastighet"
#: sabnzbd/skintext.py
msgid "Could not write. Check that the directory is writable."
msgstr "Kunne ikke skrive. Sjekk skrive rettigheter til mappen."
#: sabnzbd/skintext.py
msgid "Internet Bandwidth"
msgstr ""
#: sabnzbd/skintext.py
msgid "Click on Repeat test button below to determine"
msgstr "Klikk på gjenta test knappen under for å bestemme."
#: sabnzbd/skintext.py
msgid "Repeat test"
msgstr "Gjenta test"
@@ -2911,10 +2646,6 @@ msgstr ""
msgid "Enable HTTPS"
msgstr "HTTPS Aktivere"
#: sabnzbd/skintext.py
msgid "not installed"
msgstr "(ikke installert)"
#: sabnzbd/skintext.py
msgid "Enable accessing the interface from a HTTPS address."
msgstr "Aktiverer tilgangen til webgrensesnittet med HTTPS adresse."
@@ -3002,12 +2733,17 @@ msgstr ""
"Lagrer artikler i minnet for å redusere diskaktivitet.<br /><i>I bytes, "
"fulgt av K,M,G. For eksempel: \"64M\" eller \"128M\"</i>"
#. Config->Scheduling
#: sabnzbd/skintext.py
msgid "Download backup"
msgid "Create backup"
msgstr ""
#: sabnzbd/skintext.py
msgid "Save or restore a backup of the configuration file and databases."
msgid ""
"Create a backup of the configuration file and databases in the Backup "
"Folder.<br>If the Backup Folder is not set, the backup will be created in "
"the Completed Download Folder.<br>Recurring backups can be configured on the"
" Scheduling page."
msgstr ""
#: sabnzbd/skintext.py
@@ -3154,10 +2890,6 @@ msgstr "Brukermapper"
msgid "Browse"
msgstr "Bla gjennom"
#: sabnzbd/skintext.py
msgid "In"
msgstr "Hvor:"
#: sabnzbd/skintext.py
msgid "Temporary Download Folder"
msgstr "Midlertidig nedlastingsmappe"
@@ -3287,6 +3019,17 @@ msgstr ""
"Lokasjon for køadmin og historikkdatabase.<br /><i>Kan bare endres når køen "
"er tom.</i>"
#: sabnzbd/skintext.py
msgid "Backup Folder"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Location where the backups of the configuration file and databases are "
"stored.<br />If left empty, the backup will be created in the Completed "
"Download Folder."
msgstr ""
#: sabnzbd/skintext.py
msgid "<i>Data will <b>not</b> be moved. Requires SABnzbd restart!</i>"
msgstr "<i>Data vil <b>ikke</b> bli flyttet. Krever SABnzbd restart!</i>"
@@ -3476,16 +3219,6 @@ msgstr "Når den feiler, prøv alternativ NZB-fil"
msgid "Some servers provide an alternative NZB when a download fails."
msgstr "Noen servere vil gi en alternativ NZB når en nedlasting mislykkes."
#: sabnzbd/skintext.py
msgid "Use tags from indexer"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"When sorting, use tags from indexer for title, season, episode, etc. "
"Otherwise all naming is derived from the NZB name."
msgstr ""
#: sabnzbd/skintext.py
msgid "Enable folder rename"
msgstr "Aktiver omdøping av mappe"
@@ -3538,6 +3271,14 @@ msgstr ""
msgid "Automatically sort jobs in the queue when a new job is added."
msgstr ""
#: sabnzbd/skintext.py
msgid "The queue will resort every 30 seconds if % downloaded is selected."
msgstr ""
#: sabnzbd/skintext.py
msgid "Propagation delay"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Posts will be paused untill they are at least this age. Setting job priority"
@@ -3565,6 +3306,14 @@ msgstr "Erstatt mellomrom i mappenavn"
msgid "Replace spaces with underscores in folder names."
msgstr "Erstatt mellomrom med understrek i mappenavn."
#: sabnzbd/skintext.py
msgid "Replace underscores in folder name"
msgstr ""
#: sabnzbd/skintext.py
msgid "Replace underscores with dots in folder names."
msgstr ""
#: sabnzbd/skintext.py
msgid "Replace dots in Foldername"
msgstr "Erstatt punktum i mappenavn"
@@ -3662,10 +3411,6 @@ msgstr "Filnavn"
msgid "Quota"
msgstr "Kvote"
#: sabnzbd/skintext.py
msgid "Indexing"
msgstr "Indeksering"
#: sabnzbd/skintext.py
msgid "How much can be downloaded this month (K/M/G)"
msgstr "Hvor mye can lastes ned denne måneden (K/M/G)"
@@ -3918,7 +3663,7 @@ msgstr "Legg til nedlastingsplan"
msgid "Frequency"
msgstr "Hyppighet"
#. Config->Scheduling - Job details page, section header
#. Config->Scheduling
#: sabnzbd/skintext.py
msgid "Action"
msgstr "Handling"
@@ -3970,6 +3715,16 @@ msgstr ""
msgid "Next scan at"
msgstr ""
#. Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Order"
msgstr "Sortering"
#. Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Type"
msgstr "Type"
#. Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Filter"
@@ -4314,11 +4069,6 @@ msgstr "Mappe/Søkesti"
msgid "Indexer Categories / Groups"
msgstr ""
#. Small delete button
#: sabnzbd/skintext.py
msgid "X"
msgstr "X"
#. Warning message
#: sabnzbd/skintext.py, sabnzbd/sorting.py
msgid "Select at least 1 category."
@@ -4349,10 +4099,6 @@ msgstr ""
msgid "Presets"
msgstr "For innstillinger"
#: sabnzbd/skintext.py
msgid "Example"
msgstr "Eksempel"
#. Warning message
#: sabnzbd/skintext.py, sabnzbd/sorting.py
msgid "Movie Sorting"
@@ -4362,10 +4108,6 @@ msgstr ""
msgid "Enable Movie Sorting"
msgstr "Aktiver filmsortering"
#: sabnzbd/skintext.py
msgid "Keep loose downloads in extra folders"
msgstr "La nedlastningen i ekstramappe være"
#: sabnzbd/skintext.py
msgid "Affected Categories"
msgstr "Påvirkede kategorier"
@@ -4582,51 +4324,11 @@ msgstr "Endre NZB detaljer"
msgid "Delete"
msgstr "Fjern"
#. Job details page, move file to top
#: sabnzbd/skintext.py
msgid "Top"
msgstr "Topp"
#. Job details page, move file one place up
#: sabnzbd/skintext.py
msgid "Up"
msgstr "Opp"
#. Job details page, move file one place down
#: sabnzbd/skintext.py
msgid "Down"
msgstr "Ned"
#. Job details page, move file to bottom
#: sabnzbd/skintext.py
msgid "Bottom"
msgstr "Bunn"
#. Job details page, select all files
#: sabnzbd/skintext.py
msgid "All"
msgstr "Alle"
#. Job details page, invert file selection
#: sabnzbd/skintext.py
msgid "Invert"
msgstr "Invertere"
#. Job details page, filename column header
#: sabnzbd/skintext.py
msgid "Filename"
msgstr "Filnavn"
#. Job details page, subject column header
#: sabnzbd/skintext.py
msgid "Subject"
msgstr "Emvne"
#. Job details page, section header
#: sabnzbd/skintext.py
msgid "Selection"
msgstr "Utvalg"
#: sabnzbd/skintext.py
msgid "Free Space"
msgstr "Ledig plass"
@@ -4651,6 +4353,10 @@ msgstr "Merk alle"
msgid "Restart SABnzbd"
msgstr "Start SABnzbd på nytt"
#: sabnzbd/skintext.py
msgid "On queue finish"
msgstr "Når køen er ferdig"
#: sabnzbd/skintext.py
msgid "Status and interface options"
msgstr "Status og grensesnittalternativer"
@@ -4728,6 +4434,10 @@ msgstr "Reparer Kø"
msgid "Show active connections"
msgstr "Vis aktive tilkoblinger"
#: sabnzbd/skintext.py
msgid "Unblock"
msgstr "Fjern blokkering"
#: sabnzbd/skintext.py
msgid "Orphaned jobs"
msgstr "Etterlatte jobber"
@@ -4760,18 +4470,6 @@ msgstr "Valgfritt spesifiser filnavn"
msgid "Submit"
msgstr "Send"
#: sabnzbd/skintext.py
msgid "Open Informational URL"
msgstr "Åpne informasjons-URL"
#: sabnzbd/skintext.py
msgid "Submitted. Thank you!"
msgstr "Sendt. Takk!"
#: sabnzbd/skintext.py
msgid "Nothing selected!"
msgstr "Ingenting er valgt!"
#: sabnzbd/skintext.py
msgid "Remove all selected files"
msgstr "Fjern alle valgte filer"
@@ -4780,6 +4478,14 @@ msgstr "Fjern alle valgte filer"
msgid "Hide/show completed files"
msgstr "Skjul/vis fullførte filer"
#: sabnzbd/skintext.py
msgid "Top"
msgstr "Topp"
#: sabnzbd/skintext.py
msgid "Bottom"
msgstr "Bunn"
#: sabnzbd/skintext.py
msgid "View Script Log"
msgstr "Se skriptlogg"
@@ -4798,6 +4504,10 @@ msgstr ""
msgid "Glitter has some (new) features you might like!"
msgstr ""
#: sabnzbd/skintext.py
msgid "Custom"
msgstr "Tilpasse"
#: sabnzbd/skintext.py
msgid "Compact layout"
msgstr ""
@@ -4810,6 +4520,10 @@ msgstr ""
msgid "Tabbed layout <br/>(separate queue and history)"
msgstr ""
#: sabnzbd/skintext.py
msgid "Speed"
msgstr "Hastighet"
#: sabnzbd/skintext.py
msgid "Confirm Queue Deletions"
msgstr "Bekreft Sletting av Kø"
@@ -4844,6 +4558,10 @@ msgid ""
" and the included copy of your settings."
msgstr ""
#: sabnzbd/skintext.py
msgid "Sort by % downloaded <small>Most&rarr;Least</small>"
msgstr ""
#: sabnzbd/skintext.py
msgid "Sort by Age <small>Oldest&rarr;Newest</small>"
msgstr "Sorter etter alder <small>Eldst&rarr;Ny</small>"
@@ -4992,19 +4710,6 @@ msgstr ""
"Dette er fri programvare, og du kan redistribuere det under visse vilkår.\n"
"Det er lisensier under GNU GENERAL PUBLIC LICENSE Versjon 2 eller senere versjoner.\n"
#: sabnzbd/skintext.py
msgid ""
"In order to download from usenet you will require access to a provider. Your"
" ISP may provide you with access, however a premium provider is recommended."
msgstr ""
"For å laste ned fra usenet trenger du tilgang til en leverandør. Din "
"internettleverandør kan gi deg tilgang, men en \"proff\" leverandør "
"anbefales."
#: sabnzbd/skintext.py
msgid "Don't have a usenet provider? We recommend trying %s."
msgstr "Har du ikke noen usenet leverandør? Vi anbefaler å prøve %s."
#. Error message
#: sabnzbd/sorting.py
msgid "Failed to rename: %s to %s"
@@ -5075,10 +4780,6 @@ msgstr ""
"Ukjent SSL-protokoll: Prøv å deaktivere SSL eller koble til på en annen "
"port."
#: sabnzbd/utils/servertests.py
msgid "Invalid server address."
msgstr "Ugyldig server-adresse."
#: sabnzbd/utils/servertests.py
msgid "Server quit during login sequence."
msgstr "Server avbrøt undet innloggingssekvens"

View File

@@ -8,7 +8,7 @@
#
msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
"Project-Id-Version: SABnzbd-3.7.0-develop\n"
"PO-Revision-Date: 2020-06-27 15:49+0000\n"
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2022\n"
"Language-Team: Dutch (https://www.transifex.com/sabnzbd/teams/111101/nl/)\n"
@@ -189,11 +189,7 @@ msgstr "Test melding"
msgid "&nbsp;Resolving address"
msgstr "&nbsp;Adres opzoeken"
#: sabnzbd/api.py
msgid "unknown"
msgstr "onbekend"
#. No value, used in dropdown menus - Job details page, select no files
#. No value, used in dropdown menus
#: sabnzbd/api.py, sabnzbd/skintext.py
msgid "None"
msgstr "Geen"
@@ -298,6 +294,10 @@ msgstr "%s is geen geldig e-mailadres"
msgid "Server address required"
msgstr "Serveradres verplicht"
#: sabnzbd/cfg.py, sabnzbd/utils/servertests.py
msgid "Invalid server address."
msgstr "Ongeldige servernaam"
#: sabnzbd/cfg.py
msgid "%s is not a valid script"
msgstr "%s is geen geldig script."
@@ -400,7 +400,7 @@ msgstr "Bestandsnamen van %d bestand(en) aangepast."
msgid "Direct Unpack"
msgstr "Direct Uitpakken"
#. PP status - History: job status
#. PP status
#: sabnzbd/directunpacker.py, sabnzbd/skintext.py
msgid "Completed"
msgstr "Voltooid"
@@ -459,6 +459,11 @@ msgstr "Servernaam niet te vinden"
msgid "Server %s will be ignored for %s minutes"
msgstr "Server %s wordt gedurende %s minuten genegeerd"
#. Warning message
#: sabnzbd/downloader.py
msgid "There are no active servers!"
msgstr "Er zijn geen actieve servers!"
#. Error message
#: sabnzbd/downloader.py
msgid "Failed to initialize %s@%s with reason: %s"
@@ -624,6 +629,22 @@ msgstr "Opslaan van %s lukt niet"
msgid "Loading %s failed"
msgstr "Inlezen van %s mislukt"
#. Warning message
#: sabnzbd/filesystem.py
msgid ""
"%s is not writable with special character filenames. This can cause "
"problems."
msgstr ""
"Het is niet mogelijk bestanden met speciale tekens op te slaan in %s. Dit "
"geeft mogelijk problemen bij het verwerken van downloads."
#. Warning message
#: sabnzbd/filesystem.py
msgid "%s is not writable at all. This blocks downloads."
msgstr ""
"Het is niet mogelijk bestanden te schrijven in %s. Hierdoor kan er niet "
"gedownload worden."
#: sabnzbd/interface.py
msgid "Refused connection from:"
msgstr "Verbinding geweigerd van: "
@@ -657,14 +678,6 @@ msgstr ""
"API-sleutel incorrect; vul de API-sleutel van 'Configuratie' => 'Algemeen' "
"in bij het externe programma:"
#: sabnzbd/interface.py
msgid ""
"Authentication missing, please enter username/password from Config->General "
"into your 3rd party program:"
msgstr ""
"Autenticatie ontbreekt; vul gebruikersnaam en wachtwoord van 'Configuratie' "
"=> 'Algemeen' in bij het externe programma:"
#: sabnzbd/interface.py, sabnzbd/newswrapper.py, sabnzbd/utils/servertests.py
msgid "Authentication failed, check username/password."
msgstr "Inloggen mislukt, controleer gebruikersnaam en wachtwoord."
@@ -1222,27 +1235,27 @@ msgstr "Afgebroken, kan niet voltooid worden"
msgid "Error importing %s"
msgstr "Fout bij importeren van %s"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "DUPLICATE"
msgstr "DUBBEL"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "ENCRYPTED"
msgstr "VERSLEUTELD"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "TOO LARGE"
msgstr "TE GROOT"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "INCOMPLETE"
msgstr "ONVOLLEDIG"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "UNWANTED"
msgstr "ONGEWENST"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "WAIT %s sec"
msgstr "WACHT %s sec"
@@ -1595,13 +1608,13 @@ msgid "Trying RAR-based verification"
msgstr "Probeer RAR-verificatie"
#: sabnzbd/postproc.py
msgid "[%s] RAR-based verification failed: %s"
msgstr "[%s] RAR verificatie niet gelukt: %s"
#: sabnzbd/postproc.py, sabnzbd/skintext.py
msgid "Passworded"
msgstr "Versleuteld"
#: sabnzbd/postproc.py
msgid "[%s] RAR-based verification failed: %s"
msgstr "[%s] RAR verificatie niet gelukt: %s"
#: sabnzbd/postproc.py
msgid "RAR files verified successfully"
msgstr "RAR bestanden zijn succesvol geverifieerd"
@@ -1716,7 +1729,7 @@ msgstr "Pauzeer 3 uur"
msgid "Pause for 6 hours"
msgstr "Pauzeer 6 uur"
#. Shutdown SABnzbd - Config->Scheduling
#. Config->Scheduling
#: sabnzbd/sabtray.py, sabnzbd/sabtraylinux.py, sabnzbd/skintext.py
msgid "Shutdown"
msgstr "Afsluiten"
@@ -1785,11 +1798,6 @@ msgstr "Bron"
msgid "Servers"
msgstr "Servers"
#. PP Failure message
#: sabnzbd/skintext.py
msgid "Failure"
msgstr "Mislukt"
#. PP status
#: sabnzbd/skintext.py
msgid "Failed"
@@ -1835,20 +1843,6 @@ msgstr "Snelle Controle..."
msgid "Verifying..."
msgstr "Verificatie..."
#. Pseudo-PP status, in reality used for Queue-status
#: sabnzbd/skintext.py
msgid "Downloading"
msgstr "Downloaden"
#: sabnzbd/skintext.py
msgid "Propagation delay"
msgstr "Verspreidingswachttijd"
#. #: Config->Scheduler
#: sabnzbd/skintext.py
msgid "Task"
msgstr "Taak"
#. #: Config->Scheduler
#: sabnzbd/skintext.py
msgid "disable server"
@@ -1979,21 +1973,6 @@ msgstr "Noodgeval"
msgid "Low"
msgstr "Laag"
#. Megabytes
#: sabnzbd/skintext.py
msgid "MB"
msgstr "MB"
#. Gigabytes
#: sabnzbd/skintext.py
msgid "GB"
msgstr "GB"
#. Bytes (used as postfix, as in "GB", "TB")
#: sabnzbd/skintext.py
msgid "B"
msgstr "B"
#. One hour
#: sabnzbd/skintext.py
msgid "hour"
@@ -2039,54 +2018,6 @@ msgstr "maand"
msgid "Year"
msgstr "jaar"
#: sabnzbd/skintext.py
msgid "January"
msgstr "Januari"
#: sabnzbd/skintext.py
msgid "February"
msgstr "Februari"
#: sabnzbd/skintext.py
msgid "March"
msgstr "Maart"
#: sabnzbd/skintext.py
msgid "April"
msgstr "April"
#: sabnzbd/skintext.py
msgid "May"
msgstr "Mei"
#: sabnzbd/skintext.py
msgid "June"
msgstr "Juni"
#: sabnzbd/skintext.py
msgid "July"
msgstr "Juli"
#: sabnzbd/skintext.py
msgid "August"
msgstr "Augustus"
#: sabnzbd/skintext.py
msgid "September"
msgstr "September"
#: sabnzbd/skintext.py
msgid "October"
msgstr "Oktober"
#: sabnzbd/skintext.py
msgid "November"
msgstr "November"
#: sabnzbd/skintext.py
msgid "December"
msgstr "December"
#: sabnzbd/skintext.py
msgid "Day of month"
msgstr "Dag van de maand"
@@ -2111,14 +2042,6 @@ msgstr "Vandaag"
msgid "Total"
msgstr "Totaal"
#: sabnzbd/skintext.py
msgid "Custom"
msgstr "Aangepast"
#: sabnzbd/skintext.py
msgid "Speed"
msgstr "Snelheid"
#: sabnzbd/skintext.py
msgid "on"
msgstr "aan"
@@ -2147,42 +2070,10 @@ msgstr "of"
msgid "Host"
msgstr "Server"
#: sabnzbd/skintext.py
msgid "Comment"
msgstr "Commentaar"
#: sabnzbd/skintext.py
msgid "Send"
msgstr "Verzenden"
#: sabnzbd/skintext.py
msgid "Cancel"
msgstr "Annuleren"
#: sabnzbd/skintext.py
msgid "Other"
msgstr "Overige"
#: sabnzbd/skintext.py
msgid "Report"
msgstr "Overzicht"
#: sabnzbd/skintext.py
msgid "Video"
msgstr "Video"
#: sabnzbd/skintext.py
msgid "Audio"
msgstr "Audio"
#: sabnzbd/skintext.py
msgid "Not used"
msgstr "Niet gebruikt"
#: sabnzbd/skintext.py
msgid "or less"
msgstr "of minder"
#: sabnzbd/skintext.py
msgid "Log in"
msgstr "Aanmelden"
@@ -2195,11 +2086,6 @@ msgstr "Afmelden"
msgid "Remember me"
msgstr "Mij onthouden"
#. SABnzbd's theme line
#: sabnzbd/skintext.py
msgid "The automatic usenet download tool"
msgstr "De automatische Usenet downloader"
#. "Save" button
#: sabnzbd/skintext.py
msgid "Save"
@@ -2214,11 +2100,6 @@ msgstr "Opslaan.."
msgid "Are you sure?"
msgstr "Weet je het zeker?"
#. Used in confirmation popups
#: sabnzbd/skintext.py
msgid "Delete all downloaded files?"
msgstr "Alle gedownloade bestanden verwijderen?"
#. Main menu item
#: sabnzbd/skintext.py
msgid "Home"
@@ -2318,22 +2199,6 @@ msgstr "Zoeken"
msgid "Download Dir"
msgstr "Map voor verwerkte downloads"
#: sabnzbd/skintext.py
msgid "PAUSED"
msgstr "PAUZE"
#: sabnzbd/skintext.py
msgid "Cached %s articles (%s)"
msgstr "%s artikelen (%s) gebuffered"
#: sabnzbd/skintext.py
msgid "Sysload"
msgstr "Sysload"
#: sabnzbd/skintext.py
msgid "New release %s available at"
msgstr "Nieuwe versie %s beschikbaar op"
#: sabnzbd/skintext.py
msgid "Are you sure you want to shutdown SABnzbd?"
msgstr "Weet je zeker dat je SABnzbd wilt afsluiten?"
@@ -2343,21 +2208,11 @@ msgstr "Weet je zeker dat je SABnzbd wilt afsluiten?"
msgid "Add"
msgstr "Toevoegen"
#. Add NZB file to queue (header
#: sabnzbd/skintext.py
msgid "Add File"
msgstr "Bestand toevoegen"
#. Job category
#: sabnzbd/skintext.py
msgid "Category"
msgstr "Categorie"
#. Queue page table column header
#: sabnzbd/skintext.py
msgid "Processing"
msgstr "Nabewerking"
#. Server priority
#: sabnzbd/skintext.py
msgid "Priority"
@@ -2378,21 +2233,6 @@ msgstr "+Uitpakken"
msgid "+Delete"
msgstr "+Opschonen"
#. Post processing pick list: abbreviation for "+Repair"
#: sabnzbd/skintext.py
msgid "R"
msgstr "R"
#. Post processing pick list: abbreviation for "+Unpack"
#: sabnzbd/skintext.py
msgid "U"
msgstr "U"
#. Post processing pick list: abbreviation for "+Delete"
#: sabnzbd/skintext.py
msgid "D"
msgstr "O"
#. Priority pick list
#: sabnzbd/skintext.py
msgid "Force"
@@ -2408,11 +2248,6 @@ msgstr "Stop"
msgid "Enter URL"
msgstr "URL"
#. Queue page selection menu
#: sabnzbd/skintext.py
msgid "On queue finish"
msgstr "Na afronden wachtrij"
#. Queue page end-of-queue action
#: sabnzbd/skintext.py
msgid "Shutdown PC"
@@ -2433,36 +2268,16 @@ msgstr "PC slapen"
msgid "Shutdown SABnzbd"
msgstr "SABnzbd afsluiten"
#. Queue page selection menu or entry box
#. Queue page table column header
#: sabnzbd/skintext.py
msgid "Speed Limit"
msgstr "Max. snelheid"
msgid "Processing"
msgstr "Nabewerking"
#. Queue page table column header - Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Order"
msgstr "Volgorde"
#. Queue page table column header - Job details page
#. Queue page table column header
#: sabnzbd/skintext.py
msgid "Name"
msgstr "Naam"
#. Queue page table column header, "estimated time of arrival"
#: sabnzbd/skintext.py
msgid "ETA"
msgstr "Klaar om"
#. Queue page table column header, "age of the NZB"
#: sabnzbd/skintext.py
msgid "AGE"
msgstr "Leeftijd"
#. Queue page table, "Delete" button
#: sabnzbd/skintext.py
msgid "Del"
msgstr "Wis"
#. Queue page button
#: sabnzbd/skintext.py
msgid "Retry"
@@ -2493,11 +2308,6 @@ msgstr "Verwijder alle downloads"
msgid "Purge NZBs & Delete Files"
msgstr "Verwijderen incl. bestanden"
#. Retry all failed jobs dialog box
#: sabnzbd/skintext.py
msgid "Retry all failed jobs"
msgstr "Probeer alle mislukte downloads opnieuw"
#. Queue page button
#: sabnzbd/skintext.py
msgid "Remove NZB"
@@ -2508,11 +2318,6 @@ msgstr "Verwijder download"
msgid "Remove NZB & Delete Files"
msgstr "Verwijder download incl. bestanden"
#. Queue page, as in "4G *of* 10G"
#: sabnzbd/skintext.py
msgid "of"
msgstr "van"
#. Caption for missing articles in Queue
#: sabnzbd/skintext.py
msgid "Missing articles"
@@ -2532,11 +2337,6 @@ msgstr "handmatig"
msgid "Reset Quota now"
msgstr "Quotum nu resetten"
#. Confirmation popup
#: sabnzbd/skintext.py
msgid "Delete all completed items from History?"
msgstr "Verwijder alle geslaagde items uit Geschiedenis?"
#. Button/link hiding History job details
#: sabnzbd/skintext.py
msgid "Hide details"
@@ -2593,25 +2393,8 @@ msgstr "Pad"
#. Retry all failed jobs in History
#: sabnzbd/skintext.py
msgid "Retry all failed"
msgstr "Probeer alle mislukte"
#. Retry all button for Retry All Failed Jobs
#: sabnzbd/skintext.py
msgid "Retry All"
msgstr "Alles opnieuw proberen"
#: sabnzbd/skintext.py
msgid "Virus/spam"
msgstr "Virus/spam"
#: sabnzbd/skintext.py
msgid "Out of retention"
msgstr "Buiten retentie"
#: sabnzbd/skintext.py
msgid "Other problem"
msgstr "Ander probleem"
msgid "Retry all failed jobs"
msgstr "Probeer alle mislukte downloads opnieuw"
#. Status page button
#: sabnzbd/skintext.py
@@ -2665,21 +2448,6 @@ msgstr "+Debug"
msgid "Connections"
msgstr "Verbindingen"
#. Status page, table header
#: sabnzbd/skintext.py
msgid "Latest Warnings"
msgstr "Recentste meldingen"
#. Status page button
#: sabnzbd/skintext.py
msgid "clear"
msgstr "Wissen"
#. Status page button
#: sabnzbd/skintext.py
msgid "Unblock"
msgstr "Deblokkeren"
#. Status page, article identifier
#: sabnzbd/skintext.py
msgid "Article identifier"
@@ -2690,26 +2458,11 @@ msgstr "Artikelnummer"
msgid "File set"
msgstr "Bestandsverzameling"
#. Status page, table column header, when error occured
#: sabnzbd/skintext.py
msgid "When"
msgstr "Wanneer"
#. Status page, table column header, type of message - Config->RSS table
#. column header
#: sabnzbd/skintext.py
msgid "Type"
msgstr "Filter"
#. Status page, indicator that server is enabled
#: sabnzbd/skintext.py
msgid "Enabled"
msgstr "Actief"
#: sabnzbd/skintext.py
msgid "Dashboard"
msgstr "Dashboard"
#: sabnzbd/skintext.py
msgid "Connection failed!"
msgstr "Verbinding mislukt!"
@@ -2730,10 +2483,6 @@ msgstr "IPv6-adres"
msgid "Nameserver / DNS Lookup"
msgstr "Nameserver / DNS opzoeken"
#: sabnzbd/skintext.py
msgid "CPU Model"
msgstr "CPU-model"
#: sabnzbd/skintext.py
msgid "Download speed limited by"
msgstr "Downloadsnelheid beperkt door"
@@ -2746,6 +2495,10 @@ msgstr "Processor"
msgid "Disk speed"
msgstr "Hardeschijf"
#: sabnzbd/skintext.py
msgid "System load"
msgstr ""
#. Do not translate Pystone
#: sabnzbd/skintext.py
msgid "System Performance (Pystone)"
@@ -2759,22 +2512,10 @@ msgstr "Snelheid van download map"
msgid "Complete folder speed"
msgstr "Snelheid van verwerkte downloads map"
#: sabnzbd/skintext.py
msgid "Writing speed"
msgstr "Schrijfsnelheid"
#: sabnzbd/skintext.py
msgid "Could not write. Check that the directory is writable."
msgstr "Kan niet schrijven. Controleer of de map beschrijfbaar is."
#: sabnzbd/skintext.py
msgid "Internet Bandwidth"
msgstr "Internet Bandbreedte"
#: sabnzbd/skintext.py
msgid "Click on Repeat test button below to determine"
msgstr "Klik op de Herhaal Test knop om te meten"
#: sabnzbd/skintext.py
msgid "Repeat test"
msgstr "Herhaal test"
@@ -2968,10 +2709,6 @@ msgstr "Beveiliging"
msgid "Enable HTTPS"
msgstr "Activeer HTTPS"
#: sabnzbd/skintext.py
msgid "not installed"
msgstr "niet geinstalleerd"
#: sabnzbd/skintext.py
msgid "Enable accessing the interface from a HTTPS address."
msgstr "Webinterface beschikbaar via HTTPS"
@@ -3066,13 +2803,22 @@ msgstr ""
"Bewaar de artikelen in het werkgeheugen (verminderd schijf gebruik).<br "
"/><i>In bytes, in K,M,G notatie. Bijvoorbeeld: \"64M\" of \"128M\"</i>"
#. Config->Scheduling
#: sabnzbd/skintext.py
msgid "Download backup"
msgstr "Backup downloaden"
msgid "Create backup"
msgstr "Maak backup"
#: 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"
msgid ""
"Create a backup of the configuration file and databases in the Backup "
"Folder.<br>If the Backup Folder is not set, the backup will be created in "
"the Completed Download Folder.<br>Recurring backups can be configured on the"
" Scheduling page."
msgstr ""
"Maak een backup van de configuratie en de database in de Backup Map.<br>Als "
"er geen Backup Map is ingesteld wordt de backup aangemaakt in de Map voor "
"verwerkte downloads.<br>Automatische backups kunnen worden ingesteld via de "
"Taakplanner."
#: sabnzbd/skintext.py
msgid "Cleanup List"
@@ -3221,10 +2967,6 @@ msgstr "Gebruikersmappen"
msgid "Browse"
msgstr "Bladeren"
#: sabnzbd/skintext.py
msgid "In"
msgstr "In"
#: sabnzbd/skintext.py
msgid "Temporary Download Folder"
msgstr "Tijdelijke download map"
@@ -3353,6 +3095,20 @@ msgstr ""
"Map waar de wachtrij en geschiedenisdatabase worden opgeslagen.<br /><i>Kan "
"alleen gewijzigd worden als de wachtrij leeg is.</i>"
#: sabnzbd/skintext.py
msgid "Backup Folder"
msgstr "Backup map"
#: sabnzbd/skintext.py
msgid ""
"Location where the backups of the configuration file and databases are "
"stored.<br />If left empty, the backup will be created in the Completed "
"Download Folder."
msgstr ""
"Map waar de backups van de configuratie en databases worden opgeslagen.<br "
"/>Als deze map niet is ingesteld worden de backups aangemaakt in de Map voor"
" verwerkte downloads."
#: sabnzbd/skintext.py
msgid "<i>Data will <b>not</b> be moved. Requires SABnzbd restart!</i>"
msgstr ""
@@ -3559,19 +3315,6 @@ msgid "Some servers provide an alternative NZB when a download fails."
msgstr ""
"Sommige indexers hebben een alternatieve NZB wanneer een download mislukt"
#: sabnzbd/skintext.py
msgid "Use tags from indexer"
msgstr "Gebruik indexer informatie"
#: sabnzbd/skintext.py
msgid ""
"When sorting, use tags from indexer for title, season, episode, etc. "
"Otherwise all naming is derived from the NZB name."
msgstr ""
"Maak tijdens het sorteren gebruik van informatie van de indexer zoals titel,"
" seizoen, aflevering, enz. Anders wordt alle informatie uit de naam van de "
"download gehaald."
#: sabnzbd/skintext.py
msgid "Enable folder rename"
msgstr "Gebruik tijdelijke mapnamen"
@@ -3627,6 +3370,16 @@ msgstr ""
"De wachtrij wordt automatisch gesorteerd wanneer er een nieuwe opdracht "
"wordt toegevoegd"
#: sabnzbd/skintext.py
msgid "The queue will resort every 30 seconds if % downloaded is selected."
msgstr ""
"De wachtrij wordt elke 30 seconden opnieuw gesorteerd als de optie % "
"gedownload is gekozen."
#: sabnzbd/skintext.py
msgid "Propagation delay"
msgstr "Verspreidingswachttijd"
#: sabnzbd/skintext.py
msgid ""
"Posts will be paused untill they are at least this age. Setting job priority"
@@ -3656,6 +3409,14 @@ msgstr "Vervang spaties in mapnamen"
msgid "Replace spaces with underscores in folder names."
msgstr "Vervang spaties door onderliggende streepjes in namen van mappen."
#: sabnzbd/skintext.py
msgid "Replace underscores in folder name"
msgstr "Vervang onderstrepingstekens in mapnamen"
#: sabnzbd/skintext.py
msgid "Replace underscores with dots in folder names."
msgstr "Vervang onderstrepingstekens door punten in mapnamen."
#: sabnzbd/skintext.py
msgid "Replace dots in Foldername"
msgstr "Vervang punten in mapnamen"
@@ -3759,10 +3520,6 @@ msgstr "Naamgeving"
msgid "Quota"
msgstr "Quotum"
#: sabnzbd/skintext.py
msgid "Indexing"
msgstr "Indexering"
#: sabnzbd/skintext.py
msgid "How much can be downloaded this month (K/M/G)"
msgstr "Hoeval mag deze maand worden gedownload (K/M/G)"
@@ -4030,7 +3787,7 @@ msgstr "Taak toevoegen"
msgid "Frequency"
msgstr "Frequentie"
#. Config->Scheduling - Job details page, section header
#. Config->Scheduling
#: sabnzbd/skintext.py
msgid "Action"
msgstr "Actie"
@@ -4082,6 +3839,16 @@ msgstr "Wijzigen"
msgid "Next scan at"
msgstr "Wordt uitgevoerd om"
#. Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Order"
msgstr "Volgorde"
#. Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Type"
msgstr "Filter"
#. Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Filter"
@@ -4436,11 +4203,6 @@ msgstr "Map/Pad"
msgid "Indexer Categories / Groups"
msgstr "Indexer Categorieën / Groepen"
#. Small delete button
#: sabnzbd/skintext.py
msgid "X"
msgstr "X"
#. Warning message
#: sabnzbd/skintext.py, sabnzbd/sorting.py
msgid "Select at least 1 category."
@@ -4471,10 +4233,6 @@ msgstr "Filters toepassen"
msgid "Presets"
msgstr "Standaardinstellingen"
#: sabnzbd/skintext.py
msgid "Example"
msgstr "Voorbeeld"
#. Warning message
#: sabnzbd/skintext.py, sabnzbd/sorting.py
msgid "Movie Sorting"
@@ -4484,10 +4242,6 @@ msgstr "Film sorteren"
msgid "Enable Movie Sorting"
msgstr "Film sorteren aan"
#: sabnzbd/skintext.py
msgid "Keep loose downloads in extra folders"
msgstr "Zet downloads in aparte mappen"
#: sabnzbd/skintext.py
msgid "Affected Categories"
msgstr "Beïnvloede categorieën"
@@ -4704,51 +4458,11 @@ msgstr "Bewerk download details"
msgid "Delete"
msgstr "Verwijder"
#. Job details page, move file to top
#: sabnzbd/skintext.py
msgid "Top"
msgstr "Boven"
#. Job details page, move file one place up
#: sabnzbd/skintext.py
msgid "Up"
msgstr "Hoger"
#. Job details page, move file one place down
#: sabnzbd/skintext.py
msgid "Down"
msgstr "Lager"
#. Job details page, move file to bottom
#: sabnzbd/skintext.py
msgid "Bottom"
msgstr "Onder"
#. Job details page, select all files
#: sabnzbd/skintext.py
msgid "All"
msgstr "alles"
#. Job details page, invert file selection
#: sabnzbd/skintext.py
msgid "Invert"
msgstr "omkeren"
#. Job details page, filename column header
#: sabnzbd/skintext.py
msgid "Filename"
msgstr "Bestandsnaam"
#. Job details page, subject column header
#: sabnzbd/skintext.py
msgid "Subject"
msgstr "Onderwerp"
#. Job details page, section header
#: sabnzbd/skintext.py
msgid "Selection"
msgstr "Selectie"
#: sabnzbd/skintext.py
msgid "Free Space"
msgstr "Vrije ruimte"
@@ -4773,6 +4487,10 @@ msgstr "Selecteer alles"
msgid "Restart SABnzbd"
msgstr "Start SABnzbd opnieuw"
#: sabnzbd/skintext.py
msgid "On queue finish"
msgstr "Na afronden wachtrij"
#: sabnzbd/skintext.py
msgid "Status and interface options"
msgstr "Status en webinterface opties"
@@ -4849,6 +4567,10 @@ msgstr "Wachtrij reparatie"
msgid "Show active connections"
msgstr "Toon actieve verbindingen"
#: sabnzbd/skintext.py
msgid "Unblock"
msgstr "Deblokkeren"
#: sabnzbd/skintext.py
msgid "Orphaned jobs"
msgstr "Verweesde downloads"
@@ -4881,18 +4603,6 @@ msgstr "Geef eventueel een andere naam"
msgid "Submit"
msgstr "Verstuur"
#: sabnzbd/skintext.py
msgid "Open Informational URL"
msgstr "Open Informatie URL"
#: sabnzbd/skintext.py
msgid "Submitted. Thank you!"
msgstr "Ingediend. Bedankt!"
#: sabnzbd/skintext.py
msgid "Nothing selected!"
msgstr "Niets geselecteerd!"
#: sabnzbd/skintext.py
msgid "Remove all selected files"
msgstr "Verwijder alle geselecteerde bestanden"
@@ -4901,6 +4611,14 @@ msgstr "Verwijder alle geselecteerde bestanden"
msgid "Hide/show completed files"
msgstr "Toon/verberg voltooide bestanden"
#: sabnzbd/skintext.py
msgid "Top"
msgstr "Boven"
#: sabnzbd/skintext.py
msgid "Bottom"
msgstr "Onder"
#: sabnzbd/skintext.py
msgid "View Script Log"
msgstr "Toon Script resultaat"
@@ -4921,6 +4639,10 @@ msgstr ""
msgid "Glitter has some (new) features you might like!"
msgstr "Glitter heeft enkele (nieuwe) functies die je mogelijk aanspreken!"
#: sabnzbd/skintext.py
msgid "Custom"
msgstr "Aangepast"
#: sabnzbd/skintext.py
msgid "Compact layout"
msgstr "Compacte weergave"
@@ -4933,6 +4655,10 @@ msgstr "Gebruik de volledige schermbreedte"
msgid "Tabbed layout <br/>(separate queue and history)"
msgstr "Weergave in tabs <br/>(wachtrij en geschiedenis apart weergeven)"
#: sabnzbd/skintext.py
msgid "Speed"
msgstr "Snelheid"
#: sabnzbd/skintext.py
msgid "Confirm Queue Deletions"
msgstr "Bevestig verwijderen uit wachtrij"
@@ -4969,6 +4695,10 @@ msgstr ""
"Alle gebruikersnamen, wachtwoorden en API-sleutels worden automatisch "
"verwijderd uit het logbestand en de bijgevoegde kopie van je instellingen."
#: sabnzbd/skintext.py
msgid "Sort by % downloaded <small>Most&rarr;Least</small>"
msgstr "Sorteer Op % Gedownload <small>Meest&rarr;Minst</small>"
#: sabnzbd/skintext.py
msgid "Sort by Age <small>Oldest&rarr;Newest</small>"
msgstr "Sorteer op Leeftijd <small>Oud&rarr;Nieuw</small>"
@@ -5115,18 +4845,6 @@ msgstr ""
"Het is vrije software en je mag het, onder bepaalde voorwaarden, verder verspreiden.\n"
"De licentie is de GNU GENERAL PUBLIC LICENSE Versie 2 of (naar eigen keuze) een latere versie.\n"
#: sabnzbd/skintext.py
msgid ""
"In order to download from usenet you will require access to a provider. Your"
" ISP may provide you with access, however a premium provider is recommended."
msgstr ""
"Om te kunnen downloaden van Usenet, heb je een provider nodig. Je Internet "
"bedrijf heeft misschien een server, maar we bevelen een betaalde server aan."
#: sabnzbd/skintext.py
msgid "Don't have a usenet provider? We recommend trying %s."
msgstr "Heb je nog geen Usenet provider? Wij bevelen %s aan."
#. Error message
#: sabnzbd/sorting.py
msgid "Failed to rename: %s to %s"
@@ -5198,10 +4916,6 @@ msgid ""
msgstr ""
"Onbekend SSL protocol: probeer het zonder SSL of probeer een andere poort."
#: sabnzbd/utils/servertests.py
msgid "Invalid server address."
msgstr "Ongeldige servernaam"
#: sabnzbd/utils/servertests.py
msgid "Server quit during login sequence."
msgstr "De server stopte tijdens de login"

View File

@@ -7,7 +7,7 @@
#
msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
"Project-Id-Version: SABnzbd-3.7.0-develop\n"
"PO-Revision-Date: 2020-06-27 15:49+0000\n"
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2022\n"
"Language-Team: Polish (https://www.transifex.com/sabnzbd/teams/111101/pl/)\n"
@@ -177,11 +177,7 @@ msgstr "Powiadomienie testowe"
msgid "&nbsp;Resolving address"
msgstr "&nbsp;Rozwiązywanie adresu"
#: sabnzbd/api.py
msgid "unknown"
msgstr "nieznany"
#. No value, used in dropdown menus - Job details page, select no files
#. No value, used in dropdown menus
#: sabnzbd/api.py, sabnzbd/skintext.py
msgid "None"
msgstr "Brak"
@@ -278,6 +274,10 @@ msgstr "%s nie jest prawidłowym adresem email"
msgid "Server address required"
msgstr "Wymagane jest podanie adresu serwera"
#: sabnzbd/cfg.py, sabnzbd/utils/servertests.py
msgid "Invalid server address."
msgstr "Nieprawidłowy adres serwera."
#: sabnzbd/cfg.py
msgid "%s is not a valid script"
msgstr ""
@@ -373,7 +373,7 @@ msgstr ""
msgid "Direct Unpack"
msgstr ""
#. PP status - History: job status
#. PP status
#: sabnzbd/directunpacker.py, sabnzbd/skintext.py
msgid "Completed"
msgstr "Ukończone"
@@ -429,6 +429,11 @@ msgstr "Nie udało się rozwiązać nazwy serwera"
msgid "Server %s will be ignored for %s minutes"
msgstr "Serwer %s będzie ignorowany przez %s minut"
#. Warning message
#: sabnzbd/downloader.py
msgid "There are no active servers!"
msgstr ""
#. Error message
#: sabnzbd/downloader.py
msgid "Failed to initialize %s@%s with reason: %s"
@@ -596,6 +601,18 @@ msgstr "Nie udało się zapisać %s"
msgid "Loading %s failed"
msgstr "Nie udało się wczytać %s"
#. Warning message
#: sabnzbd/filesystem.py
msgid ""
"%s is not writable with special character filenames. This can cause "
"problems."
msgstr ""
#. Warning message
#: sabnzbd/filesystem.py
msgid "%s is not writable at all. This blocks downloads."
msgstr ""
#: sabnzbd/interface.py
msgid "Refused connection from:"
msgstr ""
@@ -629,14 +646,6 @@ msgstr ""
"Klucz API jest nieprawidłowy, użyj klucza API z sekcji Konfiguracja->Ogólne "
"w zewnętrznym programie:"
#: sabnzbd/interface.py
msgid ""
"Authentication missing, please enter username/password from Config->General "
"into your 3rd party program:"
msgstr ""
"Brak danych uwierzytelniających, wprowadź nazwę użytkownika/hasło z sekcji "
"Konfiguracja->Ogólne do zewnętrznego programu:"
#: sabnzbd/interface.py, sabnzbd/newswrapper.py, sabnzbd/utils/servertests.py
msgid "Authentication failed, check username/password."
msgstr "Błąd połączenia, sprawdź nazwę użytkownika i hasło."
@@ -1184,27 +1193,27 @@ msgstr "Przerwano, nie można ukończyć"
msgid "Error importing %s"
msgstr "Błąd importu %s"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "DUPLICATE"
msgstr "DUPLIKAT"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "ENCRYPTED"
msgstr "ZASZYFROWANY"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "TOO LARGE"
msgstr "ZA DUŻY"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "INCOMPLETE"
msgstr "NIEKOMPLETNY"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "UNWANTED"
msgstr "NIEPOŻĄDANY"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "WAIT %s sec"
msgstr "CZEKAM %s s"
@@ -1556,13 +1565,13 @@ msgid "Trying RAR-based verification"
msgstr ""
#: sabnzbd/postproc.py
msgid "[%s] RAR-based verification failed: %s"
msgstr ""
#: sabnzbd/postproc.py, sabnzbd/skintext.py
msgid "Passworded"
msgstr "Zabezpieczone hasłem"
#: sabnzbd/postproc.py
msgid "[%s] RAR-based verification failed: %s"
msgstr ""
#: sabnzbd/postproc.py
msgid "RAR files verified successfully"
msgstr ""
@@ -1677,7 +1686,7 @@ msgstr "Wstrzymaj na 2 godziny"
msgid "Pause for 6 hours"
msgstr "Wstrzymaj na 6 godzin"
#. Shutdown SABnzbd - Config->Scheduling
#. Config->Scheduling
#: sabnzbd/sabtray.py, sabnzbd/sabtraylinux.py, sabnzbd/skintext.py
msgid "Shutdown"
msgstr "Zakończ"
@@ -1746,11 +1755,6 @@ msgstr "Źródło"
msgid "Servers"
msgstr "Serwery"
#. PP Failure message
#: sabnzbd/skintext.py
msgid "Failure"
msgstr "Niepowodzenie"
#. PP status
#: sabnzbd/skintext.py
msgid "Failed"
@@ -1796,20 +1800,6 @@ msgstr "Szybkie sprawdzanie..."
msgid "Verifying..."
msgstr "Weryfikowanie..."
#. Pseudo-PP status, in reality used for Queue-status
#: sabnzbd/skintext.py
msgid "Downloading"
msgstr "Pobieranie"
#: sabnzbd/skintext.py
msgid "Propagation delay"
msgstr ""
#. #: Config->Scheduler
#: sabnzbd/skintext.py
msgid "Task"
msgstr "Zadanie"
#. #: Config->Scheduler
#: sabnzbd/skintext.py
msgid "disable server"
@@ -1940,21 +1930,6 @@ msgstr "Awaryjny"
msgid "Low"
msgstr "Niski"
#. Megabytes
#: sabnzbd/skintext.py
msgid "MB"
msgstr "MB"
#. Gigabytes
#: sabnzbd/skintext.py
msgid "GB"
msgstr "GB"
#. Bytes (used as postfix, as in "GB", "TB")
#: sabnzbd/skintext.py
msgid "B"
msgstr "B"
#. One hour
#: sabnzbd/skintext.py
msgid "hour"
@@ -2000,54 +1975,6 @@ msgstr "Miesiąc"
msgid "Year"
msgstr "Rok"
#: sabnzbd/skintext.py
msgid "January"
msgstr ""
#: sabnzbd/skintext.py
msgid "February"
msgstr ""
#: sabnzbd/skintext.py
msgid "March"
msgstr ""
#: sabnzbd/skintext.py
msgid "April"
msgstr ""
#: sabnzbd/skintext.py
msgid "May"
msgstr ""
#: sabnzbd/skintext.py
msgid "June"
msgstr ""
#: sabnzbd/skintext.py
msgid "July"
msgstr ""
#: sabnzbd/skintext.py
msgid "August"
msgstr ""
#: sabnzbd/skintext.py
msgid "September"
msgstr ""
#: sabnzbd/skintext.py
msgid "October"
msgstr ""
#: sabnzbd/skintext.py
msgid "November"
msgstr ""
#: sabnzbd/skintext.py
msgid "December"
msgstr ""
#: sabnzbd/skintext.py
msgid "Day of month"
msgstr "Dzień miesiąca"
@@ -2072,14 +1999,6 @@ msgstr "Dzisiaj"
msgid "Total"
msgstr "Razem"
#: sabnzbd/skintext.py
msgid "Custom"
msgstr "Własny"
#: sabnzbd/skintext.py
msgid "Speed"
msgstr "Prędkość"
#: sabnzbd/skintext.py
msgid "on"
msgstr "włączone"
@@ -2108,42 +2027,10 @@ msgstr "lub"
msgid "Host"
msgstr "Host"
#: sabnzbd/skintext.py
msgid "Comment"
msgstr "Komentarz"
#: sabnzbd/skintext.py
msgid "Send"
msgstr "Wyślij"
#: sabnzbd/skintext.py
msgid "Cancel"
msgstr "Anuluj"
#: sabnzbd/skintext.py
msgid "Other"
msgstr "Inne"
#: sabnzbd/skintext.py
msgid "Report"
msgstr "Zgłoś"
#: sabnzbd/skintext.py
msgid "Video"
msgstr "Wideo"
#: sabnzbd/skintext.py
msgid "Audio"
msgstr "Audio"
#: sabnzbd/skintext.py
msgid "Not used"
msgstr "Nieużywane"
#: sabnzbd/skintext.py
msgid "or less"
msgstr "lub mniej"
#: sabnzbd/skintext.py
msgid "Log in"
msgstr ""
@@ -2156,11 +2043,6 @@ msgstr ""
msgid "Remember me"
msgstr ""
#. SABnzbd's theme line
#: sabnzbd/skintext.py
msgid "The automatic usenet download tool"
msgstr "Automatyczne narzędzie do pobierania z Usenetu"
#. "Save" button
#: sabnzbd/skintext.py
msgid "Save"
@@ -2175,11 +2057,6 @@ msgstr "Zapisywanie..."
msgid "Are you sure?"
msgstr "Czy jesteś pewien?"
#. Used in confirmation popups
#: sabnzbd/skintext.py
msgid "Delete all downloaded files?"
msgstr "Usunąć wszystkie pobrane pliki?"
#. Main menu item
#: sabnzbd/skintext.py
msgid "Home"
@@ -2218,7 +2095,7 @@ msgstr ""
#. Main menu item
#: sabnzbd/skintext.py
msgid "Support the project, Donate!"
msgstr ""
msgstr "Wspomóż projekt!"
#. Main menu item
#: sabnzbd/skintext.py
@@ -2279,22 +2156,6 @@ msgstr "Szukaj"
msgid "Download Dir"
msgstr "Katalog pobierania"
#: sabnzbd/skintext.py
msgid "PAUSED"
msgstr "ZATRZYMANE"
#: sabnzbd/skintext.py
msgid "Cached %s articles (%s)"
msgstr "%s artykułów (%s)"
#: sabnzbd/skintext.py
msgid "Sysload"
msgstr "Obciążenie"
#: sabnzbd/skintext.py
msgid "New release %s available at"
msgstr "Nowe wydanie %s dostępne na"
#: sabnzbd/skintext.py
msgid "Are you sure you want to shutdown SABnzbd?"
msgstr "Czy na pewno wyłączyć SABnzbd?"
@@ -2304,21 +2165,11 @@ msgstr "Czy na pewno wyłączyć SABnzbd?"
msgid "Add"
msgstr "Dodaj"
#. Add NZB file to queue (header
#: sabnzbd/skintext.py
msgid "Add File"
msgstr "Dodaj plik"
#. Job category
#: sabnzbd/skintext.py
msgid "Category"
msgstr "Kategoria"
#. Queue page table column header
#: sabnzbd/skintext.py
msgid "Processing"
msgstr "Przetwarzanie"
#. Server priority
#: sabnzbd/skintext.py
msgid "Priority"
@@ -2339,21 +2190,6 @@ msgstr "+Rozpakuj"
msgid "+Delete"
msgstr "+Usuń"
#. Post processing pick list: abbreviation for "+Repair"
#: sabnzbd/skintext.py
msgid "R"
msgstr "N"
#. Post processing pick list: abbreviation for "+Unpack"
#: sabnzbd/skintext.py
msgid "U"
msgstr "R"
#. Post processing pick list: abbreviation for "+Delete"
#: sabnzbd/skintext.py
msgid "D"
msgstr "U"
#. Priority pick list
#: sabnzbd/skintext.py
msgid "Force"
@@ -2369,11 +2205,6 @@ msgstr "Stop"
msgid "Enter URL"
msgstr "Wprowadź URL"
#. Queue page selection menu
#: sabnzbd/skintext.py
msgid "On queue finish"
msgstr "Po ukończeniu kolejki"
#. Queue page end-of-queue action
#: sabnzbd/skintext.py
msgid "Shutdown PC"
@@ -2394,36 +2225,16 @@ msgstr "Hibernuj komputer"
msgid "Shutdown SABnzbd"
msgstr "Wyłącz SABnzbd"
#. Queue page selection menu or entry box
#. Queue page table column header
#: sabnzbd/skintext.py
msgid "Speed Limit"
msgstr "Limit prędkości"
msgid "Processing"
msgstr "Przetwarzanie"
#. Queue page table column header - Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Order"
msgstr "Kolejność"
#. Queue page table column header - Job details page
#. Queue page table column header
#: sabnzbd/skintext.py
msgid "Name"
msgstr "Nazwa"
#. Queue page table column header, "estimated time of arrival"
#: sabnzbd/skintext.py
msgid "ETA"
msgstr "ETA"
#. Queue page table column header, "age of the NZB"
#: sabnzbd/skintext.py
msgid "AGE"
msgstr "Wiek"
#. Queue page table, "Delete" button
#: sabnzbd/skintext.py
msgid "Del"
msgstr "Usuń"
#. Queue page button
#: sabnzbd/skintext.py
msgid "Retry"
@@ -2454,11 +2265,6 @@ msgstr "Wyczyść NZB"
msgid "Purge NZBs & Delete Files"
msgstr "Wyczyść NZB i usuń pliki"
#. Retry all failed jobs dialog box
#: sabnzbd/skintext.py
msgid "Retry all failed jobs"
msgstr "Ponów wszystkie nieudane zadania"
#. Queue page button
#: sabnzbd/skintext.py
msgid "Remove NZB"
@@ -2469,11 +2275,6 @@ msgstr "Usuń NZB"
msgid "Remove NZB & Delete Files"
msgstr "Usuń NZB i pliki"
#. Queue page, as in "4G *of* 10G"
#: sabnzbd/skintext.py
msgid "of"
msgstr "z"
#. Caption for missing articles in Queue
#: sabnzbd/skintext.py
msgid "Missing articles"
@@ -2493,11 +2294,6 @@ msgstr "ręcznie"
msgid "Reset Quota now"
msgstr "Resetuj limit"
#. Confirmation popup
#: sabnzbd/skintext.py
msgid "Delete all completed items from History?"
msgstr "Usunąć z historii wszystkie ukończone pliki?"
#. Button/link hiding History job details
#: sabnzbd/skintext.py
msgid "Hide details"
@@ -2554,25 +2350,8 @@ msgstr "Ścieżka"
#. Retry all failed jobs in History
#: sabnzbd/skintext.py
msgid "Retry all failed"
msgstr "Ponów wszystkie nieudane"
#. Retry all button for Retry All Failed Jobs
#: sabnzbd/skintext.py
msgid "Retry All"
msgstr "Ponów wszystkie"
#: sabnzbd/skintext.py
msgid "Virus/spam"
msgstr "Wirus/spam"
#: sabnzbd/skintext.py
msgid "Out of retention"
msgstr "Poza okresem przechowywania"
#: sabnzbd/skintext.py
msgid "Other problem"
msgstr "Inny problem"
msgid "Retry all failed jobs"
msgstr "Ponów wszystkie nieudane zadania"
#. Status page button
#: sabnzbd/skintext.py
@@ -2624,21 +2403,6 @@ msgstr "+ Debugowanie"
msgid "Connections"
msgstr "Połączenia"
#. Status page, table header
#: sabnzbd/skintext.py
msgid "Latest Warnings"
msgstr "Ostatnie ostrzeżenia"
#. Status page button
#: sabnzbd/skintext.py
msgid "clear"
msgstr "wyczyść"
#. Status page button
#: sabnzbd/skintext.py
msgid "Unblock"
msgstr "Odblokuj"
#. Status page, article identifier
#: sabnzbd/skintext.py
msgid "Article identifier"
@@ -2649,26 +2413,11 @@ msgstr "Identyfikator artykułu"
msgid "File set"
msgstr "Zestaw plików"
#. Status page, table column header, when error occured
#: sabnzbd/skintext.py
msgid "When"
msgstr "Kiedy"
#. Status page, table column header, type of message - Config->RSS table
#. column header
#: sabnzbd/skintext.py
msgid "Type"
msgstr "Typ"
#. Status page, indicator that server is enabled
#: sabnzbd/skintext.py
msgid "Enabled"
msgstr "Włączony"
#: sabnzbd/skintext.py
msgid "Dashboard"
msgstr "Panel główny"
#: sabnzbd/skintext.py
msgid "Connection failed!"
msgstr "Połączenie nie powiodło się!"
@@ -2689,10 +2438,6 @@ msgstr "Adres IPv6"
msgid "Nameserver / DNS Lookup"
msgstr "Serwer DNS"
#: sabnzbd/skintext.py
msgid "CPU Model"
msgstr "Model procesora"
#: sabnzbd/skintext.py
msgid "Download speed limited by"
msgstr ""
@@ -2705,6 +2450,10 @@ msgstr ""
msgid "Disk speed"
msgstr ""
#: sabnzbd/skintext.py
msgid "System load"
msgstr ""
#. Do not translate Pystone
#: sabnzbd/skintext.py
msgid "System Performance (Pystone)"
@@ -2718,22 +2467,10 @@ msgstr "Szybkość zapisu w katalogu pobierania"
msgid "Complete folder speed"
msgstr "Szybkość zapisu w katalogu zakończonych"
#: sabnzbd/skintext.py
msgid "Writing speed"
msgstr "Szybkość zapisu"
#: sabnzbd/skintext.py
msgid "Could not write. Check that the directory is writable."
msgstr "Zapis nie powiódł się. Sprawdź uprawnienia katalogu do zapisu."
#: sabnzbd/skintext.py
msgid "Internet Bandwidth"
msgstr ""
#: sabnzbd/skintext.py
msgid "Click on Repeat test button below to determine"
msgstr "Kliknij znajdujący się poniżej przycisk Powtórz test, aby zmierzyć"
#: sabnzbd/skintext.py
msgid "Repeat test"
msgstr "Powtórz test"
@@ -2913,10 +2650,6 @@ msgstr ""
msgid "Enable HTTPS"
msgstr "Włącz HTTPS"
#: sabnzbd/skintext.py
msgid "not installed"
msgstr "nie zainstalowane"
#: sabnzbd/skintext.py
msgid "Enable accessing the interface from a HTTPS address."
msgstr "Włącz dostęp do interfejsu przez HTTPS"
@@ -3007,12 +2740,17 @@ msgstr ""
"dostępu do dysku.<br /><i>W bajtach, opcjonalnie z przyrostkiem K, M, G. "
"Przykład: \"64M\" lub \"128M\"</i>"
#. Config->Scheduling
#: sabnzbd/skintext.py
msgid "Download backup"
msgid "Create backup"
msgstr ""
#: sabnzbd/skintext.py
msgid "Save or restore a backup of the configuration file and databases."
msgid ""
"Create a backup of the configuration file and databases in the Backup "
"Folder.<br>If the Backup Folder is not set, the backup will be created in "
"the Completed Download Folder.<br>Recurring backups can be configured on the"
" Scheduling page."
msgstr ""
#: sabnzbd/skintext.py
@@ -3157,10 +2895,6 @@ msgstr "Katalogi użytkownika"
msgid "Browse"
msgstr "Przeglądaj"
#: sabnzbd/skintext.py
msgid "In"
msgstr "W"
#: sabnzbd/skintext.py
msgid "Temporary Download Folder"
msgstr "Tymczasowy katalog pobierania"
@@ -3294,6 +3028,17 @@ msgstr ""
"Lokalizacja bazy danych administracyjnych i historycznych kolejki.<br "
"/><i>Można zmienić tylko kiedy kolejka jest pusta.</i>"
#: sabnzbd/skintext.py
msgid "Backup Folder"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Location where the backups of the configuration file and databases are "
"stored.<br />If left empty, the backup will be created in the Completed "
"Download Folder."
msgstr ""
#: sabnzbd/skintext.py
msgid "<i>Data will <b>not</b> be moved. Requires SABnzbd restart!</i>"
msgstr "<i>Dane <b>nie</b> zostaną przeniesione. Wymaga restartu SABnzbd!</i>"
@@ -3483,16 +3228,6 @@ msgstr ""
"Niektóre serwery udostępniają alternatywne NZB, kiedy pobieranie kończy się "
"niepowodzeniem"
#: sabnzbd/skintext.py
msgid "Use tags from indexer"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"When sorting, use tags from indexer for title, season, episode, etc. "
"Otherwise all naming is derived from the NZB name."
msgstr ""
#: sabnzbd/skintext.py
msgid "Enable folder rename"
msgstr "Włącz zmianę nazw katalogów"
@@ -3545,6 +3280,14 @@ msgstr ""
msgid "Automatically sort jobs in the queue when a new job is added."
msgstr ""
#: sabnzbd/skintext.py
msgid "The queue will resort every 30 seconds if % downloaded is selected."
msgstr ""
#: sabnzbd/skintext.py
msgid "Propagation delay"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Posts will be paused untill they are at least this age. Setting job priority"
@@ -3572,6 +3315,14 @@ msgstr "Zastąp spacje w nazwach katalogów"
msgid "Replace spaces with underscores in folder names."
msgstr "Zastąp spacje w nazwach katalogów podkreśleniami"
#: sabnzbd/skintext.py
msgid "Replace underscores in folder name"
msgstr ""
#: sabnzbd/skintext.py
msgid "Replace underscores with dots in folder names."
msgstr ""
#: sabnzbd/skintext.py
msgid "Replace dots in Foldername"
msgstr "Zastąp kropki w nazwach katalogów"
@@ -3669,10 +3420,6 @@ msgstr "Nazwy"
msgid "Quota"
msgstr "Limit pobierania"
#: sabnzbd/skintext.py
msgid "Indexing"
msgstr "Indeksowanie"
#: sabnzbd/skintext.py
msgid "How much can be downloaded this month (K/M/G)"
msgstr "Ile danych można pobrać w miesiącu (K/M/G)"
@@ -3926,7 +3673,7 @@ msgstr "Dodaj harmonogram"
msgid "Frequency"
msgstr "Częstotliwość"
#. Config->Scheduling - Job details page, section header
#. Config->Scheduling
#: sabnzbd/skintext.py
msgid "Action"
msgstr "Działanie"
@@ -3978,6 +3725,16 @@ msgstr ""
msgid "Next scan at"
msgstr ""
#. Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Order"
msgstr "Kolejność"
#. Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Type"
msgstr "Typ"
#. Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Filter"
@@ -4322,11 +4079,6 @@ msgstr "Katalog/Ścieżka"
msgid "Indexer Categories / Groups"
msgstr ""
#. Small delete button
#: sabnzbd/skintext.py
msgid "X"
msgstr "X"
#. Warning message
#: sabnzbd/skintext.py, sabnzbd/sorting.py
msgid "Select at least 1 category."
@@ -4357,10 +4109,6 @@ msgstr ""
msgid "Presets"
msgstr "Predefiniowane"
#: sabnzbd/skintext.py
msgid "Example"
msgstr "Przykład"
#. Warning message
#: sabnzbd/skintext.py, sabnzbd/sorting.py
msgid "Movie Sorting"
@@ -4370,10 +4118,6 @@ msgstr ""
msgid "Enable Movie Sorting"
msgstr "Włącz sortowanie filmów"
#: sabnzbd/skintext.py
msgid "Keep loose downloads in extra folders"
msgstr "Trzymaj niesklasyfikowane zadania w dodatkowych katalogach"
#: sabnzbd/skintext.py
msgid "Affected Categories"
msgstr "Dotyczy kategorii"
@@ -4590,51 +4334,11 @@ msgstr "Edytuj szczegóły NZB"
msgid "Delete"
msgstr "Usuń"
#. Job details page, move file to top
#: sabnzbd/skintext.py
msgid "Top"
msgstr "Na górę"
#. Job details page, move file one place up
#: sabnzbd/skintext.py
msgid "Up"
msgstr "Wyżej"
#. Job details page, move file one place down
#: sabnzbd/skintext.py
msgid "Down"
msgstr "Niżej"
#. Job details page, move file to bottom
#: sabnzbd/skintext.py
msgid "Bottom"
msgstr "Na dół"
#. Job details page, select all files
#: sabnzbd/skintext.py
msgid "All"
msgstr "Wszystko"
#. Job details page, invert file selection
#: sabnzbd/skintext.py
msgid "Invert"
msgstr "Odwróć"
#. Job details page, filename column header
#: sabnzbd/skintext.py
msgid "Filename"
msgstr "Nazwa pliku"
#. Job details page, subject column header
#: sabnzbd/skintext.py
msgid "Subject"
msgstr "Temat"
#. Job details page, section header
#: sabnzbd/skintext.py
msgid "Selection"
msgstr "Zaznaczenie"
#: sabnzbd/skintext.py
msgid "Free Space"
msgstr "Wolne miejsce"
@@ -4659,6 +4363,10 @@ msgstr "Sprawdź wszystkie"
msgid "Restart SABnzbd"
msgstr "Uruchom ponownie SABnzbd"
#: sabnzbd/skintext.py
msgid "On queue finish"
msgstr "Po ukończeniu kolejki"
#: sabnzbd/skintext.py
msgid "Status and interface options"
msgstr "Stan i opcje interfejsu"
@@ -4736,6 +4444,10 @@ msgstr "Naprawa kolejki"
msgid "Show active connections"
msgstr "Pokaż aktywne połączenia"
#: sabnzbd/skintext.py
msgid "Unblock"
msgstr "Odblokuj"
#: sabnzbd/skintext.py
msgid "Orphaned jobs"
msgstr "Porzucone zadania"
@@ -4768,18 +4480,6 @@ msgstr "Opcjonalnie podaj nazwę pliku"
msgid "Submit"
msgstr "Wyślij"
#: sabnzbd/skintext.py
msgid "Open Informational URL"
msgstr "Otwórz URL informacyjny"
#: sabnzbd/skintext.py
msgid "Submitted. Thank you!"
msgstr "Wysłano. Dzięki!"
#: sabnzbd/skintext.py
msgid "Nothing selected!"
msgstr "Nic nie zaznaczono!"
#: sabnzbd/skintext.py
msgid "Remove all selected files"
msgstr "Usuń wszystkie zaznaczone pliki"
@@ -4788,6 +4488,14 @@ msgstr "Usuń wszystkie zaznaczone pliki"
msgid "Hide/show completed files"
msgstr "Pokaż/ukryj ukończone pliki"
#: sabnzbd/skintext.py
msgid "Top"
msgstr "Na górę"
#: sabnzbd/skintext.py
msgid "Bottom"
msgstr "Na dół"
#: sabnzbd/skintext.py
msgid "View Script Log"
msgstr "Zobacz log skryptu"
@@ -4806,6 +4514,10 @@ msgstr ""
msgid "Glitter has some (new) features you might like!"
msgstr ""
#: sabnzbd/skintext.py
msgid "Custom"
msgstr "Własny"
#: sabnzbd/skintext.py
msgid "Compact layout"
msgstr ""
@@ -4818,6 +4530,10 @@ msgstr ""
msgid "Tabbed layout <br/>(separate queue and history)"
msgstr ""
#: sabnzbd/skintext.py
msgid "Speed"
msgstr "Prędkość"
#: sabnzbd/skintext.py
msgid "Confirm Queue Deletions"
msgstr "Potwierdzaj usuwanie z kolejki"
@@ -4852,6 +4568,10 @@ msgid ""
" and the included copy of your settings."
msgstr ""
#: sabnzbd/skintext.py
msgid "Sort by % downloaded <small>Most&rarr;Least</small>"
msgstr ""
#: sabnzbd/skintext.py
msgid "Sort by Age <small>Oldest&rarr;Newest</small>"
msgstr "Sortuj według wieku <small>Najstarsze&rarr;Najnowsze</small>"
@@ -4998,18 +4718,6 @@ msgstr ""
"To jest wolne oprogramowanie i mile widziane jest dalsze rozpowszechnianie go przez ciebie na określonych warunkach.\n"
"Program jest wydawany na licencji GNU GENERAL PUBLIC LICENSE w wersji 2 lub (według twojego wyboru) którejś z późniejszych wersji.\n"
#: sabnzbd/skintext.py
msgid ""
"In order to download from usenet you will require access to a provider. Your"
" ISP may provide you with access, however a premium provider is recommended."
msgstr ""
"Pobieranie z Usenetu wymaga dostępu do dostawcy. Twój ISP może umożliwiać "
"dostęp, aczkolwiek zalecany jest dostawca klasy premium."
#: sabnzbd/skintext.py
msgid "Don't have a usenet provider? We recommend trying %s."
msgstr "Nie masz dostawcy Usenet? Polecamy spróbować %s."
#. Error message
#: sabnzbd/sorting.py
msgid "Failed to rename: %s to %s"
@@ -5082,10 +4790,6 @@ msgid ""
"Unknown SSL protocol: Try disabling SSL or connecting on a different port."
msgstr ""
#: sabnzbd/utils/servertests.py
msgid "Invalid server address."
msgstr "Nieprawidłowy adres serwera."
#: sabnzbd/utils/servertests.py
msgid "Server quit during login sequence."
msgstr "Serwer przerwał połączenie w trakcie logowania."

View File

@@ -7,7 +7,7 @@
#
msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
"Project-Id-Version: SABnzbd-3.7.0-develop\n"
"PO-Revision-Date: 2020-06-27 15:49+0000\n"
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2022\n"
"Language-Team: Portuguese (Brazil) (https://www.transifex.com/sabnzbd/teams/111101/pt_BR/)\n"
@@ -15,7 +15,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: pt_BR\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"Plural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"
#. Notification - Status page, table column header, actual message
#: SABnzbd.py, sabnzbd/notifier.py, sabnzbd/skintext.py
@@ -181,11 +181,7 @@ msgstr "Notificação de teste"
msgid "&nbsp;Resolving address"
msgstr "&nbsp;Resolvendo endereço"
#: sabnzbd/api.py
msgid "unknown"
msgstr "desconhecido"
#. No value, used in dropdown menus - Job details page, select no files
#. No value, used in dropdown menus
#: sabnzbd/api.py, sabnzbd/skintext.py
msgid "None"
msgstr "Nenhum"
@@ -282,6 +278,10 @@ msgstr "%s não é um endereço de e-mail válido"
msgid "Server address required"
msgstr "Endereço do servidor necessário"
#: sabnzbd/cfg.py, sabnzbd/utils/servertests.py
msgid "Invalid server address."
msgstr "Endereço do servidor inválido."
#: sabnzbd/cfg.py
msgid "%s is not a valid script"
msgstr ""
@@ -379,7 +379,7 @@ msgstr ""
msgid "Direct Unpack"
msgstr ""
#. PP status - History: job status
#. PP status
#: sabnzbd/directunpacker.py, sabnzbd/skintext.py
msgid "Completed"
msgstr "Concluído"
@@ -435,6 +435,11 @@ msgstr "Nome de servidor não encontrado"
msgid "Server %s will be ignored for %s minutes"
msgstr "O servidor %s será ignorado por %s minutos"
#. Warning message
#: sabnzbd/downloader.py
msgid "There are no active servers!"
msgstr ""
#. Error message
#: sabnzbd/downloader.py
msgid "Failed to initialize %s@%s with reason: %s"
@@ -600,6 +605,18 @@ msgstr "Falha ao salvar %s"
msgid "Loading %s failed"
msgstr "Falha ao carregar %s"
#. Warning message
#: sabnzbd/filesystem.py
msgid ""
"%s is not writable with special character filenames. This can cause "
"problems."
msgstr ""
#. Warning message
#: sabnzbd/filesystem.py
msgid "%s is not writable at all. This blocks downloads."
msgstr ""
#: sabnzbd/interface.py
msgid "Refused connection from:"
msgstr ""
@@ -633,14 +650,6 @@ msgstr ""
"Chave de API incorreta. Use a chave de API de Configuração->Geral em seu "
"programa de terceiros:"
#: sabnzbd/interface.py
msgid ""
"Authentication missing, please enter username/password from Config->General "
"into your 3rd party program:"
msgstr ""
"Autenticação faltando. Por favor insira usuário/senha de Configuração->Geral"
" em seu programa de terceiros:"
#: sabnzbd/interface.py, sabnzbd/newswrapper.py, sabnzbd/utils/servertests.py
msgid "Authentication failed, check username/password."
msgstr "Falha de autenticação, verifique usuário / senha."
@@ -1185,27 +1194,27 @@ msgstr "Cancelado, não é possível concluir"
msgid "Error importing %s"
msgstr "Erro ao importar %s"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "DUPLICATE"
msgstr "DUPLICADO"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "ENCRYPTED"
msgstr "CRIPTOGRAFADO"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "TOO LARGE"
msgstr "MUITO GRANDE"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "INCOMPLETE"
msgstr "INCOMPLETO"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "UNWANTED"
msgstr "INDESEJADO"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "WAIT %s sec"
msgstr "Espere %s segundo(s)"
@@ -1558,13 +1567,13 @@ msgid "Trying RAR-based verification"
msgstr ""
#: sabnzbd/postproc.py
msgid "[%s] RAR-based verification failed: %s"
msgstr ""
#: sabnzbd/postproc.py, sabnzbd/skintext.py
msgid "Passworded"
msgstr "com senha"
#: sabnzbd/postproc.py
msgid "[%s] RAR-based verification failed: %s"
msgstr ""
#: sabnzbd/postproc.py
msgid "RAR files verified successfully"
msgstr ""
@@ -1680,7 +1689,7 @@ msgstr "Pausar por 3 horas"
msgid "Pause for 6 hours"
msgstr "Pausar por 6 horas"
#. Shutdown SABnzbd - Config->Scheduling
#. Config->Scheduling
#: sabnzbd/sabtray.py, sabnzbd/sabtraylinux.py, sabnzbd/skintext.py
msgid "Shutdown"
msgstr "Encerrar"
@@ -1749,11 +1758,6 @@ msgstr "Código fonte"
msgid "Servers"
msgstr "Servidores"
#. PP Failure message
#: sabnzbd/skintext.py
msgid "Failure"
msgstr "Falha"
#. PP status
#: sabnzbd/skintext.py
msgid "Failed"
@@ -1799,20 +1803,6 @@ msgstr "Verificação Rápida..."
msgid "Verifying..."
msgstr "Verificando..."
#. Pseudo-PP status, in reality used for Queue-status
#: sabnzbd/skintext.py
msgid "Downloading"
msgstr "Baixando"
#: sabnzbd/skintext.py
msgid "Propagation delay"
msgstr ""
#. #: Config->Scheduler
#: sabnzbd/skintext.py
msgid "Task"
msgstr "Tarefa"
#. #: Config->Scheduler
#: sabnzbd/skintext.py
msgid "disable server"
@@ -1943,21 +1933,6 @@ msgstr "Emergencial"
msgid "Low"
msgstr "Baixa"
#. Megabytes
#: sabnzbd/skintext.py
msgid "MB"
msgstr "MB"
#. Gigabytes
#: sabnzbd/skintext.py
msgid "GB"
msgstr "GB"
#. Bytes (used as postfix, as in "GB", "TB")
#: sabnzbd/skintext.py
msgid "B"
msgstr "B"
#. One hour
#: sabnzbd/skintext.py
msgid "hour"
@@ -2003,54 +1978,6 @@ msgstr "Mês"
msgid "Year"
msgstr "Ano"
#: sabnzbd/skintext.py
msgid "January"
msgstr ""
#: sabnzbd/skintext.py
msgid "February"
msgstr ""
#: sabnzbd/skintext.py
msgid "March"
msgstr ""
#: sabnzbd/skintext.py
msgid "April"
msgstr ""
#: sabnzbd/skintext.py
msgid "May"
msgstr ""
#: sabnzbd/skintext.py
msgid "June"
msgstr ""
#: sabnzbd/skintext.py
msgid "July"
msgstr ""
#: sabnzbd/skintext.py
msgid "August"
msgstr ""
#: sabnzbd/skintext.py
msgid "September"
msgstr ""
#: sabnzbd/skintext.py
msgid "October"
msgstr ""
#: sabnzbd/skintext.py
msgid "November"
msgstr ""
#: sabnzbd/skintext.py
msgid "December"
msgstr ""
#: sabnzbd/skintext.py
msgid "Day of month"
msgstr "Dia do mês"
@@ -2075,14 +2002,6 @@ msgstr "Hoje"
msgid "Total"
msgstr "Total"
#: sabnzbd/skintext.py
msgid "Custom"
msgstr "Personalizado"
#: sabnzbd/skintext.py
msgid "Speed"
msgstr "Velocidade"
#: sabnzbd/skintext.py
msgid "on"
msgstr "ligado"
@@ -2111,42 +2030,10 @@ msgstr "ou"
msgid "Host"
msgstr "Host"
#: sabnzbd/skintext.py
msgid "Comment"
msgstr "Comentário"
#: sabnzbd/skintext.py
msgid "Send"
msgstr "Enviar"
#: sabnzbd/skintext.py
msgid "Cancel"
msgstr "Cancelar"
#: sabnzbd/skintext.py
msgid "Other"
msgstr "Outros"
#: sabnzbd/skintext.py
msgid "Report"
msgstr "Informar"
#: sabnzbd/skintext.py
msgid "Video"
msgstr "Vídeo"
#: sabnzbd/skintext.py
msgid "Audio"
msgstr "Áudio"
#: sabnzbd/skintext.py
msgid "Not used"
msgstr "Não utilizado"
#: sabnzbd/skintext.py
msgid "or less"
msgstr "ou menos"
#: sabnzbd/skintext.py
msgid "Log in"
msgstr ""
@@ -2159,11 +2046,6 @@ msgstr ""
msgid "Remember me"
msgstr ""
#. SABnzbd's theme line
#: sabnzbd/skintext.py
msgid "The automatic usenet download tool"
msgstr "A ferramenta de download automático da usenet"
#. "Save" button
#: sabnzbd/skintext.py
msgid "Save"
@@ -2178,11 +2060,6 @@ msgstr "Salvando..."
msgid "Are you sure?"
msgstr "Você tem certeza?"
#. Used in confirmation popups
#: sabnzbd/skintext.py
msgid "Delete all downloaded files?"
msgstr "Excluir todos os arquivos baixados?"
#. Main menu item
#: sabnzbd/skintext.py
msgid "Home"
@@ -2221,7 +2098,7 @@ msgstr ""
#. Main menu item
#: sabnzbd/skintext.py
msgid "Support the project, Donate!"
msgstr ""
msgstr "Apoie o projeto. Faça uma doação!"
#. Main menu item
#: sabnzbd/skintext.py
@@ -2282,22 +2159,6 @@ msgstr "Busca"
msgid "Download Dir"
msgstr "Pasta de Download"
#: sabnzbd/skintext.py
msgid "PAUSED"
msgstr "EM PAUSA"
#: sabnzbd/skintext.py
msgid "Cached %s articles (%s)"
msgstr "%s artigos em cache (%s)"
#: sabnzbd/skintext.py
msgid "Sysload"
msgstr "Carga do sistema"
#: sabnzbd/skintext.py
msgid "New release %s available at"
msgstr "Nova versão %s disponível em"
#: sabnzbd/skintext.py
msgid "Are you sure you want to shutdown SABnzbd?"
msgstr "Tem certeza de que quer encerrar o SABnzbd?"
@@ -2307,21 +2168,11 @@ msgstr "Tem certeza de que quer encerrar o SABnzbd?"
msgid "Add"
msgstr "Adicionar"
#. Add NZB file to queue (header
#: sabnzbd/skintext.py
msgid "Add File"
msgstr "Adicionar Arquivo"
#. Job category
#: sabnzbd/skintext.py
msgid "Category"
msgstr "Categoria"
#. Queue page table column header
#: sabnzbd/skintext.py
msgid "Processing"
msgstr "Processamento"
#. Server priority
#: sabnzbd/skintext.py
msgid "Priority"
@@ -2342,21 +2193,6 @@ msgstr "+Descompactar"
msgid "+Delete"
msgstr "+Excluir"
#. Post processing pick list: abbreviation for "+Repair"
#: sabnzbd/skintext.py
msgid "R"
msgstr "R"
#. Post processing pick list: abbreviation for "+Unpack"
#: sabnzbd/skintext.py
msgid "U"
msgstr "U"
#. Post processing pick list: abbreviation for "+Delete"
#: sabnzbd/skintext.py
msgid "D"
msgstr "D"
#. Priority pick list
#: sabnzbd/skintext.py
msgid "Force"
@@ -2372,11 +2208,6 @@ msgstr "Parar"
msgid "Enter URL"
msgstr "Digite a URL"
#. Queue page selection menu
#: sabnzbd/skintext.py
msgid "On queue finish"
msgstr "Ao terminar a fila"
#. Queue page end-of-queue action
#: sabnzbd/skintext.py
msgid "Shutdown PC"
@@ -2397,36 +2228,16 @@ msgstr "Hibernar o PC"
msgid "Shutdown SABnzbd"
msgstr "Encerrar o SABnzbd"
#. Queue page selection menu or entry box
#. Queue page table column header
#: sabnzbd/skintext.py
msgid "Speed Limit"
msgstr "Limite de velocidade"
msgid "Processing"
msgstr "Processamento"
#. Queue page table column header - Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Order"
msgstr "Ordem"
#. Queue page table column header - Job details page
#. Queue page table column header
#: sabnzbd/skintext.py
msgid "Name"
msgstr "Nome"
#. Queue page table column header, "estimated time of arrival"
#: sabnzbd/skintext.py
msgid "ETA"
msgstr "Estimado"
#. Queue page table column header, "age of the NZB"
#: sabnzbd/skintext.py
msgid "AGE"
msgstr "IDADE"
#. Queue page table, "Delete" button
#: sabnzbd/skintext.py
msgid "Del"
msgstr "Apagar"
#. Queue page button
#: sabnzbd/skintext.py
msgid "Retry"
@@ -2457,11 +2268,6 @@ msgstr "Limpar NZBs"
msgid "Purge NZBs & Delete Files"
msgstr "Limpar NZBs & Excluir Arquivos"
#. Retry all failed jobs dialog box
#: sabnzbd/skintext.py
msgid "Retry all failed jobs"
msgstr "Atualizar todos os trabalhos com falha"
#. Queue page button
#: sabnzbd/skintext.py
msgid "Remove NZB"
@@ -2472,11 +2278,6 @@ msgstr "Remover NZB"
msgid "Remove NZB & Delete Files"
msgstr "Remover NZB & Excluir Arquivos"
#. Queue page, as in "4G *of* 10G"
#: sabnzbd/skintext.py
msgid "of"
msgstr "de"
#. Caption for missing articles in Queue
#: sabnzbd/skintext.py
msgid "Missing articles"
@@ -2496,11 +2297,6 @@ msgstr "manual"
msgid "Reset Quota now"
msgstr "Redefinir Quota agora"
#. Confirmation popup
#: sabnzbd/skintext.py
msgid "Delete all completed items from History?"
msgstr "Eliminar do histórico todos os itens concluídos?"
#. Button/link hiding History job details
#: sabnzbd/skintext.py
msgid "Hide details"
@@ -2557,25 +2353,8 @@ msgstr "Caminho"
#. Retry all failed jobs in History
#: sabnzbd/skintext.py
msgid "Retry all failed"
msgstr "Atualizar todos com falha"
#. Retry all button for Retry All Failed Jobs
#: sabnzbd/skintext.py
msgid "Retry All"
msgstr "Atualizar todos"
#: sabnzbd/skintext.py
msgid "Virus/spam"
msgstr "Virus/spam"
#: sabnzbd/skintext.py
msgid "Out of retention"
msgstr "Fora da retenção"
#: sabnzbd/skintext.py
msgid "Other problem"
msgstr "Outro problema"
msgid "Retry all failed jobs"
msgstr "Atualizar todos os trabalhos com falha"
#. Status page button
#: sabnzbd/skintext.py
@@ -2627,21 +2406,6 @@ msgstr "+ Debug"
msgid "Connections"
msgstr "Conexões"
#. Status page, table header
#: sabnzbd/skintext.py
msgid "Latest Warnings"
msgstr "Últimos Alertas"
#. Status page button
#: sabnzbd/skintext.py
msgid "clear"
msgstr "limpar"
#. Status page button
#: sabnzbd/skintext.py
msgid "Unblock"
msgstr "Desbloquear"
#. Status page, article identifier
#: sabnzbd/skintext.py
msgid "Article identifier"
@@ -2652,26 +2416,11 @@ msgstr "Identificador de artigo"
msgid "File set"
msgstr "Conjunto de arquivos"
#. Status page, table column header, when error occured
#: sabnzbd/skintext.py
msgid "When"
msgstr "Quando"
#. Status page, table column header, type of message - Config->RSS table
#. column header
#: sabnzbd/skintext.py
msgid "Type"
msgstr "Tipo"
#. Status page, indicator that server is enabled
#: sabnzbd/skintext.py
msgid "Enabled"
msgstr "Ativo"
#: sabnzbd/skintext.py
msgid "Dashboard"
msgstr "Painel de controle"
#: sabnzbd/skintext.py
msgid "Connection failed!"
msgstr "Conexão falhou!"
@@ -2692,10 +2441,6 @@ msgstr "Endereço IPv6"
msgid "Nameserver / DNS Lookup"
msgstr "Nome do servidor / DNS Lookup"
#: sabnzbd/skintext.py
msgid "CPU Model"
msgstr "Modelo da CPU"
#: sabnzbd/skintext.py
msgid "Download speed limited by"
msgstr ""
@@ -2708,6 +2453,10 @@ msgstr ""
msgid "Disk speed"
msgstr ""
#: sabnzbd/skintext.py
msgid "System load"
msgstr ""
#. Do not translate Pystone
#: sabnzbd/skintext.py
msgid "System Performance (Pystone)"
@@ -2721,24 +2470,10 @@ msgstr "Velocidade de download da pasta"
msgid "Complete folder speed"
msgstr "Completar velocidade da pasta"
#: sabnzbd/skintext.py
msgid "Writing speed"
msgstr "Velocidade de escrita"
#: sabnzbd/skintext.py
msgid "Could not write. Check that the directory is writable."
msgstr ""
"Não foi possível escrever. Verifique se o diretória tem permissão de "
"escrita."
#: sabnzbd/skintext.py
msgid "Internet Bandwidth"
msgstr ""
#: sabnzbd/skintext.py
msgid "Click on Repeat test button below to determine"
msgstr "Clique no botão de Repetir abaixo para determinar"
#: sabnzbd/skintext.py
msgid "Repeat test"
msgstr "Repetir teste"
@@ -2918,10 +2653,6 @@ msgstr ""
msgid "Enable HTTPS"
msgstr "Habilitar HTTPS"
#: sabnzbd/skintext.py
msgid "not installed"
msgstr "não instalado"
#: sabnzbd/skintext.py
msgid "Enable accessing the interface from a HTTPS address."
msgstr "Ativar acesso à interface por um endereço HTTPS."
@@ -3011,12 +2742,17 @@ 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>"
#. Config->Scheduling
#: sabnzbd/skintext.py
msgid "Download backup"
msgid "Create backup"
msgstr ""
#: sabnzbd/skintext.py
msgid "Save or restore a backup of the configuration file and databases."
msgid ""
"Create a backup of the configuration file and databases in the Backup "
"Folder.<br>If the Backup Folder is not set, the backup will be created in "
"the Completed Download Folder.<br>Recurring backups can be configured on the"
" Scheduling page."
msgstr ""
#: sabnzbd/skintext.py
@@ -3161,10 +2897,6 @@ msgstr "Usar Pastas"
msgid "Browse"
msgstr "Navegar"
#: sabnzbd/skintext.py
msgid "In"
msgstr "Em"
#: sabnzbd/skintext.py
msgid "Temporary Download Folder"
msgstr "Pasta Temporária de Downloads"
@@ -3296,6 +3028,17 @@ msgstr ""
"Localização do banco de dados de histórico e administrador de fila.<br "
"/><i>Só pode ser alterado quando a fila estiver vazia.</i>"
#: sabnzbd/skintext.py
msgid "Backup Folder"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Location where the backups of the configuration file and databases are "
"stored.<br />If left empty, the backup will be created in the Completed "
"Download Folder."
msgstr ""
#: sabnzbd/skintext.py
msgid "<i>Data will <b>not</b> be moved. Requires SABnzbd restart!</i>"
msgstr ""
@@ -3486,16 +3229,6 @@ msgid "Some servers provide an alternative NZB when a download fails."
msgstr ""
"Alguns servidores fornecem um NZB alternativo quando um download falha."
#: sabnzbd/skintext.py
msgid "Use tags from indexer"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"When sorting, use tags from indexer for title, season, episode, etc. "
"Otherwise all naming is derived from the NZB name."
msgstr ""
#: sabnzbd/skintext.py
msgid "Enable folder rename"
msgstr "Habilitar renomeação de pasta"
@@ -3550,6 +3283,14 @@ msgstr ""
msgid "Automatically sort jobs in the queue when a new job is added."
msgstr ""
#: sabnzbd/skintext.py
msgid "The queue will resort every 30 seconds if % downloaded is selected."
msgstr ""
#: sabnzbd/skintext.py
msgid "Propagation delay"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Posts will be paused untill they are at least this age. Setting job priority"
@@ -3577,6 +3318,14 @@ msgstr "Substituir espaços no nome da pasta"
msgid "Replace spaces with underscores in folder names."
msgstr "Substituir espaços por sublinhado no nome das pastas."
#: sabnzbd/skintext.py
msgid "Replace underscores in folder name"
msgstr ""
#: sabnzbd/skintext.py
msgid "Replace underscores with dots in folder names."
msgstr ""
#: sabnzbd/skintext.py
msgid "Replace dots in Foldername"
msgstr "Substituir pontos no nome da pasta"
@@ -3674,10 +3423,6 @@ msgstr "Nomeando"
msgid "Quota"
msgstr "Quota"
#: sabnzbd/skintext.py
msgid "Indexing"
msgstr "Indexação"
#: sabnzbd/skintext.py
msgid "How much can be downloaded this month (K/M/G)"
msgstr "Quanto pode ser baixado neste mês (K/M/G)"
@@ -3930,7 +3675,7 @@ msgstr "Adicionar Agendamento"
msgid "Frequency"
msgstr "Frequência"
#. Config->Scheduling - Job details page, section header
#. Config->Scheduling
#: sabnzbd/skintext.py
msgid "Action"
msgstr "Ação"
@@ -3982,6 +3727,16 @@ msgstr ""
msgid "Next scan at"
msgstr ""
#. Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Order"
msgstr "Ordem"
#. Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Type"
msgstr "Tipo"
#. Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Filter"
@@ -4326,11 +4081,6 @@ msgstr "Pasta/Caminho"
msgid "Indexer Categories / Groups"
msgstr ""
#. Small delete button
#: sabnzbd/skintext.py
msgid "X"
msgstr "X"
#. Warning message
#: sabnzbd/skintext.py, sabnzbd/sorting.py
msgid "Select at least 1 category."
@@ -4361,10 +4111,6 @@ msgstr ""
msgid "Presets"
msgstr "Predefinições"
#: sabnzbd/skintext.py
msgid "Example"
msgstr "Exemplo"
#. Warning message
#: sabnzbd/skintext.py, sabnzbd/sorting.py
msgid "Movie Sorting"
@@ -4374,10 +4120,6 @@ msgstr ""
msgid "Enable Movie Sorting"
msgstr "Ativar a ordenação de filmes"
#: sabnzbd/skintext.py
msgid "Keep loose downloads in extra folders"
msgstr "Manter em pastas separadas os downloads soltos"
#: sabnzbd/skintext.py
msgid "Affected Categories"
msgstr "Categorias Afetadas"
@@ -4594,51 +4336,11 @@ msgstr "Editar Detalhes do NZB"
msgid "Delete"
msgstr "Eliminar"
#. Job details page, move file to top
#: sabnzbd/skintext.py
msgid "Top"
msgstr "Topo"
#. Job details page, move file one place up
#: sabnzbd/skintext.py
msgid "Up"
msgstr "Para cima"
#. Job details page, move file one place down
#: sabnzbd/skintext.py
msgid "Down"
msgstr "Para baixo"
#. Job details page, move file to bottom
#: sabnzbd/skintext.py
msgid "Bottom"
msgstr "Base"
#. Job details page, select all files
#: sabnzbd/skintext.py
msgid "All"
msgstr "Todos"
#. Job details page, invert file selection
#: sabnzbd/skintext.py
msgid "Invert"
msgstr "Inverter"
#. Job details page, filename column header
#: sabnzbd/skintext.py
msgid "Filename"
msgstr "Nome do arquivo"
#. Job details page, subject column header
#: sabnzbd/skintext.py
msgid "Subject"
msgstr "Assunto"
#. Job details page, section header
#: sabnzbd/skintext.py
msgid "Selection"
msgstr "Seleção"
#: sabnzbd/skintext.py
msgid "Free Space"
msgstr "Espaço Disponível"
@@ -4663,6 +4365,10 @@ msgstr "Selecionar todos"
msgid "Restart SABnzbd"
msgstr "Reiniciar SABnzbd"
#: sabnzbd/skintext.py
msgid "On queue finish"
msgstr "Ao terminar a fila"
#: sabnzbd/skintext.py
msgid "Status and interface options"
msgstr "Estado e opções de interface"
@@ -4740,6 +4446,10 @@ msgstr "Reparação da fila"
msgid "Show active connections"
msgstr "Exibir conexões ativas"
#: sabnzbd/skintext.py
msgid "Unblock"
msgstr "Desbloquear"
#: sabnzbd/skintext.py
msgid "Orphaned jobs"
msgstr "Trabalhos órfãos"
@@ -4772,18 +4482,6 @@ msgstr "Opcionalmente, especifique um nome de arquivo"
msgid "Submit"
msgstr "Enviar"
#: sabnzbd/skintext.py
msgid "Open Informational URL"
msgstr "Abrir URL Informativa"
#: sabnzbd/skintext.py
msgid "Submitted. Thank you!"
msgstr "Enviado. Obrigado!"
#: sabnzbd/skintext.py
msgid "Nothing selected!"
msgstr "Nada selecionado!"
#: sabnzbd/skintext.py
msgid "Remove all selected files"
msgstr "Remover todos os arquivos selecionados"
@@ -4792,6 +4490,14 @@ msgstr "Remover todos os arquivos selecionados"
msgid "Hide/show completed files"
msgstr "Esconder/Exibir arquivos completos"
#: sabnzbd/skintext.py
msgid "Top"
msgstr "Topo"
#: sabnzbd/skintext.py
msgid "Bottom"
msgstr "Base"
#: sabnzbd/skintext.py
msgid "View Script Log"
msgstr "Exibir Log do Script"
@@ -4810,6 +4516,10 @@ msgstr ""
msgid "Glitter has some (new) features you might like!"
msgstr ""
#: sabnzbd/skintext.py
msgid "Custom"
msgstr "Personalizado"
#: sabnzbd/skintext.py
msgid "Compact layout"
msgstr ""
@@ -4822,6 +4532,10 @@ msgstr ""
msgid "Tabbed layout <br/>(separate queue and history)"
msgstr ""
#: sabnzbd/skintext.py
msgid "Speed"
msgstr "Velocidade"
#: sabnzbd/skintext.py
msgid "Confirm Queue Deletions"
msgstr "Confirmar Exclusões da Fila"
@@ -4856,6 +4570,10 @@ msgid ""
" and the included copy of your settings."
msgstr ""
#: sabnzbd/skintext.py
msgid "Sort by % downloaded <small>Most&rarr;Least</small>"
msgstr ""
#: sabnzbd/skintext.py
msgid "Sort by Age <small>Oldest&rarr;Newest</small>"
msgstr "Ordenar por Idade <small>Mais antigo&rarr;Mais novo</small>"
@@ -5002,19 +4720,6 @@ msgstr ""
"É software livre, e você está convidado a redistribuí-lo sob certas condições.\n"
"Está licenciado sob a LICENÇA PÚBLICA GERAL GNU Versão 2 ou (a seu critério) qualquer versão posterior.\n"
#: sabnzbd/skintext.py
msgid ""
"In order to download from usenet you will require access to a provider. Your"
" ISP may provide you with access, however a premium provider is recommended."
msgstr ""
"Para baixar a partir da usenet você precisa ter acesso a um provedor. Seu "
"provedor de Internet pode fornecer-lhe acesso, no entanto, um provedor "
"exclusivo é recomendado."
#: sabnzbd/skintext.py
msgid "Don't have a usenet provider? We recommend trying %s."
msgstr "Não tem um provedor usenet? Recomendamos testar %s."
#. Error message
#: sabnzbd/sorting.py
msgid "Failed to rename: %s to %s"
@@ -5084,10 +4789,6 @@ msgid ""
"Unknown SSL protocol: Try disabling SSL or connecting on a different port."
msgstr ""
#: sabnzbd/utils/servertests.py
msgid "Invalid server address."
msgstr "Endereço do servidor inválido."
#: sabnzbd/utils/servertests.py
msgid "Server quit during login sequence."
msgstr "Servidor parou durante a sequência de login."

View File

@@ -8,7 +8,7 @@
#
msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
"Project-Id-Version: SABnzbd-3.7.0-develop\n"
"PO-Revision-Date: 2020-06-27 15:49+0000\n"
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2022\n"
"Language-Team: Romanian (https://www.transifex.com/sabnzbd/teams/111101/ro/)\n"
@@ -187,11 +187,7 @@ msgstr "Notificări Test"
msgid "&nbsp;Resolving address"
msgstr "&nbsp;Reolvare adresă"
#: sabnzbd/api.py
msgid "unknown"
msgstr "necunoscut"
#. No value, used in dropdown menus - Job details page, select no files
#. No value, used in dropdown menus
#: sabnzbd/api.py, sabnzbd/skintext.py
msgid "None"
msgstr "Niciunul"
@@ -294,6 +290,10 @@ msgstr "%s nu este o adresă email validă"
msgid "Server address required"
msgstr "Adresă server necesară"
#: sabnzbd/cfg.py, sabnzbd/utils/servertests.py
msgid "Invalid server address."
msgstr "Adresă server invalidă"
#: sabnzbd/cfg.py
msgid "%s is not a valid script"
msgstr ""
@@ -390,7 +390,7 @@ msgstr ""
msgid "Direct Unpack"
msgstr "Dezarhivare directă"
#. PP status - History: job status
#. PP status
#: sabnzbd/directunpacker.py, sabnzbd/skintext.py
msgid "Completed"
msgstr "Finalizat"
@@ -449,6 +449,11 @@ msgstr "Numele de server nu se rezolvă la DNS"
msgid "Server %s will be ignored for %s minutes"
msgstr "Serverul %s va fi ignorat pentru %s minute"
#. Warning message
#: sabnzbd/downloader.py
msgid "There are no active servers!"
msgstr ""
#. Error message
#: sabnzbd/downloader.py
msgid "Failed to initialize %s@%s with reason: %s"
@@ -614,6 +619,18 @@ msgstr "Salvarea %s nereuşită"
msgid "Loading %s failed"
msgstr "Încărcarea %s nereuşită"
#. Warning message
#: sabnzbd/filesystem.py
msgid ""
"%s is not writable with special character filenames. This can cause "
"problems."
msgstr ""
#. Warning message
#: sabnzbd/filesystem.py
msgid "%s is not writable at all. This blocks downloads."
msgstr ""
#: sabnzbd/interface.py
msgid "Refused connection from:"
msgstr ""
@@ -647,14 +664,6 @@ msgstr ""
"Cheie API incorectă, Folosiţi cheia api din Configurare->General în "
"programul dumneavoastră terţ:"
#: sabnzbd/interface.py
msgid ""
"Authentication missing, please enter username/password from Config->General "
"into your 3rd party program:"
msgstr ""
"Autentificare lipsă, vă rugăm să introduceţi numele de utilizator/parola de "
"la Configurare->General în programul dumneavoastră terţ:"
#: sabnzbd/interface.py, sabnzbd/newswrapper.py, sabnzbd/utils/servertests.py
msgid "Authentication failed, check username/password."
msgstr "Autentificare nereuşită, verifică nume utilizator/parolă."
@@ -1211,27 +1220,27 @@ msgstr "Anulat nu poate fi finalizat"
msgid "Error importing %s"
msgstr "Eroare importare %s"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "DUPLICATE"
msgstr "DUPLICAT"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "ENCRYPTED"
msgstr "ENCRIPTAT"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "TOO LARGE"
msgstr "PREA MARE"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "INCOMPLETE"
msgstr "INCOMPLET"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "UNWANTED"
msgstr "NEDORIT"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "WAIT %s sec"
msgstr "AŞTEAPTĂ %s sec"
@@ -1587,13 +1596,13 @@ msgid "Trying RAR-based verification"
msgstr "Încerc verificare RAR"
#: sabnzbd/postproc.py
msgid "[%s] RAR-based verification failed: %s"
msgstr "[%s] verificarea RAR a eșuat: %s"
#: sabnzbd/postproc.py, sabnzbd/skintext.py
msgid "Passworded"
msgstr "Parolat"
#: sabnzbd/postproc.py
msgid "[%s] RAR-based verification failed: %s"
msgstr "[%s] verificarea RAR a eșuat: %s"
#: sabnzbd/postproc.py
msgid "RAR files verified successfully"
msgstr "Fișierele RAR verificate cu succes"
@@ -1708,7 +1717,7 @@ msgstr "Pauză timp de 3 ore"
msgid "Pause for 6 hours"
msgstr "Pauză timp de 6 ore"
#. Shutdown SABnzbd - Config->Scheduling
#. Config->Scheduling
#: sabnzbd/sabtray.py, sabnzbd/sabtraylinux.py, sabnzbd/skintext.py
msgid "Shutdown"
msgstr "Închidere"
@@ -1777,11 +1786,6 @@ msgstr "Sursă"
msgid "Servers"
msgstr "Servere"
#. PP Failure message
#: sabnzbd/skintext.py
msgid "Failure"
msgstr "Nereuşit"
#. PP status
#: sabnzbd/skintext.py
msgid "Failed"
@@ -1827,20 +1831,6 @@ msgstr "Verificare Rapidă..."
msgid "Verifying..."
msgstr "Verificare..."
#. Pseudo-PP status, in reality used for Queue-status
#: sabnzbd/skintext.py
msgid "Downloading"
msgstr "Descărcare"
#: sabnzbd/skintext.py
msgid "Propagation delay"
msgstr "Întârziere de propagare"
#. #: Config->Scheduler
#: sabnzbd/skintext.py
msgid "Task"
msgstr "Sarcină"
#. #: Config->Scheduler
#: sabnzbd/skintext.py
msgid "disable server"
@@ -1971,21 +1961,6 @@ msgstr "Urgență"
msgid "Low"
msgstr "Scăzută"
#. Megabytes
#: sabnzbd/skintext.py
msgid "MB"
msgstr "MB"
#. Gigabytes
#: sabnzbd/skintext.py
msgid "GB"
msgstr "GB"
#. Bytes (used as postfix, as in "GB", "TB")
#: sabnzbd/skintext.py
msgid "B"
msgstr "B"
#. One hour
#: sabnzbd/skintext.py
msgid "hour"
@@ -2031,54 +2006,6 @@ msgstr "Lună"
msgid "Year"
msgstr "An"
#: sabnzbd/skintext.py
msgid "January"
msgstr ""
#: sabnzbd/skintext.py
msgid "February"
msgstr ""
#: sabnzbd/skintext.py
msgid "March"
msgstr ""
#: sabnzbd/skintext.py
msgid "April"
msgstr ""
#: sabnzbd/skintext.py
msgid "May"
msgstr ""
#: sabnzbd/skintext.py
msgid "June"
msgstr ""
#: sabnzbd/skintext.py
msgid "July"
msgstr ""
#: sabnzbd/skintext.py
msgid "August"
msgstr ""
#: sabnzbd/skintext.py
msgid "September"
msgstr ""
#: sabnzbd/skintext.py
msgid "October"
msgstr ""
#: sabnzbd/skintext.py
msgid "November"
msgstr ""
#: sabnzbd/skintext.py
msgid "December"
msgstr ""
#: sabnzbd/skintext.py
msgid "Day of month"
msgstr "Zi din lună"
@@ -2103,14 +2030,6 @@ msgstr "Azi"
msgid "Total"
msgstr "Total"
#: sabnzbd/skintext.py
msgid "Custom"
msgstr "Personalizat"
#: sabnzbd/skintext.py
msgid "Speed"
msgstr "Viteză"
#: sabnzbd/skintext.py
msgid "on"
msgstr "activat"
@@ -2139,42 +2058,10 @@ msgstr "sau"
msgid "Host"
msgstr "Gazdă"
#: sabnzbd/skintext.py
msgid "Comment"
msgstr "Comentariu"
#: sabnzbd/skintext.py
msgid "Send"
msgstr "Trimite"
#: sabnzbd/skintext.py
msgid "Cancel"
msgstr "Anulează"
#: sabnzbd/skintext.py
msgid "Other"
msgstr "Altele"
#: sabnzbd/skintext.py
msgid "Report"
msgstr "Raportează"
#: sabnzbd/skintext.py
msgid "Video"
msgstr "Video"
#: sabnzbd/skintext.py
msgid "Audio"
msgstr "Audio"
#: sabnzbd/skintext.py
msgid "Not used"
msgstr "Neutilizat"
#: sabnzbd/skintext.py
msgid "or less"
msgstr "sau mai puțin"
#: sabnzbd/skintext.py
msgid "Log in"
msgstr "Autentificare"
@@ -2187,11 +2074,6 @@ msgstr "Deconectare"
msgid "Remember me"
msgstr "Ține-mă minte"
#. SABnzbd's theme line
#: sabnzbd/skintext.py
msgid "The automatic usenet download tool"
msgstr "Instrumentul de descărcare automată usenet"
#. "Save" button
#: sabnzbd/skintext.py
msgid "Save"
@@ -2206,11 +2088,6 @@ msgstr "Salvăm.."
msgid "Are you sure?"
msgstr "Sunteţi sigur?"
#. Used in confirmation popups
#: sabnzbd/skintext.py
msgid "Delete all downloaded files?"
msgstr "Ştergeţi toate fişierele descărcate?"
#. Main menu item
#: sabnzbd/skintext.py
msgid "Home"
@@ -2249,7 +2126,7 @@ msgstr "Probleme"
#. Main menu item
#: sabnzbd/skintext.py
msgid "Support the project, Donate!"
msgstr ""
msgstr "Susţine proiectul, Donează!"
#. Main menu item
#: sabnzbd/skintext.py
@@ -2310,22 +2187,6 @@ msgstr "Caută"
msgid "Download Dir"
msgstr "Dosar Descărcare"
#: sabnzbd/skintext.py
msgid "PAUSED"
msgstr "ÎNTRERUPT"
#: sabnzbd/skintext.py
msgid "Cached %s articles (%s)"
msgstr "Articole %s în cache (%s)"
#: sabnzbd/skintext.py
msgid "Sysload"
msgstr "Încărcare sistem"
#: sabnzbd/skintext.py
msgid "New release %s available at"
msgstr "Versiune nouă %s disponibilă la"
#: sabnzbd/skintext.py
msgid "Are you sure you want to shutdown SABnzbd?"
msgstr "Sunteţi sigur că doriţi să inchideţi SABnzbd?"
@@ -2335,21 +2196,11 @@ msgstr "Sunteţi sigur că doriţi să inchideţi SABnzbd?"
msgid "Add"
msgstr "Adaugă"
#. Add NZB file to queue (header
#: sabnzbd/skintext.py
msgid "Add File"
msgstr "Adaugă fişier"
#. Job category
#: sabnzbd/skintext.py
msgid "Category"
msgstr "Categorie"
#. Queue page table column header
#: sabnzbd/skintext.py
msgid "Processing"
msgstr "În curs de procesare"
#. Server priority
#: sabnzbd/skintext.py
msgid "Priority"
@@ -2370,21 +2221,6 @@ msgstr "+Dezarhivare"
msgid "+Delete"
msgstr "+Ştergere"
#. Post processing pick list: abbreviation for "+Repair"
#: sabnzbd/skintext.py
msgid "R"
msgstr "R"
#. Post processing pick list: abbreviation for "+Unpack"
#: sabnzbd/skintext.py
msgid "U"
msgstr "U"
#. Post processing pick list: abbreviation for "+Delete"
#: sabnzbd/skintext.py
msgid "D"
msgstr "D"
#. Priority pick list
#: sabnzbd/skintext.py
msgid "Force"
@@ -2400,11 +2236,6 @@ msgstr "Stop"
msgid "Enter URL"
msgstr "Introdu URL"
#. Queue page selection menu
#: sabnzbd/skintext.py
msgid "On queue finish"
msgstr "La terminarea coadei de descărcare"
#. Queue page end-of-queue action
#: sabnzbd/skintext.py
msgid "Shutdown PC"
@@ -2425,36 +2256,16 @@ msgstr "Hibernare PC"
msgid "Shutdown SABnzbd"
msgstr "Închide SABnzbd"
#. Queue page selection menu or entry box
#. Queue page table column header
#: sabnzbd/skintext.py
msgid "Speed Limit"
msgstr "Limită de Viteză"
msgid "Processing"
msgstr "În curs de procesare"
#. Queue page table column header - Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Order"
msgstr "Ordine"
#. Queue page table column header - Job details page
#. Queue page table column header
#: sabnzbd/skintext.py
msgid "Name"
msgstr "Nume"
#. Queue page table column header, "estimated time of arrival"
#: sabnzbd/skintext.py
msgid "ETA"
msgstr "Timp Estimat"
#. Queue page table column header, "age of the NZB"
#: sabnzbd/skintext.py
msgid "AGE"
msgstr "Vârstă"
#. Queue page table, "Delete" button
#: sabnzbd/skintext.py
msgid "Del"
msgstr "Şterge"
#. Queue page button
#: sabnzbd/skintext.py
msgid "Retry"
@@ -2485,11 +2296,6 @@ msgstr "Şterge NZB-uri"
msgid "Purge NZBs & Delete Files"
msgstr "Şterge NZB-uri & Fişiere Şterse"
#. Retry all failed jobs dialog box
#: sabnzbd/skintext.py
msgid "Retry all failed jobs"
msgstr "Reîncearcă toate sarcinile eșuate"
#. Queue page button
#: sabnzbd/skintext.py
msgid "Remove NZB"
@@ -2500,11 +2306,6 @@ msgstr "Şterge NZB"
msgid "Remove NZB & Delete Files"
msgstr "Şterge NZB & Fişiere Şterse"
#. Queue page, as in "4G *of* 10G"
#: sabnzbd/skintext.py
msgid "of"
msgstr "din"
#. Caption for missing articles in Queue
#: sabnzbd/skintext.py
msgid "Missing articles"
@@ -2524,11 +2325,6 @@ msgstr "manual"
msgid "Reset Quota now"
msgstr "Resetează Cota acum"
#. Confirmation popup
#: sabnzbd/skintext.py
msgid "Delete all completed items from History?"
msgstr "Ştergeţi toate obiectele complete din Istoric?"
#. Button/link hiding History job details
#: sabnzbd/skintext.py
msgid "Hide details"
@@ -2585,25 +2381,8 @@ msgstr "Cale"
#. Retry all failed jobs in History
#: sabnzbd/skintext.py
msgid "Retry all failed"
msgstr "Reîncearcă toate eșuate"
#. Retry all button for Retry All Failed Jobs
#: sabnzbd/skintext.py
msgid "Retry All"
msgstr "Reîncearcă toate"
#: sabnzbd/skintext.py
msgid "Virus/spam"
msgstr "Virus/spam"
#: sabnzbd/skintext.py
msgid "Out of retention"
msgstr "Dincolo de retenție"
#: sabnzbd/skintext.py
msgid "Other problem"
msgstr "Altă problemă"
msgid "Retry all failed jobs"
msgstr "Reîncearcă toate sarcinile eșuate"
#. Status page button
#: sabnzbd/skintext.py
@@ -2655,21 +2434,6 @@ msgstr "+ Depanare"
msgid "Connections"
msgstr "Conexiuni"
#. Status page, table header
#: sabnzbd/skintext.py
msgid "Latest Warnings"
msgstr "Ultimele Avertizări"
#. Status page button
#: sabnzbd/skintext.py
msgid "clear"
msgstr "Şterge"
#. Status page button
#: sabnzbd/skintext.py
msgid "Unblock"
msgstr "Deblochează"
#. Status page, article identifier
#: sabnzbd/skintext.py
msgid "Article identifier"
@@ -2680,26 +2444,11 @@ msgstr "Identificator Articol"
msgid "File set"
msgstr "Set fişiere"
#. Status page, table column header, when error occured
#: sabnzbd/skintext.py
msgid "When"
msgstr "Când"
#. Status page, table column header, type of message - Config->RSS table
#. column header
#: sabnzbd/skintext.py
msgid "Type"
msgstr "Tip"
#. Status page, indicator that server is enabled
#: sabnzbd/skintext.py
msgid "Enabled"
msgstr "Activat"
#: sabnzbd/skintext.py
msgid "Dashboard"
msgstr "Panou de Control"
#: sabnzbd/skintext.py
msgid "Connection failed!"
msgstr "Conectare eșuată!"
@@ -2720,10 +2469,6 @@ msgstr "Adresa IPv6"
msgid "Nameserver / DNS Lookup"
msgstr "Server de nume/Căutare DNS"
#: sabnzbd/skintext.py
msgid "CPU Model"
msgstr "Model CPU"
#: sabnzbd/skintext.py
msgid "Download speed limited by"
msgstr ""
@@ -2736,6 +2481,10 @@ msgstr ""
msgid "Disk speed"
msgstr ""
#: sabnzbd/skintext.py
msgid "System load"
msgstr ""
#. Do not translate Pystone
#: sabnzbd/skintext.py
msgid "System Performance (Pystone)"
@@ -2749,22 +2498,10 @@ msgstr "Viteză de descărcare director"
msgid "Complete folder speed"
msgstr "Vitează completă director"
#: sabnzbd/skintext.py
msgid "Writing speed"
msgstr "Viteză de scriere"
#: sabnzbd/skintext.py
msgid "Could not write. Check that the directory is writable."
msgstr "Nu am putut scrie. Verifică dacă director poate fi modificat."
#: sabnzbd/skintext.py
msgid "Internet Bandwidth"
msgstr ""
#: sabnzbd/skintext.py
msgid "Click on Repeat test button below to determine"
msgstr "Click pe butonul de Repetare test pentru a determina"
#: sabnzbd/skintext.py
msgid "Repeat test"
msgstr "Repetă test"
@@ -2947,10 +2684,6 @@ msgstr ""
msgid "Enable HTTPS"
msgstr "Activează HTTPS"
#: sabnzbd/skintext.py
msgid "not installed"
msgstr "neinstalat"
#: sabnzbd/skintext.py
msgid "Enable accessing the interface from a HTTPS address."
msgstr "Permite acesarea interfeţei de la o adresă HTTPS."
@@ -3038,12 +2771,17 @@ 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>"
#. Config->Scheduling
#: sabnzbd/skintext.py
msgid "Download backup"
msgid "Create backup"
msgstr ""
#: sabnzbd/skintext.py
msgid "Save or restore a backup of the configuration file and databases."
msgid ""
"Create a backup of the configuration file and databases in the Backup "
"Folder.<br>If the Backup Folder is not set, the backup will be created in "
"the Completed Download Folder.<br>Recurring backups can be configured on the"
" Scheduling page."
msgstr ""
#: sabnzbd/skintext.py
@@ -3188,10 +2926,6 @@ msgstr "Dosare Utilizator"
msgid "Browse"
msgstr "Răsfoire"
#: sabnzbd/skintext.py
msgid "In"
msgstr "În"
#: sabnzbd/skintext.py
msgid "Temporary Download Folder"
msgstr "Dosar Descărcare Temporar"
@@ -3320,6 +3054,17 @@ msgstr ""
"Locaţia coadei admin şi istoricul bazei de date.<br /><i>Poate fi folosit "
"doar când coada e goală.</i>"
#: sabnzbd/skintext.py
msgid "Backup Folder"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Location where the backups of the configuration file and databases are "
"stored.<br />If left empty, the backup will be created in the Completed "
"Download Folder."
msgstr ""
#: sabnzbd/skintext.py
msgid "<i>Data will <b>not</b> be moved. Requires SABnzbd restart!</i>"
msgstr ""
@@ -3511,16 +3256,6 @@ msgstr "La eroare, încearcă NZB alternativ"
msgid "Some servers provide an alternative NZB when a download fails."
msgstr "Unele server oferă o alternativă dacă un NZB eșuează."
#: sabnzbd/skintext.py
msgid "Use tags from indexer"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"When sorting, use tags from indexer for title, season, episode, etc. "
"Otherwise all naming is derived from the NZB name."
msgstr ""
#: sabnzbd/skintext.py
msgid "Enable folder rename"
msgstr "Activează redenumire dosar"
@@ -3574,6 +3309,14 @@ msgstr ""
msgid "Automatically sort jobs in the queue when a new job is added."
msgstr ""
#: sabnzbd/skintext.py
msgid "The queue will resort every 30 seconds if % downloaded is selected."
msgstr ""
#: sabnzbd/skintext.py
msgid "Propagation delay"
msgstr "Întârziere de propagare"
#: sabnzbd/skintext.py
msgid ""
"Posts will be paused untill they are at least this age. Setting job priority"
@@ -3603,6 +3346,14 @@ msgstr "Înlocuieşte Spaţiile din Numele Dosarelor"
msgid "Replace spaces with underscores in folder names."
msgstr "Înlocuieşte spaţiile cu _ în numele dosarelor."
#: sabnzbd/skintext.py
msgid "Replace underscores in folder name"
msgstr ""
#: sabnzbd/skintext.py
msgid "Replace underscores with dots in folder names."
msgstr ""
#: sabnzbd/skintext.py
msgid "Replace dots in Foldername"
msgstr "Înlocuieşte punctele din Numele Dosarelor"
@@ -3700,10 +3451,6 @@ msgstr "Redenumire"
msgid "Quota"
msgstr "Cotă"
#: sabnzbd/skintext.py
msgid "Indexing"
msgstr "Indexare"
#: sabnzbd/skintext.py
msgid "How much can be downloaded this month (K/M/G)"
msgstr "Cât de mult poate fi descărcat în acestă lună (K/M/G)"
@@ -3958,7 +3705,7 @@ msgstr "Adaugă Planificare"
msgid "Frequency"
msgstr "Frecvenţă"
#. Config->Scheduling - Job details page, section header
#. Config->Scheduling
#: sabnzbd/skintext.py
msgid "Action"
msgstr "Acțiune"
@@ -4010,6 +3757,16 @@ msgstr ""
msgid "Next scan at"
msgstr ""
#. Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Order"
msgstr "Ordine"
#. Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Type"
msgstr "Tip"
#. Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Filter"
@@ -4353,11 +4110,6 @@ msgstr "Dosar/Cale"
msgid "Indexer Categories / Groups"
msgstr ""
#. Small delete button
#: sabnzbd/skintext.py
msgid "X"
msgstr "X"
#. Warning message
#: sabnzbd/skintext.py, sabnzbd/sorting.py
msgid "Select at least 1 category."
@@ -4388,10 +4140,6 @@ msgstr ""
msgid "Presets"
msgstr "Presetări"
#: sabnzbd/skintext.py
msgid "Example"
msgstr "Exemplu"
#. Warning message
#: sabnzbd/skintext.py, sabnzbd/sorting.py
msgid "Movie Sorting"
@@ -4401,10 +4149,6 @@ msgstr ""
msgid "Enable Movie Sorting"
msgstr "Activează Sortare Filme"
#: sabnzbd/skintext.py
msgid "Keep loose downloads in extra folders"
msgstr "Păstrează descărcările suplimentare în dosare extra"
#: sabnzbd/skintext.py
msgid "Affected Categories"
msgstr "Categorii Afectate"
@@ -4621,51 +4365,11 @@ msgstr "Editează Detalii NZB"
msgid "Delete"
msgstr "Şterge"
#. Job details page, move file to top
#: sabnzbd/skintext.py
msgid "Top"
msgstr "Vârf"
#. Job details page, move file one place up
#: sabnzbd/skintext.py
msgid "Up"
msgstr "Sus"
#. Job details page, move file one place down
#: sabnzbd/skintext.py
msgid "Down"
msgstr "Jos"
#. Job details page, move file to bottom
#: sabnzbd/skintext.py
msgid "Bottom"
msgstr "Coadă"
#. Job details page, select all files
#: sabnzbd/skintext.py
msgid "All"
msgstr "Toate"
#. Job details page, invert file selection
#: sabnzbd/skintext.py
msgid "Invert"
msgstr "Inversează"
#. Job details page, filename column header
#: sabnzbd/skintext.py
msgid "Filename"
msgstr "Nume de fișier"
#. Job details page, subject column header
#: sabnzbd/skintext.py
msgid "Subject"
msgstr "Subiect"
#. Job details page, section header
#: sabnzbd/skintext.py
msgid "Selection"
msgstr "Selecţie"
#: sabnzbd/skintext.py
msgid "Free Space"
msgstr "Spațiu liber"
@@ -4690,6 +4394,10 @@ msgstr "Selectează tot"
msgid "Restart SABnzbd"
msgstr "Repornește SABnzbd"
#: sabnzbd/skintext.py
msgid "On queue finish"
msgstr "La terminarea coadei de descărcare"
#: sabnzbd/skintext.py
msgid "Status and interface options"
msgstr "Opțiuni stare și interfață"
@@ -4766,6 +4474,10 @@ msgstr "Coadă reparare"
msgid "Show active connections"
msgstr "Arată conexiuni active"
#: sabnzbd/skintext.py
msgid "Unblock"
msgstr "Deblochează"
#: sabnzbd/skintext.py
msgid "Orphaned jobs"
msgstr "Sarcini orfane"
@@ -4798,18 +4510,6 @@ msgstr "Opţional specifică un nume de fişier"
msgid "Submit"
msgstr "Trimite"
#: sabnzbd/skintext.py
msgid "Open Informational URL"
msgstr "Dechide URL Informaţii"
#: sabnzbd/skintext.py
msgid "Submitted. Thank you!"
msgstr "Trimis. Vă mulțumim!"
#: sabnzbd/skintext.py
msgid "Nothing selected!"
msgstr "Nimic selectat!"
#: sabnzbd/skintext.py
msgid "Remove all selected files"
msgstr "Elimină toate fișierele selectate"
@@ -4818,6 +4518,14 @@ msgstr "Elimină toate fișierele selectate"
msgid "Hide/show completed files"
msgstr "Ascunde/arată fișierele finalizate"
#: sabnzbd/skintext.py
msgid "Top"
msgstr "Vârf"
#: sabnzbd/skintext.py
msgid "Bottom"
msgstr "Coadă"
#: sabnzbd/skintext.py
msgid "View Script Log"
msgstr "Vezi Jurnal Script"
@@ -4838,6 +4546,10 @@ msgstr ""
msgid "Glitter has some (new) features you might like!"
msgstr ""
#: sabnzbd/skintext.py
msgid "Custom"
msgstr "Personalizat"
#: sabnzbd/skintext.py
msgid "Compact layout"
msgstr "Aspect compact"
@@ -4850,6 +4562,10 @@ msgstr ""
msgid "Tabbed layout <br/>(separate queue and history)"
msgstr "Interfață tabelară <br/>(coadă și istoric separate)"
#: sabnzbd/skintext.py
msgid "Speed"
msgstr "Viteză"
#: sabnzbd/skintext.py
msgid "Confirm Queue Deletions"
msgstr "Confirmă Ştergere Coadă"
@@ -4884,6 +4600,10 @@ msgid ""
" and the included copy of your settings."
msgstr ""
#: sabnzbd/skintext.py
msgid "Sort by % downloaded <small>Most&rarr;Least</small>"
msgstr ""
#: sabnzbd/skintext.py
msgid "Sort by Age <small>Oldest&rarr;Newest</small>"
msgstr "Sortează după Vârstă <small>Cel mai Vechi&rarr;Cel mai Nou</small>"
@@ -5031,18 +4751,6 @@ msgstr ""
"Acesta este software gratis, şi sunteţi binevenit să-l redistribuiţi în anumite condiţii.\n"
"Este licenţiat sub GNU General Public License versiunea 2 sau (la opţiunea dumneavoastră) orice versiune ulterioară.\n"
#: sabnzbd/skintext.py
msgid ""
"In order to download from usenet you will require access to a provider. Your"
" ISP may provide you with access, however a premium provider is recommended."
msgstr ""
"Pentru a descărca de pe usenet veţi avea nevoie de un furnizor. ISP-ul dvs."
" vă poate oferi acces, totuşi un furnizor premium e recomandat."
#: sabnzbd/skintext.py
msgid "Don't have a usenet provider? We recommend trying %s."
msgstr "Nu aveţi un furnizor usenet? Vă recomandăm să încercaţi %s."
#. Error message
#: sabnzbd/sorting.py
msgid "Failed to rename: %s to %s"
@@ -5114,10 +4822,6 @@ msgid ""
"Unknown SSL protocol: Try disabling SSL or connecting on a different port."
msgstr ""
#: sabnzbd/utils/servertests.py
msgid "Invalid server address."
msgstr "Adresă server invalidă"
#: sabnzbd/utils/servertests.py
msgid "Server quit during login sequence."
msgstr "Serverul a renunţat în timpul logării."

View File

@@ -3,13 +3,13 @@
# team@sabnzbd.org
#
# Translators:
# Safihre <safihre@sabnzbd.org>, 2020
# Safihre <safihre@sabnzbd.org>, 2022
#
msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
"Project-Id-Version: SABnzbd-3.7.0-develop\n"
"PO-Revision-Date: 2020-06-27 15:49+0000\n"
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2020\n"
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2022\n"
"Language-Team: Russian (https://www.transifex.com/sabnzbd/teams/111101/ru/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -181,11 +181,7 @@ msgstr "Тестовое уведомление"
msgid "&nbsp;Resolving address"
msgstr "&nbsp;Разрешение адреса"
#: sabnzbd/api.py
msgid "unknown"
msgstr "неизвестно"
#. No value, used in dropdown menus - Job details page, select no files
#. No value, used in dropdown menus
#: sabnzbd/api.py, sabnzbd/skintext.py
msgid "None"
msgstr "Ничего"
@@ -282,6 +278,10 @@ msgstr "%s не является допустимым адресом элект
msgid "Server address required"
msgstr "Требуется адрес сервера"
#: sabnzbd/cfg.py, sabnzbd/utils/servertests.py
msgid "Invalid server address."
msgstr "Недопустимый адрес сервера."
#: sabnzbd/cfg.py
msgid "%s is not a valid script"
msgstr ""
@@ -377,7 +377,7 @@ msgstr ""
msgid "Direct Unpack"
msgstr ""
#. PP status - History: job status
#. PP status
#: sabnzbd/directunpacker.py, sabnzbd/skintext.py
msgid "Completed"
msgstr "Завершено"
@@ -431,6 +431,11 @@ msgstr ""
msgid "Server %s will be ignored for %s minutes"
msgstr "Сервер %s будет игнорироваться %s мин."
#. Warning message
#: sabnzbd/downloader.py
msgid "There are no active servers!"
msgstr ""
#. Error message
#: sabnzbd/downloader.py
msgid "Failed to initialize %s@%s with reason: %s"
@@ -596,6 +601,18 @@ msgstr "Ошибка сохранения %s"
msgid "Loading %s failed"
msgstr "Ошибка загрузки %s"
#. Warning message
#: sabnzbd/filesystem.py
msgid ""
"%s is not writable with special character filenames. This can cause "
"problems."
msgstr ""
#. Warning message
#: sabnzbd/filesystem.py
msgid "%s is not writable at all. This blocks downloads."
msgstr ""
#: sabnzbd/interface.py
msgid "Refused connection from:"
msgstr ""
@@ -629,14 +646,6 @@ msgstr ""
"Неправильный ключ API. Используйте в сторонней программе ключ API из раздела"
" «Настройка -> Общие»:"
#: sabnzbd/interface.py
msgid ""
"Authentication missing, please enter username/password from Config->General "
"into your 3rd party program:"
msgstr ""
"Отсутствуют учётные данные. Введите в сторонней программе имя пользователя и"
" пароль из раздела «Настройка -> Общие»:"
#: sabnzbd/interface.py, sabnzbd/newswrapper.py, sabnzbd/utils/servertests.py
msgid "Authentication failed, check username/password."
msgstr "Ошибка проверки подлинности. Проверьте имя и пароль."
@@ -1185,27 +1194,27 @@ msgstr ""
msgid "Error importing %s"
msgstr "Ошибка импорта %s"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "DUPLICATE"
msgstr "ПОВТОР"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "ENCRYPTED"
msgstr "ЗАШИФРОВАН"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "TOO LARGE"
msgstr "СЛИШКОМ БОЛЬШОЙ"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "INCOMPLETE"
msgstr "НЕПОЛНЫЙ"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "UNWANTED"
msgstr ""
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "WAIT %s sec"
msgstr "ОЖИДАНИЕ %s с"
@@ -1555,11 +1564,11 @@ msgid "Trying RAR-based verification"
msgstr ""
#: sabnzbd/postproc.py
msgid "[%s] RAR-based verification failed: %s"
msgid "Passworded"
msgstr ""
#: sabnzbd/postproc.py, sabnzbd/skintext.py
msgid "Passworded"
#: sabnzbd/postproc.py
msgid "[%s] RAR-based verification failed: %s"
msgstr ""
#: sabnzbd/postproc.py
@@ -1676,7 +1685,7 @@ msgstr "Приостановить на 3 часа"
msgid "Pause for 6 hours"
msgstr "Приостановить на 6 часов"
#. Shutdown SABnzbd - Config->Scheduling
#. Config->Scheduling
#: sabnzbd/sabtray.py, sabnzbd/sabtraylinux.py, sabnzbd/skintext.py
msgid "Shutdown"
msgstr "Выключить"
@@ -1745,11 +1754,6 @@ msgstr "Источник"
msgid "Servers"
msgstr "Серверы"
#. PP Failure message
#: sabnzbd/skintext.py
msgid "Failure"
msgstr "Сбой"
#. PP status
#: sabnzbd/skintext.py
msgid "Failed"
@@ -1795,20 +1799,6 @@ msgstr "Быстрая проверка..."
msgid "Verifying..."
msgstr "Проверка..."
#. Pseudo-PP status, in reality used for Queue-status
#: sabnzbd/skintext.py
msgid "Downloading"
msgstr "загружается"
#: sabnzbd/skintext.py
msgid "Propagation delay"
msgstr ""
#. #: Config->Scheduler
#: sabnzbd/skintext.py
msgid "Task"
msgstr "Задача"
#. #: Config->Scheduler
#: sabnzbd/skintext.py
msgid "disable server"
@@ -1939,21 +1929,6 @@ msgstr ""
msgid "Low"
msgstr "низкий"
#. Megabytes
#: sabnzbd/skintext.py
msgid "MB"
msgstr "МБ"
#. Gigabytes
#: sabnzbd/skintext.py
msgid "GB"
msgstr "ГБ"
#. Bytes (used as postfix, as in "GB", "TB")
#: sabnzbd/skintext.py
msgid "B"
msgstr ""
#. One hour
#: sabnzbd/skintext.py
msgid "hour"
@@ -1999,54 +1974,6 @@ msgstr "Месяц"
msgid "Year"
msgstr "Год"
#: sabnzbd/skintext.py
msgid "January"
msgstr ""
#: sabnzbd/skintext.py
msgid "February"
msgstr ""
#: sabnzbd/skintext.py
msgid "March"
msgstr ""
#: sabnzbd/skintext.py
msgid "April"
msgstr ""
#: sabnzbd/skintext.py
msgid "May"
msgstr ""
#: sabnzbd/skintext.py
msgid "June"
msgstr ""
#: sabnzbd/skintext.py
msgid "July"
msgstr ""
#: sabnzbd/skintext.py
msgid "August"
msgstr ""
#: sabnzbd/skintext.py
msgid "September"
msgstr ""
#: sabnzbd/skintext.py
msgid "October"
msgstr ""
#: sabnzbd/skintext.py
msgid "November"
msgstr ""
#: sabnzbd/skintext.py
msgid "December"
msgstr ""
#: sabnzbd/skintext.py
msgid "Day of month"
msgstr "День месяца"
@@ -2071,14 +1998,6 @@ msgstr "за сегодня"
msgid "Total"
msgstr "всего"
#: sabnzbd/skintext.py
msgid "Custom"
msgstr "Другой"
#: sabnzbd/skintext.py
msgid "Speed"
msgstr "Скорость"
#: sabnzbd/skintext.py
msgid "on"
msgstr "на"
@@ -2107,42 +2026,10 @@ msgstr ""
msgid "Host"
msgstr "Адрес"
#: sabnzbd/skintext.py
msgid "Comment"
msgstr ""
#: sabnzbd/skintext.py
msgid "Send"
msgstr ""
#: sabnzbd/skintext.py
msgid "Cancel"
msgstr ""
#: sabnzbd/skintext.py
msgid "Other"
msgstr ""
#: sabnzbd/skintext.py
msgid "Report"
msgstr ""
#: sabnzbd/skintext.py
msgid "Video"
msgstr ""
#: sabnzbd/skintext.py
msgid "Audio"
msgstr ""
#: sabnzbd/skintext.py
msgid "Not used"
msgstr ""
#: sabnzbd/skintext.py
msgid "or less"
msgstr ""
#: sabnzbd/skintext.py
msgid "Log in"
msgstr ""
@@ -2155,11 +2042,6 @@ msgstr ""
msgid "Remember me"
msgstr ""
#. SABnzbd's theme line
#: sabnzbd/skintext.py
msgid "The automatic usenet download tool"
msgstr "Клиент автоматической загрузки из USENET"
#. "Save" button
#: sabnzbd/skintext.py
msgid "Save"
@@ -2174,11 +2056,6 @@ msgstr "Сохранение..."
msgid "Are you sure?"
msgstr "Уверены?"
#. Used in confirmation popups
#: sabnzbd/skintext.py
msgid "Delete all downloaded files?"
msgstr "Удалить все загруженные файлы?"
#. Main menu item
#: sabnzbd/skintext.py
msgid "Home"
@@ -2217,7 +2094,7 @@ msgstr ""
#. Main menu item
#: sabnzbd/skintext.py
msgid "Support the project, Donate!"
msgstr ""
msgstr "Поддержите проект. Сделайте пожертвование!"
#. Main menu item
#: sabnzbd/skintext.py
@@ -2278,22 +2155,6 @@ msgstr ""
msgid "Download Dir"
msgstr "Каталог загрузки"
#: sabnzbd/skintext.py
msgid "PAUSED"
msgstr "ПРИОСТАНОВЛЕНО"
#: sabnzbd/skintext.py
msgid "Cached %s articles (%s)"
msgstr "Статей в кэше: %s (%s)"
#: sabnzbd/skintext.py
msgid "Sysload"
msgstr "Загрузка системы"
#: sabnzbd/skintext.py
msgid "New release %s available at"
msgstr "Доступна новая версия %s на"
#: sabnzbd/skintext.py
msgid "Are you sure you want to shutdown SABnzbd?"
msgstr "Остановить SABnzbd?"
@@ -2303,21 +2164,11 @@ msgstr "Остановить SABnzbd?"
msgid "Add"
msgstr "Добавить"
#. Add NZB file to queue (header
#: sabnzbd/skintext.py
msgid "Add File"
msgstr "Добавить файл"
#. Job category
#: sabnzbd/skintext.py
msgid "Category"
msgstr "Категория"
#. Queue page table column header
#: sabnzbd/skintext.py
msgid "Processing"
msgstr "Обработка"
#. Server priority
#: sabnzbd/skintext.py
msgid "Priority"
@@ -2338,21 +2189,6 @@ msgstr "+распаковать"
msgid "+Delete"
msgstr "+удалить"
#. Post processing pick list: abbreviation for "+Repair"
#: sabnzbd/skintext.py
msgid "R"
msgstr "R"
#. Post processing pick list: abbreviation for "+Unpack"
#: sabnzbd/skintext.py
msgid "U"
msgstr "U"
#. Post processing pick list: abbreviation for "+Delete"
#: sabnzbd/skintext.py
msgid "D"
msgstr "D"
#. Priority pick list
#: sabnzbd/skintext.py
msgid "Force"
@@ -2368,11 +2204,6 @@ msgstr "Остановить"
msgid "Enter URL"
msgstr "Введите URL"
#. Queue page selection menu
#: sabnzbd/skintext.py
msgid "On queue finish"
msgstr "По окончании очереди"
#. Queue page end-of-queue action
#: sabnzbd/skintext.py
msgid "Shutdown PC"
@@ -2393,36 +2224,16 @@ msgstr "перевести ПК в спящий режим"
msgid "Shutdown SABnzbd"
msgstr "Закрыть SABnzbd"
#. Queue page selection menu or entry box
#. Queue page table column header
#: sabnzbd/skintext.py
msgid "Speed Limit"
msgstr "Ограничение скорости"
msgid "Processing"
msgstr "Обработка"
#. Queue page table column header - Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Order"
msgstr "Порядок"
#. Queue page table column header - Job details page
#. Queue page table column header
#: sabnzbd/skintext.py
msgid "Name"
msgstr "Название"
#. Queue page table column header, "estimated time of arrival"
#: sabnzbd/skintext.py
msgid "ETA"
msgstr "ост."
#. Queue page table column header, "age of the NZB"
#: sabnzbd/skintext.py
msgid "AGE"
msgstr "ВОЗРАСТ"
#. Queue page table, "Delete" button
#: sabnzbd/skintext.py
msgid "Del"
msgstr "Удалить"
#. Queue page button
#: sabnzbd/skintext.py
msgid "Retry"
@@ -2453,11 +2264,6 @@ msgstr "Удалить NZB"
msgid "Purge NZBs & Delete Files"
msgstr "Удалить NZB и стереть файлы"
#. Retry all failed jobs dialog box
#: sabnzbd/skintext.py
msgid "Retry all failed jobs"
msgstr ""
#. Queue page button
#: sabnzbd/skintext.py
msgid "Remove NZB"
@@ -2468,11 +2274,6 @@ msgstr "Удалить NZB"
msgid "Remove NZB & Delete Files"
msgstr "Удалить NZB и стереть файлы"
#. Queue page, as in "4G *of* 10G"
#: sabnzbd/skintext.py
msgid "of"
msgstr "из"
#. Caption for missing articles in Queue
#: sabnzbd/skintext.py
msgid "Missing articles"
@@ -2492,11 +2293,6 @@ msgstr "вручную"
msgid "Reset Quota now"
msgstr "Сбросить квоту"
#. Confirmation popup
#: sabnzbd/skintext.py
msgid "Delete all completed items from History?"
msgstr "Удалить все завершённые элементы из истории?"
#. Button/link hiding History job details
#: sabnzbd/skintext.py
msgid "Hide details"
@@ -2553,24 +2349,7 @@ msgstr "Путь"
#. Retry all failed jobs in History
#: sabnzbd/skintext.py
msgid "Retry all failed"
msgstr ""
#. Retry all button for Retry All Failed Jobs
#: sabnzbd/skintext.py
msgid "Retry All"
msgstr ""
#: sabnzbd/skintext.py
msgid "Virus/spam"
msgstr ""
#: sabnzbd/skintext.py
msgid "Out of retention"
msgstr ""
#: sabnzbd/skintext.py
msgid "Other problem"
msgid "Retry all failed jobs"
msgstr ""
#. Status page button
@@ -2623,21 +2402,6 @@ msgstr "+ отладка"
msgid "Connections"
msgstr "Соединения"
#. Status page, table header
#: sabnzbd/skintext.py
msgid "Latest Warnings"
msgstr "Последние предупреждения"
#. Status page button
#: sabnzbd/skintext.py
msgid "clear"
msgstr "Очистить"
#. Status page button
#: sabnzbd/skintext.py
msgid "Unblock"
msgstr "Разблокировать"
#. Status page, article identifier
#: sabnzbd/skintext.py
msgid "Article identifier"
@@ -2648,26 +2412,11 @@ msgstr "Идентификатор статьи"
msgid "File set"
msgstr "Набор файлов"
#. Status page, table column header, when error occured
#: sabnzbd/skintext.py
msgid "When"
msgstr "Время"
#. Status page, table column header, type of message - Config->RSS table
#. column header
#: sabnzbd/skintext.py
msgid "Type"
msgstr "Тип"
#. Status page, indicator that server is enabled
#: sabnzbd/skintext.py
msgid "Enabled"
msgstr "Включен"
#: sabnzbd/skintext.py
msgid "Dashboard"
msgstr ""
#: sabnzbd/skintext.py
msgid "Connection failed!"
msgstr ""
@@ -2688,10 +2437,6 @@ msgstr ""
msgid "Nameserver / DNS Lookup"
msgstr ""
#: sabnzbd/skintext.py
msgid "CPU Model"
msgstr ""
#: sabnzbd/skintext.py
msgid "Download speed limited by"
msgstr ""
@@ -2704,6 +2449,10 @@ msgstr ""
msgid "Disk speed"
msgstr ""
#: sabnzbd/skintext.py
msgid "System load"
msgstr ""
#. Do not translate Pystone
#: sabnzbd/skintext.py
msgid "System Performance (Pystone)"
@@ -2717,22 +2466,10 @@ msgstr ""
msgid "Complete folder speed"
msgstr ""
#: sabnzbd/skintext.py
msgid "Writing speed"
msgstr ""
#: sabnzbd/skintext.py
msgid "Could not write. Check that the directory is writable."
msgstr ""
#: sabnzbd/skintext.py
msgid "Internet Bandwidth"
msgstr ""
#: sabnzbd/skintext.py
msgid "Click on Repeat test button below to determine"
msgstr ""
#: sabnzbd/skintext.py
msgid "Repeat test"
msgstr ""
@@ -2912,10 +2649,6 @@ msgstr ""
msgid "Enable HTTPS"
msgstr "Включить HTTPS"
#: sabnzbd/skintext.py
msgid "not installed"
msgstr "не установлено"
#: sabnzbd/skintext.py
msgid "Enable accessing the interface from a HTTPS address."
msgstr "Доступ к интерфейсу по протоколу HTTPS."
@@ -3004,12 +2737,17 @@ msgstr ""
"/><i>В байтах, после числа можно добавить K, M или G. Пример: «64M» или "
"«128M»</i>"
#. Config->Scheduling
#: sabnzbd/skintext.py
msgid "Download backup"
msgid "Create backup"
msgstr ""
#: sabnzbd/skintext.py
msgid "Save or restore a backup of the configuration file and databases."
msgid ""
"Create a backup of the configuration file and databases in the Backup "
"Folder.<br>If the Backup Folder is not set, the backup will be created in "
"the Completed Download Folder.<br>Recurring backups can be configured on the"
" Scheduling page."
msgstr ""
#: sabnzbd/skintext.py
@@ -3155,10 +2893,6 @@ msgstr "Пользовательские папки"
msgid "Browse"
msgstr ""
#: sabnzbd/skintext.py
msgid "In"
msgstr "В"
#: sabnzbd/skintext.py
msgid "Temporary Download Folder"
msgstr "Папка временной загрузки"
@@ -3290,6 +3024,17 @@ msgstr ""
"Место для хранения и базы данных очереди и журнала.<br /><i>Изменить можно "
"только тогда, когда очередь пуста.</i>"
#: sabnzbd/skintext.py
msgid "Backup Folder"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Location where the backups of the configuration file and databases are "
"stored.<br />If left empty, the backup will be created in the Completed "
"Download Folder."
msgstr ""
#: sabnzbd/skintext.py
msgid "<i>Data will <b>not</b> be moved. Requires SABnzbd restart!</i>"
msgstr ""
@@ -3477,16 +3222,6 @@ msgstr ""
msgid "Some servers provide an alternative NZB when a download fails."
msgstr ""
#: sabnzbd/skintext.py
msgid "Use tags from indexer"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"When sorting, use tags from indexer for title, season, episode, etc. "
"Otherwise all naming is derived from the NZB name."
msgstr ""
#: sabnzbd/skintext.py
msgid "Enable folder rename"
msgstr "Переименовывать папки"
@@ -3540,6 +3275,14 @@ msgstr ""
msgid "Automatically sort jobs in the queue when a new job is added."
msgstr ""
#: sabnzbd/skintext.py
msgid "The queue will resort every 30 seconds if % downloaded is selected."
msgstr ""
#: sabnzbd/skintext.py
msgid "Propagation delay"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Posts will be paused untill they are at least this age. Setting job priority"
@@ -3567,6 +3310,14 @@ msgstr "Заменять пробелы в названиях папок"
msgid "Replace spaces with underscores in folder names."
msgstr "Заменять пробелы на символы подчёркивания в названиях папок."
#: sabnzbd/skintext.py
msgid "Replace underscores in folder name"
msgstr ""
#: sabnzbd/skintext.py
msgid "Replace underscores with dots in folder names."
msgstr ""
#: sabnzbd/skintext.py
msgid "Replace dots in Foldername"
msgstr "Заменять точки в названиях папок"
@@ -3664,10 +3415,6 @@ msgstr "Именование"
msgid "Quota"
msgstr "Квота"
#: sabnzbd/skintext.py
msgid "Indexing"
msgstr ""
#: sabnzbd/skintext.py
msgid "How much can be downloaded this month (K/M/G)"
msgstr "Объем, который можно загрузить в месяц (K/M/G)"
@@ -3919,7 +3666,7 @@ msgstr "Добавить задание"
msgid "Frequency"
msgstr "Частота"
#. Config->Scheduling - Job details page, section header
#. Config->Scheduling
#: sabnzbd/skintext.py
msgid "Action"
msgstr "Действие"
@@ -3971,6 +3718,16 @@ msgstr ""
msgid "Next scan at"
msgstr ""
#. Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Order"
msgstr "Порядок"
#. Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Type"
msgstr "Тип"
#. Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Filter"
@@ -4321,11 +4078,6 @@ msgstr "Папка или путь"
msgid "Indexer Categories / Groups"
msgstr ""
#. Small delete button
#: sabnzbd/skintext.py
msgid "X"
msgstr "X"
#. Warning message
#: sabnzbd/skintext.py, sabnzbd/sorting.py
msgid "Select at least 1 category."
@@ -4356,10 +4108,6 @@ msgstr ""
msgid "Presets"
msgstr "Готовые шаблоны"
#: sabnzbd/skintext.py
msgid "Example"
msgstr "Пример"
#. Warning message
#: sabnzbd/skintext.py, sabnzbd/sorting.py
msgid "Movie Sorting"
@@ -4369,10 +4117,6 @@ msgstr ""
msgid "Enable Movie Sorting"
msgstr "Использовать сортировку по фильмам"
#: sabnzbd/skintext.py
msgid "Keep loose downloads in extra folders"
msgstr "Хранить несвязанные загрузки в дополнительных папках"
#: sabnzbd/skintext.py
msgid "Affected Categories"
msgstr "Задействованные категории"
@@ -4589,51 +4333,11 @@ msgstr "Изменить данные NZB"
msgid "Delete"
msgstr "Удалить"
#. Job details page, move file to top
#: sabnzbd/skintext.py
msgid "Top"
msgstr "В начало"
#. Job details page, move file one place up
#: sabnzbd/skintext.py
msgid "Up"
msgstr "Вверх"
#. Job details page, move file one place down
#: sabnzbd/skintext.py
msgid "Down"
msgstr "Вниз"
#. Job details page, move file to bottom
#: sabnzbd/skintext.py
msgid "Bottom"
msgstr "В конец"
#. Job details page, select all files
#: sabnzbd/skintext.py
msgid "All"
msgstr "Все"
#. Job details page, invert file selection
#: sabnzbd/skintext.py
msgid "Invert"
msgstr "Обратить"
#. Job details page, filename column header
#: sabnzbd/skintext.py
msgid "Filename"
msgstr "Название файла"
#. Job details page, subject column header
#: sabnzbd/skintext.py
msgid "Subject"
msgstr "Тема"
#. Job details page, section header
#: sabnzbd/skintext.py
msgid "Selection"
msgstr "Выбрать"
#: sabnzbd/skintext.py
msgid "Free Space"
msgstr "свободно на диске"
@@ -4658,6 +4362,10 @@ msgstr ""
msgid "Restart SABnzbd"
msgstr ""
#: sabnzbd/skintext.py
msgid "On queue finish"
msgstr "По окончании очереди"
#: sabnzbd/skintext.py
msgid "Status and interface options"
msgstr ""
@@ -4734,6 +4442,10 @@ msgstr "Исправление очереди"
msgid "Show active connections"
msgstr ""
#: sabnzbd/skintext.py
msgid "Unblock"
msgstr "Разблокировать"
#: sabnzbd/skintext.py
msgid "Orphaned jobs"
msgstr ""
@@ -4766,18 +4478,6 @@ msgstr "Имя файла (необязательно)"
msgid "Submit"
msgstr ""
#: sabnzbd/skintext.py
msgid "Open Informational URL"
msgstr "Открыть URL с информацией"
#: sabnzbd/skintext.py
msgid "Submitted. Thank you!"
msgstr ""
#: sabnzbd/skintext.py
msgid "Nothing selected!"
msgstr ""
#: sabnzbd/skintext.py
msgid "Remove all selected files"
msgstr ""
@@ -4786,6 +4486,14 @@ msgstr ""
msgid "Hide/show completed files"
msgstr ""
#: sabnzbd/skintext.py
msgid "Top"
msgstr "В начало"
#: sabnzbd/skintext.py
msgid "Bottom"
msgstr "В конец"
#: sabnzbd/skintext.py
msgid "View Script Log"
msgstr "Просмотреть журнал сценария"
@@ -4804,6 +4512,10 @@ msgstr ""
msgid "Glitter has some (new) features you might like!"
msgstr ""
#: sabnzbd/skintext.py
msgid "Custom"
msgstr "Другой"
#: sabnzbd/skintext.py
msgid "Compact layout"
msgstr ""
@@ -4816,6 +4528,10 @@ msgstr ""
msgid "Tabbed layout <br/>(separate queue and history)"
msgstr ""
#: sabnzbd/skintext.py
msgid "Speed"
msgstr "Скорость"
#: sabnzbd/skintext.py
msgid "Confirm Queue Deletions"
msgstr "Подтвердите удаление очереди"
@@ -4850,6 +4566,10 @@ msgid ""
" and the included copy of your settings."
msgstr ""
#: sabnzbd/skintext.py
msgid "Sort by % downloaded <small>Most&rarr;Least</small>"
msgstr ""
#: sabnzbd/skintext.py
msgid "Sort by Age <small>Oldest&rarr;Newest</small>"
msgstr "Сортировать по возрасту <small>от старых к новым</small>"
@@ -4998,20 +4718,6 @@ msgstr ""
"Это свободное программное обеспечение, и его можно распространять при соблюдении определённых условий.\n"
"Она распространяется по лицензии GNU GENERAL PUBLIC LICENSE версии 2 или (по вашему выбору) любой более поздней версии.\n"
#: sabnzbd/skintext.py
msgid ""
"In order to download from usenet you will require access to a provider. Your"
" ISP may provide you with access, however a premium provider is recommended."
msgstr ""
"Для загрузки из сети Usenet требуется доступ к этой сети через "
"соответствующего поставщика услуг. Ваш поставщик услуг Интернета может "
"предоставить вам такой доступ, однако рекомендуется использовать usenet-"
"провайдеров класса Premium."
#: sabnzbd/skintext.py
msgid "Don't have a usenet provider? We recommend trying %s."
msgstr "У вас ещё нет поставщика услуг Usenet? Рекомендуем попробовать %s."
#. Error message
#: sabnzbd/sorting.py
msgid "Failed to rename: %s to %s"
@@ -5080,10 +4786,6 @@ msgid ""
"Unknown SSL protocol: Try disabling SSL or connecting on a different port."
msgstr ""
#: sabnzbd/utils/servertests.py
msgid "Invalid server address."
msgstr "Недопустимый адрес сервера."
#: sabnzbd/utils/servertests.py
msgid "Server quit during login sequence."
msgstr "Во время входа на сервер был выполнен выход."

View File

@@ -7,7 +7,7 @@
#
msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
"Project-Id-Version: SABnzbd-3.7.0-develop\n"
"PO-Revision-Date: 2020-06-27 15:49+0000\n"
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2022\n"
"Language-Team: Serbian (https://www.transifex.com/sabnzbd/teams/111101/sr/)\n"
@@ -179,11 +179,7 @@ msgstr "Probno obaveštenje"
msgid "&nbsp;Resolving address"
msgstr "&nbsp;Решавање адресе"
#: sabnzbd/api.py
msgid "unknown"
msgstr "непознато"
#. No value, used in dropdown menus - Job details page, select no files
#. No value, used in dropdown menus
#: sabnzbd/api.py, sabnzbd/skintext.py
msgid "None"
msgstr "Ниједно"
@@ -280,6 +276,10 @@ msgstr "%s nije ispravna email adresa"
msgid "Server address required"
msgstr "Потребна је адреса сервера"
#: sabnzbd/cfg.py, sabnzbd/utils/servertests.py
msgid "Invalid server address."
msgstr "Погрешна адреса сервера."
#: sabnzbd/cfg.py
msgid "%s is not a valid script"
msgstr ""
@@ -375,7 +375,7 @@ msgstr ""
msgid "Direct Unpack"
msgstr ""
#. PP status - History: job status
#. PP status
#: sabnzbd/directunpacker.py, sabnzbd/skintext.py
msgid "Completed"
msgstr "Завршено"
@@ -430,6 +430,11 @@ msgstr "Ime servera se ne može odrediti"
msgid "Server %s will be ignored for %s minutes"
msgstr "Server %s će biti ignorisan %s minuta"
#. Warning message
#: sabnzbd/downloader.py
msgid "There are no active servers!"
msgstr ""
#. Error message
#: sabnzbd/downloader.py
msgid "Failed to initialize %s@%s with reason: %s"
@@ -595,6 +600,18 @@ msgstr "Snimanje %s neuspešno"
msgid "Loading %s failed"
msgstr "Učitavanje %s neuspešno"
#. Warning message
#: sabnzbd/filesystem.py
msgid ""
"%s is not writable with special character filenames. This can cause "
"problems."
msgstr ""
#. Warning message
#: sabnzbd/filesystem.py
msgid "%s is not writable at all. This blocks downloads."
msgstr ""
#: sabnzbd/interface.py
msgid "Refused connection from:"
msgstr ""
@@ -626,14 +643,6 @@ msgid ""
msgstr ""
"API кључ је погрешан, унети у спољни програм API кључ из Подешавања->Опште:"
#: sabnzbd/interface.py
msgid ""
"Authentication missing, please enter username/password from Config->General "
"into your 3rd party program:"
msgstr ""
"Недостаје аутентификација, унети у спољни програм име/лозинку из "
"Подешавања->Опште:"
#: sabnzbd/interface.py, sabnzbd/newswrapper.py, sabnzbd/utils/servertests.py
msgid "Authentication failed, check username/password."
msgstr "Аутентификација погрешна, проверити име/лозинку."
@@ -1179,27 +1188,27 @@ msgstr "Поништено, не може да се заврши"
msgid "Error importing %s"
msgstr "Грешка увоза %s"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "DUPLICATE"
msgstr "ДУПЛИКАТ"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "ENCRYPTED"
msgstr "ШИФРИРАНО"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "TOO LARGE"
msgstr "ПРЕВЕЛИКО"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "INCOMPLETE"
msgstr "НЕПОТПУНО"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "UNWANTED"
msgstr "NEŽELJENI"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "WAIT %s sec"
msgstr "Чекање %s сек"
@@ -1547,13 +1556,13 @@ msgid "Trying RAR-based verification"
msgstr ""
#: sabnzbd/postproc.py
msgid "[%s] RAR-based verification failed: %s"
msgstr ""
#: sabnzbd/postproc.py, sabnzbd/skintext.py
msgid "Passworded"
msgstr "Zahteva lozinku"
#: sabnzbd/postproc.py
msgid "[%s] RAR-based verification failed: %s"
msgstr ""
#: sabnzbd/postproc.py
msgid "RAR files verified successfully"
msgstr ""
@@ -1668,7 +1677,7 @@ msgstr "Паузирај 3 сата"
msgid "Pause for 6 hours"
msgstr "Паузирај 6 сати"
#. Shutdown SABnzbd - Config->Scheduling
#. Config->Scheduling
#: sabnzbd/sabtray.py, sabnzbd/sabtraylinux.py, sabnzbd/skintext.py
msgid "Shutdown"
msgstr "Угаси"
@@ -1737,11 +1746,6 @@ msgstr "Извор"
msgid "Servers"
msgstr "Сервери"
#. PP Failure message
#: sabnzbd/skintext.py
msgid "Failure"
msgstr "Грешка"
#. PP status
#: sabnzbd/skintext.py
msgid "Failed"
@@ -1787,20 +1791,6 @@ msgstr "Брза провера..."
msgid "Verifying..."
msgstr "Проверавање..."
#. Pseudo-PP status, in reality used for Queue-status
#: sabnzbd/skintext.py
msgid "Downloading"
msgstr "Преузимам"
#: sabnzbd/skintext.py
msgid "Propagation delay"
msgstr ""
#. #: Config->Scheduler
#: sabnzbd/skintext.py
msgid "Task"
msgstr "Задатак"
#. #: Config->Scheduler
#: sabnzbd/skintext.py
msgid "disable server"
@@ -1931,21 +1921,6 @@ msgstr "Хитно"
msgid "Low"
msgstr "Низак"
#. Megabytes
#: sabnzbd/skintext.py
msgid "MB"
msgstr "МБ"
#. Gigabytes
#: sabnzbd/skintext.py
msgid "GB"
msgstr "ГБ"
#. Bytes (used as postfix, as in "GB", "TB")
#: sabnzbd/skintext.py
msgid "B"
msgstr "Б"
#. One hour
#: sabnzbd/skintext.py
msgid "hour"
@@ -1991,54 +1966,6 @@ msgstr "Месец"
msgid "Year"
msgstr "Година"
#: sabnzbd/skintext.py
msgid "January"
msgstr ""
#: sabnzbd/skintext.py
msgid "February"
msgstr ""
#: sabnzbd/skintext.py
msgid "March"
msgstr ""
#: sabnzbd/skintext.py
msgid "April"
msgstr ""
#: sabnzbd/skintext.py
msgid "May"
msgstr ""
#: sabnzbd/skintext.py
msgid "June"
msgstr ""
#: sabnzbd/skintext.py
msgid "July"
msgstr ""
#: sabnzbd/skintext.py
msgid "August"
msgstr ""
#: sabnzbd/skintext.py
msgid "September"
msgstr ""
#: sabnzbd/skintext.py
msgid "October"
msgstr ""
#: sabnzbd/skintext.py
msgid "November"
msgstr ""
#: sabnzbd/skintext.py
msgid "December"
msgstr ""
#: sabnzbd/skintext.py
msgid "Day of month"
msgstr "Дан у месецу"
@@ -2063,14 +1990,6 @@ msgstr "Данас"
msgid "Total"
msgstr "Укупно"
#: sabnzbd/skintext.py
msgid "Custom"
msgstr "Прилагођено"
#: sabnzbd/skintext.py
msgid "Speed"
msgstr "Брзина"
#: sabnzbd/skintext.py
msgid "on"
msgstr "укљ."
@@ -2099,42 +2018,10 @@ msgstr "или"
msgid "Host"
msgstr "Хост"
#: sabnzbd/skintext.py
msgid "Comment"
msgstr "Komentar"
#: sabnzbd/skintext.py
msgid "Send"
msgstr "Пошаљи"
#: sabnzbd/skintext.py
msgid "Cancel"
msgstr "Откажи"
#: sabnzbd/skintext.py
msgid "Other"
msgstr "Остало"
#: sabnzbd/skintext.py
msgid "Report"
msgstr "Izveštaj"
#: sabnzbd/skintext.py
msgid "Video"
msgstr "Видео"
#: sabnzbd/skintext.py
msgid "Audio"
msgstr "Аудио"
#: sabnzbd/skintext.py
msgid "Not used"
msgstr "Није коришћено"
#: sabnzbd/skintext.py
msgid "or less"
msgstr "ili manje"
#: sabnzbd/skintext.py
msgid "Log in"
msgstr ""
@@ -2147,11 +2034,6 @@ msgstr ""
msgid "Remember me"
msgstr ""
#. SABnzbd's theme line
#: sabnzbd/skintext.py
msgid "The automatic usenet download tool"
msgstr "Alatka za automatizovano preuzimanje sa usenet-a"
#. "Save" button
#: sabnzbd/skintext.py
msgid "Save"
@@ -2166,11 +2048,6 @@ msgstr "Snimanje..."
msgid "Are you sure?"
msgstr "Да ли сте сигурни?"
#. Used in confirmation popups
#: sabnzbd/skintext.py
msgid "Delete all downloaded files?"
msgstr "Обриши све преузете датотеке?"
#. Main menu item
#: sabnzbd/skintext.py
msgid "Home"
@@ -2209,7 +2086,7 @@ msgstr ""
#. Main menu item
#: sabnzbd/skintext.py
msgid "Support the project, Donate!"
msgstr ""
msgstr "Подржите пројекат, дајте добровољан прилог!"
#. Main menu item
#: sabnzbd/skintext.py
@@ -2270,22 +2147,6 @@ msgstr "Претрага"
msgid "Download Dir"
msgstr "Фасцикла преузимања"
#: sabnzbd/skintext.py
msgid "PAUSED"
msgstr "ПАУЗИРАНО"
#: sabnzbd/skintext.py
msgid "Cached %s articles (%s)"
msgstr "Кеширано %s артикла (%s)"
#: sabnzbd/skintext.py
msgid "Sysload"
msgstr "Sysload"
#: sabnzbd/skintext.py
msgid "New release %s available at"
msgstr "Новије издање %s је доступно на"
#: sabnzbd/skintext.py
msgid "Are you sure you want to shutdown SABnzbd?"
msgstr "Da li ste sigurni da želite ugasiti SABnzbd?"
@@ -2295,21 +2156,11 @@ msgstr "Da li ste sigurni da želite ugasiti SABnzbd?"
msgid "Add"
msgstr "Додај"
#. Add NZB file to queue (header
#: sabnzbd/skintext.py
msgid "Add File"
msgstr "Додај датотеку"
#. Job category
#: sabnzbd/skintext.py
msgid "Category"
msgstr "Категорија"
#. Queue page table column header
#: sabnzbd/skintext.py
msgid "Processing"
msgstr "Обрађивање"
#. Server priority
#: sabnzbd/skintext.py
msgid "Priority"
@@ -2330,21 +2181,6 @@ msgstr "+Издвој"
msgid "+Delete"
msgstr "+Обриши"
#. Post processing pick list: abbreviation for "+Repair"
#: sabnzbd/skintext.py
msgid "R"
msgstr "П"
#. Post processing pick list: abbreviation for "+Unpack"
#: sabnzbd/skintext.py
msgid "U"
msgstr "С"
#. Post processing pick list: abbreviation for "+Delete"
#: sabnzbd/skintext.py
msgid "D"
msgstr "П"
#. Priority pick list
#: sabnzbd/skintext.py
msgid "Force"
@@ -2360,11 +2196,6 @@ msgstr "Заустави"
msgid "Enter URL"
msgstr "Унесите УРЛ"
#. Queue page selection menu
#: sabnzbd/skintext.py
msgid "On queue finish"
msgstr "Када се ред заврши"
#. Queue page end-of-queue action
#: sabnzbd/skintext.py
msgid "Shutdown PC"
@@ -2385,36 +2216,16 @@ msgstr "Хибернација"
msgid "Shutdown SABnzbd"
msgstr "Угаси SABnzbd"
#. Queue page selection menu or entry box
#. Queue page table column header
#: sabnzbd/skintext.py
msgid "Speed Limit"
msgstr "Ограничење брзине"
msgid "Processing"
msgstr "Обрађивање"
#. Queue page table column header - Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Order"
msgstr "Редослед"
#. Queue page table column header - Job details page
#. Queue page table column header
#: sabnzbd/skintext.py
msgid "Name"
msgstr "Име"
#. Queue page table column header, "estimated time of arrival"
#: sabnzbd/skintext.py
msgid "ETA"
msgstr "Процењено време"
#. Queue page table column header, "age of the NZB"
#: sabnzbd/skintext.py
msgid "AGE"
msgstr "СТАРОСТ"
#. Queue page table, "Delete" button
#: sabnzbd/skintext.py
msgid "Del"
msgstr "Обриши"
#. Queue page button
#: sabnzbd/skintext.py
msgid "Retry"
@@ -2445,11 +2256,6 @@ msgstr "Очисти NZB"
msgid "Purge NZBs & Delete Files"
msgstr "Очисти NZB и обриши датотеке"
#. Retry all failed jobs dialog box
#: sabnzbd/skintext.py
msgid "Retry all failed jobs"
msgstr "Ponovo pokušaj sve neuspešne poslove"
#. Queue page button
#: sabnzbd/skintext.py
msgid "Remove NZB"
@@ -2460,11 +2266,6 @@ msgstr "Уклони NZB"
msgid "Remove NZB & Delete Files"
msgstr "Уклони NZB и обриши датотеке"
#. Queue page, as in "4G *of* 10G"
#: sabnzbd/skintext.py
msgid "of"
msgstr "од"
#. Caption for missing articles in Queue
#: sabnzbd/skintext.py
msgid "Missing articles"
@@ -2484,11 +2285,6 @@ msgstr "ручно"
msgid "Reset Quota now"
msgstr "Ресетуј квоту"
#. Confirmation popup
#: sabnzbd/skintext.py
msgid "Delete all completed items from History?"
msgstr "Обриши све завршене ставке са хронологије?"
#. Button/link hiding History job details
#: sabnzbd/skintext.py
msgid "Hide details"
@@ -2545,25 +2341,8 @@ msgstr "Путања"
#. Retry all failed jobs in History
#: sabnzbd/skintext.py
msgid "Retry all failed"
msgstr "Ponovo pokušaj sve neuspešne"
#. Retry all button for Retry All Failed Jobs
#: sabnzbd/skintext.py
msgid "Retry All"
msgstr "Ponovo pokušaj sve"
#: sabnzbd/skintext.py
msgid "Virus/spam"
msgstr "Virus/neželjeno"
#: sabnzbd/skintext.py
msgid "Out of retention"
msgstr "Van retencije"
#: sabnzbd/skintext.py
msgid "Other problem"
msgstr "Neki drugi problem"
msgid "Retry all failed jobs"
msgstr "Ponovo pokušaj sve neuspešne poslove"
#. Status page button
#: sabnzbd/skintext.py
@@ -2615,21 +2394,6 @@ msgstr "+ Дебаг"
msgid "Connections"
msgstr "Везе"
#. Status page, table header
#: sabnzbd/skintext.py
msgid "Latest Warnings"
msgstr "Најновија Упозорења"
#. Status page button
#: sabnzbd/skintext.py
msgid "clear"
msgstr "очисти"
#. Status page button
#: sabnzbd/skintext.py
msgid "Unblock"
msgstr "Деблокирај"
#. Status page, article identifier
#: sabnzbd/skintext.py
msgid "Article identifier"
@@ -2640,26 +2404,11 @@ msgstr "Идентифација артикла"
msgid "File set"
msgstr "Збир датотека"
#. Status page, table column header, when error occured
#: sabnzbd/skintext.py
msgid "When"
msgstr "Када"
#. Status page, table column header, type of message - Config->RSS table
#. column header
#: sabnzbd/skintext.py
msgid "Type"
msgstr "Тип"
#. Status page, indicator that server is enabled
#: sabnzbd/skintext.py
msgid "Enabled"
msgstr "Омогућено"
#: sabnzbd/skintext.py
msgid "Dashboard"
msgstr "Управљачка табла"
#: sabnzbd/skintext.py
msgid "Connection failed!"
msgstr "Veza neuspešna!"
@@ -2680,10 +2429,6 @@ msgstr "IPv6 adresa"
msgid "Nameserver / DNS Lookup"
msgstr "Nameserver/DNS Pretraga"
#: sabnzbd/skintext.py
msgid "CPU Model"
msgstr "Модел процесора"
#: sabnzbd/skintext.py
msgid "Download speed limited by"
msgstr ""
@@ -2696,6 +2441,10 @@ msgstr ""
msgid "Disk speed"
msgstr ""
#: sabnzbd/skintext.py
msgid "System load"
msgstr ""
#. Do not translate Pystone
#: sabnzbd/skintext.py
msgid "System Performance (Pystone)"
@@ -2709,22 +2458,10 @@ msgstr "Brzina foldera za preuzimanje"
msgid "Complete folder speed"
msgstr "Brzina foldera za kompletirana preuzimanja"
#: sabnzbd/skintext.py
msgid "Writing speed"
msgstr "Brzina pisanja"
#: sabnzbd/skintext.py
msgid "Could not write. Check that the directory is writable."
msgstr "Ne mogu da zapišem. Proverite da li je u fasciklu moguće pisati."
#: sabnzbd/skintext.py
msgid "Internet Bandwidth"
msgstr ""
#: sabnzbd/skintext.py
msgid "Click on Repeat test button below to determine"
msgstr "Kliknite na dugme Ponovi test ispod, da odredite"
#: sabnzbd/skintext.py
msgid "Repeat test"
msgstr "Ponovi test"
@@ -2902,10 +2639,6 @@ msgstr ""
msgid "Enable HTTPS"
msgstr "Активирај HTTPS"
#: sabnzbd/skintext.py
msgid "not installed"
msgstr "никје инсталирано"
#: sabnzbd/skintext.py
msgid "Enable accessing the interface from a HTTPS address."
msgstr "Приступ интерфејсу преко HTTPS адресе."
@@ -2992,12 +2725,17 @@ msgstr ""
"Кеширати артикле у меморији. То смањује приступ диска.<br /><i>У бајтовима, "
"опционо додати K,M,G. Пример: \"64M\" или \"128M\"</i>"
#. Config->Scheduling
#: sabnzbd/skintext.py
msgid "Download backup"
msgid "Create backup"
msgstr ""
#: sabnzbd/skintext.py
msgid "Save or restore a backup of the configuration file and databases."
msgid ""
"Create a backup of the configuration file and databases in the Backup "
"Folder.<br>If the Backup Folder is not set, the backup will be created in "
"the Completed Download Folder.<br>Recurring backups can be configured on the"
" Scheduling page."
msgstr ""
#: sabnzbd/skintext.py
@@ -3142,10 +2880,6 @@ msgstr "Корисничке фасцикле"
msgid "Browse"
msgstr "Pregledaj"
#: sabnzbd/skintext.py
msgid "In"
msgstr "У"
#: sabnzbd/skintext.py
msgid "Temporary Download Folder"
msgstr "Привремена фасцикла преузимања"
@@ -3275,6 +3009,17 @@ msgstr ""
"Локацију за ред и хронологију базе.<br /><i>Промене су могуће само када је "
"ред празан.</i>"
#: sabnzbd/skintext.py
msgid "Backup Folder"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Location where the backups of the configuration file and databases are "
"stored.<br />If left empty, the backup will be created in the Completed "
"Download Folder."
msgstr ""
#: sabnzbd/skintext.py
msgid "<i>Data will <b>not</b> be moved. Requires SABnzbd restart!</i>"
msgstr ""
@@ -3465,16 +3210,6 @@ msgstr "U slučaju neuspeha, pokušaj sa alternativnim NZB-om"
msgid "Some servers provide an alternative NZB when a download fails."
msgstr "Neki serveri nude alternativni NZB pri neuspešnom preuzimanju"
#: sabnzbd/skintext.py
msgid "Use tags from indexer"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"When sorting, use tags from indexer for title, season, episode, etc. "
"Otherwise all naming is derived from the NZB name."
msgstr ""
#: sabnzbd/skintext.py
msgid "Enable folder rename"
msgstr "Упали преименовање фасцикле"
@@ -3527,6 +3262,14 @@ msgstr ""
msgid "Automatically sort jobs in the queue when a new job is added."
msgstr ""
#: sabnzbd/skintext.py
msgid "The queue will resort every 30 seconds if % downloaded is selected."
msgstr ""
#: sabnzbd/skintext.py
msgid "Propagation delay"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Posts will be paused untill they are at least this age. Setting job priority"
@@ -3554,6 +3297,14 @@ msgstr "Размени размаке у имену фасцикле"
msgid "Replace spaces with underscores in folder names."
msgstr "Размени <b>размаке</b> са <b>_</b> у имену фасцикле."
#: sabnzbd/skintext.py
msgid "Replace underscores in folder name"
msgstr ""
#: sabnzbd/skintext.py
msgid "Replace underscores with dots in folder names."
msgstr ""
#: sabnzbd/skintext.py
msgid "Replace dots in Foldername"
msgstr "Размени тачке у имену фасцикле"
@@ -3649,10 +3400,6 @@ msgstr "Именовање"
msgid "Quota"
msgstr "Квота"
#: sabnzbd/skintext.py
msgid "Indexing"
msgstr "Индексирање"
#: sabnzbd/skintext.py
msgid "How much can be downloaded this month (K/M/G)"
msgstr "Колико може да се преузме овог месеца (К/М/Г)"
@@ -3905,7 +3652,7 @@ msgstr "Dodaj raspored"
msgid "Frequency"
msgstr "Фреквенција"
#. Config->Scheduling - Job details page, section header
#. Config->Scheduling
#: sabnzbd/skintext.py
msgid "Action"
msgstr "Акција"
@@ -3956,6 +3703,16 @@ msgstr ""
msgid "Next scan at"
msgstr ""
#. Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Order"
msgstr "Редослед"
#. Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Type"
msgstr "Тип"
#. Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Filter"
@@ -4299,11 +4056,6 @@ msgstr "Фасцикла/Путања"
msgid "Indexer Categories / Groups"
msgstr ""
#. Small delete button
#: sabnzbd/skintext.py
msgid "X"
msgstr "X"
#. Warning message
#: sabnzbd/skintext.py, sabnzbd/sorting.py
msgid "Select at least 1 category."
@@ -4334,10 +4086,6 @@ msgstr ""
msgid "Presets"
msgstr "Предподешавања"
#: sabnzbd/skintext.py
msgid "Example"
msgstr "Примери"
#. Warning message
#: sabnzbd/skintext.py, sabnzbd/sorting.py
msgid "Movie Sorting"
@@ -4347,10 +4095,6 @@ msgstr ""
msgid "Enable Movie Sorting"
msgstr "Упали сортирање филма"
#: sabnzbd/skintext.py
msgid "Keep loose downloads in extra folders"
msgstr "Задржи изгубљена преузимања у фасциклама"
#: sabnzbd/skintext.py
msgid "Affected Categories"
msgstr "Погођене категорије"
@@ -4567,51 +4311,11 @@ msgstr "Уреди детаље NZB-а"
msgid "Delete"
msgstr "Обриши"
#. Job details page, move file to top
#: sabnzbd/skintext.py
msgid "Top"
msgstr "Врх"
#. Job details page, move file one place up
#: sabnzbd/skintext.py
msgid "Up"
msgstr "Горе"
#. Job details page, move file one place down
#: sabnzbd/skintext.py
msgid "Down"
msgstr "Доле"
#. Job details page, move file to bottom
#: sabnzbd/skintext.py
msgid "Bottom"
msgstr "Дно"
#. Job details page, select all files
#: sabnzbd/skintext.py
msgid "All"
msgstr "Све"
#. Job details page, invert file selection
#: sabnzbd/skintext.py
msgid "Invert"
msgstr "Окрени"
#. Job details page, filename column header
#: sabnzbd/skintext.py
msgid "Filename"
msgstr "Име датотеке"
#. Job details page, subject column header
#: sabnzbd/skintext.py
msgid "Subject"
msgstr "Тема"
#. Job details page, section header
#: sabnzbd/skintext.py
msgid "Selection"
msgstr "Избор"
#: sabnzbd/skintext.py
msgid "Free Space"
msgstr "Слободан простор"
@@ -4636,6 +4340,10 @@ msgstr "Proveri sve"
msgid "Restart SABnzbd"
msgstr "Ponovo pokreni SABnzbd"
#: sabnzbd/skintext.py
msgid "On queue finish"
msgstr "Када се ред заврши"
#: sabnzbd/skintext.py
msgid "Status and interface options"
msgstr "Opcije statusa i interfejsa"
@@ -4713,6 +4421,10 @@ msgstr "Поправљење реда"
msgid "Show active connections"
msgstr "Prikaži aktivne konekcije"
#: sabnzbd/skintext.py
msgid "Unblock"
msgstr "Деблокирај"
#: sabnzbd/skintext.py
msgid "Orphaned jobs"
msgstr "Zapušteni poslovi"
@@ -4745,18 +4457,6 @@ msgstr "Опционо специфирати име"
msgid "Submit"
msgstr "Пошаљи"
#: sabnzbd/skintext.py
msgid "Open Informational URL"
msgstr "Отвори информативни УРЛ"
#: sabnzbd/skintext.py
msgid "Submitted. Thank you!"
msgstr "Poslato. Hvala!"
#: sabnzbd/skintext.py
msgid "Nothing selected!"
msgstr "Mišta nije odabrano!"
#: sabnzbd/skintext.py
msgid "Remove all selected files"
msgstr "Ukloni sve odabrane fajlove"
@@ -4765,6 +4465,14 @@ msgstr "Ukloni sve odabrane fajlove"
msgid "Hide/show completed files"
msgstr "Sakrij/prikaži sve završene datoteke"
#: sabnzbd/skintext.py
msgid "Top"
msgstr "Врх"
#: sabnzbd/skintext.py
msgid "Bottom"
msgstr "Дно"
#: sabnzbd/skintext.py
msgid "View Script Log"
msgstr "Види извештај скрипта"
@@ -4783,6 +4491,10 @@ msgstr ""
msgid "Glitter has some (new) features you might like!"
msgstr ""
#: sabnzbd/skintext.py
msgid "Custom"
msgstr "Прилагођено"
#: sabnzbd/skintext.py
msgid "Compact layout"
msgstr ""
@@ -4795,6 +4507,10 @@ msgstr ""
msgid "Tabbed layout <br/>(separate queue and history)"
msgstr ""
#: sabnzbd/skintext.py
msgid "Speed"
msgstr "Брзина"
#: sabnzbd/skintext.py
msgid "Confirm Queue Deletions"
msgstr "Потврда брисања реда"
@@ -4829,6 +4545,10 @@ msgid ""
" and the included copy of your settings."
msgstr ""
#: sabnzbd/skintext.py
msgid "Sort by % downloaded <small>Most&rarr;Least</small>"
msgstr ""
#: sabnzbd/skintext.py
msgid "Sort by Age <small>Oldest&rarr;Newest</small>"
msgstr "Среди по старост <small>Старије&rarr;Новије</small>"
@@ -4975,18 +4695,6 @@ msgstr ""
"Ово је бесплатан програм, и ви сте добродошли да га делите под одређеним условима.\n"
"Лиценциран је под GNU GENERAL PUBLIC LICENSE верзија 2 или (по вашем избору) касније верзије.\n"
#: sabnzbd/skintext.py
msgid ""
"In order to download from usenet you will require access to a provider. Your"
" ISP may provide you with access, however a premium provider is recommended."
msgstr ""
"За преузимање са 'usenet' треба Вам приступ привајдеру. Можда Вам Ваш ISP "
"пружа приступ, било како премијум провајдер је препоручен."
#: sabnzbd/skintext.py
msgid "Don't have a usenet provider? We recommend trying %s."
msgstr "Немате 'usenet' провајдер? Препоручујемо Вам %s."
#. Error message
#: sabnzbd/sorting.py
msgid "Failed to rename: %s to %s"
@@ -5056,10 +4764,6 @@ msgid ""
"Unknown SSL protocol: Try disabling SSL or connecting on a different port."
msgstr ""
#: sabnzbd/utils/servertests.py
msgid "Invalid server address."
msgstr "Погрешна адреса сервера."
#: sabnzbd/utils/servertests.py
msgid "Server quit during login sequence."
msgstr "Сервер се затворио при пријављивање"

View File

@@ -7,7 +7,7 @@
#
msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
"Project-Id-Version: SABnzbd-3.7.0-develop\n"
"PO-Revision-Date: 2020-06-27 15:49+0000\n"
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2022\n"
"Language-Team: Swedish (https://www.transifex.com/sabnzbd/teams/111101/sv/)\n"
@@ -179,11 +179,7 @@ msgstr "Testa notifikation"
msgid "&nbsp;Resolving address"
msgstr "&nbsp;Lösa adress"
#: sabnzbd/api.py
msgid "unknown"
msgstr "okänd"
#. No value, used in dropdown menus - Job details page, select no files
#. No value, used in dropdown menus
#: sabnzbd/api.py, sabnzbd/skintext.py
msgid "None"
msgstr "Ingen"
@@ -280,6 +276,10 @@ msgstr "%s är inte en godkänd e-mail adress"
msgid "Server address required"
msgstr "Kräver serveradress"
#: sabnzbd/cfg.py, sabnzbd/utils/servertests.py
msgid "Invalid server address."
msgstr "Ogiltig serveradress"
#: sabnzbd/cfg.py
msgid "%s is not a valid script"
msgstr ""
@@ -376,7 +376,7 @@ msgstr ""
msgid "Direct Unpack"
msgstr ""
#. PP status - History: job status
#. PP status
#: sabnzbd/directunpacker.py, sabnzbd/skintext.py
msgid "Completed"
msgstr "Färdig"
@@ -430,6 +430,11 @@ msgstr "Servernamn kunde inte läsas"
msgid "Server %s will be ignored for %s minutes"
msgstr "Server %s kommer att ignoreras i %s minuter"
#. Warning message
#: sabnzbd/downloader.py
msgid "There are no active servers!"
msgstr ""
#. Error message
#: sabnzbd/downloader.py
msgid "Failed to initialize %s@%s with reason: %s"
@@ -595,6 +600,18 @@ msgstr "Sparar %s misslyckades"
msgid "Loading %s failed"
msgstr "Laddning av %s misslyckades"
#. Warning message
#: sabnzbd/filesystem.py
msgid ""
"%s is not writable with special character filenames. This can cause "
"problems."
msgstr ""
#. Warning message
#: sabnzbd/filesystem.py
msgid "%s is not writable at all. This blocks downloads."
msgstr ""
#: sabnzbd/interface.py
msgid "Refused connection from:"
msgstr ""
@@ -628,14 +645,6 @@ msgstr ""
"API-nyckel felaktig, använd api-nyckeln från Konfiguration-> Allmänt i ditt "
"tredjepartsprogram:"
#: sabnzbd/interface.py
msgid ""
"Authentication missing, please enter username/password from Config->General "
"into your 3rd party program:"
msgstr ""
"Autentisering saknas, ange användarnamn / lösenord från Konfiguration-> "
"Allmänt i ditt tredjepartsprogram:"
#: sabnzbd/interface.py, sabnzbd/newswrapper.py, sabnzbd/utils/servertests.py
msgid "Authentication failed, check username/password."
msgstr "Autentisering misslyckades, kontrollera användarnamn och lösenord."
@@ -1183,27 +1192,27 @@ msgstr "Avbrutet, kan inte slutföras"
msgid "Error importing %s"
msgstr "Det gick inte att importera %s"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "DUPLICATE"
msgstr "DUBLETT"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "ENCRYPTED"
msgstr "KRYPTERAT"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "TOO LARGE"
msgstr "FÖR STOR"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "INCOMPLETE"
msgstr "INKOMPLETT"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "UNWANTED"
msgstr "OÖNSKAD"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "WAIT %s sec"
msgstr "VÄNTA %s SEKUNDER"
@@ -1553,13 +1562,13 @@ msgid "Trying RAR-based verification"
msgstr ""
#: sabnzbd/postproc.py
msgid "[%s] RAR-based verification failed: %s"
msgstr ""
#: sabnzbd/postproc.py, sabnzbd/skintext.py
msgid "Passworded"
msgstr "Lösenordskyddad"
#: sabnzbd/postproc.py
msgid "[%s] RAR-based verification failed: %s"
msgstr ""
#: sabnzbd/postproc.py
msgid "RAR files verified successfully"
msgstr ""
@@ -1674,7 +1683,7 @@ msgstr "Pausa 3 timmar"
msgid "Pause for 6 hours"
msgstr "Pausa 6 timmar"
#. Shutdown SABnzbd - Config->Scheduling
#. Config->Scheduling
#: sabnzbd/sabtray.py, sabnzbd/sabtraylinux.py, sabnzbd/skintext.py
msgid "Shutdown"
msgstr "Stäng Av"
@@ -1743,11 +1752,6 @@ msgstr "Källa"
msgid "Servers"
msgstr "Servrar"
#. PP Failure message
#: sabnzbd/skintext.py
msgid "Failure"
msgstr "Misslyckades"
#. PP status
#: sabnzbd/skintext.py
msgid "Failed"
@@ -1793,20 +1797,6 @@ msgstr "Snabbkontroll..."
msgid "Verifying..."
msgstr "Verifierar..."
#. Pseudo-PP status, in reality used for Queue-status
#: sabnzbd/skintext.py
msgid "Downloading"
msgstr "Laddar ner"
#: sabnzbd/skintext.py
msgid "Propagation delay"
msgstr ""
#. #: Config->Scheduler
#: sabnzbd/skintext.py
msgid "Task"
msgstr "Uppgift"
#. #: Config->Scheduler
#: sabnzbd/skintext.py
msgid "disable server"
@@ -1937,21 +1927,6 @@ msgstr "Nödfall"
msgid "Low"
msgstr "Låg"
#. Megabytes
#: sabnzbd/skintext.py
msgid "MB"
msgstr "MB"
#. Gigabytes
#: sabnzbd/skintext.py
msgid "GB"
msgstr "GB"
#. Bytes (used as postfix, as in "GB", "TB")
#: sabnzbd/skintext.py
msgid "B"
msgstr "B"
#. One hour
#: sabnzbd/skintext.py
msgid "hour"
@@ -1997,54 +1972,6 @@ msgstr "Månad"
msgid "Year"
msgstr "År"
#: sabnzbd/skintext.py
msgid "January"
msgstr ""
#: sabnzbd/skintext.py
msgid "February"
msgstr ""
#: sabnzbd/skintext.py
msgid "March"
msgstr ""
#: sabnzbd/skintext.py
msgid "April"
msgstr ""
#: sabnzbd/skintext.py
msgid "May"
msgstr ""
#: sabnzbd/skintext.py
msgid "June"
msgstr ""
#: sabnzbd/skintext.py
msgid "July"
msgstr ""
#: sabnzbd/skintext.py
msgid "August"
msgstr ""
#: sabnzbd/skintext.py
msgid "September"
msgstr ""
#: sabnzbd/skintext.py
msgid "October"
msgstr ""
#: sabnzbd/skintext.py
msgid "November"
msgstr ""
#: sabnzbd/skintext.py
msgid "December"
msgstr ""
#: sabnzbd/skintext.py
msgid "Day of month"
msgstr "Månadsdag"
@@ -2069,14 +1996,6 @@ msgstr "I dag"
msgid "Total"
msgstr "Totalt"
#: sabnzbd/skintext.py
msgid "Custom"
msgstr "Anpassa"
#: sabnzbd/skintext.py
msgid "Speed"
msgstr "Hastighet"
#: sabnzbd/skintext.py
msgid "on"
msgstr "den"
@@ -2105,42 +2024,10 @@ msgstr "eller"
msgid "Host"
msgstr "Adress"
#: sabnzbd/skintext.py
msgid "Comment"
msgstr "Kommentar"
#: sabnzbd/skintext.py
msgid "Send"
msgstr "Skicka"
#: sabnzbd/skintext.py
msgid "Cancel"
msgstr "Avbryt"
#: sabnzbd/skintext.py
msgid "Other"
msgstr "Annat"
#: sabnzbd/skintext.py
msgid "Report"
msgstr "Rapportera"
#: sabnzbd/skintext.py
msgid "Video"
msgstr "Video"
#: sabnzbd/skintext.py
msgid "Audio"
msgstr "Ljud"
#: sabnzbd/skintext.py
msgid "Not used"
msgstr "Inte använd"
#: sabnzbd/skintext.py
msgid "or less"
msgstr "eller mindre"
#: sabnzbd/skintext.py
msgid "Log in"
msgstr ""
@@ -2153,11 +2040,6 @@ msgstr ""
msgid "Remember me"
msgstr ""
#. SABnzbd's theme line
#: sabnzbd/skintext.py
msgid "The automatic usenet download tool"
msgstr "Det automatiska usenet nedladdningsverktyget"
#. "Save" button
#: sabnzbd/skintext.py
msgid "Save"
@@ -2172,11 +2054,6 @@ msgstr "Sparar.."
msgid "Are you sure?"
msgstr "Är du säker?"
#. Used in confirmation popups
#: sabnzbd/skintext.py
msgid "Delete all downloaded files?"
msgstr "Ta bort alla nedladdade filer?"
#. Main menu item
#: sabnzbd/skintext.py
msgid "Home"
@@ -2215,7 +2092,7 @@ msgstr ""
#. Main menu item
#: sabnzbd/skintext.py
msgid "Support the project, Donate!"
msgstr ""
msgstr "Donera och stöd detta projekt!"
#. Main menu item
#: sabnzbd/skintext.py
@@ -2276,22 +2153,6 @@ msgstr "Sök"
msgid "Download Dir"
msgstr "Temporär nedladdningmapp"
#: sabnzbd/skintext.py
msgid "PAUSED"
msgstr "PAUSAD"
#: sabnzbd/skintext.py
msgid "Cached %s articles (%s)"
msgstr "Sparat %s artiklar (%s)"
#: sabnzbd/skintext.py
msgid "Sysload"
msgstr "Systembelastning"
#: sabnzbd/skintext.py
msgid "New release %s available at"
msgstr "Ny utgåva %s tillgänglig"
#: sabnzbd/skintext.py
msgid "Are you sure you want to shutdown SABnzbd?"
msgstr "Är du säker på att du vill stänga av SABnzbd?"
@@ -2301,21 +2162,11 @@ msgstr "Är du säker på att du vill stänga av SABnzbd?"
msgid "Add"
msgstr "Lägg till"
#. Add NZB file to queue (header
#: sabnzbd/skintext.py
msgid "Add File"
msgstr "Lägg till fil"
#. Job category
#: sabnzbd/skintext.py
msgid "Category"
msgstr "Kategori"
#. Queue page table column header
#: sabnzbd/skintext.py
msgid "Processing"
msgstr "Bearbetar"
#. Server priority
#: sabnzbd/skintext.py
msgid "Priority"
@@ -2336,21 +2187,6 @@ msgstr "+Packar upp"
msgid "+Delete"
msgstr "+Ta bort"
#. Post processing pick list: abbreviation for "+Repair"
#: sabnzbd/skintext.py
msgid "R"
msgstr "R"
#. Post processing pick list: abbreviation for "+Unpack"
#: sabnzbd/skintext.py
msgid "U"
msgstr "P"
#. Post processing pick list: abbreviation for "+Delete"
#: sabnzbd/skintext.py
msgid "D"
msgstr "D"
#. Priority pick list
#: sabnzbd/skintext.py
msgid "Force"
@@ -2366,11 +2202,6 @@ msgstr "Stopp"
msgid "Enter URL"
msgstr "Ange URL"
#. Queue page selection menu
#: sabnzbd/skintext.py
msgid "On queue finish"
msgstr "När kön är färdig"
#. Queue page end-of-queue action
#: sabnzbd/skintext.py
msgid "Shutdown PC"
@@ -2391,36 +2222,16 @@ msgstr "Viloläge PC"
msgid "Shutdown SABnzbd"
msgstr "Stäng av SABnzbd"
#. Queue page selection menu or entry box
#. Queue page table column header
#: sabnzbd/skintext.py
msgid "Speed Limit"
msgstr "Hastighetsgräns"
msgid "Processing"
msgstr "Bearbetar"
#. Queue page table column header - Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Order"
msgstr "Ordning"
#. Queue page table column header - Job details page
#. Queue page table column header
#: sabnzbd/skintext.py
msgid "Name"
msgstr "Namn"
#. Queue page table column header, "estimated time of arrival"
#: sabnzbd/skintext.py
msgid "ETA"
msgstr "Tid kvar"
#. Queue page table column header, "age of the NZB"
#: sabnzbd/skintext.py
msgid "AGE"
msgstr "År"
#. Queue page table, "Delete" button
#: sabnzbd/skintext.py
msgid "Del"
msgstr "Ta bort"
#. Queue page button
#: sabnzbd/skintext.py
msgid "Retry"
@@ -2451,11 +2262,6 @@ msgstr "Rensa NZB:er"
msgid "Purge NZBs & Delete Files"
msgstr "Rensa NZB:er och ta bort filer"
#. Retry all failed jobs dialog box
#: sabnzbd/skintext.py
msgid "Retry all failed jobs"
msgstr "Starta om alla misslyckade jobb"
#. Queue page button
#: sabnzbd/skintext.py
msgid "Remove NZB"
@@ -2466,11 +2272,6 @@ msgstr "Ta bort NZB"
msgid "Remove NZB & Delete Files"
msgstr "Ta bort NZB och filer"
#. Queue page, as in "4G *of* 10G"
#: sabnzbd/skintext.py
msgid "of"
msgstr "av"
#. Caption for missing articles in Queue
#: sabnzbd/skintext.py
msgid "Missing articles"
@@ -2490,11 +2291,6 @@ msgstr "manuell"
msgid "Reset Quota now"
msgstr "Återställ Kvot nu"
#. Confirmation popup
#: sabnzbd/skintext.py
msgid "Delete all completed items from History?"
msgstr "Ta bort alla slutförda objekt från Historik?"
#. Button/link hiding History job details
#: sabnzbd/skintext.py
msgid "Hide details"
@@ -2551,25 +2347,8 @@ msgstr "Sökväg"
#. Retry all failed jobs in History
#: sabnzbd/skintext.py
msgid "Retry all failed"
msgstr "Starta om alla mysslyckade"
#. Retry all button for Retry All Failed Jobs
#: sabnzbd/skintext.py
msgid "Retry All"
msgstr "Starta om alla"
#: sabnzbd/skintext.py
msgid "Virus/spam"
msgstr "Virus/spam"
#: sabnzbd/skintext.py
msgid "Out of retention"
msgstr "Slut på retention"
#: sabnzbd/skintext.py
msgid "Other problem"
msgstr "Andra fel"
msgid "Retry all failed jobs"
msgstr "Starta om alla misslyckade jobb"
#. Status page button
#: sabnzbd/skintext.py
@@ -2621,21 +2400,6 @@ msgstr "+ Debug"
msgid "Connections"
msgstr "Anslutningar"
#. Status page, table header
#: sabnzbd/skintext.py
msgid "Latest Warnings"
msgstr "Senaste Varningar"
#. Status page button
#: sabnzbd/skintext.py
msgid "clear"
msgstr "rensa"
#. Status page button
#: sabnzbd/skintext.py
msgid "Unblock"
msgstr "Ta bort blockering"
#. Status page, article identifier
#: sabnzbd/skintext.py
msgid "Article identifier"
@@ -2646,26 +2410,11 @@ msgstr "Artikel-ID"
msgid "File set"
msgstr "Filuppsättning"
#. Status page, table column header, when error occured
#: sabnzbd/skintext.py
msgid "When"
msgstr "När"
#. Status page, table column header, type of message - Config->RSS table
#. column header
#: sabnzbd/skintext.py
msgid "Type"
msgstr "Typ"
#. Status page, indicator that server is enabled
#: sabnzbd/skintext.py
msgid "Enabled"
msgstr "Aktiverad"
#: sabnzbd/skintext.py
msgid "Dashboard"
msgstr "Instrumentpanel"
#: sabnzbd/skintext.py
msgid "Connection failed!"
msgstr "Anslutning misslyckades!"
@@ -2686,10 +2435,6 @@ msgstr "IPv6-adress"
msgid "Nameserver / DNS Lookup"
msgstr "Namnserver /DNS Lookup"
#: sabnzbd/skintext.py
msgid "CPU Model"
msgstr "CPU Modell"
#: sabnzbd/skintext.py
msgid "Download speed limited by"
msgstr ""
@@ -2702,6 +2447,10 @@ msgstr ""
msgid "Disk speed"
msgstr ""
#: sabnzbd/skintext.py
msgid "System load"
msgstr ""
#. Do not translate Pystone
#: sabnzbd/skintext.py
msgid "System Performance (Pystone)"
@@ -2715,22 +2464,10 @@ msgstr "Nerladdningsmapphastighet"
msgid "Complete folder speed"
msgstr "Komplett mapphastighet"
#: sabnzbd/skintext.py
msgid "Writing speed"
msgstr "Skrivhastighet"
#: sabnzbd/skintext.py
msgid "Could not write. Check that the directory is writable."
msgstr "Kunde inte skriva. Kontrollera att sökvägen är skrivbar"
#: sabnzbd/skintext.py
msgid "Internet Bandwidth"
msgstr ""
#: sabnzbd/skintext.py
msgid "Click on Repeat test button below to determine"
msgstr "Klicka på \"Gör om test\" nedan för att bestämma"
#: sabnzbd/skintext.py
msgid "Repeat test"
msgstr "Gör om test"
@@ -2910,10 +2647,6 @@ msgstr ""
msgid "Enable HTTPS"
msgstr "HTTPS Aktivera"
#: sabnzbd/skintext.py
msgid "not installed"
msgstr "inte installerad"
#: sabnzbd/skintext.py
msgid "Enable accessing the interface from a HTTPS address."
msgstr "Aktivera åtkomst till webbkontrollen med HTTPS adress."
@@ -3001,12 +2734,17 @@ 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>"
#. Config->Scheduling
#: sabnzbd/skintext.py
msgid "Download backup"
msgid "Create backup"
msgstr ""
#: sabnzbd/skintext.py
msgid "Save or restore a backup of the configuration file and databases."
msgid ""
"Create a backup of the configuration file and databases in the Backup "
"Folder.<br>If the Backup Folder is not set, the backup will be created in "
"the Completed Download Folder.<br>Recurring backups can be configured on the"
" Scheduling page."
msgstr ""
#: sabnzbd/skintext.py
@@ -3153,10 +2891,6 @@ msgstr "Användarmappar"
msgid "Browse"
msgstr "Bläddra"
#: sabnzbd/skintext.py
msgid "In"
msgstr "I"
#: sabnzbd/skintext.py
msgid "Temporary Download Folder"
msgstr "Temporär nedladdningsmapp"
@@ -3286,6 +3020,17 @@ msgstr ""
"Plats för köadministration och historiedatabas.<br /><i>Kan bara ändras när "
"kön är tom.</i>"
#: sabnzbd/skintext.py
msgid "Backup Folder"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Location where the backups of the configuration file and databases are "
"stored.<br />If left empty, the backup will be created in the Completed "
"Download Folder."
msgstr ""
#: sabnzbd/skintext.py
msgid "<i>Data will <b>not</b> be moved. Requires SABnzbd restart!</i>"
msgstr "<i>Data kommer <b>inte</b> tas bort. Kräver omstart av SABnzbd!</i>"
@@ -3475,16 +3220,6 @@ msgid "Some servers provide an alternative NZB when a download fails."
msgstr ""
"Vissa servrar kan förse en alternativ NZB när en nerladdning misslyckas"
#: sabnzbd/skintext.py
msgid "Use tags from indexer"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"When sorting, use tags from indexer for title, season, episode, etc. "
"Otherwise all naming is derived from the NZB name."
msgstr ""
#: sabnzbd/skintext.py
msgid "Enable folder rename"
msgstr "Döp om mappar"
@@ -3537,6 +3272,14 @@ msgstr ""
msgid "Automatically sort jobs in the queue when a new job is added."
msgstr ""
#: sabnzbd/skintext.py
msgid "The queue will resort every 30 seconds if % downloaded is selected."
msgstr ""
#: sabnzbd/skintext.py
msgid "Propagation delay"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Posts will be paused untill they are at least this age. Setting job priority"
@@ -3564,6 +3307,14 @@ msgstr "Ersätt mellanslag i mappnamn"
msgid "Replace spaces with underscores in folder names."
msgstr "Ersätt mellanslag med understreck i mappnamn."
#: sabnzbd/skintext.py
msgid "Replace underscores in folder name"
msgstr ""
#: sabnzbd/skintext.py
msgid "Replace underscores with dots in folder names."
msgstr ""
#: sabnzbd/skintext.py
msgid "Replace dots in Foldername"
msgstr "Ersätt punkter i mappnamn"
@@ -3661,10 +3412,6 @@ msgstr "Döpning"
msgid "Quota"
msgstr "Kvot"
#: sabnzbd/skintext.py
msgid "Indexing"
msgstr "Indexerar"
#: sabnzbd/skintext.py
msgid "How much can be downloaded this month (K/M/G)"
msgstr "Hur mycket kan laddas ner denna månad (K/M/G)"
@@ -3917,7 +3664,7 @@ msgstr "Lägg till schema"
msgid "Frequency"
msgstr "Förekomst"
#. Config->Scheduling - Job details page, section header
#. Config->Scheduling
#: sabnzbd/skintext.py
msgid "Action"
msgstr "Åtgärd"
@@ -3969,6 +3716,16 @@ msgstr ""
msgid "Next scan at"
msgstr ""
#. Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Order"
msgstr "Ordning"
#. Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Type"
msgstr "Typ"
#. Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Filter"
@@ -4312,11 +4069,6 @@ msgstr "Mapp/Sökväg"
msgid "Indexer Categories / Groups"
msgstr ""
#. Small delete button
#: sabnzbd/skintext.py
msgid "X"
msgstr "X"
#. Warning message
#: sabnzbd/skintext.py, sabnzbd/sorting.py
msgid "Select at least 1 category."
@@ -4347,10 +4099,6 @@ msgstr ""
msgid "Presets"
msgstr "Förinställningar"
#: sabnzbd/skintext.py
msgid "Example"
msgstr "Exempel"
#. Warning message
#: sabnzbd/skintext.py, sabnzbd/sorting.py
msgid "Movie Sorting"
@@ -4360,10 +4108,6 @@ msgstr ""
msgid "Enable Movie Sorting"
msgstr "Aktivera filmsortering"
#: sabnzbd/skintext.py
msgid "Keep loose downloads in extra folders"
msgstr "Låt nedladdning i extramapp vara"
#: sabnzbd/skintext.py
msgid "Affected Categories"
msgstr "Påverkade kategorier"
@@ -4580,51 +4324,11 @@ msgstr "Ändra NZB detaljer"
msgid "Delete"
msgstr "Ta bort"
#. Job details page, move file to top
#: sabnzbd/skintext.py
msgid "Top"
msgstr "Topp"
#. Job details page, move file one place up
#: sabnzbd/skintext.py
msgid "Up"
msgstr "Upp"
#. Job details page, move file one place down
#: sabnzbd/skintext.py
msgid "Down"
msgstr "Ner"
#. Job details page, move file to bottom
#: sabnzbd/skintext.py
msgid "Bottom"
msgstr "Botten"
#. Job details page, select all files
#: sabnzbd/skintext.py
msgid "All"
msgstr "Alla"
#. Job details page, invert file selection
#: sabnzbd/skintext.py
msgid "Invert"
msgstr "Invertera"
#. Job details page, filename column header
#: sabnzbd/skintext.py
msgid "Filename"
msgstr "Filnamn"
#. Job details page, subject column header
#: sabnzbd/skintext.py
msgid "Subject"
msgstr "Ämne"
#. Job details page, section header
#: sabnzbd/skintext.py
msgid "Selection"
msgstr "Urval"
#: sabnzbd/skintext.py
msgid "Free Space"
msgstr "Ledigt diskutrymme"
@@ -4649,6 +4353,10 @@ msgstr "Markera alla"
msgid "Restart SABnzbd"
msgstr "Starta om SABnzbd"
#: sabnzbd/skintext.py
msgid "On queue finish"
msgstr "När kön är färdig"
#: sabnzbd/skintext.py
msgid "Status and interface options"
msgstr "Status och gränsnittsinställningar"
@@ -4725,6 +4433,10 @@ msgstr "Köreparation"
msgid "Show active connections"
msgstr "Visa aktiva anslutningar"
#: sabnzbd/skintext.py
msgid "Unblock"
msgstr "Ta bort blockering"
#: sabnzbd/skintext.py
msgid "Orphaned jobs"
msgstr "Övergivna jobb"
@@ -4757,18 +4469,6 @@ msgstr "Alternativt ange ett filnamn"
msgid "Submit"
msgstr "Skicka"
#: sabnzbd/skintext.py
msgid "Open Informational URL"
msgstr "Öppen informations URL"
#: sabnzbd/skintext.py
msgid "Submitted. Thank you!"
msgstr "Skickat. Tack!"
#: sabnzbd/skintext.py
msgid "Nothing selected!"
msgstr "Inget markerat!"
#: sabnzbd/skintext.py
msgid "Remove all selected files"
msgstr "Ta bort alla markerade filer"
@@ -4777,6 +4477,14 @@ msgstr "Ta bort alla markerade filer"
msgid "Hide/show completed files"
msgstr "Visa/göm färdiga filer"
#: sabnzbd/skintext.py
msgid "Top"
msgstr "Topp"
#: sabnzbd/skintext.py
msgid "Bottom"
msgstr "Botten"
#: sabnzbd/skintext.py
msgid "View Script Log"
msgstr "Visa skriptlogg"
@@ -4795,6 +4503,10 @@ msgstr ""
msgid "Glitter has some (new) features you might like!"
msgstr ""
#: sabnzbd/skintext.py
msgid "Custom"
msgstr "Anpassa"
#: sabnzbd/skintext.py
msgid "Compact layout"
msgstr ""
@@ -4807,6 +4519,10 @@ msgstr ""
msgid "Tabbed layout <br/>(separate queue and history)"
msgstr ""
#: sabnzbd/skintext.py
msgid "Speed"
msgstr "Hastighet"
#: sabnzbd/skintext.py
msgid "Confirm Queue Deletions"
msgstr "Bekräfta Kö-borttagningar"
@@ -4841,6 +4557,10 @@ msgid ""
" and the included copy of your settings."
msgstr ""
#: sabnzbd/skintext.py
msgid "Sort by % downloaded <small>Most&rarr;Least</small>"
msgstr ""
#: sabnzbd/skintext.py
msgid "Sort by Age <small>Oldest&rarr;Newest</small>"
msgstr "Sortera efter ålder <small>Äldst&rarr;Nyast</small>"
@@ -4989,19 +4709,6 @@ msgstr ""
"Detta är gratis mjukvara, du är välkommen att sprida det under vissa omständigheter.\n"
"Det är licensierat under GNU GENERAL PUBLIC LICENSE Version 2 eller (ditt val) en senare version.\n"
#: sabnzbd/skintext.py
msgid ""
"In order to download from usenet you will require access to a provider. Your"
" ISP may provide you with access, however a premium provider is recommended."
msgstr ""
"För att ladda ner från usenet du behöver tillgång till en leverantör. Din "
"internetleverantör kan ge dig tillgång, men en premie leverantör "
"rekommenderas."
#: sabnzbd/skintext.py
msgid "Don't have a usenet provider? We recommend trying %s."
msgstr "Har du inte någon usenet leverantör? Vi rekommenderar att prova %s."
#. Error message
#: sabnzbd/sorting.py
msgid "Failed to rename: %s to %s"
@@ -5071,10 +4778,6 @@ msgid ""
"Unknown SSL protocol: Try disabling SSL or connecting on a different port."
msgstr ""
#: sabnzbd/utils/servertests.py
msgid "Invalid server address."
msgstr "Ogiltig serveradress"
#: sabnzbd/utils/servertests.py
msgid "Server quit during login sequence."
msgstr "Servern avslutades under inloggning"

View File

@@ -7,7 +7,7 @@
#
msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
"Project-Id-Version: SABnzbd-3.7.0-develop\n"
"PO-Revision-Date: 2020-06-27 15:49+0000\n"
"Last-Translator: Safihre <safihre@sabnzbd.org>, 2022\n"
"Language-Team: Chinese (China) (https://www.transifex.com/sabnzbd/teams/111101/zh_CN/)\n"
@@ -177,11 +177,7 @@ msgstr "测试通知"
msgid "&nbsp;Resolving address"
msgstr "&nbsp;正在解析地址"
#: sabnzbd/api.py
msgid "unknown"
msgstr "未知"
#. No value, used in dropdown menus - Job details page, select no files
#. No value, used in dropdown menus
#: sabnzbd/api.py, sabnzbd/skintext.py
msgid "None"
msgstr "无"
@@ -278,6 +274,10 @@ msgstr "%s 不是有效的电子邮箱地址"
msgid "Server address required"
msgstr "服务器地址必填"
#: sabnzbd/cfg.py, sabnzbd/utils/servertests.py
msgid "Invalid server address."
msgstr "服务器地址无效。"
#: sabnzbd/cfg.py
msgid "%s is not a valid script"
msgstr ""
@@ -373,7 +373,7 @@ msgstr ""
msgid "Direct Unpack"
msgstr ""
#. PP status - History: job status
#. PP status
#: sabnzbd/directunpacker.py, sabnzbd/skintext.py
msgid "Completed"
msgstr "完成"
@@ -427,6 +427,11 @@ msgstr "服务器名无法解析"
msgid "Server %s will be ignored for %s minutes"
msgstr "服务器 %s 将被忽略 %s 分钟"
#. Warning message
#: sabnzbd/downloader.py
msgid "There are no active servers!"
msgstr ""
#. Error message
#: sabnzbd/downloader.py
msgid "Failed to initialize %s@%s with reason: %s"
@@ -592,6 +597,18 @@ msgstr "保存 %s 失败"
msgid "Loading %s failed"
msgstr "加载 %s 失败"
#. Warning message
#: sabnzbd/filesystem.py
msgid ""
"%s is not writable with special character filenames. This can cause "
"problems."
msgstr ""
#. Warning message
#: sabnzbd/filesystem.py
msgid "%s is not writable at all. This blocks downloads."
msgstr ""
#: sabnzbd/interface.py
msgid "Refused connection from:"
msgstr ""
@@ -621,12 +638,6 @@ msgid ""
"program:"
msgstr "API Key 不正确,请在第三方程序中使用“配置”->“常规”中的 api key:"
#: sabnzbd/interface.py
msgid ""
"Authentication missing, please enter username/password from Config->General "
"into your 3rd party program:"
msgstr "缺身份认证信息,请在第三方程序中输入“配置”->“常规”中的用户名/密码:"
#: sabnzbd/interface.py, sabnzbd/newswrapper.py, sabnzbd/utils/servertests.py
msgid "Authentication failed, check username/password."
msgstr "身份认证失败,请检查用户名/密码。"
@@ -1170,27 +1181,27 @@ msgstr "已中止,无法完成"
msgid "Error importing %s"
msgstr "导入 %s 出错"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "DUPLICATE"
msgstr "*重复*"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "ENCRYPTED"
msgstr "*加密*"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "TOO LARGE"
msgstr "*太大*"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "INCOMPLETE"
msgstr "*不完整*"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "UNWANTED"
msgstr "不需要"
#: sabnzbd/nzbstuff.py, sabnzbd/skintext.py
#: sabnzbd/nzbstuff.py
msgid "WAIT %s sec"
msgstr "*等待* %s 秒"
@@ -1538,13 +1549,13 @@ msgid "Trying RAR-based verification"
msgstr "正在尝试基于 RAR 的验证"
#: sabnzbd/postproc.py
msgid "[%s] RAR-based verification failed: %s"
msgstr "[%s] 基于 RAR 的验证失败: %s"
#: sabnzbd/postproc.py, sabnzbd/skintext.py
msgid "Passworded"
msgstr "有密码"
#: sabnzbd/postproc.py
msgid "[%s] RAR-based verification failed: %s"
msgstr "[%s] 基于 RAR 的验证失败: %s"
#: sabnzbd/postproc.py
msgid "RAR files verified successfully"
msgstr "RAR 文件验证成功"
@@ -1659,7 +1670,7 @@ msgstr "暂停 3 小时"
msgid "Pause for 6 hours"
msgstr "暂停 6 小时"
#. Shutdown SABnzbd - Config->Scheduling
#. Config->Scheduling
#: sabnzbd/sabtray.py, sabnzbd/sabtraylinux.py, sabnzbd/skintext.py
msgid "Shutdown"
msgstr "关闭"
@@ -1728,11 +1739,6 @@ msgstr "来源"
msgid "Servers"
msgstr "服务器"
#. PP Failure message
#: sabnzbd/skintext.py
msgid "Failure"
msgstr "失败"
#. PP status
#: sabnzbd/skintext.py
msgid "Failed"
@@ -1778,20 +1784,6 @@ msgstr "快速检查..."
msgid "Verifying..."
msgstr "正在验证..."
#. Pseudo-PP status, in reality used for Queue-status
#: sabnzbd/skintext.py
msgid "Downloading"
msgstr "正在下载"
#: sabnzbd/skintext.py
msgid "Propagation delay"
msgstr "传播延迟"
#. #: Config->Scheduler
#: sabnzbd/skintext.py
msgid "Task"
msgstr "任务"
#. #: Config->Scheduler
#: sabnzbd/skintext.py
msgid "disable server"
@@ -1922,21 +1914,6 @@ msgstr "紧急"
msgid "Low"
msgstr "低"
#. Megabytes
#: sabnzbd/skintext.py
msgid "MB"
msgstr "MB"
#. Gigabytes
#: sabnzbd/skintext.py
msgid "GB"
msgstr "GB"
#. Bytes (used as postfix, as in "GB", "TB")
#: sabnzbd/skintext.py
msgid "B"
msgstr "B"
#. One hour
#: sabnzbd/skintext.py
msgid "hour"
@@ -1982,54 +1959,6 @@ msgstr "月"
msgid "Year"
msgstr "年"
#: sabnzbd/skintext.py
msgid "January"
msgstr ""
#: sabnzbd/skintext.py
msgid "February"
msgstr ""
#: sabnzbd/skintext.py
msgid "March"
msgstr ""
#: sabnzbd/skintext.py
msgid "April"
msgstr ""
#: sabnzbd/skintext.py
msgid "May"
msgstr ""
#: sabnzbd/skintext.py
msgid "June"
msgstr ""
#: sabnzbd/skintext.py
msgid "July"
msgstr ""
#: sabnzbd/skintext.py
msgid "August"
msgstr ""
#: sabnzbd/skintext.py
msgid "September"
msgstr ""
#: sabnzbd/skintext.py
msgid "October"
msgstr ""
#: sabnzbd/skintext.py
msgid "November"
msgstr ""
#: sabnzbd/skintext.py
msgid "December"
msgstr ""
#: sabnzbd/skintext.py
msgid "Day of month"
msgstr "每月特定一天"
@@ -2054,14 +1983,6 @@ msgstr "今天"
msgid "Total"
msgstr "总计"
#: sabnzbd/skintext.py
msgid "Custom"
msgstr "自定义"
#: sabnzbd/skintext.py
msgid "Speed"
msgstr "速度"
#: sabnzbd/skintext.py
msgid "on"
msgstr "开"
@@ -2090,42 +2011,10 @@ msgstr "或"
msgid "Host"
msgstr "主机"
#: sabnzbd/skintext.py
msgid "Comment"
msgstr "评论"
#: sabnzbd/skintext.py
msgid "Send"
msgstr "发送"
#: sabnzbd/skintext.py
msgid "Cancel"
msgstr "取消"
#: sabnzbd/skintext.py
msgid "Other"
msgstr "其他"
#: sabnzbd/skintext.py
msgid "Report"
msgstr "报告"
#: sabnzbd/skintext.py
msgid "Video"
msgstr "视频"
#: sabnzbd/skintext.py
msgid "Audio"
msgstr "音频"
#: sabnzbd/skintext.py
msgid "Not used"
msgstr "未使用"
#: sabnzbd/skintext.py
msgid "or less"
msgstr "或更少"
#: sabnzbd/skintext.py
msgid "Log in"
msgstr "登录"
@@ -2138,11 +2027,6 @@ msgstr "注销"
msgid "Remember me"
msgstr "记住我"
#. SABnzbd's theme line
#: sabnzbd/skintext.py
msgid "The automatic usenet download tool"
msgstr "usenet 自动下载工具"
#. "Save" button
#: sabnzbd/skintext.py
msgid "Save"
@@ -2157,11 +2041,6 @@ msgstr "正在保存.."
msgid "Are you sure?"
msgstr "是否确定?"
#. Used in confirmation popups
#: sabnzbd/skintext.py
msgid "Delete all downloaded files?"
msgstr "删除全部已下载文件?"
#. Main menu item
#: sabnzbd/skintext.py
msgid "Home"
@@ -2261,22 +2140,6 @@ msgstr "搜索"
msgid "Download Dir"
msgstr "下载目录"
#: sabnzbd/skintext.py
msgid "PAUSED"
msgstr "*已暂停*"
#: sabnzbd/skintext.py
msgid "Cached %s articles (%s)"
msgstr "已缓存 %s 篇文章 (%s)"
#: sabnzbd/skintext.py
msgid "Sysload"
msgstr "系统负载"
#: sabnzbd/skintext.py
msgid "New release %s available at"
msgstr "新版 %s 已发布,下载:"
#: sabnzbd/skintext.py
msgid "Are you sure you want to shutdown SABnzbd?"
msgstr "是否确定要关闭 SABnzbd?"
@@ -2286,21 +2149,11 @@ msgstr "是否确定要关闭 SABnzbd?"
msgid "Add"
msgstr "添加"
#. Add NZB file to queue (header
#: sabnzbd/skintext.py
msgid "Add File"
msgstr "添加文件"
#. Job category
#: sabnzbd/skintext.py
msgid "Category"
msgstr "分类"
#. Queue page table column header
#: sabnzbd/skintext.py
msgid "Processing"
msgstr "处理"
#. Server priority
#: sabnzbd/skintext.py
msgid "Priority"
@@ -2321,21 +2174,6 @@ msgstr "+解压"
msgid "+Delete"
msgstr "+删除"
#. Post processing pick list: abbreviation for "+Repair"
#: sabnzbd/skintext.py
msgid "R"
msgstr "修"
#. Post processing pick list: abbreviation for "+Unpack"
#: sabnzbd/skintext.py
msgid "U"
msgstr "解"
#. Post processing pick list: abbreviation for "+Delete"
#: sabnzbd/skintext.py
msgid "D"
msgstr "删"
#. Priority pick list
#: sabnzbd/skintext.py
msgid "Force"
@@ -2351,11 +2189,6 @@ msgstr "停止"
msgid "Enter URL"
msgstr "输入 URL"
#. Queue page selection menu
#: sabnzbd/skintext.py
msgid "On queue finish"
msgstr "队列完成时"
#. Queue page end-of-queue action
#: sabnzbd/skintext.py
msgid "Shutdown PC"
@@ -2376,36 +2209,16 @@ msgstr "电脑休眠"
msgid "Shutdown SABnzbd"
msgstr "关闭 SABnzbd"
#. Queue page selection menu or entry box
#. Queue page table column header
#: sabnzbd/skintext.py
msgid "Speed Limit"
msgstr "限速"
msgid "Processing"
msgstr "处理"
#. Queue page table column header - Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Order"
msgstr "序号"
#. Queue page table column header - Job details page
#. Queue page table column header
#: sabnzbd/skintext.py
msgid "Name"
msgstr "名称"
#. Queue page table column header, "estimated time of arrival"
#: sabnzbd/skintext.py
msgid "ETA"
msgstr "大约完成"
#. Queue page table column header, "age of the NZB"
#: sabnzbd/skintext.py
msgid "AGE"
msgstr "发布时间"
#. Queue page table, "Delete" button
#: sabnzbd/skintext.py
msgid "Del"
msgstr "删除"
#. Queue page button
#: sabnzbd/skintext.py
msgid "Retry"
@@ -2436,11 +2249,6 @@ msgstr "清空 NZB"
msgid "Purge NZBs & Delete Files"
msgstr "清空 NZB 并删除文件"
#. Retry all failed jobs dialog box
#: sabnzbd/skintext.py
msgid "Retry all failed jobs"
msgstr "重新尝试下载所有已失败任务"
#. Queue page button
#: sabnzbd/skintext.py
msgid "Remove NZB"
@@ -2451,11 +2259,6 @@ msgstr "移除 NZB"
msgid "Remove NZB & Delete Files"
msgstr "移除 NZB 并删除文件"
#. Queue page, as in "4G *of* 10G"
#: sabnzbd/skintext.py
msgid "of"
msgstr "/"
#. Caption for missing articles in Queue
#: sabnzbd/skintext.py
msgid "Missing articles"
@@ -2475,11 +2278,6 @@ msgstr "手动"
msgid "Reset Quota now"
msgstr "立即重置配额"
#. Confirmation popup
#: sabnzbd/skintext.py
msgid "Delete all completed items from History?"
msgstr "从“历史”中删除所有已完成项?"
#. Button/link hiding History job details
#: sabnzbd/skintext.py
msgid "Hide details"
@@ -2536,25 +2334,8 @@ msgstr "路径"
#. Retry all failed jobs in History
#: sabnzbd/skintext.py
msgid "Retry all failed"
msgstr "重所有失败任务"
#. Retry all button for Retry All Failed Jobs
#: sabnzbd/skintext.py
msgid "Retry All"
msgstr "重试所有"
#: sabnzbd/skintext.py
msgid "Virus/spam"
msgstr "病毒/垃圾"
#: sabnzbd/skintext.py
msgid "Out of retention"
msgstr "超出保留期"
#: sabnzbd/skintext.py
msgid "Other problem"
msgstr "其他问题"
msgid "Retry all failed jobs"
msgstr "重新尝试下载所有失败任务"
#. Status page button
#: sabnzbd/skintext.py
@@ -2606,21 +2387,6 @@ msgstr "+ 调试"
msgid "Connections"
msgstr "连接"
#. Status page, table header
#: sabnzbd/skintext.py
msgid "Latest Warnings"
msgstr "最新警告信息"
#. Status page button
#: sabnzbd/skintext.py
msgid "clear"
msgstr "清除"
#. Status page button
#: sabnzbd/skintext.py
msgid "Unblock"
msgstr "解封"
#. Status page, article identifier
#: sabnzbd/skintext.py
msgid "Article identifier"
@@ -2631,26 +2397,11 @@ msgstr "文章 id"
msgid "File set"
msgstr "文件集"
#. Status page, table column header, when error occured
#: sabnzbd/skintext.py
msgid "When"
msgstr "时间"
#. Status page, table column header, type of message - Config->RSS table
#. column header
#: sabnzbd/skintext.py
msgid "Type"
msgstr "类型"
#. Status page, indicator that server is enabled
#: sabnzbd/skintext.py
msgid "Enabled"
msgstr "启用"
#: sabnzbd/skintext.py
msgid "Dashboard"
msgstr "控制台"
#: sabnzbd/skintext.py
msgid "Connection failed!"
msgstr "连接失败!"
@@ -2671,10 +2422,6 @@ msgstr "IPv6 地址"
msgid "Nameserver / DNS Lookup"
msgstr "域名服务器 / DNS 查询"
#: sabnzbd/skintext.py
msgid "CPU Model"
msgstr "CPU 型号"
#: sabnzbd/skintext.py
msgid "Download speed limited by"
msgstr ""
@@ -2687,6 +2434,10 @@ msgstr ""
msgid "Disk speed"
msgstr ""
#: sabnzbd/skintext.py
msgid "System load"
msgstr ""
#. Do not translate Pystone
#: sabnzbd/skintext.py
msgid "System Performance (Pystone)"
@@ -2700,22 +2451,10 @@ msgstr "下载文件夹读写速度"
msgid "Complete folder speed"
msgstr "完成文件夹写入速度"
#: sabnzbd/skintext.py
msgid "Writing speed"
msgstr "写入速度"
#: sabnzbd/skintext.py
msgid "Could not write. Check that the directory is writable."
msgstr "无法写入。请确保该目录有写入权限。"
#: sabnzbd/skintext.py
msgid "Internet Bandwidth"
msgstr ""
#: sabnzbd/skintext.py
msgid "Click on Repeat test button below to determine"
msgstr "点击下面的“重复”按钮可开始测试"
#: sabnzbd/skintext.py
msgid "Repeat test"
msgstr "重复测试"
@@ -2887,10 +2626,6 @@ msgstr "安全"
msgid "Enable HTTPS"
msgstr "启用 HTTPS"
#: sabnzbd/skintext.py
msgid "not installed"
msgstr "未安装"
#: sabnzbd/skintext.py
msgid "Enable accessing the interface from a HTTPS address."
msgstr "启用 HTTPS 地址访问界面。"
@@ -2974,12 +2709,17 @@ msgid ""
" follow with K,M,G. For example: \"64M\" or \"128M\"</i>"
msgstr "在内存中缓存文章,以减轻硬盘访问压力。<br /><i>单位为字节,可以选择加上 K、M、G 后缀。例如: \"64M\" 或 \"128M\"</i>"
#. Config->Scheduling
#: sabnzbd/skintext.py
msgid "Download backup"
msgid "Create backup"
msgstr ""
#: sabnzbd/skintext.py
msgid "Save or restore a backup of the configuration file and databases."
msgid ""
"Create a backup of the configuration file and databases in the Backup "
"Folder.<br>If the Backup Folder is not set, the backup will be created in "
"the Completed Download Folder.<br>Recurring backups can be configured on the"
" Scheduling page."
msgstr ""
#: sabnzbd/skintext.py
@@ -3119,10 +2859,6 @@ msgstr "用户文件夹"
msgid "Browse"
msgstr "浏览"
#: sabnzbd/skintext.py
msgid "In"
msgstr "位于"
#: sabnzbd/skintext.py
msgid "Temporary Download Folder"
msgstr "临时下载文件夹"
@@ -3240,6 +2976,17 @@ msgid ""
"when queue is empty.</i>"
msgstr "队列管理及历史数据库的存放位置。<br /><i>仅当队列为空时可以修改。</i>"
#: sabnzbd/skintext.py
msgid "Backup Folder"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Location where the backups of the configuration file and databases are "
"stored.<br />If left empty, the backup will be created in the Completed "
"Download Folder."
msgstr ""
#: sabnzbd/skintext.py
msgid "<i>Data will <b>not</b> be moved. Requires SABnzbd restart!</i>"
msgstr "<i>数据<b>不会</b>自动移动。需要重启 SABnzbd 才能生效!</i>"
@@ -3422,16 +3169,6 @@ msgstr "失败时,尝试备用 NZB"
msgid "Some servers provide an alternative NZB when a download fails."
msgstr "部分服务器在下载失败时可提供备用 NZB 文件。"
#: sabnzbd/skintext.py
msgid "Use tags from indexer"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"When sorting, use tags from indexer for title, season, episode, etc. "
"Otherwise all naming is derived from the NZB name."
msgstr ""
#: sabnzbd/skintext.py
msgid "Enable folder rename"
msgstr "启用文件夹重命名"
@@ -3482,6 +3219,14 @@ msgstr ""
msgid "Automatically sort jobs in the queue when a new job is added."
msgstr ""
#: sabnzbd/skintext.py
msgid "The queue will resort every 30 seconds if % downloaded is selected."
msgstr ""
#: sabnzbd/skintext.py
msgid "Propagation delay"
msgstr "传播延迟"
#: sabnzbd/skintext.py
msgid ""
"Posts will be paused untill they are at least this age. Setting job priority"
@@ -3509,6 +3254,14 @@ msgstr "替换文件夹名称中的空格"
msgid "Replace spaces with underscores in folder names."
msgstr "将文件夹名称中的空格替换成下划线。"
#: sabnzbd/skintext.py
msgid "Replace underscores in folder name"
msgstr ""
#: sabnzbd/skintext.py
msgid "Replace underscores with dots in folder names."
msgstr ""
#: sabnzbd/skintext.py
msgid "Replace dots in Foldername"
msgstr "替换文件夹名称中的点号"
@@ -3604,10 +3357,6 @@ msgstr "命名"
msgid "Quota"
msgstr "配额"
#: sabnzbd/skintext.py
msgid "Indexing"
msgstr "正在索引"
#: sabnzbd/skintext.py
msgid "How much can be downloaded this month (K/M/G)"
msgstr "本月能下载多少数据量 (K/M/G)"
@@ -3855,7 +3604,7 @@ msgstr "添加定时任务"
msgid "Frequency"
msgstr "频率"
#. Config->Scheduling - Job details page, section header
#. Config->Scheduling
#: sabnzbd/skintext.py
msgid "Action"
msgstr "动作"
@@ -3905,6 +3654,16 @@ msgstr ""
msgid "Next scan at"
msgstr ""
#. Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Order"
msgstr "序号"
#. Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Type"
msgstr "类型"
#. Config->RSS table column header
#: sabnzbd/skintext.py
msgid "Filter"
@@ -4249,11 +4008,6 @@ msgstr "文件夹/路径"
msgid "Indexer Categories / Groups"
msgstr "索引 Categories / Groups"
#. Small delete button
#: sabnzbd/skintext.py
msgid "X"
msgstr "X"
#. Warning message
#: sabnzbd/skintext.py, sabnzbd/sorting.py
msgid "Select at least 1 category."
@@ -4284,10 +4038,6 @@ msgstr "应用过滤器"
msgid "Presets"
msgstr "预设"
#: sabnzbd/skintext.py
msgid "Example"
msgstr "示例"
#. Warning message
#: sabnzbd/skintext.py, sabnzbd/sorting.py
msgid "Movie Sorting"
@@ -4297,10 +4047,6 @@ msgstr "电影排序"
msgid "Enable Movie Sorting"
msgstr "启用电影排序"
#: sabnzbd/skintext.py
msgid "Keep loose downloads in extra folders"
msgstr "将下载内容保留在额外文件夹"
#: sabnzbd/skintext.py
msgid "Affected Categories"
msgstr "影响分类"
@@ -4515,51 +4261,11 @@ msgstr "编辑 NZB 详情"
msgid "Delete"
msgstr "删除"
#. Job details page, move file to top
#: sabnzbd/skintext.py
msgid "Top"
msgstr "置顶"
#. Job details page, move file one place up
#: sabnzbd/skintext.py
msgid "Up"
msgstr "上移"
#. Job details page, move file one place down
#: sabnzbd/skintext.py
msgid "Down"
msgstr "下移"
#. Job details page, move file to bottom
#: sabnzbd/skintext.py
msgid "Bottom"
msgstr "置底"
#. Job details page, select all files
#: sabnzbd/skintext.py
msgid "All"
msgstr "全部"
#. Job details page, invert file selection
#: sabnzbd/skintext.py
msgid "Invert"
msgstr "反选"
#. Job details page, filename column header
#: sabnzbd/skintext.py
msgid "Filename"
msgstr "文件名"
#. Job details page, subject column header
#: sabnzbd/skintext.py
msgid "Subject"
msgstr "主题"
#. Job details page, section header
#: sabnzbd/skintext.py
msgid "Selection"
msgstr "选择"
#: sabnzbd/skintext.py
msgid "Free Space"
msgstr "剩余空间"
@@ -4584,6 +4290,10 @@ msgstr "全选"
msgid "Restart SABnzbd"
msgstr "重新启动 SABnzbd"
#: sabnzbd/skintext.py
msgid "On queue finish"
msgstr "队列完成时"
#: sabnzbd/skintext.py
msgid "Status and interface options"
msgstr "状态与界面选项"
@@ -4660,6 +4370,10 @@ msgstr "队列修复"
msgid "Show active connections"
msgstr "显示活动连接"
#: sabnzbd/skintext.py
msgid "Unblock"
msgstr "解封"
#: sabnzbd/skintext.py
msgid "Orphaned jobs"
msgstr "孤立任务"
@@ -4692,18 +4406,6 @@ msgstr "可以选择指定文件名"
msgid "Submit"
msgstr "提交"
#: sabnzbd/skintext.py
msgid "Open Informational URL"
msgstr "打开信息 URL"
#: sabnzbd/skintext.py
msgid "Submitted. Thank you!"
msgstr "已提交。感谢!"
#: sabnzbd/skintext.py
msgid "Nothing selected!"
msgstr "未选择任何内容!"
#: sabnzbd/skintext.py
msgid "Remove all selected files"
msgstr "移除已选文件"
@@ -4712,6 +4414,14 @@ msgstr "移除已选文件"
msgid "Hide/show completed files"
msgstr "隐藏/显示已完成文件"
#: sabnzbd/skintext.py
msgid "Top"
msgstr "置顶"
#: sabnzbd/skintext.py
msgid "Bottom"
msgstr "置底"
#: sabnzbd/skintext.py
msgid "View Script Log"
msgstr "查看脚本日志"
@@ -4730,6 +4440,10 @@ msgstr "您的浏览器已禁用 LocalStorage (cookies)。界面设置将在您
msgid "Glitter has some (new) features you might like!"
msgstr "你可能会喜欢一些 Glitter 的(新)功能!"
#: sabnzbd/skintext.py
msgid "Custom"
msgstr "自定义"
#: sabnzbd/skintext.py
msgid "Compact layout"
msgstr "精简外观"
@@ -4742,6 +4456,10 @@ msgstr ""
msgid "Tabbed layout <br/>(separate queue and history)"
msgstr "标签化外观 <br/>(分别显示队列与历史记录)"
#: sabnzbd/skintext.py
msgid "Speed"
msgstr "速度"
#: sabnzbd/skintext.py
msgid "Confirm Queue Deletions"
msgstr "确认队列删除"
@@ -4776,6 +4494,10 @@ msgid ""
" and the included copy of your settings."
msgstr ""
#: sabnzbd/skintext.py
msgid "Sort by % downloaded <small>Most&rarr;Least</small>"
msgstr ""
#: sabnzbd/skintext.py
msgid "Sort by Age <small>Oldest&rarr;Newest</small>"
msgstr "按发布时间排序 <small>最早&rarr;最新</small>"
@@ -4920,16 +4642,6 @@ msgstr ""
"这是一款自由软件,欢迎您在约定的条件下传播。\n"
"本软件依 GNU GENERAL PUBLIC LICENSE 第 2 版或 (若您愿意) 任意较新版本授权。\n"
#: sabnzbd/skintext.py
msgid ""
"In order to download from usenet you will require access to a provider. Your"
" ISP may provide you with access, however a premium provider is recommended."
msgstr "要从 usenet 下载您需要有一家提供商的访问权限。您的 ISP 可能会为您提供权限,但推荐您选用付费的高级提供商。"
#: sabnzbd/skintext.py
msgid "Don't have a usenet provider? We recommend trying %s."
msgstr "还没有 usenet 提供商r? 我们推荐试试 %s。"
#. Error message
#: sabnzbd/sorting.py
msgid "Failed to rename: %s to %s"
@@ -4998,10 +4710,6 @@ msgid ""
"Unknown SSL protocol: Try disabling SSL or connecting on a different port."
msgstr "未知的 SSL 协议:尝试禁用 SSL 或者连接不同的端口。"
#: sabnzbd/utils/servertests.py
msgid "Invalid server address."
msgstr "服务器地址无效。"
#: sabnzbd/utils/servertests.py
msgid "Server quit during login sequence."
msgstr "登录过程中服务器退出。"

View File

@@ -5,7 +5,7 @@
#
msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
"Project-Id-Version: SABnzbd-3.7.0-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"

View File

@@ -2,10 +2,14 @@
# Copyright 2007-2022 The SABnzbd-Team
# team@sabnzbd.org
#
# Translators:
# Pavel C <quoing_transifex@mess.cz>, 2022
#
msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
"Project-Id-Version: SABnzbd-3.7.0-develop\n"
"PO-Revision-Date: 2020-06-27 15:56+0000\n"
"Last-Translator: Pavel C <quoing_transifex@mess.cz>, 2022\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"
@@ -19,7 +23,7 @@ msgstr ""
#: builder/win/NSIS_Installer.nsi
msgid "Support the project, Donate!"
msgstr ""
msgstr "Podpořte projekt!"
#: builder/win/NSIS_Installer.nsi
msgid "Please close \"SABnzbd.exe\" first"

View File

@@ -7,7 +7,7 @@
#
msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
"Project-Id-Version: SABnzbd-3.7.0-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"

View File

@@ -8,7 +8,7 @@
#
msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
"Project-Id-Version: SABnzbd-3.7.0-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"

View File

@@ -8,7 +8,7 @@
#
msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
"Project-Id-Version: SABnzbd-3.7.0-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"
@@ -16,7 +16,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: es\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"Plural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"
#: builder/win/NSIS_Installer.nsi
msgid "Show Release Notes"

View File

@@ -7,7 +7,7 @@
#
msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
"Project-Id-Version: SABnzbd-3.7.0-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"

View File

@@ -8,7 +8,7 @@
#
msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
"Project-Id-Version: SABnzbd-3.7.0-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"
@@ -16,7 +16,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: fr\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"Plural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"
#: builder/win/NSIS_Installer.nsi
msgid "Show Release Notes"

View File

@@ -8,7 +8,7 @@
#
msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
"Project-Id-Version: SABnzbd-3.7.0-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"

View File

@@ -7,7 +7,7 @@
#
msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
"Project-Id-Version: SABnzbd-3.7.0-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"

View File

@@ -7,7 +7,7 @@
#
msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
"Project-Id-Version: SABnzbd-3.7.0-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"

View File

@@ -7,7 +7,7 @@
#
msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
"Project-Id-Version: SABnzbd-3.7.0-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"

View File

@@ -7,7 +7,7 @@
#
msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
"Project-Id-Version: SABnzbd-3.7.0-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"
@@ -15,7 +15,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: pt_BR\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"Plural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"
#: builder/win/NSIS_Installer.nsi
msgid "Show Release Notes"

View File

@@ -7,7 +7,7 @@
#
msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
"Project-Id-Version: SABnzbd-3.7.0-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"

View File

@@ -7,7 +7,7 @@
#
msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
"Project-Id-Version: SABnzbd-3.7.0-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"

View File

@@ -7,7 +7,7 @@
#
msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
"Project-Id-Version: SABnzbd-3.7.0-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"

View File

@@ -7,7 +7,7 @@
#
msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
"Project-Id-Version: SABnzbd-3.7.0-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"

View File

@@ -7,7 +7,7 @@
#
msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-3.6.0Beta3\n"
"Project-Id-Version: SABnzbd-3.7.0-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"

View File

@@ -1,42 +1,46 @@
# Main requirements
# Note that not all sub-dependencies are listed, but only ones we know could cause trouble
sabyenc3==5.1.7
cheetah3==3.2.6 # pyup: ignore
cffi==1.15
sabyenc3==5.4.4
cheetah3==3.2.6.post1
cffi==1.15.1
pycparser==2.21
feedparser==6.0.8
feedparser==6.0.10
configobj==5.0.6
cheroot==8.6.0
six==1.16.0
cherrypy==18.6.1
jaraco.functools==3.5.0
jaraco.collections==3.5.1
jaraco.text==3.7.0
jaraco.classes==3.2.1
jaraco.context==4.1.1
more-itertools==8.12.0
cherrypy==18.8.0
jaraco.functools==3.5.1
jaraco.collections==3.5.2
jaraco.text==3.8.1 # Newer version introduces irrelevant extra dependencies
jaraco.classes==3.2.2
jaraco.context==4.1.2
more-itertools==8.14.0
zc.lockfile==2.0
python-dateutil==2.8.2
tempora==5.0.1
pytz==2022.1
tempora==5.0.2
pytz==2022.2.1
sgmllib3k==1.0.0
portend==3.1.0
chardet==4.0.0
chardet==5.0.0
PySocks==1.7.1
puremagic==1.12
puremagic==1.14
guessit==3.4.3
babelfish==0.6.0
rebulk==3.1.0
# Recent cryptography versions require Rust. If this is an issue, SABnzbd will
# also work with older pre-Rust versions such as cryptography==3.3.2
cryptography==36.0.2
# Recent cryptography versions require Rust. If you run into issues compiling this
# SABnzbd will also work with older pre-Rust versions such as cryptography==3.3.2
cryptography==38.0.1
# We recommend using "orjson" as it is 2x as fast as "ujson". However, it requires
# Rust so SABnzbd works just as well with "ujson" or the Python built in "json" module
ujson==5.5.0
# Windows system integration
pywin32==303; sys_platform == 'win32'
pywin32==304; sys_platform == 'win32'
# macOS system calls
pyobjc==8.4.1; sys_platform == 'darwin'
pyobjc==8.5.1; sys_platform == 'darwin'
# Linux notifications
notify2==0.3.1; sys_platform != 'win32' and sys_platform != 'darwin'

View File

@@ -242,15 +242,12 @@ def initialize(pause_downloader=False, clean_up=False, repair=0):
# Optionally wait for "incomplete" to become online
if cfg.wait_for_dfolder():
filesystem.wait_for_download_folder()
else:
cfg.download_dir.set(cfg.download_dir(), create=True)
cfg.download_dir.set_create(True)
# If dirscan_dir cannot be created, set a proper value anyway.
# Maybe it's a network path that's temporarily missing.
path = cfg.dirscan_dir.get_path()
if not os.path.exists(path):
filesystem.create_real_path(cfg.dirscan_dir.keyword, "", path, False)
# Set the folders to be created, then the check_incomplete_vs_complete
# check will create them by calling get_path on them
cfg.download_dir.set_create(True)
cfg.complete_dir.set_create(True)
filesystem.check_incomplete_vs_complete()
# Set call backs for Config items
cfg.cache_limit.callback(cfg.new_limit)
@@ -275,8 +272,6 @@ def initialize(pause_downloader=False, clean_up=False, repair=0):
cfg.enable_https_verification.callback(cfg.guard_https_ver)
cfg.guard_https_ver()
filesystem.check_incomplete_vs_complete()
# Set language files
lang.set_locale_info("SABnzbd", DIR_LANGUAGE)
lang.set_language(cfg.language())
@@ -517,6 +512,9 @@ def check_all_tasks():
# Check (and terminate) idle jobs
sabnzbd.NzbQueue.stop_idle_jobs()
# Check that the queue is sorted correctly
sabnzbd.NzbQueue.update_sort_order()
return True

View File

@@ -23,14 +23,22 @@ import os
import logging
import re
import gc
import datetime
import time
import json
import getpass
import cherrypy
from threading import Thread
from typing import Tuple, Optional, List, Dict, Any
# For json.dumps, orjson is magnitudes faster than ujson, but it is harder to
# compile due to Rust dependency. Since the output is the same, we support all modules.
try:
import orjson as json
except ImportError:
try:
import ujson as json
except ImportError:
import json
import sabnzbd
from sabnzbd.constants import (
VALID_ARCHIVES,
@@ -54,8 +62,6 @@ from sabnzbd.misc import (
loadavg,
to_units,
int_conv,
time_format,
cat_convert,
create_https_certificates,
calc_age,
opts_to_pp,
@@ -252,31 +258,27 @@ def _api_queue_sort(value, kwargs):
def _api_queue_default(value, kwargs):
"""API: accepts sort, dir, start, limit"""
"""API: accepts sort, dir, start, limit and search terms"""
start = int_conv(kwargs.get("start"))
limit = int_conv(kwargs.get("limit"))
search = kwargs.get("search")
categories = kwargs.get("cat") or kwargs.get("category")
priorities = kwargs.get("priority")
nzo_ids = kwargs.get("nzo_ids")
if categories and not isinstance(categories, list):
categories = categories.split(",")
if priorities and not isinstance(priorities, list):
# Make sure it's an integer
priorities = [int_conv(prio) for prio in priorities.split(",")]
if nzo_ids and not isinstance(nzo_ids, list):
nzo_ids = nzo_ids.split(",")
return report(keyword="queue", data=build_queue(start=start, limit=limit, search=search, nzo_ids=nzo_ids))
def _api_options(name, kwargs):
return report(
keyword="options",
data={
"sabyenc": sabnzbd.decoder.SABYENC_ENABLED,
"par2": sabnzbd.newsunpack.PAR2_COMMAND,
"multipar": sabnzbd.newsunpack.MULTIPAR_COMMAND,
"rar": sabnzbd.newsunpack.RAR_COMMAND,
"zip": sabnzbd.newsunpack.ZIP_COMMAND,
"7zip": sabnzbd.newsunpack.SEVENZIP_COMMAND,
"nice": sabnzbd.newsunpack.NICE_COMMAND,
"ionice": sabnzbd.newsunpack.IONICE_COMMAND,
},
keyword="queue",
data=build_queue(
start=start, limit=limit, search=search, categories=categories, priorities=priorities, nzo_ids=nzo_ids
),
)
@@ -291,17 +293,12 @@ def _api_addfile(name, kwargs):
if not name or isinstance(name, str):
name = kwargs.get("nzbfile", None)
if hasattr(name, "file") and hasattr(name, "filename") and name.filename:
cat = kwargs.get("cat")
xcat = kwargs.get("xcat")
if not cat and xcat:
# Indexer category, so do mapping
cat = cat_convert(xcat)
# Add the NZB-file
res, nzo_ids = sabnzbd.nzbparser.add_nzbfile(
name,
pp=kwargs.get("pp"),
script=kwargs.get("script"),
cat=cat,
cat=kwargs.get("cat"),
priority=kwargs.get("priority"),
nzbname=kwargs.get("nzbname"),
password=kwargs.get("password"),
@@ -340,27 +337,16 @@ def _api_addlocalfile(name, kwargs):
"""API: accepts name, pp, script, cat, priority, nzbname"""
if name:
if os.path.exists(name):
pp = kwargs.get("pp")
script = kwargs.get("script")
cat = kwargs.get("cat")
xcat = kwargs.get("xcat")
if not cat and xcat:
# Indexer category, so do mapping
cat = cat_convert(xcat)
priority = kwargs.get("priority")
nzbname = kwargs.get("nzbname")
password = kwargs.get("password")
if get_ext(name) in VALID_ARCHIVES + VALID_NZB_FILES:
res, nzo_ids = sabnzbd.nzbparser.add_nzbfile(
name,
pp=pp,
script=script,
cat=cat,
priority=priority,
pp=kwargs.get("pp"),
script=kwargs.get("script"),
cat=kwargs.get("cat"),
priority=kwargs.get("priority"),
keep=True,
nzbname=nzbname,
password=password,
nzbname=kwargs.get("nzbname"),
password=kwargs.get("password"),
)
return report(keyword="", data={"status": res == 0, "nzo_ids": nzo_ids})
else:
@@ -492,7 +478,7 @@ def _api_history(name, kwargs):
last_history_update = int_conv(kwargs.get("last_history_update", 0))
search = kwargs.get("search")
failed_only = int_conv(kwargs.get("failed_only"))
categories = kwargs.get("category")
categories = kwargs.get("cat") or kwargs.get("category")
nzo_ids = kwargs.get("nzo_ids")
# Do we need to send anything?
@@ -500,7 +486,7 @@ def _api_history(name, kwargs):
return report(keyword="history", data=False)
if categories and not isinstance(categories, list):
categories = [categories]
categories = categories.split(",")
if nzo_ids and not isinstance(nzo_ids, list):
nzo_ids = nzo_ids.split(",")
@@ -694,19 +680,15 @@ def _api_version(name, kwargs):
def _api_auth(name, kwargs):
auth = "None"
if not cfg.disable_key():
key = kwargs.get("key", "")
if not key:
auth = "apikey"
else:
auth = "badkey"
key = kwargs.get("key", "")
if not key:
if key == cfg.nzb_key():
auth = "nzbkey"
if key == cfg.api_key():
auth = "apikey"
else:
if key == cfg.nzb_key():
auth = "nzbkey"
if key == cfg.api_key():
auth = "apikey"
elif cfg.username() and cfg.password():
auth = "login"
return report(keyword="auth", data=auth)
@@ -730,18 +712,6 @@ def _api_disconnect(name, kwargs):
return report()
def _api_osx_icon(name, kwargs):
"""API: accepts value"""
value = kwargs.get("value", "1").strip()
cfg.osx_menu.set(value != "0")
return report()
def _api_rescan(name, kwargs):
sabnzbd.NzbQueue.scan_jobs(all_jobs=False, action=True)
return report()
def _api_eval_sort(name, kwargs):
"""API: evaluate sorting expression"""
name = kwargs.get("name", "")
@@ -897,19 +867,6 @@ def _api_config_speedlimit(kwargs):
return report()
def _api_config_get_speedlimit(kwargs):
return report(keyword="speedlimit", data=sabnzbd.Downloader.get_limit())
def _api_config_set_colorscheme(kwargs):
value = kwargs.get("value")
if value:
cfg.web_color.set(value)
return report()
else:
return report(_MSG_NO_VALUE)
def _api_config_set_pause(kwargs):
"""API: accepts value(=pause interval)"""
value = kwargs.get("value")
@@ -949,6 +906,11 @@ def _api_config_test_server(kwargs):
return report(data={"result": result, "message": msg})
def _api_config_create_backup(kwargs):
backup_file = config.create_config_backup()
return report(data={"result": bool(backup_file), "message": backup_file})
def _api_config_undefined(kwargs):
return report(_MSG_NOT_IMPLEMENTED)
@@ -988,7 +950,6 @@ _api_table = {
"set_config_default": (_api_set_config_default, 3),
"del_config": (_api_del_config, 3),
"queue": (_api_queue, 2),
"options": (_api_options, 2),
"translate": (_api_translate, 2),
"addfile": (_api_addfile, 1),
"retry": (_api_retry, 2),
@@ -1004,7 +965,6 @@ _api_table = {
"get_files": (_api_get_files, 2),
"move_nzf_bulk": (_api_move_nzf_bulk, 2),
"addurl": (_api_addurl, 1),
"addid": (_api_addurl, 1),
"pause": (_api_pause, 2),
"resume": (_api_resume, 2),
"shutdown": (_api_shutdown, 3),
@@ -1018,9 +978,7 @@ _api_table = {
"restart": (_api_restart, 3),
"restart_repair": (_api_restart_repair, 3),
"disconnect": (_api_disconnect, 2),
"osx_icon": (_api_osx_icon, 3),
"gc_stats": (_api_gc_stats, 3),
"rescan": (_api_rescan, 2),
"eval_sort": (_api_eval_sort, 3),
"watched_now": (_api_watched_now, 2),
"resume_pp": (_api_resume_pp, 2),
@@ -1061,14 +1019,12 @@ _api_status_table = {
_api_config_table = {
"speedlimit": (_api_config_speedlimit, 2),
"set_speedlimit": (_api_config_speedlimit, 2),
"get_speedlimit": (_api_config_get_speedlimit, 2),
"set_pause": (_api_config_set_pause, 2),
"set_colorscheme": (_api_config_set_colorscheme, 3),
"set_apikey": (_api_config_set_apikey, 3),
"set_nzbkey": (_api_config_set_nzbkey, 3),
"regenerate_certs": (_api_config_regenerate_certs, 3),
"test_server": (_api_config_test_server, 3),
"create_backup": (_api_config_create_backup, 3),
}
@@ -1104,6 +1060,7 @@ def report(error: Optional[str] = None, keyword: str = "value", data: Any = None
info = data
else:
info = {keyword: data}
response = utob(json.dumps(info))
elif output == "xml":
@@ -1141,9 +1098,6 @@ class XmlOutputFactory:
In Three tiered lists hard-coded name of "slot": <tier1><slot><tier2> </tier2></slot></tier1>
"""
def __init__(self):
self.__text = ""
def _tuple(self, keyw, lst):
text = []
for item in lst:
@@ -1292,7 +1246,8 @@ def build_status(calculate_performance: bool = False, skip_dashboard: bool = Fal
info["delayed_decoder"] = sabnzbd.BPSMeter.delayed_decoder
info["delayed_assembler"] = sabnzbd.BPSMeter.delayed_assembler
# Dashboard: Speed of System
# Dashboard: Speed and load of System
info["loadavg"] = loadavg()
info["pystone"] = sabnzbd.PYSTONE_SCORE
# Dashboard: Speed of Download directory:
@@ -1356,18 +1311,37 @@ def build_status(calculate_performance: bool = False, skip_dashboard: bool = Fal
return info
def build_queue(start: int = 0, limit: int = 0, search: Optional[str] = None, nzo_ids: Optional[List[str]] = None):
def build_queue(
start: int = 0,
limit: int = 0,
search: Optional[str] = None,
categories: Optional[List[str]] = None,
priorities: Optional[List[str]] = None,
nzo_ids: Optional[List[str]] = None,
):
info = build_header(for_template=False)
qnfo = sabnzbd.NzbQueue.queue_info(search=search, nzo_ids=nzo_ids, start=start, limit=limit)
(
queue_bytes_total,
queue_bytes_left,
bytes_left_previous_page,
nzo_list,
queue_fullsize,
nzos_matched,
) = sabnzbd.NzbQueue.queue_info(
search=search, categories=categories, priorities=priorities, nzo_ids=nzo_ids, start=start, limit=limit
)
info["kbpersec"] = "%.2f" % (sabnzbd.BPSMeter.bps / KIBI)
info["speed"] = to_units(sabnzbd.BPSMeter.bps)
info["mbleft"] = "%.2f" % (qnfo.bytes_left / MEBI)
info["mb"] = "%.2f" % (qnfo.bytes / MEBI)
info["sizeleft"] = to_units(qnfo.bytes_left, "B")
info["size"] = to_units(qnfo.bytes, "B")
info["noofslots_total"] = qnfo.q_fullsize
info["mbleft"] = "%.2f" % (queue_bytes_left / MEBI)
info["mb"] = "%.2f" % (queue_bytes_total / MEBI)
info["sizeleft"] = to_units(queue_bytes_left, "B")
info["size"] = to_units(queue_bytes_total, "B")
info["noofslots_total"] = queue_fullsize
info["noofslots"] = nzos_matched
info["start"] = start
info["limit"] = limit
info["finish"] = start + limit
if sabnzbd.Downloader.paused or sabnzbd.Downloader.paused_for_postproc:
status = Status.PAUSED
@@ -1376,92 +1350,63 @@ def build_queue(start: int = 0, limit: int = 0, search: Optional[str] = None, nz
else:
status = Status.IDLE
info["status"] = status
info["timeleft"] = calc_timeleft(qnfo.bytes_left, sabnzbd.BPSMeter.bps)
datestart = datetime.datetime.now()
try:
datefinish = datestart + datetime.timedelta(seconds=qnfo.bytes_left / sabnzbd.BPSMeter.bps)
# new eta format: 16:00 Fri 07 Feb
info["eta"] = datefinish.strftime(time_format("%H:%M %a %d %b"))
except:
info["eta"] = T("unknown")
info["scripts"] = list_scripts()
info["categories"] = list_cats()
info["noofslots"] = qnfo.q_fullsize
info["start"] = start
info["limit"] = limit
info["finish"] = info["start"] + info["limit"]
info["timeleft"] = calc_timeleft(queue_bytes_left, sabnzbd.BPSMeter.bps)
n = start
running_bytes = qnfo.bytes_left_previous_page
running_bytes = bytes_left_previous_page
slotinfo = []
for pnfo in qnfo.list:
nzo_id = pnfo.nzo_id
bytesleft = pnfo.bytes_left
bytes_total = pnfo.bytes
average_date = pnfo.avg_date
is_propagating = (pnfo.avg_stamp + float(cfg.propagation_delay() * 60)) > time.time()
status = pnfo.status
priority = pnfo.priority
mbleft = bytesleft / MEBI
mb = bytes_total / MEBI
for nzo in nzo_list:
mbleft = nzo.remaining / MEBI
mb = nzo.bytes / MEBI
is_propagating = (nzo.avg_stamp + float(cfg.propagation_delay() * 60)) > time.time()
slot = {}
slot["index"] = n
slot["nzo_id"] = str(nzo_id)
slot["unpackopts"] = str(opts_to_pp(pnfo.repair, pnfo.unpack, pnfo.delete))
slot["priority"] = INTERFACE_PRIORITIES.get(priority, NORMAL_PRIORITY)
slot["script"] = pnfo.script if pnfo.script else "None"
slot["filename"] = pnfo.filename
slot["labels"] = pnfo.labels
slot["password"] = pnfo.password if pnfo.password else ""
slot["cat"] = pnfo.category if pnfo.category else "None"
slot["nzo_id"] = str(nzo.nzo_id)
slot["unpackopts"] = str(opts_to_pp(nzo.repair, nzo.unpack, nzo.delete))
slot["priority"] = INTERFACE_PRIORITIES.get(nzo.priority, NORMAL_PRIORITY)
slot["script"] = nzo.script if nzo.script else "None"
slot["filename"] = nzo.final_name
slot["labels"] = nzo.labels
slot["password"] = nzo.password if nzo.password else ""
slot["cat"] = nzo.cat if nzo.cat else "None"
slot["mbleft"] = "%.2f" % mbleft
slot["mb"] = "%.2f" % mb
slot["size"] = to_units(bytes_total, "B")
slot["sizeleft"] = to_units(bytesleft, "B")
slot["size"] = to_units(nzo.bytes, "B")
slot["sizeleft"] = to_units(nzo.remaining, "B")
slot["percentage"] = "%s" % (int(((mb - mbleft) / mb) * 100)) if mb != mbleft else "0"
slot["mbmissing"] = "%.2f" % (pnfo.bytes_missing / MEBI)
slot["direct_unpack"] = pnfo.direct_unpack
slot["mbmissing"] = "%.2f" % (nzo.bytes_missing / MEBI)
slot["direct_unpack"] = nzo.direct_unpack_progress
if not sabnzbd.Downloader.paused and status not in (Status.PAUSED, Status.FETCHING, Status.GRABBING):
if not sabnzbd.Downloader.paused and nzo.status not in (Status.PAUSED, Status.FETCHING, Status.GRABBING):
if is_propagating:
slot["status"] = Status.PROP
elif status == Status.CHECKING:
elif nzo.status == Status.CHECKING:
slot["status"] = Status.CHECKING
else:
slot["status"] = Status.DOWNLOADING
else:
# Ensure compatibility of API status
if status == Status.DELETED or priority == FORCE_PRIORITY:
status = Status.DOWNLOADING
slot["status"] = "%s" % status
if nzo.status == Status.DELETED or nzo.priority == FORCE_PRIORITY:
nzo.status = Status.DOWNLOADING
slot["status"] = nzo.status
if (
sabnzbd.Downloader.paused
or sabnzbd.Downloader.paused_for_postproc
or is_propagating
or status not in (Status.DOWNLOADING, Status.FETCHING, Status.QUEUED)
) and priority != FORCE_PRIORITY:
or nzo.status not in (Status.DOWNLOADING, Status.FETCHING, Status.QUEUED)
) and nzo.priority != FORCE_PRIORITY:
slot["timeleft"] = "0:00:00"
slot["eta"] = "unknown"
else:
running_bytes += bytesleft
running_bytes += nzo.remaining
slot["timeleft"] = calc_timeleft(running_bytes, sabnzbd.BPSMeter.bps)
try:
datestart = datestart + datetime.timedelta(seconds=bytesleft / sabnzbd.BPSMeter.bps)
# new eta format: 16:00 Fri 07 Feb
slot["eta"] = datestart.strftime(time_format("%H:%M %a %d %b"))
except:
datestart = datestart
slot["eta"] = "unknown"
# Do not show age when it's not known
if average_date.year < 2000:
if nzo.avg_date.year < 2000:
slot["avg_age"] = "-"
else:
slot["avg_age"] = calc_age(average_date)
slot["avg_age"] = calc_age(nzo.avg_date)
slotinfo.append(slot)
n += 1
@@ -1488,9 +1433,7 @@ def build_file_list(nzo_id: str):
jobs = []
nzo = sabnzbd.sabnzbd.NzbQueue.get_nzo(nzo_id)
if nzo:
pnfo = nzo.gather_info(full=True)
for nzf in pnfo.finished_files:
for nzf in nzo.finished_files:
jobs.append(
{
"filename": nzf.filename,
@@ -1503,7 +1446,7 @@ def build_file_list(nzo_id: str):
}
)
for nzf in pnfo.active_files:
for nzf in nzo.files:
jobs.append(
{
"filename": nzf.filename,
@@ -1516,19 +1459,24 @@ def build_file_list(nzo_id: str):
}
)
for nzf in pnfo.queued_files:
jobs.append(
{
"filename": nzf.filename,
"set": nzf.setname,
"mbleft": "%.2f" % (nzf.bytes_left / MEBI),
"mb": "%.2f" % (nzf.bytes / MEBI),
"bytes": "%.2f" % nzf.bytes,
"age": calc_age(nzf.date),
"nzf_id": nzf.nzf_id,
"status": "queued",
}
)
# extrapars can change during iteration
for parset in nzo.extrapars.keys():
extrapar_set = nzo.extrapars.get(parset, [])
for nzf in extrapar_set[:]:
# Prevent listing files twice
if nzf not in nzo.files and nzf not in nzo.finished_files:
jobs.append(
{
"filename": nzf.filename,
"set": nzf.setname,
"mbleft": "%.2f" % (nzf.bytes_left / MEBI),
"mb": "%.2f" % (nzf.bytes / MEBI),
"bytes": "%.2f" % nzf.bytes,
"age": calc_age(nzf.date),
"nzf_id": nzf.nzf_id,
"status": "queued",
}
)
return jobs
@@ -1595,15 +1543,6 @@ def clear_trans_cache():
def build_header(webdir: str = "", for_template: bool = True, trans_functions: bool = True) -> Dict:
"""Build the basic header"""
speed_limit = sabnzbd.Downloader.get_limit()
if speed_limit <= 0:
speed_limit = 100
speed_limit_abs = sabnzbd.Downloader.get_limit_abs()
if speed_limit_abs <= 0:
speed_limit_abs = ""
diskspace_info = diskspace()
header = {}
# We don't output everything for API
@@ -1640,15 +1579,15 @@ def build_header(webdir: str = "", for_template: bool = True, trans_functions: b
header["pause_int"] = sabnzbd.Scheduler.pause_int()
header["paused_all"] = sabnzbd.PAUSED_ALL
diskspace_info = diskspace()
header["diskspace1"] = "%.2f" % diskspace_info["download_dir"][1]
header["diskspace2"] = "%.2f" % diskspace_info["complete_dir"][1]
header["diskspace1_norm"] = to_units(diskspace_info["download_dir"][1] * GIGI)
header["diskspace2_norm"] = to_units(diskspace_info["complete_dir"][1] * GIGI)
header["diskspacetotal1"] = "%.2f" % diskspace_info["download_dir"][0]
header["diskspacetotal2"] = "%.2f" % diskspace_info["complete_dir"][0]
header["loadavg"] = loadavg()
header["speedlimit"] = "{1:0.{0}f}".format(int(speed_limit % 1 > 0), speed_limit)
header["speedlimit_abs"] = "%s" % speed_limit_abs
header["speedlimit"] = str(sabnzbd.Downloader.bandwidth_perc)
header["speedlimit_abs"] = str(sabnzbd.Downloader.bandwidth_limit)
header["have_warnings"] = str(sabnzbd.GUIHANDLER.count())
header["finishaction"] = sabnzbd.QUEUECOMPLETE
@@ -1671,7 +1610,7 @@ def build_history(
failed_only: int = 0,
categories: Optional[List[str]] = None,
nzo_ids: Optional[List[str]] = None,
):
) -> Tuple[Dict[str, Any], int]:
"""Combine the jobs still in post-processing and the database history"""
if not limit:
limit = 1000000

View File

@@ -132,7 +132,8 @@ class Assembler(Thread):
@staticmethod
def diskspace_check(nzo: NzbObject, nzf: NzbFile):
"""Check diskspace requirements. If not enough space left, pause downloader and send email"""
"""Check diskspace requirements.
If not enough space left, pause downloader and send email"""
freespace = diskspace(force=True)
full_dir = None
required_space = (cfg.download_free.get_float() + nzf.bytes) / GIGI
@@ -144,11 +145,13 @@ class Assembler(Thread):
if complete_free > 0 and not full_dir:
required_space = 0
if cfg.direct_unpack():
required_space = (complete_free + nzo.bytes_downloaded) / GIGI
else:
# Continue downloading until 95% complete before checking
if nzo.bytes_tried > (nzo.bytes - nzo.bytes_par2) * 0.95:
required_space = (complete_free + nzo.bytes) / GIGI
# We unpack while we download, so we should check every time
# if the unpack maybe already filled up the drive
required_space = complete_free / GIGI
elif nzo.bytes_tried > (nzo.bytes - nzo.bytes_par2) * 0.95:
# Since only at 100% unpack is started, continue
# downloading until 95% complete before checking
required_space = (complete_free + nzo.bytes) / GIGI
if required_space and freespace["complete_dir"][1] < required_space:
full_dir = "complete_dir"
@@ -233,7 +236,7 @@ class Assembler(Thread):
nzf.nzo.final_name,
unwanted_file,
)
logging.debug(T("Unwanted extension is in rar file %s"), nzf.filepath)
logging.debug(T("Unwanted extension is in rar file %s"), nzf.filename)
if cfg.action_on_unwanted_extensions() == 1 and nzo.unwanted_ext == 0:
logging.debug("Unwanted extension ... pausing")
nzo.unwanted_ext = 1

View File

@@ -391,10 +391,10 @@ class BPSMeter:
def get_sums(self):
"""return tuple of grand, month, week, day totals"""
return (
sum([v for v in self.grand_total.values()]),
sum([v for v in self.month_total.values()]),
sum([v for v in self.week_total.values()]),
sum([v for v in self.day_total.values()]),
sum(self.grand_total.values()),
sum(self.month_total.values()),
sum(self.week_total.values()),
sum(self.day_total.values()),
)
def amounts(self, server: str):

View File

@@ -22,6 +22,8 @@ sabnzbd.cfg - Configuration Parameters
import logging
import re
import argparse
import socket
import ipaddress
from typing import List, Tuple
import sabnzbd
@@ -37,13 +39,14 @@ from sabnzbd.config import (
from sabnzbd.constants import (
DEF_HOST,
DEF_PORT,
DEF_STDINTF,
DEF_STD_WEB_DIR,
DEF_ADMIN_DIR,
DEF_DOWNLOAD_DIR,
DEF_NZBBACK_DIR,
DEF_SCANRATE,
DEF_COMPLETE_DIR,
DEF_FOLDER_MAX,
DEF_STD_WEB_COLOR,
)
@@ -146,6 +149,48 @@ def validate_server(value):
return None, value
def validate_host(value):
"""Check if host is valid: an IP address, or a name/FQDN that resolves to an IP address"""
# easy: value is a plain IPv4 or IPv6 address:
try:
ipaddress.ip_address(value)
# valid host, so return it
return None, value
except:
pass
# we don't want a plain number. As socket.getaddrinfo("100", ...) allows that, we have to pre-check
try:
int(value)
# plain int as input, which is not allowed
return T("Invalid server address."), None
except:
pass
# not a plain IPv4 nor IPv6 address, so let's check if it's a name that resolves to IPv4
try:
socket.getaddrinfo(value, None, socket.AF_INET)
# all good
logging.debug("Valid host name")
return None, value
except:
pass
# ... and if not: does it resolve to IPv6 ... ?
try:
socket.getaddrinfo(value, None, socket.AF_INET6)
# all good
logging.debug("Valid host name")
return None, value
except:
logging.debug("No valid host name")
pass
# if we get here, it is not valid host, so return None
return T("Invalid server address."), None
def validate_script(value):
"""Check if value is a valid script"""
if not sabnzbd.__INITIALIZED__ or (value and sabnzbd.filesystem.is_valid_script(value)):
@@ -198,13 +243,13 @@ def validate_notempty(root, value, default):
pre_script = OptionStr("misc", "pre_script", "None", validation=validate_script)
queue_complete = OptionStr("misc", "queue_complete")
queue_complete_pers = OptionBool("misc", "queue_complete_pers", False)
bandwidth_perc = OptionNumber("misc", "bandwidth_perc", 100, 0, 100)
bandwidth_perc = OptionNumber("misc", "bandwidth_perc", 100, minval=0, maxval=100)
refresh_rate = OptionNumber("misc", "refresh_rate", 0)
interface_settings = OptionStr("misc", "interface_settings")
log_level = OptionNumber("logging", "log_level", 1, -1, 2)
log_level = OptionNumber("logging", "log_level", 1, minval=-1, maxval=2)
log_size = OptionNumber("logging", "max_log_size", 5242880)
log_backups = OptionNumber("logging", "log_backups", 5, 1, 1024)
queue_limit = OptionNumber("misc", "queue_limit", 20, 0)
log_backups = OptionNumber("logging", "log_backups", 5, minval=1, maxval=1024)
queue_limit = OptionNumber("misc", "queue_limit", 20, minval=0)
configlock = OptionBool("misc", "config_lock", False)
@@ -212,6 +257,7 @@ configlock = OptionBool("misc", "config_lock", False)
##############################################################################
# One time trackers
##############################################################################
fixed_ports = OptionBool("misc", "fixed_ports", False)
sched_converted = OptionBool("misc", "sched_converted", False)
notified_new_skin = OptionNumber("misc", "notified_new_skin", 0)
direct_unpack_tested = OptionBool("misc", "direct_unpack_tested", False)
@@ -224,15 +270,15 @@ version_check = OptionNumber("misc", "check_new_rel", 1)
autobrowser = OptionBool("misc", "auto_browser", True)
language = OptionStr("misc", "language", "en")
enable_https_verification = OptionBool("misc", "enable_https_verification", True)
cherryhost = OptionStr("misc", "host", DEF_HOST)
cherryhost = OptionStr("misc", "host", DEF_HOST, validation=validate_host)
cherryport = OptionStr("misc", "port", DEF_PORT)
https_port = OptionStr("misc", "https_port")
username = OptionStr("misc", "username")
password = OptionPassword("misc", "password")
bandwidth_max = OptionStr("misc", "bandwidth_max")
cache_limit = OptionStr("misc", "cache_limit")
web_dir = OptionStr("misc", "web_dir", DEF_STDINTF)
web_color = OptionStr("misc", "web_color")
web_dir = OptionStr("misc", "web_dir", DEF_STD_WEB_DIR)
web_color = OptionStr("misc", "web_color", DEF_STD_WEB_COLOR)
https_cert = OptionDir("misc", "https_cert", "server.cert", create=False)
https_key = OptionDir("misc", "https_key", "server.key", create=False)
https_chain = OptionDir("misc", "https_chain", create=False)
@@ -241,7 +287,7 @@ enable_https = OptionBool("misc", "enable_https", False)
inet_exposure = OptionNumber("misc", "inet_exposure", 0, protect=True)
api_key = OptionStr("misc", "api_key", create_api_key())
nzb_key = OptionStr("misc", "nzb_key", create_api_key())
socks5_proxy_url = OptionStr("misc", "socks5_proxy_url")
##############################################################################
# Config - Folders
@@ -256,11 +302,12 @@ complete_dir = OptionDir(
)
complete_free = OptionStr("misc", "complete_free")
fulldisk_autoresume = OptionBool("misc", "fulldisk_autoresume", False)
script_dir = OptionDir("misc", "script_dir", create=True, writable=False)
script_dir = OptionDir("misc", "script_dir", writable=False)
nzb_backup_dir = OptionDir("misc", "nzb_backup_dir", DEF_NZBBACK_DIR)
admin_dir = OptionDir("misc", "admin_dir", DEF_ADMIN_DIR, validation=validate_safedir)
dirscan_dir = OptionDir("misc", "dirscan_dir", create=False)
dirscan_speed = OptionNumber("misc", "dirscan_speed", DEF_SCANRATE, 0, 3600)
backup_dir = OptionDir("misc", "backup_dir")
dirscan_dir = OptionDir("misc", "dirscan_dir", writable=False)
dirscan_speed = OptionNumber("misc", "dirscan_speed", DEF_SCANRATE, minval=0, maxval=3600)
password_file = OptionDir("misc", "password_file", "", create=False)
log_dir = OptionDir("misc", "log_dir", "logs", validation=validate_notempty)
@@ -268,11 +315,10 @@ log_dir = OptionDir("misc", "log_dir", "logs", validation=validate_notempty)
##############################################################################
# Config - Switches
##############################################################################
max_art_tries = OptionNumber("misc", "max_art_tries", 3, 2)
max_art_tries = OptionNumber("misc", "max_art_tries", 3, minval=2)
load_balancing = OptionNumber("misc", "load_balancing", 2)
top_only = OptionBool("misc", "top_only", False)
sfv_check = OptionBool("misc", "sfv_check", True)
quick_check_ext_ignore = OptionList("misc", "quick_check_ext_ignore", ["nfo", "sfv", "srr"], validation=lower_case_ext)
script_can_fail = OptionBool("misc", "script_can_fail", False)
enable_recursive = OptionBool("misc", "enable_recursive", True)
flat_unpack = OptionBool("misc", "flat_unpack", False)
@@ -292,10 +338,10 @@ ignore_samples = OptionBool("misc", "ignore_samples", False)
deobfuscate_final_filenames = OptionBool("misc", "deobfuscate_final_filenames", False)
auto_sort = OptionStr("misc", "auto_sort")
direct_unpack = OptionBool("misc", "direct_unpack", False)
direct_unpack_threads = OptionNumber("misc", "direct_unpack_threads", 3, 1)
propagation_delay = OptionNumber("misc", "propagation_delay", 0)
folder_rename = OptionBool("misc", "folder_rename", True)
replace_spaces = OptionBool("misc", "replace_spaces", False)
replace_underscores = OptionBool("misc", "replace_underscores", False)
replace_dots = OptionBool("misc", "replace_dots", False)
safe_postproc = OptionBool("misc", "safe_postproc", True)
pause_on_post_processing = OptionBool("misc", "pause_on_post_processing", False)
@@ -307,7 +353,6 @@ action_on_unwanted_extensions = OptionNumber("misc", "action_on_unwanted_extensi
unwanted_extensions_mode = OptionNumber("misc", "unwanted_extensions_mode", 0)
new_nzb_on_failure = OptionBool("misc", "new_nzb_on_failure", False)
history_retention = OptionStr("misc", "history_retention", "0")
enable_meta = OptionBool("misc", "enable_meta", True)
quota_size = OptionStr("misc", "quota_size")
quota_day = OptionStr("misc", "quota_day")
@@ -324,27 +369,23 @@ tv_categories = OptionList("misc", "tv_categories", ["tv"])
enable_movie_sorting = OptionBool("misc", "enable_movie_sorting", False)
movie_sort_string = OptionStr("misc", "movie_sort_string")
movie_sort_extra = OptionStr("misc", "movie_sort_extra", "-cd%1", strip=False)
movie_extra_folder = OptionBool("misc", "movie_extra_folder", False)
movie_categories = OptionList("misc", "movie_categories", ["movies"])
enable_date_sorting = OptionBool("misc", "enable_date_sorting", False)
date_sort_string = OptionStr("misc", "date_sort_string")
date_categories = OptionList("misc", "date_categories", ["tv"])
##############################################################################
# Config - Scheduling and RSS
##############################################################################
schedules = OptionList("misc", "schedlines")
rss_rate = OptionNumber("misc", "rss_rate", 60, 15, 24 * 60)
rss_rate = OptionNumber("misc", "rss_rate", 60, minval=15, maxval=24 * 60)
##############################################################################
# Config - Specials
##############################################################################
# Bool switches
ampm = OptionBool("misc", "ampm", False)
replace_illegal = OptionBool("misc", "replace_illegal", True)
start_paused = OptionBool("misc", "start_paused", False)
preserve_paused_state = OptionBool("misc", "preserve_paused_state", False)
enable_par_cleanup = OptionBool("misc", "enable_par_cleanup", True)
@@ -362,43 +403,39 @@ wait_for_dfolder = OptionBool("misc", "wait_for_dfolder", False)
rss_filenames = OptionBool("misc", "rss_filenames", False)
api_logging = OptionBool("misc", "api_logging", True)
html_login = OptionBool("misc", "html_login", True)
osx_menu = OptionBool("misc", "osx_menu", True)
osx_speed = OptionBool("misc", "osx_speed", True)
warn_dupl_jobs = OptionBool("misc", "warn_dupl_jobs", True)
helpful_warnings = OptionBool("misc", "helpful_warnings", True)
keep_awake = OptionBool("misc", "keep_awake", True)
win_menu = OptionBool("misc", "win_menu", True)
tray_icon = OptionBool("misc", "tray_icon", True)
allow_incomplete_nzb = OptionBool("misc", "allow_incomplete_nzb", False)
enable_broadcast = OptionBool("misc", "enable_broadcast", True)
ipv6_hosting = OptionBool("misc", "ipv6_hosting", False)
fixed_ports = OptionBool("misc", "fixed_ports", False)
api_warnings = OptionBool("misc", "api_warnings", True, protect=True)
disable_key = OptionBool("misc", "disable_api_key", False, protect=True)
no_penalties = OptionBool("misc", "no_penalties", False)
x_frame_options = OptionBool("misc", "x_frame_options", True)
allow_old_ssl_tls = OptionBool("misc", "allow_old_ssl_tls", False)
num_simd_decoders = OptionNumber("misc", "num_simd_decoders")
# Text values
rss_odd_titles = OptionList("misc", "rss_odd_titles", ["nzbindex.nl/", "nzbindex.com/", "nzbclub.com/"])
req_completion_rate = OptionNumber("misc", "req_completion_rate", 100.2, 100, 200)
quick_check_ext_ignore = OptionList("misc", "quick_check_ext_ignore", ["nfo", "sfv", "srr"], validation=lower_case_ext)
req_completion_rate = OptionNumber("misc", "req_completion_rate", 100.2, minval=100, maxval=200)
selftest_host = OptionStr("misc", "selftest_host", "self-test.sabnzbd.org")
movie_rename_limit = OptionStr("misc", "movie_rename_limit", "100M")
episode_rename_limit = OptionStr("misc", "episode_rename_limit", "20M")
size_limit = OptionStr("misc", "size_limit", "0")
show_sysload = OptionNumber("misc", "show_sysload", 2, 0, 2)
history_limit = OptionNumber("misc", "history_limit", 10, 0)
wait_ext_drive = OptionNumber("misc", "wait_ext_drive", 5, 1, 60)
max_foldername_length = OptionNumber("misc", "max_foldername_length", DEF_FOLDER_MAX, 20, 65000)
direct_unpack_threads = OptionNumber("misc", "direct_unpack_threads", 3, minval=1)
history_limit = OptionNumber("misc", "history_limit", 10, minval=0)
wait_ext_drive = OptionNumber("misc", "wait_ext_drive", 5, minval=1, maxval=60)
max_foldername_length = OptionNumber("misc", "max_foldername_length", DEF_FOLDER_MAX, minval=20, maxval=65000)
marker_file = OptionStr("misc", "nomedia_marker")
ipv6_servers = OptionNumber("misc", "ipv6_servers", 1, 0, 2)
ipv6_servers = OptionNumber("misc", "ipv6_servers", 1, minval=0, maxval=2)
url_base = OptionStr("misc", "url_base", "/sabnzbd", validation=validate_strip_right_slash)
host_whitelist = OptionList("misc", "host_whitelist", validation=all_lowercase)
local_ranges = OptionList("misc", "local_ranges", protect=True)
max_url_retries = OptionNumber("misc", "max_url_retries", 10, 1)
downloader_sleep_time = OptionNumber("misc", "downloader_sleep_time", 10, 0)
ssdp_broadcast_interval = OptionNumber("misc", "ssdp_broadcast_interval", 15, 1, 600)
socks5_proxy_url = OptionStr("misc", "socks5_proxy_url")
max_url_retries = OptionNumber("misc", "max_url_retries", 10, minval=1)
downloader_sleep_time = OptionNumber("misc", "downloader_sleep_time", 10, minval=0)
num_simd_decoders = OptionNumber("misc", "num_simd_decoders", 2, minval=1)
ssdp_broadcast_interval = OptionNumber("misc", "ssdp_broadcast_interval", 15, minval=1, maxval=600)
ext_rename_ignore = OptionList("misc", "ext_rename_ignore", validation=lower_case_ext)
@@ -413,7 +450,7 @@ email_account = OptionStr("misc", "email_account")
email_pwd = OptionPassword("misc", "email_pwd")
email_endjob = OptionNumber("misc", "email_endjob", 0, 0, 2)
email_full = OptionBool("misc", "email_full", False)
email_dir = OptionDir("misc", "email_dir", create=True)
email_dir = OptionDir("misc", "email_dir")
email_rss = OptionBool("misc", "email_rss", False)
email_cats = OptionList("misc", "email_cats", ["*"])
@@ -550,6 +587,7 @@ def set_root_folders(home, lcldata):
script_dir.set_root(home)
nzb_backup_dir.set_root(lcldata)
admin_dir.set_root(lcldata)
backup_dir.set_root(home)
dirscan_dir.set_root(home)
log_dir.set_root(lcldata)
password_file.set_root(home)

View File

@@ -24,6 +24,7 @@ import os
import re
import shutil
import threading
import time
import uuid
import io
import zipfile
@@ -917,20 +918,33 @@ def save_config(force=False):
return res
def create_config_backup():
"""Put config data in a zip file"""
adminpath = sabnzbd.cfg.admin_dir.get_path()
logging.debug("Backing up %s + %s", adminpath, CFG_OBJ.filename)
with io.BytesIO() as zip_buffer:
with zipfile.ZipFile(zip_buffer, "a", zipfile.ZIP_DEFLATED, False) as zip_ref:
for filename in CONFIG_BACKUP_FILES:
full_path = os.path.join(adminpath, filename)
if os.path.isfile(full_path):
with open(full_path, "rb") as data:
zip_ref.writestr(filename, data.read())
with open(CFG_OBJ.filename, "rb") as data:
zip_ref.writestr(DEF_INI_FILE, data.read())
return zip_buffer.getvalue()
def create_config_backup() -> Union[str, bool]:
"""Put config data in a zip file, returns path on success"""
admin_path = sabnzbd.cfg.admin_dir.get_path()
output_filename = "sabnzbd_backup_%s_%s.zip" % (sabnzbd.__version__, time.strftime("%Y.%m.%d_%H.%M.%S"))
# Check if there is a backup folder set, use complete otherwise
if sabnzbd.cfg.backup_dir():
backup_dir = sabnzbd.cfg.backup_dir.get_path()
else:
backup_dir = sabnzbd.cfg.complete_dir.get_path()
complete_path = os.path.join(backup_dir, output_filename)
logging.debug("Backing up %s + %s in %s", admin_path, CFG_OBJ.filename, complete_path)
try:
with open(complete_path, "wb") as zip_buffer:
with zipfile.ZipFile(zip_buffer, "a", zipfile.ZIP_DEFLATED, False) as zip_ref:
for filename in CONFIG_BACKUP_FILES:
full_path = os.path.join(admin_path, filename)
if os.path.isfile(full_path):
with open(full_path, "rb") as data:
zip_ref.writestr(filename, data.read())
with open(CFG_OBJ.filename, "rb") as data:
zip_ref.writestr(DEF_INI_FILE, data.read())
return clip_path(complete_path)
except:
logging.info("Failed to create backup: ", exc_info=True)
return False
def validate_config_backup(config_backup_data: bytes) -> bool:
@@ -945,7 +959,7 @@ def validate_config_backup(config_backup_data: bytes) -> bool:
return False
def restore_config_backup(config_backup_data: bytes) -> bool:
def restore_config_backup(config_backup_data: bytes):
"""Restore configuration files from zip file"""
try:
with io.BytesIO(config_backup_data) as backup_ref:

View File

@@ -25,15 +25,6 @@ POSTPROC_QUEUE_VERSION = 2
REC_RAR_VERSION = 550
PNFO = namedtuple(
"PNFO",
"repair unpack delete script nzo_id filename labels password unpackstrht "
"msgid category url bytes_left bytes avg_stamp avg_date finished_files "
"active_files queued_files status priority bytes_missing direct_unpack",
)
QNFO = namedtuple("QNFO", "bytes bytes_left bytes_left_previous_page list q_size_list q_fullsize")
ANFO = namedtuple("ANFO", "article_sum cache_size cache_limit")
# Leave some space for "_UNPACK_" which we append during post-proc
@@ -45,7 +36,6 @@ GIGI = float(2**30)
MEBI = float(2**20)
KIBI = float(2**10)
BYTES_FILE_NAME_OLD = "totals9.sab"
BYTES_FILE_NAME = "totals10.sab"
QUEUE_FILE_TMPL = "queue%s.sab"
QUEUE_FILE_NAME = QUEUE_FILE_TMPL % QUEUE_VERSION
@@ -59,7 +49,7 @@ RENAMES_FILE = "__renames__"
ATTRIB_FILE = "SABnzbd_attrib"
REPAIR_REQUEST = "repair-all.sab"
SABYENC_VERSION_REQUIRED = "5.1.0"
SABYENC_VERSION_REQUIRED = "5.4.4"
DB_HISTORY_VERSION = 1
DB_HISTORY_NAME = "history%s.db" % DB_HISTORY_VERSION
@@ -77,8 +67,9 @@ DEF_NZBBACK_DIR = ""
DEF_LANGUAGE = "locale"
DEF_INTERFACES = "interfaces"
DEF_EMAIL_TMPL = "email"
DEF_STDCONFIG = "Config"
DEF_STDINTF = "Glitter"
DEF_STD_CONFIG = "Config"
DEF_STD_WEB_DIR = "Glitter"
DEF_STD_WEB_COLOR = "Auto"
DEF_MAIN_TMPL = os.path.normpath("templates/main.tmpl")
DEF_INI_FILE = "sabnzbd.ini"
DEF_HOST = "127.0.0.1"

View File

@@ -72,12 +72,8 @@ class Decoder:
# Initialize queue and servers
self.decoder_queue = queue.Queue()
# If SIMD is available, we only need 1 decoder
decoders = cfg.num_simd_decoders()
if not decoders:
decoders = 1 if SABYENC_SIMD else 2
# Initialize decoders
decoders = cfg.num_simd_decoders()
logging.debug("Initializing %d decoder(s)", decoders)
self.decoder_workers = []
for _ in range(decoders):
@@ -220,7 +216,7 @@ class DecoderWorker(Thread):
elif not article_success:
# If not pre-check, this must be a bad article
if not nzo.precheck:
logging.info("Badly formed yEnc article in %s", art_id, exc_info=True)
logging.info("Badly formed yEnc article %s", art_id)
# Continue to the next one if we found new server
if search_new_server(article):
@@ -399,5 +395,6 @@ def search_new_server(article: Article) -> bool:
if not article.search_new_server():
# Increase bad articles if no new server was found
article.nzf.nzo.increase_bad_articles_counter("bad_articles")
article.nzf.has_bad_articles = True
return False
return True

View File

@@ -168,11 +168,58 @@ def is_probably_obfuscated(myinputfilename: str) -> bool:
return True # default is obfuscated
def first_file_is_much_bigger(filelist):
# returns True if first file is much bigger than second file
# Note: input parameter filelist must ordered on size!
try:
factor = os.path.getsize(filelist[0]) / os.path.getsize(filelist[1])
if factor > 3:
return True
else:
return False
except:
# no second file at all
return True
def deobfuscate(nzo, filelist: List[str], usefulname: str):
"""Check all files in filelist, and deobfuscate: rename to filename based on usefulname.
Methods
# 1. if no meaningful extension, add it
# 2. based on detecting obfuscated filenames"""
"""
For files in filelist:
1. if a file has no meaningful extension, add it (for example ".txt" or ".png")
2. pick biggest file (and its lookalikes), and deobfuscate (if needed), to usefulname
Typical cases for step 2:
Case 1:
bla.iso (1000MB, so much bigger than next biggest file)
bla-sample.iso (100MB)
bla.txt (1MB)
something.txt (1MB)
Because "bla" (of biggest file bla.iso) looks meaningless / obfuscated, we rename these files to
Nice_Name_1234.iso
Nice_Name_1234-sample.iso
Nice_Name_1234.txt
something.txt (no renaming)
Case 2:
one.bin (10MB)
two.bin (12MB)
three.bin (8MB)
No renaming, because the biggest file (12MB) is not much bigger than the second biggest file (10MB)
Case 3:
Great_File_1969.iso (1000MB)
No renaming because the filename looks OK already (not obfuscated)
"""
# Can't be imported directly due to circular import
nzo: sabnzbd.nzbstuff.NzbObject
@@ -190,8 +237,7 @@ def deobfuscate(nzo, filelist: List[str], usefulname: str):
nzo.set_unpack_info("Deobfuscate", T("Deobfuscate skipped due to DVD/Bluray directories"))
return
# let's see if there are files with uncommon/unpopular (so: obfuscated) extensions
# if so, let's give them a better extension based on their internal content/info
# If needed, add a useful extension (by looking at file contents)
# Example: if 'kjladsflkjadf.adsflkjads' is probably a PNG, rename to 'kjladsflkjadf.adsflkjads.png'
newlist = []
nr_ext_renamed = 0
@@ -217,64 +263,51 @@ def deobfuscate(nzo, filelist: List[str], usefulname: str):
nzo.set_unpack_info("Deobfuscate", T("Deobfuscate corrected the extension of %d file(s)") % nr_ext_renamed)
filelist = newlist
# Now we try to rename qualifying (big, not-excluded, obfuscated) files to the job-name
excluded_file_exts = EXCLUDED_FILE_EXTS
# If there is a collection with bigger files with the same extension, we don't want to rename it
extcounter = {}
for file in filelist:
if os.path.getsize(file) < MIN_FILE_SIZE:
# too small to care
continue
ext = get_ext(file)
if ext in extcounter:
extcounter[ext] += 1
else:
extcounter[ext] = 1
if extcounter[ext] >= 3 and ext not in excluded_file_exts:
# collection, and extension not yet in excluded_file_exts, so add it
excluded_file_exts = (*excluded_file_exts, ext)
logging.debug(
"Found a collection of at least %s files with extension %s, so not renaming those files",
extcounter[ext],
ext,
)
logging.debug("Trying to see if there are qualifying files to be deobfuscated")
# We start with he biggest file ... probably the most important file
filelist = sorted(filelist, key=os.path.getsize, reverse=True)
nr_files_renamed = 0
for filename in filelist:
# check that file is still there (and not renamed by the secondary renaming process below)
if not os.path.isfile(filename):
continue
logging.debug("Deobfuscate inspecting %s", filename)
# Do we need to rename this file?
# Criteria: big, not-excluded extension, obfuscated (in that order)
if (
os.path.getsize(filename) > MIN_FILE_SIZE
and get_ext(filename) not in excluded_file_exts
and is_probably_obfuscated(filename) # this as last test to avoid unnecessary analysis
):
# We pick the biggest file ... probably the most important file
# so sort filelist on size:
filelist = sorted(filelist, key=os.path.getsize, reverse=True)
if filelist:
biggest_file = filelist[0]
else:
biggest_file = None
if not biggest_file or not os.path.isfile(biggest_file):
# no file found, which is weird
logging.info("No file given, or not found (%s)", biggest_file)
return
logging.debug("Deobfuscate inspecting biggest file%s", biggest_file)
if not first_file_is_much_bigger(filelist):
logging.debug("%s excluded from deobfuscation because it is not much bigger than other file(s)", biggest_file)
return
if get_ext(biggest_file) in EXCLUDED_FILE_EXTS:
logging.debug("%s excluded from deobfuscation because of excluded extension", biggest_file)
return
if not is_probably_obfuscated(biggest_file):
logging.debug("%s excluded from deobfuscation because filename does not look obfuscated", biggest_file)
return
# if we get here, the biggest_file is relatively big, has no excluded extension, and is obfuscated
# Rename the biggest_file and make sure the new filename is unique
path, file = os.path.split(biggest_file)
# construct new_name: <path><usefulname><extension>
new_name = get_unique_filename("%s%s" % (os.path.join(path, usefulname), get_ext(biggest_file)))
logging.info("Deobfuscate renaming %s to %s", biggest_file, new_name)
renamer(biggest_file, new_name)
nr_files_renamed += 1
# Now find other files with the same basename in filelist, and rename them in the same way:
basedirfile, _ = os.path.splitext(biggest_file) # something like "/home/this/myiso"
for otherfile in filelist:
if otherfile.startswith(basedirfile) and os.path.isfile(otherfile):
# yes, same basedirfile, only different ending
remaining_ending = otherfile.replace(basedirfile, "") # might be long ext, like ".dut.srt" or "-sample.iso"
new_name = get_unique_filename("%s%s" % (os.path.join(path, usefulname), remaining_ending))
logging.info("Deobfuscate renaming %s to %s", otherfile, new_name)
# Rename and make sure the new filename is unique
path, file = os.path.split(filename)
# construct new_name: <path><usefulname><extension>
new_name = get_unique_filename("%s%s" % (os.path.join(path, usefulname), get_ext(filename)))
logging.info("Deobfuscate renaming %s to %s", filename, new_name)
renamer(filename, new_name)
# find other files with the same basename in filelist, and rename them in the same way:
basedirfile, _ = os.path.splitext(filename) # something like "/home/this/myiso"
for otherfile in filelist:
if otherfile.startswith(basedirfile + ".") and os.path.isfile(otherfile):
# yes, same basedirfile, only different extension
remainingextension = otherfile.replace(basedirfile, "") # might be long ext, like ".dut.srt"
new_name = get_unique_filename("%s%s" % (os.path.join(path, usefulname), remainingextension))
logging.info("Deobfuscate renaming %s to %s", otherfile, new_name)
# Rename and make sure the new filename is unique
renamer(otherfile, new_name)
nr_files_renamed += 1
else:
logging.debug("%s excluded from deobfuscation based on size, extension or non-obfuscation", filename)
renamer(otherfile, new_name)
nr_files_renamed += 1
if nr_files_renamed:
nzo.set_unpack_info("Deobfuscate", T("Deobfuscate renamed %d file(s)") % nr_files_renamed)

Some files were not shown because too many files have changed in this diff Show More