Commit 3b11079a authored by Alexandre Beloin's avatar Alexandre Beloin

Merge branch 'develop/v4.0.13'

parents f1a5bf87 47545d04
......@@ -516,7 +516,7 @@ class SickRage(object):
sys.executable,
sickbeard.MY_FULLNAME]
if popen_list:
if popen_list and not sickbeard.NO_RESTART:
popen_list += sickbeard.MY_ARGS
if '--nolaunch' not in popen_list:
popen_list += ['--nolaunch']
......
......@@ -786,6 +786,26 @@ td.tvShow a:hover {
color: #09A2FF;
}
#popover-target label {
margin: 0 5px;
display: block;
}
#popover-target input {
margin-left: 5px;
}
.popover {
margin-left: -50px;
background-color: #333;
}
.popover-content {
background-color: #333;
}
.popover.bottom .arrow:after {
border-bottom-color: #333;
}
/* =======================================================================
home_addShows.tmpl
========================================================================== */
......@@ -3072,3 +3092,26 @@ jquery.confirm.css
#confirmBox .red:hover {
background-color: #A13331;
}
/* =======================================================================
bootstarp modal
========================================================================== */
.modal-content {
background-color: #3D3D3D;
}
.modal-body {
background-color: #3D3D3D;
}
.modal-header {
padding:9px 15px;
border-bottom:1px solid #eee;
background-color: #15528F;
-webkit-border-top-left-radius: 5px;
-webkit-border-top-right-radius: 5px;
-moz-border-radius-topleft: 5px;
-moz-border-radius-topright: 5px;
border-top-left-radius: 5px;
border-top-right-radius: 5px;
}
......@@ -768,6 +768,17 @@ td.tvShow a:hover {
color: #428BCA;
}
#popover-target label {
margin: 0 5px;
display: block;
}
#popover-target input {
margin-left: 5px;
}
.popover {
margin-left: -50px;
}
/* =======================================================================
home_addShows.tmpl
========================================================================== */
......@@ -3009,3 +3020,19 @@ jquery.confirm.css
#confirmBox .red:hover {
background-color: #A13331;
}
/* =======================================================================
bootstarp modal
========================================================================== */
.modal-header {
padding:9px 15px;
border-bottom:1px solid #eee;
background-color: #F5F1E4;
-webkit-border-top-left-radius: 5px;
-webkit-border-top-right-radius: 5px;
-moz-border-radius-topleft: 5px;
-moz-border-radius-topright: 5px;
border-top-left-radius: 5px;
border-top-right-radius: 5px;
}
......@@ -794,6 +794,17 @@ td.tvShow a:hover {
color: #428BCA;
}
#popover-target label {
margin: 0 5px;
display: block;
}
#popover-target input {
margin-left: 5px;
}
.popover {
margin-left: -50px;
}
/* =======================================================================
home_addShows.tmpl
========================================================================== */
......
This diff was suppressed by a .gitattributes entry.
This diff was suppressed by a .gitattributes entry.
This diff was suppressed by a .gitattributes entry.
......@@ -124,7 +124,6 @@
sortList: sortList,
textExtraction: {
0: function(node) { return \$(node).find('span').text().toLowerCase() },
4: function(node) { return \$(node).find('img').attr('alt') },
5: function(node) { return \$(node).find('span').text().toLowerCase() }
},
headers: {
......@@ -249,7 +248,7 @@
</td>
<td align="center">
<a href="$sbRoot/home/searchEpisode?show=${cur_result['showid']}&amp;season=$cur_result['season']&amp;episode=$cur_result['episode']" title="Manual Search" id="forceUpdate-${cur_result['showid']}" class="forceUpdate epSearch"><img alt="[search]" height="16" width="16" src="$sbRoot/images/search16.png" id="forceUpdateImage-${cur_result['showid']}" /></a>
<a href="$sbRoot/home/searchEpisode?show=${cur_result['showid']}&amp;season=$cur_result['season']&amp;episode=$cur_result['episode']" title="Manual Search" id="forceUpdate-${cur_result['showid']}x${cur_result['season']}x${cur_result['episode']}" class="forceUpdate epSearch"><img alt="[search]" height="16" width="16" src="$sbRoot/images/search16.png" id="forceUpdateImage-${cur_result['showid']}" /></a>
</td>
</tr>
<!-- end $cur_result['show_name'] //-->
......
......@@ -66,8 +66,11 @@ useLegacyImportMode = False
<tr><td class="infoTableHeader">SR Config file:</td><td class="infoTableCell">$sickbeard.CONFIG_FILE</td></tr>
<tr><td class="infoTableHeader">SR Database file:</td><td class="infoTableCell">$db.dbFilename()</td></tr>
<tr><td class="infoTableHeader">SR Cache Dir:</td><td class="infoTableCell">$sickbeard.CACHE_DIR</td></tr>
<tr><td class="infoTableHeader">SR Log Dir:</td><td class="infoTableCell">$sickbeard.LOG_DIR</td></tr>
<tr><td class="infoTableHeader">SR Arguments:</td><td class="infoTableCell">$sickbeard.MY_ARGS</td></tr>
#if $sickbeard.WEB_ROOT
<tr><td class="infoTableHeader">SR Web Root:</td><td class="infoTableCell">$sickbeard.WEB_ROOT</td></tr>
#end if
<tr><td class="infoTableHeader">Python Version:</td><td class="infoTableCell">$sys.version[:120]</td></tr>
<tr class="infoTableSeperator"><td class="infoTableHeader"><i class="icon16-sb"></i> Homepage</td><td class="infoTableCell"><a href="<%= anon_url('http://www.sickrage.tv/') %>" rel="noreferrer" onclick="window.open(this.href, '_blank'); return false;">http://www.sickrage.tv/</a></td></tr>
<tr><td class="infoTableHeader"><i class="icon16-web"></i> Forums</td><td class="infoTableCell"><a href="<%= anon_url('http://sickrage.tv/forums/') %>" rel="noreferrer" onclick="window.open(this.href, '_blank'); return false;">http://sickrage.tv/forums/</a></td></tr>
......
......@@ -518,7 +518,19 @@
</span>
</label>
</div>
<div class="field-pair">
<label for="no_restart">
<span class="component-title">No Restart</span>
<span class="component-desc">
<input type="checkbox" name="no_restart" id="no_restart" #if $sickbeard.NO_RESTART then 'checked="checked"' else ''#/>
<p>Only shutdown when restarting SR.
Only select this when you have external software restarting SR automatically when it stops (like FireDaemon)</p>
</span>
</label>
</div>
<div class="field-pair">
<label for="encryption_version">
<span class="component-title">Encrypt passwords</span>
......
......@@ -1496,6 +1496,16 @@
</label>
</div>
</div>
<div class="field-pair">
<label for="trakt_blacklist_name">
<span class="component-title">Traktv BlackList name:</span>
<input type="text" name="trakt_blacklist_name" id="trakt_blacklist_name" value="$sickbeard.TRAKT_BLACKLIST_NAME" class="form-control input-sm input150" />
</label>
<label>
<span class="component-title">&nbsp;</span>
<span class="component-desc">Name(slug) of List on Traktv for blacklisting show on tranding page</span>
</label>
</div>
<div class="testNotification" id="testTrakt-result">Click below to test.</div>
<input type="button" class="btn" value="Test Trakt" id="testTrakt" />
<input type="submit" class="btn config_submitter" value="Save Changes" />
......
#import os.path
#import sickbeard
#import sys
#from sickbeard.common import *
#from sickbeard import config
#from sickbeard import metadata
......@@ -71,7 +72,12 @@
<span class="component-desc">
<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"}
#for $curAction in ('copy', 'move', 'hardlink', 'symlink'):
#if sys.platform == 'win32'
#set $process_action = ('copy', 'move')
#else
#set $process_action = ('copy', 'move', 'hardlink', 'symlink')
#end if
#for $curAction in $process_action:
#if $sickbeard.PROCESS_METHOD == $curAction:
#set $process_method = "selected=\"selected\""
#else
......@@ -188,6 +194,18 @@
<span class="component-desc">eg. NZBMedia w/ NZBGET, sabToSickbeard w/ SABnzbd+!</span>
</label>
</div>
<div class="field-pair">
<input type="checkbox" name="no_delete" id="no_delete" #if $sickbeard.NO_DELETE == True then "checked=\"checked\"" else ""# />
<label for="no_delete">
<span class="component-title">Don't delete empty folders</span>
<span class="component-desc">Leave empty folders when Post Processing?</span>
</label>
<label class="nocheck" for="no_delete">
<span class="component-title">&nbsp;</span>
<span class="component-desc"><b>NOTE:</b> Can be overridden using manual Post Processing</span>
</label>
</div>
<div class="field-pair">
<label class="nocheck">
......@@ -283,6 +301,10 @@
<img src="$sbRoot/images/legend16.png" width="16" height="16" alt="[Toggle Key]" id="show_naming_key" title="Toggle Naming Legend" class="legend" class="legend" />
</span>
</label>
<label class="nocheck">
<span class="component-title">&nbsp;</span>
<span class="component-desc"><b>NOTE:</b> Dont' forget to add quality pattern. Otherwise after post-procesing the episode will have UNKNOWN quality</span>
</label>
</div>
<div id="naming_key" class="nocheck" style="display: none;">
......
......@@ -43,20 +43,20 @@
<fieldset class="component-group-list">
<div class="field-pair">
<label for="download_propers">
<span class="component-title">Download propers</span>
<label for="randomize_providers">
<span class="component-title">Randomize Providers</span>
<span class="component-desc">
<input type="checkbox" name="download_propers" id="download_propers" class="enabler" <%= html_checked if sickbeard.DOWNLOAD_PROPERS == True else '' %>/>
<p>replace original download with "Proper" or "Repack" if nuked</p>
<input type="checkbox" name="randomize_providers" id="randomize_providers" class="enabler" <%= html_checked if sickbeard.RANDOMIZE_PROVIDERS == True else '' %>/>
<p>randomize the provider search order instead of going in order of placement</p>
</span>
</label>
</div>
<div class="field-pair">
<label for="randomize_providers">
<span class="component-title">Randomize Providers</span>
<label for="download_propers">
<span class="component-title">Download propers</span>
<span class="component-desc">
<input type="checkbox" name="randomize_providers" id="randomize_providers" class="enabler" <%= html_checked if sickbeard.RANDOMIZE_PROVIDERS == True else '' %>/>
<p>randomize the provider search order instead of going in order of placement</p>
<input type="checkbox" name="download_propers" id="download_propers" class="enabler" <%= html_checked if sickbeard.DOWNLOAD_PROPERS == True else '' %>/>
<p>replace original download with "Proper" or "Repack" if nuked</p>
</span>
</label>
</div>
......@@ -107,6 +107,16 @@
</label>
</div>
<div class="field-pair">
<label>
<span class="component-title">Missed episodes range</span>
<span class="component-desc">
<input type="number" step="1" min="7" name="coming_eps_missed_range" id="coming_eps_missed_range" value="$sickbeard.COMING_EPS_MISSED_RANGE" class="form-control input-sm input75" />
<p>Set the range in days of the missed episodes</p>
</span>
</label>
</div>
<div class="field-pair">
<label>
<span class="component-title">Usenet retention</span>
......@@ -309,6 +319,16 @@
</span>
</label>
</div>
#if sickbeard.ALLOW_HIGH_PRIORITY == True
<div class="field-pair">
<label for="sab_forced">
<span class="component-title">Use forced priority</span>
<span class="component-desc">
<input type="checkbox" name="sab_forced" class="enabler" id="sab_forced" <%= html_checked if sickbeard.SAB_FORCED else '' %>/>
<p>enable to change priority from HIGH to FORCED</p></span>
</label>
</div>
#end if
</div>
<div id="nzbget_settings">
......
......@@ -81,10 +81,17 @@
<select name="indexerLang" id="indexerLangSelect" class="form-control form-control-inline input-sm bfh-languages" data-language="en" data-available="#echo ','.join($sickbeard.indexerApi().config['valid_languages'])#"></select><br />
<br />
<b>Flatten files (no folders):</b> <input type="checkbox" name="flatten_folders" #if $show.flatten_folders == 1 and not $sickbeard.NAMING_FORCE_FOLDERS then "checked=\"checked\"" else ""# #if $sickbeard.NAMING_FORCE_FOLDERS then "disabled=\"disabled\"" else ""#/><br />
<b>Paused:</b> <input type="checkbox" name="paused" #if $show.paused == 1 then "checked=\"checked\"" else ""# /><br />
<b>Subtitles:</b> <input type="checkbox" name="subtitles"#if $show.subtitles == 1 and $sickbeard.USE_SUBTITLES then " checked=\"checked\"" else ""##if not $sickbeard.USE_SUBTITLES then " disabled=\"disabled\"" else ""#/><br />
<br/>
<b>Flatten files (no folders): </b> <input type="checkbox" name="flatten_folders" #if $show.flatten_folders == 1 and not $sickbeard.NAMING_FORCE_FOLDERS then "checked=\"checked\"" else ""# #if $sickbeard.NAMING_FORCE_FOLDERS then "disabled=\"disabled\"" else ""#/><br />
(Disabled: episodes folder-grouped by season. Enabled: no season folders)<br/>
<br />
<b>Paused: </b> <input type="checkbox" name="paused" #if $show.paused == 1 then "checked=\"checked\"" else ""# /><br />
(check this if you wish to pause this show. Will not download anything until unpause)<br/>
<br />
<b>Subtitles: </b> <input type="checkbox" name="subtitles"#if $show.subtitles == 1 and $sickbeard.USE_SUBTITLES then " checked=\"checked\"" else ""##if not $sickbeard.USE_SUBTITLES then " disabled=\"disabled\"" else ""#/><br />
(check this if you wish to search for subtitles in this show)<br/>
<br />
<b>Scene Numbering: </b>
<input type="checkbox" name="scene" #if $show.scene == 1 then "checked=\"checked\"" else ""# /><br/>
......
......@@ -29,7 +29,8 @@
#set $sql_statement += ' AND ((airdate <= ' + $today + ' AND (status = ' + str($SKIPPED) + ' OR status = ' + str($WANTED) + ' OR status = ' + str($FAILED) + ')) '
#set $sql_statement += ' OR (status IN ' + status_quality + ') OR (status IN ' + status_download + '))) AS ep_total, '
#set $sql_statement += ' (SELECT airdate FROM tv_episodes WHERE showid=tv_eps.showid AND airdate >= ' + $today + ' AND (status = ' + str($UNAIRED) + ' OR status = ' + str($WANTED) + ') ORDER BY airdate ASC LIMIT 1) AS ep_airs_next '
#set $sql_statement += ' (SELECT airdate FROM tv_episodes WHERE showid=tv_eps.showid AND airdate >= ' + $today + ' AND (status = ' + str($UNAIRED) + ' OR status = ' + str($WANTED) + ') ORDER BY airdate ASC LIMIT 1) AS ep_airs_next, '
#set $sql_statement += ' (SELECT airdate FROM tv_episodes WHERE showid=tv_eps.showid AND airdate <> 1 AND status <> ' + str($UNAIRED) + ' ORDER BY airdate DESC LIMIT 1) AS ep_airs_prev '
#set $sql_statement += ' FROM tv_episodes tv_eps GROUP BY showid'
#set $sql_result = $myDB.select($sql_statement)
......@@ -86,49 +87,57 @@
});
\$("#showListTableShows:has(tbody tr)").tablesorter({
sortList: [[5,1],[1,0]],
sortList: [[6,1],[2,0]],
textExtraction: {
0: function(node) { return \$(node).find("span").text().toLowerCase(); },
3: function(node) { return \$(node).find("span").text().toLowerCase(); },
4: function(node) { return \$(node).find("span").text(); },
5: function(node) { return \$(node).find("img").attr("alt"); }
1: function(node) { return \$(node).find("span").text().toLowerCase(); },
3: function(node) { return \$(node).find("span").prop("title").toLowerCase(); },
4: function(node) { return \$(node).find("span").text().toLowerCase(); },
5: function(node) { return \$(node).find("span").text(); },
6: function(node) { return \$(node).find("img").attr("alt"); }
},
widgets: ['saveSort', 'zebra', 'stickyHeaders', 'filter'],
widgets: ['saveSort', 'zebra', 'stickyHeaders', 'filter', 'columnSelector'],
headers: {
0: { sorter: 'isoDate' },
1: { sorter: 'loadingNames' },
3: { sorter: 'quality' },
4: { sorter: 'eps' }
1: { columnSelector: false },
2: { sorter: 'loadingNames' },
4: { sorter: 'quality' },
5: { sorter: 'eps' }
},
widgetOptions : {
filter_columnFilters: false,
filter_reset: '.resetshows'
filter_reset: '.resetshows',
columnSelector_mediaquery: false,
},
sortStable: true,
sortAppend: [[1,0]]
sortAppend: [[2,0]]
});
\$("#showListTableAnime:has(tbody tr)").tablesorter({
sortList: [[5,1],[1,0]],
sortList: [[6,1],[2,0]],
textExtraction: {
0: function(node) { return \$(node).find("span").text().toLowerCase(); },
3: function(node) { return \$(node).find("span").text().toLowerCase(); },
4: function(node) { return \$(node).find("span").text(); },
5: function(node) { return \$(node).find("img").attr("alt"); }
0: function(node) { return \$(node).find("span").text().toLowerCase(); },
1: function(node) { return \$(node).find("span").text().toLowerCase(); },
3: function(node) { return \$(node).find("span").prop("title").toLowerCase(); },
4: function(node) { return \$(node).find("span").text().toLowerCase(); },
5: function(node) { return \$(node).find("span").text(); },
6: function(node) { return \$(node).find("img").attr("alt"); }
},
widgets: ['saveSort', 'zebra', 'stickyHeaders', 'filter'],
widgets: ['saveSort', 'zebra', 'stickyHeaders', 'filter', 'columnSelector'],
headers: {
0: { sorter: 'isoDate' },
1: { sorter: 'loadingNames' },
3: { sorter: 'quality' },
4: { sorter: 'eps' }
1: { columnSelector: false },
2: { sorter: 'loadingNames' },
4: { sorter: 'quality' },
5: { sorter: 'eps' }
},
widgetOptions : {
filter_columnFilters: false,
filter_reset: '.resetanime'
filter_reset: '.resetanime',
columnSelector_mediaquery: false,
},
sortStable: true,
sortAppend: [[1,0]]
sortAppend: [[2,0]]
});
if (\$("#showListTableShows").find("tbody").find("tr").size() > 0)
......@@ -160,7 +169,7 @@
sortAscending: $sickbeard.POSTER_SORTDIR,
layoutMode: 'masonry',
masonry: {
columnWidth: 12,
columnWidth: 13,
isFitWidth: true
},
getSortData: {
......@@ -200,6 +209,21 @@
\$.get(this.options[this.selectedIndex].getAttribute('data-sort'));
});
\$('#popover')
.popover({
placement: 'bottom',
html: true, // required if content has HTML
content: '<div id="popover-target"></div>'
})
// bootstrap popover event triggered when the popover opens
.on('shown.bs.popover', function () {
// call this function to copy the column selection code into the popover
\$.tablesorter.columnSelector.attachTo( \$('#showListTableShows'), '#popover-target');
#if $sickbeard.ANIME_SPLIT_HOME:
\$.tablesorter.columnSelector.attachTo( \$('#showListTableAnime'), '#popover-target');
#end if
});
});
//-->
......@@ -212,6 +236,9 @@
#end if
<div id="HomeLayout" class="pull-right" style="margin-top: -40px;">
#if $layout != 'poster':
<button id="popover" type="button" class="btn btn-inline">Select Column</button>
#end if
<span> Layout:
<select name="layout" class="form-control form-control-inline input-sm" onchange="location = this.options[this.selectedIndex].value;">
<option value="$sbRoot/setHomeLayout/?layout=poster" #if $sickbeard.HOME_LAYOUT == "poster" then "selected=\"selected\"" else ""#>Poster</option>
......@@ -221,7 +248,8 @@
</select>
#if $layout != 'poster':
Search:
<input class="search form-control form-control-inline input-sm input200" type="search" data-column="1" placeholder="Search Show Name"> <button type="button" class="resetshows resetanime btn btn-inline">Reset Search</button>
<input class="search form-control form-control-inline input-sm input200" type="search" data-column="1" placeholder="Search Show Name">
<button type="button" class="resetshows resetanime btn btn-inline">Reset Search</button>
#end if
</span>
......@@ -413,12 +441,12 @@ $myShowList.sort(lambda x, y: cmp(x.name, y.name))
<td class="show-table">
#if $layout != 'simple':
#if $curShow.network:
<img class="show-network-image" src="$sbRoot/images/network/${curShow.network.replace(u"\u00C9",'e').replace(u"\u00E9",'e').lower()}.png" alt="$curShow.network" title="$curShow.network" />
<span title="$curShow.network"><img class="show-network-image" src="$sbRoot/images/network/${curShow.network.replace(u"\u00C9",'e').replace(u"\u00E9",'e').lower()}.png" alt="$curShow.network" title="$curShow.network" /></span>
#else:
<img class="show-network-image" src="$sbRoot/images/network/nonetwork.png" alt="No Network" title="No Network" />
<span title="No Network"><img class="show-network-image" src="$sbRoot/images/network/nonetwork.png" alt="No Network" title="No Network" /></span>
#end if
#else:
$curShow.network
<span title="$curShow.network">$curShow.network</span>
#end if
</td>
......@@ -447,6 +475,7 @@ $myShowList.sort(lambda x, y: cmp(x.name, y.name))
<thead>
<tr>
<th class="nowrap">Next Ep</th>
<th class="nowrap">Prev Ep</th>
<th>Show</th>
<th>Network</th>
<th>Quality</th>
......@@ -459,12 +488,19 @@ $myShowList.sort(lambda x, y: cmp(x.name, y.name))
<tfoot>
<tr>
<th rowspan="1" colspan="1" align="center"><a href="$sbRoot/home/addShows/">Add Show</a></th>
<th rowspan="1" colspan="6"></th>
<th>&nbsp;</th>
<th>&nbsp;</th>
<th>&nbsp;</th>
<th>&nbsp;</th>
<th>&nbsp;</th>
<th>&nbsp;</th>
<th>&nbsp;</th>
</tr>
</tfoot>
<tbody>
#if $sickbeard.showQueueScheduler.action.loadingShowList
<tbody class="tablesorter-infoOnly">
#for $curLoadingShow in $sickbeard.showQueueScheduler.action.loadingShowList:
#if $curLoadingShow.show != None and $curLoadingShow.show in $sickbeard.showList:
......@@ -476,7 +512,7 @@ $myShowList.sort(lambda x, y: cmp(x.name, y.name))
<td></td>
<td>
#if $curLoadingShow.show == None:
Loading... ($curLoadingShow.show_name)
<span title="">Loading... ($curLoadingShow.show_name)</span>
#else:
<a href="displayShow?show=$curLoadingShow.show.indexerid">$curLoadingShow.show.name</a>
#end if
......@@ -487,11 +523,16 @@ $myShowList.sort(lambda x, y: cmp(x.name, y.name))
<td></td>
</tr>
#end for
</tbody>
#end if
<tbody>
$myShowList.sort(lambda x, y: cmp(x.name, y.name))
#for $curShow in $myShowList:
#set $cur_airs_next = ''
#set $cur_airs_prev = ''
#set $cur_snatched = 0
#set $cur_downloaded = 0
#set $cur_total = 0
......@@ -499,6 +540,8 @@ $myShowList.sort(lambda x, y: cmp(x.name, y.name))
#if $curShow.indexerid in $show_stat:
#set $cur_airs_next = $show_stat[$curShow.indexerid]['ep_airs_next']
#set $cur_airs_prev = $show_stat[$curShow.indexerid]['ep_airs_prev']
#set $cur_snatched = $show_stat[$curShow.indexerid]['ep_snatched']
#if not $cur_snatched:
......@@ -552,7 +595,20 @@ $myShowList.sort(lambda x, y: cmp(x.name, y.name))
#else:
<td align="center" class="nowrap"></td>
#end if
#if $cur_airs_prev
#set $pdatetime = $sbdatetime.sbdatetime.convert_to_setting($network_timezones.parse_date_time($cur_airs_prev,$curShow.airs,$curShow.network))
<td align="center" class="nowrap"><div class="${fuzzydate}">
#try
$sbdatetime.sbdatetime.sbfdate($pdatetime)
#except ValueError
Invalid date
#end try
</div><span class="sort_data">$calendar.timegm($pdatetime.timetuple())</span></td>
#else:
<td align="center" class="nowrap"></td>
#end if
#if $layout == 'small':
<td class="tvShow">
<div class="imgsmallposter $layout">
......@@ -577,14 +633,14 @@ $myShowList.sort(lambda x, y: cmp(x.name, y.name))
#if $layout != 'simple':
<td align="center">
#if $curShow.network:
<img id="network" width="54" height="27" src="$sbRoot/images/network/${curShow.network.replace(u"\u00C9",'e').replace(u"\u00E9",'e').lower()}.png" alt="$curShow.network" title="$curShow.network" />
<span title="$curShow.network"><img id="network" width="54" height="27" src="$sbRoot/images/network/${curShow.network.replace(u"\u00C9",'e').replace(u"\u00E9",'e').lower()}.png" alt="$curShow.network" title="$curShow.network" /></span>
#else:
<img id="network" width="54" height="27" src="$sbRoot/images/network/nonetwork.png" alt="No Network" title="No Network" />
<span title="No Network"><img id="network" width="54" height="27" src="$sbRoot/images/network/nonetwork.png" alt="No Network" title="No Network" /></span>
#end if
</td>
#else:
<td>
$curShow.network
<span title="$curShow.network">$curShow.network</span>
</td>
#end if
......
......@@ -70,7 +70,7 @@
<br /><br />
<b>*</b> This will only affect the language of the retrieved metadata file contents and episode filenames.<br />
This <b>DOES NOT</b> allow SickRage to download non-english TV episodes!<br />
<b>**</b> The indexer implementation doesn't currently support specials.<br />
<b>** IMPORTANT: </b> TVRAGE indexer implementation doesn't currently support <b>specials</b> and <b>banners/posters</b>.<br />
<br />
<div id="searchResults" style="height: 100%;"><br/></div>
#end if
......
......@@ -61,6 +61,15 @@
<span style="line-height: 0; font-size: 12px;"><i>&nbsp;(Check it to replace the file even if it exists at higher quality)</i></span>
</td>
</tr>
<tr>
<td>
<b>Delete files and folders:</b>
</td>
<td>
<input id="delete_on" name="delete_on" type="checkbox">
<span style="line-height: 0; font-size: 12px;"><i>&nbsp;(Check it to delete files and folders like auto processing)</i></span>
</td>
</tr>
#if $sickbeard.USE_FAILED_DOWNLOADS:
<tr>
<td>
......
......@@ -10,20 +10,20 @@
<div class="footer clearfix">
#set $myDB = $db.DBConnection()
#set $today = str($datetime.date.today().toordinal())
#set status_quality = '(' + ','.join([str(quality) for quality in $Quality.SNATCHED + $Quality.SNATCHED_PROPER]) + ')'
#set status_download = '(' + ','.join([str(quality) for quality in $Quality.DOWNLOADED + [$ARCHIVED]]) + ')'
#set $sql_statement = 'SELECT '
#set $sql_statement += '(SELECT COUNT(*) FROM tv_episodes WHERE season > 0 AND episode > 0 AND airdate > 1 AND status IN ' + $status_quality + ') AS ep_snatched, '
#set $sql_statement += '(SELECT COUNT(*) FROM tv_episodes WHERE season > 0 AND episode > 0 AND airdate > 1 AND status IN ' + $status_download + ') AS ep_downloaded, '
#set $sql_statement += '(SELECT COUNT(*) FROM tv_episodes WHERE season > 0 AND episode > 0 AND airdate > 1 '
#set $sql_statement += ' AND ((airdate <= ' + $today + ' AND (status = ' + str($SKIPPED) + ' OR status = ' + str($WANTED) + ')) '
#set $sql_statement += ' OR (status IN ' + status_quality + ') OR (status IN ' + status_download + '))) AS ep_total '
#set $sql_statement += ' FROM tv_episodes tv_eps LIMIT 1'
#set status_quality = '(%s)' % ','.join([str(quality) for quality in $Quality.SNATCHED + $Quality.SNATCHED_PROPER])
#set status_download = '(%s)' % ','.join([str(quality) for quality in $Quality.DOWNLOADED + [$ARCHIVED]])
#set $sql_statement = 'SELECT '\
+ '(SELECT COUNT(*) FROM tv_episodes WHERE season > 0 AND episode > 0 AND airdate > 1 AND status IN %s) AS ep_snatched, '\
% $status_quality\
+ '(SELECT COUNT(*) FROM tv_episodes WHERE season > 0 AND episode > 0 AND airdate > 1 AND status IN %s) AS ep_downloaded, '\