Compare commits
227 Commits
0.7.0Alpha
...
0.7.2RC2
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
9561b8a64e | ||
|
|
7b0e56b55f | ||
|
|
c6d5a79776 | ||
|
|
faa4cacd3e | ||
|
|
56e417eea1 | ||
|
|
5f02ec00f9 | ||
|
|
5ea35db922 | ||
|
|
5dcf26a56c | ||
|
|
35b598d10e | ||
|
|
5e7b27c4ef | ||
|
|
9ed408d35b | ||
|
|
6c782fe255 | ||
|
|
1689323dc3 | ||
|
|
a3c50a907a | ||
|
|
36a3792846 | ||
|
|
4cd0c0691a | ||
|
|
6ac98dcacd | ||
|
|
0a0d00930a | ||
|
|
28a0d041f9 | ||
|
|
85bb91a7ea | ||
|
|
6561e0abfa | ||
|
|
6715e61a68 | ||
|
|
a886b284b6 | ||
|
|
a349c82b6f | ||
|
|
1f4df0ebf4 | ||
|
|
0221e7bf93 | ||
|
|
f9cf14e7d8 | ||
|
|
7258e56a20 | ||
|
|
90bd495d44 | ||
|
|
6c216d6dfe | ||
|
|
e1f3fae6c7 | ||
|
|
29f126ca47 | ||
|
|
8b4b742466 | ||
|
|
57a9d362bc | ||
|
|
b7d54c2bea | ||
|
|
59f9833076 | ||
|
|
8e360fe53e | ||
|
|
afc5005382 | ||
|
|
3a531c6d2b | ||
|
|
f056ad6347 | ||
|
|
5c1342a663 | ||
|
|
dfe8a47a2a | ||
|
|
e293a439dd | ||
|
|
7e0027922a | ||
|
|
00b5302ba9 | ||
|
|
79488c4785 | ||
|
|
c3d0438250 | ||
|
|
2909d4636b | ||
|
|
a1ee8b6af4 | ||
|
|
cfe3b58f7f | ||
|
|
ff6b87ef5b | ||
|
|
8fbcfd0d5a | ||
|
|
347ba999b4 | ||
|
|
503bcf64c9 | ||
|
|
2a667470a1 | ||
|
|
c61165b840 | ||
|
|
3672189bc8 | ||
|
|
5b38c772fb | ||
|
|
f28bc4dd9c | ||
|
|
e16cc49a17 | ||
|
|
f686cc94fd | ||
|
|
d88b5a3b3e | ||
|
|
bccc5665f5 | ||
|
|
69ac9d39ad | ||
|
|
b5b6999bc9 | ||
|
|
7ddb3d2752 | ||
|
|
9febaf919c | ||
|
|
2225383485 | ||
|
|
e3e500326c | ||
|
|
b73570fe2a | ||
|
|
d1357875c9 | ||
|
|
037c7661ea | ||
|
|
5337ade3fb | ||
|
|
504ce5458f | ||
|
|
d8d3b60cbc | ||
|
|
0b0e7d5531 | ||
|
|
18cd9ab7ca | ||
|
|
1392b3b1eb | ||
|
|
cd93abfab1 | ||
|
|
9fede00949 | ||
|
|
6ddc3fec96 | ||
|
|
f1030f9b6f | ||
|
|
6a8ff22f96 | ||
|
|
1e82b79c16 | ||
|
|
d85bc90cbb | ||
|
|
fdce48376a | ||
|
|
58cc6b2e7d | ||
|
|
5ebad3cb70 | ||
|
|
d4757a0a74 | ||
|
|
0406a4b901 | ||
|
|
95684fbe3a | ||
|
|
a4f8155138 | ||
|
|
cddb1ba7f3 | ||
|
|
73b2930a0b | ||
|
|
e74519ca43 | ||
|
|
f75fad9c6a | ||
|
|
2d8805a49f | ||
|
|
fc3a19a816 | ||
|
|
e1b2d49341 | ||
|
|
2cb6890dac | ||
|
|
e6bef729ed | ||
|
|
1545f7a4ef | ||
|
|
3f9446a336 | ||
|
|
7b3ab90a95 | ||
|
|
636b264432 | ||
|
|
59fd6bf23d | ||
|
|
59b4bbcdaa | ||
|
|
a82bdd9f74 | ||
|
|
a4f10e7577 | ||
|
|
71f3231487 | ||
|
|
2133092402 | ||
|
|
20e47ab099 | ||
|
|
3e9c8c3ff8 | ||
|
|
731f331502 | ||
|
|
b15efb4d38 | ||
|
|
ccfb0df819 | ||
|
|
620ef9fc64 | ||
|
|
f799fc08f7 | ||
|
|
11a1ce4a6c | ||
|
|
9610a5a0dd | ||
|
|
0b39afcd18 | ||
|
|
abe53b8a8a | ||
|
|
bffdf77d9a | ||
|
|
31a7016c15 | ||
|
|
b92bd6aa0d | ||
|
|
ed4a6567c3 | ||
|
|
1988977d7c | ||
|
|
9f33bb4bb3 | ||
|
|
02a8141de2 | ||
|
|
c852b44dcd | ||
|
|
1a44b38308 | ||
|
|
743bf88d28 | ||
|
|
c0250c2c29 | ||
|
|
50990a8a01 | ||
|
|
03c12a65ac | ||
|
|
3f7967326b | ||
|
|
6d47ba30b9 | ||
|
|
c4459e2238 | ||
|
|
cba0d3f890 | ||
|
|
95182b8fe5 | ||
|
|
0436247269 | ||
|
|
b41f4f0cb2 | ||
|
|
840ec9cb05 | ||
|
|
774ebf4cd5 | ||
|
|
13b7d75ee8 | ||
|
|
6171caa0e9 | ||
|
|
04c74be144 | ||
|
|
84ff098527 | ||
|
|
3afb1e37cb | ||
|
|
5c4cd2c343 | ||
|
|
4949782afd | ||
|
|
9dbb43b4e7 | ||
|
|
3667e7e596 | ||
|
|
eb7dc19732 | ||
|
|
5daa7487fa | ||
|
|
2a9ba72fcd | ||
|
|
20507eacc8 | ||
|
|
f0897fd046 | ||
|
|
6f546d608b | ||
|
|
41cf240cb4 | ||
|
|
3ec13769fa | ||
|
|
0153141394 | ||
|
|
b8359cc7de | ||
|
|
6becfafb6d | ||
|
|
e20f2cde02 | ||
|
|
88c1ef8d93 | ||
|
|
52329b7372 | ||
|
|
fbdf71c0e5 | ||
|
|
fdd14125ff | ||
|
|
1629676330 | ||
|
|
9a56a3238d | ||
|
|
a02fc91a1e | ||
|
|
f5f501a6c2 | ||
|
|
b4232369fe | ||
|
|
a9eb107503 | ||
|
|
9f7b5412da | ||
|
|
130c996bc2 | ||
|
|
5f5905138c | ||
|
|
69d4859ec5 | ||
|
|
b11710a32a | ||
|
|
f5673b190a | ||
|
|
ff21d6d4d1 | ||
|
|
951d5e6797 | ||
|
|
52a8e7a7e8 | ||
|
|
19be644888 | ||
|
|
460f510ce1 | ||
|
|
10a564c02e | ||
|
|
dc70f5e3cd | ||
|
|
760eb5b2be | ||
|
|
5fca90a8e2 | ||
|
|
444b65f003 | ||
|
|
ad0eb94e63 | ||
|
|
567d86b715 | ||
|
|
9394bc0f0b | ||
|
|
7c4e3b20cc | ||
|
|
55118154d3 | ||
|
|
595fbc4313 | ||
|
|
868df5fb46 | ||
|
|
11bae22827 | ||
|
|
5bbf8e9d89 | ||
|
|
e544c7e9c4 | ||
|
|
41c2b6ff62 | ||
|
|
fca9d0b89e | ||
|
|
af274c0f1c | ||
|
|
7929cabb87 | ||
|
|
e2de82979e | ||
|
|
0c89a69229 | ||
|
|
a1a45debdc | ||
|
|
6c3f22573a | ||
|
|
b934b64468 | ||
|
|
c2998590fb | ||
|
|
01bd6fb979 | ||
|
|
4e8a384004 | ||
|
|
8c515da6c0 | ||
|
|
c18a1bba10 | ||
|
|
be002f8281 | ||
|
|
b3b067c8fa | ||
|
|
08c3d0f511 | ||
|
|
c39ea87ef8 | ||
|
|
ba1693a853 | ||
|
|
9e36c64bb8 | ||
|
|
40f08f04e4 | ||
|
|
b9efcaa5a1 | ||
|
|
79cba85aba | ||
|
|
cf105e144b | ||
|
|
3a35402f1b | ||
|
|
f7f40d0c75 |
4
.gitignore
vendored
@@ -8,10 +8,10 @@ locale/
|
||||
srcdist/
|
||||
|
||||
# Generated email templates
|
||||
email/
|
||||
email/*.tmpl
|
||||
|
||||
# Romanian ro.po is generated from ro.px, due to mapping to latin-1
|
||||
po/*/ro.po
|
||||
ro.po
|
||||
|
||||
# Build results
|
||||
SABnzbd*.zip
|
||||
|
||||
3
.gitmodules
vendored
@@ -1,3 +0,0 @@
|
||||
[submodule "interfaces/Config"]
|
||||
path = interfaces/Config
|
||||
url = https://github.com/thezoggy/sabnzbd-uni_Config.git
|
||||
@@ -1,5 +1,5 @@
|
||||
*******************************************
|
||||
*** This is SABnzbd 0.7.0 ***
|
||||
*** This is SABnzbd 0.7.2 ***
|
||||
*******************************************
|
||||
SABnzbd is an open-source cross-platform binary newsreader.
|
||||
It simplifies the process of downloading from Usenet dramatically,
|
||||
|
||||
166
CHANGELOG.txt
@@ -1,3 +1,169 @@
|
||||
-------------------------------------------------------------------------------
|
||||
0.7.2RC2 by The SABnzbd-Team
|
||||
-------------------------------------------------------------------------------
|
||||
- Improve support for nzbsrus.com
|
||||
- Don't try to show NZB age when not known yet
|
||||
- Prevent systems with unresolvable hostnames from always using 0.0.0.0
|
||||
-------------------------------------------------------------------------------
|
||||
0.7.2RC1 by The SABnzbd-Team
|
||||
-------------------------------------------------------------------------------
|
||||
- Fix fatal error in nzbsrus.com support
|
||||
- Initial "quota left" was not set correctly when enabling quota
|
||||
- Report incorrect RSS filter expressions (instead of aborting analysis)
|
||||
- Improve detection of invalid articles (so that backup server will be tried)
|
||||
- Windows installer: improve NZB association so that a reboot isn't needed
|
||||
- Windows installer: don't remove settimngs by default when uninstalling
|
||||
- Fix sorting of rar files in job so that .rar preceeds .r00
|
||||
-------------------------------------------------------------------------------
|
||||
0.7.1Final by The SABnzbd-Team
|
||||
-------------------------------------------------------------------------------
|
||||
- Disable VC90 check in Windows Installer as long as we're still on Python 2.5
|
||||
- Windows: make sure \\server\share notation is never seen as a relative path
|
||||
-------------------------------------------------------------------------------
|
||||
0.7.1RC5 by The SABnzbd-Team
|
||||
-------------------------------------------------------------------------------
|
||||
- Fix signing of OSX DMG
|
||||
- Fix endless par2-fetch loop after retrying failed job
|
||||
- Don't send "bad fetch" email when emailing is off
|
||||
- Add some support for nzbrus.com's non-VIP limiting
|
||||
-------------------------------------------------------------------------------
|
||||
0.7.1RC4 by The SABnzbd-Team
|
||||
-------------------------------------------------------------------------------
|
||||
- Fix failure to grab NZBs from indexers that send compressed files.
|
||||
-------------------------------------------------------------------------------
|
||||
0.7.1RC3 by The SABnzbd-Team
|
||||
-------------------------------------------------------------------------------
|
||||
- Fixed stalling par2 fetches (after first verification run)
|
||||
- Fixed retry behaviour of NZB fetching from URL
|
||||
and add handling of nzbsrus.com error codes
|
||||
- Make sure that all malformed articles are retried on another server
|
||||
- Add no_ipv6 option that suppresses listing on ::1
|
||||
(to be used if your system cannot handle that)
|
||||
- Prevent crash in QuickCheck when expected par2 file wasn't downloaded
|
||||
- Verification/repair would not be executed properly when one more RAR files
|
||||
missed their first article.
|
||||
- API calls "addurl" and "addid" (newzbin) can be used interchangeably
|
||||
(Fixes a problem in Qouch)
|
||||
-------------------------------------------------------------------------------
|
||||
0.7.1RC2 by The SABnzbd-Team
|
||||
-------------------------------------------------------------------------------
|
||||
- Improved backup of sabnzbd.ini file
|
||||
Will use backup when original is gone or become corrupt
|
||||
- Windows: Using ::1 as single webhost address would start IE instead of default browser
|
||||
-------------------------------------------------------------------------------
|
||||
0.7.1RC1 by The SABnzbd-Team
|
||||
-------------------------------------------------------------------------------
|
||||
- Plush skin: fix problems with pull-down menus in Mobile Safari
|
||||
- On some Linux and OSX systems using localhost would still make SABnzbd
|
||||
give access to other computers
|
||||
- Windows: the installer did not set an icon when associating NZB files with SABnzbd
|
||||
- Fix problem that the Opera browser had with Config->Servers
|
||||
- Retry a few times when accessing a mounted drive to create the
|
||||
final destination folder
|
||||
- Reduce load caused by WinTray and OSX topmenu
|
||||
-------------------------------------------------------------------------------
|
||||
0.7.0Final by The SABnzbd-Team
|
||||
-------------------------------------------------------------------------------
|
||||
- Updated translations
|
||||
-------------------------------------------------------------------------------
|
||||
0.7.0RC2 by The SABnzbd-Team
|
||||
-------------------------------------------------------------------------------
|
||||
- Suppress permission errors on paths containing ".AppleDouble" or ".DS_Store"
|
||||
(Required for NAS systems that support Apple AFP shares)
|
||||
- OSX/Windows: Set article cache to 200M when not already set.
|
||||
- Pre-check: lower default minimum completion rate to 100.2%
|
||||
-------------------------------------------------------------------------------
|
||||
0.7.0RC1 by The SABnzbd-Team
|
||||
-------------------------------------------------------------------------------
|
||||
- Fix for rare crash in par2 fetching
|
||||
- Another /nomedia fix
|
||||
- Quota reset wasn't done when quota-reset-time was passed while SABnzbd wasn't running.
|
||||
- Pre-check: required ratio for NZB without par2 files should be 100%
|
||||
and not the "safe" ratio
|
||||
-------------------------------------------------------------------------------
|
||||
0.7.0Beta8 by The SABnzbd-Team
|
||||
-------------------------------------------------------------------------------
|
||||
- Disabled the .nomedia marker file feature.
|
||||
Those who want to try it, use the "nomedia_marker" setting in Config->Special
|
||||
It remains an experimental feature without guarantees
|
||||
- Add missing info in email about failed pre-check
|
||||
- Updated translations
|
||||
-------------------------------------------------------------------------------
|
||||
0.7.0Beta7 by The SABnzbd-Team
|
||||
-------------------------------------------------------------------------------
|
||||
- Fix for .nomedia files not being deleted
|
||||
- Fix NZB re-queueing (due to .nomedia remaining)
|
||||
- Polish was missing in Windows installer and Dutch was incorrect
|
||||
- When Sort renames auxillirary files, it should disregard case
|
||||
- Fix crash in Wizard on some Linux systems
|
||||
-------------------------------------------------------------------------------
|
||||
0.7.0Beta6 by The SABnzbd-Team
|
||||
-------------------------------------------------------------------------------
|
||||
- Upgrade unzip for Windows to 6.00 (supports ZIPs above 2G)
|
||||
- Lower threshold for pre-check to 100.5%
|
||||
- Fix removal of .nomedia file when using Sorting
|
||||
- Add Polish translation (using reduced character set)
|
||||
- Extension-based cleanup list now also removes extension-only files like ".sfv".
|
||||
- Several small issues
|
||||
-------------------------------------------------------------------------------
|
||||
0.7.0Beta5 by The SABnzbd-Team
|
||||
-------------------------------------------------------------------------------
|
||||
- Solved serious connection problem with some providers
|
||||
- Windows Tray has the "restart" entries no under a Troubleshoot menu
|
||||
- Fix newzbin entries in History's "Source" field
|
||||
- During unpacking the destination folder will contain a ".nomedia" file
|
||||
which will keep mediaplayers temporarily from indexing
|
||||
- Pre-check jobs now require 101% completion rate (with a "special" parameter)
|
||||
- Unified OSX DMG
|
||||
-------------------------------------------------------------------------------
|
||||
0.7.0Beta4 by The SABnzbd-Team
|
||||
-------------------------------------------------------------------------------
|
||||
- Add Portuguese (Brazil) language
|
||||
- Updated translations
|
||||
- Some odd NZB files led to blank initial filenames in file overview
|
||||
- Jobs that have 99.91%-99.99% completion rate should not be rounded to 100.0%
|
||||
- Windows Tray icon now has entry to show "complete" folder
|
||||
- Some minor fixes in code and Config skin
|
||||
- Individual RSS filter toggle
|
||||
-------------------------------------------------------------------------------
|
||||
0.7.0Beta3 by The SABnzbd-Team
|
||||
-------------------------------------------------------------------------------
|
||||
- OSX/Linux: permissions are now also applied to the "temporary download folder"
|
||||
- Fix some issues in the Config skin.
|
||||
- The default for "apply max retries only on optional servers" is now 0,
|
||||
thus enabling the new anti-deadlock behaviour for all servers
|
||||
- Fix incompatibility with nzbsa.co.za indexer
|
||||
- Log all API calls (in debug mode)
|
||||
- Restore Python2.5 compatibility in growler.py
|
||||
- After a language change, register again with Growl
|
||||
- Clean up the api-call auth. It will now give preference to 'apikey'.
|
||||
- Fix detection of retry-able history entries for case-insensitive file systems.
|
||||
- API-calls "addfile" and "addlocalfile" returned an incorrect status value.
|
||||
- Add support for the peculiar Usenet provider "free.xsusenet.com".
|
||||
- OSX menu now uses the same formatting for speed as the skins.
|
||||
- Accept multiple items in API-calls "addurl" and "addid".
|
||||
The "name" and "nzbname" keywords can be repeated.
|
||||
-------------------------------------------------------------------------------
|
||||
0.7.0Beta2 by The SABnzbd-Team
|
||||
-------------------------------------------------------------------------------
|
||||
- Fix behavior when using host address 0.0.0.0 on a system
|
||||
that doesn't resolve localhost properly
|
||||
- Add Spanish translation
|
||||
-------------------------------------------------------------------------------
|
||||
0.7.0Beta1 by The SABnzbd-Team
|
||||
-------------------------------------------------------------------------------
|
||||
- Updated nzbmatrix categories
|
||||
- "Special" option allows incomplete/partial NZB files
|
||||
- Forbid "complete" being a subfolder of "incomplete"
|
||||
-------------------------------------------------------------------------------
|
||||
0.7.0Alpha3 by The SABnzbd-Team
|
||||
-------------------------------------------------------------------------------
|
||||
- Fix failing join-by-par2
|
||||
- Prevent API crash when deleting non-existing history item
|
||||
- Prevent UI crash message when looking at NZB details page of finished job
|
||||
- Config skin: fix path complettion in Config->Folders
|
||||
- Config skin: fixes to support "hide behind proxy"
|
||||
- Keep using unrar 4.10 for OSX Leopard and older, due to PPC support
|
||||
-------------------------------------------------------------------------------
|
||||
0.7.0Alpha2 by The SABnzbd-Team
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
@@ -14,6 +14,20 @@ Sleeping members
|
||||
Honorary member (and original author)
|
||||
Gregor Kaufmann <tdian@users.sourceforge.net>
|
||||
|
||||
The main contributors and moderators of the translations
|
||||
Danish: Rene (nordjyden6)
|
||||
Dutch: ShyPike
|
||||
French : rAf and Fox Ace
|
||||
German: Severin Heiniger
|
||||
Norwegian: Protx
|
||||
Romanian: nicusor
|
||||
Serbian: Ozzii
|
||||
Swedish: Malmis
|
||||
Spanish: Syquus
|
||||
Portuguese (Brazil): lrrosa
|
||||
Russian: Pavel Maryanov
|
||||
Polish: Tomasz 'Zen' Napierala
|
||||
|
||||
This program is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU General Public License
|
||||
as published by the Free Software Foundation; either version 2
|
||||
|
||||
15
INSTALL.txt
@@ -1,4 +1,4 @@
|
||||
SABnzbd 0.7.0
|
||||
SABnzbd 0.7.2
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
0) LICENSE
|
||||
@@ -42,14 +42,17 @@ Use the "Help" button in the web-interface to be directed to the Help Wiki.
|
||||
-------------------------------------------------------------------------------
|
||||
3) INSTALL pre-built OSX binaries
|
||||
-------------------------------------------------------------------------------
|
||||
Download teh DMG file, mount and drag the SABnzbd icon to Programs.
|
||||
Download the DMG file, mount and drag the SABnzbd icon to Programs.
|
||||
Just like you do with so many apps.
|
||||
Make sure you pick the right folder, depending on your OSX version.
|
||||
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
4) INSTALL with only sources
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
You need to have Python installed and some modules.
|
||||
You need to have Python installed plus some non-standard Python modules
|
||||
and a few tools.
|
||||
|
||||
Unix/Linux/OSX
|
||||
Python-2.5, 2.6 or 2.7 http://www.python.org
|
||||
@@ -64,16 +67,14 @@ Windows
|
||||
|
||||
Essential modules
|
||||
cheetah-2.0.1+ http://www.cheetahtemplate.org/ (or use "pypm install cheetah")
|
||||
yenc module >= 0.3 http://sabnzbd.sourceforge.net/yenc-0.3.tar.gz
|
||||
http://sabnzbd.sourceforge.net/yenc-0.3-w32fixed.zip (Win32-only)
|
||||
par2cmdline >= 0.4 http://parchive.sourceforge.net/
|
||||
http://chuchusoft.com/par2_tbb/index.html (multi-core)
|
||||
|
||||
Optional modules
|
||||
unrar >= 3.90+ http://www.rarlab.com/rar_add.htm
|
||||
unzip >= 5.52 http://www.info-zip.org/
|
||||
gnu gettext http://www.gnu.org/software/gettext/
|
||||
gntp https://github.com/kfdm/gntp/ (or use "pypm install gntp")
|
||||
yenc module >= 0.3 http://sabnzbd.sourceforge.net/yenc-0.3.tar.gz
|
||||
http://sabnzbd.sourceforge.net/yenc-0.3-w32fixed.zip (Win32-only)
|
||||
|
||||
Optional modules Windows
|
||||
pyopenssl >= 0.11 http://pypi.python.org/pypi/pyOpenSSL
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
; -*- coding: latin-1 -*-
|
||||
;
|
||||
; Copyright 2008-2011 The SABnzbd-Team <team@sabnzbd.org>
|
||||
; Copyright 2008-2012 The SABnzbd-Team <team@sabnzbd.org>
|
||||
;
|
||||
; This program is free software; you can redistribute it and/or
|
||||
; modify it under the terms of the GNU General Public License
|
||||
@@ -21,6 +21,7 @@
|
||||
|
||||
!include "MUI2.nsh"
|
||||
!include "registerExtension.nsh"
|
||||
!include "FileFunc.nsh"
|
||||
!include "LogicLib.nsh"
|
||||
!include "WinVer.nsh"
|
||||
!include "WinSxSQuery.nsh"
|
||||
@@ -40,27 +41,41 @@
|
||||
Delete "${idir}\email\email-sv.tmpl"
|
||||
Delete "${idir}\email\email-da.tmpl"
|
||||
Delete "${idir}\email\email-nb.tmpl"
|
||||
Delete "${idir}\email\email-pl.tmpl"
|
||||
Delete "${idir}\email\email-ro.tmpl"
|
||||
Delete "${idir}\email\email-sr.tmpl"
|
||||
Delete "${idir}\email\email-es.tmpl"
|
||||
Delete "${idir}\email\email-pt_BR.tmpl"
|
||||
Delete "${idir}\email\email-sr.tmpl"
|
||||
Delete "${idir}\email\email-ru.tmpl"
|
||||
Delete "${idir}\email\rss-de.tmpl"
|
||||
Delete "${idir}\email\rss-en.tmpl"
|
||||
Delete "${idir}\email\rss-nl.tmpl"
|
||||
Delete "${idir}\email\rss-pl.tmpl"
|
||||
Delete "${idir}\email\rss-fr.tmpl"
|
||||
Delete "${idir}\email\rss-sv.tmpl"
|
||||
Delete "${idir}\email\rss-da.tmpl"
|
||||
Delete "${idir}\email\rss-nb.tmpl"
|
||||
Delete "${idir}\email\rss-ro.tmpl"
|
||||
Delete "${idir}\email\rss-sr.tmpl"
|
||||
Delete "${idir}\email\rss-es.tmpl"
|
||||
Delete "${idir}\email\rss-pt_BR.tmpl"
|
||||
Delete "${idir}\email\rss-sr.tmpl"
|
||||
Delete "${idir}\email\rss-ru.tmpl"
|
||||
Delete "${idir}\email\badfetch-da.tmpl"
|
||||
Delete "${idir}\email\badfetch-de.tmpl"
|
||||
Delete "${idir}\email\badfetch-en.tmpl"
|
||||
Delete "${idir}\email\badfetch-fr.tmpl"
|
||||
Delete "${idir}\email\badfetch-nb.tmpl"
|
||||
Delete "${idir}\email\badfetch-nl.tmpl"
|
||||
Delete "${idir}\email\badfetch-pl.tmpl"
|
||||
Delete "${idir}\email\badfetch-ro.tmpl"
|
||||
Delete "${idir}\email\badfetch-sr.tmpl"
|
||||
Delete "${idir}\email\badfetch-sv.tmpl"
|
||||
Delete "${idir}\email\badfetch-sr.tmpl"
|
||||
Delete "${idir}\email\badfetch-es.tmpl"
|
||||
Delete "${idir}\email\badfetch-pt_BR.tmpl"
|
||||
Delete "${idir}\email\badfetch-ru.tmpl"
|
||||
RMDir "${idir}\email"
|
||||
RMDir /r "${idir}\locale"
|
||||
RMDir /r "${idir}\interfaces\Classic"
|
||||
@@ -70,6 +85,7 @@
|
||||
RMDir /r "${idir}\interfaces\wizard"
|
||||
RMDir /r "${idir}\interfaces\Config"
|
||||
RMDir "${idir}\interfaces"
|
||||
RMDir /r "${idir}\win\curl"
|
||||
RMDir /r "${idir}\win\par2"
|
||||
RMDir /r "${idir}\win\unrar"
|
||||
RMDir /r "${idir}\win\unzip"
|
||||
@@ -103,6 +119,7 @@
|
||||
Delete "${idir}\IMPORTANT_MESSAGE.txt"
|
||||
Delete "${idir}\SABnzbd-console.exe"
|
||||
Delete "${idir}\SABnzbd.exe"
|
||||
Delete "${idir}\SABnzbd.exe.log"
|
||||
Delete "${idir}\SABnzbd-helper.exe"
|
||||
Delete "${idir}\SABnzbd-service.exe"
|
||||
Delete "${idir}\Sample-PostProc.cmd"
|
||||
@@ -177,11 +194,10 @@
|
||||
!insertmacro MUI_PAGE_INSTFILES
|
||||
!define MUI_FINISHPAGE_RUN
|
||||
!define MUI_FINISHPAGE_RUN_FUNCTION "LaunchLink"
|
||||
!define MUI_FINISHPAGE_RUN_TEXT $(MsgStartSab)
|
||||
!define MUI_FINISHPAGE_RUN_TEXT $(MsgGoWiki)
|
||||
!define MUI_FINISHPAGE_RUN_NOTCHECKED
|
||||
!define MUI_FINISHPAGE_SHOWREADME "$INSTDIR\README.txt"
|
||||
!define MUI_FINISHPAGE_SHOWREADME_TEXT $(MsgShowRelNote)
|
||||
;!define MUI_FINISHPAGE_LINK "View the SABnzbdPlus Wiki"
|
||||
;!define MUI_FINISHPAGE_LINK_LOCATION "http://wiki.sabnzbd.org/"
|
||||
!define MUI_FINISHPAGE_LINK $(MsgSupportUs)
|
||||
!define MUI_FINISHPAGE_LINK_LOCATION "http://www.sabnzbd.org/contribute/"
|
||||
|
||||
@@ -199,10 +215,13 @@
|
||||
!insertmacro MUI_LANGUAGE "French"
|
||||
!insertmacro MUI_LANGUAGE "German"
|
||||
!insertmacro MUI_LANGUAGE "Dutch"
|
||||
!insertmacro MUI_LANGUAGE "Polish"
|
||||
!insertmacro MUI_LANGUAGE "Swedish"
|
||||
!insertmacro MUI_LANGUAGE "Danish"
|
||||
!insertmacro MUI_LANGUAGE "NORWEGIAN"
|
||||
!insertmacro MUI_LANGUAGE "Romanian"
|
||||
!insertmacro MUI_LANGUAGE "Spanish"
|
||||
!insertmacro MUI_LANGUAGE "PortugueseBR"
|
||||
|
||||
|
||||
;------------------------------------------------------------------
|
||||
@@ -216,7 +235,7 @@
|
||||
|
||||
;------------------------------------------------------------------
|
||||
Function LaunchLink
|
||||
ExecShell "" "$INSTDIR\SABnzbd.exe"
|
||||
ExecShell "" "http://wiki.sabnzbd.org/"
|
||||
FunctionEnd
|
||||
|
||||
|
||||
@@ -227,6 +246,7 @@ Function .onInit
|
||||
;--------------------------------
|
||||
;make sure that the requires MS Runtimes are installed
|
||||
;
|
||||
goto nodownload ; Not needed while still using Python25
|
||||
runtime_loop:
|
||||
push 'msvcr90.dll'
|
||||
push 'Microsoft.VC90.CRT,version="9.0.21022.8",type="win32",processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b"'
|
||||
@@ -279,7 +299,7 @@ SetOutPath "$INSTDIR"
|
||||
;------------------------------------------------------------------
|
||||
; Make sure old versions are gone
|
||||
IfFileExists $INSTDIR\sabnzbd.exe 0 endWarnExist
|
||||
IfFileExists $INSTDIR\python25.dll 0 endWarnExist
|
||||
IfFileExists $INSTDIR\python27.dll 0 endWarnExist
|
||||
MessageBox MB_OKCANCEL|MB_ICONEXCLAMATION "$(MsgRemoveOld)$\n$\n$(MsgRemoveOld2)" IDOK uninst
|
||||
Abort
|
||||
uninst:
|
||||
@@ -331,8 +351,8 @@ Section $(MsgIcon) desktop
|
||||
SectionEnd ; end of desktop icon section
|
||||
|
||||
Section /o $(MsgAssoc) assoc
|
||||
${registerExtension} "$INSTDIR\nzb.ico" "$INSTDIR\SABnzbd.exe" ".nzb" "NZB File"
|
||||
;${registerExtension} "$INSTDIR\SABnzbd.exe" ".nzb" "NZB File"
|
||||
${registerExtension} "$INSTDIR\icons\nzb.ico" "$INSTDIR\SABnzbd.exe" ".nzb" "NZB File"
|
||||
${RefreshShellIcons}
|
||||
SectionEnd ; end of file association section
|
||||
|
||||
; begin uninstall settings/section
|
||||
@@ -388,11 +408,11 @@ Section "un.$(MsgDelProgram)" Uninstall
|
||||
DeleteRegKey HKEY_CURRENT_USER "Software\SABnzbd"
|
||||
|
||||
${unregisterExtension} ".nzb" "NZB File"
|
||||
|
||||
${RefreshShellIcons}
|
||||
|
||||
SectionEnd ; end of uninstall section
|
||||
|
||||
Section "un.$(MsgDelSettings)" DelSettings
|
||||
Section /o "un.$(MsgDelSettings)" DelSettings
|
||||
DetailPrint "Uninstall settings $LOCALAPPDATA"
|
||||
Delete "$LOCALAPPDATA\sabnzbd\sabnzbd.ini"
|
||||
RMDir /r "$LOCALAPPDATA\sabnzbd"
|
||||
@@ -402,160 +422,40 @@ SectionEnd
|
||||
|
||||
;--------------------------------
|
||||
;Language strings
|
||||
; MsgWarnRunning 'Please close "SABnzbd.exe" first'
|
||||
LangString MsgStartSab ${LANG_ENGLISH} "Start SABnzbd (hidden)"
|
||||
LangString MsgStartSab ${LANG_DANISH} "Start SABnzbd (hidden)"
|
||||
LangString MsgStartSab ${LANG_GERMAN} "Start SABnzbd (hidden)"
|
||||
LangString MsgStartSab ${LANG_FRENCH} "Start SABnzbd (hidden)"
|
||||
LangString MsgStartSab ${LANG_NORWEGIAN} "Start SABnzbd (hidden)"
|
||||
LangString MsgStartSab ${LANG_DUTCH} "Start SABnzbd (hidden)"
|
||||
LangString MsgStartSab ${LANG_ROMANIAN} "Start SABnzbd (hidden)"
|
||||
LangString MsgStartSab ${LANG_SWEDISH} "Start SABnzbd (hidden)"
|
||||
LangString MsgGoWiki ${LANG_ENGLISH} "Go to the SABnzbd Wiki"
|
||||
|
||||
LangString MsgShowRelNote ${LANG_ENGLISH} "Show Release Notes"
|
||||
LangString MsgShowRelNote ${LANG_DANISH} "Show Release Notes"
|
||||
LangString MsgShowRelNote ${LANG_GERMAN} "Show Release Notes"
|
||||
LangString MsgShowRelNote ${LANG_FRENCH} "Show Release Notes"
|
||||
LangString MsgShowRelNote ${LANG_NORWEGIAN} "Show Release Notes"
|
||||
LangString MsgShowRelNote ${LANG_DUTCH} "Show Release Notes"
|
||||
LangString MsgShowRelNote ${LANG_ROMANIAN} "Show Release Notes"
|
||||
LangString MsgShowRelNote ${LANG_SWEDISH} "Show Release Notes"
|
||||
|
||||
LangString MsgSupportUs ${LANG_ENGLISH} "Support the project, Donate!"
|
||||
LangString MsgSupportUs ${LANG_DANISH} "Support the project, Donate!"
|
||||
LangString MsgSupportUs ${LANG_GERMAN} "Support the project, Donate!"
|
||||
LangString MsgSupportUs ${LANG_FRENCH} "Support the project, Donate!"
|
||||
LangString MsgSupportUs ${LANG_NORWEGIAN} "Support the project, Donate!"
|
||||
LangString MsgSupportUs ${LANG_DUTCH} "Support the project, Donate!"
|
||||
LangString MsgSupportUs ${LANG_ROMANIAN} "Support the project, Donate!"
|
||||
LangString MsgSupportUs ${LANG_SWEDISH} "Support the project, Donate!"
|
||||
|
||||
LangString MsgCloseSab ${LANG_ENGLISH} "Please close $\"SABnzbd.exe$\" first"
|
||||
LangString MsgCloseSab ${LANG_DANISH} "Please close $\"SABnzbd.exe$\" first"
|
||||
LangString MsgCloseSab ${LANG_GERMAN} "Please close $\"SABnzbd.exe$\" first"
|
||||
LangString MsgCloseSab ${LANG_FRENCH} "Please close $\"SABnzbd.exe$\" first"
|
||||
LangString MsgCloseSab ${LANG_NORWEGIAN} "Please close $\"SABnzbd.exe$\" first"
|
||||
LangString MsgCloseSab ${LANG_DUTCH} "Please close $\"SABnzbd.exe$\" first"
|
||||
LangString MsgCloseSab ${LANG_ROMANIAN} "Please close $\"SABnzbd.exe$\" first"
|
||||
LangString MsgCloseSab ${LANG_SWEDISH} "Please close $\"SABnzbd.exe$\" first"
|
||||
|
||||
LangString MsgOldQueue ${LANG_ENGLISH} " >>>> WARNING <<<<$\r$\n$\r$\nPlease, first check the release notes or go to http://wiki.sabnzbd.org/introducing-0-6-0 !"
|
||||
LangString MsgOldQueue ${LANG_DANISH} " >>>> WARNING <<<<$\r$\n$\r$\nPlease, first check the release notes or go to http://wiki.sabnzbd.org/introducing-0-6-0 !"
|
||||
LangString MsgOldQueue ${LANG_GERMAN} " >>>> WARNING <<<<$\r$\n$\r$\nPlease, first check the release notes or go to http://wiki.sabnzbd.org/introducing-0-6-0 !"
|
||||
LangString MsgOldQueue ${LANG_FRENCH} " >>>> WARNING <<<<$\r$\n$\r$\nPlease, first check the release notes or go to http://wiki.sabnzbd.org/introducing-0-6-0 !"
|
||||
LangString MsgOldQueue ${LANG_NORWEGIAN} " >>>> WARNING <<<<$\r$\n$\r$\nPlease, first check the release notes or go to http://wiki.sabnzbd.org/introducing-0-6-0 !"
|
||||
LangString MsgOldQueue ${LANG_DUTCH} " >>>> WARNING <<<<$\r$\n$\r$\nPlease, first check the release notes or go to http://wiki.sabnzbd.org/introducing-0-6-0 !"
|
||||
LangString MsgOldQueue ${LANG_ROMANIAN} " >>>> WARNING <<<<$\r$\n$\r$\nPlease, first check the release notes or go to http://wiki.sabnzbd.org/introducing-0-6-0 !"
|
||||
LangString MsgOldQueue ${LANG_SWEDISH} " >>>> WARNING <<<<$\r$\n$\r$\nPlease, first check the release notes or go to http://wiki.sabnzbd.org/introducing-0-6-0 !"
|
||||
LangString MsgOldQueue ${LANG_ENGLISH} " >>>> WARNING <<<<$\r$\n$\r$\nPlease, first check the release notes or go to http://wiki.sabnzbd.org/introducing-0-7-0 !"
|
||||
|
||||
LangString MsgUninstall ${LANG_ENGLISH} "This will uninstall SABnzbd from your system"
|
||||
LangString MsgUninstall ${LANG_DANISH} "This will uninstall SABnzbd from your system"
|
||||
LangString MsgUninstall ${LANG_GERMAN} "This will uninstall SABnzbd from your system"
|
||||
LangString MsgUninstall ${LANG_FRENCH} "This will uninstall SABnzbd from your system"
|
||||
LangString MsgUninstall ${LANG_NORWEGIAN} "This will uninstall SABnzbd from your system"
|
||||
LangString MsgUninstall ${LANG_DUTCH} "This will uninstall SABnzbd from your system"
|
||||
LangString MsgUninstall ${LANG_ROMANIAN} "This will uninstall SABnzbd from your system"
|
||||
LangString MsgUninstall ${LANG_SWEDISH} "This will uninstall SABnzbd from your system"
|
||||
|
||||
LangString MsgRunAtStart ${LANG_ENGLISH} "Run at startup"
|
||||
LangString MsgRunAtStart ${LANG_DANISH} "Run at startup"
|
||||
LangString MsgRunAtStart ${LANG_GERMAN} "Run at startup"
|
||||
LangString MsgRunAtStart ${LANG_FRENCH} "Run at startup"
|
||||
LangString MsgRunAtStart ${LANG_NORWEGIAN} "Run at startup"
|
||||
LangString MsgRunAtStart ${LANG_DUTCH} "Run at startup"
|
||||
LangString MsgRunAtStart ${LANG_ROMANIAN} "Run at startup"
|
||||
LangString MsgRunAtStart ${LANG_SWEDISH} "Run at startup"
|
||||
|
||||
LangString MsgIcon ${LANG_ENGLISH} "Desktop Icon"
|
||||
LangString MsgIcon ${LANG_DANISH} "Desktop Icon"
|
||||
LangString MsgIcon ${LANG_GERMAN} "Desktop Icon"
|
||||
LangString MsgIcon ${LANG_FRENCH} "Desktop Icon"
|
||||
LangString MsgIcon ${LANG_NORWEGIAN} "Desktop Icon"
|
||||
LangString MsgIcon ${LANG_DUTCH} "Desktop Icon"
|
||||
LangString MsgIcon ${LANG_ROMANIAN} "Desktop Icon"
|
||||
LangString MsgIcon ${LANG_SWEDISH} "Desktop Icon"
|
||||
|
||||
LangString MsgAssoc ${LANG_ENGLISH} "NZB File association"
|
||||
LangString MsgAssoc ${LANG_DANISH} "NZB File association"
|
||||
LangString MsgAssoc ${LANG_GERMAN} "NZB File association"
|
||||
LangString MsgAssoc ${LANG_FRENCH} "NZB File association"
|
||||
LangString MsgAssoc ${LANG_NORWEGIAN} "NZB File association"
|
||||
LangString MsgAssoc ${LANG_DUTCH} "NZB File association"
|
||||
LangString MsgAssoc ${LANG_ROMANIAN} "NZB File association"
|
||||
LangString MsgAssoc ${LANG_SWEDISH} "NZB File association"
|
||||
|
||||
LangString MsgDelProgram ${LANG_ENGLISH} "Delete Program"
|
||||
LangString MsgDelProgram ${LANG_DANISH} "Delete Program"
|
||||
LangString MsgDelProgram ${LANG_GERMAN} "Delete Program"
|
||||
LangString MsgDelProgram ${LANG_FRENCH} "Delete Program"
|
||||
LangString MsgDelProgram ${LANG_NORWEGIAN} "Delete Program"
|
||||
LangString MsgDelProgram ${LANG_DUTCH} "Delete Program"
|
||||
LangString MsgDelProgram ${LANG_ROMANIAN} "Delete Program"
|
||||
LangString MsgDelProgram ${LANG_SWEDISH} "Delete Program"
|
||||
|
||||
LangString MsgDelSettings ${LANG_ENGLISH} "Delete Settings"
|
||||
LangString MsgDelSettings ${LANG_DANISH} "Delete Settings"
|
||||
LangString MsgDelSettings ${LANG_GERMAN} "Delete Settings"
|
||||
LangString MsgDelSettings ${LANG_FRENCH} "Delete Settings"
|
||||
LangString MsgDelSettings ${LANG_NORWEGIAN} "Delete Settings"
|
||||
LangString MsgDelSettings ${LANG_DUTCH} "Delete Settings"
|
||||
LangString MsgDelSettings ${LANG_ROMANIAN} "Delete Settings"
|
||||
LangString MsgDelSettings ${LANG_SWEDISH} "Delete Settings"
|
||||
|
||||
LangString MsgNoRuntime ${LANG_ENGLISH} "This system requires the Microsoft runtime library VC90 to be installed first. Do you want to do that now?"
|
||||
LangString MsgNoRuntime ${LANG_DANISH} "This system requires the Microsoft runtime library VC90 to be installed first. Do you want to do that now?"
|
||||
LangString MsgNoRuntime ${LANG_GERMAN} "This system requires the Microsoft runtime library VC90 to be installed first. Do you want to do that now?"
|
||||
LangString MsgNoRuntime ${LANG_FRENCH} "This system requires the Microsoft runtime library VC90 to be installed first. Do you want to do that now?"
|
||||
LangString MsgNoRuntime ${LANG_NORWEGIAN} "This system requires the Microsoft runtime library VC90 to be installed first. Do you want to do that now?"
|
||||
LangString MsgNoRuntime ${LANG_DUTCH} "This system requires the Microsoft runtime library VC90 to be installed first. Do you want to do that now?"
|
||||
LangString MsgNoRuntime ${LANG_ROMANIAN} "This system requires the Microsoft runtime library VC90 to be installed first. Do you want to do that now?"
|
||||
LangString MsgNoRuntime ${LANG_SWEDISH} "This system requires the Microsoft runtime library VC90 to be installed first. Do you want to do that now?"
|
||||
|
||||
LangString MsgDLRuntime ${LANG_ENGLISH} "Downloading Microsoft runtime installer..."
|
||||
LangString MsgDLRuntime ${LANG_DANISH} "Downloading Microsoft runtime installer..."
|
||||
LangString MsgDLRuntime ${LANG_GERMAN} "Downloading Microsoft runtime installer..."
|
||||
LangString MsgDLRuntime ${LANG_FRENCH} "Downloading Microsoft runtime installer..."
|
||||
LangString MsgDLRuntime ${LANG_NORWEGIAN} "Downloading Microsoft runtime installer..."
|
||||
LangString MsgDLRuntime ${LANG_DUTCH} "Downloading Microsoft runtime installer..."
|
||||
LangString MsgDLRuntime ${LANG_ROMANIAN} "Downloading Microsoft runtime installer..."
|
||||
LangString MsgDLRuntime ${LANG_SWEDISH} "Downloading Microsoft runtime installer..."
|
||||
|
||||
LangString MsgDLError ${LANG_ENGLISH} "Download error, retry?"
|
||||
LangString MsgDLError ${LANG_DANISH} "Download error, retry?"
|
||||
LangString MsgDLError ${LANG_GERMAN} "Download error, retry?"
|
||||
LangString MsgDLError ${LANG_FRENCH} "Download error, retry?"
|
||||
LangString MsgDLError ${LANG_NORWEGIAN} "Download error, retry?"
|
||||
LangString MsgDLError ${LANG_DUTCH} "Download error, retry?"
|
||||
LangString MsgDLError ${LANG_ROMANIAN} "Download error, retry?"
|
||||
LangString MsgDLError ${LANG_SWEDISH} "Download error, retry?"
|
||||
|
||||
LangString MsgDLNeed ${LANG_ENGLISH} "Cannot install without runtime library, retry?"
|
||||
LangString MsgDLNeed ${LANG_DANISH} "Cannot install without runtime library, retry?"
|
||||
LangString MsgDLNeed ${LANG_GERMAN} "Cannot install without runtime library, retry?"
|
||||
LangString MsgDLNeed ${LANG_FRENCH} "Cannot install without runtime library, retry?"
|
||||
LangString MsgDLNeed ${LANG_NORWEGIAN} "Cannot install without runtime library, retry?"
|
||||
LangString MsgDLNeed ${LANG_DUTCH} "Cannot install without runtime library, retry?"
|
||||
LangString MsgDLNeed ${LANG_ROMANIAN} "Cannot install without runtime library, retry?"
|
||||
LangString MsgDLNeed ${LANG_SWEDISH} "Cannot install without runtime library, retry?"
|
||||
|
||||
LangString MsgRemoveOld ${LANG_ENGLISH} "You cannot overwrite an existing installation. $\n$\nClick `OK` to remove the previous version or `Cancel` to cancel this upgrade."
|
||||
LangString MsgRemoveOld ${LANG_DANISH} "You cannot overwrite an existing installation. $\n$\nClick `OK` to remove the previous version or `Cancel` to cancel this upgrade.$\n$\nYour settings and data will be preserved."
|
||||
LangString MsgRemoveOld ${LANG_GERMAN} "You cannot overwrite an existing installation. $\n$\nClick `OK` to remove the previous version or `Cancel` to cancel this upgrade.$\n$\nYour settings and data will be preserved."
|
||||
LangString MsgRemoveOld ${LANG_FRENCH} "You cannot overwrite an existing installation. $\n$\nClick `OK` to remove the previous version or `Cancel` to cancel this upgrade.$\n$\nYour settings and data will be preserved."
|
||||
LangString MsgRemoveOld ${LANG_NORWEGIAN} "You cannot overwrite an existing installation. $\n$\nClick `OK` to remove the previous version or `Cancel` to cancel this upgrade.$\n$\nYour settings and data will be preserved."
|
||||
LangString MsgRemoveOld ${LANG_DUTCH} "You cannot overwrite an existing installation. $\n$\nClick `OK` to remove the previous version or `Cancel` to cancel this upgrade.$\n$\nYour settings and data will be preserved."
|
||||
LangString MsgRemoveOld ${LANG_ROMANIAN} "You cannot overwrite an existing installation. $\n$\nClick `OK` to remove the previous version or `Cancel` to cancel this upgrade.$\n$\nYour settings and data will be preserved."
|
||||
LangString MsgRemoveOld ${LANG_SWEDISH} "You cannot overwrite an existing installation. $\n$\nClick `OK` to remove the previous version or `Cancel` to cancel this upgrade.$\n$\nYour settings and data will be preserved."
|
||||
|
||||
LangString MsgRemoveOld2 ${LANG_ENGLISH} "Your settings and data will be preserved."
|
||||
LangString MsgRemoveOld2 ${LANG_DANISH} "Your settings and data will be preserved."
|
||||
LangString MsgRemoveOld2 ${LANG_GERMAN} "Your settings and data will be preserved."
|
||||
LangString MsgRemoveOld2 ${LANG_FRENCH} "Your settings and data will be preserved."
|
||||
LangString MsgRemoveOld2 ${LANG_NORWEGIAN} "Your settings and data will be preserved."
|
||||
LangString MsgRemoveOld2 ${LANG_DUTCH} "Your settings and data will be preserved."
|
||||
LangString MsgRemoveOld2 ${LANG_ROMANIAN} "Your settings and data will be preserved."
|
||||
LangString MsgRemoveOld2 ${LANG_SWEDISH} "Your settings and data will be preserved."
|
||||
|
||||
|
||||
|
||||
Function un.onInit
|
||||
!insertmacro MUI_UNGETLANGUAGE
|
||||
|
||||
4
PKG-INFO
@@ -1,7 +1,7 @@
|
||||
Metadata-Version: 1.0
|
||||
Name: SABnzbd
|
||||
Version: 0.7.0Aplha2
|
||||
Summary: SABnzbd-0.7.0Alpha2
|
||||
Version: 0.7.2RC2
|
||||
Summary: SABnzbd-0.7.2RC2
|
||||
Home-page: http://sourceforge.net/projects/sabnzbdplus
|
||||
Author: The SABnzbd Team
|
||||
Author-email: team@sabnzbd.org
|
||||
|
||||
46
README.rtf
@@ -1,14 +1,32 @@
|
||||
{\rtf1\ansi\ansicpg1252\cocoartf1038\cocoasubrtf360
|
||||
{\rtf1\ansi\ansicpg1252\cocoartf1138\cocoasubrtf320
|
||||
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
|
||||
{\colortbl;\red255\green255\blue255;}
|
||||
\paperw11900\paperh16840\vieww16360\viewh15680\viewkind0
|
||||
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural
|
||||
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720
|
||||
|
||||
\f0\b\fs48 \cf0 SABnzbd 0.7.0Alpha2\
|
||||
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural\pardirnatural
|
||||
\f0\b\fs48 \cf0 SABnzbd 0.7.2RC2\
|
||||
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\pardirnatural
|
||||
|
||||
\b0\fs26 \cf0 \
|
||||
|
||||
\b Fixes in 0.7.2RC2
|
||||
\b0 \
|
||||
- Improve support for nzbsrus.com\
|
||||
- Don't try to show NZB age when not known yet\
|
||||
- Prevent systems with unresolvable hostnames from always using 0.0.0.0\
|
||||
\
|
||||
|
||||
\b Fixes in 0.7.2RC1
|
||||
\b0 \
|
||||
- Fix fatal error in nzbsrus.com support\
|
||||
- Initial "quota left" was not set correctly when enabling quota\
|
||||
- Report incorrect RSS filter expressions (instead of aborting analysis)\
|
||||
- Improve detection of invalid articles (so that backup server will be tried)\
|
||||
- Windows installer: improve NZB association so that a reboot isn't needed\
|
||||
- Windows installer: don't remove settimngs by default when uninstalling\
|
||||
- Fix sorting of rar files in job so that .rar preceeds .r00\
|
||||
\
|
||||
|
||||
\b What's new
|
||||
\b0 \
|
||||
- Download quota management\
|
||||
@@ -22,13 +40,19 @@
|
||||
- For Usenet servers with multiple IP addresses, pick a random one per connection\
|
||||
- Add pseudo-priority "Stop" that will send the job immediately to the post-processing queue\
|
||||
- Allow jobs still waiting for post-processing to be deleted too\
|
||||
- More persistent retries for unreliable indexers\
|
||||
- Single Configuration skin for all others skins (there is an option for the old style)\
|
||||
- Config->Special for settings that were previously only changeable in the sabnzbd.ini file\
|
||||
- Add Spanish, Portuguese (Brazil) and Polish translations\
|
||||
- Individual RSS filter toggle\
|
||||
- Unified OSX DMG\
|
||||
\
|
||||
|
||||
\b About
|
||||
\b0 \
|
||||
SABnzbd is an open-source cross-platform binary newsreader.\
|
||||
It simplifies the process of downloading from Usenet dramatically,\
|
||||
thanks to its friendly web-based user interface and advanced\
|
||||
thanks to its web-based user interface and advanced\
|
||||
built-in post-processing options that automatically verify, repair,\
|
||||
extract and clean up posts downloaded from Usenet.\
|
||||
SABnzbd also has a fully customizable user interface,\
|
||||
@@ -41,13 +65,13 @@ There is an extensive Wiki on the use of SABnzbd.\
|
||||
\
|
||||
|
||||
\b IMPORTANT INFORMATION
|
||||
\b0 about release 0.6.0:\
|
||||
{\field{\*\fldinst{HYPERLINK "http://wiki.sabnzbd.org/introducing-0-6-0"}}{\fldrslt http://wiki.sabnzbd.org/introducing-0-6-0}}\
|
||||
\b0 about release 0.7.1:\
|
||||
{\field{\*\fldinst{HYPERLINK "http://wiki.sabnzbd.org/introducing-0-7-0"}}{\fldrslt http://wiki.sabnzbd.org/introducing-0-7-0}}\
|
||||
\
|
||||
|
||||
\b Known problems and solutions\
|
||||
|
||||
\b0 Read the file"ISSUES.txt"
|
||||
\b0 Read the file "ISSUES.txt"
|
||||
\b \
|
||||
|
||||
\b0 \
|
||||
@@ -88,10 +112,4 @@ from the older version of SABnzbd, you can either re-import the nzb files if you
|
||||
an nzb backup folder, or temporarily go back to 0.4.x until your queue is complete.\
|
||||
The history is now stored in a better format meaning future upgrades should be backwards\
|
||||
compatible.\
|
||||
\
|
||||
\
|
||||
|
||||
\b\fs40 Changes since 0.5.6
|
||||
\b0\fs26 \
|
||||
See: {\field{\*\fldinst{HYPERLINK "http://wiki.sabnzbd.org/introducing-0-6-0"}}{\fldrslt http://wiki.sabnzbd.org/introducing-0-6-0}}\
|
||||
}
|
||||
30
README.txt
@@ -1,6 +1,21 @@
|
||||
************************ SABnzbd 0.7.0Alpha2 ************************
|
||||
Release Notes - SABnzbd 0.7.2RC2
|
||||
==================================
|
||||
|
||||
What's new:
|
||||
## Fixes in 0.7.2RC2
|
||||
- Improve support for nzbsrus.com
|
||||
- Don't try to show NZB age when not known yet
|
||||
- Prevent systems with unresolvable hostnames from always using 0.0.0.0
|
||||
|
||||
## Fixes in 0.7.2RC1
|
||||
- Fix fatal error in nzbsrus.com support
|
||||
- Initial "quota left" was not set correctly when enabling quota
|
||||
- Report incorrect RSS filter expressions (instead of aborting analysis)
|
||||
- Improve detection of invalid articles (so that backup server will be tried)
|
||||
- Windows installer: improve NZB association so that a reboot isn't needed
|
||||
- Windows installer: don't remove settimngs by default when uninstalling
|
||||
- Fix sorting of rar files in job so that .rar preceeds .r00
|
||||
|
||||
## What's new in 0.7.0
|
||||
|
||||
- Download quota management
|
||||
- Windows: simple system tray menu
|
||||
@@ -13,11 +28,18 @@ What's new:
|
||||
- For Usenet servers with multiple IP addresses, pick a random one per connection
|
||||
- Add pseudo-priority "Stop" that will send the job immediately to the post-processing queue
|
||||
- Allow jobs still waiting for post-processing to be deleted too
|
||||
- More persistent retries for unreliable indexers
|
||||
- Single Configuration skin for all others skins (there is an option for the old style)
|
||||
- Config->Special for settings that were previously only changeable in the sabnzbd.ini file
|
||||
- Add Spanish, Portuguese (Brazil) and Polish translations
|
||||
- Individual RSS filter toggle
|
||||
- Unified OSX DMG
|
||||
|
||||
About:
|
||||
|
||||
## About
|
||||
SABnzbd is an open-source cross-platform binary newsreader.
|
||||
It simplifies the process of downloading from Usenet dramatically,
|
||||
thanks to its friendly web-based user interface and advanced
|
||||
thanks to its web-based user interface and advanced
|
||||
built-in post-processing options that automatically verify, repair,
|
||||
extract and clean up posts downloaded from Usenet.
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#!/usr/bin/python -OO
|
||||
# Copyright 2008-2011 The SABnzbd-Team <team@sabnzbd.org>
|
||||
# Copyright 2008-2012 The SABnzbd-Team <team@sabnzbd.org>
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License
|
||||
|
||||
70
SABnzbd.py
@@ -1,5 +1,5 @@
|
||||
#!/usr/bin/python -OO
|
||||
# Copyright 2008-2011 The SABnzbd-Team <team@sabnzbd.org>
|
||||
# Copyright 2008-2012 The SABnzbd-Team <team@sabnzbd.org>
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License
|
||||
@@ -16,8 +16,8 @@
|
||||
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||
|
||||
import sys
|
||||
if sys.version_info < (2,5):
|
||||
print "Sorry, requires Python 2.5 or higher."
|
||||
if sys.version_info < (2, 5):
|
||||
print "Sorry, requires Python 2.5, 2.6 or 2.7."
|
||||
sys.exit(1)
|
||||
|
||||
import logging
|
||||
@@ -253,12 +253,13 @@ def print_help():
|
||||
print " --log-all Log all article handling (for developers)"
|
||||
print " --console Force console logging for OSX app"
|
||||
print " --new Run a new instance of SABnzbd"
|
||||
print " --no_ipv6 Do listen on IPv6 address [::1]"
|
||||
|
||||
def print_version():
|
||||
print """
|
||||
%s-%s
|
||||
|
||||
Copyright (C) 2008-2011, The SABnzbd-Team <team@sabnzbd.org>
|
||||
Copyright (C) 2008-2012, The SABnzbd-Team <team@sabnzbd.org>
|
||||
SABnzbd comes with ABSOLUTELY NO WARRANTY.
|
||||
This is free software, and you are welcome to redistribute it
|
||||
under certain conditions. It is licensed under the
|
||||
@@ -524,11 +525,26 @@ def all_localhosts():
|
||||
return ips
|
||||
|
||||
|
||||
def check_resolve(host):
|
||||
""" Return True if 'host' resolves
|
||||
"""
|
||||
try:
|
||||
info = socket.getaddrinfo(host, None)
|
||||
except:
|
||||
# Does not resolve
|
||||
return False
|
||||
return True
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
def get_webhost(cherryhost, cherryport, https_port):
|
||||
""" Determine the webhost address and port,
|
||||
return (host, port, browserhost)
|
||||
"""
|
||||
if cherryhost == '0.0.0.0' and not check_resolve('127.0.0.1'):
|
||||
cherryhost = ''
|
||||
elif cherryhost == '::' and not check_resolve('::1'):
|
||||
cherryhost = ''
|
||||
|
||||
if cherryhost is None:
|
||||
cherryhost = sabnzbd.cfg.cherryhost()
|
||||
else:
|
||||
@@ -541,9 +557,18 @@ def get_webhost(cherryhost, cherryport, https_port):
|
||||
try:
|
||||
info = socket.getaddrinfo(socket.gethostname(), None)
|
||||
except:
|
||||
# Hostname does not resolve, use 0.0.0.0
|
||||
cherryhost = '0.0.0.0'
|
||||
info = socket.getaddrinfo(localhost, None)
|
||||
# Hostname does not resolve
|
||||
try:
|
||||
# Valid user defined name?
|
||||
info = socket.getaddrinfo(cherryhost, None)
|
||||
except:
|
||||
if cherryhost not in ('localhost', '127.0.0.1', '::1'):
|
||||
cherryhost = '0.0.0.0'
|
||||
try:
|
||||
info = socket.getaddrinfo(localhost, None)
|
||||
except:
|
||||
info = socket.getaddrinfo('127.0.0.1', None)
|
||||
localhost = '127.0.0.1'
|
||||
for item in info:
|
||||
ip = str(item[4][0])
|
||||
if ip.startswith('169.254.'):
|
||||
@@ -649,13 +674,14 @@ def get_webhost(cherryhost, cherryport, https_port):
|
||||
def attach_server(host, port, cert=None, key=None):
|
||||
""" Define and attach server, optionally HTTPS
|
||||
"""
|
||||
http_server = _cpwsgi_server.CPWSGIServer()
|
||||
http_server.bind_addr = (host, port)
|
||||
if cert and key:
|
||||
http_server.ssl_certificate = cert
|
||||
http_server.ssl_private_key = key
|
||||
adapter = _cpserver.ServerAdapter(cherrypy.engine, http_server, http_server.bind_addr)
|
||||
adapter.subscribe()
|
||||
if not (sabnzbd.cfg.no_ipv6() and '::1' in host):
|
||||
http_server = _cpwsgi_server.CPWSGIServer()
|
||||
http_server.bind_addr = (host, port)
|
||||
if cert and key:
|
||||
http_server.ssl_certificate = cert
|
||||
http_server.ssl_private_key = key
|
||||
adapter = _cpserver.ServerAdapter(cherrypy.engine, http_server, http_server.bind_addr)
|
||||
adapter.subscribe()
|
||||
|
||||
|
||||
def is_sabnzbd_running(url):
|
||||
@@ -752,7 +778,7 @@ def evaluate_inipath(path):
|
||||
inipath = os.path.join(path, DEF_INI_FILE)
|
||||
if os.path.isdir(path):
|
||||
return inipath
|
||||
elif os.path.isfile(path):
|
||||
elif os.path.isfile(path) or os.path.isfile(path + '.bak'):
|
||||
return path
|
||||
else:
|
||||
dirpart, name = os.path.split(path)
|
||||
@@ -815,7 +841,7 @@ def commandline_handler(frozen=True):
|
||||
try:
|
||||
opts, args = getopt.getopt(info, "phdvncw:l:s:f:t:b:2:",
|
||||
['pause', 'help', 'daemon', 'nobrowser', 'clean', 'logging=',
|
||||
'weblogging=', 'server=', 'templates',
|
||||
'weblogging=', 'server=', 'templates', 'no_ipv6',
|
||||
'template2', 'browser=', 'config-file=', 'force',
|
||||
'version', 'https=', 'autorestarted', 'repair', 'repair-all',
|
||||
'log-all', 'no-login', 'pid=', 'new', 'sessions', 'console',
|
||||
@@ -893,6 +919,7 @@ def main():
|
||||
new_instance = False
|
||||
force_sessions = False
|
||||
osx_console = False
|
||||
no_ipv6 = False
|
||||
|
||||
service, sab_opts, serv_opts, upload_nzbs = commandline_handler()
|
||||
|
||||
@@ -979,6 +1006,8 @@ def main():
|
||||
elif opt in ('--console',):
|
||||
re_argv.append(opt)
|
||||
osx_console = True
|
||||
elif opt in ('--no_ipv6',):
|
||||
no_ipv6 = True
|
||||
|
||||
sabnzbd.MY_FULLNAME = os.path.normpath(os.path.abspath(sabnzbd.MY_FULLNAME))
|
||||
sabnzbd.MY_NAME = os.path.basename(sabnzbd.MY_FULLNAME)
|
||||
@@ -1032,7 +1061,7 @@ def main():
|
||||
GetProfileInfo(vista_plus)
|
||||
# Find out where INI file is
|
||||
inifile = os.path.abspath(sabnzbd.DIR_PROG + '/' + DEF_INI_FILE)
|
||||
if not os.path.exists(inifile):
|
||||
if not os.path.exists(inifile) and not os.path.exists(inifile + '.bak'):
|
||||
inifile = os.path.abspath(sabnzbd.DIR_LCLDATA + '/' + DEF_INI_FILE)
|
||||
if sabnzbd.DARWIN:
|
||||
copy_old_files(sabnzbd.DIR_LCLDATA)
|
||||
@@ -1044,7 +1073,7 @@ def main():
|
||||
# All system data dirs are relative to the place we found the INI file
|
||||
sabnzbd.DIR_LCLDATA = os.path.dirname(inifile)
|
||||
|
||||
if not os.path.exists(inifile) and not os.path.exists(sabnzbd.DIR_LCLDATA):
|
||||
if not os.path.exists(inifile) and not os.path.exists(inifile + '.bak') and not os.path.exists(sabnzbd.DIR_LCLDATA):
|
||||
try:
|
||||
os.makedirs(sabnzbd.DIR_LCLDATA)
|
||||
except IOError:
|
||||
@@ -1061,6 +1090,9 @@ def main():
|
||||
# Set root folders for HTTPS server file paths
|
||||
sabnzbd.cfg.set_root_folders2()
|
||||
|
||||
if no_ipv6:
|
||||
sabnzbd.cfg.no_ipv6.set(True)
|
||||
|
||||
# Determine web host address
|
||||
cherryhost, cherryport, browserhost, https_port = get_webhost(cherryhost, cherryport, https_port)
|
||||
enable_https = sabnzbd.cfg.enable_https()
|
||||
@@ -1783,4 +1815,4 @@ if __name__ == '__main__':
|
||||
main()
|
||||
|
||||
else:
|
||||
main()
|
||||
main()
|
||||
|
Before Width: | Height: | Size: 52 KiB After Width: | Height: | Size: 1.1 KiB |
BIN
icons/nzb.ico
|
Before Width: | Height: | Size: 94 KiB After Width: | Height: | Size: 27 KiB |
|
Before Width: | Height: | Size: 281 KiB After Width: | Height: | Size: 38 KiB |
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright 2008-2011 The SABnzbd-Team <team@sabnzbd.org>
|
||||
# Copyright 2008-2012 The SABnzbd-Team <team@sabnzbd.org>
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License
|
||||
|
||||
@@ -208,6 +208,7 @@
|
||||
<input type="hidden" name="feed" value="$feed"/>
|
||||
<input type="hidden" name="session" value="$session">
|
||||
<input type="submit" value="$T('button-save')"/>
|
||||
<!--#if not $rss[$feed].filter_states[$fnum]#--> $T('Incorrect filter')<!--#end if#-->
|
||||
</td>
|
||||
</form>
|
||||
</tr>
|
||||
|
||||
@@ -104,8 +104,8 @@
|
||||
$T('explain-max_art_tries')<br>
|
||||
<input type="text" size=5" name="max_art_tries" value="$max_art_tries" />
|
||||
<br><br>
|
||||
<label><input type="checkbox" name="max_opt_only" value="1" <!--#if $max_opt_only > 0 then "checked=1" else ""#--> /> <strong>$T('opt-max_opt_only')</strong></label><br>
|
||||
$T('explain-max_opt_only')<br>
|
||||
<label><input type="checkbox" name="max_art_opt" value="1" <!--#if $max_art_opt > 0 then "checked=1" else ""#--> /> <strong>$T('opt-max_art_opt')</strong></label><br>
|
||||
$T('explain-max_art_opt')<br>
|
||||
<br>
|
||||
<label><input type="checkbox" name="auto_disconnect" value="1" <!--#if $auto_disconnect > 0 then "checked=1" else ""#--> /> <strong>$T('opt-auto_disconnect')</strong></label><br>
|
||||
$T('explain-auto_disconnect')<br>
|
||||
|
||||
|
Before Width: | Height: | Size: 52 KiB After Width: | Height: | Size: 1.1 KiB |
@@ -1,5 +1,5 @@
|
||||
<!--#set global $have_refresh=5#-->
|
||||
<!--#set global $topmenu="connections"#-->
|
||||
<!--#set global $topmenu="status"#-->
|
||||
<!--#set global $statpath=".."#-->
|
||||
<!--#set global $helpsubject="GUI+Status-0-7"#-->
|
||||
<!--#include $webdir + "/inc_top.tmpl"#-->
|
||||
|
||||
54
interfaces/Config/README.txt
Normal file
@@ -0,0 +1,54 @@
|
||||
|
||||
uniConfig for SABnzbd 0.7.x
|
||||
zoggy@sabnzbd.org
|
||||
|
||||
|
||||
========================================================
|
||||
LIBRARIES USED
|
||||
|
||||
jQuery
|
||||
* Project repository: https://github.com/jquery/jquery
|
||||
* Dual licensed under the MIT and GPL licenses:
|
||||
* http://www.gnu.org/licenses/gpl.html
|
||||
* http://www.opensource.org/licenses/mit-license.php
|
||||
|
||||
jQuery UI
|
||||
* Project repository: https://github.com/jquery/jquery-ui
|
||||
* Dual licensed under the MIT and GPL licenses:
|
||||
* http://www.gnu.org/licenses/gpl.html
|
||||
* http://www.opensource.org/licenses/mit-license.php
|
||||
|
||||
jQuery Form Plugin
|
||||
* Project repository: https://github.com/malsup/form
|
||||
* Dual licensed under the MIT and GPL licenses:
|
||||
* http://www.gnu.org/licenses/gpl.html
|
||||
* http://www.opensource.org/licenses/mit-license.php
|
||||
|
||||
jQuery Tools (tabs)
|
||||
* Project repository: https://github.com/jquerytools/jquerytools
|
||||
|
||||
Formalize
|
||||
* Project repository: https://github.com/nathansmith/formalize
|
||||
* Dual licensed under the MIT and GPL licenses:
|
||||
* http://www.gnu.org/licenses/gpl.html
|
||||
* http://www.opensource.org/licenses/mit-license.php
|
||||
|
||||
normalize.css
|
||||
* Project repository: https://github.com/necolas/normalize.css
|
||||
* Licensed under public domain
|
||||
|
||||
qTip2
|
||||
* Project repository: https://github.com/craga89/qtip2
|
||||
* Dual licensed under the MIT and GPL licenses:
|
||||
* http://www.gnu.org/licenses/gpl.html
|
||||
* http://www.opensource.org/licenses/mit-license.php
|
||||
|
||||
|
||||
========================================================
|
||||
IMAGES USED
|
||||
|
||||
/images/loading-*.gif
|
||||
- source: http://www.AjaxLoad.info
|
||||
|
||||
/images/flags/*
|
||||
- source: http://www.famfamfam.com/lab/icons/flags/
|
||||
14
interfaces/Config/templates/_inc_footer_uc.tmpl
Normal file
@@ -0,0 +1,14 @@
|
||||
<!-- Content end -->
|
||||
</div>
|
||||
<script>
|
||||
function is_touch_device() {
|
||||
return !!('ontouchstart' in window) ? 1 : 0;
|
||||
}
|
||||
if (is_touch_device() === 1) {
|
||||
// touch device found
|
||||
\$('#content').css('overflow-y', 'inherit');
|
||||
\$('html').css('overflow-y', 'scroll');
|
||||
}
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
152
interfaces/Config/templates/_inc_header_uc.tmpl
Normal file
@@ -0,0 +1,152 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<title>SABnzbd $version - $T('queued'): $mbleft $T('MB')</title>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<meta name="robots" content="noindex">
|
||||
<!--[if lt IE 9]>
|
||||
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
|
||||
<![endif]-->
|
||||
|
||||
#if $pane == "Config"#
|
||||
#set global $root = '../'#
|
||||
#else#
|
||||
#set global $root = '../../'#
|
||||
#end if#
|
||||
|
||||
<link rel="shortcut icon" href="${root}staticcfg/ico/favicon.ico">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="144x144" href="${root}staticcfg/ico/apple-touch-icon-144x144-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="114x114" href="${root}staticcfg/ico/apple-touch-icon-114x114-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="${root}staticcfg/ico/apple-touch-icon-72x72-precomposed.png">
|
||||
<link rel="apple-touch-icon-precomposed" href="${root}staticcfg/ico/apple-touch-icon-57x57-precomposed.png">
|
||||
|
||||
<link rel="stylesheet" type="text/css" href="${root}staticcfg/css/style.css" />
|
||||
<script src="${root}staticcfg/js/script.js"></script>
|
||||
|
||||
<script type="text/javascript">
|
||||
\$.Browser = {
|
||||
defaults: {
|
||||
title: 'Choose Directory',
|
||||
url: '${root}api?mode=browse&output=json&apikey=$session',
|
||||
autocompleteURL: '${root}api?mode=browse&output=json&compact=1&apikey=$session'
|
||||
}
|
||||
};
|
||||
var config_pane = "$pane";
|
||||
var help_uri = "$help_uri";
|
||||
var apikey = "$session";
|
||||
var confirmWithoutSavingPrompt = "$T('Plush-confirmWithoutSavingPrompt')";
|
||||
function config_success() {
|
||||
\$('.saveButton').each(function () {
|
||||
\$(this).removeAttr("disabled").attr("value", "$T('button-saveChanges')");
|
||||
});
|
||||
}
|
||||
function config_failure() {
|
||||
\$('.saveButton').each(function () {
|
||||
\$(this).removeAttr("disabled").attr("value", "$T('smpl-failed')");
|
||||
});
|
||||
}
|
||||
|
||||
\$(document).ready(function () {
|
||||
|
||||
\$('.col2 H3').click(function () { \$(this).parent().next().toggle() });
|
||||
|
||||
\$('.sabnzbd_restart').click(function () {
|
||||
\$('.sabnzbd_restart').each(function () {
|
||||
\$(this).attr("disabled", "disabled");
|
||||
});
|
||||
var msg = "$T('explain-Restart')";
|
||||
if (confirm(msg.replace(/\<br(\s*\/|)\>/g, '\n'))) {
|
||||
\$(this).attr("value", "$T('wizard-restarting')");
|
||||
location.href = '${root}config/restart?session=$session';
|
||||
}
|
||||
\$('.sabnzbd_restart').each(function () {
|
||||
\$(this).removeAttr("disabled");
|
||||
});
|
||||
return false;
|
||||
});
|
||||
|
||||
\$('#fullform').ajaxForm({
|
||||
beforeSubmit: function () {
|
||||
\$('.saveButton').each(function () {
|
||||
\$(this).attr("disabled", "disabled").attr("value", "$T('smpl-saving')");
|
||||
});
|
||||
},
|
||||
success: function () {
|
||||
setTimeout(config_success, 1000);
|
||||
},
|
||||
error: function () {
|
||||
setTimeout(config_failure, 1000);
|
||||
},
|
||||
timeout: 3000
|
||||
});
|
||||
|
||||
\$("#sidebar-trigger").click(function () {
|
||||
if (\$("#sidebar-trigger").hasClass("trigger-left")) {
|
||||
\$("#sidebar").animate({marginLeft: "-150px", queue: false}, 250);
|
||||
\$("#sidebar-pane").animate({marginLeft: "-150px", queue: false}, 250);
|
||||
\$("#content").animate({left: "6px", queue: false}, 250);
|
||||
\$("#sidebar-trigger").removeClass("trigger-left").addClass("trigger-right");
|
||||
} else {
|
||||
\$("#sidebar").animate({marginLeft: "0px", queue: false}, 250);
|
||||
\$("#sidebar-pane").animate({marginLeft: "0px", queue: false}, 250);
|
||||
\$("#content").animate({left: "156px", queue: false}, 250);
|
||||
\$("#sidebar-trigger").removeClass("trigger-right").addClass("trigger-left");
|
||||
}
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
</script>
|
||||
|
||||
</head>
|
||||
<body class="$pane">
|
||||
<div id="sidebar">
|
||||
<a href="${root}"><img src="${root}staticcfg/images/logo.png" width="120" height="45" id="logo" alt="[home]" /></a>
|
||||
<div id="tab-container">
|
||||
<a href="${root}config/">
|
||||
<div #if $pane == "Config" then 'class="active"' else ""#>$T('menu-config')</div>
|
||||
</a>
|
||||
<a href="${root}config/general/">
|
||||
<div #if $pane == "General" then 'class="active"' else ""#>$T('cmenu-general')</div>
|
||||
</a>
|
||||
<a href="${root}config/folders/">
|
||||
<div #if $pane == "Folders" then 'class="active"' else ""#>$T('cmenu-folders')</div>
|
||||
</a>
|
||||
<a href="${root}config/switches/">
|
||||
<div #if $pane == "Switches" then 'class="active"' else ""#>$T('cmenu-switches')</div>
|
||||
</a>
|
||||
<a href="${root}config/server/">
|
||||
<div #if $pane == "Servers" then 'class="active"' else ""#>$T('cmenu-servers')</div>
|
||||
</a>
|
||||
<a href="${root}config/scheduling/">
|
||||
<div #if $pane == "Scheduling" then 'class="active"' else ""#>$T('Plush-cmenu-scheduling')</div>
|
||||
</a>
|
||||
<a href="${root}config/notify/">
|
||||
<div #if $pane == "Email" then 'class="active"' else ""#>$T('cmenu-notif')</div>
|
||||
</a>
|
||||
<a href="${root}config/indexers/">
|
||||
<div #if $pane == "Index Sites" then 'class="active"' else ""#>$T('cmenu-newzbin')</div>
|
||||
</a>
|
||||
<a href="${root}config/categories/">
|
||||
<div #if $pane == "Categories" then 'class="active"' else ""#>$T('cmenu-cat')</div>
|
||||
</a>
|
||||
<a href="${root}config/sorting/">
|
||||
<div #if $pane == "Sorting" then 'class="active"' else ""#>$T('cmenu-sorting')</div>
|
||||
</a>
|
||||
<a href="${root}config/special/">
|
||||
<div #if $pane == "Special" then 'class="active"' else ""#>$T('cmenu-special')</div>
|
||||
</a>
|
||||
<a href="${root}config/rss/">
|
||||
<div #if $pane == "RSS" then 'class="active"' else ""#>$T('cmenu-rss')</div>
|
||||
</a>
|
||||
<br/>
|
||||
<a href="$helpuri$help_uri" target="_blank">
|
||||
<div>$T('menu-help')</div>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
<div id="sidebar-pane"><div id="sidebar-trigger" class="trigger-left"></div></div>
|
||||
<div id="content">
|
||||
<!-- Content start -->
|
||||
29
interfaces/Config/templates/config.tmpl
Normal file
@@ -0,0 +1,29 @@
|
||||
<!--#set global $pane="Config"#-->
|
||||
<!--#set global $help_uri="configure-0-7"#-->
|
||||
<!--#include $webdir + "/_inc_header_uc.tmpl"#-->
|
||||
|
||||
<div class="colmask">
|
||||
<div class="section padTable">
|
||||
<table id="infoTable">
|
||||
<tbody>
|
||||
<tr class="alt"><td class="infoTableHeader">$T('version'): </td><td class="infoTableCell">$version</td></tr>
|
||||
<tr><td class="infoTableHeader">$T('uptime'): </td><td class="infoTableCell">$uptime</td></tr>
|
||||
<tr class="alt"><td class="infoTableHeader">$T('confgFile'): </td><td class="infoTableCell">$configfn</td></tr>
|
||||
<tr><td class="infoTableHeader">$T('cache').capitalize(): </td><td class="infoTableCell"><!--#set $msg=$T('ft-buffer@2')%($cache_art, $cache_size)#-->$msg</td></tr>
|
||||
<tr class="alt"><td class="infoTableHeader">$T('parameters'): </td><td class="infoTableCell">$cmdline</td></tr>
|
||||
<tr><td class="infoTableHeader">$T('pythonVersion'): </td><td class="infoTableCell">$sys.version[:120]</td></tr>
|
||||
<tr class="infoTableSeperator alt"><td class="infoTableHeader">$T('homePage') </td><td class="infoTableCell"><a href="http://sabnzbd.org/" target="_blank">http://sabnzbd.org/</a></td></tr>
|
||||
<tr><td class="infoTableHeader">$T('menu-wiki') </td><td class="infoTableCell"><a href="http://wiki.sabnzbd.org/faq" target="_blank">http://wiki.sabnzbd.org/faq</a></td></tr>
|
||||
<tr class="alt"><td class="infoTableHeader">$T('menu-forums') </td><td class="infoTableCell"><a href="http://forums.sabnzbd.org/" target="_blank">http://forums.sabnzbd.org/</a></td></tr>
|
||||
<tr><td class="infoTableHeader">$T('source') </td><td class="infoTableCell"><a href="https://github.com/sabnzbd/sabnzbd" target="_blank">https://github.com/sabnzbd/sabnzbd</a></td></tr>
|
||||
<tr class="alt"><td class="infoTableHeader">$T('menu-irc') </td><td class="infoTableCell"><a href="irc://irc.synirc.net/#sabnzbd"><i>#sabnzbd</i> on <i>irc.synirc.net</i></a> $T('or') (<a href="http://sabnzbd.org/live-chat/" target="_blank">webchat</a>)</td></tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="padding alt">
|
||||
<h5 class="copyright">Copyright © 2008-2012 The SABnzbd Team <<span style="color: #0000ff;">team@sabnzbd.org</span>></h5>
|
||||
<p class="copyright"><small>$T('yourRights')</small></p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!--#include $webdir + "/_inc_footer_uc.tmpl"#-->
|
||||
115
interfaces/Config/templates/config_cat.tmpl
Normal file
@@ -0,0 +1,115 @@
|
||||
<!--#set global $pane="Categories"#-->
|
||||
<!--#set global $help_uri="configure-categories-0-7"#-->
|
||||
<!--#include $webdir + "/_inc_header_uc.tmpl"#-->
|
||||
|
||||
<div class="colmask">
|
||||
|
||||
<div class="section">
|
||||
<div class="padTable">
|
||||
<p>
|
||||
$T('explain-catTags') $T('explain-catTags2')<br/>
|
||||
</p>
|
||||
<div class="field-pair">
|
||||
<h5 class="darkred nomargin">$T('explain-relFolder'): <span class="path">$defdir</span></h5>
|
||||
</div>
|
||||
|
||||
<!--#set $odd = False#-->
|
||||
<!--#set $cur = 0#-->
|
||||
<!--#for $slot in $slotinfo#-->
|
||||
<!--#set $odd = not $odd#-->
|
||||
<!--#set $cur = $cur+1#-->
|
||||
|
||||
<form action="save" method="get">
|
||||
|
||||
<table class="catTable">
|
||||
|
||||
<!--#if $cur == 1#-->
|
||||
<tr>
|
||||
<th>$T('category')</th>
|
||||
<th>$T('priority')</th>
|
||||
<th>$T('mode')</th>
|
||||
<!--#if $script_list#--><th>$T('script')</th><!--#end if#-->
|
||||
<th>$T('catFolderPath')</th>
|
||||
<th>$T('catTags')</th>
|
||||
<th> </th>
|
||||
</tr>
|
||||
<!--#end if#-->
|
||||
|
||||
<tr class="<!--#if $odd then "alt" else ""#-->" <!--#if $slot.name == '*'#-->style="background-color: #FFFFE0;"<!--#end if#-->>
|
||||
|
||||
<td>
|
||||
<input type="hidden" name="session" value="$session" />
|
||||
<input type="hidden" value="$slot.name" name="name" />
|
||||
<!--#if $slot.name != '*'#-->
|
||||
<input type="text" name="newname" value="$slot.name" size="10" />
|
||||
<!--#else#-->
|
||||
<input type="text" name="newname" value="$T('default')" disabled="disabled" size="10" />
|
||||
<!--#end if#-->
|
||||
</td>
|
||||
|
||||
<td>
|
||||
<select name="priority">
|
||||
<!--#if $slot.name != '*'#-->
|
||||
<option value="-100" <!--#if $slot.priority == -100 then 'selected="selected" class="selected"' else ""#-->>$T('default')</option>
|
||||
<!--#end if#-->
|
||||
<option value="2" <!--#if $slot.priority == 2 then 'selected="selected" class="selected"' else ""#-->>$T('pr-force')</option>
|
||||
<option value="1" <!--#if $slot.priority == 1 then 'selected="selected" class="selected"' else ""#-->>$T('pr-high')</option>
|
||||
<option value="0" <!--#if $slot.priority == 0 then 'selected="selected" class="selected"' else ""#-->>$T('pr-normal')</option>
|
||||
<option value="-1" <!--#if $slot.priority == -1 then 'selected="selected" class="selected"' else ""#-->>$T('pr-low')</option>
|
||||
<option value="-2" <!--#if $slot.priority == -2 then 'selected="selected" class="selected"' else ""#-->>$T('pr-paused')</option>
|
||||
</select>
|
||||
</td>
|
||||
|
||||
<td>
|
||||
<select name="pp">
|
||||
<!--#if $slot.name != '*'#-->
|
||||
<option value="" <!--#if $slot.pp == "" then 'selected="selected" class="selected"' else ""#-->>$T('default')</option>
|
||||
<!--#end if#-->
|
||||
<option value="0" <!--#if $slot.pp == "0" then 'selected="selected" class="selected"' else ""#-->>$T('pp-none')</option>
|
||||
<option value="1" <!--#if $slot.pp == "1" then 'selected="selected" class="selected"' else ""#-->>$T('pp-repair')</option>
|
||||
<option value="2" <!--#if $slot.pp == "2" then 'selected="selected" class="selected"' else ""#-->>$T('pp-unpack')</option>
|
||||
<option value="3" <!--#if $slot.pp == "3" then 'selected="selected" class="selected"' else ""#-->>$T('pp-delete')</option>
|
||||
</select>
|
||||
</td>
|
||||
|
||||
<!--#if $script_list#-->
|
||||
<td>
|
||||
<select name="script">
|
||||
<!--#for $sc in $script_list#-->
|
||||
<!--#if not ($sc == 'Default' and $slot.name == '*')#-->
|
||||
<option value="$sc" <!--#if $slot.script.lower() == $sc.lower() then 'selected="selected" class="selected"' else ""#-->>$Tspec($sc)</option>
|
||||
<!--#end if#-->
|
||||
<!--#end for#-->
|
||||
</select>
|
||||
</td>
|
||||
<!--#end if#-->
|
||||
|
||||
<td><input type="text" name="dir" value="$slot.dir" size="30" /></td>
|
||||
<td><input type="text" name="newzbin" value="$slot.newzbin" size="30" /></td>
|
||||
|
||||
<td class="nowrap">
|
||||
<input type="submit" class="Save" value="<!--#if $cur == 2 then $T('button-add') else $T('button-save')#-->" />
|
||||
<!--#if $slot.name and $slot.name != '*'#-->
|
||||
<input type="button" class="delCat" value="$T('button-x')" />
|
||||
<!--#end if#-->
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
<!--#end for#-->
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script>
|
||||
\$(document).ready(function(){
|
||||
\$('.delCat').click(function(){
|
||||
var theForm = \$(this).closest("form");
|
||||
theForm.attr("action", "delete").submit();
|
||||
});
|
||||
});
|
||||
</script>
|
||||
|
||||
<!--#include $webdir + "/_inc_footer_uc.tmpl"#-->
|
||||
118
interfaces/Config/templates/config_folders.tmpl
Normal file
@@ -0,0 +1,118 @@
|
||||
<!--#set global $pane="Folders"#-->
|
||||
<!--#set global $help_uri="configure-folders-0-7"#-->
|
||||
<!--#include $webdir + "/_inc_header_uc.tmpl"#-->
|
||||
|
||||
<div class="colmask">
|
||||
<form action="saveDirectories" method="post" name="fullform" id="fullform">
|
||||
<input type="hidden" id="session" name="session" value="$session" />
|
||||
<div class="section">
|
||||
<div class="col2">
|
||||
<h3>$T('userFolders')</h3>
|
||||
<p>$T('explain-folderConfig')</p>
|
||||
</div><!-- /col2 -->
|
||||
<div class="col1">
|
||||
<fieldset>
|
||||
<div class="field-pair">
|
||||
<h5 class="darkred nomargin">$T('base-folder'): <span class="path">$my_home</span></h5>
|
||||
</div>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="download_dir">$T('opt-download_dir')</label>
|
||||
<input type="text" name="download_dir" id="download_dir" value="$download_dir" size="45" />
|
||||
<span class="desc">$T('explain-download_dir')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="download_free">$T('opt-download_free')</label>
|
||||
<input type="text" name="download_free" id="download_free" value="$download_free" size="8" />
|
||||
<span class="desc">$T('explain-download_free')</span>
|
||||
</div>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="complete_dir">$T('opt-complete_dir')</label>
|
||||
<input type="text" name="complete_dir" id="complete_dir" value="$complete_dir" size="45" />
|
||||
<span class="desc">$T('explain-complete_dir')</span>
|
||||
</div>
|
||||
<div class="field-pair <!--#if $nt then "disabled" else "" #-->">
|
||||
<label class="config" for="permissions">$T('opt-permissions')</label>
|
||||
<input type="text" name="permissions" id="permissions" value="$permissions" size="8" <!--#if $nt then 'readonly="readonly" disabled="disabled"' else "" #--> />
|
||||
<span class="desc">$T('explain-permissions')</span>
|
||||
</div>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="dirscan_dir">$T('opt-dirscan_dir')</label>
|
||||
<input type="text" name="dirscan_dir" id="dirscan_dir" value="$dirscan_dir" size="45" />
|
||||
<span class="desc">$T('explain-dirscan_dir')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="dirscan_speed">$T('opt-dirscan_speed')</label>
|
||||
<input type="number" name="dirscan_speed" id="dirscan_speed" value="$dirscan_speed" size="8" min="0" max="3600" />
|
||||
<span class="desc">$T('explain-dirscan_speed')</span>
|
||||
</div>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="script_dir">$T('opt-script_dir')</label>
|
||||
<input type="text" name="script_dir" id="script_dir" value="$script_dir" size="45" />
|
||||
<span class="desc">$T('explain-script_dir')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="email_dir">$T('opt-email_dir')</label>
|
||||
<input type="text" name="email_dir" id="email_dir" value="$email_dir" size="45" />
|
||||
<span class="desc">$T('explain-email_dir')</span>
|
||||
</div>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="password_file">$T('opt-password_file')</label>
|
||||
<input type="text" name="password_file" id="password_file" value="$password_file" size="45" />
|
||||
<span class="desc">$T('explain-password_file')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<input type="submit" value="$T('button-saveChanges')" class="saveButton" />
|
||||
</div>
|
||||
</fieldset>
|
||||
</div><!-- /col1 -->
|
||||
</div><!-- /section -->
|
||||
<div class="section">
|
||||
<div class="col2">
|
||||
<h3>$T('systemFolders')</h3>
|
||||
<p>$T('explain-folderConfig')</p>
|
||||
</div><!-- /col2 -->
|
||||
<div class="col1">
|
||||
<fieldset>
|
||||
<div class="field-pair">
|
||||
<h5 class="darkred nomargin">$T('base-folder'): <span class="path">$my_lcldata</span></h5>
|
||||
</div>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="admin_dir">$T('opt-admin_dir')</label>
|
||||
<input type="text" name="admin_dir" id="admin_dir" value="$admin_dir" size="45" />
|
||||
<span class="desc">$T('explain-admin_dir1')</span>
|
||||
<span class="desc">$T('explain-admin_dir2')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="log_dir">$T('opt-log_dir')</label>
|
||||
<input type="text" name="log_dir" id="log_dir" value="$log_dir" size="45" />
|
||||
<span class="desc">$T('explain-log_dir')</span>
|
||||
</div>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="nzb_backup_dir">$T('opt-nzb_backup_dir')</label>
|
||||
<input type="text" name="nzb_backup_dir" id="nzb_backup_dir" value="$nzb_backup_dir" size="45" />
|
||||
<span class="desc">$T('explain-nzb_backup_dir')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<input type="submit" value="$T('button-saveChanges')" class="saveButton" />
|
||||
<input type="button" value="$T('button-restart') SABnzbd" class="sabnzbd_restart" />
|
||||
</div>
|
||||
</fieldset>
|
||||
</div><!-- /col1 -->
|
||||
</div><!-- /section -->
|
||||
<div class="padding alt">
|
||||
<input type="submit" value="$T('button-saveChanges')" class="saveButton" />
|
||||
<input type="button" value="$T('button-restart') SABnzbd" class="sabnzbd_restart" />
|
||||
</div>
|
||||
</form>
|
||||
</div><!-- /colmask -->
|
||||
|
||||
<script>
|
||||
\$(document).ready(function(){
|
||||
\$('#download_dir').fileBrowser({ title: 'Select $T('opt-download_dir')' });
|
||||
\$('#complete_dir').fileBrowser({ title: 'Select $T('opt-complete_dir')' });
|
||||
\$('#dirscan_dir').fileBrowser({ title: 'Select $T('opt-dirscan_dir')' });
|
||||
\$('#script_dir').fileBrowser({ title: 'Select $T('opt-script_dir')' });
|
||||
\$('#email_dir').fileBrowser({ title: 'Select $T('opt-email_dir')' });
|
||||
});
|
||||
</script>
|
||||
<!--#include $webdir + "/_inc_footer_uc.tmpl"#-->
|
||||
231
interfaces/Config/templates/config_general.tmpl
Normal file
@@ -0,0 +1,231 @@
|
||||
<!--#set global $pane="General"#-->
|
||||
<!--#set global $help_uri="configure-general-0-7"#-->
|
||||
<!--#include $webdir + "/_inc_header_uc.tmpl"#-->
|
||||
|
||||
<div class="colmask">
|
||||
<form action="saveGeneral" method="post" name="fullform" id="fullform" novalidate>
|
||||
<input type="hidden" id="session" name="session" value="$session" />
|
||||
<div class="section">
|
||||
<div class="col2">
|
||||
<h3>$T('webServer')</h3>
|
||||
<p><b>$T('restartRequired')</b></p>
|
||||
</div><!-- /col2 -->
|
||||
<div class="col1">
|
||||
<fieldset>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="host">$T('opt-host')</label>
|
||||
<input type="url" name="host" id="host" value="$host" size="40" />
|
||||
<span class="desc">$T('explain-host')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="port">$T('opt-port')</label>
|
||||
<input type="text" name="port" id="port" value="$port" size="8" />
|
||||
<span class="desc">$T('explain-port')</span>
|
||||
</div>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="username">$T('opt-web_username')</label>
|
||||
<input type="text" name="username" id="username" value="$username" size="30" />
|
||||
<span class="desc">$T('explain-web_username')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="password">$T('opt-web_password')</label>
|
||||
<input type="password" name="password" id="password" value="$password" size="30" />
|
||||
<span class="desc">$T('explain-web_password')</span>
|
||||
</div>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="web_dir">$T('opt-web_dir')</label>
|
||||
<select name="web_dir" id="web_dir">
|
||||
<!--#for $webline in $web_list#-->
|
||||
<!--#if $webline.lower() == $web_dir.lower()#-->
|
||||
<option value="$webline" selected="selected" class="selected">$webline</option>
|
||||
<!--#else#-->
|
||||
<option value="$webline">$webline</option>
|
||||
<!--#end if#-->
|
||||
<!--#end for#-->
|
||||
</select>
|
||||
<span class="desc">$T('explain-web_dir')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="web_dir2">$T('opt-web_dir2')</label>
|
||||
<select name="web_dir2" id="web_dir2">
|
||||
<!--#for $webline in $web_list2#-->
|
||||
<!--#if $webline.lower() == $web_dir2.lower()#-->
|
||||
<option value="$webline" selected="selected" class="selected">$webline</option>
|
||||
<!--#else#-->
|
||||
<option value="$webline">$webline</option>
|
||||
<!--#end if#-->
|
||||
<!--#end for#-->
|
||||
</select>
|
||||
<span class="desc">$T('explain-web_dir2')</span>
|
||||
</div>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="language">$T('opt-language')</label>
|
||||
<select name="language" id="language" id="language" class="select">
|
||||
<!--#for $webline in $lang_list#-->
|
||||
<!--#if $webline[0].lower() == $language.lower()#-->
|
||||
<option value="$webline[0]" selected="selected" class="selected">$webline[1]</option>
|
||||
<!--#else#-->
|
||||
<option value="$webline[0]">$webline[1]</option>
|
||||
<!--#end if#-->
|
||||
<!--#end for#-->
|
||||
</select>
|
||||
<span class="desc">$T('explain-language')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="disable_api_key">$T('opt-disableApikey')</label>
|
||||
<input type="checkbox" name="disable_api_key" id="disable_api_key" value="1" <!--#if int($disable_api_key) > 0 then 'checked="checked"' else ""#--> />
|
||||
<span class="desc">$T('explain-disableApikey')</span>
|
||||
</div>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="apikey">$T('opt-apikey')</label>
|
||||
<input type="text" id="apikey" value="$session" size="35" />
|
||||
<input type="button" value="$T('button-apikey')" id="generate_new_apikey" />
|
||||
<input type="button" value="$T('qr-code')" title="$T('explain-qr-code')" class="show_qrcode" rel="$session" />
|
||||
<span class="desc">$T('explain-apikey')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="nzbkey">$T('opt-nzbkey')</label>
|
||||
<input type="text" id="nzbkey" value="$nzb_key" size="35" />
|
||||
<input type="button" value="$T('button-apikey')" id="generate_new_nzbkey" />
|
||||
<input type="button" value="$T('qr-code')" title="$T('explain-qr-code')" class="show_qrcode" rel="$nzb_key" />
|
||||
<span class="desc">$T('explain-nzbkey')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<input type="submit" value="$T('button-saveChanges')" class="saveButton" />
|
||||
<input type="button" value="$T('button-restart') SABnzbd" class="sabnzbd_restart" />
|
||||
</div>
|
||||
</fieldset>
|
||||
</div><!-- /col1 -->
|
||||
</div><!-- /section -->
|
||||
<div class="section">
|
||||
<div class="col2">
|
||||
<h3>$T('httpsSupport')</h3>
|
||||
<p><b>$T('restartRequired')</b></p>
|
||||
</div><!-- /col2 -->
|
||||
<div class="col1">
|
||||
<fieldset>
|
||||
<div class="field-pair">
|
||||
<h5 class="darkred nomargin">$T('base-folder'): <span class="path">$my_lcldata</span></h5>
|
||||
</div>
|
||||
<div class="field-pair alt <!--#if int($have_ssl) == 0 then "disabled" else ""#-->">
|
||||
<label class="config" for="enable_https">$T('opt-enable_https')</label>
|
||||
<input type="checkbox" name="enable_https" id="enable_https" value="1" <!--#if int($enable_https) > 0 then 'checked="checked"' else ""#--> <!--#if int($have_ssl) == 0 then "disabled" else ""#--> />
|
||||
<span class="desc">$T('explain-enable_https')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="https_port">$T('opt-https_port')</label>
|
||||
<input type="text" name="https_port" id="https_port" value="$https_port" size="8" />
|
||||
<span class="desc">$T('explain-https_port')</span>
|
||||
</div>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="https_cert">$T('opt-https_cert')</label>
|
||||
<input type="text" name="https_cert" id="https_cert" value="$https_cert" size="50" />
|
||||
<span class="desc">$T('explain-https_cert')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="https_key">$T('opt-https_key')</label>
|
||||
<input type="text" name="https_key" id="https_key" value="$https_key" size="50" />
|
||||
<span class="desc">$T('explain-https_key')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<input type="submit" value="$T('button-saveChanges')" class="saveButton" />
|
||||
<input type="button" value="$T('button-restart') SABnzbd" class="sabnzbd_restart" />
|
||||
</div>
|
||||
</fieldset>
|
||||
</div><!-- /col1 -->
|
||||
</div><!-- /section -->
|
||||
<div class="section">
|
||||
<div class="col2">
|
||||
<h3>$T('tuning')</h3>
|
||||
</div><!-- /col2 -->
|
||||
<div class="col1">
|
||||
<fieldset>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="bandwidth_limit">$T('opt-bandwidth_limit')</label>
|
||||
<input type="number" name="bandwidth_limit" id="bandwidth_limit" value="$bandwidth_limit" size="8" step="1024" min="0" />
|
||||
<span class="desc">$T('explain-bandwidth_limit')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="cache_limit">$T('opt-cache_limitstr')</label>
|
||||
<input type="text" name="cache_limit" id="cache_limit" value="$cache_limit" size="8" />
|
||||
<span class="desc">$T('explain-cache_limitstr')</span>
|
||||
</div>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="cleanup_list">$T('opt-cleanup_list')</label>
|
||||
<input type="text" name="cleanup_list" id="cleanup_list" value="$cleanup_list" size="50" placeholder=".nfo, .sfv" />
|
||||
<span class="desc">$T('explain-cleanup_list')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<input type="submit" value="$T('button-saveChanges')" class="saveButton" />
|
||||
</div>
|
||||
</fieldset>
|
||||
</div><!-- /col1 -->
|
||||
</div><!-- /section -->
|
||||
<div class="padding alt">
|
||||
<input type="submit" value="$T('button-saveChanges')" class="saveButton" />
|
||||
<input type="button" value="$T('button-restart') SABnzbd" class="sabnzbd_restart" />
|
||||
</div>
|
||||
</form>
|
||||
</div><!-- /colmask -->
|
||||
|
||||
<script>
|
||||
\$(document).ready(function(){
|
||||
\$('#apikey, #nzbkey').click(function () { \$(this).select() });
|
||||
\$('#generate_new_apikey').click(function () {
|
||||
if (confirm("$T('Plush-confirm')")) {
|
||||
$.ajax({
|
||||
type: "POST",
|
||||
url: "../../tapi",
|
||||
data: {mode:'config', name:'set_apikey', apikey: \$('#apikey').val()},
|
||||
success: function(msg){
|
||||
\$('#apikey').val(msg);
|
||||
window.location.reload();
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
\$('#generate_new_nzbkey').click(function () {
|
||||
if (confirm("$T('Plush-confirm')")) {
|
||||
$.ajax({
|
||||
type: "POST",
|
||||
url: "../../tapi",
|
||||
data: {mode:'config', name:'set_nzbkey', apikey: \$('#apikey').val()},
|
||||
success: function(msg){
|
||||
\$('#nzbkey').val(msg);
|
||||
window.location.reload();
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
\$('.show_qrcode').each(function () {
|
||||
var qrkey = \$(this).attr('rel'),
|
||||
qrcode = \$('<img />', {
|
||||
src: 'https://chart.googleapis.com/chart?chs=300x300&cht=qr&chl=' + qrkey,
|
||||
alt: 'loading...',
|
||||
width: 300,
|
||||
height: 300
|
||||
});
|
||||
\$(this).qtip( {
|
||||
content: {
|
||||
text: qrcode
|
||||
},
|
||||
position: {
|
||||
my: 'center',
|
||||
at: 'center',
|
||||
target: \$(window)
|
||||
},
|
||||
show: {
|
||||
event: 'click',
|
||||
solo: true,
|
||||
modal: true
|
||||
},
|
||||
hide: false,
|
||||
style: 'ui-tooltip-light ui-tooltip-rounded ui-tooltip-shadow ui-tooltip-qrcode'
|
||||
});
|
||||
});
|
||||
|
||||
});
|
||||
</script>
|
||||
|
||||
<!--#include $webdir + "/_inc_footer_uc.tmpl"#-->
|
||||
157
interfaces/Config/templates/config_indexers.tmpl
Normal file
@@ -0,0 +1,157 @@
|
||||
<!--#set global $pane="Index Sites"#-->
|
||||
<!--#set global $help_uri="configure-indexers-0-7"#-->
|
||||
<!--#include $webdir + "/_inc_header_uc.tmpl"#-->
|
||||
|
||||
<div class="colmask">
|
||||
<form action="saveNewzbin" method="post" name="fullform" id="fullform">
|
||||
<input type="hidden" id="session" name="session" value="$session" />
|
||||
<div class="section">
|
||||
<div class="col2">
|
||||
<h3>NzbMatrix $T('accountInfo')</h3>
|
||||
<p>$T('explain-nzbmatrix')</p>
|
||||
</div><!-- /col2 -->
|
||||
<div class="col1">
|
||||
<fieldset>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="matrix_username">$T('opt-username_matrix')</label>
|
||||
<input type="text" name="matrix_username" id="matrix_username" value="$matrix_username" size="30" />
|
||||
<span class="desc">$T('explain-username_matrix')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="matrix_apikey">$T('opt-apikey_matrix')</label>
|
||||
<input type="text" name="matrix_apikey" id="matrix_apikey" value="$matrix_apikey" size="35" />
|
||||
<span class="desc">$T('explain-apikey_matrix')</span>
|
||||
</div>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="matrix_del_bookmark">$T('opt-newzbin_unbookmark')</label>
|
||||
<input type="checkbox" name="matrix_del_bookmark" id="matrix_del_bookmark" value="1" <!--#if int($matrix_del_bookmark) > 0 then 'checked="checked"' else ""#--> />
|
||||
<span class="desc">$T('explain-newzbin_unbookmark')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<input type="submit" value="$T('button-saveChanges')" class="saveButton" />
|
||||
</div>
|
||||
</fieldset>
|
||||
</div><!-- /col1 -->
|
||||
</div><!-- /section -->
|
||||
<div class="section">
|
||||
<div class="col2">
|
||||
<h3>Newzbin $T('accountInfo')</h3>
|
||||
<p>$T('explain-newzbin')</p>
|
||||
</div><!-- /col2 -->
|
||||
<div class="col1">
|
||||
<fieldset>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="username_newzbin">$T('opt-username_newzbin')</label>
|
||||
<input type="text" name="username_newzbin" id="username_newzbin" value="$username_newzbin" size="30" />
|
||||
<span class="desc">$T('explain-username_newzbin')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="password_newzbin">$T('opt-password_newzbin')</label>
|
||||
<input type="password" name="password_newzbin" id="password_newzbin" value="$password_newzbin" size="30" />
|
||||
<span class="desc">$T('explain-password_newzbin')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<input type="submit" value="$T('button-saveChanges')" class="saveButton" />
|
||||
</div>
|
||||
</fieldset>
|
||||
</div><!-- /col1 -->
|
||||
</div><!-- /section -->
|
||||
<div class="section">
|
||||
<div class="col2">
|
||||
<h3>Newzbin $T('newzbinBookmarks')</h3>
|
||||
<p>
|
||||
<input type="button" id="getBookmarks" value="$T('link-getBookmarks')" />
|
||||
<span id="getBookmarks-result" class="icon"> </span>
|
||||
<br/><br/>
|
||||
<!--#if $bookmarks_list#-->
|
||||
<input type="button" id="hideBookmarks" value="$T('link-HideBM')" />
|
||||
<!--#else#-->
|
||||
<input type="button" id="showBookmarks" value="$T('link-ShowBM')" />
|
||||
<!--#end if#-->
|
||||
</p>
|
||||
</div><!-- /col2 -->
|
||||
<div class="col1">
|
||||
<fieldset>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="newzbin_bookmarks">$T('opt-newzbin_bookmarks')</label>
|
||||
<input type="checkbox" name="newzbin_bookmarks" id="newzbin_bookmarks" value="1" <!--#if int($newzbin_bookmarks) > 0 then 'checked="checked"' else ""#--> />
|
||||
<span class="desc">$T('explain-newzbin_bookmarks')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="newzbin_unbookmark">$T('opt-newzbin_unbookmark')</label>
|
||||
<input type="checkbox" name="newzbin_unbookmark" id="newzbin_unbookmark" value="1" <!--#if int($newzbin_unbookmark) > 0 then 'checked="checked"' else ""#--> />
|
||||
<span class="desc">$T('explain-newzbin_unbookmark')</span>
|
||||
</div>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="bookmark_rate">$T('opt-bookmark_rate')</label>
|
||||
<input type="number" name="bookmark_rate" id="bookmark_rate" value="$bookmark_rate" size="8" min="15" max="1440" />
|
||||
<span class="desc">$T('explain-bookmark_rate')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<input type="submit" value="$T('button-saveChanges')" class="saveButton" />
|
||||
</div>
|
||||
</fieldset>
|
||||
</div><!-- /col1 -->
|
||||
</div><!-- /section -->
|
||||
<!--#if $bookmarks_list#-->
|
||||
<div class="section">
|
||||
<div class="col2">
|
||||
<h3>Newzbin Bookmarks</h3>
|
||||
</div><!-- /col2 -->
|
||||
<div class="col1">
|
||||
<fieldset>
|
||||
<!--#set $odd = False#-->
|
||||
<!--#for $msgid in $bookmarks_list#-->
|
||||
<!--#set $odd = not $odd#-->
|
||||
<div class="field-pair <!--#if $odd then "alt" else ""#-->">
|
||||
<a href="https://$newzbin_url/browse/post/$msgid/" target="_blank">$msgid</a><br/>
|
||||
</div>
|
||||
<!--#end for#-->
|
||||
</fieldset>
|
||||
</div><!-- /col1 -->
|
||||
</div><!-- /section -->
|
||||
<!--#end if#-->
|
||||
<div class="padding alt">
|
||||
<input type="submit" value="$T('button-saveChanges')" class="saveButton" />
|
||||
<input type="button" value="$T('button-restart') SABnzbd" class="sabnzbd_restart" />
|
||||
</div>
|
||||
</form>
|
||||
</div><!-- /colmask -->
|
||||
|
||||
<script>
|
||||
\$(document).ready(function(){
|
||||
\$('#matrix_apikey').click(function(){ \$(this).select() });
|
||||
\$('#getBookmarks2').click(function(){ window.location='getBookmarks?session='+apikey; });
|
||||
\$('#hideBookmarks').click(function(){ window.location='hideBookmarks?session='+apikey; });
|
||||
\$('#showBookmarks').click(function(){ window.location='showBookmarks?session='+apikey; });
|
||||
});
|
||||
</script>
|
||||
<script>
|
||||
\$(document).ready(function(){
|
||||
\$('#getBookmarks').click(function(event){
|
||||
\$.ajax({
|
||||
type: "GET",
|
||||
url: "../../tapi",
|
||||
data: {mode: 'newzbin', name: 'get_bookmarks', output: 'json', apikey: '$session' },
|
||||
beforeSend: function(){
|
||||
\$('#getBookmarks').attr("disabled", "disabled");
|
||||
\$('#getBookmarks-result').removeClass("success failure").addClass("loading");
|
||||
},
|
||||
complete: function(){
|
||||
\$('#getBookmarks').removeAttr("disabled");
|
||||
\$('#getBookmarks-result').removeClass("loading");
|
||||
},
|
||||
success: function(data){
|
||||
if(data.status == true)
|
||||
\$('#getBookmarks-result').addClass("success");
|
||||
else {
|
||||
\$('#getBookmarks-result').addClass("failure")
|
||||
alert(data.error);
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
});
|
||||
</script>
|
||||
|
||||
<!--#include $webdir + "/_inc_footer_uc.tmpl"#-->
|
||||
175
interfaces/Config/templates/config_notify.tmpl
Normal file
@@ -0,0 +1,175 @@
|
||||
<!--#set global $pane="Email"#-->
|
||||
<!--#set global $help_uri="configure-notifications-0-7"#-->
|
||||
<!--#include $webdir + "/_inc_header_uc.tmpl"#-->
|
||||
|
||||
<div class="colmask">
|
||||
<form action="saveEmail" method="post" name="fullform" id="fullform" novalidate>
|
||||
<input type="hidden" id="session" name="session" value="$session" />
|
||||
<div class="section">
|
||||
<div class="col2">
|
||||
<h3>$T('emailOptions')</h3>
|
||||
</div><!-- /col2 -->
|
||||
<div class="col1">
|
||||
<fieldset>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="email_endjob_radio">$T('opt-email_endjob')</label>
|
||||
<select name="email_endjob" id="email_endjob">
|
||||
<option value="0" <!--#if int($email_endjob) == 0 then 'selected="selected" class="selected"' else ""#--> >$T('email-never')</option>
|
||||
<option value="1" <!--#if int($email_endjob) == 1 then 'selected="selected" class="selected"' else ""#--> >$T('email-always')</option>
|
||||
<option value="2" <!--#if int($email_endjob) == 2 then 'selected="selected" class="selected"' else ""#--> >$T('email-errorOnly')</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="email_full">$T('opt-email_full')</label>
|
||||
<input type="checkbox" name="email_full" id="email_full" value="1" <!--#if int($email_full) > 0 then 'checked="checked"' else ""#--> />
|
||||
<span class="desc">$T('explain-email_full')</span>
|
||||
</div>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="email_rss">$T('opt-email_rss')</label>
|
||||
<input type="checkbox" name="email_rss" id="email_rss" value="1" <!--#if int($email_rss) > 0 then 'checked="checked"' else ""#--> />
|
||||
<span class="desc">$T('explain-email_rss')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="email_dir">$T('opt-email_dir')</label>
|
||||
<input type="text" name="email_dir" id="email_dir" value="$email_dir" size="45" />
|
||||
<span class="desc">$T('explain-email_dir')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<input type="submit" value="$T('button-saveChanges')" class="saveButton" />
|
||||
</div>
|
||||
</fieldset>
|
||||
</div><!-- /col1 -->
|
||||
</div><!-- /section -->
|
||||
<div class="section">
|
||||
<div class="col2">
|
||||
<h3>$T('emailAccount')</h3>
|
||||
</div><!-- /col2 -->
|
||||
<div class="col1">
|
||||
<fieldset>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="email_server">$T('opt-email_server')</label>
|
||||
<input type="url" name="email_server" id="email_server" value="$email_server" size="40" />
|
||||
<span class="desc">$T('explain-email_server')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="email_to">$T('opt-email_to')</label>
|
||||
<input type="email" name="email_to" id="email_to" value="$email_to" size="40" />
|
||||
<span class="desc">$T('explain-email_to')</span>
|
||||
</div>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="email_from">$T('opt-email_from')</label>
|
||||
<input type="email" name="email_from" id="email_from" value="$email_from" size="40" />
|
||||
<span class="desc">$T('explain-email_from')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="email_account">$T('opt-email_account')</label>
|
||||
<input type="email" name="email_account" id="email_account" value="$email_account" size="30" />
|
||||
<span class="desc">$T('explain-email_account')</span>
|
||||
</div>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="email_pwd">$T('opt-email_pwd')</label>
|
||||
<input type="password" name="email_pwd" id="email_pwd" value="$email_pwd" size="30" />
|
||||
<span class="desc">$T('explain-email_pwd')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<input type="submit" value="$T('button-saveChanges')" class="saveButton" />
|
||||
<input type="button" value="$T('link-testEmail')" id="test_email" rel="$T('askTestEmail')" />
|
||||
<span id="testmail-result" class="icon path darkred"> </span>
|
||||
</div>
|
||||
</fieldset>
|
||||
</div><!-- /col1 -->
|
||||
</div><!-- /section -->
|
||||
<div class="section">
|
||||
<div class="col2">
|
||||
<h3>$T('growlSettings')</h3>
|
||||
</div><!-- /col2 -->
|
||||
<div class="col1">
|
||||
<fieldset>
|
||||
<div class="field-pair alt <!--#if not $have_ntfosd then "disabled" else "" #-->">
|
||||
<label class="config" for="ntfosd_enable">$T('opt-ntfosd_enable')</label>
|
||||
<input type="checkbox" name="ntfosd_enable" id="ntfosd_enable" value="1" <!--#if int($ntfosd_enable) > 0 then 'checked="checked"' else ""#--> <!--#if not $have_ntfosd then 'readonly="readonly" disabled="disabled"' else "" #--> />
|
||||
<span class="desc">$T('explain-ntfosd_enable')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="growl_enable">$T('opt-growl_enable')</label>
|
||||
<input type="checkbox" name="growl_enable" id="growl_enable" value="1" <!--#if int($growl_enable) > 0 then 'checked="checked"' else ""#--> />
|
||||
<span class="desc">$T('explain-growl_enable')</span>
|
||||
</div>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="growl_server">$T('opt-growl_server')</label>
|
||||
<input type="url" name="growl_server" id="growl_server" value="$growl_server" size="40" />
|
||||
<span class="desc">$T('explain-growl_server')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="growl_password">$T('opt-growl_password')</label>
|
||||
<input type="password" name="growl_password" id="growl_password" value="$growl_password" size="30" />
|
||||
<span class="desc">$T('explain-growl_password')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<input type="submit" value="$T('button-saveChanges')" class="saveButton" />
|
||||
<input type="button" value="$T('testNotify')" id="test_notification" />
|
||||
<span id="testnotice-result" class="icon path darkred"> </span>
|
||||
</div>
|
||||
</fieldset>
|
||||
</div><!-- /col1 -->
|
||||
</div><!-- /section -->
|
||||
<div class="padding alt">
|
||||
<input type="submit" value="$T('button-saveChanges')" class="saveButton" />
|
||||
<input type="button" value="$T('button-restart') SABnzbd" class="sabnzbd_restart" />
|
||||
</div>
|
||||
</form>
|
||||
</div><!-- /colmask -->
|
||||
|
||||
<script>
|
||||
\$(document).ready(function(){
|
||||
\$('#email_dir').fileBrowser({ title: 'Select $T('opt-email_dir')' });
|
||||
\$('#test_email').click(function () {
|
||||
if (confirm(\$('#test_email').attr('rel'))) {
|
||||
\$.ajax({
|
||||
type: "GET",
|
||||
url: "../../tapi",
|
||||
data: {mode: 'test_email', apikey: '$session', output: 'json' },
|
||||
beforeSend: function () {
|
||||
\$('#test_email').attr("disabled", "disabled");
|
||||
\$('#testmail-result').removeClass("success failure").addClass("loading").html('$T('post-Verifying')');
|
||||
},
|
||||
complete: function () {
|
||||
\$('#test_email').removeAttr("disabled");
|
||||
\$('#testmail-result').removeClass("loading");
|
||||
},
|
||||
success: function (data) {
|
||||
if (data.status == true) {
|
||||
\$('#testmail-result').addClass("success").html('$T('smpl-emailsent')');
|
||||
} else {
|
||||
\$('#testmail-result').addClass("failure").html(data.error);
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
\$('#test_notification').click(function () {
|
||||
\$.ajax({
|
||||
type: "GET",
|
||||
url: "../../tapi",
|
||||
data: {mode: 'test_notif', apikey: '$session', output: 'json' },
|
||||
beforeSend: function () {
|
||||
\$('#test_notification').attr("disabled", "disabled");
|
||||
\$('#testnotice-result').removeClass("success failure").addClass("loading").html('$T('post-Verifying')');
|
||||
},
|
||||
complete: function () {
|
||||
\$('#test_notification').removeAttr("disabled");
|
||||
\$('#testnotice-result').removeClass("loading");
|
||||
},
|
||||
success: function (data) {
|
||||
if (data.status == true) {
|
||||
\$('#testnotice-result').addClass("success").html('$T('smpl-notesent')');
|
||||
} else {
|
||||
\$('#testnotice-result').addClass("failure").html(data.error);
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
});
|
||||
</script>
|
||||
|
||||
<!--#include $webdir + "/_inc_footer_uc.tmpl"#-->
|
||||
571
interfaces/Config/templates/config_rss.tmpl
Normal file
@@ -0,0 +1,571 @@
|
||||
<!--#set global $pane="RSS"#-->
|
||||
<!--#set global $help_uri="configure-rss-0-7"#-->
|
||||
<!--#include $webdir + "/_inc_header_uc.tmpl"#-->
|
||||
|
||||
<div class="colmask">
|
||||
<!--#if not $active_feed#-->
|
||||
<div class="section">
|
||||
<div class="padTable">
|
||||
|
||||
<p>$T('explain-RSS')</p>
|
||||
|
||||
<form action="add_rss_feed" method="post" novalidate>
|
||||
<input type="hidden" name="session" value="$session">
|
||||
<table class="catTable">
|
||||
<tr>
|
||||
<th> </th>
|
||||
<th>$T('name')</th>
|
||||
<th>$T('feed') URL</th>
|
||||
<th> </th>
|
||||
</tr>
|
||||
<tr class="even">
|
||||
<td><input type="checkbox" name="enable" value="1" /></td>
|
||||
<td><input type="text" name="feed" size="20" value="$feed" placeholder="unique feed name" /></td>
|
||||
<td><input type="url" name="uri" size="35" /></td>
|
||||
<td class="nowrap">
|
||||
<input type="submit" class="Save" value="$T('button-add')" />
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
|
||||
<br/>
|
||||
|
||||
<form action="save_rss_feed" method="post" novalidate>
|
||||
<input type="hidden" name="session" value="$session" />
|
||||
<table id="subscriptions">
|
||||
<tbody>
|
||||
|
||||
<!--#set $feeds = sorted($rss.keys(), cmp=lambda x,y: cmp(x.lower(), y.lower()))#--><!--#slurp#-->
|
||||
<!--#set $odd = False#--><!--#slurp#-->
|
||||
<!--#for $feed_item in $feeds#--><!--#slurp#-->
|
||||
<!--#set $odd = not $odd#--><!--#slurp#-->
|
||||
|
||||
<tr class="data-row <!--#if $odd then "alt" else ""#-->" >
|
||||
<td class="chk">
|
||||
<input type="checkbox" class="toggleFeedCheckbox" name="enable" value="1" <!--#if int($rss[$feed_item]['enable']) != 0 then 'checked="checked"' else ""#--> rel="$feed_item" />
|
||||
</td>
|
||||
<td class="title">
|
||||
<div class="subscription-title">
|
||||
<a href="?feed=$rss[$feed_item]['link']" class="path feed">
|
||||
<div class="favicon" style="background-image: url("http://www.google.com/s2/favicons?domain=$rss[$feed_item]['baselink']&alt=feed");"></div>
|
||||
<span class="<!--#if int($rss[$feed_item]['enable']) != 0 then 'feed_enabled"' else "feed_disabled"#-->">$feed_item</span>
|
||||
</a>
|
||||
</div>
|
||||
<!-- <input type="text" name="newfeed" value="$feed_item" size="25" readonly="readonly" class="readonly" /> -->
|
||||
</td>
|
||||
<td class="controls">
|
||||
<input type="button" class="testFeed" value="$T('Read')" rel="$feed_item" />
|
||||
<input type="hidden" name="uri" value="$rss[$feed_item]['uri']" size="75" />
|
||||
<input type="button" class="editFeed" value="$T('Edit') URL" rel="$feed_item" />
|
||||
<input type="button" class="delFeed" value="$T('button-x')" rel="$feed_item" />
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="feed-row <!--#if $odd then "alt" else ""#-->">
|
||||
<td></td>
|
||||
<td colspan="2">
|
||||
<div>$rss[$feed_item]['uri']</div>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<!--#end for#-->
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
</form>
|
||||
|
||||
<!--#if $feeds#-->
|
||||
<br/>
|
||||
|
||||
<form action="rss_now" method="post" novalidate>
|
||||
<input type="hidden" name="session" value="$session" />
|
||||
<input type="submit" class="readAll" value="$T('button-rssNow')" />
|
||||
</form>
|
||||
<!--#end if#-->
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="section">
|
||||
<form action="save_rss_rate" method="post">
|
||||
<input type="hidden" name="session" value="$session" />
|
||||
<div class="col1">
|
||||
<fieldset>
|
||||
<div class="field-pair">
|
||||
<label class="config narrow" for="rss_rate">$T('opt-rss_rate')</label>
|
||||
<input type="number" name="rss_rate" id="rss_rate" value="$rss_rate" size="8" min="15" max="1440" />
|
||||
<input type="submit" value="$T('button-save')" />
|
||||
<span class="desc narrow">$T('explain-rss_rate')</span>
|
||||
</div>
|
||||
</fieldset>
|
||||
</div><!-- /col1 -->
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<!--#end if#-->
|
||||
|
||||
<!--#if $active_feed#-->
|
||||
<!--#set $feed = $active_feed#-->
|
||||
|
||||
<div class="section">
|
||||
<div class="padTable">
|
||||
<h2 class="nomargin activeRSS"><a href="${root}config/rss/">$T('cmenu-rss')</a> » <a href="$rss[$active_feed]['uri']" onclick="window.open(this.href); return false;">$active_feed</a></h2>
|
||||
<!--#if $error#-->
|
||||
<h3 class="darkred">$error</h3>
|
||||
<!--#end if#-->
|
||||
|
||||
<form action="upd_rss_feed" method="post">
|
||||
<input type="hidden" name="session" value="$session" />
|
||||
<input type="hidden" name="feed" value="$feed" />
|
||||
<input type="hidden" name="uri" value="$rss[$feed]['uri']" />
|
||||
<table class="catTable">
|
||||
<thead>
|
||||
<tr>
|
||||
<th> </th>
|
||||
<th>$T('rss-order')</th>
|
||||
<th>$T('rss-type')</th>
|
||||
<th>$T('rss-filter')</th>
|
||||
<!--#if $rss[$feed]['pick_cat']#-->
|
||||
<th>$T('category')</th>
|
||||
<!--#end if#-->
|
||||
<th>$T('priority')</th>
|
||||
<th>$T('mode')</th>
|
||||
<!--#if $rss[$feed]['pick_script']#-->
|
||||
<th>$T('script')</th>
|
||||
<!--#end if#-->
|
||||
<th> </th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<!-- default / global filter -->
|
||||
<tbody>
|
||||
<tr class="default">
|
||||
<td>
|
||||
<input type="checkbox" disabled="disabled" class="hidden" />
|
||||
</td>
|
||||
<td>
|
||||
<input type="text" disabled="disabled" size="1" class="hidden" />
|
||||
</td>
|
||||
<td>
|
||||
<select name="filter_type" disabled="disabled" class="hidden" >
|
||||
<option value="A" selected="selected"> $T('rss-accept')</option>
|
||||
<option value="M"> $T('rss-must')</option>
|
||||
<option value="R"> $T('rss-reject')</option>
|
||||
<option value="C"> $T('rss-mustcat')</option>
|
||||
</select>
|
||||
</td>
|
||||
<td>
|
||||
<input type="text" disabled="disabled" value="" size="25" class="hidden" />
|
||||
</td>
|
||||
<!--#if $rss[$feed]['pick_cat']#-->
|
||||
<td>
|
||||
<select name="cat">
|
||||
<!--#for $ct in $cat_list#-->
|
||||
<option value="$ct" <!--#if $ct == $rss[$feed]['cat'] then 'selected="selected"' else ""#-->>$Tspec($ct)</option><!--#slurp#-->
|
||||
<!--#end for#-->
|
||||
</select>
|
||||
</td>
|
||||
<!--#end if#-->
|
||||
<td>
|
||||
<select name="priority">
|
||||
<option value="-100" <!--#if $rss[$feed]['priority'] == -100 then 'selected="selected"' else ''#-->>$T('default')</option>
|
||||
<option value="2" <!--#if $rss[$feed]['priority'] == 2 then 'selected="selected"' else ''#-->>$T('pr-force')</option>
|
||||
<option value="1" <!--#if $rss[$feed]['priority'] == 1 then 'selected="selected"' else ''#-->>$T('pr-high')</option>
|
||||
<option value="0" <!--#if $rss[$feed]['priority'] == 0 then 'selected="selected"' else ''#-->>$T('pr-normal')</option>
|
||||
<option value="-1" <!--#if $rss[$feed]['priority'] == -1 then 'selected="selected"' else ''#-->>$T('pr-low')</option>
|
||||
<option value="-2" <!--#if $rss[$feed]['priority'] == -2 then 'selected="selected"' else ''#-->>$T('pr-paused')</option>
|
||||
</select>
|
||||
</td>
|
||||
<td>
|
||||
<select name="pp">
|
||||
<option value="" <!--#if $rss[$feed]['pp'] == "" then 'selected="selected"' else ''#-->>$T('default')</option>
|
||||
<option value="0" <!--#if $rss[$feed]['pp'] == "0" then 'selected="selected"' else ''#-->>$T('pp-none')</option>
|
||||
<option value="1" <!--#if $rss[$feed]['pp'] == "1" then 'selected="selected"' else ''#-->>$T('pp-repair')</option>
|
||||
<option value="2" <!--#if $rss[$feed]['pp'] == "2" then 'selected="selected"' else ''#-->>$T('pp-unpack')</option>
|
||||
<option value="3" <!--#if $rss[$feed]['pp'] == "3" then 'selected="selected"' else ''#-->>$T('pp-delete')</option>
|
||||
</select>
|
||||
</td>
|
||||
<!--#if $rss[$feed]['pick_script']#-->
|
||||
<td>
|
||||
<select name="script">
|
||||
<!--#for $sc in $script_list#-->
|
||||
<option value="$sc" <!--#if $sc == $rss[$feed]['script'] then 'selected="selected"' else ""#-->>$Tspec($sc)</option><!--#slurp#-->
|
||||
<!--#end for#-->
|
||||
</select>
|
||||
</td>
|
||||
<!--#end if#-->
|
||||
<td>
|
||||
<input type="submit" class="Save" value="$T('button-save')" />
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</form>
|
||||
|
||||
<!-- add new filter -->
|
||||
<form action="upd_rss_filter" method="post">
|
||||
<input type="hidden" name="session" value="$session" />
|
||||
<input type="hidden" name="index" value="$rss[$feed]['filtercount']" />
|
||||
<input type="hidden" name="feed" value="$feed" />
|
||||
<table class="catTable">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>
|
||||
<input type="checkbox" name="enabled" value="1" checked="checked" />
|
||||
</td>
|
||||
<td>
|
||||
<input type="text" name="new_index" size="1" />
|
||||
</td>
|
||||
<td>
|
||||
<select name="filter_type">
|
||||
<option value="A" selected="selected"> $T('rss-accept')</option>
|
||||
<option value="M"> $T('rss-must')</option>
|
||||
<option value="R"> $T('rss-reject')</option>
|
||||
<option value="C"> $T('rss-mustcat')</option>
|
||||
</select>
|
||||
</td>
|
||||
<td>
|
||||
<input type="text" name="filter_text" value="" size="25" />
|
||||
</td>
|
||||
<!--#if $rss[$feed]['pick_cat']#-->
|
||||
<td>
|
||||
<select name="cat">
|
||||
<!--#for $ct in $cat_list#-->
|
||||
<option value="$ct" <!--#if $ct == 'Default' then 'selected="selected"' else ""#-->>$Tspec($ct)</option><!--#slurp#-->
|
||||
<!--#end for#-->
|
||||
</select>
|
||||
</td>
|
||||
<!--#end if#-->
|
||||
<td>
|
||||
<select name="priority">
|
||||
<option value="-100" selected="selected">$T('default')</option>
|
||||
<option value="2">$T('pr-force')</option>
|
||||
<option value="1">$T('pr-high')</option>
|
||||
<option value="0">$T('pr-normal')</option>
|
||||
<option value="-1">$T('pr-low')</option>
|
||||
<option value="-2">$T('pr-paused')</option>
|
||||
</select>
|
||||
</td>
|
||||
<td>
|
||||
<select name="pp">
|
||||
<option value="" selected="selected">$T('default')</option>
|
||||
<option value="0">$T('pp-none')</option>
|
||||
<option value="1">$T('pp-repair')</option>
|
||||
<option value="2">$T('pp-unpack')</option>
|
||||
<option value="3">$T('pp-delete')</option>
|
||||
</select>
|
||||
</td>
|
||||
<!--#if $rss[$feed]['pick_script']#-->
|
||||
<td>
|
||||
<select name="script">
|
||||
<!--#for $sc in $script_list#-->
|
||||
<option value="$sc" <!--#if $sc == 'Default' then 'selected="selected"' else ""#-->>$Tspec($sc)</option><!--#slurp#-->
|
||||
<!--#end for#-->
|
||||
</select>
|
||||
</td>
|
||||
<!--#end if#-->
|
||||
<td>
|
||||
<input type="submit" class="Save" value="$T('button-add')" />
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</form>
|
||||
|
||||
<!--#set $odd = False#--><!--#slurp#-->
|
||||
<!--#set $fnum = 0#--><!--#slurp#-->
|
||||
<!--#for $filter in $rss[$feed].filters#--><!--#slurp#-->
|
||||
<!--#set $odd = not $odd#--><!--#slurp#-->
|
||||
|
||||
<form action="upd_rss_filter" method="post">
|
||||
<input type="hidden" name="session" value="$session" />
|
||||
<input type="hidden" name="index" value="$fnum" />
|
||||
<input type="hidden" name="feed" value="$feed" />
|
||||
<table class="catTable">
|
||||
<tbody>
|
||||
<tr class="<!--#if $odd then "alt" else ""#-->">
|
||||
<td>
|
||||
<input type="checkbox" name="enabled" value="1" <!--#if $filter[6] == '1' then 'checked="checked"' else ""#--> />
|
||||
</td>
|
||||
<td>
|
||||
<input type="text" name="new_index" value="$fnum" size="1" />
|
||||
</td>
|
||||
<td>
|
||||
<select name="filter_type">
|
||||
<option value="A" <!--#if $filter[3] == "A" then 'selected="selected"' else ""#-->> $T('rss-accept')</option>
|
||||
<option value="M" <!--#if $filter[3] == "M" then 'selected="selected"' else ""#-->> $T('rss-must')</option>
|
||||
<option value="R" <!--#if $filter[3] == "R" then 'selected="selected"' else ""#-->> $T('rss-reject')</option>
|
||||
<option value="C" <!--#if $filter[3] == "C" then 'selected="selected"' else ""#-->> $T('rss-mustcat')</option>
|
||||
</select>
|
||||
</td>
|
||||
<td>
|
||||
<input type="text" name="filter_text" value="$filter[4]" size="25" />
|
||||
</td>
|
||||
<!--#if $rss[$feed]['pick_cat']#-->
|
||||
<td>
|
||||
<select name="cat">
|
||||
<!--#for $ct in $cat_list#-->
|
||||
<option value="$ct" <!--#if $ct == $filter[0] then 'selected="selected"' else ""#-->>$Tspec($ct)</option><!--#slurp#-->
|
||||
<!--#end for#-->
|
||||
</select>
|
||||
</td>
|
||||
<!--#end if#-->
|
||||
<td>
|
||||
<select name="priority">
|
||||
<option value="-100" <!--#if $filter[5] == "-100" then 'selected="selected"' else ""#-->>$T('default')</option>
|
||||
<option value="2" <!--#if $filter[5] == "2" then 'selected="selected"' else ""#-->>$T('pr-force')</option>
|
||||
<option value="1" <!--#if $filter[5] == "1" then 'selected="selected"' else ""#-->>$T('pr-high')</option>
|
||||
<option value="0" <!--#if $filter[5] == "0" then 'selected="selected"' else ""#-->>$T('pr-normal')</option>
|
||||
<option value="-1" <!--#if $filter[5] == "-1" then 'selected="selected"' else ""#-->>$T('pr-low')</option>
|
||||
<option value="-2" <!--#if $filter[5] == "-2" then 'selected="selected"' else ""#-->>$T('pr-paused')</option>
|
||||
</select>
|
||||
</td>
|
||||
<td>
|
||||
<select name="pp">
|
||||
<option value="" <!--#if $filter[1] == "" then 'selected="selected"' else ""#-->>$T('default')</option>
|
||||
<option value="0" <!--#if $filter[1] == "0" then 'selected="selected"' else ""#-->>$T('pp-none')</option>
|
||||
<option value="1" <!--#if $filter[1] == "1" then 'selected="selected"' else ""#-->>$T('pp-repair')</option>
|
||||
<option value="2" <!--#if $filter[1] == "2" then 'selected="selected"' else ""#-->>$T('pp-unpack')</option>
|
||||
<option value="3" <!--#if $filter[1] == "3" then 'selected="selected"' else ""#-->>$T('pp-delete')</option>
|
||||
</select>
|
||||
</td>
|
||||
<!--#if $rss[$feed]['pick_script']#-->
|
||||
<td>
|
||||
<select name="script">
|
||||
<!--#for $sc in $script_list#-->
|
||||
<option value="$sc" <!--#if $sc == $filter[2] then 'selected="selected"' else ""#-->>$Tspec($sc)</option><!--#slurp#-->
|
||||
<!--#end for#-->
|
||||
</select>
|
||||
</td>
|
||||
<!--#end if#-->
|
||||
<td>
|
||||
<input type="submit" class="Save" value="$T('button-save')" />
|
||||
<input type="button" class="delFilter" value="$T('button-x')" />
|
||||
<!--#if not $rss[$feed].filter_states[$fnum]#--> $T('Incorrect filter')<!--#end if#-->
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</form>
|
||||
|
||||
<!--#set $fnum = $fnum+1#-->
|
||||
<!--#end for#-->
|
||||
|
||||
<form action="download_rss_feed" method="post">
|
||||
<input type="hidden" name="session" value="$session" />
|
||||
<input type="hidden" name="feed" value="$feed" />
|
||||
<div class="padding">
|
||||
<input type="button" class="testFeed" value="$T('button-preFeed')" rel="$feed" />
|
||||
<input type="submit" value="$T('button-forceFeed')" />
|
||||
<input type="button" class="cleanFeed" value="$T('button-clear') $T('link-download')" />
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<br/>
|
||||
<div style="padding-left: 10px; border-bottom: 1px solid #DFDEDE;">
|
||||
<ul class="tabs">
|
||||
<li><a href="#">$T('rss-matched') <span class="count"><!--#echo len($matched)#--></span></a></li>
|
||||
<li><a href="#">$T('rss-notMatched') <span class="count"><!--#echo len($unmatched)#--></span></a></li>
|
||||
<li><a href="#">$T('rss-done') <span class="count"><!--#echo len($downloaded)#--></span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="tab-content padTable">
|
||||
<!--#if $matched#-->
|
||||
<table class="catTable">
|
||||
|
||||
<!--#set $odd = False#--><!--#slurp#-->
|
||||
<!--#set $cur = 0#--><!--#slurp#-->
|
||||
<!--#for $job in $matched#--><!--#slurp#-->
|
||||
<!--#set $odd = not $odd#--><!--#slurp#-->
|
||||
<!--#set $cur = $cur+1#--><!--#slurp#-->
|
||||
|
||||
<!--#if $cur == 1#-->
|
||||
<thead>
|
||||
<tr>
|
||||
<th>$T('link-download')</th>
|
||||
<th>$T('rss-skip')</th>
|
||||
<th>$T('rss-filter')</th>
|
||||
<th>$T('sort-title')</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<!--#end if#-->
|
||||
<tr class="infoTableSeperator <!--#if $odd then "alt" else ""#-->">
|
||||
<td>
|
||||
<form action="download" method="get">
|
||||
<input type="hidden" value="$feed" name="feed" />
|
||||
<input type="hidden" name="session" value="$session" />
|
||||
<input type="hidden" name="url" value="$job[0]" />
|
||||
<input type="hidden" name="nzbname" value="$job[4]" />
|
||||
<input type="submit" value="$T('link-download')" />
|
||||
</form>
|
||||
</td>
|
||||
<td class="align-center">$job[2]</td>
|
||||
<td class="align-center">
|
||||
<span>$job[3]</span>
|
||||
</td>
|
||||
<td>$job[1]</td>
|
||||
</tr>
|
||||
<!--#end for#-->
|
||||
</table>
|
||||
|
||||
<!--#else#-->
|
||||
$T('none')
|
||||
<!--#end if#-->
|
||||
</div>
|
||||
|
||||
<div class="tab-content padTable">
|
||||
<!--#if $unmatched#-->
|
||||
<table class="catTable">
|
||||
|
||||
<!--#set $odd = False#--><!--#slurp#-->
|
||||
<!--#set $cur = 0#--><!--#slurp#-->
|
||||
<!--#for $job in $unmatched#--><!--#slurp#-->
|
||||
<!--#set $odd = not $odd#--><!--#slurp#-->
|
||||
<!--#set $cur = $cur+1#--><!--#slurp#-->
|
||||
|
||||
<!--#if $cur == 1#-->
|
||||
<thead>
|
||||
<tr>
|
||||
<th>$T('link-download')</th>
|
||||
<th>$T('rss-skip')</th>
|
||||
<th>$T('rss-filter')</th>
|
||||
<th>$T('sort-title')</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<!--#end if#-->
|
||||
<tr class="infoTableSeperator <!--#if $odd then "alt" else ""#-->">
|
||||
<td>
|
||||
<form action="download" method="get">
|
||||
<input type="hidden" value="$feed" name="feed" />
|
||||
<input type="hidden" name="session" value="$session" />
|
||||
<input type="hidden" name="url" value="$job[0]" />
|
||||
<input type="hidden" name="nzbname" value="$job[4]" />
|
||||
<input type="submit" value="$T('link-download')" />
|
||||
</form>
|
||||
</td>
|
||||
<td class="align-center">$job[2]</td>
|
||||
<td class="align-center">
|
||||
<span>$job[3]</span>
|
||||
</td>
|
||||
<td>$job[1]</td>
|
||||
</tr>
|
||||
<!--#end for#-->
|
||||
</table>
|
||||
|
||||
<!--#else#-->
|
||||
$T('none')
|
||||
<!--#end if#-->
|
||||
</div>
|
||||
|
||||
|
||||
<div class="tab-content padTable">
|
||||
<!--#if $downloaded#-->
|
||||
<form action="clean_rss_jobs" method="post">
|
||||
<input type="hidden" value="$feed" name="feed" />
|
||||
<input type="hidden" name="session" value="$session" />
|
||||
<table class="catTable">
|
||||
|
||||
<!--#set $odd = False#--><!--#slurp#-->
|
||||
<!--#set $cur = 0#--><!--#slurp#-->
|
||||
<!--#for $job in $downloaded#--><!--#slurp#-->
|
||||
<!--#set $odd = not $odd#--><!--#slurp#-->
|
||||
<!--#set $cur = $cur+1#--><!--#slurp#-->
|
||||
|
||||
<!--#if $cur == 1#-->
|
||||
<thead>
|
||||
<tr>
|
||||
<th>$T('sort-title')</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<!--#end if#-->
|
||||
<tr class="infoTableSeperator <!--#if $odd then "alt" else ""#-->">
|
||||
<td>$job</td>
|
||||
</tr>
|
||||
<!--#end for#-->
|
||||
</table>
|
||||
</form>
|
||||
|
||||
<!--#else#-->
|
||||
$T('none')
|
||||
<!--#end if#-->
|
||||
</div>
|
||||
|
||||
<!--#end if#-->
|
||||
|
||||
</div><!-- /colmask -->
|
||||
|
||||
<script>
|
||||
\$(document).ready(function(){
|
||||
\$('.editFeed').click(function(){
|
||||
var oldURI = \$(this).prev().val();
|
||||
var newURI = prompt("$T('feed') URL", oldURI );
|
||||
if(newURI != "" && newURI !== null) {
|
||||
var whichFeed = \$(this).attr("rel");
|
||||
\$.ajax({
|
||||
type: "POST",
|
||||
url: "save_rss_feed",
|
||||
data: {feed: whichFeed, uri: newURI, session: "$session" }
|
||||
}).done(function( msg ) {
|
||||
location.reload();
|
||||
});
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
});
|
||||
|
||||
\$('.delFeed').click(function(e){
|
||||
e.preventDefault();
|
||||
if ( confirm("$T('confirm')") ) {
|
||||
var whichFeed = \$(this).attr("rel");
|
||||
\$.ajax({
|
||||
type: "POST",
|
||||
url: "del_rss_feed",
|
||||
data: {feed: whichFeed, session: "$session" }
|
||||
}).done(function( msg ) {
|
||||
location.reload();
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
\$('.testFeed').click(function(){
|
||||
var whichFeed = \$(this).attr("rel");
|
||||
\$.ajax({
|
||||
type: "POST",
|
||||
url: "test_rss_feed",
|
||||
data: {feed: whichFeed, session: "$session" }
|
||||
}).done(function( msg ) {
|
||||
location = '?feed=' + whichFeed;
|
||||
// location.reload();
|
||||
});
|
||||
});
|
||||
|
||||
\$('.toggleFeedCheckbox').click(function(){
|
||||
var whichFeed = \$(this).attr("rel");
|
||||
\$.ajax({
|
||||
type: "POST",
|
||||
url: "toggle_rss_feed",
|
||||
data: {feed: whichFeed, session: "$session" }
|
||||
}).done(function() {
|
||||
location.reload();
|
||||
});
|
||||
});
|
||||
|
||||
\$('.cleanFeed').click(function(){
|
||||
var theForm = \$(this).closest("form");
|
||||
theForm.attr("action", "clean_rss_jobs").submit();
|
||||
});
|
||||
\$('.delFilter').click(function(){
|
||||
var theForm = \$(this).closest("form");
|
||||
theForm.attr("action", "del_rss_filter").submit();
|
||||
});
|
||||
\$(function() {
|
||||
\$("ul.tabs").tabs("div.tab-content");
|
||||
});
|
||||
|
||||
});
|
||||
</script>
|
||||
|
||||
<!--#include $webdir + "/_inc_footer_uc.tmpl"#-->
|
||||
101
interfaces/Config/templates/config_scheduling.tmpl
Normal file
@@ -0,0 +1,101 @@
|
||||
<!--#set global $pane="Scheduling"#-->
|
||||
<!--#set global $help_uri="configure-scheduling-0-7"#-->
|
||||
<!--#include $webdir + "/_inc_header_uc.tmpl"#-->
|
||||
|
||||
<%
|
||||
import time
|
||||
t = time.localtime()
|
||||
hour = t[3]
|
||||
if hour != 23:
|
||||
hour += 1
|
||||
else:
|
||||
hour = 0
|
||||
%>
|
||||
|
||||
<div class="colmask">
|
||||
<div class="section">
|
||||
<div class="col2">
|
||||
<h3>$T('addSchedule')</h3>
|
||||
</div><!-- /col2 -->
|
||||
<form action="addSchedule" method="post">
|
||||
<input type="hidden" id="session" name="session" value="$session" />
|
||||
<div class="col1">
|
||||
<fieldset>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="hour">$T('hour').capitalize() : $T('minute').capitalize()</label>
|
||||
<select name="hour" id="hour">
|
||||
<!--#for $i in range(24)#-->
|
||||
<option value="$i" <!--#if hour == i then 'selected="selected"' else ""#--> > $str($i).zfill(2) </option>
|
||||
<!--#end for#-->
|
||||
</select> <b>:</b> <select name="minute" id="minute">
|
||||
<!--#for $i in range(60)#-->
|
||||
<option value="$i"> $str($i).zfill(2) </option>
|
||||
<!--#end for#-->
|
||||
</select>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="dayofweek">$T('sch-frequency')</label>
|
||||
<select name="dayofweek" id="dayofweek">
|
||||
<option value="*" selected="selected">$T('daily')</option>
|
||||
<option value="1">$T('monday')</option>
|
||||
<option value="2">$T('tuesday')</option>
|
||||
<option value="3">$T('wednesday')</option>
|
||||
<option value="4">$T('thursday')</option>
|
||||
<option value="5">$T('friday')</option>
|
||||
<option value="6">$T('saturday')</option>
|
||||
<option value="7">$T('sunday')</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="action">$T('sch-action')</label>
|
||||
<select name="action" id="action">
|
||||
<!--#for $action in $actions#-->
|
||||
<option value="$action">$actions_lng[$action]</option>
|
||||
<!--#end for#-->
|
||||
</select>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="arguments">$T('sch-arguments')</label>
|
||||
<input type="text" name="arguments" id="arguments" value="" size="20" />
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<input type="submit" value="$T('button-addSchedule')" />
|
||||
</div>
|
||||
</fieldset>
|
||||
</div><!-- /col1 -->
|
||||
</div><!-- /section -->
|
||||
</form>
|
||||
<div class="section">
|
||||
<div class="col2">
|
||||
<h3>$T('currentSchedules')</h3>
|
||||
</div><!-- /col2 -->
|
||||
<div class="col1">
|
||||
<fieldset>
|
||||
<!--#if $schedlines#-->
|
||||
<!--#set $schednum = 0#-->
|
||||
<!--#set $odd = True#-->
|
||||
<!--#for $line in $schedlines#-->
|
||||
<!--#set $odd = not $odd#-->
|
||||
<form action="delSchedule" method="post">
|
||||
<input type="hidden" name="session" id="session" value="$session">
|
||||
<input type="hidden" name="line" id="line" value="$line"/>
|
||||
<div class="field-pair infoTableSeperator<!--#if $odd then "" else " alt"#-->">
|
||||
<input class="float-left" type="submit" value="$T('button-x')" />
|
||||
<div class="scheduleEntry">
|
||||
<span class="time">$taskinfo[$schednum][1]:$taskinfo[$schednum][2]</span><span class="frequency">$taskinfo[$schednum][3]</span> <span class="darkred">$taskinfo[$schednum][4]</span>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
<!--#set $schednum = $schednum+1#-->
|
||||
<!--#end for#-->
|
||||
<!--#else#-->
|
||||
<div class="field-pair">
|
||||
<label class="config">$T('none')</label>
|
||||
</div>
|
||||
<!--#end if#-->
|
||||
</fieldset>
|
||||
</div><!-- /col1 -->
|
||||
</div><!-- /section -->
|
||||
</div><!-- /colmask -->
|
||||
|
||||
<!--#include $webdir + "/_inc_footer_uc.tmpl"#-->
|
||||
194
interfaces/Config/templates/config_server.tmpl
Normal file
@@ -0,0 +1,194 @@
|
||||
<!--#set global $pane="Servers"#-->
|
||||
<!--#set global $help_uri="configure-servers-0-7"#-->
|
||||
<!--#include $webdir + "/_inc_header_uc.tmpl"#-->
|
||||
|
||||
<div class="colmask">
|
||||
<form action="addServer" method="post" novalidate>
|
||||
<input type="hidden" name="session" value="$session" />
|
||||
<div id="addServer">
|
||||
<div class="padding alt">
|
||||
<input type="button" value="$T('button-addServer')" id="addServerButton" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="section" id="addServerContent" style="display: none;">
|
||||
<div class="col2">
|
||||
<h3>$T('addServer')</h3>
|
||||
</div><!-- /col2 -->
|
||||
<div class="col1">
|
||||
<fieldset>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="enable">$T('srv-enable')</label>
|
||||
<input type="checkbox" name="enable" id="enable" value="1" checked="checked" />
|
||||
<span class="desc">$T('srv-enable')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="host">$T('srv-host')</label>
|
||||
<input type="text" name="host" id="host" size="40" />
|
||||
</div>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="port">$T('srv-port')</label>
|
||||
<input type="text" name="port" id="port" size="8" />
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="username">$T('srv-username')</label>
|
||||
<input type="text" name="username" id="username" size="30" />
|
||||
</div>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="password">$T('srv-password')</label>
|
||||
<input type="text" name="password" id="password" size="30" />
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="connections">$T('srv-connections')</label>
|
||||
<input type="number" name="connections" id="connections" size="8" min="0" max="100" />
|
||||
</div>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="retention">$T('srv-retention')</label>
|
||||
<input type="number" name="retention" id="retention" size="8" min="0" /> <i>$T('days')</i>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="timeout">$T('srv-timeout')</label>
|
||||
<input type="number" name="timeout" id="timeout" size="8" min="30" /> <i>$T('seconds')</i>
|
||||
</div>
|
||||
<div class="field-pair alt <!--#if int($have_ssl) == 0 then "disabled" else ""#-->">
|
||||
<label class="config" for="ssl">$T('srv-ssl')</label>
|
||||
<input type="checkbox" name="ssl" id="ssl" value="1" <!--#if int($have_ssl) == 0 then "disabled=\"disabled\"" else ""#--> />
|
||||
<span class="desc">$T('srv-ssl')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="fillserver">$T('srv-fillserver')</label>
|
||||
<input type="checkbox" name="fillserver" id="fillserver" value="1" />
|
||||
<span class="desc">$T('srv-fillserver')</span>
|
||||
</div>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="optional">$T('srv-optional')</label>
|
||||
<input type="checkbox" name="optional" id="optional" value="1" />
|
||||
<span class="desc">$T('srv-optional')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<input type="submit" value="$T('button-addServer')" />
|
||||
<input type="button" value="$T('button-testServer')" class="testServer" />
|
||||
</div>
|
||||
</fieldset>
|
||||
</div><!-- /col1 -->
|
||||
</div><!-- /section -->
|
||||
</form>
|
||||
|
||||
<!--#set $slist = $servers.keys()#-->
|
||||
<!--#$slist.sort()#-->
|
||||
<!--#set $cur = 0#-->
|
||||
<!--#for $server in $slist#-->
|
||||
<!--#set $cur = $cur + 1#-->
|
||||
|
||||
<form action="saveServer" method="post" id="fullform" novalidate>
|
||||
<input type="hidden" name="session" value="$session" />
|
||||
<input type="hidden" name="server" value="$server" />
|
||||
|
||||
<div class="section">
|
||||
<div class="col2">
|
||||
<h3>$servers[$server]['name']</h3>
|
||||
<!--#if 'amounts' in $servers[$server]#-->
|
||||
<p>
|
||||
<b>$T('srv-bandwidth'):</b><br/>
|
||||
$T('total'): $servers[$server]['amounts'][0]<br/>
|
||||
$T('today'): $servers[$server]['amounts'][3]<br/>
|
||||
$T('thisWeek'): $servers[$server]['amounts'][2]<br/>
|
||||
$T('thisMonth'): $servers[$server]['amounts'][1]
|
||||
</p>
|
||||
<input type="button" value="$T('button-clrServer')" class="clrServer" />
|
||||
<!--#end if#-->
|
||||
</div><!-- /col2 -->
|
||||
<div class="col1">
|
||||
<fieldset>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="enable$cur">$T('srv-enable')</label>
|
||||
<input type="checkbox" name="enable" id="enable$cur" value="1" <!--#if int($servers[$server]['enable']) != 0 then 'checked="checked"' else ""#--> />
|
||||
<span class="desc">$T('srv-enable')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="host$cur">$T('srv-host')</label>
|
||||
<input type="text" name="host" id="host$cur" value="$servers[$server]['host']" size="40" />
|
||||
</div>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="port$cur">$T('srv-port')</label>
|
||||
<input type="text" name="port" id="port$cur" value="$servers[$server]['port']" size="8" />
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="username$cur">$T('srv-username')</label>
|
||||
<input type="text" name="username" id="username$cur" value="$servers[$server]['username']" size="30" />
|
||||
</div>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="password$cur">$T('srv-password')</label>
|
||||
<input type="password" name="password" id="password$cur" value="$servers[$server]['password']" size="30" />
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="connections$cur">$T('srv-connections')</label>
|
||||
<input type="number" name="connections" id="connections$cur" value="$servers[$server]['connections']" size="8" min="0" max="100" />
|
||||
</div>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="retention$cur">$T('srv-retention')</label>
|
||||
<input type="number" name="retention" id="retention$cur" value="$servers[$server]['retention']" size="8" min="0" /> <i>$T('days')</i>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="timeout$cur">$T('srv-timeout')</label>
|
||||
<input type="number" name="timeout" id="timeout$cur" value="$servers[$server]['timeout']" size="8" min="30" /> <i>$T('seconds')</i>
|
||||
</div>
|
||||
<div class="field-pair alt <!--#if int($have_ssl) == 0 then "disabled" else ""#-->">
|
||||
<label class="config" for="ssl$cur">$T('srv-ssl')</label>
|
||||
<input type="checkbox" name="ssl" id="ssl$cur" value="1" <!--#if int($servers[$server]['ssl']) != 0 and int($have_ssl) == 1 then 'checked="checked"' else ""#--> <!--#if int($have_ssl) == 0 then "disabled=\"disabled\"" else ""#--> />
|
||||
<span class="desc">$T('srv-ssl')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="fillserver$cur">$T('srv-fillserver')</label>
|
||||
<input type="checkbox" name="fillserver" id="fillserver$cur" value="1" <!--#if int($servers[$server]['fillserver']) != 0 then 'checked="checked"' else ""#--> />
|
||||
<span class="desc">$T('srv-fillserver')</span>
|
||||
</div>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="optional$cur">$T('srv-optional')</label>
|
||||
<input type="checkbox" name="optional" id="optional$cur" value="1" <!--#if int($servers[$server]['optional']) != 0 then 'checked="checked"' else ""#--> />
|
||||
<span class="desc">$T('srv-optional')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<input type="submit" value="$T('button-saveChanges')" class="saveButton" />
|
||||
<input type="button" value="$T('button-testServer')" class="testServer" />
|
||||
<input type="button" value="$T('button-delServer')" class="delServer" />
|
||||
</div>
|
||||
</fieldset>
|
||||
</div><!-- /col1 -->
|
||||
</div><!-- /section -->
|
||||
</form>
|
||||
<!--#end for#-->
|
||||
|
||||
</div><!-- /colmask -->
|
||||
|
||||
<script>
|
||||
\$(document).ready(function(){
|
||||
\$('#addServerButton').click(function(){
|
||||
\$('#addServer').hide();
|
||||
\$('#addServerContent').show();
|
||||
});
|
||||
\$('.testServer').click(function(event){
|
||||
\$(this).attr("disabled", "disabled")
|
||||
\$.ajax({
|
||||
type: "POST",
|
||||
url: "../../tapi",
|
||||
data: "mode=config&name=test_server&" + \$(this).parents('form:first').serialize() + "&apikey=" + \$('#apikey').val(),
|
||||
success: function(msg){
|
||||
alert(msg);
|
||||
\$(event.target).removeAttr("disabled")
|
||||
}
|
||||
});
|
||||
});
|
||||
\$('.delServer').click(function(){
|
||||
if( confirm("$T('Plush-confirm')") )
|
||||
\$(this).parents('form:first').attr('action','delServer').submit();
|
||||
return false;
|
||||
});
|
||||
\$('.clrServer').click(function(){
|
||||
if( confirm("$T('Plush-confirm')") )
|
||||
\$(this).parents('form:first').attr('action','clrServer').submit();
|
||||
return false;
|
||||
});
|
||||
});
|
||||
</script>
|
||||
|
||||
<!--#include $webdir + "/_inc_footer_uc.tmpl"#-->
|
||||
538
interfaces/Config/templates/config_sorting.tmpl
Normal file
@@ -0,0 +1,538 @@
|
||||
<!--#set global $pane="Sorting"#-->
|
||||
<!--#set global $help_uri="configure-sorting-0-7"#-->
|
||||
<!--#include $webdir + "/_inc_header_uc.tmpl"#-->
|
||||
|
||||
<div class="colmask">
|
||||
<form action="saveSorting" method="post" name="fullform" id="fullform">
|
||||
<input type="hidden" id="session" name="session" value="$session" />
|
||||
<input id="complete_dir" type="hidden" value="$complete_dir" />
|
||||
<div class="section">
|
||||
<div class="col2">
|
||||
<h3>$T('seriesSorting')</h3>
|
||||
<p>
|
||||
<b>$T('affectedCat')</b><br/>
|
||||
<select name="tv_cat" multiple="multiple" class="multiple_cats">
|
||||
<!--#for $ct in $cat_list#-->
|
||||
<option value="$ct" <!--#if $ct in $tv_categories then 'selected="selected"' else ""#--> >$Tspec($ct)</option>
|
||||
<!--#end for#-->
|
||||
</select>
|
||||
</p>
|
||||
</div><!-- /col2 -->
|
||||
<div class="col1">
|
||||
<fieldset>
|
||||
<div class="field-pair">
|
||||
<h5 class="darkred nomargin">$T('ft-download'): <span class="path">$complete_dir</span></h5>
|
||||
</div>
|
||||
<div class="field-pair alt">
|
||||
<label class="config wide" for="enable_tv_sorting">$T('opt-tvsort')</label>
|
||||
<input type="checkbox" name="enable_tv_sorting" id="enable_tv_sorting" value="1" <!--#if int($enable_tv_sorting) > 0 then 'checked="checked"' else ""#--> />
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="tvfoldername">$T('sortString')</label>
|
||||
<input type="text" id="tvfoldername" name="tv_sort_string" value="$tv_sort_string" size="50" />
|
||||
<input type="button" value="$T('button-clear')" class="clearBtn" />
|
||||
</div>
|
||||
<div class="field-pair alt">
|
||||
<label class="config">$T('presetSort')</label>
|
||||
<div class="presets float-left">
|
||||
<input type="button" onclick="tvSet('%sn/Season %s/%sn - %sx%0e - %en.%ext')" value="$T('button-Season1x05')" />
|
||||
<input type="button" onclick="tvSet('%sn/Season %s/%sn - S%0sE%0e - %en.%ext')" value="$T('button-SeasonS01E05')" /><br/>
|
||||
<input type="button" onclick="tvSet('%sn/%sx%0e - %en/%sn - %sx%0e - %en.%ext')" value="$T('button-Ep1x05')" />
|
||||
<input type="button" onclick="tvSet('%sn/S%0sE%0e - %en/%sn - S%0sE%0e - %en.%ext')" value="$T('button-EpS01E05')" />
|
||||
</div>
|
||||
</div>
|
||||
<div id="previewtv" class="example">
|
||||
<div class="field-pair">
|
||||
<label class="config" for="tvsamplename">Test Data</label>
|
||||
<input type="text" id="tvsamplename" name="tvsamplename" placeholder="$T('show-name') S01E05 - $T('ep-name') [DTS]" size="50" />
|
||||
<input type="button" value="$T('button-clear')" class="clearBtn" />
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config">$T('sortResult')</label>
|
||||
<span class="desc path" id="previewtv-result"> </span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config">$T('sort-legenda')</label>
|
||||
<input type="button" value="$T('sort-legenda')" onclick="jQuery(this).hide(); jQuery('#Key1').show();" />
|
||||
<table id="Key1" class="Key">
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="align-right">$T('sort-meaning')</th>
|
||||
<th>$T('sort-pattern')</th>
|
||||
<th>$T('sort-result')</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td class="align-right"><b>$T('show-name'):</b></td>
|
||||
<td>%sn</td>
|
||||
<td>$T('show-sp-name')</td>
|
||||
</tr>
|
||||
<tr class="even">
|
||||
<td> </td>
|
||||
<td>%s.n</td>
|
||||
<td>$T('show-dot-name')</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> </td>
|
||||
<td>%s_n</td>
|
||||
<td>$T('show-us-name')</td>
|
||||
</tr>
|
||||
<tr class="even">
|
||||
<td class="align-right"><b>$T('show-name'):</b></td>
|
||||
<td>%sN</td>
|
||||
<td>$T('show-sp-name') ($T('case-adjusted'))</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> </td>
|
||||
<td>%s.N</td>
|
||||
<td>$T('show-dot-name') ($T('case-adjusted'))</td>
|
||||
</tr>
|
||||
<tr class="even">
|
||||
<td> </td>
|
||||
<td>%s_N</td>
|
||||
<td>$T('show-us-name') ($T('case-adjusted'))</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="align-right"><b>$T('show-seasonNum'):</b></td>
|
||||
<td>%s</td>
|
||||
<td>1</td>
|
||||
</tr>
|
||||
<tr class="even">
|
||||
<td> </td>
|
||||
<td>%0s</td>
|
||||
<td>01</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="align-right"><b>$T('show-epNum'):</b></td>
|
||||
<td>%e</td>
|
||||
<td>5</td>
|
||||
</tr>
|
||||
<tr class="even">
|
||||
<td> </td>
|
||||
<td>%0e</td>
|
||||
<td>05</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="align-right"><b>$T('ep-name'):</b></td>
|
||||
<td>%en</td>
|
||||
<td>$T('ep-sp-name')</td>
|
||||
</tr>
|
||||
<tr class="even">
|
||||
<td> </td>
|
||||
<td>%e.n</td>
|
||||
<td>$T('ep-dot-name')</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> </td>
|
||||
<td>%e_n</td>
|
||||
<td>$T('ep-us-name')</td>
|
||||
</tr>
|
||||
<tr class="even">
|
||||
<td class="align-right"><b>$T('fileExt'):</b></td>
|
||||
<td>%ext</td>
|
||||
<td>avi</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="align-right"><b>$T('orgFilename'):</b></td>
|
||||
<td>%fn</td>
|
||||
<td>$T("sort-File")</td>
|
||||
</tr>
|
||||
<tr class="even">
|
||||
<td class="align-right"><b>$T('orgDirname'):</b></td>
|
||||
<td>%dn</td>
|
||||
<td>$T("sort-Folder")</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="align-right"><b>$T('lowercase'):</b></td>
|
||||
<td>{$T('TEXT')}</td>
|
||||
<td>$T('text')</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<input type="submit" value="$T('button-saveChanges')" class="saveButton" />
|
||||
</div>
|
||||
</fieldset>
|
||||
</div><!-- /col1 -->
|
||||
</div><!-- /section -->
|
||||
<div class="section">
|
||||
<div class="col2">
|
||||
<h3>$T('genericSort')</h3>
|
||||
<p>
|
||||
<b>$T('affectedCat')</b><br/>
|
||||
<select name="movie_cat" multiple="multiple" class="multiple_cats">
|
||||
<!--#for $ct in $cat_list#-->
|
||||
<option value="$ct" <!--#if $ct in $movie_categories then 'selected="selected"' else ""#--> >$Tspec($ct)</option>
|
||||
<!--#end for#-->
|
||||
</select>
|
||||
</p>
|
||||
</div><!-- /col2 -->
|
||||
<div class="col1">
|
||||
<fieldset>
|
||||
<div class="field-pair">
|
||||
<h5 class="darkred nomargin">$T('ft-download'): <span class="path">$complete_dir</span></h5>
|
||||
</div>
|
||||
<div class="field-pair alt">
|
||||
<label class="config wide" for="enable_movie_sorting">$T('opt-movieSort')</label>
|
||||
<input type="checkbox" name="enable_movie_sorting" id="enable_movie_sorting" value="1" <!--#if int($enable_movie_sorting) > 0 then 'checked="checked"' else ""#--> />
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config wide" for="movie_extra_folder">$T('opt-movieExtra')</label>
|
||||
<input type="checkbox" name="movie_extra_folder" id="movie_extra_folder" value="1" <!--#if int($movie_extra_folder) > 0 then 'checked="checked"' else ""#--> />
|
||||
</div>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="moviefoldername">$T('sortString')</label>
|
||||
<input type="text" name="movie_sort_string" id="moviefoldername" value="$movie_sort_string" size="50" />
|
||||
<input type="button" value="$T('button-clear')" class="clearBtn" />
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="movieextra">$T('multiPartLabel')</label>
|
||||
<input type="text" name="movie_sort_extra" id="movieextra" value="$movie_sort_extra" size="50" />
|
||||
<input type="button" value="$T('button-clear')" class="clearBtn" />
|
||||
</div>
|
||||
<div class="field-pair alt">
|
||||
<label class="config">$T('presetSort')</label>
|
||||
<div class="presets float-left">
|
||||
<input type="button" onclick="movieSet('%title (%y)/%title (%y).%ext',' CD%1');movieExtraFolder(false)" value="$T('button-inFolders')" />
|
||||
<input type="button" onclick="movieSet('%title (%y).%ext',' CD%1');movieExtraFolder(true)" value="$T('button-noFolders')" />
|
||||
<input type="button" onclick="movieSet('%0decade/%title (%y).%ext',' CD%1');movieExtraFolder(true)" value="Decades 1" />
|
||||
</div>
|
||||
</div>
|
||||
<div id="previewmovie" class="example">
|
||||
<div class="field-pair">
|
||||
<label class="config" for="moviesamplename">Test Data</label>
|
||||
<input type="text" id="moviesamplename" name="moviesamplename" placeholder="$T('movie-sp-name') (2009)" size="50" />
|
||||
<input type="button" value="$T('button-clear')" class="clearBtn" />
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config">$T('sortResult')</label>
|
||||
<span class="desc path" id="previewmovie-result"> </span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config">$T('sort-legenda')</label>
|
||||
<input type="button" value="$T('sort-legenda')" onclick="jQuery(this).hide(); jQuery('#Key2').show();" />
|
||||
<table id="Key2" class="Key">
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="align-right">$T('sort-meaning')</th>
|
||||
<th>$T('sort-pattern')</th>
|
||||
<th>$T('sort-result')</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td class="align-right"><b>$T('sort-title'):</b></td>
|
||||
<td>%title</td>
|
||||
<td>$T('movie-sp-name')</td>
|
||||
</tr>
|
||||
<tr class="even">
|
||||
<td> </td>
|
||||
<td>%.title</td>
|
||||
<td>$T('movie-dot-name')</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> </td>
|
||||
<td>%_title</td>
|
||||
<td>$T('movie-us-name')</td>
|
||||
</tr>
|
||||
<tr class="even">
|
||||
<td class="align-right"><b>$T('year'):</b></td>
|
||||
<td>%y</td>
|
||||
<td>2009</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="align-right"><b>$T('extension'):</b></td>
|
||||
<td>%ext</td>
|
||||
<td>avi</td>
|
||||
</tr>
|
||||
<tr class="even">
|
||||
<td class="align-right"><b>$T('decade'):</b></td>
|
||||
<td>%decade</td>
|
||||
<td>00</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> </td>
|
||||
<td>%0decade</td>
|
||||
<td>2000</td>
|
||||
</tr>
|
||||
<tr class="even">
|
||||
<td class="align-right"><b>$T('orgFilename'):</b></td>
|
||||
<td>%fn</td>
|
||||
<td>$T('sort-File')</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="align-right"><b>$T('lowercase'):</b></td>
|
||||
<td>{$T('TEXT')}</td>
|
||||
<td>$T('text')</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
<tbody>
|
||||
<tr>
|
||||
<th class="align-right"><b>$T('multiPartLabel')</b></th>
|
||||
<th>$T('sort-pattern')</th>
|
||||
<th>$T('sort-result')</th>
|
||||
</tr>
|
||||
</tbody>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td class="align-right"><b>$T('partNumber'):</b></td>
|
||||
<td>%1</td>
|
||||
<td>1</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<input type="submit" value="$T('button-saveChanges')" class="saveButton" />
|
||||
</div>
|
||||
</fieldset>
|
||||
</div><!-- /col1 -->
|
||||
</div><!-- /section -->
|
||||
<div class="section">
|
||||
<div class="col2">
|
||||
<h3>$T('dateSorting')</h3>
|
||||
<p>
|
||||
<b>$T('affectedCat')</b><br/>
|
||||
<select name="date_cat" multiple="multiple" class="multiple_cats">
|
||||
<!--#for $ct in $cat_list#-->
|
||||
<option value="$ct" <!--#if $ct in $date_categories then 'selected="selected"' else ""#--> >$Tspec($ct)</option>
|
||||
<!--#end for#-->
|
||||
</select>
|
||||
</p>
|
||||
</div><!-- /col2 -->
|
||||
<div class="col1">
|
||||
<fieldset>
|
||||
<div class="field-pair">
|
||||
<h5 class="darkred nomargin">$T('ft-download'): <span class="path">$complete_dir</span></h5>
|
||||
</div>
|
||||
<div class="field-pair alt">
|
||||
<label class="config wide" for="enable_date_sorting">$T('opt-dateSort')</label>
|
||||
<input type="checkbox" name="enable_date_sorting" id="enable_date_sorting" value="1" <!--#if int($enable_date_sorting) > 0 then 'checked="checked"' else ""#--> />
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="datefoldername">$T('sortString')</label>
|
||||
<input type="text" name="date_sort_string" id="datefoldername" value="$date_sort_string" size="50" />
|
||||
<input type="button" value="$T('button-clear')" class="clearBtn" />
|
||||
</div>
|
||||
<div class="field-pair alt">
|
||||
<label class="config">$T('presetSort')</label>
|
||||
<div class="presets float-left">
|
||||
<input type="button" onclick="dateSet('%t/%t - %y-%0m-%0d - %desc.%ext')" value="$T('button-ShowNameF')" />
|
||||
<input type="button" onclick="dateSet('%y-%0m/%t - %y-%0m-%0d - %desc.%ext')" value="$T('button-YMF')" />
|
||||
<input type="button" onclick="dateSet('%y-%0m-%0d/%t - %y-%0m-%0d - %desc.%ext')" value="$T('button-DailyF')" />
|
||||
</div>
|
||||
</div>
|
||||
<div id="previewdate" class="example">
|
||||
<div class="field-pair">
|
||||
<label class="config" for="datesamplename">Test Data</label>
|
||||
<input type="text" id="datesamplename" name="datesamplename" placeholder="$T('show-name') 2009-01-02" size="50" />
|
||||
<input type="button" value="$T('button-clear')" class="clearBtn" />
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config">$T('sortResult')</label>
|
||||
<span class="desc path" id="previewdate-result"> </span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config">$T('sort-legenda')</label>
|
||||
<input type="button" value="$T('sort-legenda')" onclick="jQuery(this).hide(); jQuery('#Key3').show();" />
|
||||
<table id="Key3" class="Key">
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="align-right">$T('sort-meaning')</th>
|
||||
<th>$T('sort-pattern')</th>
|
||||
<th>$T('sort-result')</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td class="align-right"><b>$T('show-name'):</b></td>
|
||||
<td>%t</td>
|
||||
<td>$T('show-sp-name')</td>
|
||||
</tr>
|
||||
<tr class="even">
|
||||
<td> </td>
|
||||
<td>%.t</td>
|
||||
<td>$T('show-dot-name')</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> </td>
|
||||
<td>%_t</td>
|
||||
<td>$T('show-us-name')</td>
|
||||
</tr>
|
||||
<tr class="even">
|
||||
<td class="align-right"><b>$T('year'):</b></td>
|
||||
<td>%y</td>
|
||||
<td>2009</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="align-right"><b>$T('month'):</b></td>
|
||||
<td>%m</td>
|
||||
<td>1</td>
|
||||
</tr>
|
||||
<tr class="even">
|
||||
<td> </td>
|
||||
<td>%0m</td>
|
||||
<td>01</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="align-right"><b>$T('day-of-month'):</b></td>
|
||||
<td>%d</td>
|
||||
<td>2</td>
|
||||
</tr>
|
||||
<tr class="even">
|
||||
<td> </td>
|
||||
<td>%0d</td>
|
||||
<td>02</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="align-right"><b>$T('decade'):</b></td>
|
||||
<td>%decade</td>
|
||||
<td>00</td>
|
||||
</tr>
|
||||
<tr class="even">
|
||||
<td> </td>
|
||||
<td>%0decade</td>
|
||||
<td>2000</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="align-right"><b>$T('orgFilename'):</b></td>
|
||||
<td>%fn</td>
|
||||
<td>$T('sort-File')</td>
|
||||
</tr>
|
||||
<tr class="even">
|
||||
<td class="align-right"><b>$T('lowercase'):</b></td>
|
||||
<td>{$T('TEXT')}</td>
|
||||
<td>$T('text')</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<input type="submit" value="$T('button-saveChanges')" class="saveButton" />
|
||||
</div>
|
||||
</fieldset>
|
||||
</div><!-- /col1 -->
|
||||
</div><!-- /section -->
|
||||
<div class="padding alt">
|
||||
<input type="submit" value="$T('button-saveChanges')" class="saveButton" />
|
||||
<input type="button" value="$T('button-restart') SABnzbd" class="sabnzbd_restart" />
|
||||
</div>
|
||||
</form>
|
||||
</div><!-- /colmask -->
|
||||
|
||||
<script>
|
||||
// http://stackoverflow.com/questions/2219924/idiomatic-jquery-delayed-event-only-after-a-short-pause-in-typing-e-g-timew
|
||||
var typewatch = (function(){
|
||||
var timer = 0;
|
||||
return function(callback, ms){
|
||||
clearTimeout (timer);
|
||||
timer = setTimeout(callback, ms);
|
||||
}
|
||||
})();
|
||||
|
||||
function tvSet(val) {
|
||||
\$('#tvfoldername').val(val);
|
||||
new_previewtv();
|
||||
}
|
||||
|
||||
function movieSet(val, val2) {
|
||||
\$('#moviefoldername').val(val);
|
||||
\$('#movieextra').val(val2);
|
||||
new_previewmovie();
|
||||
}
|
||||
|
||||
function movieExtraFolder(value) {
|
||||
\$('#movie_extra_folder').attr("checked", value);
|
||||
}
|
||||
|
||||
function dateSet(val) {
|
||||
\$('#datefoldername').val(val);
|
||||
new_previewdate();
|
||||
}
|
||||
|
||||
function new_previewtv() {
|
||||
var \$tvsortstring = \$('#tvfoldername').val();
|
||||
if(\$tvsortstring.length > 2) {
|
||||
typewatch(function () {
|
||||
\$('#previewtv').show();
|
||||
\$('#previewtv-result').addClass("loading");
|
||||
\$.ajax({
|
||||
type: "GET",
|
||||
url: "../../tapi",
|
||||
data: {mode:'eval_sort', value: 'series', name: \$('#tvsamplename').val(), title: \$tvsortstring, apikey: '$session', output: 'json' },
|
||||
success: function(data){
|
||||
\$('#previewtv-result').removeClass("loading failure").html(data.result);
|
||||
},
|
||||
error: function(data){ \$('#previewtv-result').removeClass("loading").addClass("failure").html('need more information to process'); }
|
||||
});
|
||||
}, 500);
|
||||
}
|
||||
else
|
||||
\$('#previewtv').hide();
|
||||
}
|
||||
|
||||
function new_previewmovie() {
|
||||
var \$moviesortstring = \$('#moviefoldername').val();
|
||||
if(\$moviesortstring.length > 2) {
|
||||
typewatch(function () {
|
||||
\$('#previewmovie').show();
|
||||
\$('#previewmovie-result').addClass("loading");
|
||||
\$.ajax({
|
||||
type: "GET",
|
||||
url: "../../tapi",
|
||||
data: {mode:'eval_sort', value: 'generic', name: \$('#moviesamplename').val(), title: \$moviesortstring, movieextra: \$('#movieextra').val(), apikey: '$session', output: 'json' },
|
||||
success: function(data){
|
||||
\$('#previewmovie-result').removeClass("loading failure").html(data.result);
|
||||
},
|
||||
error: function(data){ \$('#previewmovie-result').removeClass("loading").addClass("failure").html('need more information to process'); }
|
||||
});
|
||||
}, 500);
|
||||
}
|
||||
else
|
||||
\$('#previewmovie').hide();
|
||||
}
|
||||
|
||||
function new_previewdate() {
|
||||
var \$datesortstring = \$('#datefoldername').val();
|
||||
if(\$datesortstring.length > 2) {
|
||||
typewatch(function () {
|
||||
\$('#previewdate').show();
|
||||
\$('#previewdate-result').addClass("loading");
|
||||
\$.ajax({
|
||||
type: "GET",
|
||||
url: "../../tapi",
|
||||
data: {mode:'eval_sort', value: 'date', name: \$('#datesamplename').val(), title: \$datesortstring, apikey: '$session', output: 'json' },
|
||||
success: function(data){
|
||||
\$('#previewdate-result').removeClass("loading failure").html(data.result);
|
||||
},
|
||||
error: function(data){ \$('#previewdate-result').removeClass("loading").addClass("failure").html('need more information to process'); }
|
||||
});
|
||||
}, 500);
|
||||
}
|
||||
else
|
||||
\$('#previewdate').hide();
|
||||
}
|
||||
|
||||
</script>
|
||||
|
||||
<script>
|
||||
\$(document).ready(function(){
|
||||
new_previewtv();
|
||||
new_previewmovie();
|
||||
new_previewdate();
|
||||
|
||||
\$('#tvfoldername, #tvsamplename').bind("keyup focus", new_previewtv);
|
||||
\$('#moviefoldername, #movieextra, #moviesamplename').bind("keyup focus", new_previewmovie);
|
||||
\$('#datefoldername, #datesamplename').bind("keyup focus", new_previewdate);
|
||||
\$('.clearBtn').click(function(){
|
||||
\$(this).prev().val('').focus();
|
||||
});
|
||||
});
|
||||
</script>
|
||||
|
||||
<!--#include $webdir + "/_inc_footer_uc.tmpl"#-->
|
||||
59
interfaces/Config/templates/config_special.tmpl
Normal file
@@ -0,0 +1,59 @@
|
||||
<!--#set global $pane="Special"#-->
|
||||
<!--#set global $help_uri="configure+special-0-7"#-->
|
||||
<!--#include $webdir + "/_inc_header_uc.tmpl"#-->
|
||||
|
||||
<div class="colmask">
|
||||
<form action="saveSpecial" method="post" name="fullform" id="fullform">
|
||||
<input type="hidden" id="session" name="session" value="$session" />
|
||||
<div class="padTable">
|
||||
<h3 class="darkred nomargin">$T('explain-special')</h3>
|
||||
</div>
|
||||
<div class="section">
|
||||
<div class="col2">
|
||||
<h3>$T('sptag-boolean')</h3>
|
||||
</div><!-- /col2 -->
|
||||
<div class="col1">
|
||||
<fieldset>
|
||||
<!--#set $odd = False#-->
|
||||
<!--#for $option in $switches#-->
|
||||
<!--#set $odd = not $odd#-->
|
||||
<div class="field-pair <!--#if $odd then "alt" else ""#-->">
|
||||
<label class="config wide" for="$option[0]">$option[0] ( <span class="path"><!--#if $option[2] then $T('on') else $T('off')#--></span> )</label>
|
||||
<input type="checkbox" name="$option[0]" id="$option[0]" value="1" <!--#if int($option[1]) > 0 then 'checked="checked"' else ""#--> />
|
||||
<span class="desc"> </span>
|
||||
</div>
|
||||
<!--#end for#-->
|
||||
<div class="field-pair">
|
||||
<input type="submit" value="$T('button-saveChanges')" class="saveButton" />
|
||||
</div>
|
||||
</fieldset>
|
||||
</div><!-- /col1 -->
|
||||
</div><!-- /section -->
|
||||
<div class="section">
|
||||
<div class="col2">
|
||||
<h3>$T('sptag-entries')</h3>
|
||||
</div><!-- /col2 -->
|
||||
<div class="col1">
|
||||
<fieldset>
|
||||
<!--#set $odd = False#-->
|
||||
<!--#for $option in $entries#-->
|
||||
<!--#set $odd = not $odd#-->
|
||||
<div class="field-pair <!--#if $odd then "alt" else ""#-->">
|
||||
<label class="config narrow" for="$option[0]">$option[0] ( <span class="path">$option[2]</span> )</label>
|
||||
<input type="text" name="$option[0]" id="$option[0]" value="$option[1]" />
|
||||
</div>
|
||||
<!--#end for#-->
|
||||
<div class="field-pair">
|
||||
<input type="submit" value="$T('button-saveChanges')" class="saveButton" />
|
||||
</div>
|
||||
</fieldset>
|
||||
</div><!-- /col1 -->
|
||||
</div><!-- /section -->
|
||||
<div class="padding alt">
|
||||
<input type="submit" value="$T('button-saveChanges')" class="saveButton" />
|
||||
<input type="button" value="$T('button-restart') SABnzbd" class="sabnzbd_restart" />
|
||||
</div>
|
||||
</form>
|
||||
</div><!-- /colmask -->
|
||||
|
||||
<!--#include $webdir + "/_inc_footer_uc.tmpl"#-->
|
||||
302
interfaces/Config/templates/config_switches.tmpl
Normal file
@@ -0,0 +1,302 @@
|
||||
<!--#set global $pane="Switches"#-->
|
||||
<!--#set global $help_uri="configure-switches-0-7"#-->
|
||||
<!--#include $webdir + "/_inc_header_uc.tmpl"#-->
|
||||
|
||||
<div class="colmask">
|
||||
<form action="saveSwitches" method="post" name="fullform" id="fullform">
|
||||
<input type="hidden" id="session" name="session" value="$session" />
|
||||
<div class="section">
|
||||
<div class="col2">
|
||||
<h3>$T('swtag-general')</h3>
|
||||
</div><!-- /col2 -->
|
||||
<div class="col1">
|
||||
<fieldset>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="check_new_rel">$T('opt-check_new_rel')</label>
|
||||
<input type="checkbox" name="check_new_rel" id="check_new_rel" value="1" <!--#if int($check_new_rel) > 0 then 'checked="checked"' else ""#--> />
|
||||
<span class="desc">$T('explain-check_new_rel')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="auto_browser">$T('opt-auto_browser')</label>
|
||||
<input type="checkbox" name="auto_browser" id="auto_browser" value="1" <!--#if int($auto_browser) > 0 then 'checked="checked"' else ""#--> />
|
||||
<span class="desc">$T('explain-auto_browser')</span>
|
||||
</div>
|
||||
<div class="field-pair alt <!--#if not $have_ampm then "disabled" else "" #-->">
|
||||
<label class="config" for="ampm">$T('opt-ampm')</label>
|
||||
<input type="checkbox" name="ampm" id="ampm" value="1" <!--#if int($ampm) > 0 then 'checked="checked"' else ""#--> <!--#if not $have_ampm then 'readonly="readonly" disabled="disabled"' else "" #--> />
|
||||
<span class="desc">$T('explain-ampm')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<input type="submit" value="$T('button-saveChanges')" class="saveButton" />
|
||||
</div>
|
||||
</fieldset>
|
||||
</div><!-- /col1 -->
|
||||
</div><!-- /section -->
|
||||
<div class="section">
|
||||
<div class="col2">
|
||||
<h3>$T('swtag-server')</h3>
|
||||
</div><!-- /col2 -->
|
||||
<div class="col1">
|
||||
<fieldset>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="max_art_tries">$T('opt-max_art_tries')</label>
|
||||
<input type="number" name="max_art_tries" id="max_art_tries" value="$max_art_tries" size="8" min="2" />
|
||||
<span class="desc">$T('explain-max_art_tries')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="max_art_opt">$T('opt-max_art_opt')</label>
|
||||
<input type="checkbox" name="max_art_opt" id="max_art_opt" value="1" <!--#if int($max_art_opt) > 0 then 'checked="checked"' else ""#--> />
|
||||
<span class="desc">$T('explain-max_art_opt')</span>
|
||||
</div>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="auto_disconnect">$T('opt-auto_disconnect')</label>
|
||||
<input type="checkbox" name="auto_disconnect" id="auto_disconnect" value="1" <!--#if int($auto_disconnect) > 0 then 'checked="checked"' else ""#--> />
|
||||
<span class="desc">$T('explain-auto_disconnect')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="send_group">$T('opt-send_group')</label>
|
||||
<input type="checkbox" name="send_group" id="send_group" value="1" <!--#if int($send_group) > 0 then 'checked="checked"' else ""#--> />
|
||||
<span class="desc">$T('explain-send_group')</span>
|
||||
</div>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="ssl_type">$T('opt-ssl_type')</label>
|
||||
<select name="ssl_type" id="ssl_type">
|
||||
<option value="v23" <!--#if $ssl_type == "v23" then 'selected="selected" class="selected"' else ""#--> >V23</option>
|
||||
<option value="v2" <!--#if $ssl_type == "v2" then 'selected="selected" class="selected"' else ""#--> >V2</option>
|
||||
<option value="v3" <!--#if $ssl_type == "v3" then 'selected="selected" class="selected"' else ""#--> >V3</option>
|
||||
</select>
|
||||
<span class="desc">$T('explain-ssl_type')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<input type="submit" value="$T('button-saveChanges')" class="saveButton" />
|
||||
</div>
|
||||
</fieldset>
|
||||
</div><!-- /col1 -->
|
||||
</div><!-- /section -->
|
||||
<div class="section">
|
||||
<div class="col2">
|
||||
<h3>$T('swtag-queue')</h3>
|
||||
</div><!-- /col2 -->
|
||||
<div class="col1">
|
||||
<fieldset>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="pre_check">$T('opt-pre_check')</label>
|
||||
<input type="checkbox" name="pre_check" id="pre_check" value="1" <!--#if int($pre_check) > 0 then 'checked="checked"' else ""#--> />
|
||||
<span class="desc">$T('explain-pre_check')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="no_dupes">$T('opt-no_dupes')</label>
|
||||
<select name="no_dupes" id="no_dupes">
|
||||
<option value="0" <!--#if int($no_dupes) == 0 then 'selected="selected" class="selected"' else ""#--> >$T('nodupes-off')</option>
|
||||
<option value="1" <!--#if int($no_dupes) == 1 then 'selected="selected" class="selected"' else ""#--> >$T('nodupes-ignore')</option>
|
||||
<option value="2" <!--#if int($no_dupes) == 2 then 'selected="selected" class="selected"' else ""#--> >$T('nodupes-pause')</option>
|
||||
</select>
|
||||
<span class="desc">$T('explain-no_dupes')</span>
|
||||
</div>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="pause_on_post_processing">$T('opt-pause_on_post_processing')</label>
|
||||
<input type="checkbox" name="pause_on_post_processing" id="pause_on_post_processing" value="1" <!--#if int($pause_on_post_processing) > 0 then 'checked="checked"' else ""#--> />
|
||||
<span class="desc">$T('explain-pause_on_post_processing')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="pause_on_pwrar">$T('opt-pause_on_pwrar')</label>
|
||||
<input type="checkbox" name="pause_on_pwrar" id="pause_on_pwrar" value="1" <!--#if int($pause_on_pwrar) > 0 then 'checked="checked"' else ""#--> />
|
||||
<span class="desc">$T('explain-pause_on_pwrar')</span>
|
||||
</div>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="top_only">$T('opt-top_only')</label>
|
||||
<input type="checkbox" name="top_only" id="top_only" value="1" <!--#if int($top_only) > 0 then 'checked="checked"' else ""#--> />
|
||||
<span class="desc">$T('explain-top_only')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="auto_sort">$T('opt-auto_sort')</label>
|
||||
<input type="checkbox" name="auto_sort" id="auto_sort" value="1" <!--#if int($auto_sort) > 0 then 'checked="checked"' else ""#--> />
|
||||
<span class="desc">$T('explain-auto_sort')</span>
|
||||
</div>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="pre_script">$T('opt-pre_script')</label>
|
||||
<select name="pre_script" id="pre_script">
|
||||
<!--#for $sc in $script_list#-->
|
||||
<!--#if $sc.lower() == $pre_script.lower()#-->
|
||||
<option value="$sc" selected="selected" class="selected">$Tspec($sc)</option>
|
||||
<!--#else#-->
|
||||
<option value="$sc">$Tspec($sc)</option>
|
||||
<!--#end if#-->
|
||||
<!--#end for#-->
|
||||
</select>
|
||||
<span class="desc">$T('explain-pre_script')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<input type="submit" value="$T('button-saveChanges')" class="saveButton" />
|
||||
</div>
|
||||
</fieldset>
|
||||
</div><!-- /col1 -->
|
||||
</div><!-- /section -->
|
||||
<div class="section">
|
||||
<div class="col2">
|
||||
<h3>$T('swtag-pp')</h3>
|
||||
</div><!-- /col2 -->
|
||||
<div class="col1">
|
||||
<fieldset>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="ignore_samples">$T('opt-ignore_samples')</label>
|
||||
<select name="ignore_samples" id="ignore_samples">
|
||||
<option value="0" <!--#if int($ignore_samples) == 0 then 'selected="selected" class="selected"' else ""#--> >$T('igsam-off')</option>
|
||||
<option value="1" <!--#if int($ignore_samples) == 1 then 'selected="selected" class="selected"' else ""#--> >$T('igsam-del')</option>
|
||||
<option value="2" <!--#if int($ignore_samples) == 2 then 'selected="selected" class="selected"' else ""#--> >$T('igsam-not')</option>
|
||||
</select>
|
||||
<span class="desc">$T('explain-ignore_samples')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="quick_check">$T('opt-quick_check')</label>
|
||||
<input type="checkbox" name="quick_check" id="quick_check" value="1" <!--#if int($quick_check) > 0 then 'checked="checked"' else ""#--> />
|
||||
<span class="desc">$T('explain-quick_check')</span>
|
||||
</div>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="enable_unrar">$T('opt-enable_unrar')</label>
|
||||
<input type="checkbox" name="enable_unrar" id="enable_unrar" value="1" <!--#if int($enable_unrar) > 0 then 'checked="checked"' else ""#--> />
|
||||
<span class="desc">$T('explain-enable_unrar')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="enable_unzip">$T('opt-enable_unzip')</label>
|
||||
<input type="checkbox" name="enable_unzip" id="enable_unzip" value="1" <!--#if int($enable_unzip) > 0 then 'checked="checked"' else ""#--> />
|
||||
<span class="desc">$T('explain-enable_unzip')</span>
|
||||
</div>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="enable_filejoin">$T('opt-enable_filejoin')</label>
|
||||
<input type="checkbox" name="enable_filejoin" id="enable_filejoin" value="1" <!--#if int($enable_filejoin) > 0 then 'checked="checked"' else ""#--> />
|
||||
<span class="desc">$T('explain-enable_filejoin')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="enable_tsjoin">$T('opt-enable_tsjoin')</label>
|
||||
<input type="checkbox" name="enable_tsjoin" id="enable_tsjoin" value="1" <!--#if int($enable_tsjoin) > 0 then 'checked="checked"' else ""#--> />
|
||||
<span class="desc">$T('explain-ts_join')</span>
|
||||
</div>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="enable_par_cleanup">$T('opt-enable_par_cleanup')</label>
|
||||
<input type="checkbox" name="enable_par_cleanup" id="enable_par_cleanup" value="1" <!--#if int($enable_par_cleanup) > 0 then 'checked="checked"' else ""#--> />
|
||||
<span class="desc">$T('explain-enable_par_cleanup')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="fail_on_crc">$T('opt-fail_on_crc')</label>
|
||||
<input type="checkbox" name="fail_on_crc" id="fail_on_crc" value="1" <!--#if int($fail_on_crc) > 0 then 'checked="checked"' else ""#--> />
|
||||
<span class="desc">$T('explain-fail_on_crc')</span>
|
||||
</div>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="safe_postproc">$T('opt-safe_postproc')</label>
|
||||
<input type="checkbox" name="safe_postproc" id="safe_postproc" value="1" <!--#if int($safe_postproc) > 0 then 'checked="checked"' else ""#--> />
|
||||
<span class="desc">$T('explain-safe_postproc')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="sfv_check">$T('opt-sfv_check')</label>
|
||||
<input type="checkbox" name="sfv_check" id="sfv_check" value="1" <!--#if int($sfv_check) > 0 then 'checked="checked"' else ""#--> />
|
||||
<span class="desc">$T('explain-sfv_check')</span>
|
||||
</div>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="unpack_check">$T('opt-unpack_check')</label>
|
||||
<input type="checkbox" name="unpack_check" id="unpack_check" value="1" <!--#if int($unpack_check) > 0 then 'checked="checked"' else ""#--> />
|
||||
<span class="desc">$T('explain-unpack_check')</span>
|
||||
</div>
|
||||
<div class="field-pair <!--#if not $nt then "disabled" else "" #-->">
|
||||
<label class="config" for="par2_multicore">$T('opt-par2_multicore')</label>
|
||||
<input type="checkbox" name="par2_multicore" id="par2_multicore" value="1" <!--#if int($par2_multicore) > 0 then 'checked="checked"' else ""#--> <!--#if not $nt then 'readonly="readonly" disabled="disabled"' else "" #--> />
|
||||
<span class="desc">$T('explain-par2_multicore')</span>
|
||||
</div>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="par_option">$T('opt-par_option')</label>
|
||||
<input type="text" name="par_option" id="par_option" value="$par_option" size="20" />
|
||||
<span class="desc">$T('explain-par_option')</span>
|
||||
</div>
|
||||
<div class="field-pair <!--#if not $have_nice then "disabled" else "" #-->">
|
||||
<label class="config" for="nice">$T('opt-nice')</label>
|
||||
<input type="text" name="nice" id="nice" value="$nice" size="20" <!--#if not $have_nice then 'readonly="readonly" disabled="disabled"' else "" #--> />
|
||||
<span class="desc">$T('explain-nice')</span>
|
||||
</div>
|
||||
<div class="field-pair alt <!--#if not $have_ionice then "disabled" else "" #-->">
|
||||
<label class="config" for="ionice">$T('opt-ionice')</label>
|
||||
<input type="text" name="ionice" id="ionice" value="$ionice" size="20" <!--#if not $have_ionice then 'readonly="readonly" disabled="disabled"' else "" #--> />
|
||||
<span class="desc">$T('explain-ionice')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<input type="submit" value="$T('button-saveChanges')" class="saveButton" />
|
||||
</div>
|
||||
</fieldset>
|
||||
</div><!-- /col1 -->
|
||||
</div><!-- /section -->
|
||||
<div class="section">
|
||||
<div class="col2">
|
||||
<h3>$T('swtag-naming')</h3>
|
||||
</div><!-- /col2 -->
|
||||
<div class="col1">
|
||||
<fieldset>
|
||||
<div class="field-pair alt">
|
||||
<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>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="replace_spaces">$T('opt-replace_spaces')</label>
|
||||
<input type="checkbox" name="replace_spaces" id="replace_spaces" value="1" <!--#if int($replace_spaces) > 0 then 'checked="checked"' else ""#--> />
|
||||
<span class="desc">$T('explain-replace_spaces')</span>
|
||||
</div>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="replace_dots">$T('opt-replace_dots')</label>
|
||||
<input type="checkbox" name="replace_dots" id="replace_dots" value="1" <!--#if int($replace_dots) > 0 then 'checked="checked"' else ""#--> />
|
||||
<span class="desc">$T('explain-replace_dots')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="replace_illegal">$T('opt-replace_illegal')</label>
|
||||
<input type="checkbox" name="replace_illegal" id="replace_illegal" value="1" <!--#if int($replace_illegal) > 0 then 'checked="checked"' else ""#--> />
|
||||
<span class="desc">$T('explain-replace_illegal')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<input type="submit" value="$T('button-saveChanges')" class="saveButton" />
|
||||
</div>
|
||||
</fieldset>
|
||||
</div><!-- /col1 -->
|
||||
</div><!-- /section -->
|
||||
<div class="section">
|
||||
<div class="col2">
|
||||
<h3>$T('swtag-quota')</h3>
|
||||
</div><!-- /col2 -->
|
||||
<div class="col1">
|
||||
<fieldset>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="quota_size">$T('opt-quota_size')</label>
|
||||
<input type="text" name="quota_size" id="quota_size" value="$quota_size" size="8" />
|
||||
<span class="desc">$T('explain-quota_size')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="quota_period">$T('opt-quota_period')</label>
|
||||
<select name="quota_period" id="quota_period">
|
||||
<option value="d" <!--#if $quota_period == "d" then 'selected="selected" class="selected"' else ""#--> >$T('day').capitalize()</option>
|
||||
<option value="w" <!--#if $quota_period == "w" then 'selected="selected" class="selected"' else ""#--> >$T('week').capitalize()</option>
|
||||
<option value="m" <!--#if $quota_period == "m" then 'selected="selected" class="selected"' else ""#--> >$T('month').capitalize()</option>
|
||||
<option value="x" <!--#if $quota_period == "x" then 'selected="selected" class="selected"' else ""#--> >$T('manual').capitalize()</option>
|
||||
</select>
|
||||
<span class="desc">$T('explain-quota_period')</span>
|
||||
</div>
|
||||
<div class="field-pair alt">
|
||||
<label class="config" for="quota_day">$T('opt-quota_day')</label>
|
||||
<input type="text" name="quota_day" id="quota_day" value="$quota_day" size="20" />
|
||||
<span class="desc">$T('explain-quota_day')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<label class="config" for="quota_resume">$T('opt-quota_resume')</label>
|
||||
<input type="checkbox" name="quota_resume" id="quota_resume" value="1" <!--#if int($quota_resume) > 0 then 'checked="checked"' else ""#--> />
|
||||
<span class="desc">$T('explain-quota_resume')</span>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
<input type="submit" value="$T('button-saveChanges')" class="saveButton" />
|
||||
</div>
|
||||
</fieldset>
|
||||
</div><!-- /col1 -->
|
||||
</div><!-- /section -->
|
||||
<div class="padding alt">
|
||||
<input type="submit" value="$T('button-saveChanges')" class="saveButton" />
|
||||
<input type="button" value="$T('button-restart') SABnzbd" class="sabnzbd_restart" />
|
||||
</div>
|
||||
</form>
|
||||
</div><!-- /colmask -->
|
||||
|
||||
<!--#include $webdir + "/_inc_footer_uc.tmpl"#-->
|
||||
2
interfaces/Config/templates/main.tmpl
Normal file
@@ -0,0 +1,2 @@
|
||||
/* This file was intentionally left blank and is only needed for 'skin' detection routine */
|
||||
/* https://github.com/thezoggy/sabnzbd-uni_Config */
|
||||
|
After Width: | Height: | Size: 180 B |
|
After Width: | Height: | Size: 180 B |
|
After Width: | Height: | Size: 178 B |
|
After Width: | Height: | Size: 120 B |
|
After Width: | Height: | Size: 119 B |
|
After Width: | Height: | Size: 141 B |
|
After Width: | Height: | Size: 96 B |
|
After Width: | Height: | Size: 128 B |
|
After Width: | Height: | Size: 137 B |
|
After Width: | Height: | Size: 4.3 KiB |
|
After Width: | Height: | Size: 4.3 KiB |
|
After Width: | Height: | Size: 5.2 KiB |
|
After Width: | Height: | Size: 4.3 KiB |
11
interfaces/Config/templates/staticcfg/css/style.css
Normal file
|
After Width: | Height: | Size: 15 KiB |
|
After Width: | Height: | Size: 20 KiB |
|
After Width: | Height: | Size: 5.5 KiB |
|
After Width: | Height: | Size: 7.7 KiB |
|
After Width: | Height: | Size: 5.5 KiB |
BIN
interfaces/Config/templates/staticcfg/ico/favicon.ico
Normal file
|
After Width: | Height: | Size: 1.1 KiB |
BIN
interfaces/Config/templates/staticcfg/images/button.png
Normal file
|
After Width: | Height: | Size: 85 B |
BIN
interfaces/Config/templates/staticcfg/images/loading-bar.gif
Normal file
|
After Width: | Height: | Size: 11 KiB |
BIN
interfaces/Config/templates/staticcfg/images/loading16.gif
Normal file
|
After Width: | Height: | Size: 1.1 KiB |
BIN
interfaces/Config/templates/staticcfg/images/logo.png
Normal file
|
After Width: | Height: | Size: 2.8 KiB |
BIN
interfaces/Config/templates/staticcfg/images/mini-left.gif
Normal file
|
After Width: | Height: | Size: 871 B |
BIN
interfaces/Config/templates/staticcfg/images/mini-right.gif
Normal file
|
After Width: | Height: | Size: 872 B |
BIN
interfaces/Config/templates/staticcfg/images/no16.png
Normal file
|
After Width: | Height: | Size: 1.0 KiB |
BIN
interfaces/Config/templates/staticcfg/images/select_arrow.gif
Normal file
|
After Width: | Height: | Size: 52 B |
BIN
interfaces/Config/templates/staticcfg/images/yes16.png
Normal file
|
After Width: | Height: | Size: 828 B |
207
interfaces/Config/templates/staticcfg/js/script.js
Normal file
@@ -10,7 +10,7 @@
|
||||
</table>
|
||||
<div class="sabnzbd_logo main_sprite_container sprite_sabnzbdplus_logo"></div>
|
||||
<p><strong>SABnzbd $T('version'):</strong> $version</p>
|
||||
<p><small>Copyright (C) 2008-2011, The SABnzbd Team <<a href="mailto:team@sabnzbd.org">team@sabnzbd.org</a>></small></p>
|
||||
<p><small>Copyright (C) 2008-2012, The SABnzbd Team <<a href="mailto:team@sabnzbd.org">team@sabnzbd.org</a>></small></p>
|
||||
<p><small>$T('yourRights')</small></p>
|
||||
</div>
|
||||
|
||||
|
||||
@@ -310,6 +310,7 @@ $T('explain-RSS')
|
||||
<input type="hidden" name="feed" value="$feed"/>
|
||||
<input type="hidden" name="session" value="$session">
|
||||
<input type="submit" class="juiButton" value="$T('button-save')"/>
|
||||
<!--#if not $rss[$feed].filter_states[$fnum]#--> $T('Incorrect filter')<!--#end if#-->
|
||||
</td>
|
||||
</form>
|
||||
</tr>
|
||||
|
||||
@@ -54,10 +54,10 @@
|
||||
</label>
|
||||
</div>
|
||||
<div class="field-pair alt">
|
||||
<input type="checkbox" name="max_opt_only" id="max_opt_only" value="1" <!--#if $max_opt_only > 0 then "checked=1" else ""#--> />
|
||||
<label class="clearfix" for="max_opt_only">
|
||||
<span class="component-title">$T('opt-max_opt_only')</span>
|
||||
<span class="component-desc">$T('explain-max_opt_only')</span>
|
||||
<input type="checkbox" name="max_art_opt" id="max_art_opt" value="1" <!--#if $max_art_opt > 0 then "checked=1" else ""#--> />
|
||||
<label class="clearfix" for="max_art_opt">
|
||||
<span class="component-title">$T('opt-max_art_opt')</span>
|
||||
<span class="component-desc">$T('explain-max_art_opt')</span>
|
||||
</label>
|
||||
</div>
|
||||
<div class="field-pair">
|
||||
|
||||
@@ -56,7 +56,7 @@
|
||||
</td>
|
||||
|
||||
<td class="download-title">
|
||||
<a href="nzb/$slot.nzo_id/" title="$T('status'): $T('post-'+$slot.status)<br/>$T('nzo-age'): $slot.avg_age<br/><!--#if $slot.missing#-->$T('missingArt'): $slot.missing<!--#end if#-->">$slot.filename</a>
|
||||
<a href="nzb/$slot.nzo_id/" title="$T('status'): $T('post-'+$slot.status)<br/>$T('nzo-age'): $slot.avg_age<br/><!--#if $slot.missing#-->$T('missingArt'): $slot.missing<!--#end if#-->">$slot.filename.replace('.', '.​').replace('_', '_​')</a>
|
||||
</td>
|
||||
|
||||
<td>
|
||||
|
||||
@@ -118,15 +118,19 @@ jQuery(function($){
|
||||
|
||||
// fix for touch devices -- toggle visibility
|
||||
$('.sprite_q_menu_pausefor').bind('touchend', function(e) {
|
||||
e.preventDefault();
|
||||
if( $(this).hasClass('sprite_q_menu_pauseforsfHover') ) {
|
||||
$(this).find("ul").toggle();
|
||||
if (! $.browser.safari) {
|
||||
e.preventDefault();
|
||||
if( $(this).hasClass('sprite_q_menu_pauseforsfHover') ) {
|
||||
$(this).find("ul").toggle();
|
||||
}
|
||||
}
|
||||
});
|
||||
$('.sprite_q_queue').bind('touchend', function(e) {
|
||||
e.preventDefault();
|
||||
if( $(this).hasClass('sprite_q_queuesfHover') ) {
|
||||
$(this).find("ul").toggle();
|
||||
if (! $.browser.safari) {
|
||||
e.preventDefault();
|
||||
if( $(this).hasClass('sprite_q_queuesfHover') ) {
|
||||
$(this).find("ul").toggle();
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
|
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 1.1 KiB |
@@ -213,6 +213,7 @@ MochiKit.DOM.addLoadEvent(location = "../../#config-rss");
|
||||
<input type="hidden" name="index" value="$fnum"/>
|
||||
<input type="hidden" name="feed" value="$feed"/>
|
||||
<input type="submit" value="$T('button-save')" onclick="javascript:submitconfig('config/rss/upd_rss_filter', this,'$feed+$fnum','1' )"/>
|
||||
<!--#if not $rss[$feed].filter_states[$fnum]#--> $T('Incorrect filter')<!--#end if#-->
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
@@ -357,7 +358,7 @@ MochiKit.DOM.addLoadEvent(location = "../../#config-rss");
|
||||
<input type="checkbox" onclick="javascript:submitconfig('config/rss/toggle_rss_feed', this,'toggle_$feed','1' )" name="enable" <!--#if $rss[$feed]['enable'] then "CHECKED" else "" #-->/>
|
||||
</form>
|
||||
</td>
|
||||
<td><a href="#/config/rss/" onClick="lr('../config/rss/','feed=$rss[$feed]['link']', 0, 0);">$feed</a></td>
|
||||
<td><a href="#/config/rss/" onClick="lr('./config/rss/','feed=$rss[$feed]['link']', 0, 0);">$feed</a></td>
|
||||
<td>$rss[$feed]['uri']</td>
|
||||
</tr>
|
||||
<!--#end for#-->
|
||||
|
||||
@@ -133,9 +133,9 @@
|
||||
<span class="tips">$T('explain-max_art_tries')</span></label>
|
||||
<br class="clear" />
|
||||
|
||||
<label><span class="label">$T('opt-max_opt_only'):</span>
|
||||
<input class="radio" type="checkbox" name="max_opt_only" value="1" <!--#if $max_opt_only > 0 then 'checked="1"' else ""#--> />
|
||||
<span class="tips">$T('explain-max_opt_only')</span></label>
|
||||
<label><span class="label">$T('opt-max_art_opt'):</span>
|
||||
<input class="radio" type="checkbox" name="max_art_opt" value="1" <!--#if $max_art_opt > 0 then 'checked="1"' else ""#--> />
|
||||
<span class="tips">$T('explain-max_art_opt')</span></label>
|
||||
<br class="clear" />
|
||||
|
||||
<label><span class="label">$T('opt-auto_disconnect'):</span>
|
||||
|
||||
@@ -58,9 +58,9 @@
|
||||
<a onclick="javascript:submit_marked('$nzo_id', 'Bottom')">$T('nzo-bottom')</a>
|
||||
<br />
|
||||
|
||||
$T('nzo-selection'):<a href='#' onclick='mark_all();' target='_self'>$T('nzo-all')</a>
|
||||
<a href='#' onclick='unmark_all();' target='_self'>$T('nzo-none')</a>
|
||||
<a href='#' onclick='invert();' target='_self'>$T('nzo-invert')</a>
|
||||
$T('nzo-selection'):<a href='#' onclick="javascript:mark_all(); return false;">$T('nzo-all')</a>
|
||||
<a href='#' onclick="javascript:unmark_all(); return false;">$T('nzo-none')</a>
|
||||
<a href='#' onclick="javascript:invert(); return false;">$T('nzo-invert')</a>
|
||||
|
||||
|
||||
<table id="historyTable">
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
|
||||
<h3>$T('menu-queue')</h3>
|
||||
<div class="centerLinks">
|
||||
<a onClick="if(confirm('$T('purgeQueueConf')')){lr('queue/purge','limit=$limit&start=$start', -1,-1, this.parentNode.parentNode.id);}">$T('smpl-purgeQueue')</a> |
|
||||
<a onClick="setCookie('queue_details','<!--#if $queue_details =='1' then "0" else "1"#-->',30);lr('queue','limit=$limit&start=$start', -1,-1, this.parentNode.parentNode.id);"><!--#if $queue_details == '1' then $T('smpl-hideEdit') else $T('smpl-showEdit')#--></a> |
|
||||
<a onClick="lr('queue/tog_verbose','limit=$limit&start=$start', -1,-1, this.parentNode.parentNode.id);"><!--#if $isverbose then $T('link-hideFiles') else $T('link-showFiles')#--></a> |
|
||||
<a onclick="if(confirm('$T('purgeQueueConf')')){lr('queue/purge','limit=$limit&start=$start', -1,-1, this.parentNode.parentNode.id);}">$T('smpl-purgeQueue')</a> |
|
||||
<a onclick="setCookie('queue_details','<!--#if $queue_details =='1' then "0" else "1"#-->',30);lr('queue','limit=$limit&start=$start', -1,-1, this.parentNode.parentNode.id);"><!--#if $queue_details == '1' then $T('smpl-hideEdit') else $T('smpl-showEdit')#--></a> |
|
||||
<a onclick="lr('queue/tog_verbose','limit=$limit&start=$start', -1,-1, this.parentNode.parentNode.id);"><!--#if $isverbose then $T('link-hideFiles') else $T('link-showFiles')#--></a> |
|
||||
$T('onQueueFinish'):
|
||||
<select onfocus="pauseQueueDeferer(this.parentNode.parentNode.id)" onblur="javascript:lr('queue/','limit=$limit&start=$start', 1,-1, this.parentNode.parentNode.id);" onChange="javascript:changequeuedetails('queue/change_queue_complete_action?action='+this.options[this.selectedIndex].value, 'limit=$limit&start=$start')">
|
||||
<option value=""></option>
|
||||
@@ -41,14 +41,14 @@ $T('smpl-timeleft'): <strong>$timeleft</strong> $T('eta'): <strong>$eta</strong>
|
||||
<tr>
|
||||
<th class="expandColumn center"></th>
|
||||
<th class="orderColumn center"></th>
|
||||
<th>$T('name') <a class="columnLinks" onClick="javascript:lr('queue/sort_by_name','limit=$limit&start=$start&dir=asc', -1,-1, this.parentNode.parentNode.id);"><img src="static/images/up.gif" /></a><a class="columnLinks" onClick="javascript:lr('queue/sort_by_name','limit=$limit&start=$start&dir=desc', -1,-1, this.parentNode.parentNode.id);"><img src="static/images/down.gif" /></a></th>
|
||||
<th>$T('name') <a class="columnLinks" onclick="javascript:lr('queue/sort_by_name','limit=$limit&start=$start&dir=asc', -1,-1, this.parentNode.parentNode.id);"><img src="static/images/up.gif" /></a><a class="columnLinks" onclick="javascript:lr('queue/sort_by_name','limit=$limit&start=$start&dir=desc', -1,-1, this.parentNode.parentNode.id);"><img src="static/images/down.gif" /></a></th>
|
||||
<!--#if $queue_details == '1'#-->
|
||||
<th class="center">$T('smpl-edit')</th>
|
||||
<!--#end if#-->
|
||||
<th class="center">$T('smpl-progress')</th>
|
||||
<th class="timeleftColumn center">$T('smpl-timeleft')</th>
|
||||
<th class="ageColumn center">$T('smpl-age') <a class="columnLinks" onClick="javascript:lr('queue/sort_by_avg_age','limit=$limit&start=$start&dir=asc', -1,-1, this.parentNode.parentNode.id);"><img src="static/images/up.gif" /></a><a class="columnLinks" onClick="javascript:lr('queue/sort_by_avg_age','limit=$limit&start=$start&dir=desc', -1,-1, this.parentNode.parentNode.id);"><img src="static/images/down.gif" /></a></th>
|
||||
<th class="sizeColumn center">$T('smpl-size') <a class="columnLinks" onClick="javascript:lr('queue/sort_by_size','limit=$limit&start=$start&dir=asc', -1,-1, this.parentNode.parentNode.id);"><img src="static/images/up.gif" /></a><a class="columnLinks" onClick="javascript:lr('queue/sort_by_size','limit=$limit&start=$start&dir=desc', -1,-1, this.parentNode.parentNode.id);"><img src="static/images/down.gif" /></a></th>
|
||||
<th class="ageColumn center">$T('smpl-age') <a class="columnLinks" onclick="javascript:lr('queue/sort_by_avg_age','limit=$limit&start=$start&dir=asc', -1,-1, this.parentNode.parentNode.id);"><img src="static/images/up.gif" /></a><a class="columnLinks" onclick="javascript:lr('queue/sort_by_avg_age','limit=$limit&start=$start&dir=desc', -1,-1, this.parentNode.parentNode.id);"><img src="static/images/down.gif" /></a></th>
|
||||
<th class="sizeColumn center">$T('smpl-size') <a class="columnLinks" onclick="javascript:lr('queue/sort_by_size','limit=$limit&start=$start&dir=asc', -1,-1, this.parentNode.parentNode.id);"><img src="static/images/up.gif" /></a><a class="columnLinks" onclick="javascript:lr('queue/sort_by_size','limit=$limit&start=$start&dir=desc', -1,-1, this.parentNode.parentNode.id);"><img src="static/images/down.gif" /></a></th>
|
||||
<th class="actionsColumn center"></th>
|
||||
</tr>
|
||||
</thead>
|
||||
@@ -59,7 +59,7 @@ $T('smpl-timeleft'): <strong>$timeleft</strong> $T('eta'): <strong>$eta</strong>
|
||||
<tbody id="$slot.nzo_id">
|
||||
<tr class="$slot.priority">
|
||||
<td class="expand">
|
||||
<a class="expander" onClick="javascript:toggle_verbosity('$slot.nzo_id', 'limit=$limit&start=$start')"><span id="name_$slot.nzo_id"><!--#if $slot.verbosity then '-' else '+'#--></span></a>
|
||||
<a class="expander" onclick="javascript:toggle_verbosity('$slot.nzo_id', 'limit=$limit&start=$start')"><span id="name_$slot.nzo_id"><!--#if $slot.verbosity then '-' else '+'#--></span></a>
|
||||
</td>
|
||||
<td>
|
||||
<select onfocus="pauseQueueDeferer(this.parentNode.parentNode.id)" onblur="javascript:lr('queue/','limit=$limit&start=$start', 1,-1, this.parentNode.parentNode.id);" onchange="javascript:changequeuedetails('queue/'+this.options[this.selectedIndex].value, 'limit=$limit&start=$start')">
|
||||
@@ -127,11 +127,11 @@ $T('smpl-timeleft'): <strong>$timeleft</strong> $T('eta'): <strong>$eta</strong>
|
||||
<td class="center">$slot.size</td>
|
||||
<td class="right_align">
|
||||
<!--#if $slot.status == 'Paused'#-->
|
||||
<a title="$T('link-resume')" onClick="resumequeueitem('$slot.nzo_id', '$start', '$limit');"><img class="resumeicon" src="static/images/control_play.png" /></a>
|
||||
<a title="$T('link-resume')" onclick="resumequeueitem('$slot.nzo_id', '$start', '$limit');"><img class="resumeicon" src="static/images/control_play.png" /></a>
|
||||
<!--#else#-->
|
||||
<a title="$T('link-pause')" onClick="pausequeueitem('$slot.nzo_id', '$start', '$limit');"><img class="pauseicon" src="static/images/control_pause.png" /></a>
|
||||
<a title="$T('link-pause')" onclick="pausequeueitem('$slot.nzo_id', '$start', '$limit');"><img class="pauseicon" src="static/images/control_pause.png" /></a>
|
||||
<!--#end if#-->
|
||||
<a title="$T('button-del')" onClick="deletequeueitem('$slot.nzo_id');"><img class="delicon" src="static/images/messagebox_critical.png" /></a>
|
||||
<a title="$T('button-del')" onclick="deletequeueitem('$slot.nzo_id');"><img class="delicon" src="static/images/messagebox_critical.png" /></a>
|
||||
</td>
|
||||
</tr>
|
||||
<!--#set $oddLine = False#-->
|
||||
@@ -142,7 +142,7 @@ $T('smpl-timeleft'): <strong>$timeleft</strong> $T('eta'): <strong>$eta</strong>
|
||||
<!--#set $oddLine = False#-->
|
||||
<!--#for $line in $slot.active#-->
|
||||
<!--#set $oddLine = not $oddLine#-->
|
||||
<tr id="$line.nzf_id" class="active <!--#if $oddLine then "oddLine" else "evenLine"#--> active"><td></td><td>Active</td><td>$line.filename</td><!--#if $queue_details == '1'#--><td></td><!--#end if#--><td class="pre">$line.mbleft/$line.mb MB</td><td></td><td class="center">$line.age</td><td class="center">$line.size</td><td class="right_align"><a onClick="deletenzf('$slot.nzo_id','$line.nzf_id')"><img class="delicon" src="static/images/messagebox_critical.png" /></a></td></tr>
|
||||
<tr id="$line.nzf_id" class="active <!--#if $oddLine then "oddLine" else "evenLine"#--> active"><td></td><td>Active</td><td>$line.filename</td><!--#if $queue_details == '1'#--><td></td><!--#end if#--><td class="pre">$line.mbleft/$line.mb MB</td><td></td><td class="center">$line.age</td><td class="center">$line.size</td><td class="right_align"><a onclick="deletenzf('$slot.nzo_id','$line.nzf_id')"><img class="delicon" src="static/images/messagebox_critical.png" /></a></td></tr>
|
||||
<!--#end for#-->
|
||||
<!--#set $oddLine = False#-->
|
||||
<!--#for $line in $slot.queued#-->
|
||||
|
||||
|
Before Width: | Height: | Size: 44 KiB After Width: | Height: | Size: 1.1 KiB |
@@ -8,9 +8,8 @@
|
||||
<br/>
|
||||
<div id="tips" class="hidden">
|
||||
$T('wizard-tip1') <span class="bold">$T('wizard-tip2')</span><br/>
|
||||
<!--#if len($urls) > 1#--><!--#set $s = 's'#--><!--#else#--><!--#set $s = ''#--><!--#end if#-->
|
||||
<!--#set $tip3 = $T('wizard-tip3') % $s#-->
|
||||
$tip3:<br/><br/>
|
||||
<!--#set $tip3 = $T('wizard-tip3') % ''#-->
|
||||
$tip3<br/><br/>
|
||||
<div class="quoteBlock">
|
||||
<!--#set $i = 0#-->
|
||||
<!--#for $url in $urls#-->
|
||||
|
||||
|
Before Width: | Height: | Size: 44 KiB After Width: | Height: | Size: 1.1 KiB |
|
Before Width: | Height: | Size: 62 KiB |
|
Before Width: | Height: | Size: 64 KiB |
@@ -1,50 +0,0 @@
|
||||
{\rtf1\ansi\ansicpg1252\cocoartf949\cocoasubrtf270
|
||||
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
|
||||
{\colortbl;\red255\green255\blue255;}
|
||||
\paperw11900\paperh16840\vieww9600\viewh8400\viewkind0
|
||||
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural
|
||||
|
||||
\f0\b\fs48 \cf0 SABnzbd v0.6.0
|
||||
\fs24 \
|
||||
\
|
||||
Copyright:
|
||||
\b0 \
|
||||
(c) Copyright 2007-2011 by "The SABnzbd-team" <team@sabnzbd.org>\
|
||||
\
|
||||
|
||||
\b The SABnzbd Team:\
|
||||
|
||||
\b0 ShyPike <shypike@sabnzbd.org>\
|
||||
sw1tch <switch@sabnzbd.org>\
|
||||
pairofdimes <pairofdimes@sabnzbd.org>\
|
||||
inpheaux <inpheaux@sabnzbd.org>\
|
||||
rAf <rAf@sabnzbd.org>\
|
||||
\
|
||||
|
||||
\b0 Honorary member (and original author)\
|
||||
Gregor Kaufmann <tdian@users.sourceforge.net>
|
||||
\b \
|
||||
\
|
||||
Support:\
|
||||
|
||||
\b0 www.sabnzbd.org\
|
||||
forums@sabnzbd.org\
|
||||
\b \
|
||||
\
|
||||
License:
|
||||
\b0 \
|
||||
(c) Copyright 2007-2011 by "The SABnzbd-team" <team@sabnzbd.org>\
|
||||
\
|
||||
This program is free software; you can redistribute it and/or\
|
||||
modify it under the terms of the GNU General Public License\
|
||||
as published by the Free Software Foundation; either version 2\
|
||||
of the License, or (at your option) any later version.\
|
||||
\
|
||||
This program is distributed in the hope that it will be useful,\
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of\
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\
|
||||
GNU General Public License for more details.\
|
||||
\
|
||||
You should have received a copy of the GNU General Public License\
|
||||
along with this program; if not, write to the Free Software\
|
||||
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.}
|
||||
BIN
osx/unrar/unrar-leopard
Executable file
235
package.py
@@ -1,6 +1,6 @@
|
||||
#!/usr/bin/env python -OO
|
||||
#
|
||||
# Copyright 2008-2011 The SABnzbd-Team <team@sabnzbd.org>
|
||||
# Copyright 2008-2012 The SABnzbd-Team <team@sabnzbd.org>
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License
|
||||
@@ -95,7 +95,7 @@ def PatchVersion(name):
|
||||
try:
|
||||
pipe = subprocess.Popen(GitStatus, shell=True, stdout=subprocess.PIPE).stdout
|
||||
for line in pipe.read().split('\n'):
|
||||
if 'nothing to commit' in line:
|
||||
if 'nothing to commit' in line or 'nothing added to commit' in line:
|
||||
state = ''
|
||||
break
|
||||
pipe.close()
|
||||
@@ -118,7 +118,6 @@ def PatchVersion(name):
|
||||
my_baseline = commit + state
|
||||
my_version = name
|
||||
|
||||
regex = re.compile(r'__baseline__\s+=\s+"\w*"')
|
||||
text = re.sub(r'__baseline__\s*=\s*"[^"]*"', '__baseline__ = "%s"' % my_baseline, text)
|
||||
text = re.sub(r'__version__\s*=\s*"[^"]*"', '__version__ = "%s"' % my_version, text)
|
||||
|
||||
@@ -241,37 +240,6 @@ def rename_file(folder, old, new):
|
||||
print "Cannot create %s" % newpath
|
||||
exit(1)
|
||||
|
||||
def check_runtimes():
|
||||
""" Return location of MS DLL files for Python 2.6 and higher
|
||||
This assumes that the stand-alone version of Bazaar has been
|
||||
installed, since this will be used as the source for the DLLs
|
||||
and Manifest files.
|
||||
"""
|
||||
path = None
|
||||
if sys.version_info >= (2, 6):
|
||||
path = os.environ.get('ProgramFiles(x86)')
|
||||
if not path:
|
||||
path = os.environ.get('ProgramFiles')
|
||||
if path:
|
||||
path = os.path.join(path, 'Bazaar')
|
||||
if not os.path.exists(path):
|
||||
print 'Cannot find runtime libraries, have you installed Bazaar'
|
||||
print 'in %s ?' % path
|
||||
exit(1)
|
||||
return path
|
||||
|
||||
def write_dll_message(path):
|
||||
f = open(path, 'w')
|
||||
f.write('''
|
||||
**** IMPORTANT ****
|
||||
|
||||
If you get a Windows error message, claiming that DLL files are missing,
|
||||
please install "Microsoft Visual C++ 2008 Redistributable Package (x86)".
|
||||
Download from http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=29
|
||||
Install this and *not* the SP1 package (or install both).
|
||||
|
||||
''')
|
||||
f.close()
|
||||
|
||||
print sys.argv[0]
|
||||
|
||||
@@ -279,17 +247,27 @@ Git = CheckPath('git')
|
||||
ZipCmd = CheckPath('zip')
|
||||
UnZipCmd = CheckPath('unzip')
|
||||
if os.name == 'nt':
|
||||
msg = 'Requires the standard version of NSIS'
|
||||
NSIS = CheckPath('makensis')
|
||||
if NSIS:
|
||||
log = '%s.log' % NSIS
|
||||
os.system('%s >%s' % (NSIS, log))
|
||||
if 'Unicode' not in open(log).read():
|
||||
msg = ''
|
||||
DeleteFiles(log)
|
||||
if msg:
|
||||
print msg
|
||||
exit(1)
|
||||
else:
|
||||
NSIS = '-'
|
||||
|
||||
GitRevertApp = Git + ' checkout -- '
|
||||
#GitUpdateApp = Git + ' update '
|
||||
GitRevertVersion = GitRevertApp + ' ' + VERSION_FILE
|
||||
GitVersion = Git + ' log -1'
|
||||
GitStatus = Git + ' status'
|
||||
|
||||
if not (Git and ZipCmd and UnZipCmd and NSIS):
|
||||
if not (Git and ZipCmd and UnZipCmd):
|
||||
print 'Missing programs. Need "git", "zip" and "unzip"'
|
||||
exit(1)
|
||||
|
||||
if len(sys.argv) < 2:
|
||||
@@ -376,54 +354,39 @@ if target == 'app':
|
||||
# Check which Python flavour
|
||||
apple_py = 'ActiveState' not in sys.copyright
|
||||
|
||||
#Create sparseimage from template
|
||||
os.system("unzip osx/image/template.sparseimage.zip")
|
||||
os.rename('sabnzbd-template.sparseimage', fileImg)
|
||||
|
||||
#mount sparseimage and modify volume label
|
||||
os.system("hdiutil mount %s | grep /Volumes/SABnzbd >mount.log" % (fileImg))
|
||||
|
||||
# Select OSX version specific background image
|
||||
# Take care to preserve the special attributes of the background image file
|
||||
if OSX_LION:
|
||||
# Lion and higher: generates SnowLeopard/Lion DMG
|
||||
f = open('osx/image/sabnzbd.png', 'rb')
|
||||
png = f.read()
|
||||
f.close()
|
||||
else:
|
||||
# Snow Leopard and lower: generates Leopard DMG
|
||||
fileDmg = fileDmgLp
|
||||
f = open('osx/image/sabnzbd_leopard.png', 'rb')
|
||||
png = f.read()
|
||||
f.close()
|
||||
f = open('/Volumes/SABnzbd/sabnzbd.png', 'wb')
|
||||
f.write(png)
|
||||
f.close()
|
||||
# Check if Leopard build is present
|
||||
leopard_build = '/project/leopard/%s' % str(my_version)
|
||||
if not os.path.isdir(leopard_build):
|
||||
print 'Leopard build not found at %s' % leopard_build
|
||||
exit(1)
|
||||
|
||||
# Rename the volume
|
||||
fp = open('mount.log', 'r')
|
||||
data = fp.read()
|
||||
fp.close()
|
||||
os.remove('mount.log')
|
||||
m = re.search(r'/dev/(\w+)\s+', data)
|
||||
volume = 'SABnzbd-' + str(my_version)
|
||||
os.system('disktool -n %s %s' % (m.group(1), volume))
|
||||
# Create sparseimage from template
|
||||
os.system("unzip -o osx/image/template.sparseimage.zip")
|
||||
os.rename('template.sparseimage', fileImg)
|
||||
|
||||
# mount sparseimage and modify volume label
|
||||
os.system("hdiutil mount %s | grep /Volumes/SABnzbd >mount.log" % (fileImg))
|
||||
|
||||
# Rename the volume
|
||||
fp = open('mount.log', 'r')
|
||||
data = fp.read()
|
||||
fp.close()
|
||||
os.remove('mount.log')
|
||||
m = re.search(r'/dev/(\w+)\s+', data)
|
||||
volume = 'SABnzbd-' + str(my_version)
|
||||
os.system('disktool -n %s %s' % (m.group(1), volume))
|
||||
|
||||
options['description'] = 'SABnzbd ' + str(my_version)
|
||||
|
||||
#Create MO files
|
||||
os.system('python ./tools/make_mo.py all')
|
||||
# Create MO files
|
||||
os.system('python ./tools/make_mo.py')
|
||||
|
||||
#build SABnzbd.py
|
||||
# build SABnzbd.py
|
||||
sys.argv[1] = 'py2app'
|
||||
|
||||
# Due to ApplePython bug
|
||||
if apple_py:
|
||||
sys.argv.append('-p');
|
||||
sys.argv.append('email');
|
||||
|
||||
APP = ['SABnzbd.py']
|
||||
DATA_FILES = ['interfaces', 'locale', 'email', ('',glob.glob("osx/resources/*"))]
|
||||
DATA_FILES = ['interfaces', 'locale', 'email', ('', glob.glob("osx/resources/*"))]
|
||||
|
||||
NZBFILE = dict(
|
||||
CFBundleTypeExtensions = [ "nzb","zip","rar" ],
|
||||
@@ -434,13 +397,19 @@ if target == 'app':
|
||||
LSTypeIsPackage = 0,
|
||||
NSPersistentStoreTypeKey = 'Binary',
|
||||
)
|
||||
OPTIONS = {'argv_emulation': not apple_py, 'iconfile': 'osx/resources/sabnzbdplus.icns','plist': {
|
||||
'NSUIElement':1,
|
||||
'CFBundleShortVersionString':release,
|
||||
'NSHumanReadableCopyright':'The SABnzbd-Team',
|
||||
'CFBundleIdentifier':'org.sabnzbd.team',
|
||||
'CFBundleDocumentTypes':[NZBFILE]
|
||||
}}
|
||||
OPTIONS = {'argv_emulation': not apple_py,
|
||||
'iconfile': 'osx/resources/sabnzbdplus.icns',
|
||||
'plist': {
|
||||
'NSUIElement':1,
|
||||
'CFBundleShortVersionString':release,
|
||||
'NSHumanReadableCopyright':'The SABnzbd-Team',
|
||||
'CFBundleIdentifier':'org.sabnzbd.team',
|
||||
'CFBundleDocumentTypes':[NZBFILE],
|
||||
},
|
||||
'packages': "email,xml,Cheetah",
|
||||
'excludes': ["pywin", "pywin.debugger", "pywin.debugger.dbgcon", "pywin.dialogs",
|
||||
"pywin.dialogs.list", "Tkconstants", "Tkinter", "tcl"]
|
||||
}
|
||||
|
||||
setup(
|
||||
app=APP,
|
||||
@@ -449,45 +418,67 @@ if target == 'app':
|
||||
setup_requires=['py2app'],
|
||||
)
|
||||
|
||||
#copy unrar & par2 binary to avoid striping
|
||||
# copy unrar & par2 binary to avoid striping
|
||||
os.system("mkdir dist/SABnzbd.app/Contents/Resources/osx>/dev/null")
|
||||
os.system("mkdir dist/SABnzbd.app/Contents/Resources/osx/par2>/dev/null")
|
||||
os.system("cp -pR osx/par2/ dist/SABnzbd.app/Contents/Resources/osx/par2>/dev/null")
|
||||
os.system("mkdir dist/SABnzbd.app/Contents/Resources/osx/unrar>/dev/null")
|
||||
os.system("cp -pR osx/unrar/ dist/SABnzbd.app/Contents/Resources/osx/unrar>/dev/null")
|
||||
os.system("cp -pR osx/unrar/license.txt dist/SABnzbd.app/Contents/Resources/osx/unrar/ >/dev/null")
|
||||
if OSX_LION:
|
||||
os.system("cp -pR osx/unrar/unrar dist/SABnzbd.app/Contents/Resources/osx/unrar/ >/dev/null")
|
||||
else:
|
||||
os.system("cp -pR osx/unrar/unrar-leopard dist/SABnzbd.app/Contents/Resources/osx/unrar/unrar >/dev/null")
|
||||
os.system("cp icons/sabnzbd.ico dist/SABnzbd.app/Contents/Resources >/dev/null")
|
||||
os.system("cp README.rtf dist/SABnzbd.app/Contents/Resources/Credits.rtf >/dev/null")
|
||||
os.system("find dist/SABnzbd.app -name .git | xargs rm -rf")
|
||||
|
||||
#copy app to mounted sparseimage
|
||||
os.system("cp -r dist/SABnzbd.app /Volumes/%s/>/dev/null" % volume)
|
||||
|
||||
print 'Create src %s' % fileOSr
|
||||
os.system('tar -czf %s --exclude ".git*" --exclude "sab*.zip" --exclude "SAB*.tar.gz" --exclude "*.cmd" --exclude "*.pyc" '
|
||||
'--exclude "*.sparseimage" --exclude "dist" --exclude "build" --exclude "*.nsi" --exclude "win" --exclude "*.dmg" '
|
||||
'./ >/dev/null' % (fileOSr) )
|
||||
|
||||
# Copy README.txt
|
||||
os.system("cp README.rtf /Volumes/%s/" % volume)
|
||||
|
||||
# Remove site.py to prevent re-compilation (otherwise the OSX Firewall may complain)
|
||||
os.remove('/Volumes/%s/SABnzbd.app/Contents/Resources/site.py' % volume)
|
||||
|
||||
#Unmount sparseimage
|
||||
os.system("hdiutil eject /Volumes/%s/>/dev/null" % volume)
|
||||
|
||||
# Remove source files to prevent re-compilation, which would invalidate signing
|
||||
py_ver = '%s.%s' % (sys.version_info[0], sys.version_info[1])
|
||||
os.system("find dist/SABnzbd.app/Contents/Resources/lib/python%s/Cheetah -name '*.py' | xargs rm" % py_ver)
|
||||
os.system("find dist/SABnzbd.app/Contents/Resources/lib/python%s/xml -name '*.py' | xargs rm" % py_ver)
|
||||
os.remove('dist/SABnzbd.app/Contents/Resources/site.py')
|
||||
os.system("sleep 5")
|
||||
#Convert sparseimage to read only compressed dmg
|
||||
if os.path.exists(fileDmg):
|
||||
os.remove(fileDmg)
|
||||
os.system("hdiutil convert %s -format UDBZ -o %s>/dev/null" % (fileImg,fileDmg))
|
||||
#Remove sparseimage
|
||||
os.system("rm %s>/dev/null" % (fileImg))
|
||||
|
||||
#Make image internet-enabled
|
||||
os.system("hdiutil internet-enable %s" % fileDmg)
|
||||
if OSX_LION:
|
||||
# Sign the App if possible
|
||||
authority = os.environ.get('SIGNING_AUTH')
|
||||
if authority:
|
||||
os.system('codesign -f -i "%s-lion" -s "%s" dist/SABnzbd.app' % (volume, authority))
|
||||
os.system('codesign -f -i "%s-leopard" -s "%s" %s/dist/SABnzbd.app' % (volume, authority, leopard_build))
|
||||
|
||||
# copy app to mounted sparseimage
|
||||
os.system('cp -r dist/SABnzbd.app "/Volumes/%s/OS X 10.6 and Above/" >/dev/null' % volume)
|
||||
|
||||
# Copy the Leopard build
|
||||
os.system('cp -r %s/dist/SABnzbd.app "/Volumes/%s/OS X 10.5 and Below/" >/dev/null' % (leopard_build, volume))
|
||||
|
||||
print 'Create src %s' % fileOSr
|
||||
os.system('tar -czf %s --exclude ".git*" --exclude "sab*.zip" --exclude "SAB*.tar.gz" --exclude "*.cmd" --exclude "*.pyc" '
|
||||
'--exclude "*.sparseimage*" --exclude "dist" --exclude "build" --exclude "*.nsi" --exclude "win" --exclude "*.dmg" '
|
||||
'./ >/dev/null' % (fileOSr) )
|
||||
|
||||
# Copy README.txt
|
||||
os.system("cp README.rtf /Volumes/%s/" % volume)
|
||||
|
||||
#Unmount sparseimage
|
||||
os.system("hdiutil eject /Volumes/%s/>/dev/null" % volume)
|
||||
|
||||
os.system("sleep 5")
|
||||
# Convert sparseimage to read only compressed dmg
|
||||
if os.path.exists(fileDmg):
|
||||
os.remove(fileDmg)
|
||||
os.system("hdiutil convert %s -format UDBZ -o %s>/dev/null" % (fileImg, fileDmg))
|
||||
# Remove sparseimage
|
||||
os.system("rm %s>/dev/null" % (fileImg))
|
||||
|
||||
# Make image internet-enabled
|
||||
os.system("hdiutil internet-enable %s" % fileDmg)
|
||||
else:
|
||||
dest = '/Volumes/VMware Shared Folders/leopard/%s' % str(my_version)
|
||||
os.system('rm -rf "%s"' % dest)
|
||||
os.makedirs('%s/dist' % dest)
|
||||
os.system('cp -r dist/SABnzbd.app "%s/dist/" >/dev/null' % dest)
|
||||
|
||||
os.system(GitRevertApp + "NSIS_Installer.nsi")
|
||||
os.system(GitRevertApp + VERSION_FILEAPP)
|
||||
os.system(GitRevertApp + VERSION_FILE)
|
||||
|
||||
@@ -497,8 +488,6 @@ elif target in ('binary', 'installer'):
|
||||
os.system(GitRevertVersion)
|
||||
exit(1)
|
||||
|
||||
#run_times = check_runtimes()
|
||||
|
||||
# Create MO files
|
||||
os.system('tools\\make_mo.py all')
|
||||
|
||||
@@ -577,34 +566,30 @@ elif target in ('binary', 'installer'):
|
||||
DeleteFiles(r'dist\lib\API-MS-Win-*.dll')
|
||||
DeleteFiles(r'dist\lib\MSWSOCK.DLL')
|
||||
DeleteFiles(r'dist\lib\POWRPROF.DLL')
|
||||
DeleteFiles(r'dist\lib\KERNELBASE.dll')
|
||||
|
||||
############################
|
||||
# Remove .git residue
|
||||
DeleteFiles(r'dist\interfaces\Config\.git')
|
||||
|
||||
############################
|
||||
# Copy MS runtime files or Curl
|
||||
if sys.version > (2, 5):
|
||||
#Won't work with OpenSSL DLLs :(
|
||||
#shutil.copy2(os.path.join(run_times, r'Microsoft.VC90.CRT.manifest'), r'dist')
|
||||
#shutil.copy2(os.path.join(run_times, r'msvcp90.dll'), r'dist')
|
||||
#shutil.copy2(os.path.join(run_times, r'msvcr90.dll'), r'dist')
|
||||
#shutil.copy2(os.path.join(run_times, r'lib\Microsoft.VC90.CRT.manifest'), r'dist\lib')
|
||||
pass
|
||||
else:
|
||||
# Copy Curl if needed
|
||||
if sys.version_info < (2, 6):
|
||||
# Curl for Python 2.5
|
||||
os.system(r'unzip -o win\curl\curl.zip -d dist\lib')
|
||||
|
||||
|
||||
############################
|
||||
if target == 'installer':
|
||||
|
||||
os.system('makensis.exe /v3 /DSAB_PRODUCT=%s /DSAB_VERSION=%s /DSAB_FILE=%s NSIS_Installer.nsi' % \
|
||||
DeleteFiles(fileIns)
|
||||
os.system('makensis.exe /v3 /DSAB_PRODUCT=%s /DSAB_VERSION=%s /DSAB_FILE=%s NSIS_Installer.nsi.tmp' % \
|
||||
(prod, release, fileIns))
|
||||
|
||||
DeleteFiles('NSIS_Installer.nsi.tmp')
|
||||
if not os.path.exists(fileIns):
|
||||
print 'Fatal error creating %s' % fileIns
|
||||
exit(1)
|
||||
|
||||
DeleteFiles(fileBin)
|
||||
#write_dll_message('dist/IMPORTANT_MESSAGE.txt')
|
||||
os.rename('dist', prod)
|
||||
os.system('zip -9 -r -X %s %s' % (fileBin, prod))
|
||||
time.sleep(1.0)
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
#
|
||||
# SABnzbd Translation Template file EMAIL
|
||||
# Copyright (C) 2011 by the SABnzbd Team
|
||||
# Copyright (C) 2012 by the SABnzbd Team
|
||||
# team@sabnzbd.org
|
||||
#
|
||||
msgid ""
|
||||
|
||||
@@ -7,15 +7,15 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: sabnzbd\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2012-03-09 19:01+0000\n"
|
||||
"POT-Creation-Date: 2012-04-28 12:01+0000\n"
|
||||
"PO-Revision-Date: 2012-03-14 04:51+0000\n"
|
||||
"Last-Translator: Rene <Unknown>\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: 2012-03-15 05:11+0000\n"
|
||||
"X-Generator: Launchpad (build 14933)\n"
|
||||
"X-Launchpad-Export-Date: 2012-04-29 05:17+0000\n"
|
||||
"X-Generator: Launchpad (build 15149)\n"
|
||||
|
||||
#: email/email.tmpl:1
|
||||
msgid ""
|
||||
|
||||
@@ -7,15 +7,15 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: sabnzbd\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2012-03-09 19:01+0000\n"
|
||||
"POT-Creation-Date: 2012-04-28 12:01+0000\n"
|
||||
"PO-Revision-Date: 2011-06-26 10:50+0000\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\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: 2012-03-11 05:02+0000\n"
|
||||
"X-Generator: Launchpad (build 14914)\n"
|
||||
"X-Launchpad-Export-Date: 2012-04-29 05:17+0000\n"
|
||||
"X-Generator: Launchpad (build 15149)\n"
|
||||
|
||||
#: email/email.tmpl:1
|
||||
msgid ""
|
||||
|
||||
215
po/email/es.po
Normal file
@@ -0,0 +1,215 @@
|
||||
# Spanish translation for sabnzbd
|
||||
# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
|
||||
# This file is distributed under the same license as the sabnzbd package.
|
||||
# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: sabnzbd\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2012-04-28 12:01+0000\n"
|
||||
"PO-Revision-Date: 2012-04-03 09:00+0000\n"
|
||||
"Last-Translator: shypike <Unknown>\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: 2012-04-29 05:17+0000\n"
|
||||
"X-Generator: Launchpad (build 15149)\n"
|
||||
|
||||
#: email/email.tmpl:1
|
||||
msgid ""
|
||||
"##\n"
|
||||
"## Default Email template for SABnzbd\n"
|
||||
"## This a Cheetah template\n"
|
||||
"## Documentation: http://sabnzbd.wikidot.com/email-templates\n"
|
||||
"##\n"
|
||||
"## Newlines and whitespace are significant!\n"
|
||||
"##\n"
|
||||
"## These are the email headers\n"
|
||||
"To: $to\n"
|
||||
"From: $from\n"
|
||||
"Date: $date\n"
|
||||
"Subject: SABnzbd has <!--#if $status then \"completed\" else \"failed\" #--> "
|
||||
"job $name\n"
|
||||
"X-priority: 5\n"
|
||||
"X-MS-priority: 5\n"
|
||||
"## After this comes the body, the empty line is required!\n"
|
||||
"\n"
|
||||
"Hi,\n"
|
||||
"<!--#if $status #-->\n"
|
||||
"SABnzbd has downloaded \"$name\" <!--#if $msgid==\"\" then \"\" else "
|
||||
"\"(newzbin #\" + $msgid + \")\"#-->\n"
|
||||
"<!--#else#-->\n"
|
||||
"SABnzbd has failed to download \"$name\" <!--#if $msgid==\"\" then \"\" else "
|
||||
"\"(newzbin #\" + $msgid + \")\"#-->\n"
|
||||
"<!--#end if#-->\n"
|
||||
"Finished at $end_time\n"
|
||||
"Downloaded $size\n"
|
||||
"\n"
|
||||
"Results of the job:\n"
|
||||
"<!--#for $stage in $stages #-->\n"
|
||||
"Stage $stage <!--#slurp#-->\n"
|
||||
"<!--#for $result in $stages[$stage]#-->\n"
|
||||
" $result <!--#slurp#-->\n"
|
||||
"<!--#end for#-->\n"
|
||||
"<!--#end for#-->\n"
|
||||
"<!--#if $script!=\"\" #-->\n"
|
||||
"Output from user script \"$script\" (Exit code = $script_ret):\n"
|
||||
"$script_output\n"
|
||||
"<!--#end if#-->\n"
|
||||
"<!--#if $status #-->\n"
|
||||
"Enjoy!\n"
|
||||
"<!--#else#-->\n"
|
||||
"Sorry!\n"
|
||||
"<!--#end if#-->\n"
|
||||
msgstr ""
|
||||
"##\n"
|
||||
"## Plantilla de correo predeterminada para SABnzbd\n"
|
||||
"## This a Cheetah template\n"
|
||||
"## Documentación: http://sabnzbd.wikidot.com/email-templates\n"
|
||||
"##\n"
|
||||
"## !Los saltos de línea y espacios en blanco son significativos¡\n"
|
||||
"##\n"
|
||||
"## Cabeceras de correo electrónico\n"
|
||||
"To: $to\n"
|
||||
"From: $from\n"
|
||||
"Date: $date\n"
|
||||
"Subject: SABnzbd <!--#if $status then \"he bajado\" else \"fallo en bajar\" "
|
||||
"#--> job $name\n"
|
||||
"X-priority: 5\n"
|
||||
"X-MS-priority: 5\n"
|
||||
"## !Después de esto viene el cuerpo del mensaje, la línea en blanco es "
|
||||
"necesaria!\n"
|
||||
"\n"
|
||||
"Hola,\n"
|
||||
"<!--#if $status #-->\n"
|
||||
"SABnzbd he bajado \"$name\" <!--#if $msgid==\"\" then \"\" else \"(newzbin "
|
||||
"#\" + $msgid + \")\"#-->\n"
|
||||
"<!--#else#-->\n"
|
||||
"SABnzbd fallo en bajar \"$name\" <!--#if $msgid==\"\" then \"\" else "
|
||||
"\"(newzbin #\" + $msgid + \")\"#-->\n"
|
||||
"<!--#end if#-->\n"
|
||||
"Terminado a las $end_time\n"
|
||||
"$size bajado\n"
|
||||
"\n"
|
||||
"Resultado de la transferencia:\n"
|
||||
"<!--#for $stage in $stages #-->\n"
|
||||
"Etapa $stage <!--#slurp#-->\n"
|
||||
"<!--#for $result in $stages[$stage]#-->\n"
|
||||
" $result <!--#slurp#-->\n"
|
||||
"<!--#end for#-->\n"
|
||||
"<!--#end for#-->\n"
|
||||
"<!--#if $script!=\"\" #-->\n"
|
||||
"Producción desde el script de usuario \"$script\" (Exit code = "
|
||||
"$script_ret):\n"
|
||||
"$script_output\n"
|
||||
"<!--#end if#-->\n"
|
||||
"<!--#if $status #-->\n"
|
||||
"Que lo disfrutes!\n"
|
||||
"<!--#else#-->\n"
|
||||
"Perdon!\n"
|
||||
"<!--#end if#-->\n"
|
||||
|
||||
#: email/rss.tmpl:1
|
||||
msgid ""
|
||||
"##\n"
|
||||
"## RSS Email template for SABnzbd\n"
|
||||
"## This a Cheetah template\n"
|
||||
"## Documentation: http://sabnzbd.wikidot.com/email-templates\n"
|
||||
"##\n"
|
||||
"## Newlines and whitespace are significant!\n"
|
||||
"##\n"
|
||||
"## These are the email headers\n"
|
||||
"To: $to\n"
|
||||
"From: $from\n"
|
||||
"Date: $date\n"
|
||||
"Subject: SABnzbd has added $amount jobs to the queue\n"
|
||||
"X-priority: 5\n"
|
||||
"X-MS-priority: 5\n"
|
||||
"## After this comes the body, the empty line is required!\n"
|
||||
"\n"
|
||||
"Hi,\n"
|
||||
"\n"
|
||||
"SABnzbd has added $amount job(s) to the queue.\n"
|
||||
"They are from RSS feed \"$feed\".\n"
|
||||
"<!--#for $job in $jobs#-->\n"
|
||||
" $job <!--#slurp#-->\n"
|
||||
"<!--#end for#-->\n"
|
||||
"\n"
|
||||
"Bye\n"
|
||||
msgstr ""
|
||||
"##\n"
|
||||
"## Plantilla de correo RSS para SABnzbd\n"
|
||||
"## This a Cheetah template\n"
|
||||
"## Documentation: http://sabnzbd.wikidot.com/email-templates\n"
|
||||
"##\n"
|
||||
"## !Los saltos de línea y espacios en blanco son significativos¡\n"
|
||||
"##\n"
|
||||
"## Cabeceras de correo electrónico\n"
|
||||
"To: $to\n"
|
||||
"From: $from\n"
|
||||
"Date: $date\n"
|
||||
"Subject: SABnzbd he añadido $amount transferencia(s) a la cola\n"
|
||||
"X-priority: 5\n"
|
||||
"X-MS-priority: 5\n"
|
||||
"## !Después de esto viene el cuerpo del mensaje, la línea en blanco es "
|
||||
"necesaria!\n"
|
||||
"\n"
|
||||
"Hola,\n"
|
||||
"\n"
|
||||
"SABnzbd he añadido $amount transferencia(s) a la cola.\n"
|
||||
"Originaron desde el RSS \"$feed\".\n"
|
||||
"<!--#for $job in $jobs#-->\n"
|
||||
"$job <!--#slurp#-->\n"
|
||||
"<!--#end for#-->\n"
|
||||
"\n"
|
||||
"Adios\n"
|
||||
|
||||
#: email/badfetch.tmpl:1
|
||||
msgid ""
|
||||
"##\n"
|
||||
"## Bad URL Fetch Email template for SABnzbd\n"
|
||||
"## This a Cheetah template\n"
|
||||
"## Documentation: http://sabnzbd.wikidot.com/email-templates\n"
|
||||
"##\n"
|
||||
"## Newlines and whitespace are significant!\n"
|
||||
"##\n"
|
||||
"## These are the email headers\n"
|
||||
"To: $to\n"
|
||||
"From: $from\n"
|
||||
"Date: $date\n"
|
||||
"Subject: SABnzbd failed to fetch an NZB\n"
|
||||
"X-priority: 5\n"
|
||||
"X-MS-priority: 5\n"
|
||||
"## After this comes the body, the empty line is required!\n"
|
||||
"\n"
|
||||
"Hi,\n"
|
||||
"\n"
|
||||
"SABnzbd has failed to retrieve the NZB from $url.\n"
|
||||
"The error message was: $msg\n"
|
||||
"\n"
|
||||
"Bye\n"
|
||||
msgstr ""
|
||||
"##\n"
|
||||
"## Plantilla de correo para URLs incorrectas de SABnzbd\n"
|
||||
"## Esta es una plantilla Cheetah\n"
|
||||
"## Documentación: http://sabnzbd.wikidot.com/email-templates\n"
|
||||
"##\n"
|
||||
"## Líneas nuevas y espacios en blanco IMPORTAN!\n"
|
||||
"##\n"
|
||||
"## Estas son las cabeceras del email\n"
|
||||
"To: $to\n"
|
||||
"From: $from\n"
|
||||
"Date: $date\n"
|
||||
"Subject: SABnzbd ha encontrado un error al recuperar un NZB\n"
|
||||
"X-priority: 5\n"
|
||||
"X-MS-priority: 5\n"
|
||||
"## After this comes the body, the empty line is required!\n"
|
||||
"\n"
|
||||
"Hola,\n"
|
||||
"\n"
|
||||
"SABnzbd ha encontrado un error al descargar un NZB desde $url.\n"
|
||||
"El error ha sido: $msg\n"
|
||||
"\n"
|
||||
"Un saludo\n"
|
||||
@@ -7,15 +7,15 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: sabnzbd\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2012-03-09 19:01+0000\n"
|
||||
"POT-Creation-Date: 2012-04-28 12:01+0000\n"
|
||||
"PO-Revision-Date: 2012-03-18 07:02+0000\n"
|
||||
"Last-Translator: Fox Ace <Unknown>\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: 2012-03-19 04:59+0000\n"
|
||||
"X-Generator: Launchpad (build 14969)\n"
|
||||
"X-Launchpad-Export-Date: 2012-04-29 05:17+0000\n"
|
||||
"X-Generator: Launchpad (build 15149)\n"
|
||||
|
||||
#: email/email.tmpl:1
|
||||
msgid ""
|
||||
|
||||
@@ -7,15 +7,15 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: sabnzbd\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2012-03-09 19:01+0000\n"
|
||||
"POT-Creation-Date: 2012-04-28 12:01+0000\n"
|
||||
"PO-Revision-Date: 2011-06-26 10:50+0000\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\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: 2012-03-11 05:02+0000\n"
|
||||
"X-Generator: Launchpad (build 14914)\n"
|
||||
"X-Launchpad-Export-Date: 2012-04-29 05:17+0000\n"
|
||||
"X-Generator: Launchpad (build 15149)\n"
|
||||
|
||||
#: email/email.tmpl:1
|
||||
msgid ""
|
||||
|
||||
@@ -7,15 +7,15 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: sabnzbd\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2012-03-09 19:01+0000\n"
|
||||
"POT-Creation-Date: 2012-04-28 12:01+0000\n"
|
||||
"PO-Revision-Date: 2012-03-09 19:11+0000\n"
|
||||
"Last-Translator: shypike <Unknown>\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: 2012-03-11 05:02+0000\n"
|
||||
"X-Generator: Launchpad (build 14914)\n"
|
||||
"X-Launchpad-Export-Date: 2012-04-29 05:17+0000\n"
|
||||
"X-Generator: Launchpad (build 15149)\n"
|
||||
|
||||
#: email/email.tmpl:1
|
||||
msgid ""
|
||||
|
||||
212
po/email/pl.px
Normal file
@@ -0,0 +1,212 @@
|
||||
# Polish translation for sabnzbd
|
||||
# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
|
||||
# This file is distributed under the same license as the sabnzbd package.
|
||||
# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: sabnzbd\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2012-04-28 12:01+0000\n"
|
||||
"PO-Revision-Date: 2012-05-02 09:57+0000\n"
|
||||
"Last-Translator: Tomasz 'Zen' Napierala <tomasz@napierala.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: 2012-05-03 05:55+0000\n"
|
||||
"X-Generator: Launchpad (build 15185)\n"
|
||||
|
||||
#: email/email.tmpl:1
|
||||
msgid ""
|
||||
"##\n"
|
||||
"## Default Email template for SABnzbd\n"
|
||||
"## This a Cheetah template\n"
|
||||
"## Documentation: http://sabnzbd.wikidot.com/email-templates\n"
|
||||
"##\n"
|
||||
"## Newlines and whitespace are significant!\n"
|
||||
"##\n"
|
||||
"## These are the email headers\n"
|
||||
"To: $to\n"
|
||||
"From: $from\n"
|
||||
"Date: $date\n"
|
||||
"Subject: SABnzbd has <!--#if $status then \"completed\" else \"failed\" #--> "
|
||||
"job $name\n"
|
||||
"X-priority: 5\n"
|
||||
"X-MS-priority: 5\n"
|
||||
"## After this comes the body, the empty line is required!\n"
|
||||
"\n"
|
||||
"Hi,\n"
|
||||
"<!--#if $status #-->\n"
|
||||
"SABnzbd has downloaded \"$name\" <!--#if $msgid==\"\" then \"\" else "
|
||||
"\"(newzbin #\" + $msgid + \")\"#-->\n"
|
||||
"<!--#else#-->\n"
|
||||
"SABnzbd has failed to download \"$name\" <!--#if $msgid==\"\" then \"\" else "
|
||||
"\"(newzbin #\" + $msgid + \")\"#-->\n"
|
||||
"<!--#end if#-->\n"
|
||||
"Finished at $end_time\n"
|
||||
"Downloaded $size\n"
|
||||
"\n"
|
||||
"Results of the job:\n"
|
||||
"<!--#for $stage in $stages #-->\n"
|
||||
"Stage $stage <!--#slurp#-->\n"
|
||||
"<!--#for $result in $stages[$stage]#-->\n"
|
||||
" $result <!--#slurp#-->\n"
|
||||
"<!--#end for#-->\n"
|
||||
"<!--#end for#-->\n"
|
||||
"<!--#if $script!=\"\" #-->\n"
|
||||
"Output from user script \"$script\" (Exit code = $script_ret):\n"
|
||||
"$script_output\n"
|
||||
"<!--#end if#-->\n"
|
||||
"<!--#if $status #-->\n"
|
||||
"Enjoy!\n"
|
||||
"<!--#else#-->\n"
|
||||
"Sorry!\n"
|
||||
"<!--#end if#-->\n"
|
||||
msgstr ""
|
||||
"##\n"
|
||||
"## Domyślny szablon maila w SABnzbd\n"
|
||||
"## To jest szablon Cheetah\n"
|
||||
"## Dokumentacja: http://sabnzbd.wikidot.com/email-templates\n"
|
||||
"##\n"
|
||||
"## Znak nowego wiersza i spacji ma znaczenie!\n"
|
||||
"##\n"
|
||||
"## To są nagłowki maila\n"
|
||||
"To: $to\n"
|
||||
"From: $from\n"
|
||||
"Date: $date\n"
|
||||
"Subject: SABnzbd <!--#if $status then \"zakończył\" else \"zakończył z "
|
||||
"błędem\" #--> zadanie $name\n"
|
||||
"X-priority: 5\n"
|
||||
"X-MS-priority: 5\n"
|
||||
"## Następnie treść maila, wymagana jest pusta linia!\n"
|
||||
"\n"
|
||||
"Cześć,\n"
|
||||
"<!--#if $status #-->\n"
|
||||
"SABnzbd pobrał \"$name\" <!--#if $msgid==\"\" then \"\" else \"(newzbin #\" "
|
||||
"+ $msgid + \")\"#-->\n"
|
||||
"<!--#else#-->\n"
|
||||
"SABnzbd nie pobrał \"$name\" <!--#if $msgid==\"\" then \"\" else \"(newzbin "
|
||||
"#\" + $msgid + \")\"#-->\n"
|
||||
"<!--#end if#-->\n"
|
||||
"Zakończono o $end_time\n"
|
||||
"Pobrano $size\n"
|
||||
"\n"
|
||||
"Rezultat zadania:\n"
|
||||
"<!--#for $stage in $stages #-->\n"
|
||||
"Etap $stage <!--#slurp#-->\n"
|
||||
"<!--#for $result in $stages[$stage]#-->\n"
|
||||
"$result <!--#slurp#-->\n"
|
||||
"<!--#end for#-->\n"
|
||||
"<!--#end for#-->\n"
|
||||
"<!--#if $script!=\"\" #-->\n"
|
||||
"Odpowiedź od skryptu \"$script\" (kod wyjścia = $script_ret):\n"
|
||||
"$script_output\n"
|
||||
"<!--#end if#-->\n"
|
||||
"<!--#if $status #-->\n"
|
||||
"Baw się dobrze!\n"
|
||||
"<!--#else#-->\n"
|
||||
"Przykro mi!\n"
|
||||
"<!--#end if#-->\n"
|
||||
|
||||
#: email/rss.tmpl:1
|
||||
msgid ""
|
||||
"##\n"
|
||||
"## RSS Email template for SABnzbd\n"
|
||||
"## This a Cheetah template\n"
|
||||
"## Documentation: http://sabnzbd.wikidot.com/email-templates\n"
|
||||
"##\n"
|
||||
"## Newlines and whitespace are significant!\n"
|
||||
"##\n"
|
||||
"## These are the email headers\n"
|
||||
"To: $to\n"
|
||||
"From: $from\n"
|
||||
"Date: $date\n"
|
||||
"Subject: SABnzbd has added $amount jobs to the queue\n"
|
||||
"X-priority: 5\n"
|
||||
"X-MS-priority: 5\n"
|
||||
"## After this comes the body, the empty line is required!\n"
|
||||
"\n"
|
||||
"Hi,\n"
|
||||
"\n"
|
||||
"SABnzbd has added $amount job(s) to the queue.\n"
|
||||
"They are from RSS feed \"$feed\".\n"
|
||||
"<!--#for $job in $jobs#-->\n"
|
||||
" $job <!--#slurp#-->\n"
|
||||
"<!--#end for#-->\n"
|
||||
"\n"
|
||||
"Bye\n"
|
||||
msgstr ""
|
||||
"##\n"
|
||||
"## Szablon wiadomości RSS dla SABnzbd\n"
|
||||
"## To jest szablon Cheetah\n"
|
||||
"## Dokumentacja: http://sabnzbd.wikidot.com/email-templates\n"
|
||||
"##\n"
|
||||
"## Znak nowego wiersza i spacji ma znaczenie!\n"
|
||||
"##\n"
|
||||
"## To są nagłowki maila\n"
|
||||
"To: $to\n"
|
||||
"From: $from\n"
|
||||
"Date: $date\n"
|
||||
"Subject: SABnzbd dodał $amount zadań/zadania do kolejki\n"
|
||||
"X-priority: 5\n"
|
||||
"X-MS-priority: 5\n"
|
||||
"## Następnie treść maila, wymagana jest pusta linia!\n"
|
||||
"\n"
|
||||
"Cześć,\n"
|
||||
"\n"
|
||||
"SABnzbd dodał $amount zadanie/zadań do kolejki.\n"
|
||||
"Pochodzą one z wiadomości RSS \"$feed\".\n"
|
||||
"<!--#for $job in $jobs#-->\n"
|
||||
"$job <!--#slurp#-->\n"
|
||||
"<!--#end for#-->\n"
|
||||
"\n"
|
||||
"Nara\n"
|
||||
|
||||
#: email/badfetch.tmpl:1
|
||||
msgid ""
|
||||
"##\n"
|
||||
"## Bad URL Fetch Email template for SABnzbd\n"
|
||||
"## This a Cheetah template\n"
|
||||
"## Documentation: http://sabnzbd.wikidot.com/email-templates\n"
|
||||
"##\n"
|
||||
"## Newlines and whitespace are significant!\n"
|
||||
"##\n"
|
||||
"## These are the email headers\n"
|
||||
"To: $to\n"
|
||||
"From: $from\n"
|
||||
"Date: $date\n"
|
||||
"Subject: SABnzbd failed to fetch an NZB\n"
|
||||
"X-priority: 5\n"
|
||||
"X-MS-priority: 5\n"
|
||||
"## After this comes the body, the empty line is required!\n"
|
||||
"\n"
|
||||
"Hi,\n"
|
||||
"\n"
|
||||
"SABnzbd has failed to retrieve the NZB from $url.\n"
|
||||
"The error message was: $msg\n"
|
||||
"\n"
|
||||
"Bye\n"
|
||||
msgstr ""
|
||||
"##\n"
|
||||
"## Szablon wiadomości błędnego pobierania URL SABnzbd\n"
|
||||
"## To jest szablon Cheetah\n"
|
||||
"## Dokumentacja: http://sabnzbd.wikidot.com/email-templates\n"
|
||||
"##\n"
|
||||
"## Znaki nowego wiersza i białe znaki mają znaczenie!\n"
|
||||
"##\n"
|
||||
"## To są nagłówki wiadomości\n"
|
||||
"To: $to\n"
|
||||
"From: $from\n"
|
||||
"Date: $date\n"
|
||||
"Subject: SABnzbd nie udało się pobrać pliku NZB\n"
|
||||
"X-priority: 5\n"
|
||||
"X-MS-priority: 5\n"
|
||||
"## Po tym następuje treść. Pusty wiersz jest wymagany!\n"
|
||||
"\n"
|
||||
"Cześć,\n"
|
||||
"\n"
|
||||
"SABnzbd nie udało się pobrać pliku NZB z $url.\n"
|
||||
"Komunikat błędu: $msg\n"
|
||||
"\n"
|
||||
"Do usłyszenia.\n"
|
||||
214
po/email/pt_BR.po
Normal file
@@ -0,0 +1,214 @@
|
||||
# Brazilian Portuguese translation for sabnzbd
|
||||
# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012
|
||||
# This file is distributed under the same license as the sabnzbd package.
|
||||
# FIRST AUTHOR <EMAIL@ADDRESS>, 2012.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: sabnzbd\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2012-04-28 12:01+0000\n"
|
||||
"PO-Revision-Date: 2012-03-10 04:16+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: 2012-04-29 05:17+0000\n"
|
||||
"X-Generator: Launchpad (build 15149)\n"
|
||||
|
||||
#: email/email.tmpl:1
|
||||
msgid ""
|
||||
"##\n"
|
||||
"## Default Email template for SABnzbd\n"
|
||||
"## This a Cheetah template\n"
|
||||
"## Documentation: http://sabnzbd.wikidot.com/email-templates\n"
|
||||
"##\n"
|
||||
"## Newlines and whitespace are significant!\n"
|
||||
"##\n"
|
||||
"## These are the email headers\n"
|
||||
"To: $to\n"
|
||||
"From: $from\n"
|
||||
"Date: $date\n"
|
||||
"Subject: SABnzbd has <!--#if $status then \"completed\" else \"failed\" #--> "
|
||||
"job $name\n"
|
||||
"X-priority: 5\n"
|
||||
"X-MS-priority: 5\n"
|
||||
"## After this comes the body, the empty line is required!\n"
|
||||
"\n"
|
||||
"Hi,\n"
|
||||
"<!--#if $status #-->\n"
|
||||
"SABnzbd has downloaded \"$name\" <!--#if $msgid==\"\" then \"\" else "
|
||||
"\"(newzbin #\" + $msgid + \")\"#-->\n"
|
||||
"<!--#else#-->\n"
|
||||
"SABnzbd has failed to download \"$name\" <!--#if $msgid==\"\" then \"\" else "
|
||||
"\"(newzbin #\" + $msgid + \")\"#-->\n"
|
||||
"<!--#end if#-->\n"
|
||||
"Finished at $end_time\n"
|
||||
"Downloaded $size\n"
|
||||
"\n"
|
||||
"Results of the job:\n"
|
||||
"<!--#for $stage in $stages #-->\n"
|
||||
"Stage $stage <!--#slurp#-->\n"
|
||||
"<!--#for $result in $stages[$stage]#-->\n"
|
||||
" $result <!--#slurp#-->\n"
|
||||
"<!--#end for#-->\n"
|
||||
"<!--#end for#-->\n"
|
||||
"<!--#if $script!=\"\" #-->\n"
|
||||
"Output from user script \"$script\" (Exit code = $script_ret):\n"
|
||||
"$script_output\n"
|
||||
"<!--#end if#-->\n"
|
||||
"<!--#if $status #-->\n"
|
||||
"Enjoy!\n"
|
||||
"<!--#else#-->\n"
|
||||
"Sorry!\n"
|
||||
"<!--#end if#-->\n"
|
||||
msgstr ""
|
||||
"##\n"
|
||||
"## Template padrão de e-mail para SABnzbd\n"
|
||||
"## Este é um template Cheetah\n"
|
||||
"## Documentação: http://sabnzbd.wikidot.com/email-templates\n"
|
||||
"##\n"
|
||||
"## Novas linhas e espaços em branco são significativos!\n"
|
||||
"##\n"
|
||||
"## Estes são os cabeçalhos de e-mail\n"
|
||||
"To: $to\n"
|
||||
"From: $from\n"
|
||||
"Date: $date\n"
|
||||
"Subject: SABnzbd <!--#if $status then \"completou \" else \"falhou n\" #-->a "
|
||||
"tarefa $name\n"
|
||||
"X-priority: 5\n"
|
||||
"X-MS-priority: 5\n"
|
||||
"## Depois daqui vem o corpo. A linha vazia é necessária!\n"
|
||||
"\n"
|
||||
"Olá,\n"
|
||||
"<!--#if $status #-->\n"
|
||||
"SABnzbd baixou \"$name\" <!--#if $msgid==\"\" then \"\" else \"(newzbin #\" "
|
||||
"+ $msgid + \")\"#-->\n"
|
||||
"<!--#else#-->\n"
|
||||
"SABnzbd falhou no download de \"$name\" <!--#if $msgid==\"\" then \"\" else "
|
||||
"\"(newzbin #\" + $msgid + \")\"#-->\n"
|
||||
"<!--#end if#-->\n"
|
||||
"Completado em $end_time\n"
|
||||
"Baixados $size\n"
|
||||
"\n"
|
||||
"Resultados da tarefa:\n"
|
||||
"<!--#for $stage in $stages #-->\n"
|
||||
"Etapa $stage <!--#slurp#-->\n"
|
||||
"<!--#for $result in $stages[$stage]#-->\n"
|
||||
" $result <!--#slurp#-->\n"
|
||||
"<!--#end for#-->\n"
|
||||
"<!--#end for#-->\n"
|
||||
"<!--#if $script!=\"\" #-->\n"
|
||||
"Retorno do script de usuário \"$script\" (Código de retorno = $script_ret):\n"
|
||||
"$script_output\n"
|
||||
"<!--#end if#-->\n"
|
||||
"<!--#if $status #-->\n"
|
||||
"Aproveite!\n"
|
||||
"<!--#else#-->\n"
|
||||
"Lamento!\n"
|
||||
"<!--#end if#-->\n"
|
||||
|
||||
#: email/rss.tmpl:1
|
||||
msgid ""
|
||||
"##\n"
|
||||
"## RSS Email template for SABnzbd\n"
|
||||
"## This a Cheetah template\n"
|
||||
"## Documentation: http://sabnzbd.wikidot.com/email-templates\n"
|
||||
"##\n"
|
||||
"## Newlines and whitespace are significant!\n"
|
||||
"##\n"
|
||||
"## These are the email headers\n"
|
||||
"To: $to\n"
|
||||
"From: $from\n"
|
||||
"Date: $date\n"
|
||||
"Subject: SABnzbd has added $amount jobs to the queue\n"
|
||||
"X-priority: 5\n"
|
||||
"X-MS-priority: 5\n"
|
||||
"## After this comes the body, the empty line is required!\n"
|
||||
"\n"
|
||||
"Hi,\n"
|
||||
"\n"
|
||||
"SABnzbd has added $amount job(s) to the queue.\n"
|
||||
"They are from RSS feed \"$feed\".\n"
|
||||
"<!--#for $job in $jobs#-->\n"
|
||||
" $job <!--#slurp#-->\n"
|
||||
"<!--#end for#-->\n"
|
||||
"\n"
|
||||
"Bye\n"
|
||||
msgstr ""
|
||||
"##\n"
|
||||
"## Template de e-mail RSS para SABnzbd\n"
|
||||
"## Este é um template Cheetah\n"
|
||||
"## Documentação: http://sabnzbd.wikidot.com/email-templates\n"
|
||||
"##\n"
|
||||
"## Novas linhas e espaços em branco são significativos!\n"
|
||||
"##\n"
|
||||
"## Estes são os cabeçalhos de e-mail\n"
|
||||
"To: $to\n"
|
||||
"From: $from\n"
|
||||
"Date: $date\n"
|
||||
"Subject: SABnzbd adicionou $amount <!--#if $amount == \"1\" then \"tarefa\" "
|
||||
"else \"tarefas\" #--> à fila\n"
|
||||
"X-priority: 5\n"
|
||||
"X-MS-priority: 5\n"
|
||||
"## Depois daqui vem o corpo. A linha vazia é necessária!\n"
|
||||
"\n"
|
||||
"Olá,\n"
|
||||
"\n"
|
||||
"SABnzbd adicionou $amount <!--#if $amount == \"1\" then \"tarefa\" else "
|
||||
"\"tarefas\" #--> à fila.\n"
|
||||
"Elas são do feed RSS \"$feed\".\n"
|
||||
"<!--#for $job in $jobs#-->\n"
|
||||
" $job <!--#slurp#-->\n"
|
||||
"<!--#end for#-->\n"
|
||||
"\n"
|
||||
"Tchau!\n"
|
||||
|
||||
#: email/badfetch.tmpl:1
|
||||
msgid ""
|
||||
"##\n"
|
||||
"## Bad URL Fetch Email template for SABnzbd\n"
|
||||
"## This a Cheetah template\n"
|
||||
"## Documentation: http://sabnzbd.wikidot.com/email-templates\n"
|
||||
"##\n"
|
||||
"## Newlines and whitespace are significant!\n"
|
||||
"##\n"
|
||||
"## These are the email headers\n"
|
||||
"To: $to\n"
|
||||
"From: $from\n"
|
||||
"Date: $date\n"
|
||||
"Subject: SABnzbd failed to fetch an NZB\n"
|
||||
"X-priority: 5\n"
|
||||
"X-MS-priority: 5\n"
|
||||
"## After this comes the body, the empty line is required!\n"
|
||||
"\n"
|
||||
"Hi,\n"
|
||||
"\n"
|
||||
"SABnzbd has failed to retrieve the NZB from $url.\n"
|
||||
"The error message was: $msg\n"
|
||||
"\n"
|
||||
"Bye\n"
|
||||
msgstr ""
|
||||
"##\n"
|
||||
"## Template de e-mail de busca em URL ruim para SABnzbd\n"
|
||||
"## Este é um template Cheetah\n"
|
||||
"## Documentação: http://sabnzbd.wikidot.com/email-templates\n"
|
||||
"##\n"
|
||||
"## Novas linhas e espaços em branco são significativos!\n"
|
||||
"##\n"
|
||||
"## Estes são os cabeçalhos de e-mail\n"
|
||||
"To: $to\n"
|
||||
"From: $from\n"
|
||||
"Date: $date\n"
|
||||
"Subject: SABnzbd falhou ao buscar um NZB\n"
|
||||
"X-priority: 5\n"
|
||||
"X-MS-priority: 5\n"
|
||||
"## Depois daqui vem o corpo. A linha vazia é necessária!\n"
|
||||
"\n"
|
||||
"Olá,\n"
|
||||
"\n"
|
||||
"SABnzbd não conseguiu obter o NZB de $url.\n"
|
||||
"A mensagem de erro foi: $msg\n"
|
||||
"\n"
|
||||
"Tchau!\n"
|
||||
@@ -7,15 +7,15 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: sabnzbd\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2012-03-09 19:01+0000\n"
|
||||
"PO-Revision-Date: 2011-06-26 10:50+0000\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2012-04-28 12:01+0000\n"
|
||||
"PO-Revision-Date: 2012-04-16 03:32+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: 2012-03-11 05:02+0000\n"
|
||||
"X-Generator: Launchpad (build 14914)\n"
|
||||
"X-Launchpad-Export-Date: 2012-04-29 05:17+0000\n"
|
||||
"X-Generator: Launchpad (build 15149)\n"
|
||||
|
||||
#: email/email.tmpl:1
|
||||
msgid ""
|
||||
@@ -188,3 +188,25 @@ msgid ""
|
||||
"\n"
|
||||
"Bye\n"
|
||||
msgstr ""
|
||||
"##\n"
|
||||
"## Adresă URL Greşită şablon Email pentru SABnybd \n"
|
||||
"## Acesta este un şablon Cheetah\n"
|
||||
"## Documentaţie : http://sabnzbd.wikidot.com/email-templates\n"
|
||||
"##\n"
|
||||
"## Liniile noi şi spaţiile sunt importante!\n"
|
||||
"##\n"
|
||||
"## Acestea sunt headerele email\n"
|
||||
"Către: $to\n"
|
||||
"De la: $from\n"
|
||||
"Dată: $date\n"
|
||||
"Subiect: SABnzbd nu a reuşit să descarce un NZB\n"
|
||||
"X-priority: 5\n"
|
||||
"X-MS-priority: 5\n"
|
||||
"## După aceasta urmează corpul email, linia goală e necesară !\n"
|
||||
"\n"
|
||||
"Salut,\n"
|
||||
"\n"
|
||||
"SABnzbd nu a putut descărca NZB-ul de la adresa $url.\n"
|
||||
"Mesajul de eroare a fost: $msg\n"
|
||||
"\n"
|
||||
"La revedere!\n"
|
||||
|
||||
@@ -7,15 +7,15 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: sabnzbd\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2012-03-09 19:01+0000\n"
|
||||
"PO-Revision-Date: 2011-06-26 10:50+0000\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2012-04-28 12:01+0000\n"
|
||||
"PO-Revision-Date: 2012-05-15 19:28+0000\n"
|
||||
"Last-Translator: Andreas Lindberg <andypandyswe@gmail.com>\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: 2012-03-11 05:02+0000\n"
|
||||
"X-Generator: Launchpad (build 14914)\n"
|
||||
"X-Launchpad-Export-Date: 2012-05-16 05:28+0000\n"
|
||||
"X-Generator: Launchpad (build 15247)\n"
|
||||
|
||||
#: email/email.tmpl:1
|
||||
msgid ""
|
||||
@@ -64,9 +64,7 @@ msgid ""
|
||||
"Sorry!\n"
|
||||
"<!--#end if#-->\n"
|
||||
msgstr ""
|
||||
"#encoding UTF-8\n"
|
||||
"## Translation by \"Kristoffer (Malmis) Malmström\" <malmis@malmis.com>\n"
|
||||
"##\n"
|
||||
"## Translation by Andreas Lindberg andypandyswe@gmail.com\n"
|
||||
"## Default Email template for SABnzbd\n"
|
||||
"## This a Cheetah template\n"
|
||||
"## Documentation: http://sabnzbd.wikidot.com/email-templates\n"
|
||||
@@ -74,29 +72,29 @@ msgstr ""
|
||||
"## Newlines and whitespace are significant!\n"
|
||||
"##\n"
|
||||
"## These are the email headers\n"
|
||||
"To: $to\n"
|
||||
"From: $from\n"
|
||||
"Date: $date\n"
|
||||
"Subject: SABnzbd har <!--#if $status then \"completed\" else \"failed\" #--> "
|
||||
"jobb $name\n"
|
||||
"Till: $to\n"
|
||||
"Från: $from\n"
|
||||
"Datum: $date\n"
|
||||
"Ämne: SABnzbd has <!--#if $status then \"completed\" else \"failed\" #--> "
|
||||
"job $name\n"
|
||||
"X-priority: 5\n"
|
||||
"X-MS-priority: 5\n"
|
||||
"## After this comes the body, the empty line is required!\n"
|
||||
"\n"
|
||||
"Hej,\n"
|
||||
"<!--#if $status #-->\n"
|
||||
"SABnzbd har laddat ner \"$name\" <!--#if $msgid==\"\" then \"\" else "
|
||||
"SABnzbd har laddat ned \"$name\" <!--#if $msgid==\"\" then \"\" else "
|
||||
"\"(newzbin #\" + $msgid + \")\"#-->\n"
|
||||
"<!--#else#-->\n"
|
||||
"SABnzbd misslyckades att ladda ner \"$name\" <!--#if $msgid==\"\" then \"\" "
|
||||
"else \"(newzbin #\" + $msgid + \")\"#-->\n"
|
||||
"SABnzbd misslyckades med att ladda ned \"$name\" <!--#if $msgid==\"\" then "
|
||||
"\"\" else \"(newzbin #\" + $msgid + \")\"#-->\n"
|
||||
"<!--#end if#-->\n"
|
||||
"Slutade $end_time\n"
|
||||
"Färdig $end_time\n"
|
||||
"Nedladdat $size\n"
|
||||
"\n"
|
||||
"Resulttat av jobbet:\n"
|
||||
"Resultat:\n"
|
||||
"<!--#for $stage in $stages #-->\n"
|
||||
"Steg $stage <!--#slurp#-->\n"
|
||||
"Stage $stage <!--#slurp#-->\n"
|
||||
"<!--#for $result in $stages[$stage]#-->\n"
|
||||
" $result <!--#slurp#-->\n"
|
||||
"<!--#end for#-->\n"
|
||||
@@ -108,7 +106,7 @@ msgstr ""
|
||||
"<!--#if $status #-->\n"
|
||||
"Lycka till!\n"
|
||||
"<!--#else#-->\n"
|
||||
"Tyvärr!\n"
|
||||
"Beklagar!\n"
|
||||
"<!--#end if#-->\n"
|
||||
|
||||
#: email/rss.tmpl:1
|
||||
@@ -139,6 +137,31 @@ msgid ""
|
||||
"\n"
|
||||
"Bye\n"
|
||||
msgstr ""
|
||||
"##\n"
|
||||
"## RSS Email template for SABnzbd\n"
|
||||
"## This a Cheetah template\n"
|
||||
"## Documentation: http://sabnzbd.wikidot.com/email-templates\n"
|
||||
"##\n"
|
||||
"## Newlines and whitespace are significant!\n"
|
||||
"##\n"
|
||||
"## These are the email headers\n"
|
||||
"Till: $to\n"
|
||||
"Från: $from\n"
|
||||
"Datum: $date\n"
|
||||
"Ämne: SABnzbd har lagt till $amount jobb i kön\n"
|
||||
"X-priority: 5\n"
|
||||
"X-MS-priority: 5\n"
|
||||
"## After this comes the body, the empty line is required!\n"
|
||||
"\n"
|
||||
"Hej,\n"
|
||||
"\n"
|
||||
"SABnzbd har lagt till $amount jobb i kön.\n"
|
||||
"De kommer från RSS feed \"$feed\".\n"
|
||||
"<!--#for $job in $jobs#-->\n"
|
||||
" $job <!--#slurp#-->\n"
|
||||
"<!--#end for#-->\n"
|
||||
"\n"
|
||||
"Hej då\n"
|
||||
|
||||
#: email/badfetch.tmpl:1
|
||||
msgid ""
|
||||
@@ -165,3 +188,25 @@ msgid ""
|
||||
"\n"
|
||||
"Bye\n"
|
||||
msgstr ""
|
||||
"##\n"
|
||||
"## Bad URL Fetch Email template for SABnzbd\n"
|
||||
"## This a Cheetah template\n"
|
||||
"## Documentation: http://sabnzbd.wikidot.com/email-templates\n"
|
||||
"##\n"
|
||||
"## Newlines and whitespace are significant!\n"
|
||||
"##\n"
|
||||
"## These are the email headers\n"
|
||||
"Till: $to\n"
|
||||
"Från: $from\n"
|
||||
"Datum: $date\n"
|
||||
"Ämne: SABnzbd misslyckades med att hämta en NZB -fil\n"
|
||||
"X-priority: 5\n"
|
||||
"X-MS-priority: 5\n"
|
||||
"## After this comes the body, the empty line is required!\n"
|
||||
"\n"
|
||||
"Hej,\n"
|
||||
"\n"
|
||||
"SABnzbd har misslyckats med att hämta NZB -filen från $url.\n"
|
||||
"Felmeddelandet lyder: $msg\n"
|
||||
"\n"
|
||||
"Hej då\n"
|
||||
|
||||