Compare commits

...

53 Commits

Author SHA1 Message Date
SABnzbd Automation
e3a779bbc6 Automatic translation update 2017-08-09 21:44:13 +00:00
Safihre
adfce8c8b6 Update text files for 2.2.0RC2 2017-08-09 23:03:44 +02:00
Safihre
a49d68c0db Double check that we have pynotify version we can work with
Closes #992
2017-08-09 22:56:07 +02:00
Safihre
e4156e76d1 Disable auto-zoom on mobile for adaptive pages 2017-08-09 22:50:53 +02:00
Safihre
35b66eea0e Add more space to Config header just in case 2017-08-09 18:45:01 +03:00
Safihre
4d0cf8d45f Correct naming and small style fix 2017-08-09 18:36:20 +03:00
Safihre
ad9fef5f41 Prevent SQL injection via category-argument with ' in them 2017-08-09 17:43:17 +03:00
Safihre
6235174995 CherryPy 8.1.2 - Correct f6c163b: macOS "Protocol wrong type for socket"
https://github.com/cherrypy/cheroot/pull/31
https://github.com/cherrypy/cheroot/pull/44
2017-08-09 09:55:04 +03:00
Safihre
4b9ca989c4 Correctly log the rar-files used by DirectUnpack
Not just assume we used them all.
2017-08-08 13:39:03 +03:00
Safihre
4d54aecceb Check the workdir after extraction if we got everything
Sometimes there might be a file left that we did not extract. For example there are NZBs that have the main download in abc.part01.rar etc but also a abc.rar file with the NFO or other things. 
SABnzbd would detect this as 1 set and not unpack both.
2017-08-08 13:37:09 +03:00
Safihre
11eeb6f2e9 Glitter filelist would not show 100% for very small files
Plus some cleanup of move-to-top/bottom code
2017-08-08 12:19:07 +03:00
Safihre
00364b1317 Only update RSS URI if it was modified
See #993
2017-08-08 12:04:54 +03:00
shypike
6666663f78 Fix typo in text about "allow duplicate files" 2017-08-08 09:17:25 +02:00
Safihre
3d6dfec47a Disk-space check in Assembler and check if space to write current file 2017-08-06 19:01:59 +03:00
Safihre
0f3d44aa4b safe_fnmatch should only do the matching
Oops, globber and globber_full are not the same!
2017-08-06 12:57:23 +03:00
SABnzbd Automation
d2d2471950 Automatic translation update 2017-08-06 09:42:54 +00:00
Safihre
b71343e8ab Safe fnmatch everywhere, just to be sure
Linked #990
2017-08-06 11:46:00 +03:00
Safihre
489f3f4ba0 Catch special chars like "[]!*" to break fnmatch and thus repair
Closes #990
2017-08-06 11:25:27 +03:00
Safihre
3765e8c350 Add warning when many duplicate files were discarded
Linked #531, Closes #986
2017-08-02 12:50:26 +02:00
Safihre
28d4f527b8 Fix the server-graphs
They did not display anything if it was the first of the month. Plus some style-fixes.
2017-08-01 13:31:18 +02:00
Safihre
1d8af8f97d Correct counts if one_folder is enabled 2017-08-01 11:28:34 +02:00
Safihre
829ef4bee8 Only one_folder is a reason not to delete the folder in DircetUnpack 2017-08-01 11:06:40 +02:00
Safihre
7e40c12e47 Get rarfiles to delete from both RarFile and parsing Unrar output
RarFile will fail to list all volumes when the job is encrypted, it will only list the first volume. But parsing the output of Unrar will fail on special-char filenames (probably limited to Windows). So now only jobs that are encrypted *and* have many special-chars will not have all rars deleted correctly,
2017-07-31 23:45:56 +02:00
Safihre
37d8d659f5 Show deprication warning for Server Categories 2017-07-31 22:26:21 +02:00
Safihre
0a29291be2 Abort all direct unpackers when disk-full 2017-07-31 22:26:04 +02:00
Safihre
7f3a5f309b Don't postpone if all par2 are desired and should be kept
Prevents downloading of all par2 in case people just wanted to keep some par2, but not all. If people really want all and no-cleanup, they should enable 'All par2'
2017-07-31 16:51:48 +02:00
Safihre
60ec5f9191 Less aggresive cache-busting 2017-07-31 10:38:45 +02:00
Safihre
d03e801e74 Only show import warnings when not gone
Can be removed if #952 is resolved
2017-07-30 20:29:28 +02:00
Safihre
56bf484e77 Also show Verifying Repair status for par2cmdline 2017-07-30 16:51:28 +02:00
Safihre
66674469d5 Return of the DIR_LOCK
Yeah, turns out we probably do need that. In case automation adds a new job while the old one is still getting deleted. Hopefully solving #952
2017-07-30 15:57:34 +02:00
Safihre
09a86683e5 Retry icon was too red in Glitter Night 2017-07-30 15:56:49 +02:00
Safihre
fc9a13879e CSS Tweaks to Night theme 2017-07-30 11:32:35 +02:00
Safihre
73f0885566 Schedule to deprecate Categories setting for Servers in next release
This option only gives headaches because users do not use it correctly or edge cases where downloads stall. 
If users report that they really want to keep this option, we can of course consider it.
2017-07-29 13:29:10 +02:00
Safihre
090b22f193 Revert "CherryPy 8.1.2 - Catch error of Python 2 in combination with new OpenSSL"
Not catching the right error because it's of the general Error class, not SSLError.
2017-07-28 18:46:46 +02:00
Safihre
f9c092ae8f Move Notification Script up on the Config page and add Wiki-link
So they can see other services
2017-07-28 09:52:25 +02:00
Safihre
4246bc2aea Move enable_meta to more logical spot 2017-07-27 16:00:40 +02:00
Safihre
c4fa047393 Automatic redirect to login page in Glitter 2017-07-27 14:56:34 +02:00
SABnzbd Automation
22e4d24a71 Automatic translation update 2017-07-27 12:29:06 +00:00
Safihre
96fccff63b Update text files for 2.2.0RC1 2017-07-27 13:50:41 +02:00
Safihre
6b46a15b49 Include indexer-hostname in the API-key missing warning 2017-07-27 11:50:12 +02:00
Safihre
98cc0dad55 API-key was always required for Indexer-feedback
Remove oznzb specific links for realy now.
Indexers should provide their rating-url in the headers/meta-data. Keeping the Specials setting for backwards compatibility for current OZnzb users.
2017-07-27 11:48:00 +02:00
Safihre
6fdeab6948 Permanent notice in Plush to upgrade to Glitter 2017-07-27 10:35:26 +02:00
Safihre
553dd04cea Restore 'Use tags from indexer' switch
https://forums.sabnzbd.org/viewtopic.php?f=11&t=22864
2017-07-27 09:52:59 +02:00
Safihre
0baa316a72 Revert "Remove enable_meta"
This reverts commit ff3c46fe1f.
2017-07-27 08:35:06 +02:00
Safihre
3ac209f9a9 CherryPy 8.1.2 - Catch error of Python 2 in combination with new OpenSSL
Closes #853
2017-07-26 16:34:45 +02:00
Safihre
ec55f64a8a Correctly remove files when flat_unpack or no-job-folders set
Results could be pretty bad otherwise: https://forums.sabnzbd.org/viewtopic.php?f=11&p=112774
2017-07-26 09:30:39 +02:00
Safihre
932e1e577b Do not double check 'part' in RAR filename
Already caught by the regex, otherwise filenames that have "part" somwhere in the name will not be used for direct-unpack.
2017-07-26 08:59:26 +02:00
Hellowlol
56d5b1d9f8 Make bonjour easier to setup. 2017-07-25 15:52:30 +02:00
Hellowlol
28bdebb147 Let zeroconf know if we are using https. 2017-07-25 15:52:30 +02:00
Safihre
827fc7b64e Direct Unpack would block forever if file was missing 2017-07-25 11:58:29 +02:00
Safihre
f5dde93644 Change History Retention label to fit
Closes #978
2017-07-24 19:21:43 +02:00
Safihre
60c574828e Sort Servers in Download Report
Closes #979
2017-07-24 19:14:31 +02:00
Safihre
14ca8342f9 Update wiki URL to 2.2 2017-07-24 13:36:16 +02:00
61 changed files with 2855 additions and 1115 deletions

View File

@@ -24,13 +24,13 @@
For these the server blocking method is not very favourable.
There is an INI-only option that will limit blocks to 1 minute.
no_penalties = 1
See: https://sabnzbd.org/wiki/configuration/2.1/special
See: https://sabnzbd.org/wiki/configuration/2.2/special
- Some third-party utilties try to probe SABnzbd API in such a way that you will
often see warnings about unauthenticated access.
If you are sure these probes are harmless, you can suppress the warnings by
setting the option "api_warnings" to 0.
See: https://sabnzbd.org/wiki/configuration/2.1/special
See: https://sabnzbd.org/wiki/configuration/2.2/special
- On OSX you may encounter downloaded files with foreign characters.
The par2 repair may fail when the files were created on a Windows system.
@@ -41,7 +41,7 @@
You will see this only when downloaded files contain accented characters.
You need to fix it yourself by running the convmv utility (available for most Linux platforms).
Possible the file system override setting 'fsys_type' might be solve things:
See: https://sabnzbd.org/wiki/configuration/2.1/special
See: https://sabnzbd.org/wiki/configuration/2.2/special
- The "Watched Folder" sometimes fails to delete the NZB files it has
processed. This happens when other software still accesses these files.
@@ -81,4 +81,4 @@
- Squeeze Linux
There is a "special" option that will allow you to select an alternative library.
use_pickle = 1
See: https://sabnzbd.org/wiki/configuration/2.1/special
See: https://sabnzbd.org/wiki/configuration/2.2/special

View File

@@ -1,7 +1,7 @@
Metadata-Version: 1.0
Name: SABnzbd
Version: 2.2.0Beta2
Summary: SABnzbd-2.2.0Beta2
Version: 2.2.0RC2
Summary: SABnzbd-2.2.0RC2
Home-page: https://sabnzbd.org
Author: The SABnzbd Team
Author-email: team@sabnzbd.org

View File

@@ -1,55 +1,61 @@
Release Notes - SABnzbd 2.2.0 Beta 2
Release Notes - SABnzbd 2.2.0 Release Candidate 2
=========================================================
NOTE: Due to changes in this release, the queue will be converted when 2.2.0
is started for the first time. Job order, settings and data will be
preserved, but all jobs will be unpaused and URL's that did not finish
preserved, but all jobs will be unpaused and URLs that did not finish
fetching before the upgrade will be lost!
## Bugfixes and changes since Beta 1
- Graphical overview of daily server usage on Servers page
- New option History Retention to limit number of jobs in History
- Add Retry All Failed button to Glitter
- Add option to only tag a duplicate job without pausing or removing it
- Remove video and audio rating icons from Queue
- Show vote buttons instead of video and audio rating buttons in History
- Direct Unpack could crash
- Wizard was always accessible, even with username and password set
- Several styling fixes in the interface
## Changes since 2.2.0 Release Candidate 1
- Not all RAR files were correctly removed for encrypted downloads
- Better indication of verification process before and after repair
- All par2 files are only downloaded when enabled, not on enable_par_cleanup
- Disk-space is now checked before writing files
- Server usage graphs did not always list all available months
- Warning is shown when many files with duplicate filenames are discarded
- Special characters like []!* in filenames could break repair
- In some cases not all RAR-sets were unpacked
- Categories with ' in them could result in SQL errors
- Faulty pynotify could stop shutdown
- Various CSS fixes in Glitter and the Config
- macOS: Really catch "Protocol wrong type for socket" errors
## Bugfixes since Alpha 3
- Bugfixes and stability updates for Direct Unpack
- Notification errors
- Correct value in "Speed" Extra History Column
- NOTE: Option to limit Servers to specific Categories is now scheduled
to be removed in the next release.
## Changes since 2.1.0
- Direct Unpack: Jobs will start unpacking during the download, reduces
post-processing time but requires capable hard drive. Only works for jobs that
do not need repair. Will be enabled if your incomplete folder-speed > 60MB/s
do not need repair. Will be enabled if your incomplete folder-speed > 40MB/s
- Reduced memory usage, especially with larger queues
- Removed 5 second delay between fetching URLs
- Graphical overview of server-usage on Servers page
- Notifications can now be limited to certain Categories
- Each item in the Queue and Filelist now has Move to Top/Bottom buttons
- Smoother animations in Firefox (disabled previously due to FF high-CPU usage)
- Removed 5 second delay between fetching URLs
- Each item in the Queue and File list now has Move to Top/Bottom buttons
- Add option to only tag a duplicate job without pausing or removing it
- New option "History Retention" to automatically purge jobs from History
- Jobs outside server retention are processed faster
- Show missing articles in MB instead of number of articles
- Obfuscated filenames are renamed during downloading, if possible
- If enable_par_cleanup is disabled all par2 files be downloaded
- Add "Retry All Failed" button to Glitter
- Smoother animations in Firefox (disabled previously due to FF high-CPU usage)
- Show missing articles in MB instead of number of articles
- Correct value in "Speed" Extra History Column
- Remove video and audio rating icons from Queue
- Show vote buttons instead of video and audio rating buttons in History
- If enabled, replace dots in filenames also when there are spaces already
- Update GNTP bindings to 1.0.3
- max_art_opt and replace_illegal moved from Switches to Specials
- Removed Specials enable_meta, par2_multicore and allow_streaming
- Removed Specials par2_multicore and allow_streaming
- Windows: Full unicode support when calling repair and unpack
- Windows: Move enable_multipar to Specials
- Windows: Better indication of verification process before and after repair
- Windows: Move enable_MultiPar to Specials
- Windows: MultiPar verification of a job is skipped after blocks are fetched
- Windows & macOS: removed par2cmdline in favor of par2tbb/Multipar
- Windows & macOS: removed par2cmdline in favor of par2tbb/MultiPar
## Bugfixes since 2.1.0
- Shutdown/suspend did not work on some Linux systems
- Deleting a job could result in write errors
- Display warning if custom par2 parameters are wrong
- RSS URLs with commas were broken
- Display warning if "Extra par2 parameters" turn out to be wrong
- RSS URLs with commas in the URL were broken
- Fixed some "Saving failed" errors
- Fixed crashing URLGrabber
- Jobs with renamed files are now correctly handled when using Retry
@@ -59,9 +65,12 @@ fetching before the upgrade will be lost!
- History would not always show latest changes
- Convert HTML in error messages
- Fixed unicode error during Sorting
- Wizard was always accessible, even with username and password set
- Not all texts were shown in the selected Language
- Catch "error 0" when using HTTPS on some Linux platforms
- Improve zeroconf/bonjour by sending HTTPS setting and auto-discover of IP
- Windows: Fix error in MultiPar-code when first par2-file was damaged
- macOS: Catch 'Protocol wrong type for socket' errors
- macOS: Catch "Protocol wrong type for socket" errors
## Translations
- Added Hebrew translation by ION IL, many other languages updated.
@@ -72,15 +81,10 @@ fetching before the upgrade will be lost!
- Install new version
- Start SABnzbd
## Upgrade notices (from pre-2.x.x)
- Windows: When starting the Post-Processing script, the path to the job folder
is no longer in short-path notation but includes the full path. To support
long paths (>255), you might need to alter them to long-path notation (\\?\).
- Schedule items are converted when upgrading to 2.x.x and will break when
reverted back to pre-2.x.x releases.
## Upgrade notices
- The organization of the download queue is different from 0.7.x releases.
So 2.x.x will not see the existing queue, but you can go to Status->Queue Repair
and "Repair" the old queue.
This version will not see the old queue, but you restore the jobs by going
to Status page and use Queue Repair.
## Known problems and solutions
- Read the file "ISSUES.txt"

View File

@@ -1374,7 +1374,14 @@ def main():
# Wait for server to become ready
cherrypy.engine.wait(cherrypy.process.wspbus.states.STARTED)
sabnzbd.zconfig.set_bonjour(cherryhost, cherryport)
# Bonjour needs a ip. Lets try to find it.
try:
z_host = socket.gethostbyname(socket.gethostname())
except socket.gaierror:
z_host = cherryhost
sabnzbd.zconfig.set_bonjour(z_host, cherryport)
mail = None
if sabnzbd.WIN32:

View File

@@ -200,8 +200,8 @@ socket_errors_nonblocking = plat_specific_errors(
'EAGAIN', 'EWOULDBLOCK', 'WSAEWOULDBLOCK')
if sys.platform == 'darwin':
socket_errors_to_ignore.append(plat_specific_errors('EPROTOTYPE'))
socket_errors_nonblocking.append(plat_specific_errors('EPROTOTYPE'))
socket_errors_to_ignore.extend(plat_specific_errors('EPROTOTYPE'))
socket_errors_nonblocking.extend(plat_specific_errors('EPROTOTYPE'))
comma_separated_headers = [
ntob(h) for h in

View File

@@ -22,7 +22,7 @@
</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no, maximum-scale=1" />
<meta name="apple-mobile-web-app-title" content="SABnzbd" />
<link rel="apple-touch-icon" sizes="76x76" href="${root}staticcfg/ico/apple-touch-icon-76x76-precomposed.png" />
@@ -33,7 +33,7 @@
<link rel="stylesheet" type="text/css" href="${root}staticcfg/bootstrap/css/bootstrap.min.css?v=$version" />
<link rel="stylesheet" type="text/css" href="${root}staticcfg/css/chartist.min.css" />
<link rel="stylesheet" type="text/css" href="${root}staticcfg/css/style.css?p=$pid" />
<link rel="stylesheet" type="text/css" href="${root}staticcfg/css/style.css?v=$version" />
<link rel="shortcut icon" href="${root}staticcfg/ico/favicon.ico?v=$version" />

View File

@@ -1,5 +1,5 @@
<!--#set global $pane="Config"#-->
<!--#set global $help_uri="configuration/2.1/configure"#-->
<!--#set global $help_uri="configuration/2.2/configure"#-->
<!--#include $webdir + "/_inc_header_uc.tmpl"#-->
<!--#from locale import getpreferredencoding#-->

View File

@@ -1,5 +1,5 @@
<!--#set global $pane="Categories"#-->
<!--#set global $help_uri="configuration/2.1/categories"#-->
<!--#set global $help_uri="configuration/2.2/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/2.1/folders"#-->
<!--#set global $help_uri="configuration/2.2/folders"#-->
<!--#include $webdir + "/_inc_header_uc.tmpl"#-->
<div class="colmask">

View File

@@ -1,5 +1,5 @@
<!--#set global $pane="General"#-->
<!--#set global $help_uri="configuration/2.1/general"#-->
<!--#set global $help_uri="configuration/2.2/general"#-->
<!--#include $webdir + "/_inc_header_uc.tmpl"#-->
<div class="colmask">

View File

@@ -1,5 +1,5 @@
<!--#set global $pane="Email"#-->
<!--#set global $help_uri="configuration/2.1/notifications"#-->
<!--#set global $help_uri="configuration/2.2/notifications"#-->
<!--#include $webdir + "/_inc_header_uc.tmpl"#-->
<!--#def show_notify_checkboxes($section_label)#-->
@@ -178,6 +178,45 @@
</div>
</div>
<!--#end if#-->
<div class="section" id="nscript">
<div class="col2">
<h3>$T('section-NScript')</h3>
<table>
<tr>
<td><input type="checkbox" name="nscript_enable" id="nscript_enable" value="1" <!--#if int($nscript_enable) > 0 then 'checked="checked"' else ""#--> /></td>
<td><label for="nscript_enable"> $T('opt-nscript_enable')</label></td>
</tr>
</table>
<em>$T('explain-nscript_enable')</em><br><a href="$helpuri$help_uri#nscript" target="_blank">$T('readwiki')</a>
$show_cat_box('nscript')
</div>
<div class="col1" <!--#if int($nscript_enable) > 0 then '' else 'style="display:none"'#-->>
<fieldset>
<div class="field-pair">
<label class="config" for="nscript_script">$T('opt-nscript_script')</label>
<select name="nscript_script">
<!--#for $sc in $scripts#-->
<option value="$sc" <!--#if $nscript_script == $sc then 'selected="selected"' else ""#-->>$Tspec($sc)</option>
<!--#end for#-->
</select>
<span class="desc">$T('explain-nscript_script')</span>
</div>
<div class="field-pair">
<label class="config" for="nscript_parameters">$T('opt-nscript_parameters')</label>
<input type="text" name="nscript_parameters" id="nscript_parameters" value="$nscript_parameters" />
<span class="desc">$T('Optional') - $T('explain-nscript_parameters')</span>
</div>
$show_notify_checkboxes('nscript')
<div class="field-pair">
<button class="btn btn-default saveButton"><span class="glyphicon glyphicon-ok"></span> $T('button-saveChanges')</button>
<button class="btn btn-default" type="button" id="test_nscript"><span class="glyphicon glyphicon-comment"></span> $T('testNotify')</button>
</div>
<div class="field-pair result-box">
<div class="alert"></div>
</div>
</fieldset>
</div>
</div>
<div class="section" id="growl">
<div class="col2">
<h3>$T('growlSettings') <a href="$helpuri$help_uri#toc3" target="_blank"><span class="glyphicon glyphicon-question-sign"></span></a></h3>
@@ -350,45 +389,6 @@
</fieldset>
</div>
</div>
<div class="section" id="nscript">
<div class="col2">
<h3>$T('section-NScript')</h3>
<table>
<tr>
<td><input type="checkbox" name="nscript_enable" id="nscript_enable" value="1" <!--#if int($nscript_enable) > 0 then 'checked="checked"' else ""#--> /></td>
<td><label for="nscript_enable"> $T('opt-nscript_enable')</label></td>
</tr>
</table>
<em>$T('explain-nscript_enable')</em>
$show_cat_box('nscript')
</div>
<div class="col1" <!--#if int($nscript_enable) > 0 then '' else 'style="display:none"'#-->>
<fieldset>
<div class="field-pair">
<label class="config" for="nscript_script">$T('opt-nscript_script')</label>
<select name="nscript_script">
<!--#for $sc in $scripts#-->
<option value="$sc" <!--#if $nscript_script == $sc then 'selected="selected"' else ""#-->>$Tspec($sc)</option>
<!--#end for#-->
</select>
<span class="desc">$T('explain-nscript_script')</span>
</div>
<div class="field-pair">
<label class="config" for="nscript_parameters">$T('opt-nscript_parameters')</label>
<input type="text" name="nscript_parameters" id="nscript_parameters" value="$nscript_parameters" />
<span class="desc">$T('Optional') - $T('explain-nscript_parameters')</span>
</div>
$show_notify_checkboxes('nscript')
<div class="field-pair">
<button class="btn btn-default saveButton"><span class="glyphicon glyphicon-ok"></span> $T('button-saveChanges')</button>
<button class="btn btn-default" type="button" id="test_nscript"><span class="glyphicon glyphicon-comment"></span> $T('testNotify')</button>
</div>
<div class="field-pair result-box">
<div class="alert"></div>
</div>
</fieldset>
</div>
</div>
</form>
</div><!-- /colmask -->

View File

@@ -1,5 +1,5 @@
<!--#set global $pane="RSS"#-->
<!--#set global $help_uri="configuration/2.1/rss"#-->
<!--#set global $help_uri="configuration/2.2/rss"#-->
<!--#include $webdir + "/_inc_header_uc.tmpl"#-->
<div class="colmask">
<!--#if not $active_feed#-->

View File

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

View File

@@ -1,5 +1,5 @@
<!--#set global $pane="Servers"#-->
<!--#set global $help_uri="configuration/2.1/servers"#-->
<!--#set global $help_uri="configuration/2.2/servers"#-->
<!--#include $webdir + "/_inc_header_uc.tmpl"#-->
<div class="colmask">
@@ -116,7 +116,7 @@
var serverData = {}
var chartOptions = {
fullWidth: true,
showPoint: false,
showArea: true,
axisX: {
labelOffset: {
x: -5
@@ -149,7 +149,7 @@
<!--#set min_date = datetime.date.today()#-->
<!--#for date in $server['amounts'][4]#-->
<!--#set split_date = $date.split('-')#-->
<!--#set min_date = min(min_date, datetime.date(int(split_date[0]), int(split_date[1]), int(split_date[2])))#-->
<!--#set min_date = min(min_date, datetime.date(int(split_date[0]), int(split_date[1]), 1))#-->
<!--#end for#-->
<!--#set months_recorded = int((datetime.date.today()-min_date).days / (365/12))#-->
<select class="chart-selector" name="chart-selector-${id}" id="chart-selector-${id}" data-id="${id}">
@@ -258,7 +258,7 @@
</option>
<!--#end for#-->
</select>
<span class="desc">$T('srv-explain-categories')</span>
<span class="desc">$T('srv-explain-categories')<br><span class="label label-warning">$T('warning').upper()</span> <strong>This option is scheduled to be removed in the next release of SABnzbd.</strong></span>
<div class="alert alert-info alert-no-category">
<span class="glyphicon glyphicon-info-sign"></span>
$T('srv-explain-no-categories')
@@ -378,15 +378,16 @@
// Show the chart
chart = new Chartist.Line('#server-chart-'+server_id, data, chartOptions);
chart.on('created', function(context) {
// Make sure to add this as the first child so it's at the bottom
context.svg.elem('rect', {
x: context.chartRect.x1,
y: context.chartRect.y2,
y: context.chartRect.y2-1,
width: context.chartRect.width(),
height: context.chartRect.height()+2,
fill: 'none',
stroke: '#B9B9B9',
'stroke-width': '1px'
})
}, '', context.svg, true)
\$('#server-chart-'+server_id+' .ct-label.ct-vertical').each(function(index, elmn) {
elmn.innerHTML += axisLabel
})

View File

@@ -1,5 +1,5 @@
<!--#set global $pane="Sorting"#-->
<!--#set global $help_uri="configuration/2.1/sorting"#-->
<!--#set global $help_uri="configuration/2.2/sorting"#-->
<!--#include $webdir + "/_inc_header_uc.tmpl"#-->
<div class="colmask">

View File

@@ -1,5 +1,5 @@
<!--#set global $pane="Special"#-->
<!--#set global $help_uri="configuration/2.1/special"#-->
<!--#set global $help_uri="configuration/2.2/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/2.1/switches"#-->
<!--#set global $help_uri="configuration/2.2/switches"#-->
<!--#include $webdir + "/_inc_header_uc.tmpl"#-->
<div class="colmask">
@@ -135,7 +135,7 @@
<div class="field-pair">
<label class="config" for="direct_unpack">$T('opt-direct_unpack')</label>
<input type="checkbox" name="direct_unpack" id="direct_unpack" value="1" <!--#if int($direct_unpack) > 0 then 'checked="checked"' else ""#--> />
<span class="desc">$T('explain-direct_unpack')</span>
<span class="desc">$T('explain-direct_unpack').replace('. ', '.<br/>')</span>
</div>
<div class="field-pair">
<button class="btn btn-default saveButton"><span class="glyphicon glyphicon-ok"></span> $T('button-saveChanges')</button>
@@ -212,12 +212,16 @@
<input type="checkbox" name="ignore_samples" id="ignore_samples" value="1" <!--#if int($ignore_samples) > 0 then 'checked="checked"' else ""#--> />
<span class="desc">$T('explain-ignore_samples') $T('igsam-del').</span>
</div>
<div class="field-pair">
<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"/>
<span class="desc">$T('explain-cleanup_list')</span>
</div>
<div class="field-pair">
<label class="config" for="history_retention_select">$T('opt-history_retention')</label>
<input type="hidden" name="history_retention" id="history_retention" value="$history_retention">
@@ -230,7 +234,6 @@
<input type="number" id="history_retention_number" name="history_retention_number" min="1">
<span class="desc">$T('explain-history_retention').replace('. ', '.<br/>')</span>
</div>
<div class="field-pair">
<button class="btn btn-default saveButton"><span class="glyphicon glyphicon-ok"></span> $T('button-saveChanges')</button>
<button class="btn btn-default restoreDefaults"><span class="glyphicon glyphicon-asterisk"></span> $T('button-restoreDefaults')</button>
@@ -247,7 +250,7 @@
<div class="field-pair">
<label class="config" for="folder_rename">$T('opt-folder_rename')</label>
<input type="checkbox" name="folder_rename" id="folder_rename" value="1" <!--#if int($folder_rename) > 0 then 'checked="checked"' else ""#--> />
<span class="desc">$T('explain-folder_rename')</span>
<span class="desc">$T('explain-folder_rename').replace('. ', '.<br/>')</span>
</div>
<div class="field-pair">
<label class="config" for="replace_spaces">$T('opt-replace_spaces')</label>
@@ -468,7 +471,7 @@
retention_number.show()
// Days or number?
if(retention_select.indexOf("d") !== -1) {
retention_number.attr('placeholder', '$T('days')')
retention_number.attr('placeholder', '$T('days').capitalize()')
if(retention_number.val()) {
retention_setting.val(retention_number.val() + 'd')
} else if(parseInt(retention_setting.val()) > 0) {

View File

@@ -1,9 +1,9 @@
<html lang="$active_lang">
<head>
<title>SABnzbd</title>
<title>SABnzbd - $T('login')</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no, maximum-scale=1" />
<meta name="apple-mobile-web-app-title" content="SABnzbd" />
<link rel="apple-touch-icon" sizes="76x76" href="../staticcfg/ico/apple-touch-icon-76x76-precomposed.png" />

View File

@@ -619,7 +619,6 @@ h2.activeRSS {
padding: 0 0 .5em;
}
.feed-row div {
padding-right: 10px;
overflow:hidden;
white-space: nowrap;
text-overflow: ellipsis;
@@ -1010,6 +1009,15 @@ input[type="checkbox"] {
stroke: #666666;
}
.Servers .ct-series-a .ct-point {
stroke: #666666;
stroke-width: 4px;
}
.Servers .ct-series-a .ct-area {
fill: #666666
}
.Servers .ct-label {
font-size: 1em;
color: black;
@@ -1159,7 +1167,7 @@ input[type="checkbox"] {
.navbar-nav {
/* For extra wide languages like Polish */
margin-right: -50px;
margin-right: -150px;
}
}

View File

@@ -16,7 +16,7 @@
<title data-bind="text: title">SABnzbd</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no, maximum-scale=1" />
<meta name="mobile-web-app-capable" content="yes" />
<meta name="application-name" content="SABnzbd">
<meta name="apple-mobile-web-app-capable" content="yes" />
@@ -30,13 +30,13 @@
<link rel="apple-touch-icon" sizes="152x152" href="./staticcfg/ico/apple-touch-icon-152x152-precomposed.png" />
<link rel="apple-touch-icon" sizes="180x180" href="./staticcfg/ico/apple-touch-icon-180x180-precomposed.png" />
<link rel="apple-touch-icon" sizes="192x192" href="./staticcfg/ico/android-192x192.png" />
<link rel="shortcut icon" type="image/ico" href="./staticcfg/ico/favicon.ico?v=1.0.0" data-bind="attr: { 'href': SABIcon }" />
<link rel="shortcut icon" type="image/ico" href="./staticcfg/ico/favicon.ico?v=$version" data-bind="attr: { 'href': SABIcon }" />
<link rel="stylesheet" type="text/css" href="./static/bootstrap/css/bootstrap.min.css?p=$pid" />
<link rel="stylesheet" type="text/css" href="./static/stylesheets/glitter.css?p=$pid" />
<link rel="stylesheet" type="text/css" href="./static/stylesheets/glitter.mobile.css?p=$pid" media="all and (max-width: 768px)" />
<link rel="stylesheet" type="text/css" href="./static/bootstrap/css/bootstrap.min.css?v=$version" />
<link rel="stylesheet" type="text/css" href="./static/stylesheets/glitter.css?v=$version" />
<link rel="stylesheet" type="text/css" href="./static/stylesheets/glitter.mobile.css?v=$version" media="all and (max-width: 768px)" />
<!--#if $color_scheme not in ('Default', '') #-->
<link rel="stylesheet" type="text/css" href="./static/stylesheets/colorschemes/${color_scheme}.css?p=$pid"/>
<link rel="stylesheet" type="text/css" href="./static/stylesheets/colorschemes/${color_scheme}.css?v=$version"/>
<!--#end if#-->
<!-- Make translations available in scripts -->

View File

@@ -37,19 +37,10 @@ function Fileslisting(parent) {
// Move to top and bottom buttons
self.moveButton = function (item,event) {
var ITEMKEY = "ko_sortItem",
INDEXKEY = "ko_sourceIndex",
LISTKEY = "ko_sortList",
PARENTKEY = "ko_parentList",
DRAGKEY = "ko_dragItem",
unwrap = ko.utils.unwrapObservable,
dataGet = ko.utils.domData.get,
dataSet = ko.utils.domData.set;
var targetRow,sourceRow,tbody;
var targetRow, sourceRow, tbody;
sourceRow = $(event.currentTarget).parents("tr").filter(":first");
tbody = sourceRow.parents("tbody").filter(":first");
//debugger;
dataSet(sourceRow[0], INDEXKEY, ko.utils.arrayIndexOf(sourceRow.parent().children(), sourceRow[0]));
ko.utils.domData.set(sourceRow[0], "ko_sourceIndex", ko.utils.arrayIndexOf(sourceRow.parent().children(), sourceRow[0]));
sourceRow = sourceRow.detach();
if ($(event.currentTarget).is(".buttonMoveToTop")) {
// we are moving to the top
@@ -67,7 +58,7 @@ function Fileslisting(parent) {
}
tbody.sortable('option', 'update').call(tbody[0],null, { item: sourceRow });
};
// Trigger update
self.triggerUpdate = function() {
// Call API
@@ -230,9 +221,9 @@ function FileslistingModel(parent, data) {
self.nzf_id = ko.observable(data.nzf_id);
self.file_age = ko.observable(data.age);
self.mb = ko.observable(data.mb);
self.percentage = ko.observable(fixPercentages((100 - (data.mbleft / data.mb * 100)).toFixed(0)));
self.canselect = ko.observable(data.status != "finished" && data.status != "queued");
self.isdone = ko.observable(data.status == "finished");
self.percentage = ko.observable(self.isdone() ? fixPercentages(100) : fixPercentages((100 - (data.mbleft / data.mb * 100)).toFixed(0)));
// Update internally
self.updateFromData = function(data) {
@@ -240,9 +231,10 @@ function FileslistingModel(parent, data) {
self.nzf_id(data.nzf_id)
self.file_age(data.age)
self.mb(data.mb)
self.percentage(fixPercentages((100 - (data.mbleft / data.mb * 100)).toFixed(0)));
self.canselect(data.status != "finished" && data.status != "queued")
self.isdone(data.status == "finished")
// Data is given in MB, would always show 0% for small files even if completed
self.percentage(self.isdone() ? fixPercentages(100) : fixPercentages((100 - (data.mbleft / data.mb * 100)).toFixed(0)))
}
}

View File

@@ -331,6 +331,13 @@ function ViewModel() {
// Split title & speed
var dataSplit = data.split('|||');
// Maybe the result is actually the login page?
if(dataSplit[0].substring(0, 11) === '<html lang=') {
// Redirect
document.location = document.location
return
}
// Set title
self.title(dataSplit[0]);

View File

@@ -76,7 +76,7 @@ legend,
background-color: #666;
}
.navbar-collapse.in .dropdown-menu {
.navbar-collapse.in .dropdown-menu, {
border: none;
}
@@ -111,6 +111,7 @@ legend,
color: #EBEBEB;
}
table,
.table-striped>tbody>tr:nth-child(even)>td,
.table>tbody>tr:nth-child(even)>td,
.table th,
@@ -158,7 +159,9 @@ select.form-control,
.retry-button, .retry-button-inactive,
.history-options-show-failed,
.queue-error-info,
.options-bad-status {
.options-bad-status,
.history-failed-download:hover .retry-button .glyphicon:before,
.retry-button:hover .glyphicon:before {
color: #F95151 !important;
}
@@ -205,6 +208,10 @@ hr {
border-bottom: none !important;
}
#modal-item-files .item-files-table {
border-bottom: 1px solid black;
}
.history-queue-swicher .nav-tabs>li>a,
.history-queue-swicher .nav-tabs>li.active>a {
border-bottom: none;
@@ -222,6 +229,11 @@ hr {
box-shadow: inset 1px 0px 1px rgba(0, 0, 0, 1);
}
.modal-content {
border-color: #727272;
border-top: none;
}
/* Placeholders - Will not work if grouped! */
::-webkit-input-placeholder {
color: #EBEBEB !important;

View File

@@ -101,6 +101,7 @@
<div id="nav_text_left">
<span id="warning_box"><b><a href="${path}status/#tabs-warnings" id="last_warning" title="#echo $last_warning.replace("\n"," ").replace('"',"'") #"><span id="have_warnings">$have_warnings</span> $T('warnings')</a></b></span>
#if $pane=="Main"#
&sdot; <a href="${path}config/general#web_dir">#echo $T('useGlitter').split('.')[0]#.</a>
#if $new_release#&sdot; <a href="$new_rel_url" id="new_release" target="_blank">$T('Plush-updateAvailable').replace(' ','&nbsp;')</a>#end if#
#end if#
</div>

View File

@@ -109,11 +109,6 @@ body {
font-weight: bold;
}
#new_release {
color: green;
font-weight: bold;
}
#livetip {
position: absolute;
background-color: #cfc;
@@ -343,6 +338,7 @@ body {
clear:left;
padding: 0 20px 0 25px;
font-size:90%;
font-weight: bold;
}
#nav_text_left a, #nav_text_right a {
color:#000;
@@ -1083,7 +1079,7 @@ tr:hover .history_added { color: black; }
color: red;
margin-left: 10px;
}
.rating_icon_vision {
width: 16px;
height: 16px;

View File

@@ -8,14 +8,14 @@ msgstr ""
"Project-Id-Version: sabnzbd\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2017-06-22 20:42+0000\n"
"PO-Revision-Date: 2017-07-22 17:36+0000\n"
"Last-Translator: Safihre <safihre@sabnzbd.org>\n"
"PO-Revision-Date: 2017-08-01 16:45+0000\n"
"Last-Translator: ION IL <Unknown>\n"
"Language-Team: Hebrew <he@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2017-07-23 06:02+0000\n"
"X-Generator: Launchpad (build 18419)\n"
"X-Launchpad-Export-Date: 2017-08-02 06:03+0000\n"
"X-Generator: Launchpad (build 18441)\n"
#: email/email.tmpl:1
msgid ""
@@ -72,11 +72,11 @@ msgstr ""
"## !שורות חדשות ורווחים לבנים הם משמעותיים\n"
"##\n"
"## אלו כותרות הדוא\"ל\n"
"To: $to\n"
"From: $from\n"
"Date: $date\n"
"Subject: SABnzbd has <!--#if $status then \"completed\" else \"failed\" #--> "
"job $name\n"
"$to :אל\n"
"$from :מאת\n"
"תאריך: $date\n"
"<!--#if $status then \"completed\" else \"failed\" #--> $name יש עבודה אשר "
"SABnzbd-נושא: ל\n"
"## !אחרי זה בא הגוף, השורה הריקה דרושה\n"
"\n"
",היי\n"
@@ -87,7 +87,7 @@ msgstr ""
"SABnzbd נכשל להוריד את \"$name\" <!--#if $msgid==\"\" then \"\" else "
"\"(newzbin #\" + $msgid + \")\"#-->\n"
"<!--#end if#-->\n"
"הסתיים ב $end_time\n"
"הסתיים ב-$end_time\n"
"הורדו $size\n"
"\n"
":תוצאות העבודה\n"
@@ -143,10 +143,10 @@ msgstr ""
"## !שורות חדשות ורווחים לבנים הם משמעותיים\n"
"##\n"
"## אלו כותרות הדוא\"ל\n"
"To: $to\n"
"From: $from\n"
"Date: $date\n"
"הוסיף $amount עבודות לתור Subject: SABnzbd\n"
"$to :אל\n"
"$from :מאת\n"
"תאריך: $date\n"
"הוסיף $amount עבודות לתור SABnzbd :נושא\n"
"## !אחרי זה בא הגוף, השורה הריקה דרושה\n"
"\n"
",היי\n"
@@ -185,18 +185,17 @@ msgid ""
"Bye\n"
msgstr ""
"##\n"
"## Bad URL Fetch Email template for SABnzbd רעה עבור URL תבנית דוא\"ל של "
"משיכת\n"
"## SABnzbd רעה עבור URL תבנית דוא\"ל של משיכת\n"
"## זאת תבנית ברדלס\n"
"## http://sabnzbd.wikidot.com/email-templates :תיעוד\n"
"##\n"
"## !שורות חדשות ורווחים לבנים הם משמעותיים\n"
"##\n"
"## אלו כותרות הדוא\"ל\n"
"To: $to\n"
"From: $from\n"
"Date: $date\n"
"NZB נכשל במשיכת Subject: SABnzbd\n"
"$to :אל\n"
"$from :מאת\n"
"תאריך: $date\n"
"NZB נכשל במשיכת SABnzbd :נושא\n"
"## !אחרי זה בא הגוף, השורה הריקה דרושה\n"
"\n"
",היי\n"

View File

@@ -12,7 +12,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=ASCII\n"
"Content-Transfer-Encoding: 7bit\n"
"POT-Creation-Date: 2017-07-24 10:07+W. Europe Daylight Time\n"
"POT-Creation-Date: 2017-08-02 12:48+W. Europe Daylight Time\n"
"Generated-By: pygettext.py 1.5\n"
@@ -604,7 +604,7 @@ msgstr ""
msgid "Authentication missing, please enter username/password from Config->General into your 3rd party program:"
msgstr ""
#: sabnzbd/interface.py [Warning message]
#: sabnzbd/interface.py [Warning message] # sabnzbd/skintext.py
msgid "Try our new skin Glitter! Fresh new design that is optimized for desktop and mobile devices. Go to Config -> General to change your skin."
msgstr ""
@@ -946,6 +946,11 @@ msgstr ""
msgid "[%s] Repaired in %s"
msgstr ""
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py
msgid "Verifying repair"
msgstr ""
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/notifier.py [Notification]
msgid "Disk full"
@@ -962,10 +967,6 @@ msgstr ""
msgid "Checking"
msgstr ""
#: sabnzbd/newsunpack.py
msgid "Verifying repair"
msgstr ""
#: sabnzbd/newsunpack.py [Error message]
msgid "Python script \"%s\" does not have execute (+x) permission set"
msgstr ""
@@ -1023,7 +1024,7 @@ msgid "Not available"
msgstr ""
#: sabnzbd/notifier.py # sabnzbd/notifier.py # sabnzbd/notifier.py
#: sabnzbd/notifier.py
#: sabnzbd/notifier.py # sabnzbd/rating.py # sabnzbd/rating.py
msgid "Cannot send, missing required data"
msgstr ""
@@ -1123,6 +1124,10 @@ msgstr ""
msgid "Pausing duplicate NZB \"%s\""
msgstr ""
#: sabnzbd/nzbstuff.py [Warning message]
msgid "%d files with duplicate filenames were discared for \"%s\". Enable \"allow_duplicate_files\" to allow duplicate filenames."
msgstr ""
#: sabnzbd/nzbstuff.py
msgid "Aborted, cannot be completed"
msgstr ""
@@ -1528,6 +1533,18 @@ msgstr ""
msgid "Indexer id (%s) not found for ratings file"
msgstr ""
#: sabnzbd/rating.py # sabnzbd/skintext.py [Address of Growl server]
msgid "Server address"
msgstr ""
#: sabnzbd/rating.py # sabnzbd/skintext.py # sabnzbd/skintext.py
msgid "API Key"
msgstr ""
#: sabnzbd/rating.py # sabnzbd/skintext.py
msgid "This key provides identity to indexer. Check your profile on the indexer's website."
msgstr ""
#: sabnzbd/rss.py [Error message] # sabnzbd/rss.py
msgid "Incorrect RSS feed description \"%s\""
msgstr ""
@@ -2672,8 +2689,8 @@ msgstr ""
msgid "Do not keep any completed jobs"
msgstr ""
#: sabnzbd/skintext.py # sabnzbd/skintext.py
msgid "History item limit"
#: sabnzbd/skintext.py
msgid "Jobs"
msgstr ""
#: sabnzbd/skintext.py
@@ -2700,10 +2717,6 @@ msgstr ""
msgid "Help us translate SABnzbd in your language! <br/>Add untranslated texts or improved existing translations here:"
msgstr ""
#: sabnzbd/skintext.py # sabnzbd/skintext.py
msgid "API Key"
msgstr ""
#: sabnzbd/skintext.py
msgid "This key will give 3rd party programs full access to SABnzbd."
msgstr ""
@@ -3008,6 +3021,14 @@ 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 ""
@@ -3213,11 +3234,7 @@ msgid "Enable Indexer Integration"
msgstr ""
#: sabnzbd/skintext.py
msgid "Indexers can supply rating information when a job is added and SABnzbd can report to the indexer if a job couldn't be completed. Depending on your indexer, the API key setting can be left blank."
msgstr ""
#: sabnzbd/skintext.py
msgid "This key provides identity to indexer. Check your profile on the indexer's website."
msgid "Indexers can supply rating information when a job is added and SABnzbd can report to the indexer if a job couldn't be completed."
msgstr ""
#: sabnzbd/skintext.py
@@ -3556,10 +3573,6 @@ msgstr ""
msgid "Send notifications to Growl"
msgstr ""
#: sabnzbd/skintext.py [Address of Growl server]
msgid "Server address"
msgstr ""
#: sabnzbd/skintext.py [Don't translate "Growl"]
msgid "Only use for remote Growl server (host:port)"
msgstr ""
@@ -4064,6 +4077,10 @@ msgstr ""
msgid "Queue item limit"
msgstr ""
#: sabnzbd/skintext.py
msgid "History item limit"
msgstr ""
#: sabnzbd/skintext.py
msgid "Date format"
msgstr ""
@@ -4573,7 +4590,7 @@ msgstr ""
msgid "Server name does not resolve"
msgstr ""
#: sabnzbd/urlgrabber.py # sabnzbd/urlgrabber.py
#: sabnzbd/urlgrabber.py
msgid "Unauthorized access"
msgstr ""

View File

@@ -7,15 +7,15 @@ msgid ""
msgstr ""
"Project-Id-Version: sabnzbd\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2017-07-17 18:42+0000\n"
"POT-Creation-Date: 2017-08-06 09:51+0000\n"
"PO-Revision-Date: 2017-06-22 07:07+0000\n"
"Last-Translator: Safihre <safihre@sabnzbd.org>\n"
"Language-Team: Danish <da@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2017-07-18 05:26+0000\n"
"X-Generator: Launchpad (build 18419)\n"
"X-Launchpad-Export-Date: 2017-08-07 05:53+0000\n"
"X-Generator: Launchpad (build 18441)\n"
#: SABnzbd.py [Error message]
msgid "Failed to start web-interface"
@@ -104,7 +104,7 @@ msgid "Error"
msgstr "Fejl"
#: SABnzbd.py # sabnzbd/interface.py # sabnzbd/interface.py
#: sabnzbd/osxmenu.py
#: sabnzbd/osxmenu.py # sabnzbd/wizard.py
msgid "SABnzbd shutdown finished"
msgstr "SABnzbd lukning udført."
@@ -435,11 +435,15 @@ msgstr "UUENCODE detekteret, kun yEnc kodning understøttes [%s]"
msgid "%s => missing from all servers, discarding"
msgstr "%s => mangler fra alle servere, afviser"
#: sabnzbd/directunpacker.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py
msgid "Unpacking"
msgstr "Udpakker"
#: sabnzbd/directunpacker.py # sabnzbd/directunpacker.py
#: sabnzbd/directunpacker.py # sabnzbd/skintext.py
msgid "Direct Unpack"
msgstr ""
#: sabnzbd/directunpacker.py # sabnzbd/skintext.py [PP status]
#: sabnzbd/skintext.py [History: job status]
msgid "Completed"
msgstr "Færdig"
#: sabnzbd/directunpacker.py # sabnzbd/newsunpack.py
msgid "Unpacked %s files/folders in %s"
@@ -652,7 +656,7 @@ msgstr ""
"Brugeroplysninger mangler, indtast brugernavn / password fra Konfiguration-> "
"Generelt i dit tredjepartsprogram:"
#: sabnzbd/interface.py [Warning message]
#: sabnzbd/interface.py [Warning message] # sabnzbd/skintext.py
msgid ""
"Try our new skin Glitter! Fresh new design that is optimized for desktop and "
"mobile devices. Go to Config -> General to change your skin."
@@ -842,6 +846,11 @@ msgstr "Forsøger unrar med adgangskode \"%s\""
msgid "Unpacking failed, archive requires a password"
msgstr "Udpakning mislykkedes, arkivet kræver password"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
msgid "Unpacking"
msgstr "Udpakker"
#: sabnzbd/newsunpack.py # sabnzbd/skintext.py [PP phase "unpack"]
msgid "Unpack"
msgstr "Udpak"
@@ -1003,6 +1012,11 @@ msgstr "Reparerer"
msgid "[%s] Repaired in %s"
msgstr "[%s] Repareret i %s"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py
msgid "Verifying repair"
msgstr ""
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/notifier.py [Notification]
msgid "Disk full"
@@ -1010,19 +1024,15 @@ msgstr "Disk fuld"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
msgid "Verifying"
msgstr "Bekræfter"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/skintext.py [PP status]
#: sabnzbd/newsunpack.py # sabnzbd/skintext.py [PP status]
msgid "Checking"
msgstr "Kontrollerer"
#: sabnzbd/newsunpack.py
msgid "Verifying repair"
msgstr ""
#: sabnzbd/newsunpack.py [Error message]
msgid "Python script \"%s\" does not have execute (+x) permission set"
msgstr "Python script '%s' har ikke udfør (+x) tilladelsessæt"
@@ -1082,7 +1092,7 @@ msgid "Not available"
msgstr "Ikke tilgængelig"
#: sabnzbd/notifier.py # sabnzbd/notifier.py # sabnzbd/notifier.py
#: sabnzbd/notifier.py
#: sabnzbd/notifier.py # sabnzbd/rating.py # sabnzbd/rating.py
msgid "Cannot send, missing required data"
msgstr "Kan ikke sende, mangler nødvendige data"
@@ -1174,7 +1184,7 @@ msgstr "Ignorerer identiske NZB \"%s\""
msgid "Failing duplicate NZB \"%s\""
msgstr "Fejler dublet NZB \"%s\""
#: sabnzbd/nzbstuff.py
#: sabnzbd/nzbstuff.py # sabnzbd/nzbstuff.py [Warning message]
msgid "Duplicate NZB"
msgstr "Dublet NZB"
@@ -1182,6 +1192,12 @@ msgstr "Dublet NZB"
msgid "Pausing duplicate NZB \"%s\""
msgstr "Pause duplikeret NZB \"%s\""
#: sabnzbd/nzbstuff.py [Warning message]
msgid ""
"%d files with duplicate filenames were discared for \"%s\". Enable "
"\"allow_duplicate_files\" to allow duplicate filenames."
msgstr ""
#: sabnzbd/nzbstuff.py
msgid "Aborted, cannot be completed"
msgstr "Afbrudt, kan ikke afsluttes"
@@ -1281,7 +1297,7 @@ msgid "Limit Speed"
msgstr "Hastighedsbegrænsning"
#: sabnzbd/osxmenu.py # sabnzbd/sabtray.py # sabnzbd/sabtraylinux.py
#: sabnzbd/skintext.py [#: Config->Scheduler] # sabnzbd/skintext.py [Pause downloading] # sabnzbd/skintext.py [Three way switch for duplicates]
#: sabnzbd/skintext.py [#: Config->Scheduler] # sabnzbd/skintext.py [Pause downloading] # sabnzbd/skintext.py [Four way switch for duplicates]
#: sabnzbd/skintext.py [Config->Scheduling]
msgid "Pause"
msgstr "Pause"
@@ -1623,6 +1639,22 @@ msgstr "Fejl ved lukning af system"
msgid "Indexer id (%s) not found for ratings file"
msgstr "Indexer id (%s) ikke fundet for ratings fil"
#: sabnzbd/rating.py # sabnzbd/skintext.py [Address of Growl server]
msgid "Server address"
msgstr "Serveradresse"
#: sabnzbd/rating.py # sabnzbd/skintext.py # sabnzbd/skintext.py
msgid "API Key"
msgstr "API-nøgle"
#: sabnzbd/rating.py # sabnzbd/skintext.py
msgid ""
"This key provides identity to indexer. Check your profile on the indexer's "
"website."
msgstr ""
"Denne nøgle indeholder identitet indekseringen. Tjek din profil på "
"indekseringens hjemmeside."
#: sabnzbd/rss.py [Error message] # sabnzbd/rss.py
msgid "Incorrect RSS feed description \"%s\""
msgstr "Forkert RSS-feed beskrivelse \"%s\""
@@ -1709,10 +1741,6 @@ msgstr "Server"
msgid "Failure"
msgstr "Mislykkedes"
#: sabnzbd/skintext.py [PP status] # sabnzbd/skintext.py [History: job status]
msgid "Completed"
msgstr "Færdig"
#: sabnzbd/skintext.py [PP status] # sabnzbd/skintext.py
msgid "Failed"
msgstr "Mislykkedes"
@@ -1921,6 +1949,54 @@ 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 "Månedsdag"
@@ -2744,6 +2820,36 @@ msgstr ""
"Listen over filtypenavne, der skal slettes efter download. < br / > For "
"eksempel: <b>nfo</b> eller <b>nfo, sfv</b>"
#: sabnzbd/skintext.py
msgid "History Retention"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Automatically delete completed jobs from History. Beware that Duplicate "
"Detection and some external tools rely on History information."
msgstr ""
#: sabnzbd/skintext.py
msgid "Keep all jobs"
msgstr ""
#: sabnzbd/skintext.py
msgid "Keep maximum number of completed jobs"
msgstr ""
#: sabnzbd/skintext.py
msgid "Keep completed jobs maximum number of days"
msgstr ""
#: sabnzbd/skintext.py
msgid "Do not keep any completed jobs"
msgstr ""
#: sabnzbd/skintext.py
msgid "Jobs"
msgstr ""
#: sabnzbd/skintext.py
msgid "Save Changes"
msgstr "Gem ændringer"
@@ -2772,10 +2878,6 @@ msgstr ""
"Hjælp os med at oversætte SABnzbd på dit sprog! <br/> Tilføj uoversatte "
"tekster eller forbedrede eksisterende oversættelser her:"
#: sabnzbd/skintext.py # sabnzbd/skintext.py
msgid "API Key"
msgstr "API-nøgle"
#: sabnzbd/skintext.py
msgid "This key will give 3rd party programs full access to SABnzbd."
msgstr "Denne nøgle vil give 3. parts programmer fuld adgang til SABnzbd."
@@ -3082,14 +3184,18 @@ msgstr ""
"Fundet identiske episoder i serie (baseret på \"navn /sæson /episode\" af "
"elementer i din historik)"
#: sabnzbd/skintext.py [Three way switch for duplicates]
#: sabnzbd/skintext.py [Four way switch for duplicates]
msgid "Discard"
msgstr "Kassér"
#: sabnzbd/skintext.py [Three way switch for duplicates]
#: sabnzbd/skintext.py [Four way switch for duplicates]
msgid "Fail job (move to History)"
msgstr "Mislykkes job (flyt til historik)"
#: sabnzbd/skintext.py [Four way switch for duplicates]
msgid "Tag job"
msgstr ""
#: sabnzbd/skintext.py [Three way switch for encrypted posts]
msgid "Abort"
msgstr "Afbryd"
@@ -3140,6 +3246,16 @@ 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 ""
#: 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"
@@ -3188,10 +3304,6 @@ msgstr "Sortere efter alder"
msgid "Automatically sort items by (average) age."
msgstr "Sortere automatisk efter (gennemsnits) alder."
#: sabnzbd/skintext.py
msgid "Direct Unpack"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Posts will be paused untill they are at least this age. Setting job priority "
@@ -3372,20 +3484,8 @@ msgstr "Aktiver indekseringen Integration"
#: sabnzbd/skintext.py
msgid ""
"Indexers can supply rating information when a job is added and SABnzbd can "
"report to the indexer if a job couldn't be completed. Depending on your "
"indexer, the API key setting can be left blank."
"report to the indexer if a job couldn't be completed."
msgstr ""
"Indeksatorer kan levere klassifikationsoplysninger, når et job er tilføjet "
"og SABnzbd kan rapportere indekseringen, hvis et job ikke kunne fuldføres. "
"Afhængigt af din indekseringen, kan API tasteindstillingen stå tomt."
#: sabnzbd/skintext.py
msgid ""
"This key provides identity to indexer. Check your profile on the indexer's "
"website."
msgstr ""
"Denne nøgle indeholder identitet indekseringen. Tjek din profil på "
"indekseringens hjemmeside."
#: sabnzbd/skintext.py
msgid "Enable Filtering"
@@ -3739,10 +3839,6 @@ msgstr "Aktiver Growl"
msgid "Send notifications to Growl"
msgstr "Send meddelelser til Growl"
#: sabnzbd/skintext.py [Address of Growl server]
msgid "Server address"
msgstr "Serveradresse"
#: sabnzbd/skintext.py [Don't translate "Growl"]
msgid "Only use for remote Growl server (host:port)"
msgstr "Bruges kun ved Growl fjern server (vært: port)"
@@ -4294,6 +4390,10 @@ msgstr "Indlæser..."
msgid "articles"
msgstr "artikler"
#: sabnzbd/skintext.py
msgid "Rename"
msgstr "Omdøbe"
#: sabnzbd/skintext.py # sabnzbd/skintext.py
msgid "Queue repair"
msgstr "Kø reparation"
@@ -4795,7 +4895,7 @@ msgstr "Kunne ikke omdøbe lignende fil: %s til %s"
msgid "Server name does not resolve"
msgstr "Servernavnet løser ikke"
#: sabnzbd/urlgrabber.py # sabnzbd/urlgrabber.py
#: sabnzbd/urlgrabber.py
msgid "Unauthorized access"
msgstr "Uautoriseret adgang"
@@ -5175,9 +5275,6 @@ msgstr "URL hentning mislykkedes; %s"
#~ msgid "Pause Interval"
#~ msgstr "Pause interval"
#~ msgid "Rename"
#~ msgstr "Omdøbe"
#~ msgid "Upload: .nzb .rar .zip .gz"
#~ msgstr "Upload: .nzb .rar .zip .gz"

View File

@@ -7,15 +7,15 @@ msgid ""
msgstr ""
"Project-Id-Version: sabnzbd\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2017-07-17 18:42+0000\n"
"PO-Revision-Date: 2017-06-22 07:06+0000\n"
"Last-Translator: Safihre <safihre@sabnzbd.org>\n"
"POT-Creation-Date: 2017-08-06 09:51+0000\n"
"PO-Revision-Date: 2017-08-06 20:37+0000\n"
"Last-Translator: fox <Unknown>\n"
"Language-Team: German <de@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2017-07-18 05:26+0000\n"
"X-Generator: Launchpad (build 18419)\n"
"X-Launchpad-Export-Date: 2017-08-07 05:53+0000\n"
"X-Generator: Launchpad (build 18441)\n"
#: SABnzbd.py [Error message]
msgid "Failed to start web-interface"
@@ -111,7 +111,7 @@ msgid "Error"
msgstr "Fehler"
#: SABnzbd.py # sabnzbd/interface.py # sabnzbd/interface.py
#: sabnzbd/osxmenu.py
#: sabnzbd/osxmenu.py # sabnzbd/wizard.py
msgid "SABnzbd shutdown finished"
msgstr "SABnzbd wurde beendet"
@@ -201,7 +201,7 @@ msgstr "Temporäre Datei für %s konnte nicht angelegt werden"
#: sabnzbd/__init__.py [Warning message] # sabnzbd/__init__.py [Warning message]
msgid "Trying to set status of non-existing server %s"
msgstr "Versuche Status für nicht bestehenden Server %s zu setzen"
msgstr "Status für nicht vorhandenen Server wird versucht %s einzustellen"
#: sabnzbd/__init__.py [Warning message]
msgid "Too little diskspace forcing PAUSE"
@@ -454,11 +454,15 @@ msgstr "UUencode gefunden, nur yEnc Codierung wir unterstützt [%s]"
msgid "%s => missing from all servers, discarding"
msgstr "%s wurde auf keinem Server gefunden und daher übersprungen"
#: sabnzbd/directunpacker.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py
msgid "Unpacking"
msgstr "Entpacken"
#: sabnzbd/directunpacker.py # sabnzbd/directunpacker.py
#: sabnzbd/directunpacker.py # sabnzbd/skintext.py
msgid "Direct Unpack"
msgstr "Direkt entpacken"
#: sabnzbd/directunpacker.py # sabnzbd/skintext.py [PP status]
#: sabnzbd/skintext.py [History: job status]
msgid "Completed"
msgstr "Fertiggestellt"
#: sabnzbd/directunpacker.py # sabnzbd/newsunpack.py
msgid "Unpacked %s files/folders in %s"
@@ -466,13 +470,16 @@ msgstr "%s Datei(en)/Ordner entpackt in %s"
#: sabnzbd/directunpacker.py [Warning message]
msgid "Direct Unpack was automatically enabled."
msgstr ""
msgstr "Direkt entpacken wurde automatisch aktiviert"
#: sabnzbd/directunpacker.py [Warning message] # sabnzbd/skintext.py
msgid ""
"Jobs will start unpacking during the downloading to reduce post-processing "
"time. Only works for jobs that do not need repair."
msgstr ""
"Aufträge werden bereits während des Download-Vorgangs entpackt, um die "
"Nachbearbeitungszeit zu verkürzen. Nur für Aufträge, die nicht repariert "
"werden müssen."
#: sabnzbd/dirscanner.py [Error message] # sabnzbd/dirscanner.py [Error message]
msgid "Error removing %s"
@@ -674,7 +681,7 @@ msgstr ""
"Authentifizierung fehlt. Bitte Benutzernamen und Passwort aus Einstellungen-"
">Allgemein in die externe Anwendung eingeben:"
#: sabnzbd/interface.py [Warning message]
#: sabnzbd/interface.py [Warning message] # sabnzbd/skintext.py
msgid ""
"Try our new skin Glitter! Fresh new design that is optimized for desktop and "
"mobile devices. Go to Config -> General to change your skin."
@@ -863,6 +870,11 @@ msgstr "Versuche entpacken mit Passwort \"%s\""
msgid "Unpacking failed, archive requires a password"
msgstr "Entpacken fehlgeschlagen. Archiv benötigt ein Passwort."
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
msgid "Unpacking"
msgstr "Entpacken"
#: sabnzbd/newsunpack.py # sabnzbd/skintext.py [PP phase "unpack"]
msgid "Unpack"
msgstr "Entpacken"
@@ -1030,6 +1042,11 @@ msgstr "Reparieren"
msgid "[%s] Repaired in %s"
msgstr "[%s] Repariert in %s"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py
msgid "Verifying repair"
msgstr "Überprüfe Reparatur"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/notifier.py [Notification]
msgid "Disk full"
@@ -1037,19 +1054,15 @@ msgstr "Festplatte voll"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
msgid "Verifying"
msgstr "Überprüfen"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/skintext.py [PP status]
#: sabnzbd/newsunpack.py # sabnzbd/skintext.py [PP status]
msgid "Checking"
msgstr "Wird überprüft"
#: sabnzbd/newsunpack.py
msgid "Verifying repair"
msgstr ""
#: sabnzbd/newsunpack.py [Error message]
msgid "Python script \"%s\" does not have execute (+x) permission set"
msgstr "Dem Pythonskript \"%s\" fehlen die Ausführenrechte (+x)"
@@ -1063,10 +1076,13 @@ msgid ""
"Certificate hostname mismatch: the server hostname is not listed in the "
"certificate. This is a server issue."
msgstr ""
"Zertifikat ungültig: Der Server-Host ist nicht im angegeben Zertifikat "
"enthalten. Dies ist ein Serverproblem."
#: sabnzbd/newswrapper.py
msgid "Certificate not valid. This is most probably a server issue."
msgstr ""
"Zertifikat ist nicht gültig. Dies ist wahrscheinlich ein Serverproblem."
#: sabnzbd/newswrapper.py
msgid "Server %s uses an untrusted certificate [%s]"
@@ -1109,7 +1125,7 @@ msgid "Not available"
msgstr "Nicht verfügbar"
#: sabnzbd/notifier.py # sabnzbd/notifier.py # sabnzbd/notifier.py
#: sabnzbd/notifier.py
#: sabnzbd/notifier.py # sabnzbd/rating.py # sabnzbd/rating.py
msgid "Cannot send, missing required data"
msgstr "Absenden nicht möglich, benötigte Daten fehlen"
@@ -1206,7 +1222,7 @@ msgstr "Doppelte NZB \"%s\" wird ignoriert"
msgid "Failing duplicate NZB \"%s\""
msgstr "kopieren der NZB \"%s\" fehlgeschlagen"
#: sabnzbd/nzbstuff.py
#: sabnzbd/nzbstuff.py # sabnzbd/nzbstuff.py [Warning message]
msgid "Duplicate NZB"
msgstr "Doppelte NZB"
@@ -1214,6 +1230,14 @@ msgstr "Doppelte NZB"
msgid "Pausing duplicate NZB \"%s\""
msgstr "Doppelt vorhandene NZB \"%s\" angehalten"
#: sabnzbd/nzbstuff.py [Warning message]
msgid ""
"%d files with duplicate filenames were discared for \"%s\". Enable "
"\"allow_duplicate_files\" to allow duplicate filenames."
msgstr ""
"%s Dateien mit doppelten Dateinamen wurden für \"%s\" verworfen. Aktiviere "
"\"allow_duplicate_files\" um doppelte Dateinamen zu erlauben."
#: sabnzbd/nzbstuff.py
msgid "Aborted, cannot be completed"
msgstr "Abgebrochen, kann nicht fertiggestellt werden"
@@ -1314,7 +1338,7 @@ msgid "Limit Speed"
msgstr "Geschwindigkeit begrenzen"
#: sabnzbd/osxmenu.py # sabnzbd/sabtray.py # sabnzbd/sabtraylinux.py
#: sabnzbd/skintext.py [#: Config->Scheduler] # sabnzbd/skintext.py [Pause downloading] # sabnzbd/skintext.py [Three way switch for duplicates]
#: sabnzbd/skintext.py [#: Config->Scheduler] # sabnzbd/skintext.py [Pause downloading] # sabnzbd/skintext.py [Four way switch for duplicates]
#: sabnzbd/skintext.py [Config->Scheduling]
msgid "Pause"
msgstr "Anhalten"
@@ -1503,6 +1527,8 @@ msgid ""
"Unable to bind to port %s on %s. Some other software uses the port or "
"SABnzbd is already running."
msgstr ""
"Konnte nicht an Port %s auf %s starten. Eine andere Software nutzt diesen "
"Port oder SABnzbd läuft bereits."
#: sabnzbd/panic.py # sabnzbd/panic.py
msgid "Fatal error"
@@ -1668,6 +1694,22 @@ msgstr "Fehler beim Herunterfahren des Systems"
msgid "Indexer id (%s) not found for ratings file"
msgstr "Indexer ID (%s) für Bewertung nicht gefunden"
#: sabnzbd/rating.py # sabnzbd/skintext.py [Address of Growl server]
msgid "Server address"
msgstr "Server-Adresse"
#: sabnzbd/rating.py # sabnzbd/skintext.py # sabnzbd/skintext.py
msgid "API Key"
msgstr "API-Schlüssel"
#: sabnzbd/rating.py # sabnzbd/skintext.py
msgid ""
"This key provides identity to indexer. Check your profile on the indexer's "
"website."
msgstr ""
"Der Schlüssel liefert die Identität des Indexers. Prüfe dein Profil auf der "
"indexer Webseite."
#: sabnzbd/rss.py [Error message] # sabnzbd/rss.py
msgid "Incorrect RSS feed description \"%s\""
msgstr "Ungültige RSS-Feed-Beschreibung \"%s\""
@@ -1754,10 +1796,6 @@ msgstr "Server"
msgid "Failure"
msgstr "Fehler"
#: sabnzbd/skintext.py [PP status] # sabnzbd/skintext.py [History: job status]
msgid "Completed"
msgstr "Fertiggestellt"
#: sabnzbd/skintext.py [PP status] # sabnzbd/skintext.py
msgid "Failed"
msgstr "Fehlgeschlagen"
@@ -1966,6 +2004,54 @@ 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"
@@ -2594,7 +2680,7 @@ msgstr "7zip aktivieren"
#: sabnzbd/skintext.py
msgid "Multicore Par2"
msgstr ""
msgstr "Multicore Par2"
#: sabnzbd/skintext.py
msgid ""
@@ -2796,6 +2882,38 @@ msgstr ""
"Liste der Dateiendungen, die nach dem Download gelöscht werden sollen.<br "
"/>Zum Beispiel:<b>nfo</b> or <b>nfo,sfv</b>"
#: sabnzbd/skintext.py
msgid "History Retention"
msgstr "Verlaufsgröße"
#: sabnzbd/skintext.py
msgid ""
"Automatically delete completed jobs from History. Beware that Duplicate "
"Detection and some external tools rely on History information."
msgstr ""
"Fertige Aufträge automatisch aus dem Verlauf entfernen. Duplikatserkennung "
"und manche externe Skripte benötigen Informationen aus dem Verlauf."
#: sabnzbd/skintext.py
msgid "Keep all jobs"
msgstr "Alle Aufträge behalten"
#: sabnzbd/skintext.py
msgid "Keep maximum number of completed jobs"
msgstr ""
#: sabnzbd/skintext.py
msgid "Keep completed jobs maximum number of days"
msgstr ""
#: sabnzbd/skintext.py
msgid "Do not keep any completed jobs"
msgstr "Fertige Aufträge nicht behalten"
#: sabnzbd/skintext.py
msgid "Jobs"
msgstr "Aufträge"
#: sabnzbd/skintext.py
msgid "Save Changes"
msgstr "Änderungen speichern"
@@ -2824,10 +2942,6 @@ msgstr ""
"Hilf uns beim Übersetzen von SABnzbd in deiner Sprache! <br/>Neue "
"Übersetzungen hinzufügen oder bestehende verbessern kannst du hier:"
#: sabnzbd/skintext.py # sabnzbd/skintext.py
msgid "API Key"
msgstr "API-Schlüssel"
#: sabnzbd/skintext.py
msgid "This key will give 3rd party programs full access to SABnzbd."
msgstr ""
@@ -3144,14 +3258,18 @@ msgstr ""
"Identische Episoden in den Serien entdeckt (basierend auf "
"\"name/season/episode\") der Einträge in der Historie"
#: sabnzbd/skintext.py [Three way switch for duplicates]
#: sabnzbd/skintext.py [Four way switch for duplicates]
msgid "Discard"
msgstr "Verwerfen"
#: sabnzbd/skintext.py [Three way switch for duplicates]
#: sabnzbd/skintext.py [Four way switch for duplicates]
msgid "Fail job (move to History)"
msgstr "Aufgabe abgebrochen (verschoben in die Historie)"
#: sabnzbd/skintext.py [Four way switch for duplicates]
msgid "Tag job"
msgstr ""
#: sabnzbd/skintext.py [Three way switch for encrypted posts]
msgid "Abort"
msgstr "Abbrechen"
@@ -3205,6 +3323,16 @@ msgstr ""
"Manche Server stellen ein alternatives NZB zur Verfügung, falls ein Download "
"fehlschlägt."
#: 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 "Ordner-Umbenennung aktivieren"
@@ -3257,10 +3385,6 @@ msgid "Automatically sort items by (average) age."
msgstr ""
"Einträge automatisch nach ihrem (durchschnittlichen) Alter sortieren."
#: sabnzbd/skintext.py
msgid "Direct Unpack"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Posts will be paused untill they are at least this age. Setting job priority "
@@ -3451,18 +3575,9 @@ msgstr "Indexer Integration eingeschaltet"
#: sabnzbd/skintext.py
msgid ""
"Indexers can supply rating information when a job is added and SABnzbd can "
"report to the indexer if a job couldn't be completed. Depending on your "
"indexer, the API key setting can be left blank."
"report to the indexer if a job couldn't be completed."
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"This key provides identity to indexer. Check your profile on the indexer's "
"website."
msgstr ""
"Der Schlüssel liefert die Identität des Indexers. Prüfe dein Profil auf der "
"indexer Webseite."
#: sabnzbd/skintext.py
msgid "Enable Filtering"
msgstr "Filter aktivieren"
@@ -3597,7 +3712,7 @@ msgstr "Optional"
#: sabnzbd/skintext.py [Explain server optional tickbox]
msgid "For unreliable servers, will be ignored longer in case of failures"
msgstr ""
msgstr "Für unzuverlässige Server, wird bei Fehlern länger ignoriert"
#: sabnzbd/skintext.py [Enable server tickbox]
msgid "Enable"
@@ -3819,10 +3934,6 @@ msgstr "Growl aktivieren"
msgid "Send notifications to Growl"
msgstr "Benachrichtigungen an Growl senden"
#: sabnzbd/skintext.py [Address of Growl server]
msgid "Server address"
msgstr "Server-Adresse"
#: sabnzbd/skintext.py [Don't translate "Growl"]
msgid "Only use for remote Growl server (host:port)"
msgstr "Nur für entfernten Growl-Server verwenden (Rechnername:Port)"
@@ -4371,6 +4482,10 @@ msgstr "Wird geladen..."
msgid "articles"
msgstr "Artikel"
#: sabnzbd/skintext.py
msgid "Rename"
msgstr "Umbenennen"
#: sabnzbd/skintext.py # sabnzbd/skintext.py
msgid "Queue repair"
msgstr "Reparatur der Warteschlange"
@@ -4874,7 +4989,7 @@ msgstr "Umbenennen der gleichen Datei von %s nach %s fehlgeschlagen."
msgid "Server name does not resolve"
msgstr "Konnte Servernamen nicht auflösen"
#: sabnzbd/urlgrabber.py # sabnzbd/urlgrabber.py
#: sabnzbd/urlgrabber.py
msgid "Unauthorized access"
msgstr "Unerlaubter Zugriff"
@@ -5227,9 +5342,6 @@ msgstr "Abrufen der URL fehlgeschlagen; %s"
#~ msgid "Pause for 24 hours"
#~ msgstr "24 Stunden anhalten"
#~ msgid "Rename"
#~ msgstr "Umbenennen"
#~ msgid "Left"
#~ msgstr "Verbleibend"

View File

@@ -105,3 +105,11 @@ msgstr "Posts will be paused until they are at least this age. Setting job prior
msgid "Support the project, Donate!"
msgstr "Support the project, donate!"
msgid "%d files with duplicate filenames were discared for "%s". Enable "allow_duplicate_files" to allow duplicate filenames."
msgstr "%d files with duplicate filenames were discarded for "%s". Enable "allow_duplicate_files" to allow duplicate filenames."
msgid "User script can flag job as failed"
msgstr "Post-processing script can flag job as failed"
msgid "When the user script returns a non-zero exit code, the job will be flagged as failed."
msgstr "When the post-processing script returns a non-zero exit code, the job will be flagged as failed."

View File

@@ -7,15 +7,15 @@ msgid ""
msgstr ""
"Project-Id-Version: sabnzbd\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2017-07-17 18:42+0000\n"
"POT-Creation-Date: 2017-08-06 09:51+0000\n"
"PO-Revision-Date: 2017-06-22 07:07+0000\n"
"Last-Translator: Safihre <safihre@sabnzbd.org>\n"
"Language-Team: Spanish <es@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2017-07-18 05:27+0000\n"
"X-Generator: Launchpad (build 18419)\n"
"X-Launchpad-Export-Date: 2017-08-07 05:54+0000\n"
"X-Generator: Launchpad (build 18441)\n"
#: SABnzbd.py [Error message]
msgid "Failed to start web-interface"
@@ -105,7 +105,7 @@ msgid "Error"
msgstr "Se ha producido un error"
#: SABnzbd.py # sabnzbd/interface.py # sabnzbd/interface.py
#: sabnzbd/osxmenu.py
#: sabnzbd/osxmenu.py # sabnzbd/wizard.py
msgid "SABnzbd shutdown finished"
msgstr "Cierre de SABnzbd terminado"
@@ -436,11 +436,15 @@ msgstr "UUencode detectada, la única codificación válida es Enc [%s]"
msgid "%s => missing from all servers, discarding"
msgstr "%s => faltando de todos servidores, desechando"
#: sabnzbd/directunpacker.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py
msgid "Unpacking"
msgstr "Descomprimiendo"
#: sabnzbd/directunpacker.py # sabnzbd/directunpacker.py
#: sabnzbd/directunpacker.py # sabnzbd/skintext.py
msgid "Direct Unpack"
msgstr ""
#: sabnzbd/directunpacker.py # sabnzbd/skintext.py [PP status]
#: sabnzbd/skintext.py [History: job status]
msgid "Completed"
msgstr "Completado"
#: sabnzbd/directunpacker.py # sabnzbd/newsunpack.py
msgid "Unpacked %s files/folders in %s"
@@ -654,7 +658,7 @@ msgstr ""
"Faltaron datos de cuenta, favor ingresar usuario/contraseña desde Config-"
">General en tu aplicacion externa:"
#: sabnzbd/interface.py [Warning message]
#: sabnzbd/interface.py [Warning message] # sabnzbd/skintext.py
msgid ""
"Try our new skin Glitter! Fresh new design that is optimized for desktop and "
"mobile devices. Go to Config -> General to change your skin."
@@ -845,6 +849,11 @@ msgstr "Intentado descomprimir rar con contraseña \"%s\""
msgid "Unpacking failed, archive requires a password"
msgstr "Error al descomprimir; El archivo está protegido por contraseña"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
msgid "Unpacking"
msgstr "Descomprimiendo"
#: sabnzbd/newsunpack.py # sabnzbd/skintext.py [PP phase "unpack"]
msgid "Unpack"
msgstr "Descomprimir"
@@ -1011,6 +1020,11 @@ msgstr "Reparando"
msgid "[%s] Repaired in %s"
msgstr "[%s] Reparado en %s"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py
msgid "Verifying repair"
msgstr ""
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/notifier.py [Notification]
msgid "Disk full"
@@ -1018,19 +1032,15 @@ msgstr "Disco lleno"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
msgid "Verifying"
msgstr "Verificando"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/skintext.py [PP status]
#: sabnzbd/newsunpack.py # sabnzbd/skintext.py [PP status]
msgid "Checking"
msgstr "Verificando"
#: sabnzbd/newsunpack.py
msgid "Verifying repair"
msgstr ""
#: sabnzbd/newsunpack.py [Error message]
msgid "Python script \"%s\" does not have execute (+x) permission set"
msgstr ""
@@ -1090,7 +1100,7 @@ msgid "Not available"
msgstr "No disponible"
#: sabnzbd/notifier.py # sabnzbd/notifier.py # sabnzbd/notifier.py
#: sabnzbd/notifier.py
#: sabnzbd/notifier.py # sabnzbd/rating.py # sabnzbd/rating.py
msgid "Cannot send, missing required data"
msgstr "No se ha podido enviar, faltan datos"
@@ -1185,7 +1195,7 @@ msgstr "Ignorando NZB Duplicado \"%s\""
msgid "Failing duplicate NZB \"%s\""
msgstr ""
#: sabnzbd/nzbstuff.py
#: sabnzbd/nzbstuff.py # sabnzbd/nzbstuff.py [Warning message]
msgid "Duplicate NZB"
msgstr ""
@@ -1193,6 +1203,12 @@ msgstr ""
msgid "Pausing duplicate NZB \"%s\""
msgstr "Pausando NZB duplicados \"%s\""
#: sabnzbd/nzbstuff.py [Warning message]
msgid ""
"%d files with duplicate filenames were discared for \"%s\". Enable "
"\"allow_duplicate_files\" to allow duplicate filenames."
msgstr ""
#: sabnzbd/nzbstuff.py
msgid "Aborted, cannot be completed"
msgstr "Abortado, No puede ser completado"
@@ -1292,7 +1308,7 @@ msgid "Limit Speed"
msgstr "Limitar Velocidad"
#: sabnzbd/osxmenu.py # sabnzbd/sabtray.py # sabnzbd/sabtraylinux.py
#: sabnzbd/skintext.py [#: Config->Scheduler] # sabnzbd/skintext.py [Pause downloading] # sabnzbd/skintext.py [Three way switch for duplicates]
#: sabnzbd/skintext.py [#: Config->Scheduler] # sabnzbd/skintext.py [Pause downloading] # sabnzbd/skintext.py [Four way switch for duplicates]
#: sabnzbd/skintext.py [Config->Scheduling]
msgid "Pause"
msgstr "Pausar"
@@ -1642,6 +1658,20 @@ msgstr ""
"Identificación del indexador (%s) no encontrado para archivo de "
"calificaciones"
#: sabnzbd/rating.py # sabnzbd/skintext.py [Address of Growl server]
msgid "Server address"
msgstr "Dirección del Servidor"
#: sabnzbd/rating.py # sabnzbd/skintext.py # sabnzbd/skintext.py
msgid "API Key"
msgstr "Clave API"
#: sabnzbd/rating.py # sabnzbd/skintext.py
msgid ""
"This key provides identity to indexer. Check your profile on the indexer's "
"website."
msgstr ""
#: sabnzbd/rss.py [Error message] # sabnzbd/rss.py
msgid "Incorrect RSS feed description \"%s\""
msgstr "iaDescripción de canal RSS incorrecta \"%s\""
@@ -1730,10 +1760,6 @@ msgstr "Servidores"
msgid "Failure"
msgstr "Fallo"
#: sabnzbd/skintext.py [PP status] # sabnzbd/skintext.py [History: job status]
msgid "Completed"
msgstr "Completado"
#: sabnzbd/skintext.py [PP status] # sabnzbd/skintext.py
msgid "Failed"
msgstr "Fallido"
@@ -1942,6 +1968,54 @@ msgstr "Mes"
msgid "Year"
msgstr "Año"
#: 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 "Día del mes"
@@ -2761,6 +2835,36 @@ msgstr ""
"Lista de extensiones de archivo que se deben eliminar después de la descarga "
"<br /> Por ejemplo : . <b>nfo</ b> o <b>nfo, sfv < /b>"
#: sabnzbd/skintext.py
msgid "History Retention"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Automatically delete completed jobs from History. Beware that Duplicate "
"Detection and some external tools rely on History information."
msgstr ""
#: sabnzbd/skintext.py
msgid "Keep all jobs"
msgstr ""
#: sabnzbd/skintext.py
msgid "Keep maximum number of completed jobs"
msgstr ""
#: sabnzbd/skintext.py
msgid "Keep completed jobs maximum number of days"
msgstr ""
#: sabnzbd/skintext.py
msgid "Do not keep any completed jobs"
msgstr ""
#: sabnzbd/skintext.py
msgid "Jobs"
msgstr ""
#: sabnzbd/skintext.py
msgid "Save Changes"
msgstr "Guardar cambios"
@@ -2789,10 +2893,6 @@ msgstr ""
"¡Ayúdanos a traducir SABnzbd en tu idioma!<br/>Traduce textos que aun no "
"tienen ninguna traducción o mejora los que ya lo están traducidos aquí:"
#: sabnzbd/skintext.py # sabnzbd/skintext.py
msgid "API Key"
msgstr "Clave API"
#: sabnzbd/skintext.py
msgid "This key will give 3rd party programs full access to SABnzbd."
msgstr ""
@@ -3098,14 +3198,18 @@ msgid ""
"items in your History)"
msgstr ""
#: sabnzbd/skintext.py [Three way switch for duplicates]
#: sabnzbd/skintext.py [Four way switch for duplicates]
msgid "Discard"
msgstr "Descartar"
#: sabnzbd/skintext.py [Three way switch for duplicates]
#: sabnzbd/skintext.py [Four way switch for duplicates]
msgid "Fail job (move to History)"
msgstr ""
#: sabnzbd/skintext.py [Four way switch for duplicates]
msgid "Tag job"
msgstr ""
#: sabnzbd/skintext.py [Three way switch for encrypted posts]
msgid "Abort"
msgstr "Abortar"
@@ -3158,6 +3262,16 @@ 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 ""
#: 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 renombrado de directorios"
@@ -3207,10 +3321,6 @@ msgstr "Ordenar por antigüedad"
msgid "Automatically sort items by (average) age."
msgstr "Automáticamente ordenar elementos por antigüedad (promedio)."
#: sabnzbd/skintext.py
msgid "Direct Unpack"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Posts will be paused untill they are at least this age. Setting job priority "
@@ -3397,14 +3507,7 @@ msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Indexers can supply rating information when a job is added and SABnzbd can "
"report to the indexer if a job couldn't be completed. Depending on your "
"indexer, the API key setting can be left blank."
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"This key provides identity to indexer. Check your profile on the indexer's "
"website."
"report to the indexer if a job couldn't be completed."
msgstr ""
#: sabnzbd/skintext.py
@@ -3763,10 +3866,6 @@ msgstr "Habilitar Growl"
msgid "Send notifications to Growl"
msgstr "Enviar notificaciones a Growl"
#: sabnzbd/skintext.py [Address of Growl server]
msgid "Server address"
msgstr "Dirección del Servidor"
#: sabnzbd/skintext.py [Don't translate "Growl"]
msgid "Only use for remote Growl server (host:port)"
msgstr "Usar sólo para un servidor Growl remoto (servidor:puerto)"
@@ -4315,6 +4414,10 @@ msgstr "Cargando"
msgid "articles"
msgstr "artículos"
#: sabnzbd/skintext.py
msgid "Rename"
msgstr "Renombrar"
#: sabnzbd/skintext.py # sabnzbd/skintext.py
msgid "Queue repair"
msgstr "Reparar cola"
@@ -4817,7 +4920,7 @@ msgstr "Error al renombrar ficheros similares: %s a %s"
msgid "Server name does not resolve"
msgstr "No se puede resolver el nombre de servidor"
#: sabnzbd/urlgrabber.py # sabnzbd/urlgrabber.py
#: sabnzbd/urlgrabber.py
msgid "Unauthorized access"
msgstr "Acceso no autorizado"
@@ -5111,9 +5214,6 @@ msgstr "Error al recuperar la URL; %s"
#~ msgid "Storage"
#~ msgstr "Almacenamiento"
#~ msgid "Rename"
#~ msgstr "Renombrar"
#~ msgid "Access"
#~ msgstr "Acceso"

View File

@@ -7,15 +7,15 @@ msgid ""
msgstr ""
"Project-Id-Version: sabnzbd\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2017-07-17 18:42+0000\n"
"POT-Creation-Date: 2017-08-06 09:51+0000\n"
"PO-Revision-Date: 2017-06-22 07:07+0000\n"
"Last-Translator: Safihre <safihre@sabnzbd.org>\n"
"Language-Team: Finnish <fi@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2017-07-18 05:26+0000\n"
"X-Generator: Launchpad (build 18419)\n"
"X-Launchpad-Export-Date: 2017-08-07 05:53+0000\n"
"X-Generator: Launchpad (build 18441)\n"
#: SABnzbd.py [Error message]
msgid "Failed to start web-interface"
@@ -107,7 +107,7 @@ msgid "Error"
msgstr "Virhe"
#: SABnzbd.py # sabnzbd/interface.py # sabnzbd/interface.py
#: sabnzbd/osxmenu.py
#: sabnzbd/osxmenu.py # sabnzbd/wizard.py
msgid "SABnzbd shutdown finished"
msgstr "SABnzbd sammutus valmis"
@@ -435,11 +435,15 @@ msgstr "UUencode-koodaus havaittiin, vain yEnc-koodausta tuetaan [%s]"
msgid "%s => missing from all servers, discarding"
msgstr "%s => puuttuu kaikilta palvelimilta, hylätään"
#: sabnzbd/directunpacker.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py
msgid "Unpacking"
msgstr "Puretaan"
#: sabnzbd/directunpacker.py # sabnzbd/directunpacker.py
#: sabnzbd/directunpacker.py # sabnzbd/skintext.py
msgid "Direct Unpack"
msgstr ""
#: sabnzbd/directunpacker.py # sabnzbd/skintext.py [PP status]
#: sabnzbd/skintext.py [History: job status]
msgid "Completed"
msgstr "Valmistunut"
#: sabnzbd/directunpacker.py # sabnzbd/newsunpack.py
msgid "Unpacked %s files/folders in %s"
@@ -651,7 +655,7 @@ msgstr ""
"Authentikointi puuttuu, ole hyvä ja syötä käyttäjänimi/salasana Asetukset-"
">Yleiset kolmannen osapuolen ohjelmaasi:"
#: sabnzbd/interface.py [Warning message]
#: sabnzbd/interface.py [Warning message] # sabnzbd/skintext.py
msgid ""
"Try our new skin Glitter! Fresh new design that is optimized for desktop and "
"mobile devices. Go to Config -> General to change your skin."
@@ -840,6 +844,11 @@ msgstr "Yritetään purkaa rar arkistoa salasanalla \"%s\""
msgid "Unpacking failed, archive requires a password"
msgstr "Purkaminen epäonnistui, arkisto vaatii salasanan"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
msgid "Unpacking"
msgstr "Puretaan"
#: sabnzbd/newsunpack.py # sabnzbd/skintext.py [PP phase "unpack"]
msgid "Unpack"
msgstr "Pura"
@@ -1001,6 +1010,11 @@ msgstr "Korjataan"
msgid "[%s] Repaired in %s"
msgstr "[%s] Korjattiin ajassa %s"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py
msgid "Verifying repair"
msgstr ""
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/notifier.py [Notification]
msgid "Disk full"
@@ -1008,19 +1022,15 @@ msgstr "Levy täynnä"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
msgid "Verifying"
msgstr "Varmennetaan"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/skintext.py [PP status]
#: sabnzbd/newsunpack.py # sabnzbd/skintext.py [PP status]
msgid "Checking"
msgstr "Tarkistetaan"
#: sabnzbd/newsunpack.py
msgid "Verifying repair"
msgstr ""
#: sabnzbd/newsunpack.py [Error message]
msgid "Python script \"%s\" does not have execute (+x) permission set"
msgstr ""
@@ -1080,7 +1090,7 @@ msgid "Not available"
msgstr "Ei saatavilla"
#: sabnzbd/notifier.py # sabnzbd/notifier.py # sabnzbd/notifier.py
#: sabnzbd/notifier.py
#: sabnzbd/notifier.py # sabnzbd/rating.py # sabnzbd/rating.py
msgid "Cannot send, missing required data"
msgstr "Ei voida lähettää, vaaditut tiedot ovat puutteelliset"
@@ -1174,7 +1184,7 @@ msgstr "Ohitetaan kaksoiskappale NZB \"%s\""
msgid "Failing duplicate NZB \"%s\""
msgstr ""
#: sabnzbd/nzbstuff.py
#: sabnzbd/nzbstuff.py # sabnzbd/nzbstuff.py [Warning message]
msgid "Duplicate NZB"
msgstr ""
@@ -1182,6 +1192,12 @@ msgstr ""
msgid "Pausing duplicate NZB \"%s\""
msgstr "Keskeytetään kaksoiskappale NZB \"%s\""
#: sabnzbd/nzbstuff.py [Warning message]
msgid ""
"%d files with duplicate filenames were discared for \"%s\". Enable "
"\"allow_duplicate_files\" to allow duplicate filenames."
msgstr ""
#: sabnzbd/nzbstuff.py
msgid "Aborted, cannot be completed"
msgstr "Peruutettu, ei voi valmistua"
@@ -1281,7 +1297,7 @@ msgid "Limit Speed"
msgstr "Nopeusrajoitus"
#: sabnzbd/osxmenu.py # sabnzbd/sabtray.py # sabnzbd/sabtraylinux.py
#: sabnzbd/skintext.py [#: Config->Scheduler] # sabnzbd/skintext.py [Pause downloading] # sabnzbd/skintext.py [Three way switch for duplicates]
#: sabnzbd/skintext.py [#: Config->Scheduler] # sabnzbd/skintext.py [Pause downloading] # sabnzbd/skintext.py [Four way switch for duplicates]
#: sabnzbd/skintext.py [Config->Scheduling]
msgid "Pause"
msgstr "Keskeytä"
@@ -1627,6 +1643,20 @@ msgstr "Virhe sammutettaessa järjestelmää"
msgid "Indexer id (%s) not found for ratings file"
msgstr "Indeksoijan id:tä (%s) ei löydetty arviointitiedostolle"
#: sabnzbd/rating.py # sabnzbd/skintext.py [Address of Growl server]
msgid "Server address"
msgstr "Palvelimen osoite"
#: sabnzbd/rating.py # sabnzbd/skintext.py # sabnzbd/skintext.py
msgid "API Key"
msgstr "API avain"
#: sabnzbd/rating.py # sabnzbd/skintext.py
msgid ""
"This key provides identity to indexer. Check your profile on the indexer's "
"website."
msgstr ""
#: sabnzbd/rss.py [Error message] # sabnzbd/rss.py
msgid "Incorrect RSS feed description \"%s\""
msgstr "Virheellinen RSS syötteen kuvaus \"%s\""
@@ -1713,10 +1743,6 @@ msgstr "Palvelimet"
msgid "Failure"
msgstr "Epäonnistui"
#: sabnzbd/skintext.py [PP status] # sabnzbd/skintext.py [History: job status]
msgid "Completed"
msgstr "Valmistunut"
#: sabnzbd/skintext.py [PP status] # sabnzbd/skintext.py
msgid "Failed"
msgstr "Epäonnistunut"
@@ -1925,6 +1951,54 @@ 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ä"
@@ -2751,6 +2825,36 @@ msgstr ""
"Lista tiedostopäätteistä jotka poistetaan latauksen valmistuttua.<br "
"/>Esimerkiksi: <b>nfo</b> tai <b>nfo, sfv</b>"
#: sabnzbd/skintext.py
msgid "History Retention"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Automatically delete completed jobs from History. Beware that Duplicate "
"Detection and some external tools rely on History information."
msgstr ""
#: sabnzbd/skintext.py
msgid "Keep all jobs"
msgstr ""
#: sabnzbd/skintext.py
msgid "Keep maximum number of completed jobs"
msgstr ""
#: sabnzbd/skintext.py
msgid "Keep completed jobs maximum number of days"
msgstr ""
#: sabnzbd/skintext.py
msgid "Do not keep any completed jobs"
msgstr ""
#: sabnzbd/skintext.py
msgid "Jobs"
msgstr ""
#: sabnzbd/skintext.py
msgid "Save Changes"
msgstr "Tallenna muutokset"
@@ -2779,10 +2883,6 @@ msgstr ""
"Auta meitä kääntämään SABnzbd sinun kielellesi!<br/>Käännä tai muokkaa "
"olemassaolevia käännöksiä täällä:"
#: sabnzbd/skintext.py # sabnzbd/skintext.py
msgid "API Key"
msgstr "API avain"
#: sabnzbd/skintext.py
msgid "This key will give 3rd party programs full access to SABnzbd."
msgstr ""
@@ -3091,14 +3191,18 @@ msgid ""
"items in your History)"
msgstr ""
#: sabnzbd/skintext.py [Three way switch for duplicates]
#: sabnzbd/skintext.py [Four way switch for duplicates]
msgid "Discard"
msgstr "Hylkää"
#: sabnzbd/skintext.py [Three way switch for duplicates]
#: sabnzbd/skintext.py [Four way switch for duplicates]
msgid "Fail job (move to History)"
msgstr ""
#: sabnzbd/skintext.py [Four way switch for duplicates]
msgid "Tag job"
msgstr ""
#: sabnzbd/skintext.py [Three way switch for encrypted posts]
msgid "Abort"
msgstr "Peruuta"
@@ -3151,6 +3255,16 @@ 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ä"
@@ -3201,10 +3315,6 @@ msgstr "Järjestä iän mukaan"
msgid "Automatically sort items by (average) age."
msgstr "Järjestelee kohteet (keskimääräisen) iän mukaan."
#: sabnzbd/skintext.py
msgid "Direct Unpack"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Posts will be paused untill they are at least this age. Setting job priority "
@@ -3385,14 +3495,7 @@ msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Indexers can supply rating information when a job is added and SABnzbd can "
"report to the indexer if a job couldn't be completed. Depending on your "
"indexer, the API key setting can be left blank."
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"This key provides identity to indexer. Check your profile on the indexer's "
"website."
"report to the indexer if a job couldn't be completed."
msgstr ""
#: sabnzbd/skintext.py
@@ -3748,10 +3851,6 @@ msgstr "Growl käytössä"
msgid "Send notifications to Growl"
msgstr "Lähetä ilmoitukset Growliin"
#: sabnzbd/skintext.py [Address of Growl server]
msgid "Server address"
msgstr "Palvelimen osoite"
#: sabnzbd/skintext.py [Don't translate "Growl"]
msgid "Only use for remote Growl server (host:port)"
msgstr "Käytä vain Growl etäpalvelimelle (isäntä:portti)"
@@ -4306,6 +4405,10 @@ msgstr "Ladataan"
msgid "articles"
msgstr "artikkeleita"
#: sabnzbd/skintext.py
msgid "Rename"
msgstr "Uudelleennimeä"
#: sabnzbd/skintext.py # sabnzbd/skintext.py
msgid "Queue repair"
msgstr "Jonon korjaus"
@@ -4808,7 +4911,7 @@ msgstr "Samankaltaisen tiedoston uudelleennimeäminen epäonnistui: %s %s"
msgid "Server name does not resolve"
msgstr "Palvelimen osoitetta ei voitu selvittää"
#: sabnzbd/urlgrabber.py # sabnzbd/urlgrabber.py
#: sabnzbd/urlgrabber.py
msgid "Unauthorized access"
msgstr "Luvaton käyttö"
@@ -5222,9 +5325,6 @@ msgstr "Osoitteen nouto epäonnistui; %s"
#~ msgid "Left"
#~ msgstr "Jäljellä"
#~ msgid "Rename"
#~ msgstr "Uudelleennimeä"
#~ msgid "Pause for 12 hours"
#~ msgstr "Keskeytä 12:ksi tunniksi"

View File

@@ -7,15 +7,15 @@ msgid ""
msgstr ""
"Project-Id-Version: sabnzbd\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2017-07-17 18:42+0000\n"
"PO-Revision-Date: 2017-07-17 19:05+0000\n"
"POT-Creation-Date: 2017-08-06 09:51+0000\n"
"PO-Revision-Date: 2017-08-07 18:53+0000\n"
"Last-Translator: Fred <88com88@gmail.com>\n"
"Language-Team: French <fr@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2017-07-18 05:26+0000\n"
"X-Generator: Launchpad (build 18419)\n"
"X-Launchpad-Export-Date: 2017-08-08 05:33+0000\n"
"X-Generator: Launchpad (build 18446)\n"
#: SABnzbd.py [Error message]
msgid "Failed to start web-interface"
@@ -111,7 +111,7 @@ msgid "Error"
msgstr "Erreur"
#: SABnzbd.py # sabnzbd/interface.py # sabnzbd/interface.py
#: sabnzbd/osxmenu.py
#: sabnzbd/osxmenu.py # sabnzbd/wizard.py
msgid "SABnzbd shutdown finished"
msgstr "Arrêt de SABnzbd terminé"
@@ -456,11 +456,15 @@ msgstr "UUencode détecté, seul l'encodage yEnc est compatible [%s]"
msgid "%s => missing from all servers, discarding"
msgstr "%s => absent de tous les serveurs, rejeté"
#: sabnzbd/directunpacker.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py
msgid "Unpacking"
msgstr "Extraction"
#: sabnzbd/directunpacker.py # sabnzbd/directunpacker.py
#: sabnzbd/directunpacker.py # sabnzbd/skintext.py
msgid "Direct Unpack"
msgstr "Décompression Directe"
#: sabnzbd/directunpacker.py # sabnzbd/skintext.py [PP status]
#: sabnzbd/skintext.py [History: job status]
msgid "Completed"
msgstr "Terminé"
#: sabnzbd/directunpacker.py # sabnzbd/newsunpack.py
msgid "Unpacked %s files/folders in %s"
@@ -680,7 +684,7 @@ msgstr ""
"Authentification manquante, entrez vos identifiant/mot de passe de la "
"configuration générale dans votre application tierce :"
#: sabnzbd/interface.py [Warning message]
#: sabnzbd/interface.py [Warning message] # sabnzbd/skintext.py
msgid ""
"Try our new skin Glitter! Fresh new design that is optimized for desktop and "
"mobile devices. Go to Config -> General to change your skin."
@@ -870,6 +874,11 @@ msgstr "Tentative d'extraction avec le mot de passe \"%s\""
msgid "Unpacking failed, archive requires a password"
msgstr "Échec de l'extraction, l'archive nécessite un mot de passe"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
msgid "Unpacking"
msgstr "Extraction"
#: sabnzbd/newsunpack.py # sabnzbd/skintext.py [PP phase "unpack"]
msgid "Unpack"
msgstr "Décompresser"
@@ -1039,6 +1048,11 @@ msgstr "Réparation en cours"
msgid "[%s] Repaired in %s"
msgstr "[%s] Réparé(s) dans %s"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py
msgid "Verifying repair"
msgstr "Vérification de la réparation"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/notifier.py [Notification]
msgid "Disk full"
@@ -1046,19 +1060,15 @@ msgstr "Disque plein"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
msgid "Verifying"
msgstr "Vérification en cours"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/skintext.py [PP status]
#: sabnzbd/newsunpack.py # sabnzbd/skintext.py [PP status]
msgid "Checking"
msgstr "Vérification"
#: sabnzbd/newsunpack.py
msgid "Verifying repair"
msgstr "Vérification de la réparation"
#: sabnzbd/newsunpack.py [Error message]
msgid "Python script \"%s\" does not have execute (+x) permission set"
msgstr ""
@@ -1123,7 +1133,7 @@ msgid "Not available"
msgstr "Non disponible"
#: sabnzbd/notifier.py # sabnzbd/notifier.py # sabnzbd/notifier.py
#: sabnzbd/notifier.py
#: sabnzbd/notifier.py # sabnzbd/rating.py # sabnzbd/rating.py
msgid "Cannot send, missing required data"
msgstr "Impossible d'envoyer, données requises manquantes"
@@ -1217,7 +1227,7 @@ msgstr "Doublon NZB ignoré \"%s\""
msgid "Failing duplicate NZB \"%s\""
msgstr "Échec de duplication du NZB \"%s\""
#: sabnzbd/nzbstuff.py
#: sabnzbd/nzbstuff.py # sabnzbd/nzbstuff.py [Warning message]
msgid "Duplicate NZB"
msgstr "Dupliquer NZB"
@@ -1225,6 +1235,14 @@ msgstr "Dupliquer NZB"
msgid "Pausing duplicate NZB \"%s\""
msgstr "Mise en pause du doublon NZB \"%s\""
#: sabnzbd/nzbstuff.py [Warning message]
msgid ""
"%d files with duplicate filenames were discared for \"%s\". Enable "
"\"allow_duplicate_files\" to allow duplicate filenames."
msgstr ""
"%d fichiers avec des noms en double ont été rejetés pour \"%s\". Cochez "
"\"allow_duplicate_files\" pour autoriser les noms de fichiers en double."
#: sabnzbd/nzbstuff.py
msgid "Aborted, cannot be completed"
msgstr "Interrompu, ne peut être achevé"
@@ -1324,7 +1342,7 @@ msgid "Limit Speed"
msgstr "Limiter la vitesse"
#: sabnzbd/osxmenu.py # sabnzbd/sabtray.py # sabnzbd/sabtraylinux.py
#: sabnzbd/skintext.py [#: Config->Scheduler] # sabnzbd/skintext.py [Pause downloading] # sabnzbd/skintext.py [Three way switch for duplicates]
#: sabnzbd/skintext.py [#: Config->Scheduler] # sabnzbd/skintext.py [Pause downloading] # sabnzbd/skintext.py [Four way switch for duplicates]
#: sabnzbd/skintext.py [Config->Scheduling]
msgid "Pause"
msgstr "Mettre en pause"
@@ -1681,6 +1699,22 @@ msgstr "Erreur lors de l'arrêt du système"
msgid "Indexer id (%s) not found for ratings file"
msgstr "id de l'Indexer (%s) non trouvé pour le fichier des classements"
#: sabnzbd/rating.py # sabnzbd/skintext.py [Address of Growl server]
msgid "Server address"
msgstr "Adresse du serveur"
#: sabnzbd/rating.py # sabnzbd/skintext.py # sabnzbd/skintext.py
msgid "API Key"
msgstr "Clé API"
#: sabnzbd/rating.py # sabnzbd/skintext.py
msgid ""
"This key provides identity to indexer. Check your profile on the indexer's "
"website."
msgstr ""
"Cette clé fournit l'identité à l'indexeur. Vérifiez votre profil sur le site "
"web de l'indexeur."
#: sabnzbd/rss.py [Error message] # sabnzbd/rss.py
msgid "Incorrect RSS feed description \"%s\""
msgstr "Description du flux RSS incorrecte \"%s\""
@@ -1769,10 +1803,6 @@ msgstr "Serveurs"
msgid "Failure"
msgstr "Échec"
#: sabnzbd/skintext.py [PP status] # sabnzbd/skintext.py [History: job status]
msgid "Completed"
msgstr "Terminé"
#: sabnzbd/skintext.py [PP status] # sabnzbd/skintext.py
msgid "Failed"
msgstr "Échoué"
@@ -1981,6 +2011,54 @@ 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"
@@ -2812,6 +2890,39 @@ msgstr ""
"Liste des extensions de fichiers qui doivent être supprimés après le "
"téléchargement.<br /><Par exemple: <b>nfo</b> ou <b>nfo, sfv</b>"
#: sabnzbd/skintext.py
msgid "History Retention"
msgstr "Conservation de l'historique"
#: sabnzbd/skintext.py
msgid ""
"Automatically delete completed jobs from History. Beware that Duplicate "
"Detection and some external tools rely on History information."
msgstr ""
"Supprimer automatiquement les tâches terminées de l'historique. Attention, "
"la Détection des Doublons et certains outils externes s'appuient sur les "
"informations de l'historique."
#: sabnzbd/skintext.py
msgid "Keep all jobs"
msgstr "Conserver toutes les tâches"
#: sabnzbd/skintext.py
msgid "Keep maximum number of completed jobs"
msgstr "Nombre maximum de tâches complétées historisées"
#: sabnzbd/skintext.py
msgid "Keep completed jobs maximum number of days"
msgstr "Durée maximale d'historisation des tâches complétées"
#: sabnzbd/skintext.py
msgid "Do not keep any completed jobs"
msgstr "Ne conserver aucune tâche terminée"
#: sabnzbd/skintext.py
msgid "Jobs"
msgstr "Tâches"
#: sabnzbd/skintext.py
msgid "Save Changes"
msgstr "Enregistrer les modifications"
@@ -2840,10 +2951,6 @@ msgstr ""
"Aidez-nous à traduire SABnzbd dans votre langue ! <br/>Améliorez les "
"traductions existantes ou ajoutez celles qui manquent ici :"
#: sabnzbd/skintext.py # sabnzbd/skintext.py
msgid "API Key"
msgstr "Clé API"
#: sabnzbd/skintext.py
msgid "This key will give 3rd party programs full access to SABnzbd."
msgstr ""
@@ -3161,14 +3268,18 @@ msgstr ""
"Détecter les épisodes de série identiques (en fonction du modèle "
"\"nom/saison/épisode\" des éléments de votre historique)"
#: sabnzbd/skintext.py [Three way switch for duplicates]
#: sabnzbd/skintext.py [Four way switch for duplicates]
msgid "Discard"
msgstr "Rejeter"
#: sabnzbd/skintext.py [Three way switch for duplicates]
#: sabnzbd/skintext.py [Four way switch for duplicates]
msgid "Fail job (move to History)"
msgstr "Faire échouer la tâche (déplacer vers l'historique)"
#: sabnzbd/skintext.py [Four way switch for duplicates]
msgid "Tag job"
msgstr "Taguer la tâche"
#: sabnzbd/skintext.py [Three way switch for encrypted posts]
msgid "Abort"
msgstr "Annuler"
@@ -3223,6 +3334,19 @@ 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"
@@ -3273,10 +3397,6 @@ msgstr "Trier par âge"
msgid "Automatically sort items by (average) age."
msgstr "Trier automatiquement les fichiers par âge (moyen)."
#: sabnzbd/skintext.py
msgid "Direct Unpack"
msgstr "Décompression Directe"
#: sabnzbd/skintext.py
msgid ""
"Posts will be paused untill they are at least this age. Setting job priority "
@@ -3465,21 +3585,11 @@ msgstr "Activer l'intégration de l'indexeur"
#: sabnzbd/skintext.py
msgid ""
"Indexers can supply rating information when a job is added and SABnzbd can "
"report to the indexer if a job couldn't be completed. Depending on your "
"indexer, the API key setting can be left blank."
"report to the indexer if a job couldn't be completed."
msgstr ""
"Les indexeurs peuvent fournir des informations de notation lorsqu'une tâche "
"est ajoutée, et SABnzbd peut signaler à l'indexeur si une tâche n'a pu être "
"terminée. Le paramètre de clé API peut être laissé vide en fonction de votre "
"indexeur."
#: sabnzbd/skintext.py
msgid ""
"This key provides identity to indexer. Check your profile on the indexer's "
"website."
msgstr ""
"Cette clé fournit l'identité à l'indexeur. Vérifiez votre profil sur le site "
"web de l'indexeur."
"est ajoutée, et SABnzbd peut signaler à l'indexeur si une tâche n'a pas pu "
"être terminée."
#: sabnzbd/skintext.py
msgid "Enable Filtering"
@@ -3841,10 +3951,6 @@ msgstr "Activer Growl"
msgid "Send notifications to Growl"
msgstr "Envoie les notifications à Growl"
#: sabnzbd/skintext.py [Address of Growl server]
msgid "Server address"
msgstr "Adresse du serveur"
#: sabnzbd/skintext.py [Don't translate "Growl"]
msgid "Only use for remote Growl server (host:port)"
msgstr "Utiliser seulement pour le serveur Growl à distance (hôte:port)"
@@ -4401,6 +4507,10 @@ msgstr "Chargement"
msgid "articles"
msgstr "articles"
#: sabnzbd/skintext.py
msgid "Rename"
msgstr "Renommer"
#: sabnzbd/skintext.py # sabnzbd/skintext.py
msgid "Queue repair"
msgstr "Réparer la file d'attente"
@@ -4906,7 +5016,7 @@ msgstr "Impossible de renommer le fichier similaire : %s en %s"
msgid "Server name does not resolve"
msgstr "Resolution du nom de serveur impossible"
#: sabnzbd/urlgrabber.py # sabnzbd/urlgrabber.py
#: sabnzbd/urlgrabber.py
msgid "Unauthorized access"
msgstr "Accès non autorisé"
@@ -5089,9 +5199,6 @@ msgstr "Échec de récupération de l'URL ; %s"
#~ msgid "Pause for 24 hours"
#~ msgstr "Pause pour 24 heures"
#~ msgid "Rename"
#~ msgstr "Renommer"
#~ msgid "Open Source URL"
#~ msgstr "Ouvrir URL Source"

View File

@@ -7,15 +7,15 @@ msgid ""
msgstr ""
"Project-Id-Version: sabnzbd\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2017-07-17 18:42+0000\n"
"PO-Revision-Date: 2017-07-18 20:20+0000\n"
"POT-Creation-Date: 2017-08-06 09:51+0000\n"
"PO-Revision-Date: 2017-08-06 21:05+0000\n"
"Last-Translator: ION IL <Unknown>\n"
"Language-Team: Hebrew <he@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2017-07-19 05:49+0000\n"
"X-Generator: Launchpad (build 18419)\n"
"X-Launchpad-Export-Date: 2017-08-07 05:53+0000\n"
"X-Generator: Launchpad (build 18441)\n"
#: SABnzbd.py [Error message]
msgid "Failed to start web-interface"
@@ -102,7 +102,7 @@ msgid "Error"
msgstr "שגיאה"
#: SABnzbd.py # sabnzbd/interface.py # sabnzbd/interface.py
#: sabnzbd/osxmenu.py
#: sabnzbd/osxmenu.py # sabnzbd/wizard.py
msgid "SABnzbd shutdown finished"
msgstr "הסתיים SABnzbd כיבוי"
@@ -429,11 +429,15 @@ msgstr "[%s] נתמכת yEnc התגלה, רק הצפנת UUencode"
msgid "%s => missing from all servers, discarding"
msgstr "חסר מכל השרתים, משליך <= %s"
#: sabnzbd/directunpacker.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py
msgid "Unpacking"
msgstr "פורק"
#: sabnzbd/directunpacker.py # sabnzbd/directunpacker.py
#: sabnzbd/directunpacker.py # sabnzbd/skintext.py
msgid "Direct Unpack"
msgstr "פריקה ישירה"
#: sabnzbd/directunpacker.py # sabnzbd/skintext.py [PP status]
#: sabnzbd/skintext.py [History: job status]
msgid "Completed"
msgstr "הושלם"
#: sabnzbd/directunpacker.py # sabnzbd/newsunpack.py
msgid "Unpacked %s files/folders in %s"
@@ -644,7 +648,7 @@ msgstr ""
":אימות חסר, אנא הכנס שם משתמש/סיסמה מתוך תצורה->כללי לתוך תכנית הצד השלישי "
"שלך"
#: sabnzbd/interface.py [Warning message]
#: sabnzbd/interface.py [Warning message] # sabnzbd/skintext.py
msgid ""
"Try our new skin Glitter! Fresh new design that is optimized for desktop and "
"mobile devices. Go to Config -> General to change your skin."
@@ -832,6 +836,11 @@ msgstr "\"%s\" מנסה לחלץ עם הסיסמה"
msgid "Unpacking failed, archive requires a password"
msgstr "פריקה נכשלה, ארכיון דורש סיסמה"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
msgid "Unpacking"
msgstr "פורק"
#: sabnzbd/newsunpack.py # sabnzbd/skintext.py [PP phase "unpack"]
msgid "Unpack"
msgstr "פרוק"
@@ -991,6 +1000,11 @@ msgstr "מתקן"
msgid "[%s] Repaired in %s"
msgstr "%s-תוקן ב [%s]"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py
msgid "Verifying repair"
msgstr "מוודא תיקון"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/notifier.py [Notification]
msgid "Disk full"
@@ -998,19 +1012,15 @@ msgstr "דיסק מלא"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
msgid "Verifying"
msgstr "מוודא"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/skintext.py [PP status]
#: sabnzbd/newsunpack.py # sabnzbd/skintext.py [PP status]
msgid "Checking"
msgstr "בודק"
#: sabnzbd/newsunpack.py
msgid "Verifying repair"
msgstr "מוודא תיקון"
#: sabnzbd/newsunpack.py [Error message]
msgid "Python script \"%s\" does not have execute (+x) permission set"
msgstr "(+x) אין ערכת הרשאות ביצוע \"%s\" לתסריט פייתון"
@@ -1072,7 +1082,7 @@ msgid "Not available"
msgstr "לא זמין"
#: sabnzbd/notifier.py # sabnzbd/notifier.py # sabnzbd/notifier.py
#: sabnzbd/notifier.py
#: sabnzbd/notifier.py # sabnzbd/rating.py # sabnzbd/rating.py
msgid "Cannot send, missing required data"
msgstr "לא ניתן לשלוח, נתונים דרושים חסרים"
@@ -1164,7 +1174,7 @@ msgstr "\"%s\" כפול NZB-מתעלם מ"
msgid "Failing duplicate NZB \"%s\""
msgstr "\"%s\" NZB נכשל בשכפול"
#: sabnzbd/nzbstuff.py
#: sabnzbd/nzbstuff.py # sabnzbd/nzbstuff.py [Warning message]
msgid "Duplicate NZB"
msgstr "NZB שכפל"
@@ -1172,6 +1182,14 @@ msgstr "NZB שכפל"
msgid "Pausing duplicate NZB \"%s\""
msgstr "\"%s\" NZB משהה שכפול"
#: sabnzbd/nzbstuff.py [Warning message]
msgid ""
"%d files with duplicate filenames were discared for \"%s\". Enable "
"\"allow_duplicate_files\" to allow duplicate filenames."
msgstr ""
".כדי להתיר שמות כפולים של קבצים \"allow_duplicate_files\" אפשר את .\"%s\" "
"הושלכו %d קבצים עם שמות כפולים עבור"
#: sabnzbd/nzbstuff.py
msgid "Aborted, cannot be completed"
msgstr "בוטל, לא יכול להיות שלם"
@@ -1271,7 +1289,7 @@ msgid "Limit Speed"
msgstr "הגבל מהירות"
#: sabnzbd/osxmenu.py # sabnzbd/sabtray.py # sabnzbd/sabtraylinux.py
#: sabnzbd/skintext.py [#: Config->Scheduler] # sabnzbd/skintext.py [Pause downloading] # sabnzbd/skintext.py [Three way switch for duplicates]
#: sabnzbd/skintext.py [#: Config->Scheduler] # sabnzbd/skintext.py [Pause downloading] # sabnzbd/skintext.py [Four way switch for duplicates]
#: sabnzbd/skintext.py [Config->Scheduling]
msgid "Pause"
msgstr "השהה"
@@ -1598,7 +1616,7 @@ msgstr "נכשלו בוידוא RAR קבצי"
#: sabnzbd/postproc.py [Error message] # sabnzbd/postproc.py [Error message]
msgid "Removing %s failed"
msgstr "הסרת %s נכשלה"
msgstr "נכשלה %s הסרת"
#: sabnzbd/powersup.py [Error message]
msgid "Failed to hibernate system"
@@ -1616,6 +1634,20 @@ msgstr "שגיאה בזמן כיבוי מערכת"
msgid "Indexer id (%s) not found for ratings file"
msgstr "לא נמצאה עבור קובץ מידרגים (%s) זהות מדדן"
#: sabnzbd/rating.py # sabnzbd/skintext.py [Address of Growl server]
msgid "Server address"
msgstr "כתובת שרת"
#: sabnzbd/rating.py # sabnzbd/skintext.py # sabnzbd/skintext.py
msgid "API Key"
msgstr "API מפתח"
#: sabnzbd/rating.py # sabnzbd/skintext.py
msgid ""
"This key provides identity to indexer. Check your profile on the indexer's "
"website."
msgstr ".מפתח זה מספק זהות למדדן. בדוק את המתאר שלך באתר של המדדן"
#: sabnzbd/rss.py [Error message] # sabnzbd/rss.py
msgid "Incorrect RSS feed description \"%s\""
msgstr "\"%s\" לא נכון RSS תיאור הזנת"
@@ -1702,10 +1734,6 @@ msgstr "שרתים"
msgid "Failure"
msgstr "כישלון"
#: sabnzbd/skintext.py [PP status] # sabnzbd/skintext.py [History: job status]
msgid "Completed"
msgstr "הושלם"
#: sabnzbd/skintext.py [PP status] # sabnzbd/skintext.py
msgid "Failed"
msgstr "נכשל"
@@ -1796,7 +1824,7 @@ msgstr "RSS קרא הזנות"
#: sabnzbd/skintext.py [Config->Scheduler]
msgid "Remove failed jobs"
msgstr "הסר עבודות כושלות"
msgstr "הסר עבודות נכשלות"
#: sabnzbd/skintext.py [Config->Scheduler]
msgid "Remove completed jobs"
@@ -1914,6 +1942,54 @@ 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 "יום בחודש"
@@ -2253,15 +2329,15 @@ msgstr "ומחק קבצים NZB טהר"
#: sabnzbd/skintext.py [Retry all failed jobs dialog box]
msgid "Retry all failed jobs"
msgstr "נסה שוב את כל העבודות שנכשלו"
msgstr "נסה שוב את כל העבודות הנכשלות"
#: sabnzbd/skintext.py [Queue page button]
msgid "Remove NZB"
msgstr "הסר NZB"
msgstr "NZB הסר"
#: sabnzbd/skintext.py [Queue page button] # sabnzbd/skintext.py
msgid "Remove NZB & Delete Files"
msgstr "הסר NZB ומחק קבצים"
msgstr "ומחק קבצים NZB הסר"
#: sabnzbd/skintext.py [Queue page, as in "4G *of* 10G"]
msgid "of"
@@ -2309,11 +2385,11 @@ msgstr "גודל"
#: sabnzbd/skintext.py [Button to delete all failed jobs in History]
msgid "Purge Failed NZBs"
msgstr "שנכשלו NZB טהר"
msgstr "נכשלים NZB טהר"
#: sabnzbd/skintext.py [Button to delete all failed jobs in History, including files]
msgid "Purge Failed NZBs & Delete Files"
msgstr "שנכשלו ומחק קבצים NZB טהר"
msgstr "נכשלים ומחק קבצים NZB טהר"
#: sabnzbd/skintext.py [Button to delete all completed jobs in History]
msgid "Purge Completed NZBs"
@@ -2728,6 +2804,38 @@ msgstr ""
".רשימת סיומות של קבצים שצריכים להימחק לאחר הורדה<br /><b>nfo, sfv</b> או "
"<b>nfo</b> :לדוגמה"
#: sabnzbd/skintext.py
msgid "History Retention"
msgstr "שימור היסטוריה"
#: sabnzbd/skintext.py
msgid ""
"Automatically delete completed jobs from History. Beware that Duplicate "
"Detection and some external tools rely on History information."
msgstr ""
".מחק באופן אוטומטי עבודות שלמות מההיסטוריה. שים לב ששימור כפול ומספר כלים "
"חיצוניים מסתמכים על מידע היסטוריה"
#: sabnzbd/skintext.py
msgid "Keep all jobs"
msgstr "שמור את כל העבודות"
#: sabnzbd/skintext.py
msgid "Keep maximum number of completed jobs"
msgstr "שמור מספר מרבי של עבודות שלמות"
#: sabnzbd/skintext.py
msgid "Keep completed jobs maximum number of days"
msgstr "שמור מספר ימים מרבי של עבודות שלמות"
#: sabnzbd/skintext.py
msgid "Do not keep any completed jobs"
msgstr "אל תשמור עבודות שלמות כלשהן"
#: sabnzbd/skintext.py
msgid "Jobs"
msgstr "עבודות"
#: sabnzbd/skintext.py
msgid "Save Changes"
msgstr "שמור שינויים"
@@ -2756,10 +2864,6 @@ msgstr ""
"!לעברית SABnzbd עזור לנו לתרגם את<br/>הוסף מלל לא מתורגם או שפר תרגומים "
"קיימים כאן:"
#: sabnzbd/skintext.py # sabnzbd/skintext.py
msgid "API Key"
msgstr "API מפתח"
#: sabnzbd/skintext.py
msgid "This key will give 3rd party programs full access to SABnzbd."
msgstr ".SABnzbd מפתח זה יתן לתכניות צד שלישי גישה מלאה אל"
@@ -3054,14 +3158,18 @@ msgid ""
msgstr ""
"(גלה פרקים זהים בסדרות (על סמך \"שם/עונה/פרק\" של פריטים בהיסטוריה שלך"
#: sabnzbd/skintext.py [Three way switch for duplicates]
#: sabnzbd/skintext.py [Four way switch for duplicates]
msgid "Discard"
msgstr "השלך"
#: sabnzbd/skintext.py [Three way switch for duplicates]
#: sabnzbd/skintext.py [Four way switch for duplicates]
msgid "Fail job (move to History)"
msgstr "הכשל עבודה (העבר להיסטוריה)"
#: sabnzbd/skintext.py [Four way switch for duplicates]
msgid "Tag job"
msgstr "הצמד תג לעבודה"
#: sabnzbd/skintext.py [Three way switch for encrypted posts]
msgid "Abort"
msgstr "בטל"
@@ -3111,6 +3219,18 @@ 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 "אפשר שינוי שם תיקייה"
@@ -3159,10 +3279,6 @@ msgstr "מיין לפי גיל"
msgid "Automatically sort items by (average) age."
msgstr ".(מיין פריטים באופן אוטומטי לפי גיל (ממוצע"
#: sabnzbd/skintext.py
msgid "Direct Unpack"
msgstr "פריקה ישירה"
#: sabnzbd/skintext.py
msgid ""
"Posts will be paused untill they are at least this age. Setting job priority "
@@ -3338,18 +3454,10 @@ msgstr "אפשר מיזוג מדדן"
#: sabnzbd/skintext.py
msgid ""
"Indexers can supply rating information when a job is added and SABnzbd can "
"report to the indexer if a job couldn't be completed. Depending on your "
"indexer, the API key setting can be left blank."
"report to the indexer if a job couldn't be completed."
msgstr ""
".יכול לדווח למדדן במקרה שעבודה לא יכלה להיות מושלמת SABnzbd-מדדנים יכולים "
"לספק מידע מידרג כאשר עבודה מתווספת ו\r\n"
".שלך יכולה להישאר ריקה API-תלוי במדדן שלך, קביעת מפתח ה"
#: sabnzbd/skintext.py
msgid ""
"This key provides identity to indexer. Check your profile on the indexer's "
"website."
msgstr ".מפתח זה מספק זהות למדדן. בדוק את המתאר שלך באתר של המדדן"
"יכול לדווח למדדן במקרה שעבודה לא יכלה להישלם SABnzbd-מדדנים יכולים לספק מידע "
"מידרג כאשר עבודה מתווספת ו"
#: sabnzbd/skintext.py
msgid "Enable Filtering"
@@ -3703,10 +3811,6 @@ msgstr "Growl אפשר"
msgid "Send notifications to Growl"
msgstr "Growl שלח התראות אל"
#: sabnzbd/skintext.py [Address of Growl server]
msgid "Server address"
msgstr "כתובת שרת"
#: sabnzbd/skintext.py [Don't translate "Growl"]
msgid "Only use for remote Growl server (host:port)"
msgstr "מרוחק (מארח:פתחה) Growl השתמש רק עבור שרת"
@@ -4256,6 +4360,10 @@ msgstr "טוען"
msgid "articles"
msgstr "מאמרים"
#: sabnzbd/skintext.py
msgid "Rename"
msgstr "שנה שם"
#: sabnzbd/skintext.py # sabnzbd/skintext.py
msgid "Queue repair"
msgstr "תיקון תור"
@@ -4486,7 +4594,7 @@ msgstr "?לטהר את התור"
#: sabnzbd/skintext.py
msgid "Retry all failed jobs in History?"
msgstr "לנסות שוב את כל העבודות שנכשלו בהיסטוריה?"
msgstr "לנסות שוב את כל העבודות הנכשלות בהיסטוריה?"
#: sabnzbd/skintext.py
msgid "Purge"
@@ -4564,7 +4672,7 @@ msgstr "מחק שלמים"
#: sabnzbd/skintext.py
msgid "Delete the all failed items from the history?"
msgstr "למחוק את כל הפריטים שנכשלו מההיסטוריה?"
msgstr "למחוק את כל הפריטים הנכשלים מההיסטוריה?"
#: sabnzbd/skintext.py
msgid "Delete Failed"
@@ -4572,7 +4680,7 @@ msgstr "מחק נכשלים"
#: sabnzbd/skintext.py
msgid "Retry all failed jobs?"
msgstr "לנסות שוב את העבודות שנכשלו?"
msgstr "לנסות שוב את העבודות הנכשלות?"
#: sabnzbd/skintext.py
msgid "Links"
@@ -4753,7 +4861,7 @@ msgstr "%s אל %s :נכשל בשינוי שם של קובץ דומה"
msgid "Server name does not resolve"
msgstr "שם השרת אינו פותר"
#: sabnzbd/urlgrabber.py # sabnzbd/urlgrabber.py
#: sabnzbd/urlgrabber.py
msgid "Unauthorized access"
msgstr "גישה בלתי מורשת"

View File

@@ -7,15 +7,15 @@ msgid ""
msgstr ""
"Project-Id-Version: sabnzbd\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2017-07-17 18:42+0000\n"
"POT-Creation-Date: 2017-08-06 09:51+0000\n"
"PO-Revision-Date: 2017-05-23 11:46+0000\n"
"Last-Translator: Safihre <safihre@sabnzbd.org>\n"
"Language-Team: Norwegian Bokmal <nb@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2017-07-18 05:26+0000\n"
"X-Generator: Launchpad (build 18419)\n"
"X-Launchpad-Export-Date: 2017-08-07 05:53+0000\n"
"X-Generator: Launchpad (build 18441)\n"
#: SABnzbd.py [Error message]
msgid "Failed to start web-interface"
@@ -106,7 +106,7 @@ msgid "Error"
msgstr "Feil"
#: SABnzbd.py # sabnzbd/interface.py # sabnzbd/interface.py
#: sabnzbd/osxmenu.py
#: sabnzbd/osxmenu.py # sabnzbd/wizard.py
msgid "SABnzbd shutdown finished"
msgstr "SABnzbd er nå avsluttet"
@@ -431,11 +431,15 @@ msgstr "UUencode oppdaget, bare yEnc koding er støttet[%s]"
msgid "%s => missing from all servers, discarding"
msgstr "%s => mangler på alle servere, fjerner"
#: sabnzbd/directunpacker.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py
msgid "Unpacking"
msgstr "Utpakker"
#: sabnzbd/directunpacker.py # sabnzbd/directunpacker.py
#: sabnzbd/directunpacker.py # sabnzbd/skintext.py
msgid "Direct Unpack"
msgstr ""
#: sabnzbd/directunpacker.py # sabnzbd/skintext.py [PP status]
#: sabnzbd/skintext.py [History: job status]
msgid "Completed"
msgstr "Ferdig"
#: sabnzbd/directunpacker.py # sabnzbd/newsunpack.py
msgid "Unpacked %s files/folders in %s"
@@ -647,7 +651,7 @@ msgstr ""
"Autentisering mangler, angi brukernavn/passord fra Konfigurasjon->Generelt i "
"ditt tredjepartsprogram:"
#: sabnzbd/interface.py [Warning message]
#: sabnzbd/interface.py [Warning message] # sabnzbd/skintext.py
msgid ""
"Try our new skin Glitter! Fresh new design that is optimized for desktop and "
"mobile devices. Go to Config -> General to change your skin."
@@ -836,6 +840,11 @@ msgstr "Prøver unrar med passord \"%s\""
msgid "Unpacking failed, archive requires a password"
msgstr "Utpakking mislyktes, arkivet krever passord"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
msgid "Unpacking"
msgstr "Utpakker"
#: sabnzbd/newsunpack.py # sabnzbd/skintext.py [PP phase "unpack"]
msgid "Unpack"
msgstr "Utpakking"
@@ -997,6 +1006,11 @@ msgstr "Reparerer"
msgid "[%s] Repaired in %s"
msgstr "[%s] Reparert på %s"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py
msgid "Verifying repair"
msgstr ""
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/notifier.py [Notification]
msgid "Disk full"
@@ -1004,19 +1018,15 @@ msgstr "Harddisken er full"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
msgid "Verifying"
msgstr "Verifiserer"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/skintext.py [PP status]
#: sabnzbd/newsunpack.py # sabnzbd/skintext.py [PP status]
msgid "Checking"
msgstr "Undersøker"
#: sabnzbd/newsunpack.py
msgid "Verifying repair"
msgstr ""
#: sabnzbd/newsunpack.py [Error message]
msgid "Python script \"%s\" does not have execute (+x) permission set"
msgstr ""
@@ -1076,7 +1086,7 @@ msgid "Not available"
msgstr "Ikke tilgjengelig"
#: sabnzbd/notifier.py # sabnzbd/notifier.py # sabnzbd/notifier.py
#: sabnzbd/notifier.py
#: sabnzbd/notifier.py # sabnzbd/rating.py # sabnzbd/rating.py
msgid "Cannot send, missing required data"
msgstr "Kan ikke sendes, mangler nødvendig data"
@@ -1168,7 +1178,7 @@ msgstr "Ignorerer duplikatfil \"%s\""
msgid "Failing duplicate NZB \"%s\""
msgstr ""
#: sabnzbd/nzbstuff.py
#: sabnzbd/nzbstuff.py # sabnzbd/nzbstuff.py [Warning message]
msgid "Duplicate NZB"
msgstr ""
@@ -1176,6 +1186,12 @@ msgstr ""
msgid "Pausing duplicate NZB \"%s\""
msgstr "Stanser duplikatfil \"%s\""
#: sabnzbd/nzbstuff.py [Warning message]
msgid ""
"%d files with duplicate filenames were discared for \"%s\". Enable "
"\"allow_duplicate_files\" to allow duplicate filenames."
msgstr ""
#: sabnzbd/nzbstuff.py
msgid "Aborted, cannot be completed"
msgstr "Avbrutt, kan ikke fullføres"
@@ -1275,7 +1291,7 @@ msgid "Limit Speed"
msgstr "Hastighetsbegrensning"
#: sabnzbd/osxmenu.py # sabnzbd/sabtray.py # sabnzbd/sabtraylinux.py
#: sabnzbd/skintext.py [#: Config->Scheduler] # sabnzbd/skintext.py [Pause downloading] # sabnzbd/skintext.py [Three way switch for duplicates]
#: sabnzbd/skintext.py [#: Config->Scheduler] # sabnzbd/skintext.py [Pause downloading] # sabnzbd/skintext.py [Four way switch for duplicates]
#: sabnzbd/skintext.py [Config->Scheduling]
msgid "Pause"
msgstr "Stans midlertidig"
@@ -1619,6 +1635,20 @@ msgstr "Feil under avslutting av systemet"
msgid "Indexer id (%s) not found for ratings file"
msgstr "Fant ikke indekser id (%s) for rangeringsfil."
#: sabnzbd/rating.py # sabnzbd/skintext.py [Address of Growl server]
msgid "Server address"
msgstr "Tjeneradresse"
#: sabnzbd/rating.py # sabnzbd/skintext.py # sabnzbd/skintext.py
msgid "API Key"
msgstr "API-nøkkel"
#: sabnzbd/rating.py # sabnzbd/skintext.py
msgid ""
"This key provides identity to indexer. Check your profile on the indexer's "
"website."
msgstr ""
#: sabnzbd/rss.py [Error message] # sabnzbd/rss.py
msgid "Incorrect RSS feed description \"%s\""
msgstr "Feilaktig RSS-kilde beskrivelse \"%s\""
@@ -1705,10 +1735,6 @@ msgstr "Servere"
msgid "Failure"
msgstr "Feil"
#: sabnzbd/skintext.py [PP status] # sabnzbd/skintext.py [History: job status]
msgid "Completed"
msgstr "Ferdig"
#: sabnzbd/skintext.py [PP status] # sabnzbd/skintext.py
msgid "Failed"
msgstr "Mislyktes"
@@ -1917,6 +1943,54 @@ 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"
@@ -2733,6 +2807,36 @@ msgstr ""
"Liste over filtyper som skal slettes etter nedlasting.<br />For eksempel: "
"<b>nfo</b> eller <b>nfo, sfv</b>"
#: sabnzbd/skintext.py
msgid "History Retention"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Automatically delete completed jobs from History. Beware that Duplicate "
"Detection and some external tools rely on History information."
msgstr ""
#: sabnzbd/skintext.py
msgid "Keep all jobs"
msgstr ""
#: sabnzbd/skintext.py
msgid "Keep maximum number of completed jobs"
msgstr ""
#: sabnzbd/skintext.py
msgid "Keep completed jobs maximum number of days"
msgstr ""
#: sabnzbd/skintext.py
msgid "Do not keep any completed jobs"
msgstr ""
#: sabnzbd/skintext.py
msgid "Jobs"
msgstr ""
#: sabnzbd/skintext.py
msgid "Save Changes"
msgstr "Lagre endringer"
@@ -2759,10 +2863,6 @@ msgid ""
"improved existing translations here:"
msgstr ""
#: sabnzbd/skintext.py # sabnzbd/skintext.py
msgid "API Key"
msgstr "API-nøkkel"
#: sabnzbd/skintext.py
msgid "This key will give 3rd party programs full access to SABnzbd."
msgstr "Denne nøkkelen vil gi tredjepartsprogrammer full tilgang til SABnzbd"
@@ -3061,14 +3161,18 @@ msgid ""
"items in your History)"
msgstr ""
#: sabnzbd/skintext.py [Three way switch for duplicates]
#: sabnzbd/skintext.py [Four way switch for duplicates]
msgid "Discard"
msgstr "Forkast"
#: sabnzbd/skintext.py [Three way switch for duplicates]
#: sabnzbd/skintext.py [Four way switch for duplicates]
msgid "Fail job (move to History)"
msgstr ""
#: sabnzbd/skintext.py [Four way switch for duplicates]
msgid "Tag job"
msgstr ""
#: sabnzbd/skintext.py [Three way switch for encrypted posts]
msgid "Abort"
msgstr "Avbryt"
@@ -3120,6 +3224,16 @@ 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"
@@ -3168,10 +3282,6 @@ msgstr "Sortere etter alder"
msgid "Automatically sort items by (average) age."
msgstr "Sortere automatisk etter(midt) alder."
#: sabnzbd/skintext.py
msgid "Direct Unpack"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Posts will be paused untill they are at least this age. Setting job priority "
@@ -3349,14 +3459,7 @@ msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Indexers can supply rating information when a job is added and SABnzbd can "
"report to the indexer if a job couldn't be completed. Depending on your "
"indexer, the API key setting can be left blank."
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"This key provides identity to indexer. Check your profile on the indexer's "
"website."
"report to the indexer if a job couldn't be completed."
msgstr ""
#: sabnzbd/skintext.py
@@ -3708,10 +3811,6 @@ msgstr "Aktiver Growl"
msgid "Send notifications to Growl"
msgstr "Send varsler til Growl"
#: sabnzbd/skintext.py [Address of Growl server]
msgid "Server address"
msgstr "Tjeneradresse"
#: sabnzbd/skintext.py [Don't translate "Growl"]
msgid "Only use for remote Growl server (host:port)"
msgstr "Brukes kun for fjerntliggende Growl tjener (vert:port)"
@@ -4261,6 +4360,10 @@ msgstr "Laster"
msgid "articles"
msgstr "artikler"
#: sabnzbd/skintext.py
msgid "Rename"
msgstr "Endre navn"
#: sabnzbd/skintext.py # sabnzbd/skintext.py
msgid "Queue repair"
msgstr "Reparer Kø"
@@ -4759,7 +4862,7 @@ msgstr "Kunne ikke endre navn på lik fil: %s til %s"
msgid "Server name does not resolve"
msgstr "Kunne ikke finne servernavn"
#: sabnzbd/urlgrabber.py # sabnzbd/urlgrabber.py
#: sabnzbd/urlgrabber.py
msgid "Unauthorized access"
msgstr "Uautorisert tilgang"
@@ -5302,9 +5405,6 @@ msgstr "URL henting mislyktes; %s"
#~ msgid "Storage"
#~ msgstr "Lagring"
#~ msgid "Rename"
#~ msgstr "Endre navn"
#~ msgid "OZnzb"
#~ msgstr "OZnzb"

View File

@@ -7,15 +7,15 @@ msgid ""
msgstr ""
"Project-Id-Version: sabnzbd\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2017-07-17 18:42+0000\n"
"PO-Revision-Date: 2017-07-17 20:20+0000\n"
"POT-Creation-Date: 2017-08-06 09:51+0000\n"
"PO-Revision-Date: 2017-07-27 19:33+0000\n"
"Last-Translator: Safihre <safihre@sabnzbd.org>\n"
"Language-Team: Dutch <nl@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2017-07-18 05:26+0000\n"
"X-Generator: Launchpad (build 18419)\n"
"X-Launchpad-Export-Date: 2017-08-07 05:53+0000\n"
"X-Generator: Launchpad (build 18441)\n"
#: SABnzbd.py [Error message]
msgid "Failed to start web-interface"
@@ -109,7 +109,7 @@ msgid "Error"
msgstr "Fout"
#: SABnzbd.py # sabnzbd/interface.py # sabnzbd/interface.py
#: sabnzbd/osxmenu.py
#: sabnzbd/osxmenu.py # sabnzbd/wizard.py
msgid "SABnzbd shutdown finished"
msgstr "SABnzbd is afgesloten"
@@ -449,11 +449,15 @@ msgstr "UUencode gevonden, SABnzbd verwerkt alleen yEnc-codering [%s]"
msgid "%s => missing from all servers, discarding"
msgstr "%s => ontbreekt op alle servers, overslaan"
#: sabnzbd/directunpacker.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py
msgid "Unpacking"
msgstr "Uitpakken"
#: sabnzbd/directunpacker.py # sabnzbd/directunpacker.py
#: sabnzbd/directunpacker.py # sabnzbd/skintext.py
msgid "Direct Unpack"
msgstr "Direct Uitpakken"
#: sabnzbd/directunpacker.py # sabnzbd/skintext.py [PP status]
#: sabnzbd/skintext.py [History: job status]
msgid "Completed"
msgstr "Voltooid"
#: sabnzbd/directunpacker.py # sabnzbd/newsunpack.py
msgid "Unpacked %s files/folders in %s"
@@ -669,7 +673,7 @@ msgstr ""
"Autenticatie ontbreekt; vul gebruikersnaam en wachtwoord van 'Configuratie' "
"=> 'Algemeen' in bij het externe programma:"
#: sabnzbd/interface.py [Warning message]
#: sabnzbd/interface.py [Warning message] # sabnzbd/skintext.py
msgid ""
"Try our new skin Glitter! Fresh new design that is optimized for desktop and "
"mobile devices. Go to Config -> General to change your skin."
@@ -859,6 +863,11 @@ msgstr "Unrar proberen met wachtwoord \"%s\""
msgid "Unpacking failed, archive requires a password"
msgstr "Uitpakken mislukt, archief vereist wachtwoord"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
msgid "Unpacking"
msgstr "Uitpakken"
#: sabnzbd/newsunpack.py # sabnzbd/skintext.py [PP phase "unpack"]
msgid "Unpack"
msgstr "Uitpakken"
@@ -1019,6 +1028,11 @@ msgstr "Repareren"
msgid "[%s] Repaired in %s"
msgstr "[%s] Reparatie in %s"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py
msgid "Verifying repair"
msgstr "Reparatie controleren"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/notifier.py [Notification]
msgid "Disk full"
@@ -1026,19 +1040,15 @@ msgstr "Schijf is vol"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
msgid "Verifying"
msgstr "Verifiëren"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/skintext.py [PP status]
#: sabnzbd/newsunpack.py # sabnzbd/skintext.py [PP status]
msgid "Checking"
msgstr "Controleren"
#: sabnzbd/newsunpack.py
msgid "Verifying repair"
msgstr "Reparatie controleren"
#: sabnzbd/newsunpack.py [Error message]
msgid "Python script \"%s\" does not have execute (+x) permission set"
msgstr "Python-script '%s' heeft geen uitvoerpermissie (+x)"
@@ -1101,7 +1111,7 @@ msgid "Not available"
msgstr "Niet beschikbaar"
#: sabnzbd/notifier.py # sabnzbd/notifier.py # sabnzbd/notifier.py
#: sabnzbd/notifier.py
#: sabnzbd/notifier.py # sabnzbd/rating.py # sabnzbd/rating.py
msgid "Cannot send, missing required data"
msgstr "Versturen kan niet, vereiste gegevens ontbreken"
@@ -1193,7 +1203,7 @@ msgstr "Dubbele NZB \"%s\" overgeslagen"
msgid "Failing duplicate NZB \"%s\""
msgstr "Opdracht '%s' geweigerd omdat het een dubbele is"
#: sabnzbd/nzbstuff.py
#: sabnzbd/nzbstuff.py # sabnzbd/nzbstuff.py [Warning message]
msgid "Duplicate NZB"
msgstr "Dubbele NZB"
@@ -1201,6 +1211,12 @@ msgstr "Dubbele NZB"
msgid "Pausing duplicate NZB \"%s\""
msgstr "Pauzeer dubbele NZB \"%s\""
#: sabnzbd/nzbstuff.py [Warning message]
msgid ""
"%d files with duplicate filenames were discared for \"%s\". Enable "
"\"allow_duplicate_files\" to allow duplicate filenames."
msgstr ""
#: sabnzbd/nzbstuff.py
msgid "Aborted, cannot be completed"
msgstr "Afgebroken, kan niet voltooid worden"
@@ -1300,7 +1316,7 @@ msgid "Limit Speed"
msgstr "Beperk snelheid"
#: sabnzbd/osxmenu.py # sabnzbd/sabtray.py # sabnzbd/sabtraylinux.py
#: sabnzbd/skintext.py [#: Config->Scheduler] # sabnzbd/skintext.py [Pause downloading] # sabnzbd/skintext.py [Three way switch for duplicates]
#: sabnzbd/skintext.py [#: Config->Scheduler] # sabnzbd/skintext.py [Pause downloading] # sabnzbd/skintext.py [Four way switch for duplicates]
#: sabnzbd/skintext.py [Config->Scheduling]
msgid "Pause"
msgstr "Pauze"
@@ -1649,6 +1665,22 @@ msgstr "Fout bij het afsluiten van het systeem"
msgid "Indexer id (%s) not found for ratings file"
msgstr "Indexer id (%s) niet gevonden in het bestand met beoordelingen"
#: sabnzbd/rating.py # sabnzbd/skintext.py [Address of Growl server]
msgid "Server address"
msgstr "Server adres"
#: sabnzbd/rating.py # sabnzbd/skintext.py # sabnzbd/skintext.py
msgid "API Key"
msgstr "API-sleutel"
#: sabnzbd/rating.py # sabnzbd/skintext.py
msgid ""
"This key provides identity to indexer. Check your profile on the indexer's "
"website."
msgstr ""
"Deze sleutel is voor je identificatie door de indexer. Kijk in je profiel op "
"de website van de indexer."
#: sabnzbd/rss.py [Error message] # sabnzbd/rss.py
msgid "Incorrect RSS feed description \"%s\""
msgstr "Foutieve RSS-feed definitie \"%s\""
@@ -1735,10 +1767,6 @@ msgstr "Servers"
msgid "Failure"
msgstr "Mislukt"
#: sabnzbd/skintext.py [PP status] # sabnzbd/skintext.py [History: job status]
msgid "Completed"
msgstr "Voltooid"
#: sabnzbd/skintext.py [PP status] # sabnzbd/skintext.py
msgid "Failed"
msgstr "Mislukt"
@@ -1833,7 +1861,7 @@ msgstr "Verwijder mislukte opdrachten"
#: sabnzbd/skintext.py [Config->Scheduler]
msgid "Remove completed jobs"
msgstr "Verwijder afgehandelde taken"
msgstr "Verwijder voltooide opdrachten"
#: sabnzbd/skintext.py [Config->Scheduler]
msgid "Pause low prioirty jobs"
@@ -1947,6 +1975,54 @@ 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"
@@ -2775,6 +2851,39 @@ msgstr ""
"Lijst van extensies die na downloaden verwijderd moeten worden.<br "
"/>Voorbeeld: <b>nfo</b> of <b>nfo, sfv</b>"
#: sabnzbd/skintext.py
msgid "History Retention"
msgstr "Geschiedenis Bewaren"
#: sabnzbd/skintext.py
msgid ""
"Automatically delete completed jobs from History. Beware that Duplicate "
"Detection and some external tools rely on History information."
msgstr ""
"Automatisch verwijderen van voltooide downloads. Let er op dat Dubbele "
"Opdracht Detectie en andere externe tools Geschiedenis informatie nodig "
"hebben."
#: sabnzbd/skintext.py
msgid "Keep all jobs"
msgstr "Behoud alle downloads"
#: sabnzbd/skintext.py
msgid "Keep maximum number of completed jobs"
msgstr "Maximum aantal voltooide downloads"
#: sabnzbd/skintext.py
msgid "Keep completed jobs maximum number of days"
msgstr "Behoud voltooide downloads maximaal aantal dagen"
#: sabnzbd/skintext.py
msgid "Do not keep any completed jobs"
msgstr "Behoud geen enkele download"
#: sabnzbd/skintext.py
msgid "Jobs"
msgstr "Downloads"
#: sabnzbd/skintext.py
msgid "Save Changes"
msgstr "Opslaan"
@@ -2803,10 +2912,6 @@ msgstr ""
"Help ons om SABnzbd in jouw taal te vertalen! <br/>Met nieuwe vertalingen of "
"verbeteringen kun je hier terecht:"
#: sabnzbd/skintext.py # sabnzbd/skintext.py
msgid "API Key"
msgstr "API-sleutel"
#: sabnzbd/skintext.py
msgid "This key will give 3rd party programs full access to SABnzbd."
msgstr ""
@@ -3110,14 +3215,18 @@ msgstr ""
"Detecteer identieke afleveringen in series (gebaseerd op "
"\"naam/seizoen/aflevering\" in opdrachten in je Geschiedenis)."
#: sabnzbd/skintext.py [Three way switch for duplicates]
#: sabnzbd/skintext.py [Four way switch for duplicates]
msgid "Discard"
msgstr "Verwerpen"
#: sabnzbd/skintext.py [Three way switch for duplicates]
#: sabnzbd/skintext.py [Four way switch for duplicates]
msgid "Fail job (move to History)"
msgstr "Keur opdracht af"
#: sabnzbd/skintext.py [Four way switch for duplicates]
msgid "Tag job"
msgstr "Label download"
#: sabnzbd/skintext.py [Three way switch for encrypted posts]
msgid "Abort"
msgstr "Afbreken"
@@ -3170,6 +3279,19 @@ 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"
@@ -3192,7 +3314,7 @@ msgstr "Wordt uitgevoerd vóór een NZB de wachtrij in gaat"
#: sabnzbd/skintext.py
msgid "Extra PAR2 Parameters"
msgstr "Extra PAR2 parameters:"
msgstr "Extra PAR2 parameters"
#: sabnzbd/skintext.py
msgid "Nice Parameters"
@@ -3219,10 +3341,6 @@ msgstr "Sorteer op leeftijd"
msgid "Automatically sort items by (average) age."
msgstr "Automatisch sorteren op basis van gemiddelde leeftijd."
#: sabnzbd/skintext.py
msgid "Direct Unpack"
msgstr "Direct Uitpakken"
#: sabnzbd/skintext.py
msgid ""
"Posts will be paused untill they are at least this age. Setting job priority "
@@ -3407,20 +3525,11 @@ msgstr "Sta integratie met index websites toe"
#: sabnzbd/skintext.py
msgid ""
"Indexers can supply rating information when a job is added and SABnzbd can "
"report to the indexer if a job couldn't be completed. Depending on your "
"indexer, the API key setting can be left blank."
"report to the indexer if a job couldn't be completed."
msgstr ""
"Indexers kunnen waarderingsinformatie leveren wanneer een NZB wordt "
"opgehaald. SABnzbd kan mislukte downloads aanmelden bij de indexer. Sommige "
"indexers hebben een API sleutel nodig."
#: sabnzbd/skintext.py
msgid ""
"This key provides identity to indexer. Check your profile on the indexer's "
"website."
msgstr ""
"Deze sleutel is voor je identificatie door de indexer. Kijk in je profiel op "
"de website van de indexer."
"Indexers kunnen beoordelingen meesturen wanneer een opdracht wordt "
"toegevoegd en SABnzbd kan de indexer informeren wanneer een download niet "
"slaagt."
#: sabnzbd/skintext.py
msgid "Enable Filtering"
@@ -3782,10 +3891,6 @@ msgstr "Growl meldingen activeren"
msgid "Send notifications to Growl"
msgstr "Zend meldingen naar Growl"
#: sabnzbd/skintext.py [Address of Growl server]
msgid "Server address"
msgstr "Server adres"
#: sabnzbd/skintext.py [Don't translate "Growl"]
msgid "Only use for remote Growl server (host:port)"
msgstr ""
@@ -4340,6 +4445,10 @@ msgstr "Laden"
msgid "articles"
msgstr "artikelen"
#: sabnzbd/skintext.py
msgid "Rename"
msgstr "Naam"
#: sabnzbd/skintext.py # sabnzbd/skintext.py
msgid "Queue repair"
msgstr "Wachtrij reparatie"
@@ -4840,7 +4949,7 @@ msgstr "Hernoemen van gelijkaardig bestand %s naar %s mislukt"
msgid "Server name does not resolve"
msgstr "Servernaam niet te vinden"
#: sabnzbd/urlgrabber.py # sabnzbd/urlgrabber.py
#: sabnzbd/urlgrabber.py
msgid "Unauthorized access"
msgstr "Geen toegangsrechten"
@@ -5115,9 +5224,6 @@ msgstr "URL ophalen mislukt; %s"
#~ msgid "Pause for 24 hours"
#~ msgstr "Pauzeer 24 uur"
#~ msgid "Rename"
#~ msgstr "Naam"
#~ msgid "Left"
#~ msgstr "Over"

View File

@@ -7,15 +7,15 @@ msgid ""
msgstr ""
"Project-Id-Version: sabnzbd\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2017-07-17 18:42+0000\n"
"POT-Creation-Date: 2017-08-06 09:51+0000\n"
"PO-Revision-Date: 2015-12-28 10:22+0000\n"
"Last-Translator: Safihre <safihre@sabnzbd.org>\n"
"Language-Team: Polish <pl@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2017-07-18 05:26+0000\n"
"X-Generator: Launchpad (build 18419)\n"
"X-Launchpad-Export-Date: 2017-08-07 05:53+0000\n"
"X-Generator: Launchpad (build 18441)\n"
#: SABnzbd.py [Error message]
msgid "Failed to start web-interface"
@@ -100,7 +100,7 @@ msgid "Error"
msgstr "Błąd"
#: SABnzbd.py # sabnzbd/interface.py # sabnzbd/interface.py
#: sabnzbd/osxmenu.py
#: sabnzbd/osxmenu.py # sabnzbd/wizard.py
msgid "SABnzbd shutdown finished"
msgstr "SABnzbd został wyłączony"
@@ -431,11 +431,15 @@ msgstr ""
msgid "%s => missing from all servers, discarding"
msgstr "%s => nie znaleziono na żadnym serwerze, porzucam"
#: sabnzbd/directunpacker.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py
msgid "Unpacking"
msgstr "Rozpakowywanie"
#: sabnzbd/directunpacker.py # sabnzbd/directunpacker.py
#: sabnzbd/directunpacker.py # sabnzbd/skintext.py
msgid "Direct Unpack"
msgstr ""
#: sabnzbd/directunpacker.py # sabnzbd/skintext.py [PP status]
#: sabnzbd/skintext.py [History: job status]
msgid "Completed"
msgstr "Ukończone"
#: sabnzbd/directunpacker.py # sabnzbd/newsunpack.py
msgid "Unpacked %s files/folders in %s"
@@ -649,7 +653,7 @@ msgstr ""
"Brak danych uwierzytelniających, wprowadź nazwę użytkownika/hasło z sekcji "
"Konfiguracja->Ogólne do zewnętrznego programu:"
#: sabnzbd/interface.py [Warning message]
#: sabnzbd/interface.py [Warning message] # sabnzbd/skintext.py
msgid ""
"Try our new skin Glitter! Fresh new design that is optimized for desktop and "
"mobile devices. Go to Config -> General to change your skin."
@@ -839,6 +843,11 @@ msgstr "Próba rozpakowania archiwum RAR z użyciem hasła \"%s\""
msgid "Unpacking failed, archive requires a password"
msgstr "Rozpakowywanie nie powiodło się, archiwum wymaga podania hasła"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
msgid "Unpacking"
msgstr "Rozpakowywanie"
#: sabnzbd/newsunpack.py # sabnzbd/skintext.py [PP phase "unpack"]
msgid "Unpack"
msgstr "Rozpakuj"
@@ -1002,6 +1011,11 @@ msgstr "Naprawianie"
msgid "[%s] Repaired in %s"
msgstr "[%s] Naprawiono w %s"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py
msgid "Verifying repair"
msgstr ""
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/notifier.py [Notification]
msgid "Disk full"
@@ -1009,19 +1023,15 @@ msgstr "Dysk pełny"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
msgid "Verifying"
msgstr "Weryfikowanie"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/skintext.py [PP status]
#: sabnzbd/newsunpack.py # sabnzbd/skintext.py [PP status]
msgid "Checking"
msgstr "Sprawdzanie"
#: sabnzbd/newsunpack.py
msgid "Verifying repair"
msgstr ""
#: sabnzbd/newsunpack.py [Error message]
msgid "Python script \"%s\" does not have execute (+x) permission set"
msgstr ""
@@ -1081,7 +1091,7 @@ msgid "Not available"
msgstr "Niedostępne"
#: sabnzbd/notifier.py # sabnzbd/notifier.py # sabnzbd/notifier.py
#: sabnzbd/notifier.py
#: sabnzbd/notifier.py # sabnzbd/rating.py # sabnzbd/rating.py
msgid "Cannot send, missing required data"
msgstr "Nie można wysłać wiadomości, brak wymaganych danych"
@@ -1175,7 +1185,7 @@ msgstr "Ignoruję zduplikowany NZB \"%s\""
msgid "Failing duplicate NZB \"%s\""
msgstr ""
#: sabnzbd/nzbstuff.py
#: sabnzbd/nzbstuff.py # sabnzbd/nzbstuff.py [Warning message]
msgid "Duplicate NZB"
msgstr ""
@@ -1183,6 +1193,12 @@ msgstr ""
msgid "Pausing duplicate NZB \"%s\""
msgstr "Wstrzymuję zduplikowany NZB \"%s\""
#: sabnzbd/nzbstuff.py [Warning message]
msgid ""
"%d files with duplicate filenames were discared for \"%s\". Enable "
"\"allow_duplicate_files\" to allow duplicate filenames."
msgstr ""
#: sabnzbd/nzbstuff.py
msgid "Aborted, cannot be completed"
msgstr "Przerwano, nie można ukończyć"
@@ -1282,7 +1298,7 @@ msgid "Limit Speed"
msgstr "Ogranicz prędkość"
#: sabnzbd/osxmenu.py # sabnzbd/sabtray.py # sabnzbd/sabtraylinux.py
#: sabnzbd/skintext.py [#: Config->Scheduler] # sabnzbd/skintext.py [Pause downloading] # sabnzbd/skintext.py [Three way switch for duplicates]
#: sabnzbd/skintext.py [#: Config->Scheduler] # sabnzbd/skintext.py [Pause downloading] # sabnzbd/skintext.py [Four way switch for duplicates]
#: sabnzbd/skintext.py [Config->Scheduling]
msgid "Pause"
msgstr "Wstrzymaj"
@@ -1627,6 +1643,20 @@ msgstr "Wyłączenie systemu nie powiodło się"
msgid "Indexer id (%s) not found for ratings file"
msgstr "Identyfikator indeksera (%s) nie został znaleziony w pliku ocen"
#: sabnzbd/rating.py # sabnzbd/skintext.py [Address of Growl server]
msgid "Server address"
msgstr "Adres serwera"
#: sabnzbd/rating.py # sabnzbd/skintext.py # sabnzbd/skintext.py
msgid "API Key"
msgstr "Klucz API"
#: sabnzbd/rating.py # sabnzbd/skintext.py
msgid ""
"This key provides identity to indexer. Check your profile on the indexer's "
"website."
msgstr ""
#: sabnzbd/rss.py [Error message] # sabnzbd/rss.py
msgid "Incorrect RSS feed description \"%s\""
msgstr "Nieprawidłowy opis kanału RSS \"%s\""
@@ -1713,10 +1743,6 @@ msgstr "Serwery"
msgid "Failure"
msgstr "Niepowodzenie"
#: sabnzbd/skintext.py [PP status] # sabnzbd/skintext.py [History: job status]
msgid "Completed"
msgstr "Ukończone"
#: sabnzbd/skintext.py [PP status] # sabnzbd/skintext.py
msgid "Failed"
msgstr "Nieudane"
@@ -1925,6 +1951,54 @@ 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"
@@ -2742,6 +2816,36 @@ msgstr ""
"Lista rozszerzeń plików, które mają zostać usunięte po pobraniu.<br />Na "
"przykład: <b>nfo</b> lub <b>nfo, sfv</b>"
#: sabnzbd/skintext.py
msgid "History Retention"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Automatically delete completed jobs from History. Beware that Duplicate "
"Detection and some external tools rely on History information."
msgstr ""
#: sabnzbd/skintext.py
msgid "Keep all jobs"
msgstr ""
#: sabnzbd/skintext.py
msgid "Keep maximum number of completed jobs"
msgstr ""
#: sabnzbd/skintext.py
msgid "Keep completed jobs maximum number of days"
msgstr ""
#: sabnzbd/skintext.py
msgid "Do not keep any completed jobs"
msgstr ""
#: sabnzbd/skintext.py
msgid "Jobs"
msgstr ""
#: sabnzbd/skintext.py
msgid "Save Changes"
msgstr "Zapisz zmiany"
@@ -2768,10 +2872,6 @@ msgid ""
"improved existing translations here:"
msgstr ""
#: sabnzbd/skintext.py # sabnzbd/skintext.py
msgid "API Key"
msgstr "Klucz API"
#: sabnzbd/skintext.py
msgid "This key will give 3rd party programs full access to SABnzbd."
msgstr "Ten klucz umożliwi innym programom dostęp do SABnzbd"
@@ -3073,14 +3173,18 @@ msgid ""
"items in your History)"
msgstr ""
#: sabnzbd/skintext.py [Three way switch for duplicates]
#: sabnzbd/skintext.py [Four way switch for duplicates]
msgid "Discard"
msgstr "Odrzuć"
#: sabnzbd/skintext.py [Three way switch for duplicates]
#: sabnzbd/skintext.py [Four way switch for duplicates]
msgid "Fail job (move to History)"
msgstr ""
#: sabnzbd/skintext.py [Four way switch for duplicates]
msgid "Tag job"
msgstr ""
#: sabnzbd/skintext.py [Three way switch for encrypted posts]
msgid "Abort"
msgstr "Przerwij"
@@ -3135,6 +3239,16 @@ 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"
@@ -3183,10 +3297,6 @@ msgstr "Sortuj według wieku"
msgid "Automatically sort items by (average) age."
msgstr "Automatycznie sortuj pozycje według wieku (średniego)"
#: sabnzbd/skintext.py
msgid "Direct Unpack"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Posts will be paused untill they are at least this age. Setting job priority "
@@ -3367,14 +3477,7 @@ msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Indexers can supply rating information when a job is added and SABnzbd can "
"report to the indexer if a job couldn't be completed. Depending on your "
"indexer, the API key setting can be left blank."
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"This key provides identity to indexer. Check your profile on the indexer's "
"website."
"report to the indexer if a job couldn't be completed."
msgstr ""
#: sabnzbd/skintext.py
@@ -3726,10 +3829,6 @@ msgstr "Włącz Growl"
msgid "Send notifications to Growl"
msgstr "Wysyłaj powiadomienia Growl"
#: sabnzbd/skintext.py [Address of Growl server]
msgid "Server address"
msgstr "Adres serwera"
#: sabnzbd/skintext.py [Don't translate "Growl"]
msgid "Only use for remote Growl server (host:port)"
msgstr "Tylko dla zdalnych serwerów Growl (host:port)"
@@ -4279,6 +4378,10 @@ msgstr "Ładowanie"
msgid "articles"
msgstr "artykułów"
#: sabnzbd/skintext.py
msgid "Rename"
msgstr "Zmień nazwę"
#: sabnzbd/skintext.py # sabnzbd/skintext.py
msgid "Queue repair"
msgstr "Naprawa kolejki"
@@ -4776,7 +4879,7 @@ msgstr "Nie udało się zmienić nazwy podobnego pliku %s na %s"
msgid "Server name does not resolve"
msgstr "Nie udało się rozwiązać nazwy serwera"
#: sabnzbd/urlgrabber.py # sabnzbd/urlgrabber.py
#: sabnzbd/urlgrabber.py
msgid "Unauthorized access"
msgstr "Dostęp zabroniony"
@@ -5033,9 +5136,6 @@ msgstr "Pobieranie URL nie powiodło się; %s"
#~ msgid "Storage"
#~ msgstr "Miejsce"
#~ msgid "Rename"
#~ msgstr "Zmień nazwę"
#~ msgid "Plush Options"
#~ msgstr "Opcje Plush"

View File

@@ -7,15 +7,15 @@ msgid ""
msgstr ""
"Project-Id-Version: sabnzbd\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2017-07-17 18:42+0000\n"
"POT-Creation-Date: 2017-08-06 09:51+0000\n"
"PO-Revision-Date: 2016-01-01 22:58+0000\n"
"Last-Translator: lrrosa <Unknown>\n"
"Language-Team: Brazilian Portuguese <pt_BR@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2017-07-18 05:27+0000\n"
"X-Generator: Launchpad (build 18419)\n"
"X-Launchpad-Export-Date: 2017-08-07 05:54+0000\n"
"X-Generator: Launchpad (build 18441)\n"
#: SABnzbd.py [Error message]
msgid "Failed to start web-interface"
@@ -104,7 +104,7 @@ msgid "Error"
msgstr "Erro"
#: SABnzbd.py # sabnzbd/interface.py # sabnzbd/interface.py
#: sabnzbd/osxmenu.py
#: sabnzbd/osxmenu.py # sabnzbd/wizard.py
msgid "SABnzbd shutdown finished"
msgstr "Encerramento do SABnzbd concluído"
@@ -433,11 +433,15 @@ msgstr ""
msgid "%s => missing from all servers, discarding"
msgstr "%s => faltando em todos os servidores. Descartando"
#: sabnzbd/directunpacker.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py
msgid "Unpacking"
msgstr "Descompactando"
#: sabnzbd/directunpacker.py # sabnzbd/directunpacker.py
#: sabnzbd/directunpacker.py # sabnzbd/skintext.py
msgid "Direct Unpack"
msgstr ""
#: sabnzbd/directunpacker.py # sabnzbd/skintext.py [PP status]
#: sabnzbd/skintext.py [History: job status]
msgid "Completed"
msgstr "Concluído"
#: sabnzbd/directunpacker.py # sabnzbd/newsunpack.py
msgid "Unpacked %s files/folders in %s"
@@ -650,7 +654,7 @@ msgstr ""
"Autenticação faltando. Por favor insira usuário/senha de Configuração->Geral "
"em seu programa de terceiros:"
#: sabnzbd/interface.py [Warning message]
#: sabnzbd/interface.py [Warning message] # sabnzbd/skintext.py
msgid ""
"Try our new skin Glitter! Fresh new design that is optimized for desktop and "
"mobile devices. Go to Config -> General to change your skin."
@@ -839,6 +843,11 @@ msgstr "Tentando descompactar com a senha \"%s\""
msgid "Unpacking failed, archive requires a password"
msgstr "A descompactação falhou. O arquivo exige uma senha"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
msgid "Unpacking"
msgstr "Descompactando"
#: sabnzbd/newsunpack.py # sabnzbd/skintext.py [PP phase "unpack"]
msgid "Unpack"
msgstr "Descompactar"
@@ -999,6 +1008,11 @@ msgstr "Reparando"
msgid "[%s] Repaired in %s"
msgstr "[%s] Reparado em %s"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py
msgid "Verifying repair"
msgstr ""
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/notifier.py [Notification]
msgid "Disk full"
@@ -1006,19 +1020,15 @@ msgstr "Disco cheio"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
msgid "Verifying"
msgstr "Verificando"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/skintext.py [PP status]
#: sabnzbd/newsunpack.py # sabnzbd/skintext.py [PP status]
msgid "Checking"
msgstr "Verificando"
#: sabnzbd/newsunpack.py
msgid "Verifying repair"
msgstr ""
#: sabnzbd/newsunpack.py [Error message]
msgid "Python script \"%s\" does not have execute (+x) permission set"
msgstr ""
@@ -1078,7 +1088,7 @@ msgid "Not available"
msgstr "Não disponível"
#: sabnzbd/notifier.py # sabnzbd/notifier.py # sabnzbd/notifier.py
#: sabnzbd/notifier.py
#: sabnzbd/notifier.py # sabnzbd/rating.py # sabnzbd/rating.py
msgid "Cannot send, missing required data"
msgstr "Não foi possível enviar, faltam dados obrigatórios"
@@ -1172,7 +1182,7 @@ msgstr "Ignorando NZB duplicado \"%s\""
msgid "Failing duplicate NZB \"%s\""
msgstr ""
#: sabnzbd/nzbstuff.py
#: sabnzbd/nzbstuff.py # sabnzbd/nzbstuff.py [Warning message]
msgid "Duplicate NZB"
msgstr ""
@@ -1180,6 +1190,12 @@ msgstr ""
msgid "Pausing duplicate NZB \"%s\""
msgstr "Pausando NZB duplicado \"%s\""
#: sabnzbd/nzbstuff.py [Warning message]
msgid ""
"%d files with duplicate filenames were discared for \"%s\". Enable "
"\"allow_duplicate_files\" to allow duplicate filenames."
msgstr ""
#: sabnzbd/nzbstuff.py
msgid "Aborted, cannot be completed"
msgstr "Cancelado, não é possível concluir"
@@ -1279,7 +1295,7 @@ msgid "Limit Speed"
msgstr "Limitar Velocidade"
#: sabnzbd/osxmenu.py # sabnzbd/sabtray.py # sabnzbd/sabtraylinux.py
#: sabnzbd/skintext.py [#: Config->Scheduler] # sabnzbd/skintext.py [Pause downloading] # sabnzbd/skintext.py [Three way switch for duplicates]
#: sabnzbd/skintext.py [#: Config->Scheduler] # sabnzbd/skintext.py [Pause downloading] # sabnzbd/skintext.py [Four way switch for duplicates]
#: sabnzbd/skintext.py [Config->Scheduling]
msgid "Pause"
msgstr "Pausar"
@@ -1625,6 +1641,20 @@ msgstr "Erro ao desligar o sistema"
msgid "Indexer id (%s) not found for ratings file"
msgstr "Indexador id (%s) não foi encontrador para avaliar arquivos"
#: sabnzbd/rating.py # sabnzbd/skintext.py [Address of Growl server]
msgid "Server address"
msgstr "Endereço do servidor"
#: sabnzbd/rating.py # sabnzbd/skintext.py # sabnzbd/skintext.py
msgid "API Key"
msgstr "Chave API"
#: sabnzbd/rating.py # sabnzbd/skintext.py
msgid ""
"This key provides identity to indexer. Check your profile on the indexer's "
"website."
msgstr ""
#: sabnzbd/rss.py [Error message] # sabnzbd/rss.py
msgid "Incorrect RSS feed description \"%s\""
msgstr "Descrição de feed RSS incorreta \"%s\""
@@ -1712,10 +1742,6 @@ msgstr "Servidores"
msgid "Failure"
msgstr "Falha"
#: sabnzbd/skintext.py [PP status] # sabnzbd/skintext.py [History: job status]
msgid "Completed"
msgstr "Concluído"
#: sabnzbd/skintext.py [PP status] # sabnzbd/skintext.py
msgid "Failed"
msgstr "Falhou"
@@ -1924,6 +1950,54 @@ 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"
@@ -2741,6 +2815,36 @@ msgstr ""
"Lista de extensões de arquivo que devem ser excluídos após o download.<br "
"/>Por exemplo: <b>nfo</b> ou <b>nfo, sfv</b>"
#: sabnzbd/skintext.py
msgid "History Retention"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Automatically delete completed jobs from History. Beware that Duplicate "
"Detection and some external tools rely on History information."
msgstr ""
#: sabnzbd/skintext.py
msgid "Keep all jobs"
msgstr ""
#: sabnzbd/skintext.py
msgid "Keep maximum number of completed jobs"
msgstr ""
#: sabnzbd/skintext.py
msgid "Keep completed jobs maximum number of days"
msgstr ""
#: sabnzbd/skintext.py
msgid "Do not keep any completed jobs"
msgstr ""
#: sabnzbd/skintext.py
msgid "Jobs"
msgstr ""
#: sabnzbd/skintext.py
msgid "Save Changes"
msgstr "Salvar Alterações"
@@ -2767,10 +2871,6 @@ msgid ""
"improved existing translations here:"
msgstr ""
#: sabnzbd/skintext.py # sabnzbd/skintext.py
msgid "API Key"
msgstr "Chave API"
#: sabnzbd/skintext.py
msgid "This key will give 3rd party programs full access to SABnzbd."
msgstr "Esta chave dará a programas de terceiros pleno acesso ao SABnzbd."
@@ -3073,14 +3173,18 @@ msgid ""
"items in your History)"
msgstr ""
#: sabnzbd/skintext.py [Three way switch for duplicates]
#: sabnzbd/skintext.py [Four way switch for duplicates]
msgid "Discard"
msgstr "Descartar"
#: sabnzbd/skintext.py [Three way switch for duplicates]
#: sabnzbd/skintext.py [Four way switch for duplicates]
msgid "Fail job (move to History)"
msgstr ""
#: sabnzbd/skintext.py [Four way switch for duplicates]
msgid "Tag job"
msgstr ""
#: sabnzbd/skintext.py [Three way switch for encrypted posts]
msgid "Abort"
msgstr "Cancelar"
@@ -3133,6 +3237,16 @@ 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"
@@ -3182,10 +3296,6 @@ msgstr "Ordernar por Idade"
msgid "Automatically sort items by (average) age."
msgstr "Classificar automaticamente os itens por (média de) idade."
#: sabnzbd/skintext.py
msgid "Direct Unpack"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Posts will be paused untill they are at least this age. Setting job priority "
@@ -3364,14 +3474,7 @@ msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Indexers can supply rating information when a job is added and SABnzbd can "
"report to the indexer if a job couldn't be completed. Depending on your "
"indexer, the API key setting can be left blank."
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"This key provides identity to indexer. Check your profile on the indexer's "
"website."
"report to the indexer if a job couldn't be completed."
msgstr ""
#: sabnzbd/skintext.py
@@ -3724,10 +3827,6 @@ msgstr "Habilitar Growl"
msgid "Send notifications to Growl"
msgstr "Enviar notificações ao Growl"
#: sabnzbd/skintext.py [Address of Growl server]
msgid "Server address"
msgstr "Endereço do servidor"
#: sabnzbd/skintext.py [Don't translate "Growl"]
msgid "Only use for remote Growl server (host:port)"
msgstr "Utilize apenas para servidor remoto Growl (host: porta)"
@@ -4277,6 +4376,10 @@ msgstr "Carregando"
msgid "articles"
msgstr "artigos"
#: sabnzbd/skintext.py
msgid "Rename"
msgstr "Renomear"
#: sabnzbd/skintext.py # sabnzbd/skintext.py
msgid "Queue repair"
msgstr "Reparação da fila"
@@ -4776,7 +4879,7 @@ msgstr "Falha ao renomear arquivo similar: %s para %s"
msgid "Server name does not resolve"
msgstr "Nome de servidor não encontrado"
#: sabnzbd/urlgrabber.py # sabnzbd/urlgrabber.py
#: sabnzbd/urlgrabber.py
msgid "Unauthorized access"
msgstr "Acesso não autorizado"
@@ -5215,9 +5318,6 @@ msgstr "A busca da URL falhou; %s"
#~ msgid "Left"
#~ msgstr "Restantes"
#~ msgid "Rename"
#~ msgstr "Renomear"
#~ msgid "Open Source URL"
#~ msgstr "Abrir URL de Origem"

View File

@@ -7,15 +7,15 @@ msgid ""
msgstr ""
"Project-Id-Version: sabnzbd\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2017-07-17 18:42+0000\n"
"POT-Creation-Date: 2017-08-06 09:51+0000\n"
"PO-Revision-Date: 2016-07-29 16:20+0000\n"
"Last-Translator: nicusor <Unknown>\n"
"Language-Team: Romanian <ro@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2017-07-18 05:27+0000\n"
"X-Generator: Launchpad (build 18419)\n"
"X-Launchpad-Export-Date: 2017-08-07 05:53+0000\n"
"X-Generator: Launchpad (build 18441)\n"
#: SABnzbd.py [Error message]
msgid "Failed to start web-interface"
@@ -104,7 +104,7 @@ msgid "Error"
msgstr "Eroare"
#: SABnzbd.py # sabnzbd/interface.py # sabnzbd/interface.py
#: sabnzbd/osxmenu.py
#: sabnzbd/osxmenu.py # sabnzbd/wizard.py
msgid "SABnzbd shutdown finished"
msgstr "Închidere SABnzbd terminată"
@@ -435,11 +435,15 @@ msgstr ""
msgid "%s => missing from all servers, discarding"
msgstr "%s => lipsă de pe toate serverele, ignorare"
#: sabnzbd/directunpacker.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py
msgid "Unpacking"
msgstr "Dezarhivare"
#: sabnzbd/directunpacker.py # sabnzbd/directunpacker.py
#: sabnzbd/directunpacker.py # sabnzbd/skintext.py
msgid "Direct Unpack"
msgstr ""
#: sabnzbd/directunpacker.py # sabnzbd/skintext.py [PP status]
#: sabnzbd/skintext.py [History: job status]
msgid "Completed"
msgstr "Finalizat"
#: sabnzbd/directunpacker.py # sabnzbd/newsunpack.py
msgid "Unpacked %s files/folders in %s"
@@ -652,7 +656,7 @@ msgstr ""
"Autentificare lipsă, vă rugăm să introduceţi numele de utilizator/parola de "
"la Configurare->General în programul dumneavoastră terţ:"
#: sabnzbd/interface.py [Warning message]
#: sabnzbd/interface.py [Warning message] # sabnzbd/skintext.py
msgid ""
"Try our new skin Glitter! Fresh new design that is optimized for desktop and "
"mobile devices. Go to Config -> General to change your skin."
@@ -842,6 +846,11 @@ msgstr "Încerc unrar cu parola \"%s\""
msgid "Unpacking failed, archive requires a password"
msgstr "Dezarhivare nereuşită, arhiva necesită o parolă"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
msgid "Unpacking"
msgstr "Dezarhivare"
#: sabnzbd/newsunpack.py # sabnzbd/skintext.py [PP phase "unpack"]
msgid "Unpack"
msgstr "Dezarhivează"
@@ -1003,6 +1012,11 @@ msgstr "Se repară"
msgid "[%s] Repaired in %s"
msgstr "[%s] Reparat în %s"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py
msgid "Verifying repair"
msgstr ""
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/notifier.py [Notification]
msgid "Disk full"
@@ -1010,19 +1024,15 @@ msgstr "Disc plin"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
msgid "Verifying"
msgstr "Se verifică"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/skintext.py [PP status]
#: sabnzbd/newsunpack.py # sabnzbd/skintext.py [PP status]
msgid "Checking"
msgstr "Se verifică"
#: sabnzbd/newsunpack.py
msgid "Verifying repair"
msgstr ""
#: sabnzbd/newsunpack.py [Error message]
msgid "Python script \"%s\" does not have execute (+x) permission set"
msgstr ""
@@ -1082,7 +1092,7 @@ msgid "Not available"
msgstr "Indisponibil"
#: sabnzbd/notifier.py # sabnzbd/notifier.py # sabnzbd/notifier.py
#: sabnzbd/notifier.py
#: sabnzbd/notifier.py # sabnzbd/rating.py # sabnzbd/rating.py
msgid "Cannot send, missing required data"
msgstr "Nu pot trimite, informații necesare lipsă"
@@ -1177,7 +1187,7 @@ msgstr "Ignorăm duplicat NZB \"%s\""
msgid "Failing duplicate NZB \"%s\""
msgstr ""
#: sabnzbd/nzbstuff.py
#: sabnzbd/nzbstuff.py # sabnzbd/nzbstuff.py [Warning message]
msgid "Duplicate NZB"
msgstr ""
@@ -1185,6 +1195,12 @@ msgstr ""
msgid "Pausing duplicate NZB \"%s\""
msgstr "Întrerupem duplicat NZB \"%s\""
#: sabnzbd/nzbstuff.py [Warning message]
msgid ""
"%d files with duplicate filenames were discared for \"%s\". Enable "
"\"allow_duplicate_files\" to allow duplicate filenames."
msgstr ""
#: sabnzbd/nzbstuff.py
msgid "Aborted, cannot be completed"
msgstr "Anulat nu poate fi finalizat"
@@ -1284,7 +1300,7 @@ msgid "Limit Speed"
msgstr "Limitare de Viteză"
#: sabnzbd/osxmenu.py # sabnzbd/sabtray.py # sabnzbd/sabtraylinux.py
#: sabnzbd/skintext.py [#: Config->Scheduler] # sabnzbd/skintext.py [Pause downloading] # sabnzbd/skintext.py [Three way switch for duplicates]
#: sabnzbd/skintext.py [#: Config->Scheduler] # sabnzbd/skintext.py [Pause downloading] # sabnzbd/skintext.py [Four way switch for duplicates]
#: sabnzbd/skintext.py [Config->Scheduling]
msgid "Pause"
msgstr "Pauză"
@@ -1631,6 +1647,20 @@ msgstr "Eroare la oprirea sistemului"
msgid "Indexer id (%s) not found for ratings file"
msgstr "Id-ul indexului (%s) nu a fost găsit pentru fișierul de rating"
#: sabnzbd/rating.py # sabnzbd/skintext.py [Address of Growl server]
msgid "Server address"
msgstr "Adresă server"
#: sabnzbd/rating.py # sabnzbd/skintext.py # sabnzbd/skintext.py
msgid "API Key"
msgstr "Cheie API"
#: sabnzbd/rating.py # sabnzbd/skintext.py
msgid ""
"This key provides identity to indexer. Check your profile on the indexer's "
"website."
msgstr ""
#: sabnzbd/rss.py [Error message] # sabnzbd/rss.py
msgid "Incorrect RSS feed description \"%s\""
msgstr "Descriere flux RSS incorectă \"%s\""
@@ -1717,10 +1747,6 @@ msgstr "Servere"
msgid "Failure"
msgstr "Nereuşit"
#: sabnzbd/skintext.py [PP status] # sabnzbd/skintext.py [History: job status]
msgid "Completed"
msgstr "Finalizat"
#: sabnzbd/skintext.py [PP status] # sabnzbd/skintext.py
msgid "Failed"
msgstr "Nereuşit"
@@ -1929,6 +1955,54 @@ 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ă"
@@ -2746,6 +2820,36 @@ msgstr ""
"Listă de extensii fișiere ce trebuie să fie șterse după descărcare.<br />De "
"exemplu: <b>nfo</b> or <b>nfo, sfv</b>"
#: sabnzbd/skintext.py
msgid "History Retention"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Automatically delete completed jobs from History. Beware that Duplicate "
"Detection and some external tools rely on History information."
msgstr ""
#: sabnzbd/skintext.py
msgid "Keep all jobs"
msgstr ""
#: sabnzbd/skintext.py
msgid "Keep maximum number of completed jobs"
msgstr ""
#: sabnzbd/skintext.py
msgid "Keep completed jobs maximum number of days"
msgstr ""
#: sabnzbd/skintext.py
msgid "Do not keep any completed jobs"
msgstr ""
#: sabnzbd/skintext.py
msgid "Jobs"
msgstr ""
#: sabnzbd/skintext.py
msgid "Save Changes"
msgstr "Salvează Modificările"
@@ -2772,10 +2876,6 @@ msgid ""
"improved existing translations here:"
msgstr ""
#: sabnzbd/skintext.py # sabnzbd/skintext.py
msgid "API Key"
msgstr "Cheie API"
#: sabnzbd/skintext.py
msgid "This key will give 3rd party programs full access to SABnzbd."
msgstr "Această cheie va oferi programelor terţe acces deplin la SABnzbd."
@@ -3074,14 +3174,18 @@ msgid ""
"items in your History)"
msgstr ""
#: sabnzbd/skintext.py [Three way switch for duplicates]
#: sabnzbd/skintext.py [Four way switch for duplicates]
msgid "Discard"
msgstr "Ignoră"
#: sabnzbd/skintext.py [Three way switch for duplicates]
#: sabnzbd/skintext.py [Four way switch for duplicates]
msgid "Fail job (move to History)"
msgstr ""
#: sabnzbd/skintext.py [Four way switch for duplicates]
msgid "Tag job"
msgstr ""
#: sabnzbd/skintext.py [Three way switch for encrypted posts]
msgid "Abort"
msgstr "Renunță"
@@ -3132,6 +3236,16 @@ 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"
@@ -3181,10 +3295,6 @@ msgstr "Sortează după Vârstă"
msgid "Automatically sort items by (average) age."
msgstr "Sortează automat obiectele dupa vârstă (medie)."
#: sabnzbd/skintext.py
msgid "Direct Unpack"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Posts will be paused untill they are at least this age. Setting job priority "
@@ -3366,14 +3476,7 @@ msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Indexers can supply rating information when a job is added and SABnzbd can "
"report to the indexer if a job couldn't be completed. Depending on your "
"indexer, the API key setting can be left blank."
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"This key provides identity to indexer. Check your profile on the indexer's "
"website."
"report to the indexer if a job couldn't be completed."
msgstr ""
#: sabnzbd/skintext.py
@@ -3729,10 +3832,6 @@ msgstr "Activează Growl"
msgid "Send notifications to Growl"
msgstr "Trimite notificări Growl"
#: sabnzbd/skintext.py [Address of Growl server]
msgid "Server address"
msgstr "Adresă server"
#: sabnzbd/skintext.py [Don't translate "Growl"]
msgid "Only use for remote Growl server (host:port)"
msgstr "Foloseşte doar pentru server Growl de la distanţă (gazdă:port)"
@@ -4280,6 +4379,10 @@ msgstr "Se încarcă"
msgid "articles"
msgstr "articole"
#: sabnzbd/skintext.py
msgid "Rename"
msgstr "Redenumește"
#: sabnzbd/skintext.py # sabnzbd/skintext.py
msgid "Queue repair"
msgstr "Coadă reparare"
@@ -4782,7 +4885,7 @@ msgstr "Redenumire fişiere similare : %s în %s nereuşită"
msgid "Server name does not resolve"
msgstr "Numele de server nu se rezolvă la DNS"
#: sabnzbd/urlgrabber.py # sabnzbd/urlgrabber.py
#: sabnzbd/urlgrabber.py
msgid "Unauthorized access"
msgstr "Acces neautorizat"
@@ -5196,9 +5299,6 @@ msgstr "Descărcare URL nereuşită; %s"
#~ msgid "Storage"
#~ msgstr "Stocare"
#~ msgid "Rename"
#~ msgstr "Redenumește"
#~ msgid "Plush Options"
#~ msgstr "Opţiuni Plush"

View File

@@ -2,15 +2,15 @@ msgid ""
msgstr ""
"Project-Id-Version: SABnzbd-0.7.x\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-07-17 18:42+0000\n"
"POT-Creation-Date: 2017-08-06 09:51+0000\n"
"PO-Revision-Date: 2013-05-05 14:50+0000\n"
"Last-Translator: Pavel Maryanov <Unknown>\n"
"Language-Team: Russian <gmu@mx.ru>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2017-07-18 05:27+0000\n"
"X-Generator: Launchpad (build 18419)\n"
"X-Launchpad-Export-Date: 2017-08-07 05:54+0000\n"
"X-Generator: Launchpad (build 18441)\n"
"Generated-By: pygettext.py 1.5\n"
#: SABnzbd.py [Error message]
@@ -100,7 +100,7 @@ msgid "Error"
msgstr ""
#: SABnzbd.py # sabnzbd/interface.py # sabnzbd/interface.py
#: sabnzbd/osxmenu.py
#: sabnzbd/osxmenu.py # sabnzbd/wizard.py
msgid "SABnzbd shutdown finished"
msgstr "Завершение работы SABnzbd закончено"
@@ -424,11 +424,15 @@ msgstr ""
msgid "%s => missing from all servers, discarding"
msgstr "%s => отсутствует на всех серверах, отброшен"
#: sabnzbd/directunpacker.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py
msgid "Unpacking"
msgstr "Распаковка"
#: sabnzbd/directunpacker.py # sabnzbd/directunpacker.py
#: sabnzbd/directunpacker.py # sabnzbd/skintext.py
msgid "Direct Unpack"
msgstr ""
#: sabnzbd/directunpacker.py # sabnzbd/skintext.py [PP status]
#: sabnzbd/skintext.py [History: job status]
msgid "Completed"
msgstr "Завершено"
#: sabnzbd/directunpacker.py # sabnzbd/newsunpack.py
msgid "Unpacked %s files/folders in %s"
@@ -642,7 +646,7 @@ msgstr ""
"Отсутствуют учётные данные. Введите в сторонней программе имя пользователя и "
"пароль из раздела «Настройка -> Общие»:"
#: sabnzbd/interface.py [Warning message]
#: sabnzbd/interface.py [Warning message] # sabnzbd/skintext.py
msgid ""
"Try our new skin Glitter! Fresh new design that is optimized for desktop and "
"mobile devices. Go to Config -> General to change your skin."
@@ -829,6 +833,11 @@ msgstr "Попытка распаковки RAR-архива с паролем
msgid "Unpacking failed, archive requires a password"
msgstr "Ошибка распаковки: архив защищён паролем"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
msgid "Unpacking"
msgstr "Распаковка"
#: sabnzbd/newsunpack.py # sabnzbd/skintext.py [PP phase "unpack"]
msgid "Unpack"
msgstr "Распаковать"
@@ -991,6 +1000,11 @@ msgstr "Исправление"
msgid "[%s] Repaired in %s"
msgstr "[%s] Исправлено за %s"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py
msgid "Verifying repair"
msgstr ""
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/notifier.py [Notification]
msgid "Disk full"
@@ -998,19 +1012,15 @@ msgstr ""
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
msgid "Verifying"
msgstr "Проверка"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/skintext.py [PP status]
#: sabnzbd/newsunpack.py # sabnzbd/skintext.py [PP status]
msgid "Checking"
msgstr "Проверка"
#: sabnzbd/newsunpack.py
msgid "Verifying repair"
msgstr ""
#: sabnzbd/newsunpack.py [Error message]
msgid "Python script \"%s\" does not have execute (+x) permission set"
msgstr ""
@@ -1070,7 +1080,7 @@ msgid "Not available"
msgstr ""
#: sabnzbd/notifier.py # sabnzbd/notifier.py # sabnzbd/notifier.py
#: sabnzbd/notifier.py
#: sabnzbd/notifier.py # sabnzbd/rating.py # sabnzbd/rating.py
msgid "Cannot send, missing required data"
msgstr ""
@@ -1162,7 +1172,7 @@ msgstr "Пропущен повторяющийся NZB-файл «%s»"
msgid "Failing duplicate NZB \"%s\""
msgstr ""
#: sabnzbd/nzbstuff.py
#: sabnzbd/nzbstuff.py # sabnzbd/nzbstuff.py [Warning message]
msgid "Duplicate NZB"
msgstr ""
@@ -1170,6 +1180,12 @@ msgstr ""
msgid "Pausing duplicate NZB \"%s\""
msgstr "Приостановлен повторяющийся NZB-файл «%s»"
#: sabnzbd/nzbstuff.py [Warning message]
msgid ""
"%d files with duplicate filenames were discared for \"%s\". Enable "
"\"allow_duplicate_files\" to allow duplicate filenames."
msgstr ""
#: sabnzbd/nzbstuff.py
msgid "Aborted, cannot be completed"
msgstr ""
@@ -1269,7 +1285,7 @@ msgid "Limit Speed"
msgstr "Ограничение скорости"
#: sabnzbd/osxmenu.py # sabnzbd/sabtray.py # sabnzbd/sabtraylinux.py
#: sabnzbd/skintext.py [#: Config->Scheduler] # sabnzbd/skintext.py [Pause downloading] # sabnzbd/skintext.py [Three way switch for duplicates]
#: sabnzbd/skintext.py [#: Config->Scheduler] # sabnzbd/skintext.py [Pause downloading] # sabnzbd/skintext.py [Four way switch for duplicates]
#: sabnzbd/skintext.py [Config->Scheduling]
msgid "Pause"
msgstr "Приостановить"
@@ -1617,6 +1633,20 @@ msgstr "Не удалось завершить работу системы"
msgid "Indexer id (%s) not found for ratings file"
msgstr ""
#: sabnzbd/rating.py # sabnzbd/skintext.py [Address of Growl server]
msgid "Server address"
msgstr "Адрес сервера"
#: sabnzbd/rating.py # sabnzbd/skintext.py # sabnzbd/skintext.py
msgid "API Key"
msgstr "Ключ API"
#: sabnzbd/rating.py # sabnzbd/skintext.py
msgid ""
"This key provides identity to indexer. Check your profile on the indexer's "
"website."
msgstr ""
#: sabnzbd/rss.py [Error message] # sabnzbd/rss.py
msgid "Incorrect RSS feed description \"%s\""
msgstr "Неправильное описание RSS-ленты «%s»"
@@ -1703,10 +1733,6 @@ msgstr "Серверы"
msgid "Failure"
msgstr "Сбой"
#: sabnzbd/skintext.py [PP status] # sabnzbd/skintext.py [History: job status]
msgid "Completed"
msgstr "Завершено"
#: sabnzbd/skintext.py [PP status] # sabnzbd/skintext.py
msgid "Failed"
msgstr "Ошибка"
@@ -1915,6 +1941,54 @@ 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 "День месяца"
@@ -2728,6 +2802,36 @@ msgid ""
"example: <b>nfo</b> or <b>nfo, sfv</b>"
msgstr ""
#: sabnzbd/skintext.py
msgid "History Retention"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Automatically delete completed jobs from History. Beware that Duplicate "
"Detection and some external tools rely on History information."
msgstr ""
#: sabnzbd/skintext.py
msgid "Keep all jobs"
msgstr ""
#: sabnzbd/skintext.py
msgid "Keep maximum number of completed jobs"
msgstr ""
#: sabnzbd/skintext.py
msgid "Keep completed jobs maximum number of days"
msgstr ""
#: sabnzbd/skintext.py
msgid "Do not keep any completed jobs"
msgstr ""
#: sabnzbd/skintext.py
msgid "Jobs"
msgstr ""
#: sabnzbd/skintext.py
msgid "Save Changes"
msgstr "Сохранить изменения"
@@ -2754,10 +2858,6 @@ msgid ""
"improved existing translations here:"
msgstr ""
#: sabnzbd/skintext.py # sabnzbd/skintext.py
msgid "API Key"
msgstr "Ключ API"
#: sabnzbd/skintext.py
msgid "This key will give 3rd party programs full access to SABnzbd."
msgstr ""
@@ -3056,14 +3156,18 @@ msgid ""
"items in your History)"
msgstr ""
#: sabnzbd/skintext.py [Three way switch for duplicates]
#: sabnzbd/skintext.py [Four way switch for duplicates]
msgid "Discard"
msgstr "Отменить"
#: sabnzbd/skintext.py [Three way switch for duplicates]
#: sabnzbd/skintext.py [Four way switch for duplicates]
msgid "Fail job (move to History)"
msgstr ""
#: sabnzbd/skintext.py [Four way switch for duplicates]
msgid "Tag job"
msgstr ""
#: sabnzbd/skintext.py [Three way switch for encrypted posts]
msgid "Abort"
msgstr ""
@@ -3111,6 +3215,16 @@ 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 "Переименовывать папки"
@@ -3160,10 +3274,6 @@ msgstr "Сортировать по возрасту"
msgid "Automatically sort items by (average) age."
msgstr "Автоматически сортировать элементы по (среднему) возрасту"
#: sabnzbd/skintext.py
msgid "Direct Unpack"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Posts will be paused untill they are at least this age. Setting job priority "
@@ -3341,14 +3451,7 @@ msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Indexers can supply rating information when a job is added and SABnzbd can "
"report to the indexer if a job couldn't be completed. Depending on your "
"indexer, the API key setting can be left blank."
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"This key provides identity to indexer. Check your profile on the indexer's "
"website."
"report to the indexer if a job couldn't be completed."
msgstr ""
#: sabnzbd/skintext.py
@@ -3707,10 +3810,6 @@ msgstr "Использовать Growl"
msgid "Send notifications to Growl"
msgstr "Отправлять уведомления в Growl"
#: sabnzbd/skintext.py [Address of Growl server]
msgid "Server address"
msgstr "Адрес сервера"
#: sabnzbd/skintext.py [Don't translate "Growl"]
msgid "Only use for remote Growl server (host:port)"
msgstr "Используется только для удалённого сервера Growl (адрес:порт)"
@@ -4258,6 +4357,10 @@ msgstr ""
msgid "articles"
msgstr ""
#: sabnzbd/skintext.py
msgid "Rename"
msgstr "Переименовать"
#: sabnzbd/skintext.py # sabnzbd/skintext.py
msgid "Queue repair"
msgstr "Исправление очереди"
@@ -4759,7 +4862,7 @@ msgstr "Не удалось переименовать похожий файл:
msgid "Server name does not resolve"
msgstr ""
#: sabnzbd/urlgrabber.py # sabnzbd/urlgrabber.py
#: sabnzbd/urlgrabber.py
msgid "Unauthorized access"
msgstr ""
@@ -5215,9 +5318,6 @@ msgstr "Не удалось загрузить URL: %s"
#~ msgid "Pause for 24 hours"
#~ msgstr "Приостановить на 24 часа"
#~ msgid "Rename"
#~ msgstr "Переименовать"
#~ msgid "Left"
#~ msgstr "осталось"

View File

@@ -7,15 +7,15 @@ msgid ""
msgstr ""
"Project-Id-Version: sabnzbd\n"
"Report-Msgid-Bugs-To: ОZZII <ozzii.translate@gmail.com>\n"
"POT-Creation-Date: 2017-07-17 18:42+0000\n"
"POT-Creation-Date: 2017-08-06 09:51+0000\n"
"PO-Revision-Date: 2015-12-28 10:25+0000\n"
"Last-Translator: Safihre <safihre@sabnzbd.org>\n"
"Language-Team: Serbian <sr@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2017-07-18 05:27+0000\n"
"X-Generator: Launchpad (build 18419)\n"
"X-Launchpad-Export-Date: 2017-08-07 05:54+0000\n"
"X-Generator: Launchpad (build 18441)\n"
#: SABnzbd.py [Error message]
msgid "Failed to start web-interface"
@@ -102,7 +102,7 @@ msgid "Error"
msgstr "Грeшкa"
#: SABnzbd.py # sabnzbd/interface.py # sabnzbd/interface.py
#: sabnzbd/osxmenu.py
#: sabnzbd/osxmenu.py # sabnzbd/wizard.py
msgid "SABnzbd shutdown finished"
msgstr "Гашење SABnzbd је завршено"
@@ -428,11 +428,15 @@ msgstr ""
msgid "%s => missing from all servers, discarding"
msgstr "%s => фали на свим серверима, одбацивање"
#: sabnzbd/directunpacker.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py
msgid "Unpacking"
msgstr "Распакивање"
#: sabnzbd/directunpacker.py # sabnzbd/directunpacker.py
#: sabnzbd/directunpacker.py # sabnzbd/skintext.py
msgid "Direct Unpack"
msgstr ""
#: sabnzbd/directunpacker.py # sabnzbd/skintext.py [PP status]
#: sabnzbd/skintext.py [History: job status]
msgid "Completed"
msgstr "Завршено"
#: sabnzbd/directunpacker.py # sabnzbd/newsunpack.py
msgid "Unpacked %s files/folders in %s"
@@ -642,7 +646,7 @@ msgstr ""
"Недостаје аутентификација, унети у спољни програм име/лозинку из Подешавања-"
">Опште:"
#: sabnzbd/interface.py [Warning message]
#: sabnzbd/interface.py [Warning message] # sabnzbd/skintext.py
msgid ""
"Try our new skin Glitter! Fresh new design that is optimized for desktop and "
"mobile devices. Go to Config -> General to change your skin."
@@ -831,6 +835,11 @@ msgstr "Proba raspakivanja sa lozinkom \"%s\""
msgid "Unpacking failed, archive requires a password"
msgstr "Neuspešno raspakivanje, arhiva zahteva lozinku"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
msgid "Unpacking"
msgstr "Распакивање"
#: sabnzbd/newsunpack.py # sabnzbd/skintext.py [PP phase "unpack"]
msgid "Unpack"
msgstr "Распакуј"
@@ -992,6 +1001,11 @@ msgstr "Поправљање"
msgid "[%s] Repaired in %s"
msgstr "[%s] Поправљено за %s"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py
msgid "Verifying repair"
msgstr ""
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/notifier.py [Notification]
msgid "Disk full"
@@ -999,19 +1013,15 @@ msgstr "Диск је пун"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
msgid "Verifying"
msgstr "Проверавање"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/skintext.py [PP status]
#: sabnzbd/newsunpack.py # sabnzbd/skintext.py [PP status]
msgid "Checking"
msgstr "Провера"
#: sabnzbd/newsunpack.py
msgid "Verifying repair"
msgstr ""
#: sabnzbd/newsunpack.py [Error message]
msgid "Python script \"%s\" does not have execute (+x) permission set"
msgstr ""
@@ -1071,7 +1081,7 @@ msgid "Not available"
msgstr "Недоступно"
#: sabnzbd/notifier.py # sabnzbd/notifier.py # sabnzbd/notifier.py
#: sabnzbd/notifier.py
#: sabnzbd/notifier.py # sabnzbd/rating.py # sabnzbd/rating.py
msgid "Cannot send, missing required data"
msgstr "Nemoguće poslati, nedostaju obavezni podaci"
@@ -1163,7 +1173,7 @@ msgstr "Игнорисање дуплог NZB-а \"%s\""
msgid "Failing duplicate NZB \"%s\""
msgstr ""
#: sabnzbd/nzbstuff.py
#: sabnzbd/nzbstuff.py # sabnzbd/nzbstuff.py [Warning message]
msgid "Duplicate NZB"
msgstr ""
@@ -1171,6 +1181,12 @@ msgstr ""
msgid "Pausing duplicate NZB \"%s\""
msgstr "Паузирам због дуплог NZB-а \"%s\""
#: sabnzbd/nzbstuff.py [Warning message]
msgid ""
"%d files with duplicate filenames were discared for \"%s\". Enable "
"\"allow_duplicate_files\" to allow duplicate filenames."
msgstr ""
#: sabnzbd/nzbstuff.py
msgid "Aborted, cannot be completed"
msgstr "Поништено, не може да се заврши"
@@ -1270,7 +1286,7 @@ msgid "Limit Speed"
msgstr "Ограничење брзине"
#: sabnzbd/osxmenu.py # sabnzbd/sabtray.py # sabnzbd/sabtraylinux.py
#: sabnzbd/skintext.py [#: Config->Scheduler] # sabnzbd/skintext.py [Pause downloading] # sabnzbd/skintext.py [Three way switch for duplicates]
#: sabnzbd/skintext.py [#: Config->Scheduler] # sabnzbd/skintext.py [Pause downloading] # sabnzbd/skintext.py [Four way switch for duplicates]
#: sabnzbd/skintext.py [Config->Scheduling]
msgid "Pause"
msgstr "Пауза"
@@ -1611,6 +1627,20 @@ msgstr "Greška pri gašenju sistema"
msgid "Indexer id (%s) not found for ratings file"
msgstr "Indekser id (%s) nije pronađen za datoteku ocenjivanja"
#: sabnzbd/rating.py # sabnzbd/skintext.py [Address of Growl server]
msgid "Server address"
msgstr "Адреса сервера"
#: sabnzbd/rating.py # sabnzbd/skintext.py # sabnzbd/skintext.py
msgid "API Key"
msgstr "API кључ"
#: sabnzbd/rating.py # sabnzbd/skintext.py
msgid ""
"This key provides identity to indexer. Check your profile on the indexer's "
"website."
msgstr ""
#: sabnzbd/rss.py [Error message] # sabnzbd/rss.py
msgid "Incorrect RSS feed description \"%s\""
msgstr "Погрешан опис RSS фида \"%s\""
@@ -1697,10 +1727,6 @@ msgstr "Сервери"
msgid "Failure"
msgstr "Грешка"
#: sabnzbd/skintext.py [PP status] # sabnzbd/skintext.py [History: job status]
msgid "Completed"
msgstr "Завршено"
#: sabnzbd/skintext.py [PP status] # sabnzbd/skintext.py
msgid "Failed"
msgstr "Неуспешно"
@@ -1909,6 +1935,54 @@ 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 "Дан у месецу"
@@ -2720,6 +2794,36 @@ msgstr ""
"Листа ектензије за брисање после преузимања.<br />На пример: <b>nfo</b> или "
"<b>nfo, sfv</b>"
#: sabnzbd/skintext.py
msgid "History Retention"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Automatically delete completed jobs from History. Beware that Duplicate "
"Detection and some external tools rely on History information."
msgstr ""
#: sabnzbd/skintext.py
msgid "Keep all jobs"
msgstr ""
#: sabnzbd/skintext.py
msgid "Keep maximum number of completed jobs"
msgstr ""
#: sabnzbd/skintext.py
msgid "Keep completed jobs maximum number of days"
msgstr ""
#: sabnzbd/skintext.py
msgid "Do not keep any completed jobs"
msgstr ""
#: sabnzbd/skintext.py
msgid "Jobs"
msgstr ""
#: sabnzbd/skintext.py
msgid "Save Changes"
msgstr "Сачувај промене"
@@ -2746,10 +2850,6 @@ msgid ""
"improved existing translations here:"
msgstr ""
#: sabnzbd/skintext.py # sabnzbd/skintext.py
msgid "API Key"
msgstr "API кључ"
#: sabnzbd/skintext.py
msgid "This key will give 3rd party programs full access to SABnzbd."
msgstr "Овај кључ допушта пун приступ SABnzbd-а другим програмима."
@@ -3049,14 +3149,18 @@ msgid ""
"items in your History)"
msgstr ""
#: sabnzbd/skintext.py [Three way switch for duplicates]
#: sabnzbd/skintext.py [Four way switch for duplicates]
msgid "Discard"
msgstr "Одбаци"
#: sabnzbd/skintext.py [Three way switch for duplicates]
#: sabnzbd/skintext.py [Four way switch for duplicates]
msgid "Fail job (move to History)"
msgstr ""
#: sabnzbd/skintext.py [Four way switch for duplicates]
msgid "Tag job"
msgstr ""
#: sabnzbd/skintext.py [Three way switch for encrypted posts]
msgid "Abort"
msgstr "Прекини"
@@ -3107,6 +3211,16 @@ 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 "Упали преименовање фасцикле"
@@ -3155,10 +3269,6 @@ msgstr "Сортирај по старост"
msgid "Automatically sort items by (average) age."
msgstr "Аутоматско сортирај ставке по старост (просек)."
#: sabnzbd/skintext.py
msgid "Direct Unpack"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Posts will be paused untill they are at least this age. Setting job priority "
@@ -3335,14 +3445,7 @@ msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Indexers can supply rating information when a job is added and SABnzbd can "
"report to the indexer if a job couldn't be completed. Depending on your "
"indexer, the API key setting can be left blank."
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"This key provides identity to indexer. Check your profile on the indexer's "
"website."
"report to the indexer if a job couldn't be completed."
msgstr ""
#: sabnzbd/skintext.py
@@ -3693,10 +3796,6 @@ msgstr "Упали „Growl“"
msgid "Send notifications to Growl"
msgstr "Пошаљи обавештења у „Growl“"
#: sabnzbd/skintext.py [Address of Growl server]
msgid "Server address"
msgstr "Адреса сервера"
#: sabnzbd/skintext.py [Don't translate "Growl"]
msgid "Only use for remote Growl server (host:port)"
msgstr "Користи само удаљен „Growl“ сервер (хост:порт)"
@@ -4245,6 +4344,10 @@ msgstr "Учитавам"
msgid "articles"
msgstr "artikli"
#: sabnzbd/skintext.py
msgid "Rename"
msgstr "Преименуј"
#: sabnzbd/skintext.py # sabnzbd/skintext.py
msgid "Queue repair"
msgstr "Поправљење реда"
@@ -4742,7 +4845,7 @@ msgstr "Неуспешно преименовање сличне датотек
msgid "Server name does not resolve"
msgstr "Ime servera se ne može odrediti"
#: sabnzbd/urlgrabber.py # sabnzbd/urlgrabber.py
#: sabnzbd/urlgrabber.py
msgid "Unauthorized access"
msgstr "Neautorizovan pristup"
@@ -4817,9 +4920,6 @@ msgstr "Погрешно учитавање УРЛ-а; %s"
#~ msgid "Plush Options"
#~ msgstr "Опције Plush"
#~ msgid "Rename"
#~ msgstr "Преименуј"
#~ msgid "Pause for 12 hours"
#~ msgstr "Паузирај 12 сати"

View File

@@ -7,15 +7,15 @@ msgid ""
msgstr ""
"Project-Id-Version: sabnzbd\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2017-07-17 18:42+0000\n"
"POT-Creation-Date: 2017-08-06 09:51+0000\n"
"PO-Revision-Date: 2016-02-20 20:34+0000\n"
"Last-Translator: shypike <Unknown>\n"
"Language-Team: Swedish <sv@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2017-07-18 05:27+0000\n"
"X-Generator: Launchpad (build 18419)\n"
"X-Launchpad-Export-Date: 2017-08-07 05:54+0000\n"
"X-Generator: Launchpad (build 18441)\n"
#: SABnzbd.py [Error message]
msgid "Failed to start web-interface"
@@ -102,7 +102,7 @@ msgid "Error"
msgstr "Fel"
#: SABnzbd.py # sabnzbd/interface.py # sabnzbd/interface.py
#: sabnzbd/osxmenu.py
#: sabnzbd/osxmenu.py # sabnzbd/wizard.py
msgid "SABnzbd shutdown finished"
msgstr "SABnzbd nedstängning utförd."
@@ -429,11 +429,15 @@ msgstr ""
msgid "%s => missing from all servers, discarding"
msgstr "%s => saknas från alla servrar, kastar"
#: sabnzbd/directunpacker.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py
msgid "Unpacking"
msgstr "Packar upp"
#: sabnzbd/directunpacker.py # sabnzbd/directunpacker.py
#: sabnzbd/directunpacker.py # sabnzbd/skintext.py
msgid "Direct Unpack"
msgstr ""
#: sabnzbd/directunpacker.py # sabnzbd/skintext.py [PP status]
#: sabnzbd/skintext.py [History: job status]
msgid "Completed"
msgstr "Färdig"
#: sabnzbd/directunpacker.py # sabnzbd/newsunpack.py
msgid "Unpacked %s files/folders in %s"
@@ -645,7 +649,7 @@ msgstr ""
"Autentisering saknas, ange användarnamn / lösenord från Konfiguration-> "
"Allmänt i ditt tredjepartsprogram:"
#: sabnzbd/interface.py [Warning message]
#: sabnzbd/interface.py [Warning message] # sabnzbd/skintext.py
msgid ""
"Try our new skin Glitter! Fresh new design that is optimized for desktop and "
"mobile devices. Go to Config -> General to change your skin."
@@ -835,6 +839,11 @@ msgstr "Försöker att packa upp med lösenord %s"
msgid "Unpacking failed, archive requires a password"
msgstr "Uppackning misslyckades, arkivet kräver lösenord"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
msgid "Unpacking"
msgstr "Packar upp"
#: sabnzbd/newsunpack.py # sabnzbd/skintext.py [PP phase "unpack"]
msgid "Unpack"
msgstr "Packa upp"
@@ -997,6 +1006,11 @@ msgstr "Reparerar"
msgid "[%s] Repaired in %s"
msgstr "[%s] Reparerad i %s"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py
msgid "Verifying repair"
msgstr ""
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/notifier.py [Notification]
msgid "Disk full"
@@ -1004,19 +1018,15 @@ msgstr "Disken är full"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
msgid "Verifying"
msgstr "Verifierar"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/skintext.py [PP status]
#: sabnzbd/newsunpack.py # sabnzbd/skintext.py [PP status]
msgid "Checking"
msgstr "Kontrollerar"
#: sabnzbd/newsunpack.py
msgid "Verifying repair"
msgstr ""
#: sabnzbd/newsunpack.py [Error message]
msgid "Python script \"%s\" does not have execute (+x) permission set"
msgstr ""
@@ -1076,7 +1086,7 @@ msgid "Not available"
msgstr "Ej tillgänglig"
#: sabnzbd/notifier.py # sabnzbd/notifier.py # sabnzbd/notifier.py
#: sabnzbd/notifier.py
#: sabnzbd/notifier.py # sabnzbd/rating.py # sabnzbd/rating.py
msgid "Cannot send, missing required data"
msgstr "Kunde inte skicka, saknar nödvändig data"
@@ -1168,7 +1178,7 @@ msgstr "Ignorerar dubblett för NZB \"%s\""
msgid "Failing duplicate NZB \"%s\""
msgstr ""
#: sabnzbd/nzbstuff.py
#: sabnzbd/nzbstuff.py # sabnzbd/nzbstuff.py [Warning message]
msgid "Duplicate NZB"
msgstr ""
@@ -1176,6 +1186,12 @@ msgstr ""
msgid "Pausing duplicate NZB \"%s\""
msgstr "Pausar dubblett för NZB \"%s\""
#: sabnzbd/nzbstuff.py [Warning message]
msgid ""
"%d files with duplicate filenames were discared for \"%s\". Enable "
"\"allow_duplicate_files\" to allow duplicate filenames."
msgstr ""
#: sabnzbd/nzbstuff.py
msgid "Aborted, cannot be completed"
msgstr "Avbrutet, kan inte slutföras"
@@ -1275,7 +1291,7 @@ msgid "Limit Speed"
msgstr "Hastighetsbegränsning"
#: sabnzbd/osxmenu.py # sabnzbd/sabtray.py # sabnzbd/sabtraylinux.py
#: sabnzbd/skintext.py [#: Config->Scheduler] # sabnzbd/skintext.py [Pause downloading] # sabnzbd/skintext.py [Three way switch for duplicates]
#: sabnzbd/skintext.py [#: Config->Scheduler] # sabnzbd/skintext.py [Pause downloading] # sabnzbd/skintext.py [Four way switch for duplicates]
#: sabnzbd/skintext.py [Config->Scheduling]
msgid "Pause"
msgstr "Pausa"
@@ -1622,6 +1638,20 @@ msgstr "Fel uppstod då systemet skulle stängas"
msgid "Indexer id (%s) not found for ratings file"
msgstr "Index id (%s) inte hittad för betygsfil"
#: sabnzbd/rating.py # sabnzbd/skintext.py [Address of Growl server]
msgid "Server address"
msgstr "Serveradress"
#: sabnzbd/rating.py # sabnzbd/skintext.py # sabnzbd/skintext.py
msgid "API Key"
msgstr "API-nyckel"
#: sabnzbd/rating.py # sabnzbd/skintext.py
msgid ""
"This key provides identity to indexer. Check your profile on the indexer's "
"website."
msgstr ""
#: sabnzbd/rss.py [Error message] # sabnzbd/rss.py
msgid "Incorrect RSS feed description \"%s\""
msgstr "Felaktigt RSS-flödesbeskrivning \"%s\""
@@ -1708,10 +1738,6 @@ msgstr "Servrar"
msgid "Failure"
msgstr "Misslyckades"
#: sabnzbd/skintext.py [PP status] # sabnzbd/skintext.py [History: job status]
msgid "Completed"
msgstr "Färdig"
#: sabnzbd/skintext.py [PP status] # sabnzbd/skintext.py
msgid "Failed"
msgstr "Misslyckades"
@@ -1920,6 +1946,54 @@ 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"
@@ -2734,6 +2808,36 @@ msgstr ""
"Lista av filändelser som skall bli borttagna efter nerladdning.<br/> Till "
"exempel: <b>nfo</b> or <b>nfo, sfv</b>"
#: sabnzbd/skintext.py
msgid "History Retention"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Automatically delete completed jobs from History. Beware that Duplicate "
"Detection and some external tools rely on History information."
msgstr ""
#: sabnzbd/skintext.py
msgid "Keep all jobs"
msgstr ""
#: sabnzbd/skintext.py
msgid "Keep maximum number of completed jobs"
msgstr ""
#: sabnzbd/skintext.py
msgid "Keep completed jobs maximum number of days"
msgstr ""
#: sabnzbd/skintext.py
msgid "Do not keep any completed jobs"
msgstr ""
#: sabnzbd/skintext.py
msgid "Jobs"
msgstr ""
#: sabnzbd/skintext.py
msgid "Save Changes"
msgstr "Spara ändringar"
@@ -2760,10 +2864,6 @@ msgid ""
"improved existing translations here:"
msgstr ""
#: sabnzbd/skintext.py # sabnzbd/skintext.py
msgid "API Key"
msgstr "API-nyckel"
#: sabnzbd/skintext.py
msgid "This key will give 3rd party programs full access to SABnzbd."
msgstr "Denna nyckel ger tredjepartsprogram full tillgång till SABnzbd."
@@ -3061,14 +3161,18 @@ msgid ""
"items in your History)"
msgstr ""
#: sabnzbd/skintext.py [Three way switch for duplicates]
#: sabnzbd/skintext.py [Four way switch for duplicates]
msgid "Discard"
msgstr "Kasta"
#: sabnzbd/skintext.py [Three way switch for duplicates]
#: sabnzbd/skintext.py [Four way switch for duplicates]
msgid "Fail job (move to History)"
msgstr ""
#: sabnzbd/skintext.py [Four way switch for duplicates]
msgid "Tag job"
msgstr ""
#: sabnzbd/skintext.py [Three way switch for encrypted posts]
msgid "Abort"
msgstr "Avbryt"
@@ -3120,6 +3224,16 @@ 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"
@@ -3168,10 +3282,6 @@ msgstr "Sortera efter ålder"
msgid "Automatically sort items by (average) age."
msgstr "Sortera automatiskt efter (medel) ålder."
#: sabnzbd/skintext.py
msgid "Direct Unpack"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Posts will be paused untill they are at least this age. Setting job priority "
@@ -3349,14 +3459,7 @@ msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Indexers can supply rating information when a job is added and SABnzbd can "
"report to the indexer if a job couldn't be completed. Depending on your "
"indexer, the API key setting can be left blank."
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"This key provides identity to indexer. Check your profile on the indexer's "
"website."
"report to the indexer if a job couldn't be completed."
msgstr ""
#: sabnzbd/skintext.py
@@ -3708,10 +3811,6 @@ msgstr "Aktivera Growl"
msgid "Send notifications to Growl"
msgstr "Skicka notis till Growl"
#: sabnzbd/skintext.py [Address of Growl server]
msgid "Server address"
msgstr "Serveradress"
#: sabnzbd/skintext.py [Don't translate "Growl"]
msgid "Only use for remote Growl server (host:port)"
msgstr "Använd endast för extern Growl.server (host:port)"
@@ -4259,6 +4358,10 @@ msgstr "Laddar"
msgid "articles"
msgstr "artiklar"
#: sabnzbd/skintext.py
msgid "Rename"
msgstr ""
#: sabnzbd/skintext.py # sabnzbd/skintext.py
msgid "Queue repair"
msgstr "Köreparation"
@@ -4760,7 +4863,7 @@ msgstr "Det gick inte att döpa om liknande fil: %s till %s"
msgid "Server name does not resolve"
msgstr "Servernamn kunde inte läsas"
#: sabnzbd/urlgrabber.py # sabnzbd/urlgrabber.py
#: sabnzbd/urlgrabber.py
msgid "Unauthorized access"
msgstr "Otillåten åtkomst"

View File

@@ -7,15 +7,15 @@ msgid ""
msgstr ""
"Project-Id-Version: sabnzbd\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2017-07-17 18:42+0000\n"
"POT-Creation-Date: 2017-08-06 09:51+0000\n"
"PO-Revision-Date: 2017-06-22 07:06+0000\n"
"Last-Translator: Safihre <safihre@sabnzbd.org>\n"
"Language-Team: Chinese (Simplified) <zh_CN@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2017-07-18 05:27+0000\n"
"X-Generator: Launchpad (build 18419)\n"
"X-Launchpad-Export-Date: 2017-08-07 05:54+0000\n"
"X-Generator: Launchpad (build 18441)\n"
#: SABnzbd.py [Error message]
msgid "Failed to start web-interface"
@@ -100,7 +100,7 @@ msgid "Error"
msgstr "错误"
#: SABnzbd.py # sabnzbd/interface.py # sabnzbd/interface.py
#: sabnzbd/osxmenu.py
#: sabnzbd/osxmenu.py # sabnzbd/wizard.py
msgid "SABnzbd shutdown finished"
msgstr "SABnzbd 关闭完成"
@@ -423,11 +423,15 @@ msgstr "检测到 UUencode但是仅有 yEnc 编码受支持 [%s]"
msgid "%s => missing from all servers, discarding"
msgstr "%s => 所有服务器均缺失,正在舍弃"
#: sabnzbd/directunpacker.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py
msgid "Unpacking"
msgstr "正在解压"
#: sabnzbd/directunpacker.py # sabnzbd/directunpacker.py
#: sabnzbd/directunpacker.py # sabnzbd/skintext.py
msgid "Direct Unpack"
msgstr ""
#: sabnzbd/directunpacker.py # sabnzbd/skintext.py [PP status]
#: sabnzbd/skintext.py [History: job status]
msgid "Completed"
msgstr "完成"
#: sabnzbd/directunpacker.py # sabnzbd/newsunpack.py
msgid "Unpacked %s files/folders in %s"
@@ -632,7 +636,7 @@ msgid ""
"into your 3rd party program:"
msgstr "缺身份认证信息,请在第三方程序中输入“配置”->“常规”中的用户名/密码:"
#: sabnzbd/interface.py [Warning message]
#: sabnzbd/interface.py [Warning message] # sabnzbd/skintext.py
msgid ""
"Try our new skin Glitter! Fresh new design that is optimized for desktop and "
"mobile devices. Go to Config -> General to change your skin."
@@ -818,6 +822,11 @@ msgstr "正在尝试 unrar使用密码 \"%s\""
msgid "Unpacking failed, archive requires a password"
msgstr "解压失败,压缩文件需要密码"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
msgid "Unpacking"
msgstr "正在解压"
#: sabnzbd/newsunpack.py # sabnzbd/skintext.py [PP phase "unpack"]
msgid "Unpack"
msgstr "解压"
@@ -977,6 +986,11 @@ msgstr "正在修复"
msgid "[%s] Repaired in %s"
msgstr "[%s] 已修复,耗时 %s"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py
msgid "Verifying repair"
msgstr ""
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/notifier.py [Notification]
msgid "Disk full"
@@ -984,19 +998,15 @@ msgstr "磁盘空间已满"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
msgid "Verifying"
msgstr "正在验证"
#: sabnzbd/newsunpack.py # sabnzbd/newsunpack.py
#: sabnzbd/skintext.py [PP status]
#: sabnzbd/newsunpack.py # sabnzbd/skintext.py [PP status]
msgid "Checking"
msgstr "正在检查"
#: sabnzbd/newsunpack.py
msgid "Verifying repair"
msgstr ""
#: sabnzbd/newsunpack.py [Error message]
msgid "Python script \"%s\" does not have execute (+x) permission set"
msgstr "Python 脚本 \"%s\" 不具有执行 (+x) 权限"
@@ -1056,7 +1066,7 @@ msgid "Not available"
msgstr "不可用"
#: sabnzbd/notifier.py # sabnzbd/notifier.py # sabnzbd/notifier.py
#: sabnzbd/notifier.py
#: sabnzbd/notifier.py # sabnzbd/rating.py # sabnzbd/rating.py
msgid "Cannot send, missing required data"
msgstr "无法发送,缺少必要的数据"
@@ -1148,7 +1158,7 @@ msgstr "正在忽略重复 NZB \"%s\""
msgid "Failing duplicate NZB \"%s\""
msgstr "失败于重复的 NZB 文件 \"%s\""
#: sabnzbd/nzbstuff.py
#: sabnzbd/nzbstuff.py # sabnzbd/nzbstuff.py [Warning message]
msgid "Duplicate NZB"
msgstr "重复的 NZB 文件"
@@ -1156,6 +1166,12 @@ msgstr "重复的 NZB 文件"
msgid "Pausing duplicate NZB \"%s\""
msgstr "正在暂停重复 NZB \"%s\""
#: sabnzbd/nzbstuff.py [Warning message]
msgid ""
"%d files with duplicate filenames were discared for \"%s\". Enable "
"\"allow_duplicate_files\" to allow duplicate filenames."
msgstr ""
#: sabnzbd/nzbstuff.py
msgid "Aborted, cannot be completed"
msgstr "已中止,无法完成"
@@ -1255,7 +1271,7 @@ msgid "Limit Speed"
msgstr "限速"
#: sabnzbd/osxmenu.py # sabnzbd/sabtray.py # sabnzbd/sabtraylinux.py
#: sabnzbd/skintext.py [#: Config->Scheduler] # sabnzbd/skintext.py [Pause downloading] # sabnzbd/skintext.py [Three way switch for duplicates]
#: sabnzbd/skintext.py [#: Config->Scheduler] # sabnzbd/skintext.py [Pause downloading] # sabnzbd/skintext.py [Four way switch for duplicates]
#: sabnzbd/skintext.py [Config->Scheduling]
msgid "Pause"
msgstr "暂停"
@@ -1595,6 +1611,20 @@ msgstr "关闭系统时出错"
msgid "Indexer id (%s) not found for ratings file"
msgstr "评分文件的索引器 id (%s) 未找到"
#: sabnzbd/rating.py # sabnzbd/skintext.py [Address of Growl server]
msgid "Server address"
msgstr "服务器地址"
#: sabnzbd/rating.py # sabnzbd/skintext.py # sabnzbd/skintext.py
msgid "API Key"
msgstr "API Key"
#: sabnzbd/rating.py # sabnzbd/skintext.py
msgid ""
"This key provides identity to indexer. Check your profile on the indexer's "
"website."
msgstr "这个密钥用来向服务器表明身份。查看您在索引网站上的个人档案。"
#: sabnzbd/rss.py [Error message] # sabnzbd/rss.py
msgid "Incorrect RSS feed description \"%s\""
msgstr "RSS feed 描述不正确 \"%s\""
@@ -1681,10 +1711,6 @@ msgstr "服务器"
msgid "Failure"
msgstr "失败"
#: sabnzbd/skintext.py [PP status] # sabnzbd/skintext.py [History: job status]
msgid "Completed"
msgstr "完成"
#: sabnzbd/skintext.py [PP status] # sabnzbd/skintext.py
msgid "Failed"
msgstr "失败"
@@ -1893,6 +1919,54 @@ 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 "每月特定一天"
@@ -2696,6 +2770,36 @@ msgid ""
"example: <b>nfo</b> or <b>nfo, sfv</b>"
msgstr "下载后应删除的文件扩展名列表。<br />例如: <b>nfo</b> 或 <b>nfo, sfv</b>"
#: sabnzbd/skintext.py
msgid "History Retention"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Automatically delete completed jobs from History. Beware that Duplicate "
"Detection and some external tools rely on History information."
msgstr ""
#: sabnzbd/skintext.py
msgid "Keep all jobs"
msgstr ""
#: sabnzbd/skintext.py
msgid "Keep maximum number of completed jobs"
msgstr ""
#: sabnzbd/skintext.py
msgid "Keep completed jobs maximum number of days"
msgstr ""
#: sabnzbd/skintext.py
msgid "Do not keep any completed jobs"
msgstr ""
#: sabnzbd/skintext.py
msgid "Jobs"
msgstr ""
#: sabnzbd/skintext.py
msgid "Save Changes"
msgstr "保存更改"
@@ -2722,10 +2826,6 @@ msgid ""
"improved existing translations here:"
msgstr "帮助我们来本地化 SABnzbd <br/>您可以在这里来添加未被翻译的文字或者改进现有的翻译:"
#: sabnzbd/skintext.py # sabnzbd/skintext.py
msgid "API Key"
msgstr "API Key"
#: sabnzbd/skintext.py
msgid "This key will give 3rd party programs full access to SABnzbd."
msgstr "该 key 将授予第三方程序 SABnzbd 的完整权限。"
@@ -3002,14 +3102,18 @@ msgid ""
"items in your History)"
msgstr "在剧目中检测相同的剧集 (基于您的历史项目,参照 \"name/season/episode\" 的规则)"
#: sabnzbd/skintext.py [Three way switch for duplicates]
#: sabnzbd/skintext.py [Four way switch for duplicates]
msgid "Discard"
msgstr "舍弃"
#: sabnzbd/skintext.py [Three way switch for duplicates]
#: sabnzbd/skintext.py [Four way switch for duplicates]
msgid "Fail job (move to History)"
msgstr "失败的任务 (移动到历史)"
#: sabnzbd/skintext.py [Four way switch for duplicates]
msgid "Tag job"
msgstr ""
#: sabnzbd/skintext.py [Three way switch for encrypted posts]
msgid "Abort"
msgstr "中止"
@@ -3057,6 +3161,16 @@ 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 "启用文件夹重命名"
@@ -3103,10 +3217,6 @@ msgstr "按发布时间排列"
msgid "Automatically sort items by (average) age."
msgstr "自动按 (平均) 发布时间排列项目。"
#: sabnzbd/skintext.py
msgid "Direct Unpack"
msgstr ""
#: sabnzbd/skintext.py
msgid ""
"Posts will be paused untill they are at least this age. Setting job priority "
@@ -3278,16 +3388,8 @@ msgstr "启用索引集成"
#: sabnzbd/skintext.py
msgid ""
"Indexers can supply rating information when a job is added and SABnzbd can "
"report to the indexer if a job couldn't be completed. Depending on your "
"indexer, the API key setting can be left blank."
"report to the indexer if a job couldn't be completed."
msgstr ""
"当任务添加时索引服务可提供评分信息。当任务无法完成时SABnzbd 也可发送报告给索引服务。有些时候 API 密钥设定可以留空,取决于索引服务的要求。"
#: sabnzbd/skintext.py
msgid ""
"This key provides identity to indexer. Check your profile on the indexer's "
"website."
msgstr "这个密钥用来向服务器表明身份。查看您在索引网站上的个人档案。"
#: sabnzbd/skintext.py
msgid "Enable Filtering"
@@ -3636,10 +3738,6 @@ msgstr "启用 Growl"
msgid "Send notifications to Growl"
msgstr "将通知发送到 Growl"
#: sabnzbd/skintext.py [Address of Growl server]
msgid "Server address"
msgstr "服务器地址"
#: sabnzbd/skintext.py [Don't translate "Growl"]
msgid "Only use for remote Growl server (host:port)"
msgstr "仅当使用远程 Growl 服务器时需要 (主机:端口)"
@@ -4186,6 +4284,10 @@ msgstr "正在加载"
msgid "articles"
msgstr "篇文章"
#: sabnzbd/skintext.py
msgid "Rename"
msgstr "重命名"
#: sabnzbd/skintext.py # sabnzbd/skintext.py
msgid "Queue repair"
msgstr "队列修复"
@@ -4679,7 +4781,7 @@ msgstr "重命名相似文件失败: %s 为 %s"
msgid "Server name does not resolve"
msgstr "服务器名无法解析"
#: sabnzbd/urlgrabber.py # sabnzbd/urlgrabber.py
#: sabnzbd/urlgrabber.py
msgid "Unauthorized access"
msgstr "未授权访问"
@@ -5115,9 +5217,6 @@ msgstr "URL 装取失败; %s"
#~ msgid "Pause for 24 hours"
#~ msgstr "暂停 24 小时"
#~ msgid "Rename"
#~ msgstr "重命名"
#~ msgid "Left"
#~ msgstr "剩余"

View File

@@ -108,7 +108,7 @@ import sabnzbd.lang as lang
import sabnzbd.api
import sabnzbd.directunpacker as directunpacker
from sabnzbd.decorators import synchronized, notify_downloader
from sabnzbd.constants import NORMAL_PRIORITY, VALID_ARCHIVES, GIGI, \
from sabnzbd.constants import NORMAL_PRIORITY, VALID_ARCHIVES, \
REPAIR_REQUEST, QUEUE_FILE_NAME, QUEUE_VERSION, QUEUE_FILE_TMPL
import sabnzbd.getipaddress as getipaddress
@@ -843,16 +843,6 @@ def keep_awake():
sleepless.allow_sleep()
def CheckFreeSpace():
""" Check if enough disk space is free, if not pause downloader and send email """
if cfg.download_free() and not sabnzbd.downloader.Downloader.do.paused:
if misc.diskspace(force=True)['download_dir'][1] < cfg.download_free.get_float() / GIGI:
logging.warning(T('Too little diskspace forcing PAUSE'))
# Pause downloader, but don't save, since the disk is almost full!
Downloader.do.pause(save=False)
emailer.diskfull()
################################################################################
# Data IO #
################################################################################

View File

@@ -30,8 +30,8 @@ import hashlib
import sabnzbd
from sabnzbd.misc import get_filepath, sanitize_filename, get_unique_filename, renamer, \
set_permissions, long_path, clip_path, has_win_device, get_all_passwords
from sabnzbd.constants import Status
set_permissions, long_path, clip_path, has_win_device, get_all_passwords, diskspace
from sabnzbd.constants import Status, GIGI
import sabnzbd.cfg as cfg
from sabnzbd.articlecache import ArticleCache
from sabnzbd.postproc import PostProcessor
@@ -69,8 +69,23 @@ class Assembler(Thread):
nzo, nzf = job
if nzf:
sabnzbd.CheckFreeSpace()
# Check if enough disk space is free, if not pause downloader and send email
if diskspace(force=True)['download_dir'][1] < (cfg.download_free.get_float() + nzf.bytes) / GIGI:
# Only warn and email once
if not sabnzbd.downloader.Downloader.do.paused:
logging.warning(T('Too little diskspace forcing PAUSE'))
# Pause downloader, but don't save, since the disk is almost full!
sabnzbd.downloader.Downloader.do.pause(save=False)
sabnzbd.emailer.diskfull()
# Abort all direct unpackers, just to be sure
sabnzbd.directunpacker.abort_all()
# Place job back in queue and wait 30 seconds to hope it gets resolved
self.process(job)
sleep(30)
continue
# Prepare filename
filename = sanitize_filename(nzf.filename)
nzf.filename = filename
dupe = nzo.check_for_dupe(nzf)

View File

@@ -165,6 +165,7 @@ unwanted_extensions = OptionList('misc', 'unwanted_extensions')
action_on_unwanted_extensions = OptionNumber('misc', 'action_on_unwanted_extensions', 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')
@@ -172,7 +173,7 @@ quota_resume = OptionBool('misc', 'quota_resume', False)
quota_period = OptionStr('misc', 'quota_period', 'm')
rating_enable = OptionBool('misc', 'rating_enable', False)
rating_host = OptionStr('misc', 'rating_host', 'api.oznzb.com')
rating_host = OptionStr('misc', 'rating_host')
rating_api_key = OptionStr('misc', 'rating_api_key')
rating_filter_enable = OptionBool('misc', 'rating_filter_enable', False)
rating_filter_abort_audio = OptionNumber('misc', 'rating_filter_abort_audio', 0)

View File

@@ -982,17 +982,21 @@ def get_rss():
# We have to remove non-seperator commas by detecting if they are valid URL's
for feed_key in database['rss']:
feed = database['rss'][feed_key]
# Only modify if we have to, to prevent repeated config-saving
have_new_uri = False
# Create a new corrected list
new_feed_uris = []
for feed_uri in feed.uri():
if new_feed_uris and not urlparse(feed_uri).scheme and urlparse(new_feed_uris[-1]).scheme:
# Current one has no scheme but previous one does, append to previous
new_feed_uris[-1] += '%2C' + feed_uri
have_new_uri = True
continue
# Add full working URL
new_feed_uris.append(feed_uri)
# Set new list
feed.uri.set(new_feed_uris)
if have_new_uri:
feed.uri.set(new_feed_uris)
return database['rss']
except KeyError:

View File

@@ -154,7 +154,8 @@ class HistoryDB(object):
return 'duplicate column name' not in error
else:
logging.error(T('SQL Command Failed, see log'))
logging.debug("SQL: %s", command)
logging.info("SQL: %s", command)
logging.info("Arguments: %s", repr(args))
logging.info("Traceback: ", exc_info=True)
try:
self.con.rollback()
@@ -286,19 +287,20 @@ class HistoryDB(object):
def fetch_history(self, start=None, limit=None, search=None, failed_only=0, categories=None):
""" Return records for specified jobs """
search = convert_search(search)
command_args = [convert_search(search)]
post = ''
if categories:
categories = ['*' if c == 'Default' else c for c in categories]
post = " AND (CATEGORY = '"
post += "' OR CATEGORY = '".join(categories)
post += "' )"
post = " AND (CATEGORY = ?"
post += " OR CATEGORY = ? " * (len(categories)-1)
post += ")"
command_args.extend(categories)
if failed_only:
post += ' AND STATUS = "Failed"'
cmd = 'SELECT COUNT(*) FROM history WHERE name LIKE ?'
res = self.execute(cmd + post, (search,))
res = self.execute(cmd + post, tuple(command_args))
total_items = -1
if res:
try:
@@ -311,9 +313,9 @@ class HistoryDB(object):
if not limit:
limit = total_items
t = (search, start, limit)
command_args.extend([start, limit])
cmd = 'SELECT * FROM history WHERE name LIKE ?'
fetch_ok = self.execute(cmd + post + ' ORDER BY completed desc LIMIT ?, ?', t)
fetch_ok = self.execute(cmd + post + ' ORDER BY completed desc LIMIT ?, ?', tuple(command_args))
if fetch_ok:
items = self.c.fetchall()

View File

@@ -29,9 +29,10 @@ import logging
import sabnzbd
import sabnzbd.cfg as cfg
from sabnzbd.misc import int_conv, clip_path, remove_all, globber, format_time_string, has_win_device
from sabnzbd.encoding import unicoder
from sabnzbd.newsunpack import build_command
from sabnzbd.encoding import TRANS, unicoder
from sabnzbd.newsunpack import build_command, EXTRACTFROM_RE, rar_volumelist
from sabnzbd.postproc import prepare_extraction_path
from sabnzbd.utils.rarfile import RarFile
from sabnzbd.utils.diskspeed import diskspeedmeasure
if sabnzbd.WIN32:
@@ -58,12 +59,13 @@ class DirectUnpacker(threading.Thread):
self.next_file_lock = threading.Condition(threading.RLock())
self.unpack_dir_info = None
self.rarfile_nzf = None
self.cur_setname = None
self.cur_volume = 0
self.total_volumes = {}
self.unpack_time = 0.0
self.success_sets = []
self.success_sets = {}
self.next_sets = []
nzo.direct_unpacker = self
@@ -78,6 +80,7 @@ class DirectUnpacker(threading.Thread):
self.active_instance = None
self.cur_setname = None
self.cur_volume = 0
self.rarfile_nzf = None
def check_requirements(self):
if not cfg.direct_unpack() or self.killed or not self.nzo.unpack or self.nzo.bad_articles or sabnzbd.newsunpack.RAR_PROBLEM:
@@ -146,6 +149,7 @@ class DirectUnpacker(threading.Thread):
linebuf = ''
last_volume_linebuf = ''
unrar_log = []
rarfiles = []
start_time = time.time()
# Need to read char-by-char because there's no newline after new-disk message
@@ -168,6 +172,11 @@ class DirectUnpacker(threading.Thread):
logging.info('Error in DirectUnpack of %s', self.cur_setname)
self.abort()
if linebuf.startswith('Extracting from') and linebuf.endswith('\n'):
filename = TRANS((re.search(EXTRACTFROM_RE, linebuf.strip()).group(1)))
if filename not in rarfiles:
rarfiles.append(filename)
# Did we reach the end?
if linebuf.endswith('All OK'):
# Stop timer and finish
@@ -175,15 +184,17 @@ class DirectUnpacker(threading.Thread):
ACTIVE_UNPACKERS.remove(self)
# Add to success
self.success_sets.append(self.cur_setname)
rarfile_path = os.path.join(self.nzo.downpath, self.rarfile_nzf.filename)
self.success_sets[self.cur_setname] = rar_volumelist(rarfile_path, self.nzo.password, rarfiles)
logging.info('DirectUnpack completed for %s', self.cur_setname)
self.nzo.set_action_line(T('Direct Unpack'), T('Completed'))
# Write current log
# Write current log and clear
unrar_log.append(linebuf.strip())
linebuf = ''
logging.debug('DirectUnpack Unrar output %s', '\n'.join(unrar_log))
unrar_log = []
rarfiles = []
# Are there more files left?
while self.nzo.files and not self.next_sets:
@@ -224,8 +235,15 @@ class DirectUnpacker(threading.Thread):
self.cur_volume += 1
self.nzo.set_action_line(T('Direct Unpack'), self.get_formatted_stats())
logging.info('DirectUnpacked volume %s for %s', self.cur_volume, self.cur_setname)
# If lines did not change and we don't have the next volume, this download is missing files!
if last_volume_linebuf == linebuf and not self.have_next_volume():
logging.info('DirectUnpack failed due to missing files %s', self.cur_setname)
self.abort()
last_volume_linebuf = linebuf
# Show the log
if linebuf.endswith('\n'):
unrar_log.append(linebuf.strip())
linebuf = ''
@@ -236,7 +254,9 @@ class DirectUnpacker(threading.Thread):
# Save information if success
if self.success_sets:
msg = T('Unpacked %s files/folders in %s') % (len(globber(self.unpack_dir_info[0])), format_time_string(self.unpack_time))
# The number is wrong if one_folder, just leave empty
nr_files = '' if self.unpack_dir_info[3] else len(globber(self.unpack_dir_info[0]))
msg = T('Unpacked %s files/folders in %s') % (nr_files, format_time_string(self.unpack_time))
msg = '%s - %s' % (T('Direct Unpack'), msg)
self.nzo.set_unpack_info('Unpack', '[%s] %s' % (unicoder(self.cur_setname), msg))
@@ -285,10 +305,10 @@ class DirectUnpacker(threading.Thread):
action = 'x'
# The first NZF
rarfile_nzf = self.have_next_volume()
self.rarfile_nzf = self.have_next_volume()
# Generate command
rarfile_path = os.path.join(self.nzo.downpath, rarfile_nzf.filename)
rarfile_path = os.path.join(self.nzo.downpath, self.rarfile_nzf.filename)
if sabnzbd.WIN32:
if not has_win_device(rarfile_path):
command = ['%s' % sabnzbd.newsunpack.RAR_COMMAND, action, '-vp', '-idp', '-o+', '-ai', password_command,
@@ -324,6 +344,9 @@ class DirectUnpacker(threading.Thread):
logging.info('Aborting DirectUnpack for %s', self.cur_setname)
self.killed = True
# Save reference to the first rarfile
rarfile_nzf = self.rarfile_nzf
# Abort Unrar
if self.active_instance:
self.active_instance.kill()
@@ -336,12 +359,28 @@ class DirectUnpacker(threading.Thread):
# No new sets
self.next_sets = []
self.success_sets = []
self.success_sets = {}
# Remove files
if self.unpack_dir_info:
extraction_path, _, _, _, _ = self.unpack_dir_info
remove_all(extraction_path, recursive=True)
extraction_path, _, _, one_folder, _ = self.unpack_dir_info
# In case of flat-unpack we need to remove the files manually
if one_folder:
# RarFile can fail for mysterious reasons
try:
rar_contents = RarFile(os.path.join(self.nzo.downpath, rarfile_nzf.filename), all_names=True).filelist()
for rm_file in rar_contents:
# Flat-unpack, so remove foldername from RarFile output
f = os.path.join(extraction_path, os.path.basename(rm_file))
logging.debug('Removing file %s', f)
os.remove(f)
except:
# The user will have to remove it themselves
logging.info('Failed to clean Direct Unpack after aborting %s', rarfile_nzf.filename, exc_info=True)
pass
else:
# We can just remove the whole path
remove_all(extraction_path, recursive=True)
# Remove dir-info
self.unpack_dir_info = None
@@ -369,7 +408,7 @@ def analyze_rar_filename(filename):
return m.group(1), int_conv(m.group(3))
else:
# Detect if first of "rxx" set
if filename.endswith('.rar') and '.part' not in filename:
if filename.endswith('.rar'):
return os.path.splitext(filename)[0], 1
return None, None

View File

@@ -83,6 +83,10 @@ class Server(object):
self.categories = categories
# Temporary deprication warning
if len(categories) > 1 or 'Default' not in categories:
logging.warning('[%s] Server specific categories option is scheduled to be removed in the next release of SABnzbd', self.host)
self.busy_threads = []
self.idle_threads = []
self.active = True

View File

@@ -327,7 +327,7 @@ class MainPage(object):
if not check_login():
raise NeedLogin()
if not cfg.notified_new_skin() and cfg.web_dir() != 'Glitter':
if not cfg.notified_new_skin() and cfg.web_dir() not in ('Glitter', 'Plush'):
logging.warning(T('Try our new skin Glitter! Fresh new design that is optimized for desktop and mobile devices. Go to Config -> General to change your skin.'))
if not cfg.notified_new_skin():
cfg.notified_new_skin.set(1)
@@ -1300,7 +1300,7 @@ class ConfigFolders(object):
##############################################################################
SWITCH_LIST = \
('par_option', 'top_only', 'ssl_ciphers', 'direct_unpack',
('par_option', 'top_only', 'ssl_ciphers', 'direct_unpack', 'enable_meta',
'auto_sort', 'propagation_delay', 'auto_disconnect', 'flat_unpack',
'safe_postproc', 'no_dupes', 'replace_spaces', 'replace_dots',
'ignore_samples', 'pause_on_post_processing', 'nice', 'ionice',

View File

@@ -100,13 +100,22 @@ def safe_lower(txt):
return ''
def safe_fnmatch(f, pattern):
""" fnmatch will fail if the pattern contains any of it's
key characters, like [, ] or !.
"""
try:
return fnmatch.fnmatch(f, pattern)
except re.error:
return False
def globber(path, pattern=u'*'):
""" Return matching base file/folder names in folder `path` """
# Cannot use glob.glob() because it doesn't support Windows long name notation
if os.path.exists(path):
return [f for f in os.listdir(path) if fnmatch.fnmatch(f, pattern)]
else:
return []
return [f for f in os.listdir(path) if safe_fnmatch(f, pattern)]
return []
def globber_full(path, pattern=u'*'):
@@ -114,13 +123,12 @@ def globber_full(path, pattern=u'*'):
# Cannot use glob.glob() because it doesn't support Windows long name notation
if os.path.exists(path):
try:
return [os.path.join(path, f) for f in os.listdir(path) if fnmatch.fnmatch(f, pattern)]
return [os.path.join(path, f) for f in os.listdir(path) if safe_fnmatch(f, pattern)]
except UnicodeDecodeError:
# This happens on Linux when names are incorrectly encoded, retry using a non-Unicode path
path = path.encode('utf-8')
return [os.path.join(path, f) for f in os.listdir(path) if fnmatch.fnmatch(f, pattern)]
else:
return []
return [os.path.join(path, f) for f in os.listdir(path) if safe_fnmatch(f, pattern)]
return []
def cat_to_opts(cat, pp=None, script=None, priority=None):
@@ -843,9 +851,11 @@ def get_cache_limit():
##############################################################################
# Directory operations
# Locked directory operations to avoid problems with simultaneous add/remove
##############################################################################
DIR_LOCK = threading.RLock()
@synchronized(DIR_LOCK)
def get_unique_path(dirpath, n=0, create_dir=True):
""" Determine a unique folder or filename """
@@ -865,6 +875,7 @@ def get_unique_path(dirpath, n=0, create_dir=True):
return get_unique_path(dirpath, n=n + 1, create_dir=create_dir)
@synchronized(DIR_LOCK)
def get_unique_filename(path):
""" Check if path is unique. If not, add number like: "/path/name.NUM.ext". """
num = 1
@@ -877,6 +888,7 @@ def get_unique_filename(path):
return path
@synchronized(DIR_LOCK)
def create_dirs(dirpath):
""" Create directory tree, obeying permissions """
if not os.path.exists(dirpath):
@@ -887,6 +899,7 @@ def create_dirs(dirpath):
return dirpath
@synchronized(DIR_LOCK)
def move_to_path(path, new_path):
""" Move a file to a new path, optionally give unique filename
Return (ok, new_path)
@@ -927,6 +940,7 @@ def move_to_path(path, new_path):
return ok, new_path
@synchronized(DIR_LOCK)
def cleanup_empty_directories(path):
""" Remove all empty folders inside (and including) 'path' """
path = os.path.normpath(path)
@@ -947,6 +961,7 @@ def cleanup_empty_directories(path):
pass
@synchronized(DIR_LOCK)
def get_filepath(path, nzo, filename):
""" Create unique filepath """
# This procedure is only used by the Assembler thread
@@ -983,6 +998,94 @@ def get_filepath(path, nzo, filename):
return fullPath
@synchronized(DIR_LOCK)
def renamer(old, new):
""" Rename file/folder with retries for Win32 """
# Sanitize last part of new name
path, name = os.path.split(new)
# Use the more stringent folder rename to end up with a nicer name,
# but do not trim size
new = os.path.join(path, sanitize_foldername(name, False))
logging.debug('Renaming "%s" to "%s"', old, new)
if sabnzbd.WIN32:
retries = 15
while retries > 0:
# First we try 3 times with os.rename
if retries > 12:
try:
os.rename(old, new)
return
except:
retries -= 1
time.sleep(3)
continue
# Now we try the back-up method
logging.debug('Could not rename, trying move for %s to %s', old, new)
try:
shutil.move(old, new)
return
except WindowsError, err:
logging.debug('Error renaming "%s" to "%s" <%s>', old, new, err)
if err[0] == 32:
logging.debug('Retry rename %s to %s', old, new)
retries -= 1
else:
raise WindowsError(err)
time.sleep(3)
raise WindowsError(err)
else:
shutil.move(old, new)
@synchronized(DIR_LOCK)
def remove_dir(path):
""" Remove directory with retries for Win32 """
logging.debug('Removing dir %s', path)
if sabnzbd.WIN32:
retries = 15
while retries > 0:
try:
os.rmdir(path)
return
except WindowsError, err:
if err[0] == 32:
logging.debug('Retry delete %s', path)
retries -= 1
else:
raise WindowsError(err)
time.sleep(3)
raise WindowsError(err)
else:
os.rmdir(path)
@synchronized(DIR_LOCK)
def remove_all(path, pattern='*', keep_folder=False, recursive=False):
""" Remove folder and all its content (optionally recursive) """
if os.path.exists(path):
files = globber_full(path, pattern)
if pattern == '*' and not sabnzbd.WIN32:
files.extend(globber_full(path, '.*'))
for f in files:
if os.path.isfile(f):
try:
logging.debug('Removing file %s', f)
os.remove(f)
except:
logging.info('Cannot remove file %s', f)
elif recursive:
remove_all(f, pattern, False, True)
if not keep_folder:
try:
logging.debug('Removing dir %s', path)
os.rmdir(path)
except:
logging.info('Cannot remove folder %s', path)
def trim_win_path(path):
""" Make sure Windows path stays below 70 by trimming last part """
if sabnzbd.WIN32 and len(path) > 69:
@@ -1330,91 +1433,6 @@ def ip_extract():
return ips
def renamer(old, new):
""" Rename file/folder with retries for Win32 """
# Sanitize last part of new name
path, name = os.path.split(new)
# Use the more stringent folder rename to end up with a nicer name,
# but do not trim size
new = os.path.join(path, sanitize_foldername(name, False))
logging.debug('Renaming "%s" to "%s"', old, new)
if sabnzbd.WIN32:
retries = 15
while retries > 0:
# First we try 3 times with os.rename
if retries > 12:
try:
os.rename(old, new)
return
except:
retries -= 1
time.sleep(3)
continue
# Now we try the back-up method
logging.debug('Could not rename, trying move for %s to %s', old, new)
try:
shutil.move(old, new)
return
except WindowsError, err:
logging.debug('Error renaming "%s" to "%s" <%s>', old, new, err)
if err[0] == 32:
logging.debug('Retry rename %s to %s', old, new)
retries -= 1
else:
raise WindowsError(err)
time.sleep(3)
raise WindowsError(err)
else:
shutil.move(old, new)
def remove_dir(path):
""" Remove directory with retries for Win32 """
logging.debug('Removing dir %s', path)
if sabnzbd.WIN32:
retries = 15
while retries > 0:
try:
os.rmdir(path)
return
except WindowsError, err:
if err[0] == 32:
logging.debug('Retry delete %s', path)
retries -= 1
else:
raise WindowsError(err)
time.sleep(3)
raise WindowsError(err)
else:
os.rmdir(path)
def remove_all(path, pattern='*', keep_folder=False, recursive=False):
""" Remove folder and all its content (optionally recursive) """
if os.path.exists(path):
files = globber_full(path, pattern)
if pattern == '*' and not sabnzbd.WIN32:
files.extend(globber_full(path, '.*'))
for f in files:
if os.path.isfile(f):
try:
logging.debug('Removing file %s', f)
os.remove(f)
except:
logging.info('Cannot remove file %s', f)
elif recursive:
remove_all(f, pattern, False, True)
if not keep_folder:
try:
logging.debug('Removing dir %s', path)
os.rmdir(path)
except:
logging.info('Cannot remove folder %s', path)
def is_writable(path):
""" Return True is file is writable (also when non-existent) """
if os.path.isfile(path):

View File

@@ -33,7 +33,7 @@ from sabnzbd.encoding import TRANS, UNTRANS, unicoder, platform_encode, deunicod
import sabnzbd.utils.rarfile as rarfile
from sabnzbd.misc import format_time_string, find_on_path, make_script_path, int_conv, \
real_path, globber, globber_full, get_all_passwords, renamer, clip_path, \
has_win_device, calc_age
has_win_device, calc_age, long_path
from sabnzbd.tvsort import SeriesSorter
import sabnzbd.cfg as cfg
from sabnzbd.constants import Status
@@ -226,9 +226,10 @@ def unpack_magic(nzo, workdir, workdir_complete, dele, one_folder, joinables, zi
# First time, ignore anything in workdir_complete
xjoinables, xzips, xrars, xsevens, xts = build_filelists(workdir)
else:
xjoinables, xzips, xrars, xsevens, xts = build_filelists(workdir, workdir_complete)
xjoinables, xzips, xrars, xsevens, xts = build_filelists(workdir, workdir_complete, check_both=dele)
rerun = False
force_rerun = False
newfiles = []
error = 0
new_joins = new_rars = new_zips = new_ts = None
@@ -290,7 +291,14 @@ def unpack_magic(nzo, workdir, workdir_complete, dele, one_folder, joinables, zi
if nzo.reuse and depth == 1 and any(build_filelists(workdir, workdir_complete)):
rerun = True
if rerun and (cfg.enable_recursive() or new_ts or new_joins):
# Double-check that we didn't miss any files in workdir
# But only if dele=True, otherwise of course there will be files left
if rerun and dele and depth == 1 and any(build_filelists(workdir)):
force_rerun = True
# Clear lists to force re-scan of files
xjoinables, xzips, xrars, xsevens, xts = ([], [], [], [], [])
if rerun and (cfg.enable_recursive() or new_ts or new_joins or force_rerun):
z, y = unpack_magic(nzo, workdir, workdir_complete, dele, one_folder,
xjoinables, xzips, xrars, xsevens, xts, depth)
if z:
@@ -483,11 +491,10 @@ def rar_unpack(nzo, workdir, workdir_complete, delete, one_folder, rars):
# Did we already direct-unpack it? Not when recursive-unpacking
if nzo.direct_unpacker and rar_set in nzo.direct_unpacker.success_sets:
logging.info("Set %s completed by DirectUnpack", rar_set)
fail = 0
success = 1
rars = rar_sets[rar_set]
fail = False
success = True
rars = nzo.direct_unpacker.success_sets.pop(rar_set)
newfiles = globber(extraction_path)
nzo.direct_unpacker.success_sets.remove(rar_set)
else:
logging.info("Extracting rarfile %s (belonging to %s) to %s",
rarpath, rar_set, extraction_path)
@@ -496,7 +503,7 @@ def rar_unpack(nzo, workdir, workdir_complete, delete, one_folder, rars):
one_folder, nzo, rar_set, extraction_path)
# Was it aborted?
if not nzo.pp_active:
fail = 1
fail = True
break
success = not fail
except:
@@ -615,8 +622,6 @@ def rar_extract_core(rarfile_path, numrars, one_folder, nzo, setname, extraction
# Get list of all the volumes part of this set
logging.debug("Analyzing rar file ... %s found", rarfile.is_rarfile(rarfile_path))
rarfiles = rarfile.RarFile(rarfile_path).volumelist()
logging.debug("Running unrar %s", command)
p = Popen(command, shell=need_shell, stdin=subprocess.PIPE,
stdout=subprocess.PIPE, stderr=subprocess.STDOUT,
@@ -631,6 +636,7 @@ def rar_extract_core(rarfile_path, numrars, one_folder, nzo, setname, extraction
# Loop over the output from rar!
curr = 0
extracted = []
rarfiles = []
fail = 0
inrecovery = False
lines = []
@@ -653,6 +659,9 @@ def rar_extract_core(rarfile_path, numrars, one_folder, nzo, setname, extraction
lines.append(line)
if line.startswith('Extracting from'):
filename = TRANS((re.search(EXTRACTFROM_RE, line).group(1)))
if filename not in rarfiles:
rarfiles.append(filename)
curr += 1
nzo.set_action_line(T('Unpacking'), '%02d/%02d' % (curr, numrars))
@@ -777,6 +786,9 @@ def rar_extract_core(rarfile_path, numrars, one_folder, nzo, setname, extraction
proc.close()
p.wait()
# Which files did we use to extract this?
rarfiles = rar_volumelist(rarfile_path, password, rarfiles)
logging.debug('UNRAR output %s', '\n'.join(lines))
nzo.fail_msg = ''
msg = T('Unpacked %s files/folders in %s') % (str(len(extracted)), format_time_string(time.time() - start))
@@ -1217,6 +1229,8 @@ def PAR_Verify(parfile, parfile_nzf, nzo, setname, joinables, single=False):
verifytotal = 0
verified = 0
in_verify_repaired = False
# Loop over the output, whee
while 1:
char = proc.read(1)
@@ -1278,6 +1292,9 @@ def PAR_Verify(parfile, parfile_nzf, nzo, setname, joinables, single=False):
format_time_string(time.time() - start))
start = time.time()
verified = 1
# Reset to use them again for verification of repair
verifytotal = 0
verifynum = 0
elif line.startswith('Loading "'):
# Found an extra par2 file. Only the next line will tell whether it's usable
@@ -1369,9 +1386,7 @@ def PAR_Verify(parfile, parfile_nzf, nzo, setname, joinables, single=False):
else:
block_table.pop(block_size)
logging.info('Added %s blocks to %s',
added_blocks, nzo.final_name)
logging.info('Added %s blocks to %s', added_blocks, nzo.final_name)
if not force:
msg = T('Fetching %s blocks...') % str(added_blocks)
@@ -1401,6 +1416,20 @@ def PAR_Verify(parfile, parfile_nzf, nzo, setname, joinables, single=False):
logging.info('Repaired in %s', format_time_string(time.time() - start))
finished = 1
elif verified and line.endswith(('are missing.', 'exist but are damaged.')):
# Files that will later be verified after repair
chunks = line.split()
verifytotal += int(chunks[0])
elif line.startswith('Verifying repaired files'):
in_verify_repaired = True
nzo.set_action_line(T('Verifying repair'), '%02d/%02d' % (verifynum, verifytotal))
elif in_verify_repaired and line.startswith('Target'):
verifynum += 1
if verifynum <= verifytotal:
nzo.set_action_line(T('Verifying repair'), '%02d/%02d' % (verifynum, verifytotal))
elif line.startswith('File:') and line.find('data blocks from') > 0:
m = _RE_BLOCK_FOUND.search(line)
if m:
@@ -1979,6 +2008,7 @@ def userxbit(filename):
xbitset = (rwxbits & userxbit) > 0
return xbitset
def build_command(command):
""" Prepare list from running an external program """
if not sabnzbd.WIN32:
@@ -2030,6 +2060,28 @@ def build_command(command):
return stup, need_shell, command, creationflags
def rar_volumelist(rarfile_path, password, known_volumes):
""" Extract volumes that are part of this rarset
and merge them with existing list, removing duplicates
"""
zf = rarfile.RarFile(rarfile_path)
if password:
try:
# setpassword can fail due to bugs in RarFile
zf.setpassword(password)
except:
pass
zf_volumes = zf.volumelist()
# Remove duplicates
known_volumes_base = [os.path.basename(vol) for vol in known_volumes]
for zf_volume in zf_volumes:
if os.path.basename(zf_volume) not in known_volumes_base:
# Long-path notation just to be sure
known_volumes.append(long_path(zf_volume))
return known_volumes
# Sort the various RAR filename formats properly :\
def rar_sort(a, b):
""" Define sort method for rar file names """
@@ -2046,8 +2098,9 @@ def rar_sort(a, b):
return cmp(a, b)
def build_filelists(workdir, workdir_complete=None, check_rar=True):
def build_filelists(workdir, workdir_complete=None, check_both=False, check_rar=True):
""" Build filelists, if workdir_complete has files, ignore workdir.
Optionally scan both directories.
Optionally test content to establish RAR-ness
"""
sevens, joinables, zips, rars, ts, filelist = ([], [], [], [], [], [])
@@ -2063,7 +2116,7 @@ def build_filelists(workdir, workdir_complete=None, check_rar=True):
# Just skip failing names
pass
if workdir and not filelist:
if workdir and (not filelist or check_both):
for root, dirs, files in os.walk(workdir):
for _file in files:
if '.AppleDouble' not in root and '.DS_Store' not in root:

View File

@@ -42,12 +42,14 @@ from sabnzbd.newsunpack import external_script
from gntp.core import GNTPRegister
from gntp.notifier import GrowlNotifier
import gntp.errors
try:
import Growl
# Detect classic Growl (older than 1.3)
_HAVE_CLASSIC_GROWL = os.path.isfile('/Library/PreferencePanes/Growl.prefPane/Contents/MacOS/Growl')
except ImportError:
_HAVE_CLASSIC_GROWL = False
try:
import warnings
# Make any warnings exceptions, so that pynotify is ignored
@@ -56,6 +58,10 @@ try:
warnings.simplefilter("error")
import pynotify
_HAVE_NTFOSD = True
# Check for working version, not all pynotify are the same
if not hasattr(pynotify, 'init'):
_HAVE_NTFOSD = False
except:
_HAVE_NTFOSD = False

View File

@@ -279,7 +279,7 @@ class NzbFile(TryList):
self.decodetable[partnum] = article
self.import_finished = True
else:
elif not self.nzo.is_gone():
# TEMPORARY ERRORS
if not os.path.exists(os.path.join(self.nzf_id, self.nzo.workpath)):
logging.warning('Article DB file not found %s', self)
@@ -492,6 +492,11 @@ class NzbParser(xml.sax.handler.ContentHandler):
nzo_matches = filter(lambda x: (x.filename == nzf.filename), self.nzo.files)
if nzo_matches:
logging.info('File %s occured twice in NZB, discarding smaller file', nzf.filename)
# Keep some logging how many were duplicates
if 'duplicate_files' not in self.nzo.nzo_info:
self.nzo.nzo_info['duplicate_files'] = 0
self.nzo.nzo_info['duplicate_files'] += 1
# Which is smaller? Current or old one
if nzo_matches[0].bytes >= nzf.bytes:
# Skip this new one
@@ -881,6 +886,10 @@ class NzbObject(TryList):
else:
self.files.sort(cmp=nzf_cmp_name)
# Warn if there were many duplicate files
if 'duplicate_files' in self.nzo_info and self.nzo_info['duplicate_files'] >= 10:
logging.warning(T('%d files with duplicate filenames were discared for "%s". Enable "allow_duplicate_files" to allow duplicate filenames.'), self.nzo_info['duplicate_files'], self.final_name)
# In the hunt for Unwanted Extensions:
# The file with the unwanted extension often is in the first or the last rar file
# So put the last rar immediately after the first rar file so that it gets detected early
@@ -985,8 +994,8 @@ class NzbObject(TryList):
head, vol, block = analyse_par2(name)
if head and matcher(lparset, head.lower()):
xnzf.set_par2(parset, vol, block)
# Don't postpone if all par2 should be kept
if cfg.enable_par_cleanup():
# Don't postpone if all par2 are desired and should be kept
if not(cfg.enable_all_par() and not cfg.enable_par_cleanup()):
self.extrapars[parset].append(xnzf)
self.files.remove(xnzf)
@@ -1346,9 +1355,12 @@ class NzbObject(TryList):
self.set_unpack_info('Download', msg, unique=True)
if self.url:
self.set_unpack_info('Source', self.url, unique=True)
servers = config.get_servers()
if len(self.servercount) > 0:
msgs = ['%s=%sB' % (servers[server].displayname(), to_units(self.servercount[server])) for server in self.servercount if server in servers]
# Sort the servers first
servers = config.get_servers()
server_names = sorted(servers.keys(), key=lambda svr: '%d%02d%s' % (int(not servers[svr].enable()), servers[svr].priority(), servers[svr].displayname().lower()))
msgs = ['%s=%sB' % (servers[server_name].displayname(), to_units(self.servercount[server_name])) for server_name in server_names if server_name in self.servercount]
self.set_unpack_info('Servers', ', '.join(msgs), unique=True)
@synchronized(NZO_LOCK)

View File

@@ -571,7 +571,10 @@ def prepare_extraction_path(nzo):
complete_dir = long_path(complete_dir)
# TV/Movie/Date Renaming code part 1 - detect and construct paths
file_sorter = Sorter(nzo, nzo.cat)
if cfg.enable_meta():
file_sorter = Sorter(nzo, nzo.cat)
else:
file_sorter = Sorter(None, nzo.cat)
complete_dir = file_sorter.detect(nzo.final_name, complete_dir)
if file_sorter.sort_file:
one_folder = False

View File

@@ -271,8 +271,6 @@ class Rating(Thread):
api_key = cfg.rating_api_key()
rating_host = cfg.rating_host()
rating_url = _RATING_URL
if not api_key:
return True
requests = []
_headers = {'User-agent': 'SABnzbd+/%s' % sabnzbd.version.__version__, 'Content-type': 'application/x-www-form-urlencoded'}
@@ -283,8 +281,15 @@ class Rating(Thread):
# Is it an URL or just a HOST?
if host_parsed.path and host_parsed.path != '/':
rating_url = host_parsed.path + '?' + host_parsed.query if host_parsed.query else host_parsed.path
if not rating_host:
_warn('%s: %s' % (T('Cannot send, missing required data'), T('Server address')))
return True
if not api_key:
_warn('%s [%s]: %s - %s' % (T('Cannot send, missing required data'), rating_host, T('API Key'), T('This key provides identity to indexer. Check your profile on the indexer\'s website.')))
return True
if rating.changed & Rating.CHANGED_USER_VIDEO:
requests.append({'m': 'r', 'r': 'videoQuality', 'rn': rating.user_video})
if rating.changed & Rating.CHANGED_USER_AUDIO:

View File

@@ -187,6 +187,7 @@ SKIN_TEXT = {
'ft-newRelease@1' : TT('New release %s available at'), # Used in Footer
# Main page
'useGlitter': TT('Try our new skin Glitter! Fresh new design that is optimized for desktop and mobile devices. Go to Config -> General to change your skin.'),
'shutdownOK?' : TT('Are you sure you want to shutdown SABnzbd?'),
'link-shutdown' : TT('Shutdown'), #: Shutdown SABnzbd
'link-pause' : TT('Pause'), #: Pause downloading
@@ -369,7 +370,7 @@ SKIN_TEXT = {
'history_retention-number' : TT('Keep maximum number of completed jobs'),
'history_retention-days' : TT('Keep completed jobs maximum number of days'),
'history_retention-none' : TT('Do not keep any completed jobs'),
'history_retention-limit': TT('History item limit'),
'history_retention-limit': TT('Jobs'),
'button-saveChanges' : TT('Save Changes'),
'button-restoreDefaults' : TT('Restore Defaults'),
'explain-restoreDefaults' : TT('Reset'),
@@ -459,6 +460,8 @@ SKIN_TEXT = {
'explain-script_can_fail' : TT('When the user script returns a non-zero exit code, the job will be flagged as failed.'),
'opt-new_nzb_on_failure' : TT('On failure, try alternative NZB'),
'explain-new_nzb_on_failure' : TT('Some servers provide an alternative NZB when a download fails.'),
'opt-enable_meta' : TT('Use tags from indexer'),
'explain-enable_meta' : TT('When sorting, use tags from indexer for title, season, episode, etc. Otherwise all naming is derived from the NZB name.'),
'opt-folder_rename' : TT('Enable folder rename'),
'explain-folder_rename' : TT('Use temporary names during post processing. Disable when your system doesn\'t handle that properly.'),
'opt-pre_script' : TT('Pre-queue user script'),
@@ -518,7 +521,7 @@ SKIN_TEXT = {
'opt-fail_hopeless_jobs' : TT('Abort jobs that cannot be completed'),
'explain-fail_hopeless_jobs' : TT('When during download it becomes clear that too much data is missing, abort the job'),
'opt-rating_enable' : TT('Enable Indexer Integration'),
'explain-rating_enable' : TT('Indexers can supply rating information when a job is added and SABnzbd can report to the indexer if a job couldn\'t be completed. Depending on your indexer, the API key setting can be left blank.'),
'explain-rating_enable' : TT('Indexers can supply rating information when a job is added and SABnzbd can report to the indexer if a job couldn\'t be completed.'),
'opt-rating_api_key' : TT('API Key'),
'explain-rating_api_key' : TT('This key provides identity to indexer. Check your profile on the indexer\'s website.'),
'opt-rating_filter_enable' : TT('Enable Filtering'),

View File

@@ -311,9 +311,6 @@ def _analyse(fn, url):
logging.debug('Received nothing from indexer, retry after 60 sec')
return None, fn.msg, True, 60, data
if '.oznzb.com' in url and 'login?' in fn.url:
return None, T('Unauthorized access'), False, 0, data
return fn, fn.msg, False, 0, data

View File

@@ -692,7 +692,7 @@ class RarFile(object):
return [f.filename for f in self.infolist()]
def filelist(self):
'''Return list of file and foldernames in archive.'''
'''Return list of filenames in archive.'''
return [f.filename for f in self.infolist() if not f.isdir()]
def infolist(self):

View File

@@ -95,7 +95,8 @@ def set_bonjour(host=None, port=None):
domain=domain,
host=zhost,
port=int(port),
txtRecord=pybonjour.TXTRecord({'path': '/sabnzbd/'}),
txtRecord=pybonjour.TXTRecord({'path': '/sabnzbd/',
'https': cfg.enable_https()}),
callBack=_zeroconf_callback)
except sabnzbd.utils.pybonjour.BonjourError:
_BONJOUR_OBJECT = None