Change more overhaul to Config Post Processing.

Change texts and descriptions throughout.
Fix info icons in "Naming Legends".
Change naming sample lines to be more available.
Add failed downloads Sabnzbd setup guide.
Fix "Anime name pattern" custom javascript validation.
This commit is contained in:
JackDandy 2014-11-19 17:20:03 +00:00
parent be92776792
commit 9d37bd538f
6 changed files with 1595 additions and 1480 deletions

View file

@ -4,6 +4,7 @@
* Remove redundant references from Config/Help & Info * Remove redundant references from Config/Help & Info
* Fix poster preview on small poster layout * Fix poster preview on small poster layout
* Change overhaul Config/Anime to be in line with General Configuration * Change overhaul Config/Anime to be in line with General Configuration
* Change descriptions and layout on Config/Anime page
* Remove output of source code line when warnings highlight libraries not used with IMDb * Remove output of source code line when warnings highlight libraries not used with IMDb
* Add dropdown on Add Trending Shows to display all shows, shows not in library, or shows in library * Add dropdown on Add Trending Shows to display all shows, shows not in library, or shows in library
* Change Help and Info icon sprites to color and text of Arguments if unused * Change Help and Info icon sprites to color and text of Arguments if unused
@ -19,11 +20,15 @@
* Remove old version checking code that no longer applies to SickGear's release system * Remove old version checking code that no longer applies to SickGear's release system
* Fix pnotify notifications going full page * Fix pnotify notifications going full page
* Change overhaul Config Post Processing to be in line with General Configuration * Change overhaul Config Post Processing to be in line with General Configuration
* Change rearrange post processing items into sections for easier use * Change rearrange Config Post Processing items into sections for easier use
* Fix CSS overriding link colors on config pages * Fix CSS overriding link colors on config pages
* Change Config Post Processing texts and descriptions throughout
* Fix Config Post Processing info icons in "Naming Legends"
* Change Config Post Processing naming sample lines to be more available
* Add Config Post Processing failed downloads Sabnzbd setup guide
* Fix Config Post Processing "Anime name pattern" custom javascript validation
[develop changelog] [develop changelog]
* Change descriptions and layout on Config/Anime page
### 0.3.1 (2014-11-19 16:40:00 UTC) ### 0.3.1 (2014-11-19 16:40:00 UTC)

View file

@ -206,7 +206,7 @@ inc_top.tmpl
} }
.ui-widget-content a { .ui-widget-content a {
color: #fff; color: #2D8FBF;
} }
.ui-widget-content a:hover { .ui-widget-content a:hover {
@ -1607,10 +1607,14 @@ select .selected {
config_postProcessing.tmpl config_postProcessing.tmpl
========================================================================== */ ========================================================================== */
#config .episode-sample {
background-color: rgb(34, 34, 34);
border-color: rgb(17, 17, 17);
}
#config div.example { #config div.example {
padding: 10px;
background-color: #333333; background-color: #333333;
border: 1px solid #111; border-color: #111;
} }
.Key { .Key {
@ -1652,19 +1656,7 @@ config_postProcessing.tmpl
config_notifications.tmpl config_notifications.tmpl
========================================================================== */ ========================================================================== */
div.metadata_options_wrapper {
float: left;
width: 190px;
}
div.metadata_example_wrapper {
float: right;
width: 325px;
}
div.metadata_options { div.metadata_options {
padding: 7px;
overflow: auto;
background: #333; background: #333;
color: #fff; color: #fff;
border: 1px solid #111; border: 1px solid #111;
@ -1673,34 +1665,22 @@ div.metadata_options {
div.metadata_options label:hover { div.metadata_options label:hover {
color: #fff; color: #fff;
background-color: #15528F; background-color: #15528F;
cursor: pointer;
} }
div.metadata_options label { div.metadata_options label {
display: block;
padding-left: 7px;
line-height: 20px;
color: #fff; color: #fff;
} }
div.metadata_example { div.metadata_example {
padding: 8px; border: 1px solid rgb(61, 61, 61);
} }
div.metadata_example label { div.metadata_example label {
display: block;
line-height: 21px;
color: #fff; color: #fff;
cursor: pointer;
} }
div.metadataDiv .disabled { div.metadataDiv .disabled {
color: #ccc; color: #888;
}
.notifier-icon {
float: left;
margin: 6px 4px 0px 0px;
} }
.warning { .warning {

View file

@ -1587,8 +1587,14 @@ select .selected {
config_postProcessing.tmpl config_postProcessing.tmpl
========================================================================== */ ========================================================================== */
#config .episode-sample {
background-color: rgb(255, 255, 255);
border-color: rgb(204, 204, 204);
}
#config div.example { #config div.example {
padding: 10px; background-color: #efefef; background-color: #efefef;
border-color: rgb(204, 204, 204);
} }
.Key { .Key {
@ -1630,19 +1636,7 @@ config_postProcessing.tmpl
config_notifications.tmpl config_notifications.tmpl
========================================================================== */ ========================================================================== */
div.metadata_options_wrapper {
float: left;
width: 190px;
}
div.metadata_example_wrapper {
float: right;
width: 325px;
}
div.metadata_options { div.metadata_options {
padding: 7px;
overflow: auto;
background: #f5f1e4; background: #f5f1e4;
border: 1px solid #ccc; border: 1px solid #ccc;
} }
@ -1650,34 +1644,22 @@ div.metadata_options {
div.metadata_options label:hover { div.metadata_options label:hover {
color: #fff; color: #fff;
background-color: #57442b; background-color: #57442b;
cursor: pointer;
} }
div.metadata_options label { div.metadata_options label {
display: block;
padding-left: 7px;
line-height: 20px;
color: #036; color: #036;
} }
div.metadata_example { div.metadata_example {
padding: 8px; border: 1px solid rgb(247, 247, 247);
} }
div.metadata_example label { div.metadata_example label {
display: block;
line-height: 21px;
color: #000; color: #000;
cursor: pointer;
} }
div.metadataDiv .disabled { div.metadataDiv .disabled {
color: #ccc; color: #aaa;
}
.notifier-icon {
float: left;
margin: 6px 4px 0px 0px;
} }
.warning { .warning {

View file

@ -199,6 +199,10 @@ inc_top.tmpl
background: #dcdcdc url("../css/lib/images/ui-bg_highlight-soft_75_dcdcdc_1x100.png") 50% top repeat-x; background: #dcdcdc url("../css/lib/images/ui-bg_highlight-soft_75_dcdcdc_1x100.png") 50% top repeat-x;
} }
.ui-widget-content a {
text-decoration: none;
}
.ui-widget-header { .ui-widget-header {
background: #ffffff url("../css/lib/images/ui-bg_flat_0_ffffff_40x100.png") 50% 50% repeat-x; background: #ffffff url("../css/lib/images/ui-bg_flat_0_ffffff_40x100.png") 50% 50% repeat-x;
} }
@ -1660,8 +1664,21 @@ select .selected {
config_postProcessing.tmpl config_postProcessing.tmpl
========================================================================== */ ========================================================================== */
#config .episode-sample {
width: 240px;
margin-right: 10px;
border: 1px solid;
}
#config .episode-sample h3 {
margin: 10px;
font-size: 18px;
line-height: 24px;
}
#config div.example { #config div.example {
padding: 10px; background-color: #efefef; padding: 10px;
border: 1px solid;
} }
.Key { .Key {
@ -1709,43 +1726,47 @@ div.metadata_options_wrapper {
} }
div.metadata_example_wrapper { div.metadata_example_wrapper {
float: right; margin-left: 220px;
width: 325px; }
div.metadata_options_wrapper h4,
div.metadata_example_wrapper h4 {
margin: 0 0 10px;
} }
div.metadata_options { div.metadata_options {
padding: 7px;
overflow: auto; overflow: auto;
background: #f5f1e4; background: #f5f1e4;
border: 1px solid #ccc; border: 1px solid #ccc;
} }
div.metadata_options label:hover { div.metadata_options label:hover {
color: #fff;
background-color: #57442b;
cursor: pointer; cursor: pointer;
} }
div.metadata_options label { div.metadata_options label {
display: block;
padding-left: 7px;
line-height: 20px;
color: #036; color: #036;
} }
div.metadata_example { div.metadata_example label {
padding: 8px; cursor: pointer;
font-weight: 600;
} }
div.metadata_options label,
div.metadata_example label { div.metadata_example label {
display: block;
line-height: 21px; line-height: 21px;
color: #000; display: block;
cursor: pointer; padding: 3px;
margin: 0px;
}
div.metadata_options input {
margin-right: 3px;
vertical-align: baseline;
} }
div.metadataDiv .disabled { div.metadataDiv .disabled {
color: #ccc; font-weight: normal;
} }
.notifier-icon { .notifier-icon {
@ -1753,11 +1774,6 @@ div.metadataDiv .disabled {
margin: 6px 4px 0px 0px; margin: 6px 4px 0px 0px;
} }
.warning {
border-color: #F89406;
background: url("../images/warning16.png") no-repeat right 5px center #fff;
}
/* ======================================================================= /* =======================================================================
manage*.tmpl manage*.tmpl
========================================================================== */ ========================================================================== */
@ -3006,13 +3022,31 @@ span.token-input-delete-token {
margin: 0 1px; margin: 0 1px;
} }
.ui-widget-content a { .boldest {font-weight: 900}
text-decoration: none;
}
.red-text {color:#d33} .red-text {color:#d33}
.clear-left {clear:left} .clear-left {clear:left}
.float-left {float:left}
.nextline-block {display:block} .nextline-block {display:block}
#failed-guide,
#failed-guide .title,
#failed-guide li {margin:0; padding:0}
#failed-guide .title {list-style-type: none}
#failed-guide li {margin-left:15px}
.icon-info-sign {
display: block;
width: 16px;
height: 16px;
margin: 2px 5px;
float: left;
}
.pp .component-group-list.right,
.pp .field-pair.right {
margin: 0 0 0 250px;
}
.trakt-image { .trakt-image {
display: block; display: block;
width: 100%; width: 100%;

View file

@ -23,8 +23,10 @@
#else #else
<h1 class="title">$title</h1> <h1 class="title">$title</h1>
#end if #end if
#set $checked = 'checked="checked"'
#set $selected = 'selected="selected"'
<div id="config"> <div id="config" class="pp">
<div id="config-content"> <div id="config-content">
<form id="configForm" action="savePostProcessing" method="post"> <form id="configForm" action="savePostProcessing" method="post">
@ -41,19 +43,20 @@
<div class="component-group-desc"> <div class="component-group-desc">
<h3>Post-Processing</h3> <h3>Post-Processing</h3>
<p>Settings that dictate how SickGear should process completed downloads.</p> <p>SickGear options to process completed downloads.</p>
</div> </div>
<fieldset class="component-group-list"> <fieldset class="component-group-list">
<div class="field-pair"> <div class="field-pair">
<label for="tv_download_dir"> <label for="tv_download_dir">
<span class="component-title">TV download dir</span> <span class="component-title">Completed TV downloads
<div class="red-text"><em class="boldest">must not</em> be the folder where downloading files are created</div>
</span>
<span class="component-desc"> <span class="component-desc">
<input type="text" name="tv_download_dir" id="tv_download_dir" value="$sickbeard.TV_DOWNLOAD_DIR" class="form-control input-sm input350" /> <input type="text" name="tv_download_dir" id="tv_download_dir" value="$sickbeard.TV_DOWNLOAD_DIR" class="form-control input-sm input350" />
<div class="clear-left"> <div class="float-left">
<p>the folder where your download client puts <b>completed</b> downloads<br> <p>folder where download clients save <b><em class="boldest">completed</em></b> downloads.&nbsp;
<span class="red-text">should be separate to where your download client puts files while downloading</span><br> <b>note:</b> only use if not using SABnzbd post processing <em>or</em> if SABnzbd is on a different PC to SickGear</p>
<b>note:</b> use only if not using SABnzbd+ post processing or if SABnzbd+ and SickGear are on different PCs.</p>
</div> </div>
</span> </span>
</label> </label>
@ -64,39 +67,38 @@
<span class="component-title">Process episode method</span> <span class="component-title">Process episode method</span>
<span class="component-desc"> <span class="component-desc">
<select name="process_method" id="process_method" class="form-control input-sm"> <select name="process_method" id="process_method" class="form-control input-sm">
#set $process_method_text = {'copy': "Copy", 'move': "Move", 'hardlink': "Hard Link", 'symlink' : "Symbolic Link"} #set $process_method_text = {'copy': "Copy", 'move': "Move", 'hardlink': "Hard Link", 'symlink' : "Symbolic Link"}
#for $curAction in ('copy', 'move', 'hardlink', 'symlink'): #for $curAction in ('copy', 'move', 'hardlink', 'symlink'):
#if $sickbeard.PROCESS_METHOD == $curAction: #if $sickbeard.PROCESS_METHOD == $curAction:
#set $process_method = "selected=\"selected\"" #set $process_method = $selected
#else #else
#set $process_method = "" #set $process_method = ''
#end if #end if
<option value="$curAction" $process_method>$process_method_text[$curAction]</option> <option value="$curAction" $process_method>$process_method_text[$curAction]</option>
#end for #end for
</select> </select>
<p>method to be used to put file in the <em>TV directory</em></p> <span>...&nbsp;completed downloads to under a parent TV folder</span>
</span> </span>
</label> </label>
</div> </div>
<div class="field-pair"> <div class="field-pair">
<label for="process_automatically"> <label for="process_automatically">
<span class="component-title">Scan and post-process</span> <span class="component-title">Scan and post process</span>
<span class="component-desc"> <span class="component-desc">
<input type="checkbox" name="process_automatically" id="process_automatically" #if $sickbeard.PROCESS_AUTOMATICALLY == True then "checked=\"checked\"" else ""# /> <input type="checkbox" name="process_automatically" id="process_automatically" #if $sickbeard.PROCESS_AUTOMATICALLY == True then $checked else ''# />
<p>scan and post-process any files in your <em>TV download dir</em>?<br> <p>files in the <em>completed TV downloads</em> folder.&nbsp;
<b>note:</b> do not use if you use an external post-processing script<br> <b>note:</b> do not enable with external post processing scripts like sabToSickbeard for SABnzbd, or NZBMedia for NZBGET</p>
eg. NZBMedia w/ NZBGET, sabToSickbeard w/ SABnzbd</p>
</span> </span>
</label> </label>
</div> </div>
<div class="field-pair"> <div class="field-pair">
<label for="autopostprocesser_frequency"> <label for="autopostprocesser_frequency">
<span class="component-title">Run post-process every</span> <span class="component-title">Run post process every</span>
<span class="component-desc"> <span class="component-desc">
<input type="text" name="autopostprocesser_frequency" id="autopostprocesser_frequency" value="$sickbeard.AUTOPOSTPROCESSER_FREQUENCY" class="form-control input-sm input75" /> <input type="text" name="autopostprocesser_frequency" id="autopostprocesser_frequency" value="$sickbeard.AUTOPOSTPROCESSER_FREQUENCY" class="form-control input-sm input75" />
<p>minutes to check for new files to post-process (eg. 10)</p> <p>minutes to check for new files to process (e.g. 10)</p>
</span> </span>
</label> </label>
</div> </div>
@ -105,8 +107,8 @@
<label for="postpone_if_sync_files"> <label for="postpone_if_sync_files">
<span class="component-title">Postpone post processing</span> <span class="component-title">Postpone post processing</span>
<span class="component-desc"> <span class="component-desc">
<input type="checkbox" name="postpone_if_sync_files" id="postpone_if_sync_files" #if $sickbeard.POSTPONE_IF_SYNC_FILES == True then "checked=\"checked\"" else ""# /> <input type="checkbox" name="postpone_if_sync_files" id="postpone_if_sync_files" #if $sickbeard.POSTPONE_IF_SYNC_FILES == True then $checked else ''# />
<p>if <b>!sync</b> files are present in the <em>TV download dir</em></p> <p>if <b>!sync</b> files are present in the <em>completed TV downloads</em> folder</p>
</span> </span>
</label> </label>
</div> </div>
@ -117,8 +119,9 @@
<span class="component-desc"> <span class="component-desc">
<input type="text" name="extra_scripts" value="<%='|'.join(sickbeard.EXTRA_SCRIPTS)%>" class="form-control input-sm input350" /> <input type="text" name="extra_scripts" value="<%='|'.join(sickbeard.EXTRA_SCRIPTS)%>" class="form-control input-sm input350" />
<div class="clear-left"> <div class="clear-left">
<p>Additional scripts separated by <b>|</b><br> <p>scripts are called after SickGear's built-in post processing.
<b>note:</b> scripts are called after SickGear's own post-processing</p> &nbsp;<b>note:</b> use <b>|</b> to separate additional extra scripts</span>
</p>
</div> </div>
</span> </span>
</label> </label>
@ -133,7 +136,7 @@
<div class="component-group-desc"> <div class="component-group-desc">
<h3>File Handling</h3> <h3>File Handling</h3>
<p>Optional settings for the way post-processing handles files</p> <p>More file processing controls.</p>
</div> </div>
<fieldset class="component-group-list"> <fieldset class="component-group-list">
@ -142,9 +145,8 @@
<label for="unpack"> <label for="unpack">
<span class="component-title">Unpack downloads</span> <span class="component-title">Unpack downloads</span>
<span class="component-desc"> <span class="component-desc">
<input id="unpack" type="checkbox" name="unpack" #if $sickbeard.UNPACK == True then "checked=\"checked\"" else ""# /> <input id="unpack" type="checkbox" name="unpack" #if $sickbeard.UNPACK == True then $checked else ''# />
<p>unpack any TV releases in your <em>TV download dir</em>?<br> <p>unrar TV releases in the <em>completed TV downloads</em> folder</p>
<b>note:</b> only working with RAR archive</p>
</span> </span>
</label> </label>
</div> </div>
@ -153,8 +155,8 @@
<label for="skip_removed_files"> <label for="skip_removed_files">
<span class="component-title">Skip remove detection</span> <span class="component-title">Skip remove detection</span>
<span class="component-desc"> <span class="component-desc">
<input type="checkbox" name="skip_removed_files" id="skip_removed_files" #if $sickbeard.SKIP_REMOVED_FILES == True then "checked=\"checked\"" else ""# /> <input type="checkbox" name="skip_removed_files" id="skip_removed_files" #if $sickbeard.SKIP_REMOVED_FILES == True then $checked else ''# />
<p>skip detection of removed files, so they don't get set to ignored<br> <p>skip detection of removed files so the episode is not set to ignored<br>
<b>note:</b> this may mean SickGear misses renames as well</p> <b>note:</b> this may mean SickGear misses renames as well</p>
</span> </span>
</label> </label>
@ -164,7 +166,7 @@
<label for="move_associated_files"> <label for="move_associated_files">
<span class="component-title">Move associated files</span> <span class="component-title">Move associated files</span>
<span class="component-desc"> <span class="component-desc">
<input type="checkbox" name="move_associated_files" id="move_associated_files" #if $sickbeard.MOVE_ASSOCIATED_FILES == True then "checked=\"checked\"" else ""# /> <input type="checkbox" name="move_associated_files" id="move_associated_files" #if $sickbeard.MOVE_ASSOCIATED_FILES == True then $checked else ''# />
<p>move srr/srt/sfv/etc files with the episode when processed</p> <p>move srr/srt/sfv/etc files with the episode when processed</p>
</span> </span>
</label> </label>
@ -174,7 +176,7 @@
<label for="nfo_rename"> <label for="nfo_rename">
<span class="component-title">Rename .nfo file</span> <span class="component-title">Rename .nfo file</span>
<span class="component-desc"> <span class="component-desc">
<input type="checkbox" name="nfo_rename" id="nfo_rename" #if $sickbeard.NFO_RENAME == True then "checked=\"checked\"" else ""# /> <input type="checkbox" name="nfo_rename" id="nfo_rename" #if $sickbeard.NFO_RENAME == True then $checked else ''# />
<p>rename the original .nfo file to .nfo-orig to avoid conflicts</p> <p>rename the original .nfo file to .nfo-orig to avoid conflicts</p>
</span> </span>
</label> </label>
@ -184,7 +186,7 @@
<label for="rename_episodes"> <label for="rename_episodes">
<span class="component-title">Rename episodes</span> <span class="component-title">Rename episodes</span>
<span class="component-desc"> <span class="component-desc">
<input type="checkbox" name="rename_episodes" id="rename_episodes" #if $sickbeard.RENAME_EPISODES == True then "checked=\"checked\"" else ""# /> <input type="checkbox" name="rename_episodes" id="rename_episodes" #if $sickbeard.RENAME_EPISODES == True then $checked else ''# />
<p>rename episodes using the Episode Naming settings</p> <p>rename episodes using the Episode Naming settings</p>
</span> </span>
</label> </label>
@ -194,7 +196,7 @@
<label for="airdate_episodes"> <label for="airdate_episodes">
<span class="component-title">Change file date</span> <span class="component-title">Change file date</span>
<span class="component-desc"> <span class="component-desc">
<input type="checkbox" name="airdate_episodes" id="airdate_episodes" #if $sickbeard.AIRDATE_EPISODES == True then "checked=\"checked\"" else ""# /> <input type="checkbox" name="airdate_episodes" id="airdate_episodes" #if $sickbeard.AIRDATE_EPISODES == True then $checked else ''# />
<p>set last modified filedate to the date that the episode aired<br> <p>set last modified filedate to the date that the episode aired<br>
<b>note:</b> some systems may ignore this feature.</p> <b>note:</b> some systems may ignore this feature.</p>
</span> </span>
@ -210,28 +212,38 @@
<div class="component-group-desc"> <div class="component-group-desc">
<h3>Failed Downloads</h3> <h3>Failed Downloads</h3>
<p>SickGear will attempt to download another release if downloads are reported as failed</p> <p>SickGear can attempt a different release if a download is found to fail</p>
</div> </div>
<fieldset class="component-group-list"> <fieldset class="component-group-list">
<div class="field-pair"> <div class="field-pair" style="padding-bottom:0">
<label for="use_failed_downloads"> <label for="use_failed_downloads" style="margin-bottom:0">
<span class="component-title">Enable</span> <span class="component-title">Enable</span>
<span class="component-desc"> <span class="component-desc">
<input id="use_failed_downloads" type="checkbox" class="enabler" name="use_failed_downloads" #if $sickbeard.USE_FAILED_DOWNLOADS == True then "checked=\"checked\"" else ""# /> <input id="use_failed_downloads" type="checkbox" class="enabler" name="use_failed_downloads" #if $sickbeard.USE_FAILED_DOWNLOADS == True then $checked else ''# />
<p>failed download handling<br> <p>failed download handling</p>
<b>note:</b> see <em><a href="<%= anon_url('https://raw.githubusercontent.com/SickGear/SickGear/master/readme-FailedDownloads.md') %>" rel="noreferrer" onclick="window.open(this.href, '_blank'); return false;">readme-FailedDownloads.md</a></em> before enabling for SABnzbd setup instructions</p>
</span> </span>
</label> </label>
</div> </div>
<div id="content_use_failed_downloads"> <div id="content_use_failed_downloads">
<div class="field-pair" style="padding-top:0">
<span class="component-desc">
<ul id="failed-guide">
<li class="title">SABnzbd setup guide</li>
<li class="action">menu "Switches"&nbsp;... [disable] "<em class="boldest">Abort jobs that cannot be completed</em>"</li>
<li class="action">menu "Switches"&nbsp;... [disable] "<em class="boldest">Post-Process Only Verified Jobs</em>"</li>
<li class="action">menu "Special"&nbsp;... [enable] "<em class="boldest">empty_postproc</em>"</li>
</ul>
</span>
</div>
<div class="field-pair"> <div class="field-pair">
<label for="delete_failed"> <label for="delete_failed">
<span class="component-title">Delete failed downloads</span> <span class="component-title">Delete failed downloads</span>
<span class="component-desc"> <span class="component-desc">
<input id="delete_failed" type="checkbox" name="delete_failed" #if $sickbeard.DELETE_FAILED == True then "checked=\"checked\"" else ""# /> <input id="delete_failed" type="checkbox" name="delete_failed" #if $sickbeard.DELETE_FAILED == True then $checked else ''# />
<p>delete left over files from a failed download<br> <p>delete left over files from a failed download<br>
</span> </span>
</label> </label>
@ -245,29 +257,39 @@
</div><!-- /component-group1 //--> </div><!-- /component-group1 //-->
<% ######################################################################################### %>
<% ######################################################################################### %>
<% ## TAB 2 ## %>
<% ######################################################################################### %>
<% ######################################################################################### %>
<% ########################### %>
<% ## Start of Regular Show ## %>
<% ########################### %>
<div id="core-component-group2" class="component-group"> <div id="core-component-group2" class="component-group">
<div class="component-group-desc"> <div class="component-group-desc">
<h3>Episode Naming</h3> <h3>Episode Naming</h3>
<p>How SickGear will name and sort your episodes.</p> <p>Regular episode naming.</p>
</div> </div>
<fieldset class="component-group-list"> <fieldset class="component-group-list">
<div class="field-pair"> <div class="field-pair">
<label for="name_presets"> <label for="name_presets">
<span class="component-title">Naming pattern</span> <span class="component-title">Name pattern</span>
<span class="component-desc"> <span class="component-desc">
<select id="name_presets" class="form-control input-sm"> <select id="name_presets" class="form-control input-sm">
#set is_custom = True #set is_custom = True
#for $cur_preset in $naming.name_presets: #for $cur_preset in $naming.name_presets:
#set $tmp = $naming.test_name($cur_preset, anime_type=3) #set $tmp = $naming.test_name($cur_preset, anime_type=3)
#if $cur_preset == $sickbeard.NAMING_PATTERN: #if $sickbeard.NAMING_PATTERN == $cur_preset:
#set is_custom = False #set is_custom = False
#end if #end if
<option id="$cur_preset" #if $cur_preset == $sickbeard.NAMING_PATTERN then "selected=\"selected\"" else ""#>$os.path.join($tmp['dir'], $tmp['name'])</option> <option id="$cur_preset" #if $sickbeard.NAMING_PATTERN == $cur_preset then $selected else ''#>$os.path.join($tmp['dir'], $tmp['name'])</option>
#end for #end for
<option id="$sickbeard.NAMING_PATTERN" #if $is_custom then "selected=\"selected\"" else ""#>Custom...</option> <option id="$sickbeard.NAMING_PATTERN" #if $is_custom then $selected else ''#>Custom...</option>
</select> </select>
</span> </span>
</label> </label>
@ -407,19 +429,35 @@
<div class="field-pair"> <div class="field-pair">
<label for="naming_multi_ep"> <label for="naming_multi_ep">
<span class="component-title">Multi-Episode style</span> <span class="component-title">Multi episode style</span>
<span class="component-desc"> <span class="component-desc">
<select id="naming_multi_ep" name="naming_multi_ep" class="form-control input-sm"> <select id="naming_multi_ep" name="naming_multi_ep" class="form-control input-sm">
#for $cur_multi_ep in sorted($multiEpStrings.items(), key=lambda x: x[1]): #for $cur_multi_ep in sorted($multiEpStrings.items(), key=lambda x: x[1]):
<option value="$cur_multi_ep[0]" #if $cur_multi_ep[0] == $sickbeard.NAMING_MULTI_EP then "selected=\"selected\" class=\"selected\"" else ""#>$cur_multi_ep[1]</option> <option value="$cur_multi_ep[0]" #if $sickbeard.NAMING_MULTI_EP == $cur_multi_ep[0] then 'selected="selected" class="selected"' else ''#>$cur_multi_ep[1]</option>
#end for #end for
</select> </select>
</span> </span>
</label> </label>
</div> </div>
<div class="field-pair">
<label for="naming_strip_year">
<span class="component-title">Strip show year</span>
<span class="component-desc">
<input type="checkbox" id="naming_strip_year" name="naming_strip_year" #if $sickbeard.NAMING_STRIP_YEAR then $checked else ''#/>
<p>when renaming files, remove years that are inside parentheses #if True then 'e.g. "(%s)"' % str(time.strftime('%Y')) else ''#</p>
</span>
</label>
</div>
</fieldset>
<fieldset class="component-group-list">
<div id="naming_example_div"> <div id="naming_example_div">
<h3>Single-Episode sample:</h3> <div class="component-group-desc episode-sample">
<h3>Single episode sample:</h3>
</div>
<div class="example"> <div class="example">
<span class="jumbo" id="naming_example">&nbsp;</span> <span class="jumbo" id="naming_example">&nbsp;</span>
</div> </div>
@ -427,53 +465,55 @@
</div> </div>
<div id="naming_example_multi_div"> <div id="naming_example_multi_div">
<h3>Multi-Episode sample:</h3> <div class="component-group-desc episode-sample">
<h3>Multi episode sample:</h3>
</div>
<div class="example"> <div class="example">
<span class="jumbo" id="naming_example_multi">&nbsp;</span> <span class="jumbo" id="naming_example_multi">&nbsp;</span>
</div> </div>
<br/> <br/>
</div> </div>
<div class="field-pair"> </fieldset>
<label for="naming_strip_year">
<span class="component-title">Strip show year</span> <% ########################## %>
<span class="component-desc"> <% ## End of Regular Show ## %>
<input type="checkbox" id="naming_strip_year" name="naming_strip_year" #if $sickbeard.NAMING_STRIP_YEAR then "checked=\"checked\"" else ""#/> <% ## ## %>
<p>remove the show's year when renaming the file<br> <% ## Start of Air-by-Date ## %>
only applies to shows that have year inside parentheses</p> <% ########################## %>
</span> <div class="component-group-desc">
</label> <p>Air-by-date episode naming.</p>
</div> </div>
<div class="field-pair"> <div class="field-pair right">
<label for="naming_custom_abd"> <label for="naming_custom_abd">
<span class="component-title">Custom Air-By-Date</span> <span class="component-title">Custom air-by-date</span>
<span class="component-desc"> <span class="component-desc">
<input type="checkbox" class="enabler" id="naming_custom_abd" name="naming_custom_abd" #if $sickbeard.NAMING_CUSTOM_ABD then "checked=\"checked\"" else ""#/> <input type="checkbox" class="enabler" id="naming_custom_abd" name="naming_custom_abd" #if $sickbeard.NAMING_CUSTOM_ABD then $checked else ''#/>
<p>name Air-By-Date shows differently than regular shows</p> <p>name air-by-date shows differently than regular shows</p>
</span> </span>
</label> </label>
</div> </div>
<div id="content_naming_custom_abd"> <div id="content_naming_custom_abd">
<div class="field-pair">
<fieldset class="component-group-list">
<div class="field-pair right">
<label for="name_abd_presets"> <label for="name_abd_presets">
<span class="component-title">Naming pattern</span> <span class="component-title">Air-by-date name pattern</span>
<span class="component-desc"> <span class="component-desc">
<select id="name_abd_presets" class="form-control input-sm"> <select id="name_abd_presets" class="form-control input-sm">
#set is_abd_custom = True #set is_abd_custom = True
#for $cur_preset in $naming.name_abd_presets: #for $cur_preset in $naming.name_abd_presets:
#set $tmp = $naming.test_name($cur_preset) #set $tmp = $naming.test_name($cur_preset)
#if $cur_preset == $sickbeard.NAMING_ABD_PATTERN: #if $sickbeard.NAMING_ABD_PATTERN == $cur_preset:
#set is_abd_custom = False #set is_abd_custom = False
#end if #end if
<option id="$cur_preset" #if $cur_preset == $sickbeard.NAMING_ABD_PATTERN then "selected=\"selected\"" else ""#>$os.path.join($tmp['dir'], $tmp['name'])</option> <option id="$cur_preset" #if $sickbeard.NAMING_ABD_PATTERN == $cur_preset then $selected else ''#>$os.path.join($tmp['dir'], $tmp['name'])</option>
#end for #end for
<option id="$sickbeard.NAMING_ABD_PATTERN" #if $is_abd_custom then "selected=\"selected\"" else ""#>Custom...</option> <option id="$sickbeard.NAMING_ABD_PATTERN" #if $is_abd_custom then $selected else ''#>Custom...</option>
</select> </select>
</span> </span>
</label> </label>
</div>
<div id="naming_abd_custom"> <div id="naming_abd_custom">
<div class="field-pair"> <div class="field-pair">
@ -592,17 +632,17 @@
<td>09</td> <td>09</td>
</tr> </tr>
<tr> <tr>
<td class="align-right"><i class="icon-info-sign" title="Multi-EP style is ignored"></i> <b>Release Name:</b></td> <td class="align-right"><i class="icon-info-sign" title="Multi-episode style is ignored"></i> <b>Release Name:</b></td>
<td>%RN</td> <td>%RN</td>
<td>Show.Name.2010.03.09.HDTV.XviD-RLSGROUP</td> <td>Show.Name.2010.03.09.HDTV.XviD-RLSGROUP</td>
</tr> </tr>
<tr class="even"> <tr class="even">
<td class="align-right"><i class="icon-info-sign" title="'SickGear' is used in place of RLSGROUP if it could not be properly detected"></i> <b>Release Group:</b></td> <td class="align-right"><i class="icon-info-sign" title="if RLSGROUP is not detected, 'SickGear' is used"></i> <b>Release Group:</b></td>
<td>%RG</td> <td>%RG</td>
<td>RLSGROUP</td> <td>RLSGROUP</td>
</tr> </tr>
<tr> <tr>
<td class="align-right"><i class="icon-info-sign" title="If episode is proper/repack add 'proper' to name."></i> <b>Release Type:</b></td> <td class="align-right"><i class="icon-info-sign" title="Add 'proper' to name if episode is a proper or repack">&nbsp;</i> <b>Release Type:</b></td>
<td>%RT</td> <td>%RT</td>
<td>PROPER</td> <td>PROPER</td>
</tr> </tr>
@ -611,49 +651,70 @@
<br/> <br/>
</div> </div>
</div><!-- /naming_abd_custom --> </div><!-- /naming_abd_custom -->
</div>
</fieldset>
<fieldset class="component-group-list">
<div class="component-group-list">
<div id="naming_abd_example_div"> <div id="naming_abd_example_div">
<h3>Air-By-Date sample:</h3> <div class="component-group-desc episode-sample">
<h3>Air-by-date sample:</h3>
</div>
<div class="example"> <div class="example">
<span class="jumbo" id="naming_abd_example">&nbsp;</span> <span class="jumbo" id="naming_abd_example">&nbsp;</span>
</div> </div>
<br/> <br/>
</div> </div>
</div>
</fieldset>
<div class="field-pair right">
<input type="submit" class="btn config_submitter" value="Save Changes" /><br/>
</div>
</div><!-- /naming_abd_different --> </div><!-- /naming_abd_different -->
<div class="field-pair"> <% ######################## %>
<% ## End of Air-by-Date ## %>
<% ## ## %>
<% ## Start of Sports ## %>
<% ######################## %>
<div class="component-group-desc">
<p>Sport episode naming.</p>
</div>
<div class="field-pair right">
<label for="naming_custom_sports"> <label for="naming_custom_sports">
<span class="component-title">Custom Sports</span> <span class="component-title">Custom sports</span>
<span class="component-desc"> <span class="component-desc">
<input type="checkbox" class="enabler" id="naming_custom_sports" name="naming_custom_sports" #if $sickbeard.NAMING_CUSTOM_SPORTS then "checked=\"checked\"" else ""#/> <input type="checkbox" class="enabler" id="naming_custom_sports" name="naming_custom_sports" #if $sickbeard.NAMING_CUSTOM_SPORTS then $checked else ''#/>
<p>name Sports shows differently than regular shows</p> <p>name sports shows differently than regular shows</p>
</span> </span>
</label> </label>
</div> </div>
<div id="content_naming_custom_sports"> <div id="content_naming_custom_sports">
<div class="field-pair">
<fieldset class="component-group-list">
<div class="field-pair right">
<label for="name_sports_presets"> <label for="name_sports_presets">
<span class="component-title">Naming pattern</span> <span class="component-title">Sports name pattern</span>
<span class="component-desc"> <span class="component-desc">
<select id="name_sports_presets" class="form-control input-sm"> <select id="name_sports_presets" class="form-control input-sm">
#set is_sports_custom = True #set is_sports_custom = True
#for $cur_preset in $naming.name_sports_presets: #for $cur_preset in $naming.name_sports_presets:
#set $tmp = $naming.test_name($cur_preset) #set $tmp = $naming.test_name($cur_preset)
#if $cur_preset == $sickbeard.NAMING_SPORTS_PATTERN: #if $sickbeard.NAMING_SPORTS_PATTERN == $cur_preset:
#set is_sports_custom = False #set is_sports_custom = False
#end if #end if
<option id="$cur_preset" #if $cur_preset == $sickbeard.NAMING_SPORTS_PATTERN then "selected=\"selected\"" else ""#>$os.path.join($tmp['dir'], $tmp['name'])</option> <option id="$cur_preset" #if $sickbeard.NAMING_SPORTS_PATTERN == $cur_preset then $selected else ''#>$os.path.join($tmp['dir'], $tmp['name'])</option>
#end for #end for
<option id="$sickbeard.NAMING_SPORTS_PATTERN" #if $is_sports_custom then "selected=\"selected\"" else ""#>Custom...</option> <option id="$sickbeard.NAMING_SPORTS_PATTERN" #if $is_sports_custom then $selected else ''#>Custom...</option>
</select> </select>
</span> </span>
</label> </label>
</div>
<div id="naming_sports_custom"> <div id="naming_sports_custom">
<div class="field-pair" style="padding-top: 0;"> <div class="field-pair">
<label for="naming_sports_pattern"> <label for="naming_sports_pattern">
<span class="component-title"></span> <span class="component-title"></span>
<span class="component-desc"> <span class="component-desc">
@ -769,17 +830,17 @@
<td>09</td> <td>09</td>
</tr> </tr>
<tr> <tr>
<td class="align-right"><i class="icon-info-sign" title="Multi-EP style is ignored"></i> <b>Release Name:</b></td> <td class="align-right"><i class="icon-info-sign" title="Multi-episode style is ignored"></i> <b>Release Name:</b></td>
<td>%RN</td> <td>%RN</td>
<td>Show.Name.9th.Mar.2011.HDTV.XviD-RLSGROUP</td> <td>Show.Name.9th.Mar.2011.HDTV.XviD-RLSGROUP</td>
</tr> </tr>
<tr class="even"> <tr class="even">
<td class="align-right"><i class="icon-info-sign" title="'SickGear' is used in place of RLSGROUP if it could not be properly detected"></i> <b>Release Group:</b></td> <td class="align-right"><i class="icon-info-sign" title="If RLSGROUP is not detected, 'SickGear' is used"></i> <b>Release Group:</b></td>
<td>%RG</td> <td>%RG</td>
<td>RLSGROUP</td> <td>RLSGROUP</td>
</tr> </tr>
<tr> <tr>
<td class="align-right"><i class="icon-info-sign" title="If episode is proper/repack add 'proper' to name."></i> <b>Release Type:</b></td> <td class="align-right"><i class="icon-info-sign" title="Add 'proper' to name if episode is a proper or repack"></i> <b>Release Type:</b></td>
<td>%RT</td> <td>%RT</td>
<td>PROPER</td> <td>PROPER</td>
</tr> </tr>
@ -788,47 +849,72 @@
<br/> <br/>
</div> </div>
</div><!-- /naming_sports_custom --> </div><!-- /naming_sports_custom -->
</div>
</fieldset>
<fieldset class="component-group-list">
<div class="component-group-list">
<div id="naming_sports_example_div"> <div id="naming_sports_example_div">
<div class="component-group-desc episode-sample">
<h3>Sports sample:</h3> <h3>Sports sample:</h3>
</div>
<div class="example"> <div class="example">
<span class="jumbo" id="naming_sports_example">&nbsp;</span> <span class="jumbo" id="naming_sports_example">&nbsp;</span>
</div> </div>
<br/> <br/>
</div> </div>
</div>
</fieldset>
<div class="field-pair right">
<input type="submit" class="btn config_submitter" value="Save Changes" /><br/>
</div>
</div><!-- /naming_sports_different --> </div><!-- /naming_sports_different -->
<% #################### %>
<% ## End of Sports ## %>
<% ## ## %>
<% ## Start of Anime ## %>
<% #################### %>
<div class="component-group-desc">
<p>Anime episode naming.</p>
</div>
<!-- naming_anime_custom --> <!-- naming_anime_custom -->
<div class="field-pair"> <div class="field-pair right">
<label for="naming_custom_anime"> <label for="naming_custom_anime">
<span class="component-title">Custom Anime</span> <span class="component-title">Custom anime</span>
<span class="component-desc"> <span class="component-desc">
<input type="checkbox" class="enabler" id="naming_custom_anime" name="naming_custom_anime" #if $sickbeard.NAMING_CUSTOM_ANIME then "checked=\"checked\"" else ""#/> <input type="checkbox" class="enabler" id="naming_custom_anime" name="naming_custom_anime" #if $sickbeard.NAMING_CUSTOM_ANIME then $checked else ''#/>
<p>name Anime shows differently than regular shows</p> <p>name anime shows differently than regular shows</p>
</span> </span>
</label> </label>
</div> </div>
<div id="content_naming_custom_anime"> <div id="content_naming_custom_anime">
<div class="field-pair">
<fieldset class="component-group-list">
<div class="field-pair right">
<label for="name_anime_presets"> <label for="name_anime_presets">
<span class="component-title">Name Pattern:</span> <span class="component-title">Anime name pattern</span>
<span class="component-desc"> <span class="component-desc">
<select id="name_anime_presets" class="form-control input-sm"> <select id="name_anime_presets" class="form-control input-sm">
#set is_anime_custom = True #set is_anime_custom = True
#for $cur_preset in $naming.name_anime_presets: #for $cur_preset in $naming.name_anime_presets:
#set $tmp = $naming.test_name($cur_preset) #set $tmp = $naming.test_name($cur_preset)
#if $cur_preset == $sickbeard.NAMING_ANIME_PATTERN: #if $sickbeard.NAMING_ANIME_PATTERN == $cur_preset:
#set is_anime_custom = False #set is_anime_custom = False
#end if #end if
<option id="$cur_preset" #if $cur_preset == $sickbeard.NAMING_ANIME_PATTERN then "selected=\"selected\"" else ""#>$os.path.join($tmp['dir'], $tmp['name'])</option> <option id="$cur_preset" #if $sickbeard.NAMING_ANIME_PATTERN == $cur_preset then $selected else ''#>$os.path.join($tmp['dir'], $tmp['name'])</option>
#end for #end for
<option id="$sickbeard.NAMING_ANIME_PATTERN" #if $is_anime_custom then "selected=\"selected\"" else ""#>Custom...</option> <option id="$sickbeard.NAMING_ANIME_PATTERN" #if $is_anime_custom then $selected else ''#>Custom...</option>
</select> </select>
</span> </span>
</label> </label>
</div>
<div id="naming_anime_custom"> <div id="naming_anime_custom">
<div class="field-pair"> <div class="field-pair">
@ -942,17 +1028,17 @@
<td>720p_BluRay</td> <td>720p_BluRay</td>
</tr> </tr>
<tr class="even"> <tr class="even">
<td class="align-right"><i class="icon-info-sign" title="Multi-EP style is ignored"></i> <b>Release Name:</b></td> <td class="align-right"><i class="icon-info-sign" title="Multi-episode style is ignored"></i> <b>Release Name:</b></td>
<td>%RN</td> <td>%RN</td>
<td>Show.Name.S02E03.HDTV.XviD-RLSGROUP</td> <td>Show.Name.S02E03.HDTV.XviD-RLSGROUP</td>
</tr> </tr>
<tr> <tr>
<td class="align-right"><i class="icon-info-sign" title="'SickGear' is used in place of RLSGROUP if it could not be properly detected"></i> <b>Release Group:</b></td> <td class="align-right"><i class="icon-info-sign" title="If RLSGROUP is not detected, 'SickGear' is used"></i> <b>Release Group:</b></td>
<td>%RG</td> <td>%RG</td>
<td>RLSGROUP</td> <td>RLSGROUP</td>
</tr> </tr>
<tr class="even"> <tr class="even">
<td class="align-right"><i class="icon-info-sign" title="If episode is proper/repack add 'proper' to name."></i> <b>Release Type:</b></td> <td class="align-right"><i class="icon-info-sign" title="Add 'proper' to name if episode is a proper or repack"></i> <b>Release Type:</b></td>
<td>%RT</td> <td>%RT</td>
<td>PROPER</td> <td>PROPER</td>
</tr> </tr>
@ -964,19 +1050,27 @@
<div class="field-pair"> <div class="field-pair">
<label for="naming_anime_multi_ep"> <label for="naming_anime_multi_ep">
<span class="component-title">Multi-Episode style</span> <span class="component-title">Multi episode style</span>
<span class="component-desc"> <span class="component-desc">
<select id="naming_anime_multi_ep" name="naming_anime_multi_ep" class="form-control input-sm"> <select id="naming_anime_multi_ep" name="naming_anime_multi_ep" class="form-control input-sm">
#for $cur_multi_ep in sorted($multiEpStrings.items(), key=lambda x: x[1]): #for $cur_multi_ep in sorted($multiEpStrings.items(), key=lambda x: x[1]):
<option value="$cur_multi_ep[0]" #if $cur_multi_ep[0] == $sickbeard.NAMING_ANIME_MULTI_EP then "selected=\"selected\" class=\"selected\"" else ""#>$cur_multi_ep[1]</option> <option value="$cur_multi_ep[0]" #if $sickbeard.NAMING_ANIME_MULTI_EP == $cur_multi_ep[0] then 'selected="selected" class="selected"' else ''#>$cur_multi_ep[1]</option>
#end for #end for
</select> </select>
</span> </span>
</label> </label>
</div> </div>
</div>
</fieldset>
<fieldset class="component-group-list">
<div id="naming_example_anime_div"> <div id="naming_example_anime_div">
<h3>Single-Episode Anime sample:</h3> <div class="component-group-desc episode-sample">
<h3>Single anime sample:</h3>
</div>
<div class="example"> <div class="example">
<span class="jumbo" id="naming_example_anime">&nbsp;</span> <span class="jumbo" id="naming_example_anime">&nbsp;</span>
</div> </div>
@ -984,18 +1078,24 @@
</div> </div>
<div id="naming_example_multi_anime_div"> <div id="naming_example_multi_anime_div">
<h3>Multi-Episode Anime sample:</h3> <div class="component-group-desc episode-sample">
<h3>Multi anime sample:</h3>
</div>
<div class="example"> <div class="example">
<span class="jumbo" id="naming_example_multi_anime">&nbsp;</span> <span class="jumbo" id="naming_example_multi_anime">&nbsp;</span>
</div> </div>
<br/> <br/>
</div> </div>
</fieldset>
<fieldset class="component-group-list right">
<div class="field-pair"> <div class="field-pair">
<label for="naming_anime"> <label for="naming_anime">
<span class="component-title">Add absolute numbering</span> <span class="component-title">Add absolute numbering</span>
<span class="component-desc"> <span class="component-desc">
<input type="radio" name="naming_anime" id="naming_anime" value="1" #if $sickbeard.NAMING_ANIME == 1 then "checked=\"checked\"" else ""#/> <input type="radio" name="naming_anime" id="naming_anime" value="1" #if $sickbeard.NAMING_ANIME == 1 then $checked else ''#/>
<p>add the absolute number to the season/episode format<br> <p>add the absolute number to the season/episode format<br>
(eg. S15E45 - 310 vs S15E45)</p> (eg. S15E45 - 310 vs S15E45)</p>
</span> </span>
@ -1006,7 +1106,7 @@
<label for="naming_anime_only"> <label for="naming_anime_only">
<span class="component-title">Only absolute numbering</span> <span class="component-title">Only absolute numbering</span>
<span class="component-desc"> <span class="component-desc">
<input type="radio" name="naming_anime" id="naming_anime_only" value="2" #if $sickbeard.NAMING_ANIME == 2 then "checked=\"checked\"" else ""#/> <input type="radio" name="naming_anime" id="naming_anime_only" value="2" #if $sickbeard.NAMING_ANIME == 2 then $checked else ''#/>
<p>replace season/episode format with absolute numbering</p> <p>replace season/episode format with absolute numbering</p>
</span> </span>
</label> </label>
@ -1016,60 +1116,75 @@
<label for="naming_anime_none"> <label for="naming_anime_none">
<span class="component-title">No absolute numbering</span> <span class="component-title">No absolute numbering</span>
<span class="component-desc"> <span class="component-desc">
<input type="radio" name="naming_anime" id="naming_anime_none" value="3" #if $sickbeard.NAMING_ANIME == 3 then "checked=\"checked\"" else ""#/> <input type="radio" name="naming_anime" id="naming_anime_none" value="3" #if $sickbeard.NAMING_ANIME == 3 then $checked else ''#/>
<p>do <b>not</b> include absolute numbering</p> <p>do <b>not</b> include absolute numbering</p>
</span> </span>
</label> </label>
</div> </div>
</fieldset>
<div class="field-pair right">
<input type="submit" class="btn config_submitter" value="Save Changes" /><br/>
</div>
</div><!-- /naming_anime_different --> </div><!-- /naming_anime_different -->
<div></div> <div></div>
<input type="submit" class="btn config_submitter" value="Save Changes" /><br/>
</fieldset>
</div><!-- /component-group2 //--> </div><!-- /component-group2 //-->
<% ######################################################################################### %>
<% ######################################################################################### %>
<% ## TAB 3 ## %>
<% ######################################################################################### %>
<% ######################################################################################### %>
<div id="core-component-group3" class="component-group"> <div id="core-component-group3" class="component-group">
<div class="component-group-desc"> <div class="component-group-desc">
<h3>Metadata</h3> <h3>Metadata</h3>
<p>The data associated to the data. These are files associated to a TV show in the form of images and text that, when supported, will enhance the viewing experience.</p> <p>These are files associated to a TV show in the form of images and text that, where supported, enhance the viewing experience.</p>
</div> </div>
<fieldset class="component-group-list"> <fieldset class="component-group-list">
<div class="field-pair"> <div class="field-pair">
<label> <label>
<span class="component-title">Metadata type</span> <span class="component-title">Metadata target</span>
<span class="component-desc"> <span class="component-desc">
#set $m_dict = $metadata.get_metadata_generator_dict() #set $m_dict = $metadata.get_metadata_generator_dict()
<select id="metadataType" class="form-control input-sm"> <select id="metadataType" class="form-control input-sm">
#for ($cur_name, $cur_generator) in sorted($m_dict.items()): #for ($cur_name, $cur_generator) in sorted($m_dict.items()):
<option value="$cur_generator.get_id()">$cur_name</option> <option value="$cur_generator.get_id()">$cur_name</option>
#end for #end for
</select> </select>
<span>multiple targets can be configured in turn</span>
</span> </span>
</label> </label>
<span>Toggle the metadata options that you wish to be created. <b>Multiple targets may be used.</b></span>
</div> </div>
#for ($cur_name, $cur_generator) in $m_dict.items(): <div class="field-pair">
<span>Choose data files to create with the following toggle options...</span>
</div>
<div class="field-pair">
#for ($cur_name, $cur_generator) in $m_dict.items():
#set $cur_metadata_inst = $sickbeard.metadata_provider_dict[$cur_generator.name] #set $cur_metadata_inst = $sickbeard.metadata_provider_dict[$cur_generator.name]
#set $cur_id = $cur_generator.get_id() #set $cur_id = $cur_generator.get_id()
<div class="metadataDiv" id="$cur_id"> <div class="metadataDiv" id="$cur_id">
<div class="metadata_options_wrapper"> <div class="metadata_options_wrapper">
<h4>Create:</h4> <h4>Create:</h4>
<div class="metadata_options"> <div class="metadata_options">
<label for="${cur_id}_show_metadata"><input type="checkbox" class="metadata_checkbox" id="${cur_id}_show_metadata" #if $cur_metadata_inst.show_metadata then "checked=\"checked\"" else ""#/>&nbsp;Show Metadata</label> <label for="${cur_id}_show_metadata"><input type="checkbox" class="metadata_checkbox" id="${cur_id}_show_metadata" #if $cur_metadata_inst.show_metadata then $checked else ''#/>&nbsp;Show Metadata</label>
<label for="${cur_id}_episode_metadata"><input type="checkbox" class="metadata_checkbox" id="${cur_id}_episode_metadata" #if $cur_metadata_inst.episode_metadata then "checked=\"checked\"" else ""#/>&nbsp;Episode Metadata</label> <label for="${cur_id}_episode_metadata"><input type="checkbox" class="metadata_checkbox" id="${cur_id}_episode_metadata" #if $cur_metadata_inst.episode_metadata then $checked else ''#/>&nbsp;Episode Metadata</label>
<label for="${cur_id}_fanart"><input type="checkbox" class="float-left metadata_checkbox" id="${cur_id}_fanart" #if $cur_metadata_inst.fanart then "checked=\"checked\"" else ""#/>&nbsp;Show Fanart</label> <label for="${cur_id}_fanart"><input type="checkbox" class="float-left metadata_checkbox" id="${cur_id}_fanart" #if $cur_metadata_inst.fanart then $checked else ''#/>&nbsp;Show Fanart</label>
<label for="${cur_id}_poster"><input type="checkbox" class="float-left metadata_checkbox" id="${cur_id}_poster" #if $cur_metadata_inst.poster then "checked=\"checked\"" else ""#/>&nbsp;Show Poster</label> <label for="${cur_id}_poster"><input type="checkbox" class="float-left metadata_checkbox" id="${cur_id}_poster" #if $cur_metadata_inst.poster then $checked else ''#/>&nbsp;Show Poster</label>
<label for="${cur_id}_banner"><input type="checkbox" class="float-left metadata_checkbox" id="${cur_id}_banner" #if $cur_metadata_inst.banner then "checked=\"checked\"" else ""#/>&nbsp;Show Banner</label> <label for="${cur_id}_banner"><input type="checkbox" class="float-left metadata_checkbox" id="${cur_id}_banner" #if $cur_metadata_inst.banner then $checked else ''#/>&nbsp;Show Banner</label>
<label for="${cur_id}_episode_thumbnails"><input type="checkbox" class="float-left metadata_checkbox" id="${cur_id}_episode_thumbnails" #if $cur_metadata_inst.episode_thumbnails then "checked=\"checked\"" else ""#/>&nbsp;Episode Thumbnails</label> <label for="${cur_id}_episode_thumbnails"><input type="checkbox" class="float-left metadata_checkbox" id="${cur_id}_episode_thumbnails" #if $cur_metadata_inst.episode_thumbnails then $checked else ''#/>&nbsp;Episode Thumbnails</label>
<label for="${cur_id}_season_posters"><input type="checkbox" class="float-left metadata_checkbox" id="${cur_id}_season_posters" #if $cur_metadata_inst.season_posters then "checked=\"checked\"" else ""#/>&nbsp;Season Posters</label> <label for="${cur_id}_season_posters"><input type="checkbox" class="float-left metadata_checkbox" id="${cur_id}_season_posters" #if $cur_metadata_inst.season_posters then $checked else ''#/>&nbsp;Season Posters</label>
<label for="${cur_id}_season_banners"><input type="checkbox" class="float-left metadata_checkbox" id="${cur_id}_season_banners" #if $cur_metadata_inst.season_banners then "checked=\"checked\"" else ""#/>&nbsp;Season Banners</label> <label for="${cur_id}_season_banners"><input type="checkbox" class="float-left metadata_checkbox" id="${cur_id}_season_banners" #if $cur_metadata_inst.season_banners then $checked else ''#/>&nbsp;Season Banners</label>
<label for="${cur_id}_season_all_poster"><input type="checkbox" class="float-left metadata_checkbox" id="${cur_id}_season_all_poster" #if $cur_metadata_inst.season_all_poster then "checked=\"checked\"" else ""#/>&nbsp;Season All Poster</label> <label for="${cur_id}_season_all_poster"><input type="checkbox" class="float-left metadata_checkbox" id="${cur_id}_season_all_poster" #if $cur_metadata_inst.season_all_poster then $checked else ''#/>&nbsp;Season All Poster</label>
<label for="${cur_id}_season_all_banner"><input type="checkbox" class="float-left metadata_checkbox" id="${cur_id}_season_all_banner" #if $cur_metadata_inst.season_all_banner then "checked=\"checked\"" else ""#/>&nbsp;Season All Banner</label> <label for="${cur_id}_season_all_banner"><input type="checkbox" class="float-left metadata_checkbox" id="${cur_id}_season_all_banner" #if $cur_metadata_inst.season_all_banner then $checked else ''#/>&nbsp;Season All Banner</label>
</div> </div>
</div> </div>
<div class="metadata_example_wrapper"> <div class="metadata_example_wrapper">
@ -1089,8 +1204,7 @@
</div> </div>
<input type="hidden" name="${cur_id}_data" id="${cur_id}_data" value="$cur_metadata_inst.get_config()" /> <input type="hidden" name="${cur_id}_data" id="${cur_id}_data" value="$cur_metadata_inst.get_config()" />
</div> </div>
#end for #end for
<div class="clearfix"></div><br/> <div class="clearfix"></div><br/>
<input type="submit" class="btn config_submitter" value="Save Changes" /><br/> <input type="submit" class="btn config_submitter" value="Save Changes" /><br/>
@ -1110,7 +1224,7 @@
<script type="text/javascript" charset="utf-8"> <script type="text/javascript" charset="utf-8">
<!-- <!--
jQuery('#config-components').tabs(); jQuery('#config-components').tabs();
jQuery('#tv_download_dir').fileBrowser({ title: 'Select TV Download Directory' }); jQuery('#tv_download_dir').fileBrowser({ title: 'Select completed TV downloads directory' });
//--> //-->
</script> </script>
#include $os.path.join($sickbeard.PROG_DIR,'gui/slick/interfaces/default/inc_bottom.tmpl') #include $os.path.join($sickbeard.PROG_DIR, 'gui/slick/interfaces/default/inc_bottom.tmpl')

View file

@ -230,26 +230,26 @@ $(document).ready(function () {
$.get(sbRoot + '/config/postProcessing/isNamingValid', {pattern: pattern, multi: multi, anime_type: anime_type}, $.get(sbRoot + '/config/postProcessing/isNamingValid', {pattern: pattern, multi: multi, anime_type: anime_type},
function (data) { function (data) {
if (data == "invalid") { if (data == "invalid") {
$('#naming_pattern').qtip('option', { $('#naming_anime_pattern').qtip('option', {
'content.text': 'This pattern is invalid.', 'content.text': 'This pattern is invalid.',
'style.classes': 'qtip-rounded qtip-shadow qtip-red' 'style.classes': 'qtip-rounded qtip-shadow qtip-red'
}); });
$('#naming_pattern').qtip('toggle', true); $('#naming_anime_pattern').qtip('toggle', true);
$('#naming_pattern').css('background-color', '#FFDDDD'); $('#naming_anime_pattern').css('background-color', '#FFDDDD');
} else if (data == "seasonfolders") { } else if (data == "seasonfolders") {
$('#naming_pattern').qtip('option', { $('#naming_anime_pattern').qtip('option', {
'content.text': 'This pattern would be invalid without the folders, using it will force "Flatten" off for all shows.', 'content.text': 'This pattern would be invalid without the folders, using it will force "Flatten" off for all shows.',
'style.classes': 'qtip-rounded qtip-shadow qtip-red' 'style.classes': 'qtip-rounded qtip-shadow qtip-red'
}); });
$('#naming_pattern').qtip('toggle', true); $('#naming_anime_pattern').qtip('toggle', true);
$('#naming_pattern').css('background-color', '#FFFFDD'); $('#naming_anime_pattern').css('background-color', '#FFFFDD');
} else { } else {
$('#naming_pattern').qtip('option', { $('#naming_anime_pattern').qtip('option', {
'content.text': 'This pattern is valid.', 'content.text': 'This pattern is valid.',
'style.classes': 'qtip-rounded qtip-shadow qtip-green' 'style.classes': 'qtip-rounded qtip-shadow qtip-green'
}); });
$('#naming_pattern').qtip('toggle', false); $('#naming_anime_pattern').qtip('toggle', false);
$('#naming_pattern').css('background-color', '#FFFFFF'); $('#naming_anime_pattern').css('background-color', '#FFFFFF');
} }
}); });
} }