mirror of
https://github.com/SickGear/SickGear.git
synced 2025-01-07 10:33:38 +00:00
ccb9bb329c
Change Coming Episodes to "Episodes" page (API endpoint is not renamed). Add coming episodes to episode view renaming to config migration code. Change Layout term "Calender" to "Day by Day" on Episodes page. Fix saving of sort modes to config file on Episodes page. Add qTip episode plots to "Day by Day" on Episodes page. Add article sorting to networks on Episodes page. Add toggle sort direction and multidimensional sort to isotope on Episodes page. Add text "[paused]" where appropriate to shows on layout Day by Day. Simplified sort code in webserver and in template. Change page auto refresh from 10 to 30 mins. Add other UI tweaks.
267 lines
18 KiB
Cheetah
267 lines
18 KiB
Cheetah
#import sickbeard
|
|
#import urllib
|
|
|
|
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
|
|
<title>SickGear - BRANCH:[$sickbeard.BRANCH] - $title</title>
|
|
|
|
<!--[if lt IE 9]>
|
|
<script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
|
|
<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
|
|
<![endif]-->
|
|
|
|
<link rel="shortcut icon" href="$sbRoot/images/ico/favicon.ico">
|
|
<link rel="apple-touch-icon" sizes="180x180" href="$sbRoot/images/ico/apple-touch-icon-180x180.png">
|
|
<link rel="apple-touch-icon" sizes="152x152" href="$sbRoot/images/ico/apple-touch-icon-152x152.png">
|
|
<link rel="apple-touch-icon" sizes="144x144" href="$sbRoot/images/ico/apple-touch-icon-144x144.png">
|
|
<link rel="apple-touch-icon" sizes="120x120" href="$sbRoot/images/ico/apple-touch-icon-120x120.png">
|
|
<link rel="apple-touch-icon" sizes="114x114" href="$sbRoot/images/ico/apple-touch-icon-114x114.png">
|
|
<link rel="apple-touch-icon" sizes="76x76" href="$sbRoot/images/ico/apple-touch-icon-76x76.png">
|
|
<link rel="apple-touch-icon" sizes="72x72" href="$sbRoot/images/ico/apple-touch-icon-72x72.png">
|
|
<link rel="apple-touch-icon" sizes="60x60" href="$sbRoot/images/ico/apple-touch-icon-60x60.png">
|
|
<link rel="apple-touch-icon" sizes="57x57" href="$sbRoot/images/ico/apple-touch-icon-57x57.png">
|
|
<link rel="icon" type="image/png" href="$sbRoot/images/ico/favicon-192x192.png" sizes="192x192">
|
|
<link rel="icon" type="image/png" href="$sbRoot/images/ico/favicon-160x160.png" sizes="160x160">
|
|
<link rel="icon" type="image/png" href="$sbRoot/images/ico/favicon-96x96.png" sizes="96x96">
|
|
<link rel="icon" type="image/png" href="$sbRoot/images/ico/favicon-32x32.png" sizes="32x32">
|
|
<link rel="icon" type="image/png" href="$sbRoot/images/ico/favicon-16x16.png" sizes="16x16">
|
|
<meta name="msapplication-TileColor" content="#2b5797">
|
|
<meta name="msapplication-TileImage" content="$sbRoot/images/ico/mstile-144x144.png">
|
|
<meta name="msapplication-config" content="$sbRoot/css/browserconfig.xml">
|
|
|
|
<link rel="stylesheet" type="text/css" href="$sbRoot/css/lib/bootstrap.css?$sbPID"/>
|
|
<link rel="stylesheet" type="text/css" href="$sbRoot/css/browser.css?$sbPID" />
|
|
<link rel="stylesheet" type="text/css" href="$sbRoot/css/lib/jquery-ui-1.10.4.custom.css?$sbPID" />
|
|
<link rel="stylesheet" type="text/css" href="$sbRoot/css/lib/jquery.qtip-2.2.1.min.css?$sbPID"/>
|
|
<link rel="stylesheet" type="text/css" href="$sbRoot/css/lib/pnotify.custom.min.css?$sbPID" />
|
|
<link rel="stylesheet" type="text/css" href="$sbRoot/css/style.css?$sbPID"/>
|
|
<link rel="stylesheet" type="text/css" href="$sbRoot/css/${sickbeard.THEME_NAME}.css?$sbPID" />
|
|
|
|
<script type="text/javascript" src="$sbRoot/js/lib/jquery-1.8.3.min.js?$sbPID"></script>
|
|
<script type="text/javascript" src="$sbRoot/js/lib/bootstrap.min.js?$sbPID"></script>
|
|
<script type="text/javascript" src="$sbRoot/js/lib/bootstrap-hover-dropdown.min.js?$sbPID"></script>
|
|
<script type="text/javascript" src="$sbRoot/js/lib/jquery-ui-1.10.4.custom.min.js?$sbPID"></script>
|
|
<script type="text/javascript" src="$sbRoot/js/lib/jquery.cookie.js?$sbPID"></script>
|
|
<script type="text/javascript" src="$sbRoot/js/lib/jquery.cookiejar.js?$sbPID"></script>
|
|
<script type="text/javascript" src="$sbRoot/js/lib/jquery.json-2.2.min.js?$sbPID"></script>
|
|
<script type="text/javascript" src="$sbRoot/js/lib/jquery.selectboxes.min.js?$sbPID"></script>
|
|
<script type="text/javascript" src="$sbRoot/js/lib/jquery.tablesorter-2.17.7.min.js?$sbPID"></script>
|
|
<script type="text/javascript" src="$sbRoot/js/lib/jquery.tablesorter.widgets-2.17.7.min.js?$sbPID"></script>
|
|
<script type="text/javascript" src="$sbRoot/js/lib/jquery.qtip-2.2.1.min.js?$sbPID"></script>
|
|
<script type="text/javascript" src="$sbRoot/js/lib/pnotify.custom.min.js"></script>
|
|
<script type="text/javascript" src="$sbRoot/js/lib/jquery.form-3.35.js?$sbPID"></script>
|
|
<script type="text/javascript" src="$sbRoot/js/lib/jquery.ui.touch-punch-0.2.2.min.js?$sbPID"></script>
|
|
<script type="text/javascript" src="$sbRoot/js/lib/isotope.pkgd.min.js?$sbPID"></script>
|
|
<script type="text/javascript" src="$sbRoot/js/lib/imagesloaded.pkgd.min.js?$sbPID"></script>
|
|
<script type="text/javascript" src="$sbRoot/js/lib/jquery.confirm.js?$sbPID"></script>
|
|
<script type="text/javascript" src="$sbRoot/js/script.js?$sbPID"></script>
|
|
|
|
|
|
#if $sickbeard.FUZZY_DATING:
|
|
<script type="text/javascript" src="$sbRoot/js/moment/moment.min.js?$sbPID"></script>
|
|
<script type="text/javascript" src="$sbRoot/js/fuzzyMoment.js?$sbPID"></script>
|
|
#end if
|
|
<script type="text/javascript" charset="utf-8">
|
|
<!--
|
|
sbRoot = '$sbRoot'; // needed for browser.js & ajaxNotifications.js
|
|
//HTML for scrolltopcontrol, which is auto wrapped in DIV w/ ID="topcontrol"
|
|
top_image_html = '<img src="$sbRoot/images/top.gif" width="31" height="11" alt="Jump to top" />';
|
|
themeSpinner = <%= '\'\'' if 'dark' != sickbeard.THEME_NAME else '\'-dark\'' %>;
|
|
anonURL = '<%= sickbeard.ANON_REDIRECT %>'
|
|
//-->
|
|
</script>
|
|
<script type="text/javascript" src="$sbRoot/js/lib/jquery.scrolltopcontrol-1.1.js"></script>
|
|
<script type="text/javascript" src="$sbRoot/js/browser.js"></script>
|
|
<script type="text/javascript" src="$sbRoot/js/ajaxNotifications.js"></script>
|
|
<script type="text/javascript">
|
|
<!--
|
|
function initActions() {
|
|
\$("#SubMenu a[href*='/home/restart/']").addClass('btn restart').html('<span class="submenu-icon-restart pull-left"></span> Restart');
|
|
\$("#SubMenu a[href*='/home/shutdown/']").addClass('btn shutdown').html('<span class="submenu-icon-shutdown pull-left"></span> Shutdown');
|
|
\$("#SubMenu a[href*='/home/logout/']").addClass('btn').html('<span class="ui-icon ui-icon-power pull-left"></span> Logout');
|
|
\$("#SubMenu a:contains('Edit')").addClass('btn').html('<span class="ui-icon ui-icon-pencil pull-left"></span> Edit');
|
|
\$("#SubMenu a:contains('Remove')").addClass('btn remove').html('<span class="ui-icon ui-icon-trash pull-left"></span> Remove');
|
|
\$("#SubMenu a:contains('Clear History')").addClass('btn clearhistory').html('<span class="ui-icon ui-icon-trash pull-left"></span> Clear History');
|
|
\$("#SubMenu a:contains('Trim History')").addClass('btn trimhistory').html('<span class="ui-icon ui-icon-trash pull-left"></span> Trim History');
|
|
\$("#SubMenu a[href$='/errorlogs/clearerrors/']").addClass('btn').html('<span class="ui-icon ui-icon-trash pull-left"></span> Clear Errors');
|
|
\$("#SubMenu a:contains('Re-scan')").addClass('btn').html('<span class="ui-icon ui-icon-refresh pull-left"></span> Re-scan');
|
|
\$("#SubMenu a:contains('Backlog Overview')").addClass('btn').html('<span class="ui-icon ui-icon-refresh pull-left"></span> Backlog Overview');
|
|
\$("#SubMenu a[href$='/home/updatePLEX/']").addClass('btn').html('<span class="ui-icon ui-icon-refresh pull-left"></span> Update PLEX');
|
|
\$("#SubMenu a:contains('Force')").addClass('btn').html('<span class="ui-icon ui-icon-transfer-e-w pull-left"></span> Force Full Update');
|
|
\$("#SubMenu a:contains('Rename')").addClass('btn').html('<span class="ui-icon ui-icon-tag pull-left"></span> Preview Rename');
|
|
\$("#SubMenu a[href$='/config/subtitles/']").addClass('btn').html('<span class="ui-icon ui-icon-comment pull-left"></span> Search Subtitles');
|
|
\$("#SubMenu a[href*='/home/subtitleShow']").addClass('btn').html('<span class="ui-icon ui-icon-comment pull-left"></span> Download Subtitles');
|
|
\$("#SubMenu a:contains('Anime')").addClass('btn').html('<span class="submenu-icon-anime pull-left"></span> Anime');
|
|
\$("#SubMenu a:contains('Settings')").addClass('btn').html('<span class="ui-icon ui-icon-search pull-left"></span> Search Settings');
|
|
\$("#SubMenu a:contains('Provider')").addClass('btn').html('<span class="ui-icon ui-icon-search pull-left"></span> Search Providers');
|
|
\$("#SubMenu a:contains('General')").addClass('btn').html('<span class="ui-icon ui-icon-gear pull-left"></span> General');
|
|
\$("#SubMenu a:contains('Episode Status')").addClass('btn').html('<span class="ui-icon ui-icon-transferthick-e-w pull-left"></span> Episode Status Management');
|
|
\$("#SubMenu a:contains('Missed Subtitle')").addClass('btn').html('<span class="ui-icon ui-icon-transferthick-e-w pull-left"></span> Missed Subtitles');
|
|
\$("#SubMenu a[href$='/home/addShows/']").addClass('btn').html('<span class="ui-icon ui-icon-video pull-left"></span> Add Show');
|
|
\$("#SubMenu a:contains('Processing')").addClass('btn').html('<span class="ui-icon ui-icon-folder-open pull-left"></span> Post-Processing');
|
|
\$("#SubMenu a:contains('Manage Searches')").addClass('btn').html('<span class="ui-icon ui-icon-search pull-left"></span> Manage Searches');
|
|
\$("#SubMenu a:contains('Manage Torrents')").addClass('btn').html('<span class="submenu-icon-bittorrent pull-left"></span> Manage Torrents');
|
|
\$("#SubMenu a[href$='/manage/failedDownloads/']").addClass('btn').html('<span class="submenu-icon-failed-download pull-left"></span> Failed Downloads');
|
|
\$("#SubMenu a:contains('Notification')").addClass('btn').html('<span class="ui-icon ui-icon-note pull-left"></span> Notifications');
|
|
\$("#SubMenu a:contains('Update show in XBMC')").addClass('btn').html('<span class="submenu-icon-xbmc pull-left"></span> Update show in XBMC');
|
|
\$("#SubMenu a[href$='/home/updateXBMC/']").addClass('btn').html('<span class="submenu-icon-xbmc pull-left"></span> Update XBMC');
|
|
}
|
|
|
|
\$(document).ready(function() {
|
|
|
|
initActions();
|
|
|
|
\$("#NAV$topmenu").addClass("active");
|
|
|
|
\$('.dropdown-toggle').dropdownHover();
|
|
|
|
});
|
|
//-->
|
|
</script>
|
|
<script type="text/javascript" src="$sbRoot/js/confirmations.js?$sbPID"></script>
|
|
</head>
|
|
#set $tab = 4
|
|
<body>
|
|
<nav class="navbar navbar-default navbar-fixed-top" role="navigation">
|
|
<div class="container-fluid">
|
|
<div class="navbar-header">
|
|
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
|
|
<span class="sr-only">Toggle navigation</span>
|
|
<span class="icon-bar"></span>
|
|
<span class="icon-bar"></span>
|
|
<span class="icon-bar"></span>
|
|
</button>
|
|
<a href="$sbRoot/home/" class="navbar-brand" tabindex="-1" title="SickGear"><img alt="SickGear" src="$sbRoot/images/sickgear.png" style="height: 50px;" class="img-responsive pull-left" /></a>
|
|
</div>
|
|
|
|
<div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
|
|
<ul class="nav navbar-nav navbar-right">
|
|
<li id="NAVhome" class="dropdown">
|
|
<a href="$sbRoot/home/" class="dropdown-toggle" data-toggle="dropdown" tabindex="$tab#set $tab += 1#">Shows <b class="caret"></b></a>
|
|
<ul class="dropdown-menu">
|
|
<li><a href="$sbRoot/home/" tabindex="$tab#set $tab += 1#"><i class="menu-icon-home"></i> Show List</a></li>
|
|
<li><a href="$sbRoot/home/addShows/" tabindex="$tab#set $tab += 1#"><i class="menu-icon-addshow"></i> Add Shows</a></li>
|
|
<li><a href="$sbRoot/home/postprocess/" tabindex="$tab#set $tab += 1#"><i class="menu-icon-postprocess"></i> Manual Post-Processing</a></li>
|
|
</ul>
|
|
</li>
|
|
|
|
<li id="NAVepisodeView">
|
|
<a href="$sbRoot/episodeView/" tabindex="$tab#set $tab += 1#">Episodes</a>
|
|
</li>
|
|
|
|
<li id="NAVhistory">
|
|
<a href="$sbRoot/history/" tabindex="$tab#set $tab += 1#">History</a>
|
|
</li>
|
|
|
|
<li id="NAVmanage" class="dropdown">
|
|
<a href="$sbRoot/manage/" class="dropdown-toggle" data-toggle="dropdown" tabindex="$tab#set $tab += 1#">Manage <b class="caret"></b></a>
|
|
<ul class="dropdown-menu">
|
|
<li><a href="$sbRoot/manage/" tabindex="$tab#set $tab += 1#"><i class="menu-icon-manage"></i> Mass Update</a></li>
|
|
<li><a href="$sbRoot/manage/backlogOverview/" tabindex="$tab#set $tab += 1#"><i class="menu-icon-backlog-view"></i> Backlog Overview</a></li>
|
|
<li><a href="$sbRoot/manage/manageSearches/" tabindex="$tab#set $tab += 1#"><i class="menu-icon-manage-searches"></i> Manage Searches</a></li>
|
|
<li><a href="$sbRoot/manage/episodeStatuses/" tabindex="$tab#set $tab += 1#"><i class="menu-icon-backlog"></i> Episode Status Management</a></li>
|
|
#if $sickbeard.USE_PLEX and $sickbeard.PLEX_SERVER_HOST != "":
|
|
<li><a href="$sbRoot/home/updatePLEX/" tabindex="$tab#set $tab += 1#"><i class="menu-icon-backlog-view"></i> Update PLEX</a></li>
|
|
#end if
|
|
#if $sickbeard.USE_XBMC and $sickbeard.XBMC_HOST != "":
|
|
<li><a href="$sbRoot/home/updateXBMC/" tabindex="$tab#set $tab += 1#"><i class="menu-icon-xbmc"></i> Update XBMC</a></li>
|
|
#end if
|
|
#if $sickbeard.USE_TORRENTS and $sickbeard.TORRENT_METHOD != 'blackhole' \
|
|
and ($sickbeard.ENABLE_HTTPS and $sickbeard.TORRENT_HOST[:5] == 'https' \
|
|
or not $sickbeard.ENABLE_HTTPS and $sickbeard.TORRENT_HOST[:5] == 'http:'):
|
|
<li><a href="$sbRoot/manage/manageTorrents/" tabindex="$tab#set $tab += 1#"><i class="menu-icon-bittorrent"></i> Manage Torrents</a></li>
|
|
#end if
|
|
#if $sickbeard.USE_FAILED_DOWNLOADS:
|
|
<li><a href="$sbRoot/manage/failedDownloads/" tabindex="$tab#set $tab += 1#"><i class="menu-icon-failed-download"></i> Failed Downloads</a></li>
|
|
#end if
|
|
#if $sickbeard.USE_SUBTITLES:
|
|
<li><a href="$sbRoot/manage/subtitleMissed/" tabindex="$tab#set $tab += 1#"><i class="menu-icon-backlog"></i> Missed Subtitle Management</a></li>
|
|
#end if
|
|
</ul>
|
|
</li>
|
|
|
|
<li id="NAVerrorlogs" class="dropdown">
|
|
<a href="$sbRoot/errorlogs/" class="dropdown-toggle" data-toggle="dropdown" tabindex="$tab#set $tab += 1#">$logPageTitle <b class="caret"></b></a>
|
|
<ul class="dropdown-menu">
|
|
<li><a href="$sbRoot/errorlogs/"><i class="menu-icon-viewlog-errors" tabindex="$tab#set $tab += 1#"></i> View Log (Errors)</a></li>
|
|
<li><a href="$sbRoot/errorlogs/viewlog/"><i class="menu-icon-viewlog" tabindex="$tab#set $tab += 1#"></i> View Log</a></li>
|
|
</ul>
|
|
</li>
|
|
|
|
<li id="NAVconfig" class="dropdown">
|
|
<a href="$sbRoot/config/" class="dropdown-toggle" data-toggle="dropdown" tabindex="$tab#set $tab += 1#"><img src="$sbRoot/images/menu/system18.png" class="navbaricon hidden-xs" /><b class="caret hidden-xs"></b><span class="visible-xs">Config <b class="caret"></b></span></a>
|
|
<ul class="dropdown-menu">
|
|
<li><a href="$sbRoot/config/" tabindex="$tab#set $tab += 1#"><i class="menu-icon-help"></i> Help & Info</a></li>
|
|
<li><a href="$sbRoot/config/general/" tabindex="$tab#set $tab += 1#"><i class="menu-icon-config"></i> General</a></li>
|
|
<li><a href="$sbRoot/config/search/" tabindex="$tab#set $tab += 1#"><i class="menu-icon-config"></i> Search Settings</a></li>
|
|
<li><a href="$sbRoot/config/providers/" tabindex="$tab#set $tab += 1#"><i class="menu-icon-config"></i> Search Providers</a></li>
|
|
<li><a href="$sbRoot/config/subtitles/" tabindex="$tab#set $tab += 1#"><i class="menu-icon-config"></i> Subtitles Settings</a></li>
|
|
<li><a href="$sbRoot/config/postProcessing/" tabindex="$tab#set $tab += 1#"><i class="menu-icon-config"></i> Post Processing</a></li>
|
|
<li><a href="$sbRoot/config/notifications/" tabindex="$tab#set $tab += 1#"><i class="menu-icon-config"></i> Notifications</a></li>
|
|
<li><a href="$sbRoot/config/anime/" tabindex="$tab#set $tab += 1#"><i class="menu-icon-config"></i> Anime</a></li>
|
|
</ul>
|
|
</li>
|
|
|
|
<li class="dropdown">
|
|
<a href="#" class="dropdown-toggle" data-toggle="dropdown" tabindex="$tab#set $tab += 1#"><img src="$sbRoot/images/menu/system18-2.png" class="navbaricon hidden-xs" /><b class="caret hidden-xs"></b><span class="visible-xs">System <b class="caret"></b></span></a>
|
|
<ul class="dropdown-menu">
|
|
<li><a href="$sbRoot/manage/manageSearches/forceVersionCheck" tabindex="$tab#set $tab += 1#"><i class="menu-icon-update"></i> Force Version Check</a></li>
|
|
<li><a href="$sbRoot/home/restart/?pid=$sbPID" class="confirm restart" tabindex="$tab#set $tab += 1#"><i class="menu-icon-restart"></i> Restart</a></li>
|
|
<li><a href="$sbRoot/home/shutdown/?pid=$sbPID" class="confirm shutdown" tabindex="$tab#set $tab += 1#"><i class="menu-icon-shutdown"></i> Shutdown</a></li>
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
|
|
</div><!-- /.navbar-collapse -->
|
|
</div><!-- /.container-fluid -->
|
|
</nav>
|
|
|
|
#if $varExists('submenu'):
|
|
<div id="SubMenu">
|
|
<span>
|
|
#set $first = True
|
|
#for $menuItem in $submenu:
|
|
#if 'requires' not in $menuItem or $menuItem.requires():
|
|
#if type($menuItem.path) == dict:
|
|
#if $first then "" else "</span><span>"#<b>$menuItem.title</b>
|
|
#set $first = False
|
|
#set $inner_first = True
|
|
#for $cur_link in $menuItem.path:
|
|
#if $inner_first then "" else "· "#<a class="inner" href="$sbRoot/$menuItem.path[$cur_link]">$cur_link</a>
|
|
#set $inner_first = False
|
|
#end for
|
|
#else
|
|
#if $first then "" else ""#<a href="$sbRoot/$menuItem.path" #if 'confirm' in $menuItem then "class=\"confirm\"" else "" # tabindex="$tab#set $tab += 1#">$menuItem.title</a>
|
|
#set $first = False
|
|
#end if
|
|
#end if
|
|
#end for
|
|
</span>
|
|
</div>
|
|
#end if
|
|
|
|
#if $sickbeard.NEWEST_VERSION_STRING:
|
|
<div class="alert alert-success upgrade-notification" role="alert">
|
|
<span>$sickbeard.NEWEST_VERSION_STRING</span>
|
|
</div>
|
|
#end if
|
|
|
|
#set $items = []
|
|
#try
|
|
$items.append($topmenu)
|
|
#except (NameError, NotFound):
|
|
#pass
|
|
#end try
|
|
#try
|
|
$items.append($layout)
|
|
#except (NameError, NotFound):
|
|
#pass
|
|
#end try
|
|
#set $page_class = ('', ' class="%s"' % '_'.join($items).lower().replace(' ', '-').replace('_', '-'))[0 < len($items)]
|
|
<div id="contentWrapper">
|
|
<div id="content"$page_class>
|