From f9b348ace798b6fbc890e583ee6bfd0bf4976d44 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Louis=20V=C3=A9zina?= <5130500+morpheus65535@users.noreply.github.com> Date: Wed, 29 May 2019 23:45:33 -0400 Subject: [PATCH] Improvement to settings and wizard template to reuse providers instead of duplicating everything and also to simplify new development. --- static/js/settings_validation.js | 174 ++ static/js/wizard_validation.js | 156 ++ views/providers.tpl | 753 ++++++++ views/settings.tpl | 2990 +----------------------------- views/settings_general.tpl | 834 +++++++++ views/settings_notifications.tpl | 72 + views/settings_radarr.tpl | 198 ++ views/settings_sonarr.tpl | 200 ++ views/settings_subtitles.tpl | 726 ++++++++ views/wizard.tpl | 2017 +------------------- views/wizard_general.tpl | 231 +++ views/wizard_radarr.tpl | 204 ++ views/wizard_sonarr.tpl | 204 ++ views/wizard_subtitles.tpl | 387 ++++ 14 files changed, 4225 insertions(+), 4921 deletions(-) create mode 100644 static/js/settings_validation.js create mode 100644 static/js/wizard_validation.js create mode 100644 views/providers.tpl create mode 100644 views/settings_general.tpl create mode 100644 views/settings_notifications.tpl create mode 100644 views/settings_radarr.tpl create mode 100644 views/settings_sonarr.tpl create mode 100644 views/settings_subtitles.tpl create mode 100644 views/wizard_general.tpl create mode 100644 views/wizard_radarr.tpl create mode 100644 views/wizard_sonarr.tpl create mode 100644 views/wizard_subtitles.tpl diff --git a/static/js/settings_validation.js b/static/js/settings_validation.js new file mode 100644 index 000000000..a3da8b271 --- /dev/null +++ b/static/js/settings_validation.js @@ -0,0 +1,174 @@ +$('#settings_form') + .form({ + fields: { + settings_general_ip : { + rules : [ + { + type : 'regExp[/^((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/]', + prompt : '"General / Start-Up / Listening IP address" must be a valid IPv4 address' + }, + { + type : 'empty', + prompt : '"General / Start-Up / Listening IP address" must have a value' + } + ] + }, + settings_general_port : { + rules : [ + { + type : 'integer[1..65535]', + prompt : '"General / Start-Up / Listening port" must be an integer between 1 and 65535' + }, + { + type : 'empty', + prompt : '"General / Start-Up / Listening port" must have a value' + } + ] + }, + settings_general_chmod: { + rules: [ + { + type: 'regExp[^([0-7]{4})$]', + prompt : '"General / Start-Up / Set subtitle file permissions to" must be a 4-digit octal (e.g.: 0775)' + } + ] + }, + settings_auth_password : { + depends: 'settings_auth_username', + rules : [ + { + type : 'empty', + prompt : '"General / Security settings / Password" must have a value and you must type it again if you change your username.' + } + ] + }, + sonarr_validated_checkbox : { + depends: 'settings_general_use_sonarr', + rules : [ + { + type : 'checked', + prompt : '"Sonarr / Connection settings / Test" must be successful before going further' + } + ] + }, + settings_sonarr_ip : { + depends: 'settings_general_use_sonarr', + rules : [ + { + type : 'empty', + prompt : '"Sonarr / Connection settings / Hostname or IP address" must have a value' + } + ] + }, + settings_sonarr_port : { + depends: 'settings_general_use_sonarr', + rules : [ + { + type : 'integer[1..65535]', + prompt : '"Sonarr / Connection settings / Listening port" must be an integer between 1 and 65535' + }, + { + type : 'empty', + prompt : '"Sonarr / Connection settings / Listening port" must have a value' + } + ] + }, + settings_sonarr_apikey : { + depends: 'settings_general_use_sonarr', + rules : [ + { + type : 'exactLength[32]', + prompt : '"Sonarr / Connection settings / API key" must be exactly {ruleValue} characters' + }, + { + type : 'empty', + prompt : '"Sonarr / Connection settings / API key" must have a value' + } + ] + }, + radarr_validated_checkbox : { + depends: 'settings_general_use_radarr', + rules : [ + { + type : 'checked', + prompt : '"Radarr / Connection settings / Test" must be successful before going further' + } + ] + }, + settings_radarr_ip : { + depends: 'settings_general_use_radarr', + rules : [ + { + type : 'empty', + prompt : '"Radarr / Connection settings / Hostname or IP address" must have a value' + } + ] + }, + settings_radarr_port : { + depends: 'settings_general_use_radarr', + rules : [ + { + type : 'integer[1..65535]', + prompt : '"Radarr / Connection settings / Listening port" must be an integer between 1 and 65535' + }, + { + type : 'empty', + prompt : '"Radarr / Connection settings / Listening port" must have a value' + } + ] + }, + settings_radarr_apikey : { + depends: 'settings_general_use_radarr', + rules : [ + { + type : 'exactLength[32]', + prompt : '"Radarr / Connection settings / API key" must be exactly {ruleValue} characters' + }, + { + type : 'empty', + prompt : '"Radarr / Connection settings / API key" must have a value' + } + ] + }, + settings_subliminal_providers : { + rules : [ + { + type : 'minCount[1]', + prompt : '"Subtitles / Subtitles providers" must have at least one enabled provider' + } + ] + }, + settings_subliminal_languages : { + rules : [ + { + type : 'minCount[1]', + prompt : '"Subtitles / Subtitles languages / Enabled languages" must have at least one enabled language' + } + ] + }, + settings_days_to_upgrade_subs : { + depends: 'settings_upgrade_subs', + rules : [ + { + type : 'integer[1..30]', + prompt : '"Subtitles / Subtitles options / Number of days to go back in history..." must be an integer between 1 and 30' + } + ] + } + }, + inline : false, + selector : { + message: '#form_validation_error' + }, + on : 'change', + onFailure: function(){ + $('.submit').addClass('disabled'); + return false; + }, + onSuccess: function(){ + $('.submit').removeClass('disabled'); + $('#loader').addClass('active'); + } + }) +; + diff --git a/static/js/wizard_validation.js b/static/js/wizard_validation.js new file mode 100644 index 000000000..bb9b50299 --- /dev/null +++ b/static/js/wizard_validation.js @@ -0,0 +1,156 @@ +$('#wizard_form') + .form({ + fields: { + settings_general_ip : { + rules : [ + { + type : 'regExp[/^((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/]', + prompt : '"General / Start-Up / Listening IP address" must be a valid IPv4 address' + }, + { + type : 'empty', + prompt : '"General / Start-Up / Listening IP address" must have a value' + } + ] + }, + settings_general_port : { + rules : [ + { + type : 'integer[1..65535]', + prompt : '"General / Start-Up / Listening port" must be an integer between 1 and 65535' + }, + { + type : 'empty', + prompt : '"General / Start-Up / Listening port" must have a value' + } + ] + }, + sonarr_validated_checkbox : { + depends: 'settings_general_use_sonarr', + rules : [ + { + type : 'checked', + prompt : '"Sonarr / Connection settings / Test" must be successful before going further' + } + ] + }, + settings_sonarr_ip : { + depends: 'settings_general_use_sonarr', + rules : [ + { + type : 'empty', + prompt : '"Sonarr / Connection settings / Hostname or IP address" must have a value' + } + ] + }, + settings_sonarr_port : { + depends: 'settings_general_use_sonarr', + rules : [ + { + type : 'integer[1..65535]', + prompt : '"Sonarr / Connection settings / Listening port" must be an integer between 1 and 65535' + }, + { + type : 'empty', + prompt : '"Sonarr / Connection settings / Listening port" must have a value' + } + ] + }, + settings_sonarr_apikey : { + depends: 'settings_general_use_sonarr', + rules : [ + { + type : 'exactLength[32]', + prompt : '"Sonarr / Connection settings / API key" must be exactly {ruleValue} characters' + }, + { + type : 'empty', + prompt : '"Sonarr / Connection settings / API key" must have a value' + } + ] + }, + radarr_validated_checkbox : { + depends: 'settings_general_use_radarr', + rules : [ + { + type : 'checked', + prompt : '"Radarr / Connection settings / Test" must be successful before going further' + } + ] + }, + settings_radarr_ip : { + depends: 'settings_general_use_radarr', + rules : [ + { + type : 'empty', + prompt : '"Radarr / Connection settings / Hostname or IP address" must have a value' + } + ] + }, + settings_radarr_port : { + depends: 'settings_general_use_radarr', + rules : [ + { + type : 'integer[1..65535]', + prompt : '"Radarr / Connection settings / Listening port" must be an integer between 1 and 65535' + }, + { + type : 'empty', + prompt : '"Radarr / Connection settings / Listening port" must have a value' + } + ] + }, + settings_radarr_apikey : { + depends: 'settings_general_use_radarr', + rules : [ + { + type : 'exactLength[32]', + prompt : '"Radarr / Connection settings / API key" must be exactly {ruleValue} characters' + }, + { + type : 'empty', + prompt : '"Radarr / Connection settings / API key" must have a value' + } + ] + }, + settings_subliminal_providers : { + rules : [ + { + type : 'minCount[1]', + prompt : '"Subtitles / Subtitles providers" must have at least one enabled provider' + } + ] + }, + settings_subliminal_languages : { + rules : [ + { + type : 'minCount[1]', + prompt : '"Subtitles / Subtitles languages / Enabled languages" must have at least one enabled language' + } + ] + } + }, + inline : false, + selector : { + message: '#form_validation_error' + }, + on : 'change', + onFailure: function(){ + $('#submit').addClass('disabled'); + $('.prev2').addClass('disabled'); + $('.prev3').addClass('disabled'); + $('.next2').addClass('disabled'); + $('.next3').addClass('disabled'); + + + return false; + }, + onSuccess: function(){ + $('#submit').removeClass('disabled'); + $('.prev2').removeClass('disabled'); + $('.prev3').removeClass('disabled'); + $('.next2').removeClass('disabled'); + $('.next3').removeClass('disabled'); + } + }) +; \ No newline at end of file diff --git a/views/providers.tpl b/views/providers.tpl new file mode 100644 index 000000000..dad93b014 --- /dev/null +++ b/views/providers.tpl @@ -0,0 +1,753 @@ +
Subtitles providers
+
+
+
+
+ +
+
+
+ + +
+
+
+
+
+
+ +
+
+
+ +
+
+
+
+
+ +
+
+
+ +
+
+
+
+
+ +
+
+
+ + +
+
+ +
+
+ +
+
+ +
+
+
+ + +
+
+ +
+
+ +
+ +
+
+ +
+
+
+ + +
+
+ +
+
+
+
+ +
+
+
+ +
+
+
+
+ +
+
+ +
+
+
+ + +
+
+ +
+
+ +
+ +
+
+ +
+
+
+ + +
+
+ +
+
+ +
+ +
+
+ +
+
+
+ + +
+
+ +
+
+ +
+ +
+
+ +
+
+
+ + +
+
+ +
+
+
+
+ +
+
+
+ +
+
+
+
+
+ +
+
+
+ +
+
+
+
+ +
+
+ +
+
+
+ + +
+
+ +
+
+ +
+ +
+
+ +
+
+
+ + +
+
+ +
+
+
+
+ +
+
+
+ +
+
+ +
+
+
+ +
+
+
+ +
+
+
+
+ +
+
+ +
+
+
+ + +
+
+
+
+
+
+ +
+
+
+ +
+
+
+
+
+ +
+
+
+ +
+
+
+
+
+ +
+
+
+ + +
+
+ +
+
+
+ +
+
+
+ + +
+
+ +
+
+
+ +
+
+
+ + +
+
+ +
+
+ +
+
+ +
+
+
+ + +
+
+
+
+ +
+ +
+
+ +
+
+
+ + +
+
+ +
+
+ +
+ +
+
+ +
+
+
+ + +
+
+ +
+
+ +
+ +
+
+ +
+
+
+ + +
+
+
+
+ +
+ +
+
+ +
+
+
+ + +
+
+
+
+ +
+ +
+
+ +
+
+
+ + +
+
+ +
+
+ +
+ +
+
+ +
+
+
+ + +
+
+ +
+
+ +
+ +
+
+ +
+
+
+ + +
+
+ +
+
+ +
+ +
+
+ +
+
+
+ + +
+
+ +
+
+ +
+ +
+
+ +
+
+
+ + +
+
+ +
+
+ +
+ +
+
+ +
+
+
+ + +
+
+
+
+ +
+ +
+
+ +
+
+
+ + +
+
+
+
+ +
+ +
+
+ +
+
+
+ + +
+
+
+
+ +
+ +
+
+ +
+
+
+ + +
+
+ +
+
+
+
+ +
+
+
+ +
+
+
+
+
+ +
+
+
+ +
+
+
+
+ +
+
+ +
+
+
+ + +
+
+ +
+
+ +
+ +
+
+ +
+
+
+
+ + \ No newline at end of file diff --git a/views/settings.tpl b/views/settings.tpl index 0d7c3638a..ea739f4cf 100644 --- a/views/settings.tpl +++ b/views/settings.tpl @@ -53,2205 +53,28 @@ General Sonarr Radarr - Subliminal + Subtitles Notifications
-
Start-Up
-
-
-
-
- -
-
-
-
- -
-
-
- - - -
- -
-
- -
-
-
-
- -
-
-
- - - -
- -
-
- -
-
-
- %if settings.general.base_url is None: - % base_url = "/" - %else: - % base_url = settings.general.base_url - %end - -
-
- - - -
- -
-
- -
-
-
- - -
-
- -
-
-
- -
-
-
- - -
-
-
-
-
- -
-
-
-
- - -
-
-
- -
- -
-
- -
-
- -
- - -
-
-
- -
Proxy settings
-
-
- -
-
- -
-
- -
- - - - -
- -
-
- -
-
-
-
- -
-
-
-
- -
-
- -
-
-
-
- -
-
-
-
- -
-
- -
-
-
-
- -
-
-
- - -
- -
-
- -
-
-
-
- -
-
-
- - - -
- -
-
- -
-
-
-
- -
-
-
- - - -
-
-
- -
Security settings
-
-
-
-
- -
-
- - -
- - - - - -
- -
-
- -
-
-
-
- -
-
-
-
- -
-
- -
-
-
-
- -
-
-
- - -
-
-
- -
Integration settings
-
-
-
-
- -
-
-
- - -
-
- -
- -
-
- -
-
-
- - -
-
- -
-
-
- -
Path Mappings for shows
-
-
- %import ast - %if settings.general.path_mappings is not None: - % path_substitutions = ast.literal_eval(settings.general.path_mappings) - %else: - % path_substitutions = [] - %end -
-
- -
-
-
-

- Path for Sonarr: -

-
-
- -
- -
-
-
-

- Path for Bazarr: -

-
-
- -
- %for x in range(0, 5): - % path = [] - % try: - % path = path_substitutions[x] - % except IndexError: - % path = ["", ""] - % end -
-
- -
-
-
- -
-
-
- -
-
-
- -
-
-
- %end -
-
- -
Path Mappings for movies
-
-
- %import ast - %if settings.general.path_mappings_movie is not None: - % path_substitutions_movie = ast.literal_eval(settings.general.path_mappings_movie) - %else: - % path_substitutions_movie = [] - %end -
-
- -
-
-
-

- Path for Radarr: -

-
-
- -
- -
-
-
-

- Path for Bazarr: -

-
-
- -
- %for x in range(0, 5): - % path_movie = [] - % try: - % path_movie = path_substitutions_movie[x] - % except IndexError: - % path_movie = ["", ""] - % end -
-
- -
-
-
- -
-
-
- -
-
-
- -
-
-
- %end -
-
- -
Post-processing
-
-
-

Be aware that the execution of post-processing command will prevent the user interface from being accessible until completion when downloading subtitles in interactive mode (meaning you'll see a loader during post-processing).

-
-
-
-
- -
-
-
- - -
-
- -
- -
-
- -
-
-
- -
-
-
- -
-
- -
-
-
-
-
{{directory}}
- The full path of the episode file parent directory. -
-
-
{{episode}}
- The full path of the episode file. -
-
-
{{episode_name}}
- The filename of the episode without parent directory or extension. -
-
-
{{subtitles}}
- The full path of the subtitles file. -
-
-
{{subtitles_language}}
- The language of the subtitles file. -
-
-
{{subtitles_language_code2}}
- The 2-letter ISO-639 language code of the subtitles language. -
-
-
{{subtitles_language_code3}}
- The 3-letter ISO-639 language code of the subtitles language. -
-
-
-
-
-
- -
-
Updates
-
-
-
-
- -
-
- -
- -
- -
-
- -
-
-
- - -
-
- -
- -
-
- -
-
-
- - -
-
- -
-
-
-
+ % include('settings_general.tpl')
-
Connection settings
-
-
-
-
- -
-
- -
-
-
- - -
-
-
- -
-
- -
-
-
-
- -
-
-
- -
- -
-
- -
-
-
-
- -
-
-
- -
- -
-
- -
-
-
- -
-
- -
- -
-
- -
-
-
- - -
-
-
- -
-
- -
-
-
-
- -
-
-
- -
- -
-
- -
-
-
- - -
-
- -
- -
-
- -
Synchronization
-
-
-
-
- -
-
-
- -
-
-
-
-
+ % include('settings_sonarr.tpl')
-
Connection settings
-
-
-
-
- -
-
- -
-
-
- - -
-
-
- -
-
- -
-
-
-
- -
-
-
- -
- -
-
- -
-
-
-
- -
-
-
- -
- -
-
- -
-
-
- -
-
- -
- -
-
- -
-
-
- - -
-
-
- -
-
- -
-
-
-
- -
-
-
- -
- -
-
- -
-
-
- - -
-
- -
- -
-
- -
Synchronization
-
-
-
-
- -
-
-
- -
-
-
-
-
+ % include('settings_radarr.tpl')
-
+
-


-
-
-

Thanks to Diaoul for his work on Subliminal on which Bazarr is based.

-
-
-
Subtitles options
-
-
-
-
- -
-
-
- - -
-
- -
- -
-
- -
-
-
-
- -
-
-
- -
- -
-
- -
-
-
-
- -
-
-
- -
- -
-
- -
-
- -
- - -
- -
-
-
- -
-
-
-
- -
-
-
- - -
- -
-
- -
-
-
- - -
-
- - -
- -
-
-
- -
-
-
-
- -
-
-
-
- -
-
-
- -
-
-
- - -
-
- - -
- -
-
- -
-
-
- - -
-
- -
- -
-
- -
-
-
- - -
-
- -
- -
-
- -
-
-
- - -
-
- -
- -
-
- -
-
-
- - -
-
- -
-
-
- -
Anti-captcha options
-
-
-
-
- -
-
- -
- - -
- -
-
-
- -
- -
- -
-
-
- -
-
-
-
- -
-
-
-
- -
-
-
- -
- -
- -
-
-
- -
-
-
-
- -
-
-
-
- -
-
-
- -
-
-
-
- -
-
-
-
-
-
- -
Subtitles providers
-
-
-
-
- -
-
-
- - -
-
-
-
-
-
- -
-
-
- -
-
-
-
-
- -
-
-
- -
-
-
-
-
- -
-
-
- - -
-
- -
-
- -
-
- -
-
-
- - -
-
- -
-
- -
- -
-
- -
-
-
- - -
-
- -
-
-
-
- -
-
-
- -
-
-
-
- -
-
- -
-
-
- - -
-
- -
-
- -
- -
-
- -
-
-
- - -
-
- -
-
- -
- -
-
- -
-
-
- - -
-
- -
-
- -
- -
-
- -
-
-
- - -
-
- -
-
-
-
- -
-
-
- -
-
-
-
-
- -
-
-
- -
-
-
-
- -
-
- -
-
-
- - -
-
- -
-
- -
- -
-
- -
-
-
- - -
-
- -
-
-
-
- -
-
-
- -
-
- -
-
-
- -
-
-
- -
-
-
-
- -
-
- -
-
-
- - -
-
-
-
-
-
- -
-
-
- -
-
-
-
-
- -
-
-
- -
-
-
-
-
- -
-
-
- - -
-
- -
-
-
- -
-
-
- - -
-
- -
-
-
- -
-
-
- - -
-
- -
-
- -
-
- -
-
-
- - -
-
-
-
- -
- -
-
- -
-
-
- - -
-
- -
-
- -
- -
-
- -
-
-
- - -
-
- -
-
- -
- -
-
- -
-
-
- - -
-
-
-
- -
- -
-
- -
-
-
- - -
-
-
-
- -
- -
-
- -
-
-
- - -
-
- -
-
- -
- -
-
- -
-
-
- - -
-
- -
-
- -
- -
-
- -
-
-
- - -
-
- -
-
- -
- -
-
- -
-
-
- - -
-
- -
-
- -
- -
-
- -
-
-
- - -
-
- -
-
- -
- -
-
- -
-
-
- - -
-
-
-
- -
- -
-
- -
-
-
- - -
-
-
-
- -
- -
-
- -
-
-
- - -
-
-
-
- -
- -
-
- -
-
-
- - -
-
- -
-
-
-
- -
-
-
- -
-
-
-
-
- -
-
-
- -
-
-
-
- -
-
- -
-
-
- - -
-
- -
-
- -
- -
-
- -
-
-
-
-
Subtitles languages
-
-
-
-
- -
-
-
- - -
-
- -
- -
-
- -
-
-
- -
-
-
-
-
- -
Series default settings
-
-
-
-
- -
-
-
-
- - -
-
-
- -
- -
-
- -
-
-
- -
-
-
- -
-
- -
-
-
-
- - -
-
-
-
-
-
- -
Movies default settings
-
-
-
-
- -
-
-
-
- - -
-
-
- -
- -
-
- -
-
-
- -
-
-
- -
-
- -
-
-
-
- - -
-
-
-
-
-
+ % include('settings_subtitles.tpl')
-
Notifications settings
-
-
-

Thanks to caronc for his work on apprise on which is based the notifications system.

-
-
-

Please follow instructions on his wiki to configure your notifications providers.

-
-
- %for notifier in settings_notifier: -
-
- -
-
-
- - -
-
-
-
-
- -
Test Notification
-
-
-
-
- %end -
-
+ % include('settings_notifications.tpl')
@@ -2259,6 +82,7 @@ + diff --git a/views/settings_general.tpl b/views/settings_general.tpl new file mode 100644 index 000000000..431a987dd --- /dev/null +++ b/views/settings_general.tpl @@ -0,0 +1,834 @@ +
Start-Up
+
+
+
+
+ +
+
+
+
+ +
+
+
+ + + +
+ +
+
+ +
+
+
+
+ +
+
+
+ + + +
+ +
+
+ +
+
+
+ %if settings.general.base_url is None: + % base_url = "/" + %else: + % base_url = settings.general.base_url + %end + +
+
+ + + +
+ +
+
+ +
+
+
+ + +
+
+ +
+
+
+ +
+
+
+ + +
+
+
+
+
+ +
+
+
+
+ + +
+
+
+ +
+ +
+
+ +
+
+ +
+ + +
+
+
+ +
Proxy settings
+
+
+
+
+ +
+
+ +
+ + + + +
+ +
+
+ +
+
+
+
+ +
+
+
+
+ +
+
+ +
+
+
+
+ +
+
+
+
+ +
+
+ +
+
+
+
+ +
+
+
+ + +
+ +
+
+ +
+
+
+
+ +
+
+
+ + + +
+ +
+
+ +
+
+
+
+ +
+
+
+ + +
+
+
+ +
Security settings
+
+
+
+
+ +
+
+ + +
+ + + + +
+ +
+
+ +
+
+
+
+ +
+
+
+
+ +
+
+ +
+
+
+
+ +
+
+
+ + +
+
+
+ +
Integration settings
+
+
+
+
+ +
+
+
+ + +
+
+ +
+ +
+
+ +
+
+
+ + +
+
+ +
+
+
+ +
Path Mappings for shows
+
+
+ %import ast + %if settings.general.path_mappings is not None: + % path_substitutions = ast.literal_eval(settings.general.path_mappings) + %else: + % path_substitutions = [] + %end +
+
+ +
+
+
+

+ Path for Sonarr: +

+
+
+ +
+ +
+
+
+

+ Path for Bazarr: +

+
+
+ +
+ %for x in range(0, 5): + % path = [] + % try: + % path = path_substitutions[x] + % except IndexError: + % path = ["", ""] + % end +
+
+ +
+
+
+ +
+
+
+ +
+
+
+ +
+
+
+ %end +
+
+ +
Path Mappings for movies
+
+
+ %import ast + %if settings.general.path_mappings_movie is not None: + % path_substitutions_movie = ast.literal_eval(settings.general.path_mappings_movie) + %else: + % path_substitutions_movie = [] + %end +
+
+ +
+
+
+

+ Path for Radarr: +

+
+
+ +
+ +
+
+
+

+ Path for Bazarr: +

+
+
+ +
+ %for x in range(0, 5): + % path_movie = [] + % try: + % path_movie = path_substitutions_movie[x] + % except IndexError: + % path_movie = ["", ""] + % end +
+
+ +
+
+
+ +
+
+
+ +
+
+
+ +
+
+
+ %end +
+
+ +
Post-processing
+
+
+

Be aware that the execution of post-processing command will prevent the user interface from being accessible until completion when downloading subtitles in interactive mode (meaning you'll see a loader during post-processing).

+
+
+
+
+ +
+
+
+ + +
+
+ +
+ +
+
+ +
+
+
+ +
+
+
+ +
+
+ +
+
+
+
+
{{directory}}
+ The full path of the episode file parent directory. +
+
+
{{episode}}
+ The full path of the episode file. +
+
+
{{episode_name}}
+ The filename of the episode without parent directory or extension. +
+
+
{{subtitles}}
+ The full path of the subtitles file. +
+
+
{{subtitles_language}}
+ The language of the subtitles file. +
+
+
{{subtitles_language_code2}}
+ The 2-letter ISO-639 language code of the subtitles language. +
+
+
{{subtitles_language_code3}}
+ The 3-letter ISO-639 language code of the subtitles language. +
+
+
+
+
+
+ +
+
Updates
+
+
+
+
+ +
+
+ +
+ +
+ +
+
+ +
+
+
+ + +
+
+ +
+ +
+
+ +
+
+
+ + +
+
+ +
+
+
+
+ + \ No newline at end of file diff --git a/views/settings_notifications.tpl b/views/settings_notifications.tpl new file mode 100644 index 000000000..0c2de8002 --- /dev/null +++ b/views/settings_notifications.tpl @@ -0,0 +1,72 @@ +
Notifications settings
+
+
+

Thanks to caronc for his work on apprise on which is based the notifications system.

+
+
+

Please follow instructions on his wiki to configure your notifications providers.

+
+
+ %for notifier in settings_notifier: +
+
+ +
+
+
+ + +
+
+
+
+
+ +
Test Notification
+
+
+
+
+ %end +
+
+ + \ No newline at end of file diff --git a/views/settings_radarr.tpl b/views/settings_radarr.tpl new file mode 100644 index 000000000..c3eac5fdf --- /dev/null +++ b/views/settings_radarr.tpl @@ -0,0 +1,198 @@ +
Connection settings
+
+
+
+
+ +
+
+ +
+
+
+ + +
+
+
+ +
+
+ +
+
+
+
+ +
+
+
+ +
+ +
+
+ +
+
+
+
+ +
+
+
+ +
+ +
+
+ +
+
+
+ +
+
+ +
+ +
+
+ +
+
+
+ + +
+
+
+ +
+
+ +
+
+
+
+ +
+
+
+ +
+ +
+
+ +
+
+
+ + +
+
+ +
+
+
+ +
Synchronization
+
+
+
+
+ +
+
+
+ +
+
+
+
+
+ + \ No newline at end of file diff --git a/views/settings_sonarr.tpl b/views/settings_sonarr.tpl new file mode 100644 index 000000000..0f5c85844 --- /dev/null +++ b/views/settings_sonarr.tpl @@ -0,0 +1,200 @@ +
Connection settings
+
+
+
+
+ +
+
+ +
+
+
+ + +
+
+
+ +
+
+ +
+
+
+
+ +
+
+
+ +
+ +
+
+ +
+
+
+
+ +
+
+
+ +
+ +
+
+ +
+
+
+ +
+
+ +
+ +
+
+ +
+
+
+ + +
+
+
+ +
+
+ +
+
+
+
+ +
+
+
+ +
+ +
+
+ +
+
+
+ + +
+
+ +
+
+
+ +
Synchronization
+
+
+
+
+ +
+
+
+ +
+
+
+
+
+ + \ No newline at end of file diff --git a/views/settings_subtitles.tpl b/views/settings_subtitles.tpl new file mode 100644 index 000000000..e6fc91885 --- /dev/null +++ b/views/settings_subtitles.tpl @@ -0,0 +1,726 @@ +
Subtitles options
+
+
+
+
+ +
+
+
+ + +
+
+ +
+ +
+
+ +
+
+
+
+ +
+
+
+ +
+ +
+
+ +
+
+
+
+ +
+
+
+ +
+ +
+
+ +
+
+ +
+ + +
+ +
+
+
+ +
+
+
+
+ +
+
+
+ + +
+ +
+
+ +
+
+
+ + +
+
+ + +
+ +
+
+
+ +
+
+
+
+ +
+
+
+
+ +
+
+
+ +
+
+
+ + +
+
+ + +
+ +
+
+ +
+
+
+ + +
+
+ +
+ +
+
+ +
+
+
+ + +
+
+ +
+ +
+
+ +
+
+
+ + +
+
+ +
+ +
+
+ +
+
+
+ + +
+
+ +
+
+
+ +
Anti-captcha options
+
+
+
+
+ +
+
+ +
+ + +
+ +
+
+
+ +
+ +
+ +
+
+
+ +
+
+
+
+ +
+
+
+
+ +
+
+
+ +
+ +
+ +
+
+
+ +
+
+
+
+ +
+
+
+
+ +
+
+
+ +
+
+
+
+ +
+
+
+
+
+
+ + % include('providers.tpl') + +
Subtitles languages
+
+
+
+
+ +
+
+
+ + +
+
+ +
+ +
+
+ +
+
+
+ +
+
+
+
+
+ +
Series default settings
+
+
+
+
+ +
+
+
+
+ + +
+
+
+ +
+ +
+
+ +
+
+
+ +
+
+
+ +
+
+ +
+
+
+
+ + +
+
+
+
+
+
+ +
Movies default settings
+
+
+
+
+ +
+
+
+
+ + +
+
+
+ +
+ +
+
+ +
+
+
+ +
+
+
+ +
+
+ +
+
+
+
+ + +
+
+
+
+
+
+ + \ No newline at end of file diff --git a/views/wizard.tpl b/views/wizard.tpl index 95b2d8051..d8583376f 100644 --- a/views/wizard.tpl +++ b/views/wizard.tpl @@ -68,11 +68,11 @@
General settings
-
+
-
Subliminal
-
Subliminal settings
+
Subtitles
+
Subtitles settings
@@ -95,235 +95,10 @@ Next
-
Start-Up
-
-
-
-
- -
-
-
-
- -
-
-
- - -
- -
-
- -
-
-
-
- -
-
-
- - - -
- -
-
- -
-
-
- %if settings.general.base_url is None: - % base_url = "/" - %else: - % base_url = settings.general.base_url - %end - -
-
- - - -
-
-
- -
Path Mappings for shows
-
-
- %import ast - %if settings.general.path_mappings is not None: - % path_substitutions = ast.literal_eval(settings.general.path_mappings) - %else: - % path_substitutions = [] - %end -
-
- -
-
-
-

- Path for Sonarr: -

-
-
- -
- -
-
-
-

- Path for Bazarr: -

-
-
- -
- %for x in range(0, 5): - % path = [] - % try: - % path = path_substitutions[x] - % except IndexError: - % path = ["", ""] - % end -
-
- -
-
-
- -
-
-
- -
-
-
- -
-
-
- %end -
-
- -
Path Mappings for movies
-
-
- %import ast - %if settings.general.path_mappings_movie is not None: - % path_substitutions_movie = ast.literal_eval(settings.general.path_mappings_movie) - %else: - % path_substitutions_movie = [] - %end -
-
- -
-
-
-

- Path for Radarr: -

-
-
- -
- -
-
-
-

- Path for Bazarr: -

-
-
- -
- %for x in range(0, 5): - % path_movie = [] - % try: - % path_movie = path_substitutions_movie[x] - % except IndexError: - % path_movie = ["", ""] - % end -
-
- -
-
-
- -
-
-
- -
-
-
- -
-
-
- %end -
-
+ % include('wizard_general.tpl')
-
+
-
Subtitles options
-
-
- -
-
- -
-
- -
- - -
- -
-
-
- -
-
-
-
- -
-
-
- - -
- -
-
- -
-
-
- - -
-
- -
- -
-
- -
Subtitles providers
-
-
-
-
- -
-
-
- - -
-
-
-
-
-
- -
-
-
- -
-
-
-
-
- -
-
-
- -
-
-
-
-
- -
-
-
- - -
-
- -
-
- -
-
- -
-
-
- - -
-
- -
-
- -
- -
-
- -
-
-
- - -
-
- -
-
-
-
- -
-
-
- -
-
-
-
- -
-
- -
-
-
- - -
-
- -
-
- -
- -
-
- -
-
-
- - -
-
- -
-
- -
- -
-
- -
-
-
- - -
-
- -
-
- -
- -
-
- -
-
-
- - -
-
- -
-
-
-
- -
-
-
- -
-
-
-
-
- -
-
-
- -
-
-
-
- -
-
- -
-
-
- - -
-
- -
-
- -
- -
-
- -
-
-
- - -
-
- -
-
-
-
- -
-
-
- -
-
- -
-
-
- -
-
-
- -
-
-
-
- -
-
- -
-
-
- - -
-
-
-
-
-
- -
-
-
- -
-
-
-
-
- -
-
-
- -
-
-
-
-
- -
-
-
- - -
-
- -
-
-
- -
-
-
- - -
-
- -
-
-
- -
-
-
- - -
-
- -
-
- -
-
- -
-
-
- - -
-
-
-
- -
- -
-
- -
-
-
- - -
-
- -
-
- -
- -
-
- -
-
-
- - -
-
- -
-
- -
- -
-
- -
-
-
- - -
-
-
-
- -
- -
-
- -
-
-
- - -
-
-
-
- -
- -
-
- -
-
-
- - -
-
- -
-
- -
- -
-
- -
-
-
- - -
-
- -
-
- -
- -
-
- -
-
-
- - -
-
- -
-
- -
- -
-
- -
-
-
- - -
-
- -
-
- -
- -
-
- -
-
-
- - -
-
- -
-
- -
- -
-
- -
-
-
- - -
-
-
-
- -
- -
-
- -
-
-
- - -
-
-
-
- -
- -
-
- -
-
-
- - -
-
-
-
- -
- -
-
- -
-
-
- - -
-
- -
-
-
-
- -
-
-
- -
-
-
-
-
- -
-
-
- -
-
-
-
- -
-
- -
-
-
-
-
Subtitles languages
-
-
-
-
- -
-
-
- - -
-
- -
- -
-
- -
-
-
- -
-
-
-
-
- -
Series default settings
-
-
-
-
- -
-
-
-
- - -
-
-
- -
- -
-
- -
-
-
- -
-
-
- -
-
- -
-
-
-
- - -
-
-
-
-
-
- -
Movies default settings
-
-
-
-
- -
-
-
-
- - -
-
-
- -
- -
-
- -
-
-
- -
-
-
- -
-
- -
-
-
-
- - -
-
-
-
-
-
+ % include('wizard_subtitles')
-
-
Connection settings
-
-
-
-
- -
-
- -
-
-
- - -
-
-
- -
-
- -
-
-
- - -
-
- -
- -
-
- -
-
-
-
- -
-
-
- -
- -
-
- -
-
-
-
- -
-
-
- -
- -
-
- -
-
-
- -
-
- -
- -
-
- -
-
-
- - -
-
-
- -
-
- -
-
-
-
- -
-
-
- -
- -
-
- -
-
-
- - -
-
- -
-
-
- + % include('wizard_sonarr.tpl')
@@ -1406,148 +133,7 @@ Prev
-
Connection settings
-
-
-
-
- -
-
- -
-
-
- - -
-
-
- -
-
- -
-
-
- - -
-
- -
- -
-
- -
-
-
-
- -
-
-
- -
- -
-
- -
-
-
-
- -
-
-
- -
- -
-
- -
-
-
- -
-
- -
- -
-
- -
-
-
- - -
-
-
- -
-
- -
-
-
-
- -
-
-
- -
- -
-
- -
-
-
- - -
-
- -
-
-
- + % include('wizard_radarr')
@@ -1555,6 +141,8 @@ + + diff --git a/views/wizard_general.tpl b/views/wizard_general.tpl new file mode 100644 index 000000000..b1aa56569 --- /dev/null +++ b/views/wizard_general.tpl @@ -0,0 +1,231 @@ +
Start-Up
+
+
+
+
+ +
+
+
+
+ +
+
+
+ + + +
+ +
+
+ +
+
+
+
+ +
+
+
+ + + +
+ +
+
+ +
+
+
+ %if settings.general.base_url is None: + % base_url = "/" + %else: + % base_url = settings.general.base_url + %end + +
+
+ + + +
+
+
+ +
Path Mappings for shows
+
+
+ %import ast + %if settings.general.path_mappings is not None: + % path_substitutions = ast.literal_eval(settings.general.path_mappings) + %else: + % path_substitutions = [] + %end +
+
+ +
+
+
+

+ Path for Sonarr: +

+
+
+ +
+ +
+
+
+

+ Path for Bazarr: +

+
+
+ +
+ %for x in range(0, 5): + % path = [] + % try: + % path = path_substitutions[x] + % except IndexError: + % path = ["", ""] + % end +
+
+ +
+
+
+ +
+
+
+ +
+
+
+ +
+
+
+ %end +
+
+ +
Path Mappings for movies
+
+
+ %import ast + %if settings.general.path_mappings_movie is not None: + % path_substitutions_movie = ast.literal_eval(settings.general.path_mappings_movie) + %else: + % path_substitutions_movie = [] + %end +
+
+ +
+
+
+

+ Path for Radarr: +

+
+
+ +
+ +
+
+
+

+ Path for Bazarr: +

+
+
+ +
+ %for x in range(0, 5): + % path_movie = [] + % try: + % path_movie = path_substitutions_movie[x] + % except IndexError: + % path_movie = ["", ""] + % end +
+
+ +
+
+
+ +
+
+
+ +
+
+
+ +
+
+
+ %end +
+
+ + \ No newline at end of file diff --git a/views/wizard_radarr.tpl b/views/wizard_radarr.tpl new file mode 100644 index 000000000..3a9fa55c1 --- /dev/null +++ b/views/wizard_radarr.tpl @@ -0,0 +1,204 @@ +
Connection settings
+
+
+
+
+ +
+
+ +
+
+
+ + +
+
+
+ +
+
+ +
+
+
+ + +
+
+ +
+ +
+
+ +
+
+
+
+ +
+
+
+ +
+ +
+
+ +
+
+
+
+ +
+
+
+ +
+ +
+
+ +
+
+
+ +
+
+ +
+ +
+
+ +
+
+
+ + +
+
+
+ +
+
+ +
+
+
+
+ +
+
+
+ +
+ +
+
+ +
+
+
+ + +
+
+ +
+
+
+ + \ No newline at end of file diff --git a/views/wizard_sonarr.tpl b/views/wizard_sonarr.tpl new file mode 100644 index 000000000..3a2b06792 --- /dev/null +++ b/views/wizard_sonarr.tpl @@ -0,0 +1,204 @@ +
Connection settings
+
+
+
+
+ +
+
+ +
+
+
+ + +
+
+
+ +
+
+ +
+
+
+ + +
+
+ +
+ +
+
+ +
+
+
+
+ +
+
+
+ +
+ +
+
+ +
+
+
+
+ +
+
+
+ +
+ +
+
+ +
+
+
+ +
+
+ +
+ +
+
+ +
+
+
+ + +
+
+
+ +
+
+ +
+
+
+
+ +
+
+
+ +
+ +
+
+ +
+
+
+ + +
+
+ +
+
+
+ + \ No newline at end of file diff --git a/views/wizard_subtitles.tpl b/views/wizard_subtitles.tpl new file mode 100644 index 000000000..fecacec11 --- /dev/null +++ b/views/wizard_subtitles.tpl @@ -0,0 +1,387 @@ +
Subtitles options
+
+
+ +
+
+ +
+
+ +
+ + +
+ +
+
+
+ +
+
+
+
+ +
+
+
+ + +
+ +
+
+ +
+
+
+ + +
+
+ +
+ +
+
+ + % include('providers.tpl') + +
Subtitles languages
+
+
+
+
+ +
+
+
+ + +
+
+ +
+ +
+
+ +
+
+
+ +
+
+
+
+
+ +
Series default settings
+
+
+
+
+ +
+
+
+
+ + +
+
+
+ +
+ +
+
+ +
+
+
+ +
+
+
+ +
+
+ +
+
+
+
+ + +
+
+
+
+
+
+ +
Movies default settings
+
+
+
+
+ +
+
+
+
+ + +
+
+
+ +
+ +
+
+ +
+
+
+ +
+
+
+ +
+
+ +
+
+
+
+ + +
+
+
+
+
+
+ + \ No newline at end of file