2014-03-10 05:18:05 +00:00
#import sickbeard
#from sickbeard import subtitles , sbdatetime , network_timezones
#import sickbeard . helpers
#from sickbeard . common import *
2014-11-09 02:49:38 +00:00
#from sickbeard . helpers import anon_url
2014-03-10 05:18:05 +00:00
#from lib import subliminal
#import os . path , os
#import datetime
2014-11-09 02:49:38 +00:00
2015-01-24 23:46:13 +00:00
#set global $ title = $ show . name
#set global $ topmenu = ' home '
#set $ exceptions_string = ' , ' . join ( $ show . exceptions )
#include $ os . path . join ( $ sickbeard . PROG_DIR , ' gui/slick/interfaces/default/inc_top.tmpl ' )
2014-03-10 05:18:05 +00:00
2014-07-03 23:51:39 +00:00
<script type="text/javascript" src=" $ sbRoot /js/lib/jquery.bookmarkscroll.js? $ sbPID "></script>
2014-03-10 05:18:05 +00:00
<input type="hidden" id="sbRoot" value=" $ sbRoot " />
<script type="text/javascript" src=" $ sbRoot /js/displayShow.js? $ sbPID "></script>
<script type="text/javascript" src=" $ sbRoot /js/plotTooltip.js? $ sbPID "></script>
2014-05-26 18:07:10 +00:00
<script type="text/javascript" src=" $ sbRoot /js/sceneExceptionsTooltip.js? $ sbPID "></script>
2015-03-14 02:48:38 +00:00
#if $ sickbeard . USE_IMDB_INFO :
2014-09-30 22:20:37 +00:00
<script type="text/javascript" src=" $ sbRoot /js/ratingTooltip.js? $ sbPID "></script>
2015-03-14 02:48:38 +00:00
#end if
2014-03-10 05:18:05 +00:00
<script type="text/javascript" src=" $ sbRoot /js/ajaxEpSearch.js? $ sbPID "></script>
<script type="text/javascript" src=" $ sbRoot /js/ajaxEpSubtitles.js? $ sbPID "></script>
2015-03-23 01:05:13 +00:00
<script type="text/javascript" src=" $ sbRoot /js/lib/jquery.collapser.min.js? $ sbPID "></script>
2014-05-23 15:20:44 +00:00
<script type="text/javascript" charset="utf-8">
<!--
\$(document).ready(function(){
2015-03-14 02:48:38 +00:00
#set $ fuzzydate = ' airdate '
#if $ sickbeard . FUZZY_DATING :
2014-05-23 15:20:44 +00:00
fuzzyMoment({
containerClass : '. ${ fuzzydate } ',
dateHasTime : false,
dateFormat : ' ${ sickbeard . DATE_PRESET } ',
timeFormat : ' ${ sickbeard . TIME_PRESET } ',
2015-03-14 02:48:38 +00:00
trimZero : #if $ sickbeard . TRIM_ZERO then ' true ' else ' false ' #
2014-05-23 15:20:44 +00:00
});
2015-03-14 02:48:38 +00:00
#end if
#raw
2014-06-03 23:40:05 +00:00
$('.addQTip').each(function () {
2014-09-30 22:20:37 +00:00
$(this).css({'cursor':'help', 'text-shadow':'0px 0px 0.5px #666'});
2014-06-03 23:40:05 +00:00
$(this).qtip({
show: {solo:true},
position: {viewport:$(window), my:'left center', adjust:{ y: -10, x: 2 }},
2015-03-23 01:05:13 +00:00
style: {classes:'qtip-rounded qtip-shadow qtip-maxwidth'}
2014-06-03 23:40:05 +00:00
});
});
2015-03-14 02:48:38 +00:00
#end raw
#if $ sickbeard . USE_IMDB_INFO :
2014-09-30 22:20:37 +00:00
\$.fn.generateStars = function() {
return this.each(function(i,e){\$(e).html(\$('<span/>').width(\$(e).text()*12));});
};
\$('.imdbstars').generateStars();
2015-03-14 02:48:38 +00:00
#end if
2014-12-12 02:36:23 +00:00
TVShowList = [ ${ tvshow_id_csv } ]
2014-05-23 15:20:44 +00:00
});
//-->
</script>
2014-03-10 05:18:05 +00:00
2015-03-23 01:05:13 +00:00
#if $ sickbeard . DISPLAY_BACKGROUND :
<style type="text/css">
body{color: #fff }
th.row-seasonheader h3{color: #fff }
.tvshowImg{border-color:rgba(0,0,0,0.5)}
#if $ sickbeard . THEME_NAME == ' light ' :
a,.footerhighlight{color: #C 7 DB40 }
a:hover,a:focus{color: #9FAF33}
#end if
</style>
<div class="background-container">
<div style="background-image: url('<!-- background here -->');" class="background #if $ sickbeard . DISPLAY_BACKGROUND_TRANSPARENT == ' transparent ' then ' background-transparent ' else ' ' # "></div>
</div>
#end if
2014-10-21 19:09:01 +00:00
<div class="pull-left form-inline">
Change Show:
<div class="navShow"><img id="prevShow" src=" $ sbRoot /images/prev.png" alt="<<" title="Prev Show" /></div>
2015-03-14 02:48:38 +00:00
<select id="pickShow" class="form-control form-control-inline input-sm">
#for $ curShowList in $ sortedShowLists :
#set $ curShowType = $ curShowList [ 0 ]
#set $ curShowList = $ curShowList [ 1 ]
#if 1 < len ( $ sortedShowLists ) :
<optgroup label=" $ curShowType ">
#end if
#for $ curShow in $ curShowList :
<option value=" $ curShow . indexerid " #if $ curShow == $ show then ' selected= " selected " ' else ' ' # > $ curShow . name </option>
#end for
#if 1 < len ( $ sortedShowLists ) :
</optgroup>
#end if
#end for
</select>
2014-10-21 19:09:01 +00:00
<div class="navShow"><img id="nextShow" src=" $ sbRoot /images/next.png" alt=">>" title="Next Show" /></div>
</div>
2014-03-10 05:18:05 +00:00
2015-03-23 01:05:13 +00:00
<div class="clearfix" style="margin-bottom:15px"></div>
2014-09-30 22:20:37 +00:00
2015-03-23 01:05:13 +00:00
#if $ show_message :
<div class="alert alert-info">
$ show_message
2014-09-30 22:20:37 +00:00
</div>
2015-03-23 01:05:13 +00:00
#end if
#if $ sickbeard . DISPLAY_BACKGROUND :
#set $ infotag = ' info-tag-bg '
#set $ genretag = ' genre-tag-bg '
#else
#set $ infotag = ' info-tag-nobg '
#set $ genretag = ' genre-tag-nobg '
#end if
<div class="display-show-container">
<div id="posterCol" class="hidden-xs">
<a href=" $ sbRoot /showPoster/?show= $ show . indexerid &which=poster" rel="dialog" title="View Poster for $ show . name "><img src=" $ sbRoot /showPoster/?show= $ show . indexerid &which=poster_thumb" class="tvshowImg" alt=""/></a>
</div>
2014-09-30 22:20:37 +00:00
2015-03-23 01:05:13 +00:00
<div id="showCol" class=" #if $ sickbeard . DISPLAY_BACKGROUND then ' display-details-transparent ' else ' display-details ' # ">
#if int ( $ show . paused ) == 1 :
<div class="paused paused-highlight">
<i class="sgicon-pause paused-outline"></i>
</div>
#end if
<div id="details-wrapper">
<div id="details-right">
2015-03-14 02:48:38 +00:00
#if $ seasonResults :
##There is a special/season_0?##
#set $ season_special = ( 0 , 1 ) [ 0 == int ( $ seasonResults [ - 1 ] [ ' season ' ] ) ]
2014-10-21 19:09:01 +00:00
2015-03-14 02:48:38 +00:00
#if not $ sickbeard . DISPLAY_SHOW_SPECIALS and $ season_special :
$ seasonResults . pop (-1)
#end if
2015-03-23 01:05:13 +00:00
<div>
2015-03-14 02:48:38 +00:00
#if $ season_special :
2015-03-23 01:05:13 +00:00
<strong>Display Specials: </strong>
2015-03-14 02:48:38 +00:00
#if sickbeard . DISPLAY_SHOW_SPECIALS :
2015-03-23 01:05:13 +00:00
<a class="inner" href=" $ sbRoot /toggleDisplayShowSpecials/?show= $ show . indexerid ">Hide</a>
2015-03-14 02:48:38 +00:00
#else :
2015-03-23 01:05:13 +00:00
<a class="inner" href=" $ sbRoot /toggleDisplayShowSpecials/?show= $ show . indexerid ">Show</a>
2015-03-14 02:48:38 +00:00
#end if
#end if
2015-03-23 01:05:13 +00:00
</div>
<div>
<strong>Season: </strong>
#if ( len ( $ seasonResults ) > 11 ) :
<select id="seasonJump" class="form-control form-control-inline input-sm">
<option value="jump">Jump to Season</option>
2015-03-14 02:48:38 +00:00
#for $ seasonNum in $ seasonResults :
2015-03-23 01:05:13 +00:00
<option value=" #season - $ seasonNum [ ' season ' ] " > # if 0 == int( $ seasonNum ['season']) then 'Specials' else 'Season ' + str( $ seasonNum ['season']) #</option>
2015-03-14 02:48:38 +00:00
#end for
2015-03-23 01:05:13 +00:00
</select>
2015-03-14 02:48:38 +00:00
#else :
#for $ seasonNum in $ seasonResults :
#if 0 == int ( $ seasonNum [ ' season ' ] ) :
2015-03-23 01:05:13 +00:00
<a href=" #season - $ seasonNum [ ' season ' ] " >Specials</a>
2015-03-14 02:48:38 +00:00
#else :
2015-03-23 01:05:13 +00:00
<a href=" #season - $ seasonNum [ ' season ' ] " >$ { str($seasonNum[ ' season ' ])}</a>
2015-03-14 02:48:38 +00:00
#end if
#end for
#end if
2015-03-23 01:05:13 +00:00
</div>
#end if
</div>
<div id="details-top">
<div id="showtitle" data-showname=" $ show . name ">
<h2 class="title" id="scene_exception_ $ show . indexerid "><span> $ show . name </span></h2>
#if not $ show . imdbid
#if $ show . genre :
#for $ genre in $ show . genre [ 1 : - 1 ] . replace ( ' Science-Fiction ' , ' Sci-Fi ' ) . split ( ' | ' )
<span class="label $ genretag "><a href="<%= anon_url('http://www.imdb.com/search/title?at=0&genres=', genre.lower().replace('-','_'),'&sort=moviemeter,asc&title_type=tv_series') %>" target="_blank" title="View other popular $ genre shows on imdb.com"> $ genre </a></span>
#end for
#end if
2015-03-14 02:48:38 +00:00
#end if
2015-03-23 01:05:13 +00:00
#if $ sickbeard . USE_IMDB_INFO and ' genres ' in $ show . imdb_info and ' ' != $ show . imdb_info [ ' genres ' ] :
#for $ imdbgenre in $ show . imdb_info [ ' genres ' ] . split ( ' | ' )
<span class="label $ genretag "><a href="<%= anon_url('http://www.imdb.com/search/title?at=0&genres=', imdbgenre.lower().replace('-','_'),'&sort=moviemeter,asc&title_type=tv_series') %>" target="_blank" title="View other popular $ imdbgenre shows on imdb.com"> $ imdbgenre </a></span>
#end for
2014-11-02 11:18:59 +00:00
#end if
2015-03-23 01:05:13 +00:00
</div>
</div>
</div>
2015-03-14 02:48:38 +00:00
2015-03-23 01:05:13 +00:00
<div id="details-wrapper">
<div id="details-right">
<ul class="list-unstyled">
#if not $ show . imdbid
#set $ runtime = $ show . runtime
#set $ startyear = $ show . startyear
#else
#if $ sickbeard . USE_IMDB_INFO and ' countries ' in $ show . imdb_info :
#set $ country = $ show . imdb_info [ ' countries ' ]
#end if
#if $ sickbeard . USE_IMDB_INFO and ' year ' in $ show . imdb_info :
#set $ runtime = $ show . imdb_info [ ' runtimes ' ]
#set $ startyear = $ show . imdb_info [ ' year ' ]
2015-03-14 02:48:38 +00:00
#end if
2014-11-09 02:49:38 +00:00
#end if
2015-03-14 02:48:38 +00:00
2014-11-09 02:49:38 +00:00
#set $ _show = $ show
2015-03-23 01:05:13 +00:00
<li><strong>Indexers: </strong>
#if $ sickbeard . USE_IMDB_INFO and $ show . imdbid
<a class="service" href="<%= anon_url('http://www.imdb.com/title/', _show.imdbid) %>" rel="noreferrer" onclick="window.open(this.href, '_blank'); return false;" title="http://www.imdb.com/title/ $ show . imdbid "><img alt="[imdb]" height="16" width="16" src=" $ sbRoot /images/imdb.png" /></a>
2014-11-09 02:49:38 +00:00
#end if
2015-03-23 01:05:13 +00:00
<a class="service" href="<%= anon_url(sickbeard.indexerApi(_show.indexer).config['show_url'], _show.indexerid) %>" onclick="window.open(this.href, '_blank'); return false;" title=" $ sickbeard . indexerApi ( $ show . indexer ).config['show_url'] $ show . indexerid "><img alt=" $ sickbeard . indexerApi ( $ show . indexer ).name" height="16" width="16" src=" $ sbRoot /images/ $ sickbeard . indexerApi ( $ show . indexer ).config['icon']" /></a>
2014-11-09 02:49:38 +00:00
#if $ xem_numbering or $ xem_absolute_numbering :
2015-03-23 01:05:13 +00:00
<a class="service" href="<%= anon_url('http://thexem.de/search?q=', _show.name) %>" rel="noreferrer" onclick="window.open(this.href, '_blank'); return false;" title="http://thexem.de/search?q- $ show . name "><img alt="[xem]" height="16" width="16" src=" $ sbRoot /images/xem.png" /></a>
2014-11-09 02:49:38 +00:00
#end if
2015-03-23 01:05:13 +00:00
</li>
<li><strong>Premiered: </strong><span> $ startyear </span>
#if $ sickbeard . USE_IMDB_INFO and ' country_codes ' in $ show . imdb_info and ' ' != $ show . imdb_info [ ' country_codes ' ] :
#for $ country in $ show . imdb_info [ ' country_codes ' ] . split ( ' | ' )
<img class="flag" src=" $ sbRoot /images/flags/ ${ $ country } .png" width="16" height="11" />
2015-03-14 02:48:38 +00:00
#end for
#end if
2015-03-23 01:05:13 +00:00
</li>
2015-03-14 02:48:38 +00:00
#if $ show . network and $ show . airs :
2015-03-23 01:05:13 +00:00
<li><strong>Airs: </strong><span> $ show . airs . replace ('y','y,') #if not $ network_timezones . test_timeformat ( $ show . airs ) then " <font color= ' # FF0000'><b>(invalid Timeformat)</b></font> " else "" #</span></li>
<li><strong>Network: </strong><span> $ show . network </span></li>
2015-03-14 02:48:38 +00:00
#else if $ show . network :
2015-03-23 01:05:13 +00:00
<li><strong>Network: </strong><span> $ show . network </span></li>
2015-03-14 02:48:38 +00:00
#else if $ show . airs :
2015-03-23 01:05:13 +00:00
<li><strong>Airs: </strong><span> $ show . airs . replace ('y','y,') #if not $ network_timezones . test_timeformat ( $ show . airs ) then " <font color= ' # FF0000'><b>(invalid Timeformat)</b></font> " else "" #</span></li>
2015-03-14 02:48:38 +00:00
#end if
2015-03-23 01:05:13 +00:00
<li><strong>Runtime: </strong><span> $ runtime minutes</span></li>
2015-03-16 15:38:38 +00:00
#if ' ' != $ show . status :
2015-03-23 01:05:13 +00:00
<li><strong>Status: </strong><span> $ show . status </span></li>
2015-03-16 15:38:38 +00:00
#end if
2015-03-23 01:05:13 +00:00
#if $ sickbeard . USE_IMDB_INFO and ' rating ' in $ show . imdb_info
#if ' ' != $ show . imdb_info [ ' votes ' ]
#set $ rating_tip = ' %s of 10 stars<br /> %s votes ' % ( str ( $ show . imdb_info [ ' rating ' ] ) , str ( $ show . imdb_info [ ' votes ' ] ) )
<li><strong>IMDB Rating: </strong><span class="imdbstars" qtip-content=" $ rating_tip "> $ show . imdb_info ['rating']</span></li>
#else
<li><strong>IMDB Rating: </strong><span>No votes available</span></li>
#end if
2015-03-14 02:48:38 +00:00
#end if
#set $ anyQualities , $ bestQualities = $ Quality . splitQuality ( int ( $ show . quality ) )
#if $ show . quality in $ qualityPresets :
2015-03-23 01:05:13 +00:00
<li><strong>Quality: </strong><span class="quality $ qualityPresetStrings [ $ show . quality ]"> $ qualityPresetStrings [ $ show . quality ]</span></li>
2015-03-14 02:48:38 +00:00
#else :
2015-03-23 01:05:13 +00:00
#if $ anyQualities :
<li><strong>Initial: </strong><%=", ".join([Quality.qualityStrings[x] for x in sorted(anyQualities)])%></span></li>
#end if
2015-03-14 02:48:38 +00:00
#if $ bestQualities :
2015-03-23 01:05:13 +00:00
<li><strong>Replace with: </strong><%=", ".join([Quality.qualityStrings[x] for x in sorted(bestQualities)])%></span></li>
2015-03-14 02:48:38 +00:00
#end if
#end if
2015-03-23 01:05:13 +00:00
</ul>
</div>
<div id="details-left">
<div class="details-plot #if $ show . overview == ' ' then ' no-plot ' else ' ' # ">
#if $ show . overview != ' ' :
$ show . overview
#else
No plot overview available.
2015-03-14 02:48:38 +00:00
#end if
2015-03-23 01:05:13 +00:00
</div>
2015-01-19 14:27:48 +00:00
2015-03-23 01:05:13 +00:00
<div id="details-bottom">
<span class="label $ infotag "><img src=" $ sbRoot /images/flags/ ${ show . lang } .png" width="16" height="11" alt=" $ show . lang " title=" $ show . lang " style="margin-top: -1px;" /></span>
#if $ showLoc [ 1 ] :
<span class="label $ infotag "> $ showLoc [0]</span>
#else :
<span class="label $ infotag " style="color: red;"> $ showLoc [0]</span>
2015-03-14 02:48:38 +00:00
#end if
2015-03-23 01:05:13 +00:00
<span class="label $ infotag "> $ sickbeard . helpers . human (sickbeard.helpers.get_size( $ showLoc [0]))</span>
#set $ filecount = $ epCounts [ $ Overview . QUAL ] + $ epCounts [ $ Overview . GOOD ]
<span class="label $ infotag "> $ filecount Files</span>
#if $ show . exceptions :
<span class="label $ infotag addQTip" title=" $ exceptions_string . replace (', ','<br>')">Scene Names</span>
#end if
#if $ sickbeard . USE_SUBTITLES
#if int ( $ show . subtitles ) == 1 :
<span class="label $ infotag ">Subtitles</span>
#end if
#end if
#if $ show . flatten_folders == 1 or $ sickbeard . NAMING_FORCE_FOLDERS :
<span class="label $ infotag ">Flat Folders</span>
#end if
#if int ( $ show . air_by_date ) == 1 :
<span class="label $ infotag ">Air-by-Date</span>
#end if
#if int ( $ show . is_sports ) == 1 :
<span class="label $ infotag ">Sports</span>
#end if
#if int ( $ show . is_anime ) == 1 :
<span class="label $ infotag ">Anime</span>
#end if
#if int ( $ show . dvdorder ) == 1 :
<span class="label $ infotag ">DVD Order</span>
#end if
#if int ( $ show . scene ) == 1 :
<span class="label $ infotag ">Scene Numbering</span>
2015-03-14 02:48:38 +00:00
#end if
#if $ anyQualities + $ bestQualities
2015-03-23 01:05:13 +00:00
#if int ( $ show . archive_firstmatch ) == 1
<span class="label $ infotag ">Archive First Match</span>
#end if
2015-03-14 02:48:38 +00:00
#end if
2015-03-23 01:05:13 +00:00
#if $ show . rls_require_words :
<span class="label $ infotag addQTip" title=" #echo $ show . rls_require_words . replace ( ' , ' , ' <br> ' ) # ">Required Words</span>
#end if
#if $ show . rls_ignore_words :
<span class="label $ infotag addQTip" title=" #echo $ show . rls_ignore_words . replace ( ' , ' , ' <br> ' ) # ">Ignored Words</span>
#end if
#if $ bwl and $ bwl . whitelist :
<span class="label $ infotag addQTip" title=" #echo ' , ' . join ( $ bwl . whitelist ) . replace ( ' , ' , ' <br> ' ) # ">Wanted Group #if len ( $ bwl . whitelist ) > 1 then " s " else " " # </span>
#end if
#if $ bwl and $ bwl . blacklist :
<span class="label $ infotag addQTip" title=" #echo ' , ' . join ( $ bwl . blacklist ) . replace ( ' , ' , ' <br> ' ) # ">Unwanted Group #if len ( $ bwl . blacklist ) > 1 then " s " else " " # </span>
2015-03-14 02:48:38 +00:00
#end if
2015-03-23 01:05:13 +00:00
</div>
</div>
2014-10-21 19:09:01 +00:00
</div>
</div>
2014-09-30 22:20:37 +00:00
</div>
2015-03-14 02:48:38 +00:00
2014-10-21 19:09:01 +00:00
<div class="clearfix"></div>
2015-03-14 02:48:38 +00:00
2015-03-23 01:05:13 +00:00
<div class="pull-left">
<p style="margin-bottom:5px">Change selected episodes to</p>
2014-10-21 19:09:01 +00:00
<select id="statusSelect" class="form-control form-control-inline input-sm">
2015-03-14 02:48:38 +00:00
#for $ curStatus in [ $ WANTED , $ SKIPPED , $ ARCHIVED , $ IGNORED , $ FAILED ] + sorted ( $ Quality . DOWNLOADED ) :
#if $ DOWNLOADED == $ curStatus :
#continue
#end if
2014-09-30 22:20:37 +00:00
<option value=" $ curStatus "> $ statusStrings [ $ curStatus ]</option>
2015-03-14 02:48:38 +00:00
#end for
2014-09-30 22:20:37 +00:00
</select>
<input type="hidden" id="showID" value=" $ show . indexerid " />
<input type="hidden" id="indexer" value=" $ show . indexer " />
2014-10-21 19:09:01 +00:00
<input class="btn btn-inline" type="button" id="changeStatus" value="Go" />
2014-09-30 22:20:37 +00:00
</div>
2014-10-21 19:09:01 +00:00
<div class="pull-right clearfix" id="checkboxControls">
<div style="padding-bottom: 5px;">
<label for="wanted"><span class="wanted"><input type="checkbox" id="wanted" checked="checked" /> Wanted: <b> $ epCounts [ $ Overview . WANTED ]</b></span></label>
<label for="qual"><span class="qual"><input type="checkbox" id="qual" checked="checked" /> Low Quality: <b> $ epCounts [ $ Overview . QUAL ]</b></span></label>
<label for="good"><span class="good"><input type="checkbox" id="good" checked="checked" /> Downloaded: <b> $ epCounts [ $ Overview . GOOD ]</b></span></label>
<label for="skipped"><span class="skipped"><input type="checkbox" id="skipped" checked="checked" /> Skipped: <b> $ epCounts [ $ Overview . SKIPPED ]</b></span></label>
<label for="snatched"><span class="snatched"><input type="checkbox" id="snatched" checked="checked" /> Snatched: <b> $ epCounts [ $ Overview . SNATCHED ]</b></span></label>
</div>
<div class="pull-right" >
<button class="btn btn-xs seriesCheck">Select Filtered Episodes</button>
<button class="btn btn-xs clearAll">Clear All</button>
</div>
</div>
2014-03-10 05:18:05 +00:00
2015-03-23 01:05:13 +00:00
<div class="clearfix"></div>
2014-03-10 05:18:05 +00:00
#set $ curSeason = - 1
2015-03-23 01:05:13 +00:00
#set $ seasonCount = 0
2014-03-10 05:18:05 +00:00
#set $ odd = 0
2015-03-14 02:48:38 +00:00
#for $ epResult in $ sqlResults :
#set $ epStr = str ( $ epResult [ ' season ' ] ) + ' x ' + str ( $ epResult [ ' episode ' ] )
#if not $ epStr in $ epCats :
#continue
#end if
2014-09-30 22:20:37 +00:00
2015-03-14 02:48:38 +00:00
#if not $ sickbeard . DISPLAY_SHOW_SPECIALS and 0 == int ( $ epResult [ ' season ' ] ) :
#continue
#end if
2014-03-10 05:18:05 +00:00
2015-03-14 02:48:38 +00:00
#set $ scene = False
#set $ scene_anime = False
#if not $ show . air_by_date and not $ show . is_sports and not $ show . is_anime and $ show . is_scene :
#set $ scene = True
#elif not $ show . air_by_date and not $ show . is_sports and $ show . is_anime and $ show . is_scene :
#set $ scene_anime = True
#end if
2014-03-10 05:18:05 +00:00
2015-03-14 02:48:38 +00:00
#set ( $ dfltSeas , $ dfltEpis , $ dfltAbsolute ) = ( 0 , 0 , 0 )
2014-03-10 05:18:05 +00:00
2015-03-14 02:48:38 +00:00
#if ( epResult [ ' season ' ] , epResult [ ' episode ' ] ) in $ xem_numbering :
#set ( $ dfltSeas , $ dfltEpis ) = $ xem_numbering [ ( epResult [ ' season ' ] , epResult [ ' episode ' ] ) ]
#end if
2014-05-30 05:48:02 +00:00
2015-03-14 02:48:38 +00:00
#if epResult [ ' absolute_number ' ] in $ xem_absolute_numbering :
#set $ dfltAbsolute = $ xem_absolute_numbering [ epResult [ ' absolute_number ' ] ]
#end if
2014-09-30 22:20:37 +00:00
2015-03-14 02:48:38 +00:00
#if epResult [ ' absolute_number ' ] in $ scene_absolute_numbering :
#set $ scAbsolute = $ scene_absolute_numbering [ epResult [ ' absolute_number ' ] ]
#set $ dfltAbsNumbering = False
#else
#set $ scAbsolute = $ dfltAbsolute
#set $ dfltAbsNumbering = True
#end if
2014-05-30 05:48:02 +00:00
2015-03-14 02:48:38 +00:00
#if ( epResult [ ' season ' ] , epResult [ ' episode ' ] ) in $ scene_numbering :
#set ( $ scSeas , $ scEpis ) = $ scene_numbering [ ( epResult [ ' season ' ] , epResult [ ' episode ' ] ) ]
#set $ dfltEpNumbering = False
#else
#set ( $ scSeas , $ scEpis ) = ( $ dfltSeas , $ dfltEpis )
#set $ dfltEpNumbering = True
#end if
2014-09-30 22:20:37 +00:00
2015-03-14 02:48:38 +00:00
#if int ( $ epResult [ ' season ' ] ) != $ curSeason :
2015-03-23 01:05:13 +00:00
<table class="sickbeardTable display-show #if $ sickbeard . DISPLAY_BACKGROUND then ' display-season ' else ' ' # " cellspacing="0" border="0" cellpadding="0">
<tr id="season- $ epResult ['season']">
<th class="row-seasonheader" colspan="13" style="width: auto;">
#if $ sickbeard . DISPLAY_ALL_SEASONS == False and $ seasonCount > = 1 :
<button id="showseason- $ epResult ['season']" type="button" class="btn btn-default pull-right" data-toggle="collapse" data-target=" #collapseSeason - $ epResult [ ' season ' ] " ><span class= " sgicon - arrowdown " ></span> Show Episodes</button>
<script type="text/javascript">
<!--
\$(function() {
\$(' #collapseSeason - $ epResult [ ' season ' ] ' ).on( ' hide . bs . collapse ' , function () {
\$(' #showseason - $ epResult [ ' season ' ] ' ).html( ' < span class = " sgicon-arrowdown " > < / span > Show Episodes ' );
})
\$(' #collapseSeason - $ epResult [ ' season ' ] ' ).on( ' show . bs . collapse ' , function () {
\$(' #showseason - $ epResult [ ' season ' ] ' ).html( ' < span class = " sgicon-arrowup " > < / span > Hide Episodes ' );
})
});
//-->
</script>
#end if
<h3><a name="season- $ epResult ['season']"></a> #if 0 == int ( $ epResult [ ' season ' ] ) then ' Specials ' else ' Season ' + str ( $ epResult [ ' season ' ] ) # <!-- Download count <span class="season-status"><b>[</b> <span class="footerhighlight">0</span> / <span class="footerhighlight">0</span> <b>]</b></span> --></h3>
</th>
</tr>
#set $ seasonCount = $ seasonCount + 1
#if $ sickbeard . DISPLAY_ALL_SEASONS == False and $ seasonCount > = 2 :
<tbody class="collapse" id="collapseSeason- $ epResult ['season']">
#end if
2015-03-14 02:48:38 +00:00
<tr id="season- $ epResult ['season']-cols" class="seasoncols">
<th class="col-checkbox"><input type="checkbox" class="seasonCheck" id=" $ epResult ['season']" /></th>
<th class="col-metadata">NFO</th>
<th class="col-metadata">TBN</th>
<th class="col-ep">Episode</th>
#if $ show . is_anime :
<th class="col-ep">Absolute</th>
#end if
#if $ scene :
<th class="col-ep">Scene</th>
#end if
#if $ scene_anime :
<th class="col-ep">Scene Absolute</th>
#end if
<th class="col-name">Name</th>
<th class="col-airdate">Airdate</th>
#if $ sickbeard . USE_SUBTITLES and $ show . subtitles :
<th class="col-subtitles">Subtitles</th>
#end if
<th class="col-status">Status</th>
<th class="col-search">Search</th>
</tr>
#set $ curSeason = int ( $ epResult [ ' season ' ] )
#end if
#set $ epLoc = $ epResult [ ' location ' ]
2015-03-16 15:38:38 +00:00
#set never_aired = 0 < $ curSeason and 1 == int ( $ epResult [ ' airdate ' ] )
2015-03-23 01:05:13 +00:00
2015-03-17 17:51:17 +00:00
<tr class=" #echo ( $ Overview . overviewStrings [ $ epCats [ $ epStr ] ] , ' airdate-never ' ) [ $ never_aired ] # #echo ( ' ' , ' archived ' ) [ ARCHIVED == int ( $ epResult [ ' status ' ] ) ] # season- $ curSeason seasonstyle">
2015-03-23 01:05:13 +00:00
<td class="col-checkbox">
2015-03-16 15:38:38 +00:00
#if $ UNAIRED != int ( $ epResult [ ' status ' ] ) and not $ never_aired
2015-03-23 01:05:13 +00:00
<input type="checkbox" class="epCheck" id="<%=str(epResult['season'])+'x'+str(epResult['episode'])%>" name="<%=str(epResult['season']) +'x'+str(epResult['episode']) %>" />
2015-03-14 02:48:38 +00:00
#end if
2015-03-23 01:05:13 +00:00
</td>
2014-09-30 22:20:37 +00:00
2015-03-23 01:05:13 +00:00
<td align="center"><img src=" $ sbRoot /images/ #if 1 == $ epResult [ ' hasnfo ' ] then ' nfo.gif " alt= " Y ' else ' nfo-no.gif " alt= " N ' # " width="23" height="11" /></td>
<td align="center"><img src=" $ sbRoot /images/ #if 1 == $ epResult [ ' hastbn ' ] then ' tbn.gif " alt= " Y ' else ' tbn-no.gif " alt= " N ' # " width="23" height="11" /></td>
2014-09-30 22:20:37 +00:00
<td align="center">
2015-03-14 02:48:38 +00:00
#if $ epLoc and $ show . _location and $ epLoc . lower ( ) . startswith ( $ show . _location . lower ( ) ) :
#set $ epLoc = $ epLoc [ len ( $ show . _location ) + 1 : ]
#elif $ epLoc and ( not $ epLoc . lower ( ) . startswith ( $ show . _location . lower ( ) ) or not $ show . _location ) :
#set $ epLoc = $ epLoc
#end if
2015-03-23 01:05:13 +00:00
2015-03-14 02:48:38 +00:00
#if ' ' != $ epLoc and None != $ epLoc :
2015-03-23 01:05:13 +00:00
<span title=" $ epLoc - <strong> $ sickbeard . helpers . human ( $ epResult ['file_size'])</strong>" class="addQTip"> $ epResult ["episode"]</span>
2015-03-14 02:48:38 +00:00
#else
$ epResult ['episode']
#end if
2014-09-30 22:20:37 +00:00
</td>
2015-03-23 01:05:13 +00:00
2015-03-14 02:48:38 +00:00
#if $ show . is_anime :
<td align="center"> $ epResult ['absolute_number']</td>
#end if
2014-03-10 05:18:05 +00:00
2015-03-14 02:48:38 +00:00
#if $ scene :
<td align="center">
<input type="text" placeholder="<%=str(dfltSeas) + 'x' + str(dfltEpis)%>" size="6" maxlength="8"
class="sceneSeasonXEpisode form-control input-scene" data-for-season=" $ epResult ['season']" data-for-episode=" $ epResult ['episode']"
id="sceneSeasonXEpisode_ $ show . indexerid <%='_'+str(epResult['season'])+'_'+str(epResult['episode'])%>"
title="Change the value here if scene numbering differs from the indexer episode numbering"
#if $ dfltEpNumbering :
value=""
#else
value="<%=str(scSeas) + 'x' + str(scEpis)%>"
#end if
style="padding: 0; text-align: center; max-width: 60px;" />
2015-03-23 01:05:13 +00:00
</td>
2015-03-14 02:48:38 +00:00
#elif $ scene_anime :
2015-03-23 01:05:13 +00:00
<td align="center">
<input type="text" placeholder="<%=str(dfltAbsolute)%>" size="6" maxlength="8"
2015-03-14 02:48:38 +00:00
class="sceneAbsolute form-control input-scene" data-for-absolute=" $ epResult ['absolute_number']"
id="sceneAbsolute_ $ show . indexerid <%='_'+str(epResult['absolute_number'])%>"
title="Change the value here if scene absolute numbering differs from the indexer absolute numbering"
#if $ dfltAbsNumbering :
value=""
#else
value="<%=str(scAbsolute)%>"
#end if
style="padding: 0; text-align: center; max-width: 60px;" />
</td>
#end if
2014-09-30 22:20:37 +00:00
2014-10-21 19:09:01 +00:00
<td class="col-name">
2015-03-14 02:48:38 +00:00
#if ' ' != $ epResult [ ' description ' ] and None != $ epResult [ ' description ' ] :
<img src=" $ sbRoot /images/info32.png" width="16" height="16" class="plotInfo" alt="" id="plot_info_ $ show . indexerid <%='_' + str(epResult['season']) + '_' + str(epResult['episode'])%>" />
#else :
<img src=" $ sbRoot /images/info32.png" width="16" height="16" class="plotInfoNone" alt="" />
#end if
$ epResult ['name']
2014-09-30 22:20:37 +00:00
</td>
2014-10-21 19:09:01 +00:00
<td class="col-airdate">
2015-03-14 02:48:38 +00:00
<span class=" ${ fuzzydate } "> #if 1 == int ( $ epResult [ ' airdate ' ] ) then ' never ' else $ sbdatetime . sbdatetime . sbfdate ( $ sbdatetime . sbdatetime . convert_to_setting ( $ network_timezones . parse_date_time ( $ epResult [ ' airdate ' ] , $ show . airs , $ show . network ) ) ) # </span>
2014-09-30 22:20:37 +00:00
</td>
2015-03-23 01:05:13 +00:00
2015-03-14 02:48:38 +00:00
#if $ sickbeard . USE_SUBTITLES and $ show . subtitles :
<td class="col-subtitles" align="center">
2015-03-23 01:05:13 +00:00
#if $ epResult [ ' subtitles ' ] :
#for $ sub_lang in subliminal . language . language_list ( $ epResult [ ' subtitles ' ] . split ( ' , ' ) ) :
2015-03-14 02:48:38 +00:00
#if ' ' != sub_lang . alpha2
<img src=" $ sbRoot /images/flags/ ${ sub_lang . alpha2 } .png" width="16" height="11" alt=" ${ sub_lang } " />
2015-03-23 01:05:13 +00:00
#end if
#end for
#end if
2015-03-14 02:48:38 +00:00
</td>
#end if
2015-03-23 01:05:13 +00:00
2015-03-14 02:48:38 +00:00
#set $ curStatus , $ curQuality = $ Quality . splitCompositeStatus ( int ( $ epResult [ ' status ' ] ) )
#if Quality . NONE != $ curQuality :
<td class="col-status"> $ statusStrings [ $ curStatus ] <span class="quality $ Quality . qualityStrings [ $ curQuality ].replace('720p','HD720p').replace('1080p','HD1080p').replace('RawHD TV', 'RawHD').replace('HD TV', 'HD720p')"> $ Quality . qualityStrings [ $ curQuality ]</span></td>
2015-03-23 01:05:13 +00:00
#else :
2015-03-14 02:48:38 +00:00
<td class="col-status"> $ statusStrings [ $ curStatus ]</td>
#end if
2014-10-21 19:09:01 +00:00
<td class="col-search">
2015-03-14 02:48:38 +00:00
#if 0 != int ( $ epResult [ ' season ' ] ) :
#if ( int ( $ epResult [ ' status ' ] ) in $ Quality . SNATCHED or int ( $ epResult [ ' status ' ] ) in $ Quality . DOWNLOADED ) and $ sickbeard . USE_FAILED_DOWNLOADS :
<a class="epRetry" id="<%=str(epResult['season'])+'x'+str(epResult['episode'])%>" name="<%=str(epResult['season']) +'x'+str(epResult['episode']) %>" href="retryEpisode?show= $ show . indexerid &season= $ epResult ['season']&episode= $ epResult ['episode']"><img src=" $ sbRoot /images/search16.png" height="16" alt="retry" title="Retry Download" /></a>
#else :
<a class="epSearch" id="<%=str(epResult['season'])+'x'+str(epResult['episode'])%>" name="<%=str(epResult['season']) +'x'+str(epResult['episode']) %>" href="searchEpisode?show= $ show . indexerid &season= $ epResult ['season']&episode= $ epResult ['episode']"><img src=" $ sbRoot /images/search16.png" width="16" height="16" alt="search" title="Manual Search" /></a>
#end if
#end if
2015-03-23 01:05:13 +00:00
2015-03-14 02:48:38 +00:00
#if $ sickbeard . USE_SUBTITLES and $ show . subtitles and len ( set ( str ( $ epResult [ ' subtitles ' ] ) . split ( ' , ' ) ) . intersection ( set ( $ subtitles . wantedLanguages ( ) ) ) ) < len ( $ subtitles . wantedLanguages ( ) ) and $ epResult [ ' location ' ]
<a class="epSubtitlesSearch" href="searchEpisodeSubtitles?show= $ show . indexerid &season= $ epResult ['season']&episode= $ epResult ['episode']"><img src=" $ sbRoot /images/closed_captioning.png" height="16" alt="search subtitles" title="Search Subtitles" /></a>
#end if
2014-09-30 22:20:37 +00:00
</td>
</tr>
2015-03-14 02:48:38 +00:00
#end for
2015-03-23 01:05:13 +00:00
#if $ sickbeard . DISPLAY_ALL_SEASONS == False and $ seasonCount > 1 :
</tbody>
#end if
2014-03-10 05:18:05 +00:00
</table>
2015-03-23 01:05:13 +00:00
<script>
\$(document).ready(function(){
\$('.details-plot').collapser({
mode: 'lines',
truncate: 10,
showText: '<span class="pull-right moreless"><i class="sgicon-arrowdown"></i> More</span>',
hideText: '<span class="pull-right moreless"><i class="sgicon-arrowup"></i> Less</span>',
showClass: 'show-class'
});
});
</script>
2015-01-24 23:46:13 +00:00
#include $ os . path . join ( $ sickbeard . PROG_DIR , ' gui/slick/interfaces/default/inc_bottom.tmpl ' )