diff --git a/ISSUES.txt b/ISSUES.txt index 7e6c2e5..28b608e 100644 --- a/ISSUES.txt +++ b/ISSUES.txt @@ -2,7 +2,7 @@ *** Known issues *** ******************************************* -- To prevent unexpectedly large NZBs from eating your quotum you can set +- To prevent unexpectedly large NZBs from eating your download quota you can set the option 'size_limit' in the INI file. Any NZB larger than this size will be set to paused and get a low priority. diff --git a/interfaces/Classic/templates/config_switches.tmpl b/interfaces/Classic/templates/config_switches.tmpl index 6460d23..b06df75 100644 --- a/interfaces/Classic/templates/config_switches.tmpl +++ b/interfaces/Classic/templates/config_switches.tmpl @@ -151,28 +151,28 @@
- $T('opt-quotum_size'):
- $T('explain-quotum_size')
- + $T('opt-quota_size'):
+ $T('explain-quota_size')
+

- $T('opt-quotum_period'):
- $T('explain-quotum_period')
+ $T('opt-quota_period'):
+ $T('explain-quota_period')


- $T('opt-quotum_day'):
- $T('explain-quotum_day')
- + $T('opt-quota_day'):
+ $T('explain-quota_day')
+

- $T('swtag-quotum') -
- $T('explain-quotum_resume')
+ $T('swtag-quota') +
+ $T('explain-quota_resume')

diff --git a/interfaces/Classic/templates/connection_info.tmpl b/interfaces/Classic/templates/connection_info.tmpl index 7bfd606..5c85e81 100644 --- a/interfaces/Classic/templates/connection_info.tmpl +++ b/interfaces/Classic/templates/connection_info.tmpl @@ -6,8 +6,8 @@ - - $T('link-resetQuotum') | + + $T('link-resetQuota') | $T('link-forceDisc') | $T('link-showLog') diff --git a/interfaces/Classic/templates/inc_bottom.tmpl b/interfaces/Classic/templates/inc_bottom.tmpl index c6c1551..b6508ba 100644 --- a/interfaces/Classic/templates/inc_bottom.tmpl +++ b/interfaces/Classic/templates/inc_bottom.tmpl @@ -11,8 +11,8 @@ $msg   - - |   $T('quotum-left'):  $left_quotum ⁄ $quotum    + + |   $T('quota-left'):  $left_quota ⁄ $quota    diff --git a/interfaces/Plush/templates/config_switches.tmpl b/interfaces/Plush/templates/config_switches.tmpl index 5ef8103..ee213f9 100644 --- a/interfaces/Plush/templates/config_switches.tmpl +++ b/interfaces/Plush/templates/config_switches.tmpl @@ -322,49 +322,49 @@
-

$T('swtag-quotum')

+

$T('swtag-quota')

-
-
-
- 0 then "checked=1" else ""#--> /> -
diff --git a/interfaces/Plush/templates/main.tmpl b/interfaces/Plush/templates/main.tmpl index 0fccb6d..e4392b3 100644 --- a/interfaces/Plush/templates/main.tmpl +++ b/interfaces/Plush/templates/main.tmpl @@ -25,7 +25,7 @@
  • $T('menu-queue')
      -
    • $T('link-resetQuotum')
    • +
    • $T('link-resetQuota')
    • $T('link-getBookmarks')
    • $T('button-rssNow')
    • $T('sch-scan_folder')
    • diff --git a/interfaces/Plush/templates/queue.tmpl b/interfaces/Plush/templates/queue.tmpl index 4c930e7..cb50557 100644 --- a/interfaces/Plush/templates/queue.tmpl +++ b/interfaces/Plush/templates/queue.tmpl @@ -15,8 +15,8 @@ // set lower-right queue stats var stats = ''; - - stats += '$left_quotum  ⁄  $quotum $T('quotum-left')  '; + + stats += '$left_quota  ⁄  $quota $T('quota-left')  '; stats += '$mbleft  ⁄  $mb $T('MB') $T('Plush-remaining')'; diff --git a/interfaces/Plush/templates/static/javascripts/plush.js b/interfaces/Plush/templates/static/javascripts/plush.js index 38ad48b..f841a2e 100644 --- a/interfaces/Plush/templates/static/javascripts/plush.js +++ b/interfaces/Plush/templates/static/javascripts/plush.js @@ -271,12 +271,12 @@ jQuery(function($){ }); }); - // Reset Quotum - $('#reset_quotum_now').click(function() { + // Reset Quota + $('#reset_quota_now').click(function() { $.ajax({ type: "POST", url: "tapi", - data: {mode:'reset_quotum', apikey: $.plush.apikey}, + data: {mode:'reset_quota', apikey: $.plush.apikey}, success: $.plush.RefreshQueue }); }); diff --git a/interfaces/smpl/templates/config_switches.tmpl b/interfaces/smpl/templates/config_switches.tmpl index f8bf229..bcda6a8 100644 --- a/interfaces/smpl/templates/config_switches.tmpl +++ b/interfaces/smpl/templates/config_switches.tmpl @@ -199,33 +199,33 @@
      - $T('swtag-quotum') + $T('swtag-quota')
      - $T('opt-quotum_size'): - - $T('explain-quotum_size') + $T('opt-quota_size'): + + $T('explain-quota_size')
      - $T('opt-quotum_period'): - + + + + - $T('explain-quotum_period') + $T('explain-quota_period')
      - $T('opt-quotum_day'): - - $T('explain-quotum_day') + $T('opt-quota_day'): + + $T('explain-quota_day')
      - +
      diff --git a/interfaces/smpl/templates/history.tmpl b/interfaces/smpl/templates/history.tmpl index 0df5634..567abc5 100644 --- a/interfaces/smpl/templates/history.tmpl +++ b/interfaces/smpl/templates/history.tmpl @@ -99,8 +99,8 @@ t = time.strftime(time_format("%H:%M:%S on %A %d %B %Y"), completed) diff --git a/interfaces/smpl/templates/main.tmpl b/interfaces/smpl/templates/main.tmpl index 94afdba..c94729c 100644 --- a/interfaces/smpl/templates/main.tmpl +++ b/interfaces/smpl/templates/main.tmpl @@ -760,9 +760,9 @@ function lrb(url, extra, refresh) d = doSimpleXMLHttpRequest('tapi?mode=newzbin&name=get_bookmarks&session='+session); } - function resetQuotum() + function resetQuota() { - d = doSimpleXMLHttpRequest('tapi?mode=reset_quotum&session='+session); + d = doSimpleXMLHttpRequest('tapi?mode=reset_quota&session='+session); } function changequeueoptions(page) @@ -1150,8 +1150,8 @@ function loadingJSON(){
    • $T('smpl-getbookmarks')
    • - -
    • $T('link-resetQuotum')
    • + +
    • $T('link-resetQuota')

    • $T('button-restart')
    • diff --git a/po/main/SABnzbd.pot b/po/main/SABnzbd.pot index 7bbac0f..252593a 100644 --- a/po/main/SABnzbd.pot +++ b/po/main/SABnzbd.pot @@ -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: 2011-08-27 10:05+West-Europa (zomertijd)\n" +"POT-Creation-Date: 2011-08-27 10:13+West-Europa (zomertijd)\n" "Generated-By: pygettext.py 1.5\n" @@ -141,7 +141,7 @@ msgid "Loading %s failed" msgstr "" #: sabnzbd/api.py:1418 # sabnzbd/osxmenu.py:189 # sabnzbd/skintext.py:66 [No value, used in dropdown menus] -#: sabnzbd/skintext.py:637 [Job details page, select no files] +#: sabnzbd/skintext.py:636 [Job details page, select no files] msgid "None" msgstr "" @@ -193,8 +193,8 @@ msgstr "" msgid "%s missing" msgstr "" -#: sabnzbd/bpsmeter.py:215 [Warning message] -msgid "Quotum spent, pausing downloading" +#: sabnzbd/bpsmeter.py:214 [Warning message] +msgid "Quota spent, pausing downloading" msgstr "" #: sabnzbd/cfg.py:46 @@ -274,7 +274,7 @@ msgid "Cannot read Watched Folder %s" msgstr "" #: sabnzbd/downloader.py:204 # sabnzbd/osxmenu.py:427 # sabnzbd/skintext.py:35 [PP status] -#: sabnzbd/skintext.py:163 # sabnzbd/skintext.py:766 +#: sabnzbd/skintext.py:163 # sabnzbd/skintext.py:765 msgid "Paused" msgstr "" @@ -441,7 +441,7 @@ msgstr "" msgid " 
      SABnzbd shutdown finished.
      Wait for about 5 second and then click the button below.

      Refresh
      " msgstr "" -#: sabnzbd/interface.py:1579 [Used as default Feed name in Config->RSS] # sabnzbd/skintext.py:481 [Config->RSS, tab header] +#: sabnzbd/interface.py:1579 [Used as default Feed name in Config->RSS] # sabnzbd/skintext.py:480 [Config->RSS, tab header] msgid "Feed" msgstr "" @@ -499,7 +499,7 @@ msgstr "" msgid "Jobs marked with a '*' will not be automatically downloaded." msgstr "" -#: sabnzbd/interface.py:2433 # sabnzbd/skintext.py:495 [Config->RSS section header] +#: sabnzbd/interface.py:2433 # sabnzbd/skintext.py:494 [Config->RSS section header] msgid "Matched" msgstr "" @@ -507,7 +507,7 @@ msgstr "" msgid "Not matched" msgstr "" -#: sabnzbd/interface.py:2434 # sabnzbd/skintext.py:497 [Config->RSS section header] +#: sabnzbd/interface.py:2434 # sabnzbd/skintext.py:496 [Config->RSS section header] msgid "Downloaded" msgstr "" @@ -519,7 +519,7 @@ msgstr "" msgid "Incorrect value for %s: %s" msgstr "" -#: sabnzbd/interface.py:2531 # sabnzbd/skintext.py:534 +#: sabnzbd/interface.py:2531 # sabnzbd/skintext.py:533 msgid "Test Notification" msgstr "" @@ -874,11 +874,11 @@ msgid "Error importing %s" msgstr "" #: sabnzbd/osxmenu.py:123 # sabnzbd/osxmenu.py:406 # sabnzbd/osxmenu.py:414 -#: sabnzbd/skintext.py:245 [Footer: indicator of warnings] # sabnzbd/skintext.py:649 # sabnzbd/skintext.py:778 +#: sabnzbd/skintext.py:245 [Footer: indicator of warnings] # sabnzbd/skintext.py:648 # sabnzbd/skintext.py:777 msgid "Warnings" msgstr "" -#: sabnzbd/osxmenu.py:134 # sabnzbd/osxmenu.py:448 # sabnzbd/skintext.py:768 +#: sabnzbd/osxmenu.py:134 # sabnzbd/osxmenu.py:448 # sabnzbd/skintext.py:767 msgid "Idle" msgstr "" @@ -890,7 +890,7 @@ msgstr "" msgid "Queue" msgstr "" -#: sabnzbd/osxmenu.py:157 # sabnzbd/skintext.py:192 [Queue page button] # sabnzbd/skintext.py:660 +#: sabnzbd/osxmenu.py:157 # sabnzbd/skintext.py:192 [Queue page button] # sabnzbd/skintext.py:659 msgid "Purge Queue" msgstr "" @@ -898,7 +898,7 @@ msgstr "" msgid "History" msgstr "" -#: sabnzbd/osxmenu.py:173 # sabnzbd/skintext.py:205 [History page button] # sabnzbd/skintext.py:679 +#: sabnzbd/osxmenu.py:173 # sabnzbd/skintext.py:205 [History page button] # sabnzbd/skintext.py:678 msgid "Purge History" msgstr "" @@ -907,7 +907,7 @@ msgid "Limit Speed" msgstr "" #: sabnzbd/osxmenu.py:205 # sabnzbd/skintext.py:54 [#: Config->Scheduler] # sabnzbd/skintext.py:140 -#: sabnzbd/skintext.py:188 [Queue page button] # sabnzbd/skintext.py:372 [Three way switch for duplicates] # sabnzbd/skintext.py:473 +#: sabnzbd/skintext.py:188 [Queue page button] # sabnzbd/skintext.py:372 [Three way switch for duplicates] # sabnzbd/skintext.py:472 msgid "Pause" msgstr "" @@ -916,7 +916,7 @@ msgid "min." msgstr "" #: sabnzbd/osxmenu.py:221 # sabnzbd/skintext.py:53 [#: Config->Scheduler] # sabnzbd/skintext.py:141 -#: sabnzbd/skintext.py:187 [Queue page button] # sabnzbd/skintext.py:472 +#: sabnzbd/skintext.py:187 [Queue page button] # sabnzbd/skintext.py:471 msgid "Resume" msgstr "" @@ -937,7 +937,7 @@ msgid "Quit" msgstr "" #: sabnzbd/osxmenu.py:268 # sabnzbd/skintext.py:56 [#: Config->Scheduler] # sabnzbd/skintext.py:253 -#: sabnzbd/skintext.py:475 +#: sabnzbd/skintext.py:474 msgid "Restart" msgstr "" @@ -1246,7 +1246,7 @@ msgstr "" msgid "Schedule for non-existing server %s" msgstr "" -#: sabnzbd/skintext.py:26 [Queue status "download"] # sabnzbd/skintext.py:150 # sabnzbd/skintext.py:498 [Config->RSS button "download item"] +#: sabnzbd/skintext.py:26 [Queue status "download"] # sabnzbd/skintext.py:150 # sabnzbd/skintext.py:497 [Config->RSS button "download item"] msgid "Download" msgstr "" @@ -1266,7 +1266,7 @@ msgstr "" msgid "Completed" msgstr "" -#: sabnzbd/skintext.py:33 [PP status] # sabnzbd/skintext.py:773 +#: sabnzbd/skintext.py:33 [PP status] # sabnzbd/skintext.py:772 msgid "Failed" msgstr "" @@ -1302,7 +1302,7 @@ msgstr "" msgid "Verifying..." msgstr "" -#: sabnzbd/skintext.py:43 [Pseudo-PP status, in reality used for Queue-status] # sabnzbd/skintext.py:767 +#: sabnzbd/skintext.py:43 [Pseudo-PP status, in reality used for Queue-status] # sabnzbd/skintext.py:766 msgid "Downloading" msgstr "" @@ -1314,15 +1314,15 @@ msgstr "" msgid "Checking" msgstr "" -#: sabnzbd/skintext.py:47 [#: Config->Scheduler] # sabnzbd/skintext.py:466 +#: sabnzbd/skintext.py:47 [#: Config->Scheduler] # sabnzbd/skintext.py:465 msgid "Frequency" msgstr "" -#: sabnzbd/skintext.py:48 [#: Config->Scheduler] # sabnzbd/skintext.py:467 # sabnzbd/skintext.py:643 [Job details page, section header] +#: sabnzbd/skintext.py:48 [#: Config->Scheduler] # sabnzbd/skintext.py:466 # sabnzbd/skintext.py:642 [Job details page, section header] msgid "Action" msgstr "" -#: sabnzbd/skintext.py:49 [#: Config->Scheduler] # sabnzbd/skintext.py:468 +#: sabnzbd/skintext.py:49 [#: Config->Scheduler] # sabnzbd/skintext.py:467 msgid "Arguments" msgstr "" @@ -1338,7 +1338,7 @@ msgstr "" msgid "enable server" msgstr "" -#: sabnzbd/skintext.py:55 [#: Config->Scheduler] # sabnzbd/skintext.py:139 # sabnzbd/skintext.py:474 +#: sabnzbd/skintext.py:55 [#: Config->Scheduler] # sabnzbd/skintext.py:139 # sabnzbd/skintext.py:473 msgid "Shutdown" msgstr "" @@ -1450,11 +1450,11 @@ msgstr "" msgid "Queued" msgstr "" -#: sabnzbd/skintext.py:99 [Generic "Delete" button, short form] # sabnzbd/skintext.py:494 [Config->RSS button "Delete filter"] # sabnzbd/skintext.py:568 +#: sabnzbd/skintext.py:99 [Generic "Delete" button, short form] # sabnzbd/skintext.py:493 [Config->RSS button "Delete filter"] # sabnzbd/skintext.py:567 msgid "X" msgstr "" -#: sabnzbd/skintext.py:100 [Used in confirmation popups] # sabnzbd/skintext.py:684 +#: sabnzbd/skintext.py:100 [Used in confirmation popups] # sabnzbd/skintext.py:683 msgid "Are you sure?" msgstr "" @@ -1474,7 +1474,7 @@ msgstr "" msgid "Status" msgstr "" -#: sabnzbd/skintext.py:109 [Main menu item] # sabnzbd/skintext.py:805 [Wizard help link] +#: sabnzbd/skintext.py:109 [Main menu item] # sabnzbd/skintext.py:804 [Wizard help link] msgid "Help" msgstr "" @@ -1506,7 +1506,7 @@ msgstr "" msgid "Servers" msgstr "" -#: sabnzbd/skintext.py:117 [Main menu item] # sabnzbd/skintext.py:683 +#: sabnzbd/skintext.py:117 [Main menu item] # sabnzbd/skintext.py:682 msgid "Scheduling" msgstr "" @@ -1514,7 +1514,7 @@ msgstr "" msgid "RSS" msgstr "" -#: sabnzbd/skintext.py:119 [Main menu item] # sabnzbd/skintext.py:504 [Main Config page] # sabnzbd/skintext.py:525 [Section header] +#: sabnzbd/skintext.py:119 [Main menu item] # sabnzbd/skintext.py:503 [Main Config page] # sabnzbd/skintext.py:524 [Section header] msgid "Notifications" msgstr "" @@ -1698,11 +1698,11 @@ msgstr "" msgid "Pause for" msgstr "" -#: sabnzbd/skintext.py:181 [Queue page table column header] # sabnzbd/skintext.py:486 [Config->RSS table column header] +#: sabnzbd/skintext.py:181 [Queue page table column header] # sabnzbd/skintext.py:485 [Config->RSS table column header] msgid "Order" msgstr "" -#: sabnzbd/skintext.py:182 [Queue page table column header] # sabnzbd/skintext.py:630 [Job details page] +#: sabnzbd/skintext.py:182 [Queue page table column header] # sabnzbd/skintext.py:629 [Job details page] msgid "Name" msgstr "" @@ -1726,7 +1726,7 @@ msgstr "" msgid "Retry" msgstr "" -#: sabnzbd/skintext.py:190 [Queue end-of-queue selection box] # sabnzbd/skintext.py:746 +#: sabnzbd/skintext.py:190 [Queue end-of-queue selection box] # sabnzbd/skintext.py:745 msgid "Actions" msgstr "" @@ -1762,16 +1762,16 @@ msgstr "" msgid "Missing articles" msgstr "" -#: sabnzbd/skintext.py:200 [Remaining quotum (displayed in Queue)] -msgid "Quotum left" +#: sabnzbd/skintext.py:200 [Remaining quota (displayed in Queue)] +msgid "Quota left" msgstr "" -#: sabnzbd/skintext.py:201 [Manual reset of quotum] +#: sabnzbd/skintext.py:201 [Manual reset of quota] msgid "manual" msgstr "" #: sabnzbd/skintext.py:202 -msgid "Reset Quotum now" +msgid "Reset Quota now" msgstr "" #: sabnzbd/skintext.py:206 [History page button] @@ -1806,7 +1806,7 @@ msgstr "" msgid "Show All" msgstr "" -#: sabnzbd/skintext.py:215 [History table header] # sabnzbd/skintext.py:429 [Size of the download quotum] # sabnzbd/skintext.py:756 +#: sabnzbd/skintext.py:215 [History table header] # sabnzbd/skintext.py:429 [Size of the download quota] # sabnzbd/skintext.py:755 msgid "Size" msgstr "" @@ -1826,7 +1826,7 @@ msgstr "" msgid "Optional Supplemental NZB" msgstr "" -#: sabnzbd/skintext.py:221 [Path as displayed in History details] # sabnzbd/skintext.py:687 # sabnzbd/skintext.py:757 +#: sabnzbd/skintext.py:221 [Path as displayed in History details] # sabnzbd/skintext.py:686 # sabnzbd/skintext.py:756 msgid "Path" msgstr "" @@ -1866,7 +1866,7 @@ msgstr "" msgid "+ Debug" msgstr "" -#: sabnzbd/skintext.py:234 [Status page tab header] # sabnzbd/skintext.py:450 +#: sabnzbd/skintext.py:234 [Status page tab header] # sabnzbd/skintext.py:449 msgid "Connections" msgstr "" @@ -1902,7 +1902,7 @@ msgstr "" msgid "When" msgstr "" -#: sabnzbd/skintext.py:243 [Status page, table column header, type of message] # sabnzbd/skintext.py:487 [Config->RSS table column header] +#: sabnzbd/skintext.py:243 [Status page, table column header, type of message] # sabnzbd/skintext.py:486 [Config->RSS table column header] msgid "Type" msgstr "" @@ -2564,19 +2564,19 @@ msgid "Naming" msgstr "" #: sabnzbd/skintext.py:428 -msgid "Quotum" +msgid "Quota" msgstr "" #: sabnzbd/skintext.py:430 msgid "How much can be downloaded this month (K/M/G)" msgstr "" -#: sabnzbd/skintext.py:431 [Reset day of the download quotum] +#: sabnzbd/skintext.py:431 [Reset day of the download quota] msgid "Reset day" msgstr "" #: sabnzbd/skintext.py:432 -msgid "On which day of the month or week (1=Monday) does your ISP reset the quotum? (Optionally with hh:mm)" +msgid "On which day of the month or week (1=Monday) does your ISP reset the quota? (Optionally with hh:mm)" msgstr "" #: sabnzbd/skintext.py:433 [Auto-resume download on the reset day] @@ -2584,15 +2584,15 @@ msgid "Auto resume" msgstr "" #: sabnzbd/skintext.py:434 -msgid "Should downloading resume after the quotum is reset?" +msgid "Should downloading resume after the quota is reset?" msgstr "" -#: sabnzbd/skintext.py:435 [Does the quotum get reset every day, week or month?] -msgid "Quotum period" +#: sabnzbd/skintext.py:435 [Does the quota get reset every day, week or month?] +msgid "Quota period" msgstr "" #: sabnzbd/skintext.py:436 -msgid "Does the quotum get reset each day, week or month?" +msgid "Does the quota get reset each day, week or month?" msgstr "" #: sabnzbd/skintext.py:437 @@ -2603,1216 +2603,1216 @@ msgstr "" msgid "Try to predict successful completion before actual download (slower!)" msgstr "" -#: sabnzbd/skintext.py:442 +#: sabnzbd/skintext.py:441 msgid "Server configuration" msgstr "" -#: sabnzbd/skintext.py:443 +#: sabnzbd/skintext.py:442 msgid "Server definition" msgstr "" -#: sabnzbd/skintext.py:444 # sabnzbd/skintext.py:456 +#: sabnzbd/skintext.py:443 # sabnzbd/skintext.py:455 msgid "Add Server" msgstr "" -#: sabnzbd/skintext.py:445 +#: sabnzbd/skintext.py:444 msgid "Host" msgstr "" -#: sabnzbd/skintext.py:446 +#: sabnzbd/skintext.py:445 msgid "Port" msgstr "" -#: sabnzbd/skintext.py:447 +#: sabnzbd/skintext.py:446 msgid "Username" msgstr "" -#: sabnzbd/skintext.py:448 +#: sabnzbd/skintext.py:447 msgid "Password" msgstr "" -#: sabnzbd/skintext.py:449 +#: sabnzbd/skintext.py:448 msgid "Timeout" msgstr "" -#: sabnzbd/skintext.py:451 +#: sabnzbd/skintext.py:450 msgid "Retention time" msgstr "" -#: sabnzbd/skintext.py:452 +#: sabnzbd/skintext.py:451 msgid "SSL" msgstr "" -#: sabnzbd/skintext.py:453 +#: sabnzbd/skintext.py:452 msgid "Backup server" msgstr "" -#: sabnzbd/skintext.py:454 # sabnzbd/skintext.py:816 [As in "this item is optional"] +#: sabnzbd/skintext.py:453 # sabnzbd/skintext.py:815 [As in "this item is optional"] msgid "Optional" msgstr "" -#: sabnzbd/skintext.py:455 +#: sabnzbd/skintext.py:454 msgid "Enable" msgstr "" -#: sabnzbd/skintext.py:457 +#: sabnzbd/skintext.py:456 msgid "Remove Server" msgstr "" -#: sabnzbd/skintext.py:458 # sabnzbd/skintext.py:818 [Wizard step] +#: sabnzbd/skintext.py:457 # sabnzbd/skintext.py:817 [Wizard step] msgid "Test Server" msgstr "" -#: sabnzbd/skintext.py:459 +#: sabnzbd/skintext.py:458 msgid "Testing server details..." msgstr "" -#: sabnzbd/skintext.py:460 +#: sabnzbd/skintext.py:459 msgid "Click below to test." msgstr "" -#: sabnzbd/skintext.py:461 +#: sabnzbd/skintext.py:460 msgid "Bandwidth" msgstr "" -#: sabnzbd/skintext.py:464 +#: sabnzbd/skintext.py:463 msgid "Scheduling configuration" msgstr "" -#: sabnzbd/skintext.py:465 # sabnzbd/skintext.py:469 +#: sabnzbd/skintext.py:464 # sabnzbd/skintext.py:468 msgid "Add Schedule" msgstr "" -#: sabnzbd/skintext.py:470 +#: sabnzbd/skintext.py:469 msgid "Remove" msgstr "" -#: sabnzbd/skintext.py:471 +#: sabnzbd/skintext.py:470 msgid "Current Schedules" msgstr "" -#: sabnzbd/skintext.py:478 +#: sabnzbd/skintext.py:477 msgid "RSS Configuration" msgstr "" -#: sabnzbd/skintext.py:479 +#: sabnzbd/skintext.py:478 msgid "New Feed URL" msgstr "" -#: sabnzbd/skintext.py:480 +#: sabnzbd/skintext.py:479 msgid "The checkbox next to the feed name should be ticked for the feed to be enabled and be automatically checked for new items.
      When a feed is added, it will only pick up new items and not anything already in the RSS feed unless you press \"Force Download\"." msgstr "" -#: sabnzbd/skintext.py:482 [Config->RSS button] +#: sabnzbd/skintext.py:481 [Config->RSS button] msgid "Add Feed" msgstr "" -#: sabnzbd/skintext.py:483 [Config->RSS button] +#: sabnzbd/skintext.py:482 [Config->RSS button] msgid "Delete Feed" msgstr "" -#: sabnzbd/skintext.py:484 [Config->RSS button] +#: sabnzbd/skintext.py:483 [Config->RSS button] msgid "Read Feed" msgstr "" -#: sabnzbd/skintext.py:485 [Config->RSS button] +#: sabnzbd/skintext.py:484 [Config->RSS button] msgid "Force Download" msgstr "" -#: sabnzbd/skintext.py:488 [Config->RSS table column header] +#: sabnzbd/skintext.py:487 [Config->RSS table column header] msgid "Filter" msgstr "" -#: sabnzbd/skintext.py:489 [Config->RSS table column header] +#: sabnzbd/skintext.py:488 [Config->RSS table column header] msgid "Skip" msgstr "" -#: sabnzbd/skintext.py:490 [Config->RSS filter-type selection menu] +#: sabnzbd/skintext.py:489 [Config->RSS filter-type selection menu] msgid "Accept" msgstr "" -#: sabnzbd/skintext.py:491 [Config->RSS filter-type selection menu] +#: sabnzbd/skintext.py:490 [Config->RSS filter-type selection menu] msgid "Reject" msgstr "" -#: sabnzbd/skintext.py:492 [Config->RSS filter-type selection menu] +#: sabnzbd/skintext.py:491 [Config->RSS filter-type selection menu] msgid "Requires" msgstr "" -#: sabnzbd/skintext.py:493 [Config->RSS filter-type selection menu] +#: sabnzbd/skintext.py:492 [Config->RSS filter-type selection menu] msgid "RequiresCat" msgstr "" -#: sabnzbd/skintext.py:496 [Config->RSS section header] +#: sabnzbd/skintext.py:495 [Config->RSS section header] msgid "Not Matched" msgstr "" -#: sabnzbd/skintext.py:499 [Tab title for Config->Feeds] +#: sabnzbd/skintext.py:498 [Tab title for Config->Feeds] msgid "Feeds" msgstr "" -#: sabnzbd/skintext.py:500 [Config->RSS button] +#: sabnzbd/skintext.py:499 [Config->RSS button] msgid "Read All Feeds Now" msgstr "" -#: sabnzbd/skintext.py:501 [Tab title for Config->Feeds] +#: sabnzbd/skintext.py:500 [Tab title for Config->Feeds] msgid "Settings" msgstr "" -#: sabnzbd/skintext.py:502 [Tab title for Config->Feeds] +#: sabnzbd/skintext.py:501 [Tab title for Config->Feeds] msgid "Filters" msgstr "" -#: sabnzbd/skintext.py:505 [Section header] +#: sabnzbd/skintext.py:504 [Section header] msgid "Email Options" msgstr "" -#: sabnzbd/skintext.py:506 +#: sabnzbd/skintext.py:505 msgid "Email Notification On Job Completion" msgstr "" -#: sabnzbd/skintext.py:507 [When to send email] +#: sabnzbd/skintext.py:506 [When to send email] msgid "Never" msgstr "" -#: sabnzbd/skintext.py:508 [When to send email] +#: sabnzbd/skintext.py:507 [When to send email] msgid "Always" msgstr "" -#: sabnzbd/skintext.py:509 [When to send email] +#: sabnzbd/skintext.py:508 [When to send email] msgid "Error-only" msgstr "" -#: sabnzbd/skintext.py:510 +#: sabnzbd/skintext.py:509 msgid "Disk Full Notifications" msgstr "" -#: sabnzbd/skintext.py:511 +#: sabnzbd/skintext.py:510 msgid "Send email when disk is full and SABnzbd is paused." msgstr "" -#: sabnzbd/skintext.py:512 +#: sabnzbd/skintext.py:511 msgid "Send RSS notifications" msgstr "" -#: sabnzbd/skintext.py:513 +#: sabnzbd/skintext.py:512 msgid "Send email when an RSS feed adds jobs to the queue." msgstr "" -#: sabnzbd/skintext.py:514 +#: sabnzbd/skintext.py:513 msgid "Email Account Settings" msgstr "" -#: sabnzbd/skintext.py:515 +#: sabnzbd/skintext.py:514 msgid "SMTP Server" msgstr "" -#: sabnzbd/skintext.py:516 +#: sabnzbd/skintext.py:515 msgid "Set your ISP's server for outgoing email." msgstr "" -#: sabnzbd/skintext.py:517 +#: sabnzbd/skintext.py:516 msgid "Email Recipient" msgstr "" -#: sabnzbd/skintext.py:518 +#: sabnzbd/skintext.py:517 msgid "Email address to send the email to." msgstr "" -#: sabnzbd/skintext.py:519 +#: sabnzbd/skintext.py:518 msgid "Email Sender" msgstr "" -#: sabnzbd/skintext.py:520 +#: sabnzbd/skintext.py:519 msgid "Who should we say sent the email?" msgstr "" -#: sabnzbd/skintext.py:521 +#: sabnzbd/skintext.py:520 msgid "OPTIONAL Account Username" msgstr "" -#: sabnzbd/skintext.py:522 +#: sabnzbd/skintext.py:521 msgid "For authenticated email, account name." msgstr "" -#: sabnzbd/skintext.py:523 +#: sabnzbd/skintext.py:522 msgid "OPTIONAL Account Password" msgstr "" -#: sabnzbd/skintext.py:524 +#: sabnzbd/skintext.py:523 msgid "For authenticated email, password." msgstr "" -#: sabnzbd/skintext.py:526 [Don't translate "Growl"] +#: sabnzbd/skintext.py:525 [Don't translate "Growl"] msgid "Enable Growl" msgstr "" -#: sabnzbd/skintext.py:527 [Don't translate "Growl"] +#: sabnzbd/skintext.py:526 [Don't translate "Growl"] msgid "Send notifications to Growl" msgstr "" -#: sabnzbd/skintext.py:528 [Address of Growl server] +#: sabnzbd/skintext.py:527 [Address of Growl server] msgid "Server address" msgstr "" -#: sabnzbd/skintext.py:529 [Don't translate "Growl"] +#: sabnzbd/skintext.py:528 [Don't translate "Growl"] msgid "Only use for remote Growl server (host:port)" msgstr "" -#: sabnzbd/skintext.py:530 [Growl server password] +#: sabnzbd/skintext.py:529 [Growl server password] msgid "Server password" msgstr "" -#: sabnzbd/skintext.py:531 [Don't translate "Growl"] +#: sabnzbd/skintext.py:530 [Don't translate "Growl"] msgid "Optional password for Growl server" msgstr "" -#: sabnzbd/skintext.py:532 [Don't translate "NotifyOSD"] +#: sabnzbd/skintext.py:531 [Don't translate "NotifyOSD"] msgid "Enable NotifyOSD" msgstr "" -#: sabnzbd/skintext.py:533 [Don't translate "NotifyOSD"] +#: sabnzbd/skintext.py:532 [Don't translate "NotifyOSD"] msgid "Send notifications to NotifyOSD" msgstr "" -#: sabnzbd/skintext.py:537 +#: sabnzbd/skintext.py:536 msgid "If you have an account at www.newzbin.com, you can enter your account info here.
      This will unlock extra functionality." msgstr "" -#: sabnzbd/skintext.py:538 +#: sabnzbd/skintext.py:537 msgid "Account info" msgstr "" -#: sabnzbd/skintext.py:539 +#: sabnzbd/skintext.py:538 msgid "Newzbin Username" msgstr "" -#: sabnzbd/skintext.py:540 # sabnzbd/skintext.py:556 +#: sabnzbd/skintext.py:539 # sabnzbd/skintext.py:555 msgid "Set your account username here." msgstr "" -#: sabnzbd/skintext.py:541 +#: sabnzbd/skintext.py:540 msgid "Newzbin Password" msgstr "" -#: sabnzbd/skintext.py:542 +#: sabnzbd/skintext.py:541 msgid "Set your account password here." msgstr "" -#: sabnzbd/skintext.py:543 +#: sabnzbd/skintext.py:542 msgid "Bookmark Processing" msgstr "" -#: sabnzbd/skintext.py:544 +#: sabnzbd/skintext.py:543 msgid "Auto-Fetch Bookmarks" msgstr "" -#: sabnzbd/skintext.py:545 +#: sabnzbd/skintext.py:544 msgid "Automatically retrieve jobs from your bookmarks." msgstr "" -#: sabnzbd/skintext.py:546 +#: sabnzbd/skintext.py:545 msgid "Get Bookmarks Now" msgstr "" -#: sabnzbd/skintext.py:547 +#: sabnzbd/skintext.py:546 msgid "Hide Bookmarks" msgstr "" -#: sabnzbd/skintext.py:548 +#: sabnzbd/skintext.py:547 msgid "Show Bookmarks" msgstr "" -#: sabnzbd/skintext.py:549 +#: sabnzbd/skintext.py:548 msgid "Un-Bookmark If Download Complete" msgstr "" -#: sabnzbd/skintext.py:550 +#: sabnzbd/skintext.py:549 msgid "Remove from bookmark list when download is complete." msgstr "" -#: sabnzbd/skintext.py:551 +#: sabnzbd/skintext.py:550 msgid "Checking Interval" msgstr "" -#: sabnzbd/skintext.py:552 +#: sabnzbd/skintext.py:551 msgid "In minutes (at least 15 min)." msgstr "" -#: sabnzbd/skintext.py:553 +#: sabnzbd/skintext.py:552 msgid "Processed Bookmarks" msgstr "" -#: sabnzbd/skintext.py:554 +#: sabnzbd/skintext.py:553 msgid "If you have an account at www.nzbmatrix.com, you can enter your account info here.
      This is required if you want to use the RSS feeds of this site." msgstr "" -#: sabnzbd/skintext.py:555 +#: sabnzbd/skintext.py:554 msgid "NzbMatrix Username" msgstr "" -#: sabnzbd/skintext.py:557 +#: sabnzbd/skintext.py:556 msgid "NzbMatrix API key" msgstr "" -#: sabnzbd/skintext.py:558 +#: sabnzbd/skintext.py:557 msgid "Set the NzbMatrix API key here." msgstr "" -#: sabnzbd/skintext.py:561 +#: sabnzbd/skintext.py:560 msgid "User-defined categories" msgstr "" -#: sabnzbd/skintext.py:562 +#: sabnzbd/skintext.py:561 msgid "Defines post-processing and storage." msgstr "" -#: sabnzbd/skintext.py:563 +#: sabnzbd/skintext.py:562 msgid "Use the \"Groups / Indexer tags\" column to map groups and tags to your categories.
      Wildcards are supported. Use commas to seperate terms." msgstr "" -#: sabnzbd/skintext.py:564 +#: sabnzbd/skintext.py:563 msgid "Ending the path with an asterisk * will prevent creation of job folders." msgstr "" -#: sabnzbd/skintext.py:565 +#: sabnzbd/skintext.py:564 msgid "Relative folders are based on" msgstr "" -#: sabnzbd/skintext.py:566 +#: sabnzbd/skintext.py:565 msgid "Folder/Path" msgstr "" -#: sabnzbd/skintext.py:567 +#: sabnzbd/skintext.py:566 msgid "Groups / Indexer tags" msgstr "" -#: sabnzbd/skintext.py:571 +#: sabnzbd/skintext.py:570 msgid "Sorting configuration" msgstr "" -#: sabnzbd/skintext.py:572 +#: sabnzbd/skintext.py:571 msgid "Series Sorting" msgstr "" -#: sabnzbd/skintext.py:573 +#: sabnzbd/skintext.py:572 msgid "Enable TV Sorting" msgstr "" -#: sabnzbd/skintext.py:574 +#: sabnzbd/skintext.py:573 msgid "Enable sorting and renaming of episodes." msgstr "" -#: sabnzbd/skintext.py:575 +#: sabnzbd/skintext.py:574 msgid "Pattern Key" msgstr "" -#: sabnzbd/skintext.py:576 +#: sabnzbd/skintext.py:575 msgid "Clear" msgstr "" -#: sabnzbd/skintext.py:577 +#: sabnzbd/skintext.py:576 msgid "Presets" msgstr "" -#: sabnzbd/skintext.py:578 +#: sabnzbd/skintext.py:577 msgid "Example" msgstr "" -#: sabnzbd/skintext.py:579 +#: sabnzbd/skintext.py:578 msgid "Generic Sorting" msgstr "" -#: sabnzbd/skintext.py:580 +#: sabnzbd/skintext.py:579 msgid "Enable Movie Sorting" msgstr "" -#: sabnzbd/skintext.py:581 +#: sabnzbd/skintext.py:580 msgid "Enable generic sorting and renaming of files." msgstr "" -#: sabnzbd/skintext.py:582 +#: sabnzbd/skintext.py:581 msgid "Keep loose downloads in extra folders" msgstr "" -#: sabnzbd/skintext.py:583 +#: sabnzbd/skintext.py:582 msgid "Enable if downloads are not put in their own folders." msgstr "" -#: sabnzbd/skintext.py:584 +#: sabnzbd/skintext.py:583 msgid "Affected Categories" msgstr "" -#: sabnzbd/skintext.py:585 +#: sabnzbd/skintext.py:584 msgid "Meaning" msgstr "" -#: sabnzbd/skintext.py:586 +#: sabnzbd/skintext.py:585 msgid "Pattern" msgstr "" -#: sabnzbd/skintext.py:587 +#: sabnzbd/skintext.py:586 msgid "Result" msgstr "" -#: sabnzbd/skintext.py:588 +#: sabnzbd/skintext.py:587 msgid "1x05 Season Folder" msgstr "" -#: sabnzbd/skintext.py:589 +#: sabnzbd/skintext.py:588 msgid "S01E05 Season Folder" msgstr "" -#: sabnzbd/skintext.py:590 +#: sabnzbd/skintext.py:589 msgid "1x05 Episode Folder" msgstr "" -#: sabnzbd/skintext.py:591 +#: sabnzbd/skintext.py:590 msgid "S01E05 Episode Folder" msgstr "" -#: sabnzbd/skintext.py:592 +#: sabnzbd/skintext.py:591 msgid "Title" msgstr "" -#: sabnzbd/skintext.py:593 +#: sabnzbd/skintext.py:592 msgid "Movie Name" msgstr "" -#: sabnzbd/skintext.py:594 +#: sabnzbd/skintext.py:593 msgid "Movie.Name" msgstr "" -#: sabnzbd/skintext.py:595 +#: sabnzbd/skintext.py:594 msgid "Movie_Name" msgstr "" -#: sabnzbd/skintext.py:596 # sabnzbd/skintext.py:597 +#: sabnzbd/skintext.py:595 # sabnzbd/skintext.py:596 msgid "Show Name" msgstr "" -#: sabnzbd/skintext.py:598 +#: sabnzbd/skintext.py:597 msgid "Show.Name" msgstr "" -#: sabnzbd/skintext.py:599 +#: sabnzbd/skintext.py:598 msgid "Show_Name" msgstr "" -#: sabnzbd/skintext.py:600 +#: sabnzbd/skintext.py:599 msgid "Season Number" msgstr "" -#: sabnzbd/skintext.py:601 +#: sabnzbd/skintext.py:600 msgid "Episode Number" msgstr "" -#: sabnzbd/skintext.py:602 # sabnzbd/skintext.py:603 +#: sabnzbd/skintext.py:601 # sabnzbd/skintext.py:602 msgid "Episode Name" msgstr "" -#: sabnzbd/skintext.py:604 +#: sabnzbd/skintext.py:603 msgid "Episode.Name" msgstr "" -#: sabnzbd/skintext.py:605 +#: sabnzbd/skintext.py:604 msgid "Episode_Name" msgstr "" -#: sabnzbd/skintext.py:606 +#: sabnzbd/skintext.py:605 msgid "File Extension" msgstr "" -#: sabnzbd/skintext.py:607 +#: sabnzbd/skintext.py:606 msgid "Extension" msgstr "" -#: sabnzbd/skintext.py:608 +#: sabnzbd/skintext.py:607 msgid "Part Number" msgstr "" -#: sabnzbd/skintext.py:609 +#: sabnzbd/skintext.py:608 msgid "Decade" msgstr "" -#: sabnzbd/skintext.py:610 +#: sabnzbd/skintext.py:609 msgid "Original Filename" msgstr "" -#: sabnzbd/skintext.py:611 +#: sabnzbd/skintext.py:610 msgid "Original Foldername" msgstr "" -#: sabnzbd/skintext.py:612 +#: sabnzbd/skintext.py:611 msgid "Lower Case" msgstr "" -#: sabnzbd/skintext.py:613 +#: sabnzbd/skintext.py:612 msgid "TEXT" msgstr "" -#: sabnzbd/skintext.py:614 +#: sabnzbd/skintext.py:613 msgid "text" msgstr "" -#: sabnzbd/skintext.py:615 +#: sabnzbd/skintext.py:614 msgid "file" msgstr "" -#: sabnzbd/skintext.py:616 +#: sabnzbd/skintext.py:615 msgid "folder" msgstr "" -#: sabnzbd/skintext.py:617 +#: sabnzbd/skintext.py:616 msgid "Sort String" msgstr "" -#: sabnzbd/skintext.py:618 +#: sabnzbd/skintext.py:617 msgid "Multi-part label" msgstr "" -#: sabnzbd/skintext.py:619 +#: sabnzbd/skintext.py:618 msgid "In folders" msgstr "" -#: sabnzbd/skintext.py:620 +#: sabnzbd/skintext.py:619 msgid "No folders" msgstr "" -#: sabnzbd/skintext.py:621 +#: sabnzbd/skintext.py:620 msgid "Date Sorting" msgstr "" -#: sabnzbd/skintext.py:622 +#: sabnzbd/skintext.py:621 msgid "Enable Date Sorting" msgstr "" -#: sabnzbd/skintext.py:623 +#: sabnzbd/skintext.py:622 msgid "Enable sorting and renaming of date named files." msgstr "" -#: sabnzbd/skintext.py:624 +#: sabnzbd/skintext.py:623 msgid "Show Name folder" msgstr "" -#: sabnzbd/skintext.py:625 +#: sabnzbd/skintext.py:624 msgid "Year-Month Folders" msgstr "" -#: sabnzbd/skintext.py:626 +#: sabnzbd/skintext.py:625 msgid "Daily Folders" msgstr "" -#: sabnzbd/skintext.py:629 [Job details page] +#: sabnzbd/skintext.py:628 [Job details page] msgid "Edit NZB Details" msgstr "" -#: sabnzbd/skintext.py:631 [Job details page, delete button] # sabnzbd/skintext.py:745 +#: sabnzbd/skintext.py:630 [Job details page, delete button] # sabnzbd/skintext.py:744 msgid "Delete" msgstr "" -#: sabnzbd/skintext.py:632 [Job details page, move file to top] +#: sabnzbd/skintext.py:631 [Job details page, move file to top] msgid "Top" msgstr "" -#: sabnzbd/skintext.py:633 [Job details page, move file one place up] +#: sabnzbd/skintext.py:632 [Job details page, move file one place up] msgid "Up" msgstr "" -#: sabnzbd/skintext.py:634 [Job details page, move file one place down] +#: sabnzbd/skintext.py:633 [Job details page, move file one place down] msgid "Down" msgstr "" -#: sabnzbd/skintext.py:635 [Job details page, move file to bottom] +#: sabnzbd/skintext.py:634 [Job details page, move file to bottom] msgid "Bottom" msgstr "" -#: sabnzbd/skintext.py:636 [Job details page, select all files] +#: sabnzbd/skintext.py:635 [Job details page, select all files] msgid "All" msgstr "" -#: sabnzbd/skintext.py:638 [Job details page, invert file selection] +#: sabnzbd/skintext.py:637 [Job details page, invert file selection] msgid "Invert" msgstr "" -#: sabnzbd/skintext.py:639 [Job details page, filename column header] +#: sabnzbd/skintext.py:638 [Job details page, filename column header] msgid "Filename" msgstr "" -#: sabnzbd/skintext.py:640 [Job details page, subject column header] +#: sabnzbd/skintext.py:639 [Job details page, subject column header] msgid "Subject" msgstr "" -#: sabnzbd/skintext.py:641 [Job details page, file age column header] # sabnzbd/skintext.py:789 +#: sabnzbd/skintext.py:640 [Job details page, file age column header] # sabnzbd/skintext.py:788 msgid "Age" msgstr "" -#: sabnzbd/skintext.py:642 [Job details page, section header] +#: sabnzbd/skintext.py:641 [Job details page, section header] msgid "Selection" msgstr "" -#: sabnzbd/skintext.py:647 +#: sabnzbd/skintext.py:646 msgid "Are you sure you want to delete" msgstr "" -#: sabnzbd/skintext.py:648 # sabnzbd/skintext.py:695 +#: sabnzbd/skintext.py:647 # sabnzbd/skintext.py:694 msgid "Refresh" msgstr "" -#: sabnzbd/skintext.py:650 # sabnzbd/skintext.py:696 +#: sabnzbd/skintext.py:649 # sabnzbd/skintext.py:695 msgid "Options" msgstr "" -#: sabnzbd/skintext.py:651 +#: sabnzbd/skintext.py:650 msgid "Page" msgstr "" -#: sabnzbd/skintext.py:652 # sabnzbd/skintext.py:690 # sabnzbd/skintext.py:762 +#: sabnzbd/skintext.py:651 # sabnzbd/skintext.py:689 # sabnzbd/skintext.py:761 msgid "Prev" msgstr "" -#: sabnzbd/skintext.py:653 # sabnzbd/skintext.py:691 # sabnzbd/skintext.py:763 -#: sabnzbd/skintext.py:795 [Button to go to next Wizard page] +#: sabnzbd/skintext.py:652 # sabnzbd/skintext.py:690 # sabnzbd/skintext.py:762 +#: sabnzbd/skintext.py:794 [Button to go to next Wizard page] msgid "Next" msgstr "" -#: sabnzbd/skintext.py:654 # sabnzbd/skintext.py:761 +#: sabnzbd/skintext.py:653 # sabnzbd/skintext.py:760 msgid "First" msgstr "" -#: sabnzbd/skintext.py:655 # sabnzbd/skintext.py:764 +#: sabnzbd/skintext.py:654 # sabnzbd/skintext.py:763 msgid "Last" msgstr "" -#: sabnzbd/skintext.py:656 +#: sabnzbd/skintext.py:655 msgid "Close" msgstr "" -#: sabnzbd/skintext.py:657 +#: sabnzbd/skintext.py:656 msgid "Set Pause Interval" msgstr "" -#: sabnzbd/skintext.py:658 # sabnzbd/skintext.py:710 +#: sabnzbd/skintext.py:657 # sabnzbd/skintext.py:709 msgid "Sort" msgstr "" -#: sabnzbd/skintext.py:659 # sabnzbd/skintext.py:717 +#: sabnzbd/skintext.py:658 # sabnzbd/skintext.py:716 msgid "Purge the Queue?" msgstr "" -#: sabnzbd/skintext.py:661 +#: sabnzbd/skintext.py:660 msgid "Pause Interval" msgstr "" -#: sabnzbd/skintext.py:662 # sabnzbd/skintext.py:699 +#: sabnzbd/skintext.py:661 # sabnzbd/skintext.py:698 msgid "Pause for 5 minutes" msgstr "" -#: sabnzbd/skintext.py:663 # sabnzbd/skintext.py:700 +#: sabnzbd/skintext.py:662 # sabnzbd/skintext.py:699 msgid "Pause for 15 minutes" msgstr "" -#: sabnzbd/skintext.py:664 # sabnzbd/skintext.py:701 +#: sabnzbd/skintext.py:663 # sabnzbd/skintext.py:700 msgid "Pause for 30 minutes" msgstr "" -#: sabnzbd/skintext.py:665 # sabnzbd/skintext.py:702 +#: sabnzbd/skintext.py:664 # sabnzbd/skintext.py:701 msgid "Pause for 1 hour" msgstr "" -#: sabnzbd/skintext.py:666 # sabnzbd/skintext.py:703 +#: sabnzbd/skintext.py:665 # sabnzbd/skintext.py:702 msgid "Pause for 3 hours" msgstr "" -#: sabnzbd/skintext.py:667 # sabnzbd/skintext.py:704 +#: sabnzbd/skintext.py:666 # sabnzbd/skintext.py:703 msgid "Pause for 6 hours" msgstr "" -#: sabnzbd/skintext.py:668 +#: sabnzbd/skintext.py:667 msgid "Pause for 12 hours" msgstr "" -#: sabnzbd/skintext.py:669 +#: sabnzbd/skintext.py:668 msgid "Pause for 24 hours" msgstr "" -#: sabnzbd/skintext.py:670 +#: sabnzbd/skintext.py:669 msgid "Sort by Age Oldest→Newest" msgstr "" -#: sabnzbd/skintext.py:671 +#: sabnzbd/skintext.py:670 msgid "Sort by Age Newest→Oldest" msgstr "" -#: sabnzbd/skintext.py:672 +#: sabnzbd/skintext.py:671 msgid "Sort by Name A→Z" msgstr "" -#: sabnzbd/skintext.py:673 +#: sabnzbd/skintext.py:672 msgid "Sort by Name Z→A" msgstr "" -#: sabnzbd/skintext.py:674 +#: sabnzbd/skintext.py:673 msgid "Sort by Size Smallest→Largest" msgstr "" -#: sabnzbd/skintext.py:675 +#: sabnzbd/skintext.py:674 msgid "Sort by Size Largest→Smallest" msgstr "" -#: sabnzbd/skintext.py:676 +#: sabnzbd/skintext.py:675 msgid "Rename" msgstr "" -#: sabnzbd/skintext.py:677 +#: sabnzbd/skintext.py:676 msgid "Left" msgstr "" -#: sabnzbd/skintext.py:678 # sabnzbd/skintext.py:692 +#: sabnzbd/skintext.py:677 # sabnzbd/skintext.py:691 msgid "Purge the History?" msgstr "" -#: sabnzbd/skintext.py:682 +#: sabnzbd/skintext.py:681 msgid "Changes have not been saved, and will be lost." msgstr "" -#: sabnzbd/skintext.py:685 +#: sabnzbd/skintext.py:684 msgid "Open Source URL" msgstr "" -#: sabnzbd/skintext.py:686 +#: sabnzbd/skintext.py:685 msgid "Open Informational URL" msgstr "" -#: sabnzbd/skintext.py:688 +#: sabnzbd/skintext.py:687 msgid "Storage" msgstr "" -#: sabnzbd/skintext.py:689 +#: sabnzbd/skintext.py:688 msgid "View Script Log" msgstr "" -#: sabnzbd/skintext.py:693 +#: sabnzbd/skintext.py:692 msgid "You must enable JavaScript for Plush to function!" msgstr "" -#: sabnzbd/skintext.py:694 +#: sabnzbd/skintext.py:693 msgid "Add NZB" msgstr "" -#: sabnzbd/skintext.py:697 +#: sabnzbd/skintext.py:696 msgid "Plush Options" msgstr "" -#: sabnzbd/skintext.py:698 +#: sabnzbd/skintext.py:697 msgid "Update Available!" msgstr "" -#: sabnzbd/skintext.py:705 # sabnzbd/skintext.py:765 +#: sabnzbd/skintext.py:704 # sabnzbd/skintext.py:764 msgid "Pause for how many minutes?" msgstr "" -#: sabnzbd/skintext.py:706 +#: sabnzbd/skintext.py:705 msgid "Pause for..." msgstr "" -#: sabnzbd/skintext.py:707 +#: sabnzbd/skintext.py:706 msgid "Multi-Operations" msgstr "" -#: sabnzbd/skintext.py:708 +#: sabnzbd/skintext.py:707 msgid "Top Menu" msgstr "" -#: sabnzbd/skintext.py:709 +#: sabnzbd/skintext.py:708 msgid "On Finish" msgstr "" -#: sabnzbd/skintext.py:711 +#: sabnzbd/skintext.py:710 msgid "Sort by Age (Oldest→Newest)" msgstr "" -#: sabnzbd/skintext.py:712 +#: sabnzbd/skintext.py:711 msgid "Sort by Age (Newest→Oldest)" msgstr "" -#: sabnzbd/skintext.py:713 +#: sabnzbd/skintext.py:712 msgid "Sort by Name (A→Z)" msgstr "" -#: sabnzbd/skintext.py:714 +#: sabnzbd/skintext.py:713 msgid "Sort by Name (Z→A)" msgstr "" -#: sabnzbd/skintext.py:715 +#: sabnzbd/skintext.py:714 msgid "Sort by Size (Smallest→Largest)" msgstr "" -#: sabnzbd/skintext.py:716 +#: sabnzbd/skintext.py:715 msgid "Sort by Size (Largest→Smallest)" msgstr "" -#: sabnzbd/skintext.py:718 +#: sabnzbd/skintext.py:717 msgid "Purge" msgstr "" -#: sabnzbd/skintext.py:719 +#: sabnzbd/skintext.py:718 msgid "left" msgstr "" -#: sabnzbd/skintext.py:720 [Used in speed menu. Split in two lines if too long.] +#: sabnzbd/skintext.py:719 [Used in speed menu. Split in two lines if too long.] msgid "Max Speed" msgstr "" -#: sabnzbd/skintext.py:721 +#: sabnzbd/skintext.py:720 msgid "Range" msgstr "" -#: sabnzbd/skintext.py:722 +#: sabnzbd/skintext.py:721 msgid "Reset" msgstr "" -#: sabnzbd/skintext.py:723 +#: sabnzbd/skintext.py:722 msgid "Apply to Selected" msgstr "" -#: sabnzbd/skintext.py:724 +#: sabnzbd/skintext.py:723 msgid "page" msgstr "" -#: sabnzbd/skintext.py:725 +#: sabnzbd/skintext.py:724 msgid "Everything" msgstr "" -#: sabnzbd/skintext.py:726 +#: sabnzbd/skintext.py:725 msgid "Disabled" msgstr "" -#: sabnzbd/skintext.py:727 +#: sabnzbd/skintext.py:726 msgid "Refresh Rate" msgstr "" -#: sabnzbd/skintext.py:728 +#: sabnzbd/skintext.py:727 msgid "Container Width" msgstr "" -#: sabnzbd/skintext.py:729 +#: sabnzbd/skintext.py:728 msgid "Confirm Queue Deletions" msgstr "" -#: sabnzbd/skintext.py:730 +#: sabnzbd/skintext.py:729 msgid "Confirm History Deletions" msgstr "" -#: sabnzbd/skintext.py:731 +#: sabnzbd/skintext.py:730 msgid "This will prevent refreshing content when your mouse cursor is hovering over the queue." msgstr "" -#: sabnzbd/skintext.py:732 +#: sabnzbd/skintext.py:731 msgid "Block Refreshes on Hover" msgstr "" -#: sabnzbd/skintext.py:733 [Fetch from URL button in "Add NZB" dialog box] +#: sabnzbd/skintext.py:732 [Fetch from URL button in "Add NZB" dialog box] msgid "Fetch" msgstr "" -#: sabnzbd/skintext.py:734 [Upload button in "Add NZB" dialog box] +#: sabnzbd/skintext.py:733 [Upload button in "Add NZB" dialog box] msgid "Upload" msgstr "" -#: sabnzbd/skintext.py:735 +#: sabnzbd/skintext.py:734 msgid "Upload: .nzb .rar .zip .gz" msgstr "" -#: sabnzbd/skintext.py:736 +#: sabnzbd/skintext.py:735 msgid "Optionally specify a filename" msgstr "" -#: sabnzbd/skintext.py:737 # sabnzbd/skintext.py:787 +#: sabnzbd/skintext.py:736 # sabnzbd/skintext.py:786 msgid "Progress" msgstr "" -#: sabnzbd/skintext.py:738 +#: sabnzbd/skintext.py:737 msgid "Remaining" msgstr "" -#: sabnzbd/skintext.py:739 +#: sabnzbd/skintext.py:738 msgid "Not enough disk space to complete downloads!" msgstr "" -#: sabnzbd/skintext.py:740 +#: sabnzbd/skintext.py:739 msgid "Free Space" msgstr "" -#: sabnzbd/skintext.py:741 +#: sabnzbd/skintext.py:740 msgid "Free (Temp)" msgstr "" -#: sabnzbd/skintext.py:742 +#: sabnzbd/skintext.py:741 msgid "IDLE" msgstr "" -#: sabnzbd/skintext.py:743 +#: sabnzbd/skintext.py:742 msgid "Downloads" msgstr "" -#: sabnzbd/skintext.py:744 +#: sabnzbd/skintext.py:743 msgid "Queue repair" msgstr "" -#: sabnzbd/skintext.py:747 +#: sabnzbd/skintext.py:746 msgid "Read Feed will get the current feed content. Force Download will download all matching NZBs now." msgstr "" -#: sabnzbd/skintext.py:751 +#: sabnzbd/skintext.py:750 msgid "Hour:Min" msgstr "" -#: sabnzbd/skintext.py:752 +#: sabnzbd/skintext.py:751 msgid "Delete Completed" msgstr "" -#: sabnzbd/skintext.py:753 +#: sabnzbd/skintext.py:752 msgid "Delete the all failed items from the history?" msgstr "" -#: sabnzbd/skintext.py:754 +#: sabnzbd/skintext.py:753 msgid "Delete Failed" msgstr "" -#: sabnzbd/skintext.py:755 +#: sabnzbd/skintext.py:754 msgid "Links" msgstr "" -#: sabnzbd/skintext.py:758 +#: sabnzbd/skintext.py:757 msgid "Showing %s to %s out of %s results" msgstr "" -#: sabnzbd/skintext.py:759 +#: sabnzbd/skintext.py:758 msgid "No results" msgstr "" -#: sabnzbd/skintext.py:760 +#: sabnzbd/skintext.py:759 msgid "Showing one result" msgstr "" -#: sabnzbd/skintext.py:769 +#: sabnzbd/skintext.py:768 msgid "Email Sent!" msgstr "" -#: sabnzbd/skintext.py:770 +#: sabnzbd/skintext.py:769 msgid "Notification Sent!" msgstr "" -#: sabnzbd/skintext.py:771 +#: sabnzbd/skintext.py:770 msgid "Saving.." msgstr "" -#: sabnzbd/skintext.py:772 +#: sabnzbd/skintext.py:771 msgid "Saved" msgstr "" -#: sabnzbd/skintext.py:774 +#: sabnzbd/skintext.py:773 msgid "Speed" msgstr "" -#: sabnzbd/skintext.py:775 +#: sabnzbd/skintext.py:774 msgid "Toggle Add NZB" msgstr "" -#: sabnzbd/skintext.py:776 +#: sabnzbd/skintext.py:775 msgid "DualView1" msgstr "" -#: sabnzbd/skintext.py:777 +#: sabnzbd/skintext.py:776 msgid "DualView2" msgstr "" -#: sabnzbd/skintext.py:779 +#: sabnzbd/skintext.py:778 msgid "Custom" msgstr "" -#: sabnzbd/skintext.py:780 +#: sabnzbd/skintext.py:779 msgid "Get Bookmarks" msgstr "" -#: sabnzbd/skintext.py:781 +#: sabnzbd/skintext.py:780 msgid "Are you sure you want to restart SABnzbd?" msgstr "" -#: sabnzbd/skintext.py:782 +#: sabnzbd/skintext.py:781 msgid "Refresh rate" msgstr "" -#: sabnzbd/skintext.py:783 +#: sabnzbd/skintext.py:782 msgid "Delete All" msgstr "" -#: sabnzbd/skintext.py:784 +#: sabnzbd/skintext.py:783 msgid "Hide Edit Options" msgstr "" -#: sabnzbd/skintext.py:785 +#: sabnzbd/skintext.py:784 msgid "Show Edit Options" msgstr "" -#: sabnzbd/skintext.py:786 +#: sabnzbd/skintext.py:785 msgid "Edit" msgstr "" -#: sabnzbd/skintext.py:788 +#: sabnzbd/skintext.py:787 msgid "Timeleft" msgstr "" -#: sabnzbd/skintext.py:792 +#: sabnzbd/skintext.py:791 msgid "SABnzbd Quick-Start Wizard" msgstr "" -#: sabnzbd/skintext.py:793 +#: sabnzbd/skintext.py:792 msgid "SABnzbd Version" msgstr "" -#: sabnzbd/skintext.py:794 [Button to go to previous Wizard page] +#: sabnzbd/skintext.py:793 [Button to go to previous Wizard page] msgid "Previous" msgstr "" -#: sabnzbd/skintext.py:796 [Wizard step in which the web server is set] +#: sabnzbd/skintext.py:795 [Wizard step in which the web server is set] msgid "Access" msgstr "" -#: sabnzbd/skintext.py:797 +#: sabnzbd/skintext.py:796 msgid "I want SABnzbd to be viewable by any pc on my network." msgstr "" -#: sabnzbd/skintext.py:798 +#: sabnzbd/skintext.py:797 msgid "I want SABnzbd to be viewable from my pc only." msgstr "" -#: sabnzbd/skintext.py:799 +#: sabnzbd/skintext.py:798 msgid "Password protect access to SABnzbd (recommended)" msgstr "" -#: sabnzbd/skintext.py:800 +#: sabnzbd/skintext.py:799 msgid "Enable HTTPS access to SABnzbd." msgstr "" -#: sabnzbd/skintext.py:801 [Wizard step] +#: sabnzbd/skintext.py:800 [Wizard step] msgid "Misc" msgstr "" -#: sabnzbd/skintext.py:802 +#: sabnzbd/skintext.py:801 msgid "Launch my internet browser with the SABnzbd page when the program starts." msgstr "" -#: sabnzbd/skintext.py:803 +#: sabnzbd/skintext.py:802 msgid "Server Details" msgstr "" -#: sabnzbd/skintext.py:804 +#: sabnzbd/skintext.py:803 msgid "Please enter in the details of your primary usenet provider." msgstr "" -#: sabnzbd/skintext.py:806 +#: sabnzbd/skintext.py:805 msgid "In order to download from usenet you will require access to a provider. Your ISP may provide you with access, however a premium provider is recommended." msgstr "" -#: sabnzbd/skintext.py:807 +#: sabnzbd/skintext.py:806 msgid "Don't have a usenet provider? We recommend trying %s." msgstr "" -#: sabnzbd/skintext.py:808 +#: sabnzbd/skintext.py:807 msgid "The number of connections allowed by your provider" msgstr "" -#: sabnzbd/skintext.py:809 [Wizard: examples of amount of connections] +#: sabnzbd/skintext.py:808 [Wizard: examples of amount of connections] msgid "E.g. 8 or 20" msgstr "" -#: sabnzbd/skintext.py:810 +#: sabnzbd/skintext.py:809 msgid "Select only if your provider allows SSL connections." msgstr "" -#: sabnzbd/skintext.py:811 +#: sabnzbd/skintext.py:810 msgid "Click to test the entered details." msgstr "" -#: sabnzbd/skintext.py:812 +#: sabnzbd/skintext.py:811 msgid "This field is required." msgstr "" -#: sabnzbd/skintext.py:813 +#: sabnzbd/skintext.py:812 msgid "Please enter a whole number." msgstr "" -#: sabnzbd/skintext.py:814 +#: sabnzbd/skintext.py:813 msgid "If you are a member of newzbin or nzbmatrix, you may enter your username and password here so we can fetch their nzb's. This stage can be skipped if you don't use either services." msgstr "" -#: sabnzbd/skintext.py:815 +#: sabnzbd/skintext.py:814 msgid "Automatically download bookmarked posts." msgstr "" -#: sabnzbd/skintext.py:817 [Abbreviation for "for example"] +#: sabnzbd/skintext.py:816 [Abbreviation for "for example"] msgid "E.g." msgstr "" -#: sabnzbd/skintext.py:819 [Wizard step] +#: sabnzbd/skintext.py:818 [Wizard step] msgid "Restarting SABnzbd..." msgstr "" -#: sabnzbd/skintext.py:820 [Wizard step] +#: sabnzbd/skintext.py:819 [Wizard step] msgid "Setup is now complete!" msgstr "" -#: sabnzbd/skintext.py:821 [Wizard tip] +#: sabnzbd/skintext.py:820 [Wizard tip] msgid "SABnzbd will now be running in the background." msgstr "" -#: sabnzbd/skintext.py:822 [Wizard tip] +#: sabnzbd/skintext.py:821 [Wizard tip] msgid "Closing any browser windows/tabs will NOT close SABnzbd." msgstr "" -#: sabnzbd/skintext.py:823 [Wizard tip] +#: sabnzbd/skintext.py:822 [Wizard tip] msgid "After SABnzbd has finished restarting you will be able to access it at the following location: %s" msgstr "" -#: sabnzbd/skintext.py:824 [Wizard tip] +#: sabnzbd/skintext.py:823 [Wizard tip] msgid "It is recommended you right click and bookmark this location and use this bookmark to access SABnzbd when it is running in the background." msgstr "" -#: sabnzbd/skintext.py:825 [Will be appended with a wiki-link, adjust word order accordingly] +#: sabnzbd/skintext.py:824 [Will be appended with a wiki-link, adjust word order accordingly] msgid "Further help can be found on our" msgstr "" -#: sabnzbd/skintext.py:826 [Wizard step] +#: sabnzbd/skintext.py:825 [Wizard step] msgid "Go to SABnzbd" msgstr "" -#: sabnzbd/skintext.py:827 [Wizard step] # sabnzbd/wizard.py:86 +#: sabnzbd/skintext.py:826 [Wizard step] # sabnzbd/wizard.py:86 msgid "Step One" msgstr "" -#: sabnzbd/skintext.py:828 [Wizard step] # sabnzbd/wizard.py:129 +#: sabnzbd/skintext.py:827 [Wizard step] # sabnzbd/wizard.py:129 msgid "Step Two" msgstr "" -#: sabnzbd/skintext.py:829 [Wizard step] # sabnzbd/wizard.py:167 +#: sabnzbd/skintext.py:828 [Wizard step] # sabnzbd/wizard.py:167 msgid "Step Three" msgstr "" -#: sabnzbd/skintext.py:830 [Wizard step] # sabnzbd/wizard.py:195 +#: sabnzbd/skintext.py:829 [Wizard step] # sabnzbd/wizard.py:195 msgid "Step Four" msgstr "" -#: sabnzbd/skintext.py:831 [Wizard step] +#: sabnzbd/skintext.py:830 [Wizard step] msgid "Step Five" msgstr "" -#: sabnzbd/skintext.py:832 [Wizard port number examples] +#: sabnzbd/skintext.py:831 [Wizard port number examples] msgid "E.g. 119 or 563 for SSL" msgstr "" -#: sabnzbd/skintext.py:835 +#: sabnzbd/skintext.py:834 msgid "" "\n" "SABnzbd comes with ABSOLUTELY NO WARRANTY.\n" diff --git a/sabnzbd/__init__.py b/sabnzbd/__init__.py index dba0931..e68d254 100644 --- a/sabnzbd/__init__.py +++ b/sabnzbd/__init__.py @@ -229,9 +229,9 @@ def initialize(pause_downloader = False, clean_up = False, evalSched=False, repa cfg.pause_on_post_processing.callback(guard_pause_on_pp) cfg.growl_server.callback(sabnzbd.growler.change_value) cfg.growl_password.callback(sabnzbd.growler.change_value) - cfg.quotum_size.callback(guard_quotum_size) - cfg.quotum_day.callback(guard_quotum_dp) - cfg.quotum_period.callback(guard_quotum_dp) + cfg.quota_size.callback(guard_quota_size) + cfg.quota_day.callback(guard_quota_dp) + cfg.quota_period.callback(guard_quota_dp) ### Set cache limit ArticleCache.do.new_limit(cfg.cache_limit.get_int()) @@ -422,12 +422,12 @@ def guard_pause_on_pp(): else: Downloader.do.resume_from_postproc() -def guard_quotum_size(): - """ Callback for change of quotum_size """ - BPSMeter.do.change_quotum() +def guard_quota_size(): + """ Callback for change of quota_size """ + BPSMeter.do.change_quota() -def guard_quotum_dp(): - """ Callback for change of quotum_day or quotum_period """ +def guard_quota_dp(): + """ Callback for change of quota_day or quota_period """ scheduler.restart(force=True) def add_msgid(msgid, pp=None, script=None, cat=None, priority=None, nzbname=None): diff --git a/sabnzbd/api.py b/sabnzbd/api.py index cc61a1e..7e79f69 100644 --- a/sabnzbd/api.py +++ b/sabnzbd/api.py @@ -600,9 +600,9 @@ def _api_rss_now(name, output, kwargs): scheduler.force_rss() return report(output) -def _api_reset_quotum(name, output, kwargs): - """ Reset quotum left """ - BPSMeter.do.reset_quotum(force=True) +def _api_reset_quota(name, output, kwargs): + """ Reset quota left """ + BPSMeter.do.reset_quota(force=True) def _api_undefined(name, output, kwargs): """ API: accepts output """ @@ -738,7 +738,7 @@ _api_table = { 'watched_now' : _api_watched_now, 'rss_now' : _api_rss_now, 'browse' : _api_browse, - 'reset_quotum' : _api_reset_quotum + 'reset_quota' : _api_reset_quota } _api_queue_table = { @@ -1499,9 +1499,9 @@ def build_header(prim): header['mb'] = "%.2f" % (bytes / MEBI) header['sizeleft'] = format_bytes(bytesleft) header['size'] = format_bytes(bytes) - header['quotum'] = to_units(BPSMeter.do.quotum) - header['have_quotum'] = bool(BPSMeter.do.quotum > 0.0) - header['left_quotum'] = to_units(BPSMeter.do.left) + header['quota'] = to_units(BPSMeter.do.quota) + header['have_quota'] = bool(BPSMeter.do.quota > 0.0) + header['left_quota'] = to_units(BPSMeter.do.left) status = '' if Downloader.do.paused: diff --git a/sabnzbd/bpsmeter.py b/sabnzbd/bpsmeter.py index 9a96bea..2765afc 100644 --- a/sabnzbd/bpsmeter.py +++ b/sabnzbd/bpsmeter.py @@ -102,7 +102,6 @@ class BPSMeter(object): def __init__(self): t = time.time() - self.start_time = t self.log_time = t self.last_update = t @@ -116,13 +115,13 @@ class BPSMeter(object): self.end_of_day = tomorrow(t) # Time that current day will end self.end_of_week = next_week(t) # Time that current day will end self.end_of_month = next_month(t) # Time that current month will end - self.q_day = 1 # Day of quotum reset - self.q_period = 'm' # Daily/Weekly/Monthly quotum = d/w/m - self.quotum = self.left = 0.0 # Quotum and remaining quotum - self.have_quotum = False # Flag for quotum active - self.reset_q_time = 0L # Next reset time for quotum - self.hour = 0 # Quotum reset hour - self.minute = 0 # Quotum reset minute + self.q_day = 1 # Day of quota reset + self.q_period = 'm' # Daily/Weekly/Monthly quota = d/w/m + self.quota = self.left = 0.0 # Quota and remaining quota + self.have_quota = False # Flag for quota active + self.q_time = 0L # Next reset time for quota + self.q_hour = 0 # Quota reset hour + self.q_minute = 0 # Quota reset minute BPSMeter.do = self @@ -132,29 +131,29 @@ class BPSMeter(object): data = (self.last_update, self.grand_total, self.day_total, self.week_total, self.month_total, self.end_of_day, self.end_of_week, self.end_of_month, - self.quotum, self.left, self.reset_q_time + self.quota, self.left, self.q_time ) sabnzbd.save_admin(data, BYTES_FILE_NAME) def read(self): """ Read admin from disk """ - quotum = self.left = cfg.quotum_size.get_float() # Quotum for this period + quota = self.left = cfg.quota_size.get_float() # Quota for this period data = sabnzbd.load_admin(BYTES_FILE_NAME) try: self.last_update, self.grand_total, \ self.day_total, self.week_total, self.month_total, \ self.end_of_day, self.end_of_week, self.end_of_month = data[:8] if len(data) == 11: - self.quotum, self.left, self.reset_q_time = data[8:] - logging.debug('Read quotum q=%s l=%s reset=%s', - self.quotum, self.left, self.reset_q_time) - if abs(quotum - self.quotum) > 0.5: - self.change_quotum() + self.quota, self.left, self.q_time = data[8:] + logging.debug('Read quota q=%s l=%s reset=%s', + self.quota, self.left, self.q_time) + if abs(quota - self.quota) > 0.5: + self.change_quota() else: - self.quotum = self.left = cfg.quotum_size.get_float() - self.have_quotum = bool(cfg.quotum_size()) - res = self.reset_quotum() + self.quota = self.left = cfg.quota_size.get_float() + self.have_quota = bool(cfg.quota_size()) + res = self.reset_quota() except: # Get the latest data from the database and assign to a fake server logging.debug('Setting default BPS meter values') @@ -205,14 +204,14 @@ class BPSMeter(object): self.grand_total[server] = 0L self.grand_total[server] += amount - # Quotum check - if self.have_quotum: + # Quota check + if self.have_quota: self.left -= amount if self.left <= 0.0: from sabnzbd.downloader import Downloader if Downloader.do and not Downloader.do.paused: Downloader.do.pause() - logging.warning(Ta('Quotum spent, pausing downloading')) + logging.warning(Ta('Quota spent, pausing downloading')) # Speedometer try: @@ -262,15 +261,15 @@ class BPSMeter(object): return self.bps - def reset_quotum(self, force=False): - """ Check if it's time to reset the quotum, optionally resuming + def reset_quota(self, force=False): + """ Check if it's time to reset the quota, optionally resuming Return True, when still paused """ - if force or (self.have_quotum and time.time() > (self.reset_q_time - 50)): - self.quotum = self.left = cfg.quotum_size.get_float() - logging.info('Quotum was reset to %s', self.quotum) - if cfg.quotum_resume(): - logging.info('Auto-resume due to quotum reset') + if force or (self.have_quota and time.time() > (self.q_time - 50)): + self.quota = self.left = cfg.quota_size.get_float() + logging.info('Quota was reset to %s', self.quota) + if cfg.quota_resume(): + logging.info('Auto-resume due to quota reset') if sabnzbd.downloader.Downloader.do: sabnzbd.downloader.Downloader.do.resume() self.next_reset() @@ -284,34 +283,34 @@ class BPSMeter(object): t = t or time.time() tm = time.localtime(t) if self.q_period == 'd': - nx = (tm[0], tm[1], tm[2], self.hour, self.minute, 0, 0, 0, tm[8]) - if (tm.tm_hour + tm.tm_min * 60) >= (self.hour + self.minute * 60): + nx = (tm[0], tm[1], tm[2], self.q_hour, self.q_minute, 0, 0, 0, tm[8]) + if (tm.tm_hour + tm.tm_min * 60) >= (self.q_hour + self.q_minute * 60): # If today's moment has passed, it will happen tomorrow t = time.mktime(nx) + 24 * 3600 tm = time.localtime(t) elif self.q_period == 'w': - if self.q_day < tm.tm_wday+1 or (self.q_day == tm.tm_wday+1 and (tm.tm_hour + tm.tm_min * 60) >= (self.hour + self.minute * 60)): + if self.q_day < tm.tm_wday+1 or (self.q_day == tm.tm_wday+1 and (tm.tm_hour + tm.tm_min * 60) >= (self.q_hour + self.q_minute * 60)): tm = time.localtime(next_week(t)) dif = abs(self.q_day - tm.tm_wday - 1) t = time.mktime(tm) + dif * 24 * 3600 tm = time.localtime(t) elif self.q_period == 'm': - if self.q_day < tm.tm_mday or (self.q_day == tm.tm_mday and (tm.tm_hour + tm.tm_min * 60) >= (self.hour + self.minute * 60)): + if self.q_day < tm.tm_mday or (self.q_day == tm.tm_mday and (tm.tm_hour + tm.tm_min * 60) >= (self.q_hour + self.q_minute * 60)): tm = time.localtime(next_month(t)) - tm = (tm[0], tm[1], self.q_day, self.hour, self.minute, 0, 0, 0, tm[8]) + tm = (tm[0], tm[1], self.q_day, self.q_hour, self.q_minute, 0, 0, 0, tm[8]) else: return - tm = (tm[0], tm[1], tm[2], self.hour, self.minute, 0, 0, 0, tm[8]) - self.reset_q_time = time.mktime(tm) - logging.debug('Will reset quotum at %s', tm) + tm = (tm[0], tm[1], tm[2], self.q_hour, self.q_minute, 0, 0, 0, tm[8]) + self.q_time = time.mktime(tm) + logging.debug('Will reset quota at %s', tm) - def change_quotum(self): - """ Update quotum, potentially pausing downloader + def change_quota(self): + """ Update quota, potentially pausing downloader """ - if not self.have_quotum and self.quotum < 0.5: + if not self.have_quota and self.quota < 0.5: # Never set, use last period's size - per = cfg.quotum_period() + per = cfg.quota_period() sums = self.get_sums() if per == 'd': self.left = sums[3] @@ -320,51 +319,51 @@ class BPSMeter(object): elif per == 'm': self.left = sums[1] - self.have_quotum = bool(cfg.quotum_size()) - if self.have_quotum: - quotum = cfg.quotum_size.get_float() - self.left = quotum - (self.quotum - self.left) - self.quotum = quotum + self.have_quota = bool(cfg.quota_size()) + if self.have_quota: + quota = cfg.quota_size.get_float() + self.left = quota - (self.quota - self.left) + self.quota = quota else: - self.quotum = self.left = 0L + self.quota = self.left = 0L self.update(0) self.next_reset() if self.left > 0.5: from sabnzbd.downloader import Downloader - if cfg.quotum_resume() and Downloader.do and Downloader.do.paused: + if cfg.quota_resume() and Downloader.do and Downloader.do.paused: Downloader.do.resume() # Pattern = # The and part can both be optional __re_day = re.compile('^\s*(\d+)[^:]*') __re_hm = re.compile('(\d+):(\d+)\s*$') - def get_quotum(self): - """ If quotum active, return check-function, hour, minute + def get_quota(self): + """ If quota active, return check-function, hour, minute """ - if self.have_quotum: - self.q_period = cfg.quotum_period()[0].lower() + if self.have_quota: + self.q_period = cfg.quota_period()[0].lower() self.q_day = 1 - self.hour = self.minute = 0 - txt = cfg.quotum_day().lower() + self.q_hour = self.q_minute = 0 + txt = cfg.quota_day().lower() m = self.__re_day.search(txt) if m: self.q_day = int(m.group(1)) m = self.__re_hm.search(txt) if m: - self.hour = int(m.group(1)) - self.minute = int(m.group(2)) + self.q_hour = int(m.group(1)) + self.q_minute = int(m.group(2)) self.q_day = max(1, self.q_day) self.q_day = min(7, self.q_day) - self.change_quotum() - return quotum_handler, self.hour, self.minute + self.change_quota() + return quota_handler, self.q_hour, self.q_minute else: return None, 0, 0 -def quotum_handler(): +def quota_handler(): """ To be called from scheduler """ - logging.debug('Checking quotum') - BPSMeter.do.reset_quotum() + logging.debug('Checking quota') + BPSMeter.do.reset_quota() BPSMeter() diff --git a/sabnzbd/cfg.py b/sabnzbd/cfg.py index a0bf1aa..1f5ae64 100644 --- a/sabnzbd/cfg.py +++ b/sabnzbd/cfg.py @@ -217,10 +217,10 @@ growl_password = OptionPassword('growl', 'growl_password') growl_enable = OptionBool('growl', 'growl_enable', True) ntfosd_enable = OptionBool('growl', 'ntfosd_enable', True) -quotum_size = OptionStr('misc', 'quotum_size') -quotum_day = OptionStr('misc', 'quotum_day') -quotum_resume = OptionBool('misc', 'quotum_resume', False) -quotum_period = OptionStr('misc', 'quotum_period', 'm') +quota_size = OptionStr('misc', 'quota_size') +quota_day = OptionStr('misc', 'quota_day') +quota_resume = OptionBool('misc', 'quota_resume', False) +quota_period = OptionStr('misc', 'quota_period', 'm') #------------------------------------------------------------------------------ # Set root folders for Folder config-items diff --git a/sabnzbd/downloader.py b/sabnzbd/downloader.py index 92ba12d..828a115 100644 --- a/sabnzbd/downloader.py +++ b/sabnzbd/downloader.py @@ -277,7 +277,7 @@ class Downloader(Thread): from sabnzbd.nzbqueue import NzbQueue self.decoder.start() - # Kick BPS-Meter to check quotum + # Kick BPS-Meter to check quota BPSMeter.do.update() while 1: diff --git a/sabnzbd/interface.py b/sabnzbd/interface.py index 75b6e3d..3d94407 100644 --- a/sabnzbd/interface.py +++ b/sabnzbd/interface.py @@ -1130,7 +1130,7 @@ SWITCH_LIST = \ 'ignore_samples', 'pause_on_post_processing', 'quick_check', 'nice', 'ionice', 'ssl_type', 'pre_script', 'pause_on_pwrar', 'ampm', 'sfv_check', 'folder_rename', 'unpack_check', 'pre_check', - 'quotum_size', 'quotum_day', 'quotum_resume', 'quotum_period' + 'quota_size', 'quota_day', 'quota_resume', 'quota_period' ) #------------------------------------------------------------------------------ @@ -2187,10 +2187,10 @@ class ConnectionInfo(object): return template.respond() @cherrypy.expose - def reset_quotum(self, **kwargs): + def reset_quota(self, **kwargs): msg = check_session(kwargs) if msg: return msg - BPSMeter.do.reset_quotum(force=True) + BPSMeter.do.reset_quota(force=True) raise dcRaiser(self.__root, kwargs) @cherrypy.expose diff --git a/sabnzbd/scheduler.py b/sabnzbd/scheduler.py index fc15550..4e7496b 100644 --- a/sabnzbd/scheduler.py +++ b/sabnzbd/scheduler.py @@ -158,10 +158,10 @@ def init(): __SCHED.add_single_task(Bookmarks.do.run, 'Bookmarks', 20, kronos.method.sequential, None, None) - action, hour, minute = sabnzbd.bpsmeter.BPSMeter.do.get_quotum() + action, hour, minute = sabnzbd.bpsmeter.BPSMeter.do.get_quota() if action: - logging.info('Setting schedule for quotum check daily at %s:%s', hour, minute) - __SCHED.add_daytime_task(action, 'quotum_reset', range(1, 8), None, (hour, minute), + logging.info('Setting schedule for quota check daily at %s:%s', hour, minute) + __SCHED.add_daytime_task(action, 'quota_reset', range(1, 8), None, (hour, minute), kronos.method.sequential, [], None) diff --git a/sabnzbd/skintext.py b/sabnzbd/skintext.py index 1e555fe..5e15004 100644 --- a/sabnzbd/skintext.py +++ b/sabnzbd/skintext.py @@ -197,9 +197,9 @@ SKIN_TEXT = { 'removeNZB-Files' : TT('Remove NZB & Delete Files'), #: Queue page button 'AofB' : TT('of'), #: Queue page, as in "4G *of* 10G" 'missingArt': TT('Missing articles'), #: Caption for missing articles in Queue - 'quotum-left' : TT('Quotum left'), #: Remaining quotum (displayed in Queue) - 'manual' : TT('manual'), #: Manual reset of quotum - 'link-resetQuotum' : TT('Reset Quotum now'), + 'quota-left' : TT('Quota left'), #: Remaining quota (displayed in Queue) + 'manual' : TT('manual'), #: Manual reset of quota + 'link-resetQuota' : TT('Reset Quota now'), # History page 'purgeHist' : TT('Purge History'), #: History page button @@ -425,19 +425,18 @@ SKIN_TEXT = { 'swtag-queue' : TT('Queue'), 'swtag-pp' : TT('Post processing'), 'swtag-naming' : TT('Naming'), - 'swtag-quotum' : TT('Quotum'), - 'opt-quotum_size' : TT('Size'), #: Size of the download quotum - 'explain-quotum_size' : TT('How much can be downloaded this month (K/M/G)'), - 'opt-quotum_day' : TT('Reset day'), #: Reset day of the download quotum - 'explain-quotum_day' : TT('On which day of the month or week (1=Monday) does your ISP reset the quotum? (Optionally with hh:mm)'), - 'opt-quotum_resume' : TT('Auto resume'), #: Auto-resume download on the reset day - 'explain-quotum_resume' : TT('Should downloading resume after the quotum is reset?'), - 'opt-quotum_period' : TT('Quotum period'), #: Does the quotum get reset every day, week or month? - 'explain-quotum_period' : TT('Does the quotum get reset each day, week or month?'), + 'swtag-quota' : TT('Quota'), + 'opt-quota_size' : TT('Size'), #: Size of the download quota + 'explain-quota_size' : TT('How much can be downloaded this month (K/M/G)'), + 'opt-quota_day' : TT('Reset day'), #: Reset day of the download quota + 'explain-quota_day' : TT('On which day of the month or week (1=Monday) does your ISP reset the quota? (Optionally with hh:mm)'), + 'opt-quota_resume' : TT('Auto resume'), #: Auto-resume download on the reset day + 'explain-quota_resume' : TT('Should downloading resume after the quota is reset?'), + 'opt-quota_period' : TT('Quota period'), #: Does the quota get reset every day, week or month? + 'explain-quota_period' : TT('Does the quota get reset each day, week or month?'), 'opt-pre_check' : TT('Check before download'), 'explain-pre_check' : TT('Try to predict successful completion before actual download (slower!)'), - # Config->Server 'configServer' : TT('Server configuration'), 'defServer' : TT('Server definition'),