Merge pull request #42 from SickragePVR/feature/GenConfigLogAndNav
Overhaul General Configuration. Tweak top navbar. Fix imdb and other ima...
27
CHANGES.md
@ -1,8 +1,27 @@
|
|||||||
### 0.x.x (2014-10-22 xx:xx:xx UTC)
|
### 0.x.x (2014-10-27 xx:xx:xx UTC)
|
||||||
|
|
||||||
* Add Bootstrap for UI features.
|
* Add Bootstrap for UI features
|
||||||
* Change UI to resize fluidly on different display sizes.
|
* Change UI to resize fluidly on different display sizes, fixes the issue where top menu items would disappear on smaller screens.
|
||||||
* Add date formats "dd/mm/yy", "dd/mm/yyyy", "day, dd/mm/yy" and "day, dd/mm/yyyy"
|
* Add date formats "dd/mm/yy", "dd/mm/yyyy", "day, dd/mm/yy" and "day, dd/mm/yyyy"
|
||||||
|
* Improve display of progress bars in the Downloads columns of the show list page
|
||||||
|
* Improve display of progress bars under the images in Layout Poster of the show list page
|
||||||
|
* Remove imdb watchlist feature as it wasn't ready for prime time
|
||||||
|
* Change to rename General Configuration -> "Web Interface" tab as "Interface"
|
||||||
|
* Add a "User Interface" section to the "Interface" tab
|
||||||
|
* Change bring together "Date and Time" and "Theme" tab content to "User Interface" section
|
||||||
|
* Add field in Advanced setting for a custom remote name used to populate branch versions
|
||||||
|
* Change theme name "original" to "light"
|
||||||
|
* Improve text wording on all UI options under General Configuration
|
||||||
|
* Improve reduce over use of capitals
|
||||||
|
* Improve streamline UI layout, mark-up and some CSS styling of all General Configuration tabs
|
||||||
|
* Fix default top navbar background white-out behaviour on browsers that don't support gradients
|
||||||
|
* Improve top navbar gradient use for greater cross browser compatibility (e.g. Safari)
|
||||||
|
* Fix dark theme divider between Season numbers on display show page
|
||||||
|
* Fix main background and border colour of logs on log page
|
||||||
|
* Fix imdb and three other images rejected by IExplorer because they were corrupt. Turns out that they were .ico files renamed to either .gif or .png instead of being properly converted
|
||||||
|
* Fix "Subtitle Language" drop down font colour when entering text on the Subtitles Search settings
|
||||||
|
* Clean up text, correct quotations, use spaces for code lines, tabs for html
|
||||||
|
* Update changelog
|
||||||
|
|
||||||
|
|
||||||
### 0.2.1 (2014-10-22 06:41:00 UTC)
|
### 0.2.1 (2014-10-22 06:41:00 UTC)
|
||||||
@ -24,7 +43,7 @@
|
|||||||
* Add return code from hardlinking error to log
|
* Add return code from hardlinking error to log
|
||||||
* Fix ABD regex for certain filenames
|
* Fix ABD regex for certain filenames
|
||||||
* Miscellaneous UI fixes
|
* Miscellaneous UI fixes
|
||||||
* Update Tornado webserver to 4.1dev1 and add the certifi lib dependency.
|
* Update Tornado webserver to 4.1dev1 and add the certifi lib dependency
|
||||||
* Fix trending shows page from loading full size poster images
|
* Fix trending shows page from loading full size poster images
|
||||||
* Add "Archive on first match" to Manage, Mass Update, Edit Selected page
|
* Add "Archive on first match" to Manage, Mass Update, Edit Selected page
|
||||||
* Fix searching IPTorrentsProvider
|
* Fix searching IPTorrentsProvider
|
||||||
|
@ -1502,22 +1502,6 @@ config*.tmpl
|
|||||||
padding-left: 20px;
|
padding-left: 20px;
|
||||||
}
|
}
|
||||||
|
|
||||||
#config label span.component-title {
|
|
||||||
float: left;
|
|
||||||
width: 172px;
|
|
||||||
margin-right: 10px;
|
|
||||||
font-size: 13px;
|
|
||||||
font-weight: bold;
|
|
||||||
}
|
|
||||||
|
|
||||||
#config label span.component-desc {
|
|
||||||
padding-bottom: 2px;
|
|
||||||
font-size: 12px;
|
|
||||||
font-weight: normal;
|
|
||||||
display:inline-block;
|
|
||||||
width:475px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#config .metadataDiv {
|
#config .metadataDiv {
|
||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
@ -1768,7 +1752,7 @@ td.tableright {
|
|||||||
|
|
||||||
.separator {
|
.separator {
|
||||||
font-size: 90%;
|
font-size: 90%;
|
||||||
color: #333333;
|
color: #fff;
|
||||||
}
|
}
|
||||||
|
|
||||||
a.whitelink {
|
a.whitelink {
|
||||||
@ -1939,10 +1923,6 @@ html * {
|
|||||||
outline: 0 !important;
|
outline: 0 !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
input[type="checkbox"] {
|
|
||||||
margin: 3px 0px 0px;
|
|
||||||
line-height: normal;
|
|
||||||
}
|
|
||||||
|
|
||||||
input[type="radio"] {
|
input[type="radio"] {
|
||||||
margin: 2px 0px 0px;
|
margin: 2px 0px 0px;
|
||||||
@ -1965,8 +1945,10 @@ input, textarea, select, .uneditable-input {
|
|||||||
|
|
||||||
/* navbar styling */
|
/* navbar styling */
|
||||||
.navbar-default {
|
.navbar-default {
|
||||||
background-image: -moz-linear-gradient(#297AB8, #15528F);
|
background-color: #15528F;
|
||||||
background-image: linear-gradient(#297AB8, #15528F);
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#297AB8', endColorstr='#15528F');
|
||||||
|
background: -webkit-gradient(linear, left top, left bottom, from(#297AB8), to(#15528F));
|
||||||
|
background: -moz-linear-gradient(top, #297AB8, #15528F);
|
||||||
border-color: #3e3f3a;
|
border-color: #3e3f3a;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2468,6 +2450,12 @@ label {
|
|||||||
font-weight: normal;
|
font-weight: normal;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
pre {
|
||||||
|
color: #fff;
|
||||||
|
background-color: #3d3d3d;
|
||||||
|
border-color: #111;
|
||||||
|
}
|
||||||
|
|
||||||
/* =======================================================================
|
/* =======================================================================
|
||||||
input sizing (for config pages)
|
input sizing (for config pages)
|
||||||
========================================================================== */
|
========================================================================== */
|
||||||
@ -2922,17 +2910,11 @@ li.token-input-input-token input {
|
|||||||
}
|
}
|
||||||
|
|
||||||
div.token-input-dropdown {
|
div.token-input-dropdown {
|
||||||
position: absolute;
|
|
||||||
width: 273px;
|
|
||||||
background-color: #fff;
|
background-color: #fff;
|
||||||
overflow: hidden;
|
color: #000;
|
||||||
border-left: 1px solid #ccc;
|
border-left-color: #ccc;
|
||||||
border-right: 1px solid #ccc;
|
border-right-color: #ccc;
|
||||||
border-bottom: 1px solid #ccc;
|
border-bottom-color: #ccc;
|
||||||
cursor: default;
|
|
||||||
font-size: 11px;
|
|
||||||
font-family: Verdana;
|
|
||||||
z-index: 1;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
div.token-input-dropdown p {
|
div.token-input-dropdown p {
|
||||||
|
@ -1479,22 +1479,6 @@ config*.tmpl
|
|||||||
padding-left: 20px;
|
padding-left: 20px;
|
||||||
}
|
}
|
||||||
|
|
||||||
#config label span.component-title {
|
|
||||||
float: left;
|
|
||||||
width: 172px;
|
|
||||||
margin-right: 10px;
|
|
||||||
font-size: 13px;
|
|
||||||
font-weight: bold;
|
|
||||||
}
|
|
||||||
|
|
||||||
#config label span.component-desc {
|
|
||||||
padding-bottom: 2px;
|
|
||||||
font-size: 12px;
|
|
||||||
font-weight: normal;
|
|
||||||
display:inline-block;
|
|
||||||
width:475px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#config .metadataDiv {
|
#config .metadataDiv {
|
||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
@ -1914,11 +1898,6 @@ html * {
|
|||||||
outline: 0 !important;
|
outline: 0 !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
input[type="checkbox"] {
|
|
||||||
margin: 3px 0px 0px;
|
|
||||||
line-height: normal;
|
|
||||||
}
|
|
||||||
|
|
||||||
input[type="radio"] {
|
input[type="radio"] {
|
||||||
margin: 2px 0px 0px;
|
margin: 2px 0px 0px;
|
||||||
line-height: normal;
|
line-height: normal;
|
||||||
@ -1940,8 +1919,10 @@ input, textarea, select, .uneditable-input {
|
|||||||
|
|
||||||
/* navbar styling */
|
/* navbar styling */
|
||||||
.navbar-default {
|
.navbar-default {
|
||||||
background-image: -moz-linear-gradient(#555555, #333333);
|
background-color: #333333;
|
||||||
background-image: linear-gradient(#555555, #333333);
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#555555', endColorstr='#333333');
|
||||||
|
background: -webkit-gradient(linear, left top, left bottom, from(#555), to(#333));
|
||||||
|
background: -moz-linear-gradient(top, #555, #333);
|
||||||
border-color: #3e3f3a;
|
border-color: #3e3f3a;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2439,9 +2420,9 @@ label {
|
|||||||
}
|
}
|
||||||
|
|
||||||
pre {
|
pre {
|
||||||
color: #fff;
|
color: #000;
|
||||||
background-color: #3d3d3d;
|
background-color: #F5F5F5;
|
||||||
border: 1px solid #111;
|
border-color: #ccc;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* =======================================================================
|
/* =======================================================================
|
||||||
@ -2866,17 +2847,11 @@ li.token-input-input-token input {
|
|||||||
}
|
}
|
||||||
|
|
||||||
div.token-input-dropdown {
|
div.token-input-dropdown {
|
||||||
position: absolute;
|
|
||||||
width: 273px;
|
|
||||||
background-color: #fff;
|
background-color: #fff;
|
||||||
overflow: hidden;
|
color: #000;
|
||||||
border-left: 1px solid #ccc;
|
border-left-color: #ccc;
|
||||||
border-right: 1px solid #ccc;
|
border-right-color: #ccc;
|
||||||
border-bottom: 1px solid #ccc;
|
border-bottom-color: #ccc;
|
||||||
cursor: default;
|
|
||||||
font-size: 11px;
|
|
||||||
font-family: Verdana;
|
|
||||||
z-index: 1;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
div.token-input-dropdown p {
|
div.token-input-dropdown p {
|
@ -489,6 +489,20 @@ inc_bottom.tmpl
|
|||||||
display: inline;
|
display: inline;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* =======================================================================
|
||||||
|
inc_rootDirs.tmpl
|
||||||
|
========================================================================== */
|
||||||
|
.rootdir-selectbox,
|
||||||
|
.rootdir-selectbox #rootDirs,
|
||||||
|
.rootdir-controls {
|
||||||
|
width: 430px
|
||||||
|
}
|
||||||
|
.rootdir-selectbox {
|
||||||
|
padding: 0 0 5px
|
||||||
|
}
|
||||||
|
.rootdir-controls {
|
||||||
|
text-align: center
|
||||||
|
}
|
||||||
|
|
||||||
/* =======================================================================
|
/* =======================================================================
|
||||||
home.tmpl
|
home.tmpl
|
||||||
@ -1511,16 +1525,20 @@ config*.tmpl
|
|||||||
padding: 12px 0px;
|
padding: 12px 0px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#config div.field-pair select,
|
||||||
|
#config div.field-pair input {
|
||||||
|
margin-right: 6px;
|
||||||
|
}
|
||||||
|
|
||||||
#config div.field-pair input {
|
#config div.field-pair input {
|
||||||
float: left;
|
float: left;
|
||||||
margin-right: 6px;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#config .nocheck, #config div #customQuality, .metadataDiv, .providerDiv {
|
#config .nocheck, #config div #customQuality, .metadataDiv, .providerDiv {
|
||||||
padding-left: 20px;
|
padding-left: 20px;
|
||||||
}
|
}
|
||||||
|
|
||||||
#config label span.component-title {
|
#config span.component-title {
|
||||||
float: left;
|
float: left;
|
||||||
width: 172px;
|
width: 172px;
|
||||||
margin-right: 10px;
|
margin-right: 10px;
|
||||||
@ -1528,14 +1546,17 @@ config*.tmpl
|
|||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
}
|
}
|
||||||
|
|
||||||
#config label span.component-desc {
|
#config span.component-desc {
|
||||||
padding-bottom: 2px;
|
|
||||||
font-size: 12px;
|
font-size: 12px;
|
||||||
font-weight: normal;
|
font-weight: normal;
|
||||||
display:inline-block;
|
display:block;
|
||||||
width:475px;
|
width:475px;
|
||||||
|
margin-left:182px
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#config label.space-right {
|
||||||
|
margin-right:10px
|
||||||
|
}
|
||||||
#config .metadataDiv {
|
#config .metadataDiv {
|
||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
@ -1956,7 +1977,7 @@ html * {
|
|||||||
}
|
}
|
||||||
|
|
||||||
input[type="checkbox"] {
|
input[type="checkbox"] {
|
||||||
margin: 3px 0px 0px;
|
margin: 2px 0px 0px;
|
||||||
line-height: normal;
|
line-height: normal;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1980,12 +2001,6 @@ input, textarea, select, .uneditable-input {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* navbar styling */
|
/* navbar styling */
|
||||||
.navbar-default {
|
|
||||||
background-image: -moz-linear-gradient(#555555, #333333);
|
|
||||||
background-image: linear-gradient(#555555, #333333);
|
|
||||||
border-color: #3e3f3a;
|
|
||||||
}
|
|
||||||
|
|
||||||
.navbar-default .navbar-brand {
|
.navbar-default .navbar-brand {
|
||||||
color: #ffffff;
|
color: #ffffff;
|
||||||
}
|
}
|
||||||
@ -2480,9 +2495,7 @@ label {
|
|||||||
}
|
}
|
||||||
|
|
||||||
pre {
|
pre {
|
||||||
color: #fff;
|
border: 1px solid;
|
||||||
background-color: #3d3d3d;
|
|
||||||
border: 1px solid #111;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* =======================================================================
|
/* =======================================================================
|
||||||
@ -2933,11 +2946,10 @@ li.token-input-input-token input {
|
|||||||
div.token-input-dropdown {
|
div.token-input-dropdown {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
width: 273px;
|
width: 273px;
|
||||||
background-color: #fff;
|
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
border-left: 1px solid #ccc;
|
border-left: 1px solid;
|
||||||
border-right: 1px solid #ccc;
|
border-right: 1px solid;
|
||||||
border-bottom: 1px solid #ccc;
|
border-bottom: 1px solid;
|
||||||
cursor: default;
|
cursor: default;
|
||||||
font-size: 11px;
|
font-size: 11px;
|
||||||
font-family: Verdana;
|
font-family: Verdana;
|
||||||
@ -2982,3 +2994,6 @@ div.token-input-dropdown ul li.token-input-selected-dropdown-item {
|
|||||||
span.token-input-delete-token {
|
span.token-input-delete-token {
|
||||||
margin: 0 1px;
|
margin: 0 1px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.red-text {color:#d33}
|
||||||
|
.clear-left {clear:left}
|
Before Width: | Height: | Size: 8.9 KiB After Width: | Height: | Size: 1.2 KiB |
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 101 B |
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 243 B |
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 984 B |
@ -7,13 +7,14 @@
|
|||||||
#from sickbeard import config
|
#from sickbeard import config
|
||||||
#from sickbeard import metadata
|
#from sickbeard import metadata
|
||||||
#from sickbeard.metadata.generic import GenericMetadata
|
#from sickbeard.metadata.generic import GenericMetadata
|
||||||
#set global $title = "Config - General"
|
|
||||||
#set global $header = "General Configuration"
|
|
||||||
|
|
||||||
#set global $sbPath="../.."
|
#set global $title = 'Config - General'
|
||||||
|
#set global $header = 'General Configuration'
|
||||||
|
|
||||||
#set global $topmenu="config"#
|
#set global $sbPath = '../..'
|
||||||
#include $os.path.join($sickbeard.PROG_DIR, "gui/slick/interfaces/default/inc_top.tmpl")
|
|
||||||
|
#set global $topmenu = 'config'
|
||||||
|
#include $os.path.join($sickbeard.PROG_DIR, 'gui/slick/interfaces/default/inc_top.tmpl')
|
||||||
|
|
||||||
#if $varExists('header')
|
#if $varExists('header')
|
||||||
<h1 class="header">$header</h1>
|
<h1 class="header">$header</h1>
|
||||||
@ -37,95 +38,210 @@
|
|||||||
|
|
||||||
<ul>
|
<ul>
|
||||||
<li><a href="#core-component-group1">Misc</a></li>
|
<li><a href="#core-component-group1">Misc</a></li>
|
||||||
<li><a href="#core-component-group2">Web Interface</a></li>
|
<li><a href="#core-component-group2">Interface</a></li>
|
||||||
<li><a href="#core-component-group3">Date and Time</a></li>
|
<li><a href="#core-component-group3">Advanced Settings</a></li>
|
||||||
<li><a href="#core-component-group4">Advanced Settings</a></li>
|
|
||||||
<li><a href="#core-component-group5">UI Theme Settings</a></li>
|
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
<div id="core-component-group1" class="component-group">
|
<div id="core-component-group1">
|
||||||
|
<div class="component-group">
|
||||||
|
|
||||||
<div class="component-group-desc">
|
<div class="component-group-desc">
|
||||||
<h3>Misc</h3>
|
<h3>Misc</h3>
|
||||||
<p>Startup options.</p>
|
<p>Startup options. Indexer options. Log and show file locations.</p>
|
||||||
<p><b>Some options may require a manual restart to take effect.</b></p>
|
<p><b>Some options may require a manual restart to take effect.</b></p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<fieldset class="component-group-list">
|
<fieldset class="component-group-list">
|
||||||
<div class="field-pair">
|
<div class="field-pair">
|
||||||
<input type="checkbox" name="launch_browser" id="launch_browser" #if $sickbeard.LAUNCH_BROWSER then "checked=\"checked\"" else ""#/>
|
|
||||||
<label for="launch_browser">
|
<label for="launch_browser">
|
||||||
<span class="component-title">Launch Browser</span>
|
<span class="component-title">Launch browser</span>
|
||||||
<span class="component-desc">Should SickRage open its home page when started?</span>
|
<span class="component-desc">
|
||||||
|
<input type="checkbox" name="launch_browser" id="launch_browser" #if $sickbeard.LAUNCH_BROWSER then 'checked="checked"' else ''#/>
|
||||||
|
<p>open the SickRage home page on startup</p>
|
||||||
|
</span>
|
||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="field-pair">
|
<div class="field-pair">
|
||||||
<input type="checkbox" name="update_shows_on_start" id="update_shows_on_start" #if $sickbeard.UPDATE_SHOWS_ON_START then "checked=\"checked\"" else ""#/>
|
|
||||||
<label for="update_shows_on_start">
|
<label for="update_shows_on_start">
|
||||||
<span class="component-title">Update Shows on Start</span>
|
<span class="component-title">Update shows on startup</span>
|
||||||
<span class="component-desc">Should SickRage update shows info when started?</span>
|
<span class="component-desc">
|
||||||
|
<input type="checkbox" name="update_shows_on_start" id="update_shows_on_start" #if $sickbeard.UPDATE_SHOWS_ON_START then 'checked="checked"' else ''#/>
|
||||||
|
<p>with information such as next air dates, show ended, etc. Disable for a faster startup as show info is sheduled to update in the background anyway</p>
|
||||||
|
</span>
|
||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="field-pair">
|
<div class="field-pair">
|
||||||
<input type="checkbox" name="version_notify" id="version_notify" #if $sickbeard.VERSION_NOTIFY then "checked=\"checked\"" else ""#/>
|
<label for="log_dir">
|
||||||
<label for="version_notify">
|
<span class="component-title">Log file folder location</span>
|
||||||
<span class="component-title">Check for Update</span>
|
<span class="component-desc">
|
||||||
<span class="component-desc">Show notification about updates for SickRage if available.</span>
|
<input type="text" name="log_dir" id="log_dir" value="$sickbeard.ACTUAL_LOG_DIR" class="form-control input-sm input350" />
|
||||||
</label>
|
</span>
|
||||||
<label class="nocheck">
|
|
||||||
<span class="component-title"> </span>
|
|
||||||
<span class="component-desc">Checking for updates runs on startup and on the interval specified below.</span>
|
|
||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="field-pair">
|
<div class="field-pair">
|
||||||
<label class="nocheck">
|
<label for="indexer_default">
|
||||||
<span class="component-title">Update Frequency</span>
|
<span class="component-title">Use initial indexer set to</span>
|
||||||
<input type="text" name="update_frequency" id="update_frequency" value="$sickbeard.UPDATE_FREQUENCY" class="form-control input-sm input75" />
|
|
||||||
</label>
|
|
||||||
<label class="nocheck">
|
|
||||||
<span class="component-title"> </span>
|
|
||||||
<span class="component-desc">Time in hours to check for software updates (eg. 12)</span>
|
|
||||||
</label>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="field-pair">
|
|
||||||
<input type="checkbox" name="auto_update" id="auto_update" #if $sickbeard.AUTO_UPDATE then "checked=\"checked\"" else ""#/>
|
|
||||||
<label for="auto_update">
|
|
||||||
<span class="component-title">Automatic Updates</span>
|
|
||||||
<span class="component-desc">Automatically get and install updates for SickRage when available.</span>
|
|
||||||
</label>
|
|
||||||
<label class="nocheck">
|
|
||||||
<span class="component-title"> </span>
|
|
||||||
<span class="component-desc">updates run on startup and in the background on the interval specified above.</span>
|
|
||||||
</label>
|
|
||||||
</div>
|
|
||||||
<div class="field-pair">
|
|
||||||
<input type="checkbox" name="notify_on_update" id="notify_on_update" #if $sickbeard.NOTIFY_ON_UPDATE then "checked=\"checked\"" else ""#/>
|
|
||||||
<label for="notify_on_update">
|
|
||||||
<span class="component-title">Notify on Update</span>
|
|
||||||
<span class="component-desc">Sends the notification SickRage has been updated to all enabled notifiers.</span>
|
|
||||||
</label>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="field-pair">
|
|
||||||
<input type="checkbox" name="sort_article" id="sort_article" #if $sickbeard.SORT_ARTICLE then "checked=\"checked\"" else ""#/>
|
|
||||||
<label for="sort_article">
|
|
||||||
<span class="component-title">Sort Articles</span>
|
|
||||||
<span class="component-desc">Include articles (The, A, An) when sorting show lists.</span>
|
|
||||||
</label>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="field-pair">
|
|
||||||
<label class="nocheck" for="indexer_default">
|
|
||||||
<span class="component-title">Default Indexer:</span>
|
|
||||||
<span class="component-desc">
|
<span class="component-desc">
|
||||||
<select id="indexer_default" name="indexer_default" class="form-control input-sm">
|
<select id="indexer_default" name="indexer_default" class="form-control input-sm">
|
||||||
<option value="0" #if $indexer == 0 then "selected=\"selected\"" else ""#>All Indexers</option>
|
<option value="0" #if $indexer == 0 then 'selected="selected"' else ''#>All Indexers</option>
|
||||||
#for $indexer in $sickbeard.indexerApi().indexers
|
#for $indexer in $sickbeard.indexerApi().indexers
|
||||||
<option value="$indexer" #if $indexer == $sickbeard.INDEXER_DEFAULT then "selected=\"selected\"" else ""#>$sickbeard.indexerApi().indexers[$indexer]</option>
|
<option value="$indexer" #if $indexer == $sickbeard.INDEXER_DEFAULT then 'selected="selected"' else ''#>$sickbeard.indexerApi().indexers[$indexer]</option>
|
||||||
|
#end for
|
||||||
|
</select>
|
||||||
|
<span>as the default selection when adding new shows</span>
|
||||||
|
</span>
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="field-pair">
|
||||||
|
<label for="indexer_timeout">
|
||||||
|
<span class="component-title">Timeout show indexer at</span>
|
||||||
|
<span class="component-desc">
|
||||||
|
<input type="text" name="indexer_timeout" id="indexer_timeout" value="$sickbeard.INDEXER_TIMEOUT" class="form-control input-sm input75" />
|
||||||
|
<p>seconds of inactivity when finding new shows (default:10)</p>
|
||||||
|
</span>
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="field-pair">
|
||||||
|
<label>
|
||||||
|
<span class="component-title">Show root directories</span>
|
||||||
|
<span class="component-desc">
|
||||||
|
<p>where the files of shows are located</p>
|
||||||
|
#include $os.path.join($sickbeard.PROG_DIR, 'gui/slick/interfaces/default/inc_rootDirs.tmpl')
|
||||||
|
</span>
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<input type="submit" class="btn config_submitter" value="Save Changes" />
|
||||||
|
</fieldset>
|
||||||
|
</div>
|
||||||
|
<div class="component-group">
|
||||||
|
|
||||||
|
<div class="component-group-desc">
|
||||||
|
<h3>Updates</h3>
|
||||||
|
<p>Options for software updates.</p>
|
||||||
|
</div>
|
||||||
|
<fieldset class="component-group-list">
|
||||||
|
|
||||||
|
<div class="field-pair">
|
||||||
|
<label for="version_notify">
|
||||||
|
<span class="component-title">Check software updates</span>
|
||||||
|
<span class="component-desc">
|
||||||
|
<input type="checkbox" name="version_notify" id="version_notify" #if $sickbeard.VERSION_NOTIFY then 'checked="checked"' else ''#/>
|
||||||
|
<p>and display notifications when updates are available.
|
||||||
|
Checks are run on startup and at the frequency set below*</p>
|
||||||
|
</span>
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="field-pair">
|
||||||
|
<label for="auto_update">
|
||||||
|
<span class="component-title">Automatically update</span>
|
||||||
|
<span class="component-desc">
|
||||||
|
<input type="checkbox" name="auto_update" id="auto_update" #if $sickbeard.AUTO_UPDATE then 'checked="checked"' else ''#/>
|
||||||
|
<p>fetch and install software updates.
|
||||||
|
Updates are run on startup and in the background at the frequency set below*</p>
|
||||||
|
</span>
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="field-pair">
|
||||||
|
<label>
|
||||||
|
<span class="component-title">Check the server every*</span>
|
||||||
|
<span class="component-desc">
|
||||||
|
<input type="text" name="update_frequency" id="update_frequency" value="$sickbeard.UPDATE_FREQUENCY" class="form-control input-sm input75" />
|
||||||
|
<p>hours for software updates (default:12)</p>
|
||||||
|
</span>
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="field-pair">
|
||||||
|
<label for="notify_on_update">
|
||||||
|
<span class="component-title">Notify on software update</span>
|
||||||
|
<span class="component-desc">
|
||||||
|
<input type="checkbox" name="notify_on_update" id="notify_on_update" #if $sickbeard.NOTIFY_ON_UPDATE then 'checked="checked"' else ''#/>
|
||||||
|
<p>send a message to all enabled notifiers when SickRage has been updated</p>
|
||||||
|
</span>
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<input type="submit" class="btn config_submitter" value="Save Changes" />
|
||||||
|
</fieldset>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div><!-- /component-group1 //-->
|
||||||
|
|
||||||
|
|
||||||
|
<div id="core-component-group2">
|
||||||
|
<div class="component-group">
|
||||||
|
|
||||||
|
<div class="component-group-desc">
|
||||||
|
<h3>User Interface</h3>
|
||||||
|
<p>Options for visual appearance.</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<fieldset class="component-group-list">
|
||||||
|
|
||||||
|
<div class="field-pair">
|
||||||
|
<label for="theme_name">
|
||||||
|
<span class="component-title">Display theme:</span>
|
||||||
|
<span class="component-desc">
|
||||||
|
<select id="theme_name" name="theme_name" class="form-control input-sm">
|
||||||
|
<option value="dark" #if $sickbeard.THEME_NAME == 'dark' then 'selected="selected"' else ''#>Dark</option>
|
||||||
|
<option value="light" #if $sickbeard.THEME_NAME == 'light' then 'selected="selected"' else ''#>Light</option>
|
||||||
|
</select>
|
||||||
|
<span class="red-text">for appearance to take effect, save then refresh your browser</span>
|
||||||
|
</span>
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="field-pair">
|
||||||
|
<label for="sort_article">
|
||||||
|
<span class="component-title">Sort with "The", "A", "An"</span>
|
||||||
|
<span class="component-desc">
|
||||||
|
<input type="checkbox" name="sort_article" id="sort_article" #if $sickbeard.SORT_ARTICLE then 'checked="checked"' else ''#/>
|
||||||
|
<p>include articles ("The", "A", "An") when sorting show lists</p>
|
||||||
|
</span>
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="field-pair">
|
||||||
|
<label for="fuzzy_dating">
|
||||||
|
<span class="component-title">Display fuzzy dates</span>
|
||||||
|
<span class="component-desc">
|
||||||
|
<input type="checkbox" name="fuzzy_dating" id="fuzzy_dating" class="viewIf datePresets" #if $sickbeard.FUZZY_DATING == True then 'checked="checked"' else ''#/>
|
||||||
|
<p>move absolute dates into tooltips and display e.g. "Last Thu", "On Tue"</p>
|
||||||
|
</span>
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
<div class="field-pair show_if_fuzzy_dating#if True == $sickbeard.FUZZY_DATING then '' else ' metadataDiv'#">
|
||||||
|
<label for="trim_zero">
|
||||||
|
<span class="component-title">Trim zero padding</span>
|
||||||
|
<span class="component-desc">
|
||||||
|
<input type="checkbox" name="trim_zero" id="trim_zero" #if True == $sickbeard.TRIM_ZERO then 'checked="checked"' else ''#/>
|
||||||
|
<p>remove the leading number "0" shown on hour of day, and date of month</p>
|
||||||
|
</span>
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="field-pair">
|
||||||
|
<label for="date_presets">
|
||||||
|
<span class="component-title">Date style:</span>
|
||||||
|
<span class="component-desc">
|
||||||
|
<select class="form-control input-sm #if True == $sickbeard.FUZZY_DATING then '' else ' metadataDiv'#" id="date_presets#if True == $sickbeard.FUZZY_DATING then '' else '_na'#" name="date_preset#if True == $sickbeard.FUZZY_DATING then '' else '_na'#">
|
||||||
|
#for $cur_preset in $date_presets:
|
||||||
|
<option value="$cur_preset" #if $cur_preset == $sickbeard.DATE_PRESET or ("%x" == $sickbeard.DATE_PRESET and "$cur_preset" == '%a, %b %d, %Y') then 'selected="selected"' else ''#>$datetime.datetime($datetime.datetime.now().year, 12, 31, 14, 30, 47).strftime($cur_preset)</option>
|
||||||
|
#end for
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<select class="form-control input-sm #if True != $sickbeard.FUZZY_DATING then '' else ' metadataDiv'#" id="date_presets#if True != $sickbeard.FUZZY_DATING then '' else '_na'#" name="date_preset#if True != $sickbeard.FUZZY_DATING then '' else '_na'#">
|
||||||
|
<option value="%x" #if "%x" == $sickbeard.DATE_PRESET then 'selected="selected"' else ''#>Use System Default</option>
|
||||||
|
#for $cur_preset in $date_presets:
|
||||||
|
<option value="$cur_preset" #if $cur_preset == $sickbeard.DATE_PRESET then 'selected="selected"' else ''#>$datetime.datetime($datetime.datetime.now().year, 12, 31, 14, 30, 47).strftime($cur_preset)</option>
|
||||||
#end for
|
#end for
|
||||||
</select>
|
</select>
|
||||||
</span>
|
</span>
|
||||||
@ -133,58 +249,49 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="field-pair">
|
<div class="field-pair">
|
||||||
<label class="nocheck">
|
<label for="time_presets">
|
||||||
<span class="component-title">Indexer Timeout</span>
|
<span class="component-title">Time style:</span>
|
||||||
<input type="text" name="indexer_timeout" id="indexer_timeout" value="$sickbeard.INDEXER_TIMEOUT" class="form-control input-sm input75" />
|
<span class="component-desc">
|
||||||
</label>
|
<select id="time_presets" name="time_preset" class="form-control input-sm">
|
||||||
<label class="nocheck">
|
#for $cur_preset in $time_presets:
|
||||||
<span class="component-title"> </span>
|
<option value="$cur_preset" #if $cur_preset == $sickbeard.TIME_PRESET_W_SECONDS then 'selected="selected"' else ''#>$sbdatetime.now().sbftime(show_seconds=True,t_preset=$cur_preset)</option>
|
||||||
<span class="component-desc">Time in seconds before Indexer search times out for adding shows (eg. 10)</span>
|
#end for
|
||||||
|
</select>
|
||||||
|
<span><b>note:</b> seconds are only shown on the History page</span>
|
||||||
|
</span>
|
||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="field-pair">
|
<div class="field-pair">
|
||||||
<label class="nocheck" for="log_dir">
|
<span class="component-title">Timezone:</span>
|
||||||
<span class="component-title">Logging Directory</span>
|
<span class="component-desc">
|
||||||
<input type="text" name="log_dir" id="log_dir" value="$sickbeard.ACTUAL_LOG_DIR" class="form-control input-sm input350" />
|
<label for="local" class="space-right">
|
||||||
|
<input type="radio" name="timezone_display" id="local" value="local" #if "local" == $sickbeard.TIMEZONE_DISPLAY then 'checked="checked"' else ''# />Local
|
||||||
</label>
|
</label>
|
||||||
|
<label for="network">
|
||||||
|
<input type="radio" name="timezone_display" id="network" value="network" #if "network" == $sickbeard.TIMEZONE_DISPLAY then 'checked="checked"' else ''# />Network
|
||||||
|
</label>
|
||||||
|
<div class="clear-left"><p>display dates and times in either your timezone or the shows network timezone</p></div>
|
||||||
|
</span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="field-pair">
|
<div class="field-pair">
|
||||||
<input type="checkbox" name="handle_reverse_proxy" id="handle_reverse_proxy" #if $sickbeard.HANDLE_REVERSE_PROXY then "checked=\"checked\"" else ""#/>
|
|
||||||
<label for="handle_reverse_proxy">
|
|
||||||
<span class="component-title">Reverse Proxy Headers</span>
|
|
||||||
<span class="component-desc">Should SickRage accept the following reverse proxy headers?</span>
|
|
||||||
</label>
|
|
||||||
<label class="nocheck">
|
|
||||||
<span class="component-title"> </span>
|
|
||||||
<span class="component-desc">(X-Forwarded-Host, X-Forwarded-For, X-Forwarded-Proto)</span>
|
|
||||||
</label>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="field-pair">
|
|
||||||
<input type="checkbox" name="play_videos" id="play_videos" #if $sickbeard.PLAY_VIDEOS then "checked=\"checked\"" else ""#/>
|
|
||||||
<label for="play_videos">
|
<label for="play_videos">
|
||||||
<span class="component-title">Play Videos</span>
|
<span class="component-title">Browser video player</span>
|
||||||
<span class="component-desc">Play video files from display show page?</span>
|
<span class="component-desc">
|
||||||
</label>
|
<input type="checkbox" name="play_videos" id="play_videos" #if $sickbeard.PLAY_VIDEOS then 'checked="checked"' else ''#/>
|
||||||
</div>
|
<p>play video files from display show page<?p>
|
||||||
|
</span>
|
||||||
<div class="field-pair">
|
|
||||||
<label>
|
|
||||||
<span class="component-title">Show Root Directories</span>
|
|
||||||
<span class="component-desc">Set root directories for where you want your shows to be.</span>
|
|
||||||
#include $os.path.join($sickbeard.PROG_DIR, "gui/slick/interfaces/default/inc_rootDirs.tmpl")
|
|
||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<input type="submit" class="btn config_submitter" value="Save Changes" />
|
<input type="submit" class="btn config_submitter" value="Save Changes" />
|
||||||
|
|
||||||
</fieldset>
|
</fieldset>
|
||||||
|
|
||||||
</div><!-- /component-group1 //-->
|
</div><!-- /User interface component-group -->
|
||||||
|
|
||||||
|
<div class="component-group">
|
||||||
<div id="core-component-group2" class="component-group">
|
|
||||||
|
|
||||||
<div class="component-group-desc">
|
<div class="component-group-desc">
|
||||||
<h3>Web Interface</h3>
|
<h3>Web Interface</h3>
|
||||||
@ -195,164 +302,230 @@
|
|||||||
<fieldset class="component-group-list">
|
<fieldset class="component-group-list">
|
||||||
|
|
||||||
<div class="field-pair">
|
<div class="field-pair">
|
||||||
<input type="checkbox" name="web_ipv6" id="web_ipv6" #if $sickbeard.WEB_IPV6 then "checked=\"checked\"" else ""#/>
|
<label for="use_api">
|
||||||
|
<span class="component-title">Enable API</span>
|
||||||
|
<span class="component-desc">
|
||||||
|
<input type="checkbox" name="use_api" class="enabler" id="use_api" #if $sickbeard.USE_API then 'checked="checked"' else ''#/>
|
||||||
|
<p>allow the use of the SickRage API</p>
|
||||||
|
</span>
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
<div id="content_use_api">
|
||||||
|
<div class="field-pair">
|
||||||
|
<label for="api_key">
|
||||||
|
<span class="component-title">API key</span>
|
||||||
|
<span class="component-desc">
|
||||||
|
<input type="text" name="api_key" id="api_key" value="$sickbeard.API_KEY" class="form-control input-sm input300" readonly="readonly" />
|
||||||
|
<input class="btn btn-inline" type="button" id="generate_new_apikey" value="Generate">
|
||||||
|
<div class="clear-left"><p>used to give 3rd party programs limited access to SickRage</p></div>
|
||||||
|
</span>
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="field-pair">
|
||||||
|
<label for="web_log">
|
||||||
|
<span class="component-title">HTTP logs</span>
|
||||||
|
<span class="component-desc">
|
||||||
|
<input type="checkbox" name="web_log" id="web_log" #if $sickbeard.WEB_LOG then 'checked="checked"' else ''#/>
|
||||||
|
<p>enable logs from the internal Tornado web server</p>
|
||||||
|
</span>
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="field-pair">
|
||||||
|
<label for="web_username">
|
||||||
|
<span class="component-title">HTTP username</span>
|
||||||
|
<span class="component-desc">
|
||||||
|
<input type="text" name="web_username" id="web_username" value="$sickbeard.WEB_USERNAME" class="form-control input-sm input300" />
|
||||||
|
<p>set blank for no login</p>
|
||||||
|
</span>
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="field-pair">
|
||||||
|
<label for="web_password">
|
||||||
|
<span class="component-title">HTTP password</span>
|
||||||
|
<span class="component-desc">
|
||||||
|
<input type="password" name="web_password" id="web_password" value="$sickbeard.WEB_PASSWORD" class="form-control input-sm input300" />
|
||||||
|
<p>blank = no authentication</span>
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="field-pair">
|
||||||
|
<label for="web_port">
|
||||||
|
<span class="component-title">HTTP port</span>
|
||||||
|
<span class="component-desc">
|
||||||
|
<input type="text" name="web_port" id="web_port" value="$sickbeard.WEB_PORT" class="form-control input-sm input100" />
|
||||||
|
<p>web port to browse and access SickRage (default:8081)</p>
|
||||||
|
</span>
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="field-pair">
|
||||||
<label for="web_ipv6">
|
<label for="web_ipv6">
|
||||||
<span class="component-title">Listen on IPv6</span>
|
<span class="component-title">Listen on IPv6</span>
|
||||||
<span class="component-desc">Allow SickRage to bind to any available IPv6 address?</span>
|
<span class="component-desc">
|
||||||
|
<input type="checkbox" name="web_ipv6" id="web_ipv6" #if $sickbeard.WEB_IPV6 then 'checked="checked"' else ''#/>
|
||||||
|
<p>attempt binding to any available IPv6 address</p>
|
||||||
|
</span>
|
||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="field-pair">
|
<div class="field-pair">
|
||||||
<input type="checkbox" name="web_log" id="web_log" #if $sickbeard.WEB_LOG then "checked=\"checked\"" else ""#/>
|
<label for="enable_https">
|
||||||
<label for="web_log">
|
|
||||||
<span class="component-title">HTTP Logs</span>
|
|
||||||
<span class="component-desc">Have SickRage's web server (tornado) generate logs?</span>
|
|
||||||
</label>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="field-pair">
|
|
||||||
<label class="nocheck">
|
|
||||||
<span class="component-title">HTTP Port</span>
|
|
||||||
<input type="text" name="web_port" value="$sickbeard.WEB_PORT" class="form-control input-sm input100" />
|
|
||||||
</label>
|
|
||||||
<label class="nocheck">
|
|
||||||
<span class="component-title"> </span>
|
|
||||||
<span class="component-desc">Web port that SickRage should listen on (eg. 8081)</span>
|
|
||||||
</label>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="field-pair">
|
|
||||||
<label class="nocheck">
|
|
||||||
<span class="component-title">HTTP Username</span>
|
|
||||||
<input type="text" name="web_username" value="$sickbeard.WEB_USERNAME" class="form-control input-sm input300" />
|
|
||||||
</label>
|
|
||||||
<label class="nocheck">
|
|
||||||
<span class="component-title"> </span>
|
|
||||||
<span class="component-desc">Username for authentication (blank for none)</span>
|
|
||||||
</label>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="field-pair">
|
|
||||||
<label class="nocheck">
|
|
||||||
<span class="component-title">HTTP Password</span>
|
|
||||||
<input type="password" name="web_password" value="$sickbeard.WEB_PASSWORD" class="form-control input-sm input300" />
|
|
||||||
</label>
|
|
||||||
<label class="nocheck">
|
|
||||||
<span class="component-title"> </span>
|
|
||||||
<span class="component-desc">Password for authentication (blank for none)</span>
|
|
||||||
</label>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="field-pair">
|
|
||||||
<label>
|
|
||||||
<input type="checkbox" name="enable_https" class="enabler" id="enable_https" #if $sickbeard.ENABLE_HTTPS then "checked=\"checked\"" else ""#/>
|
|
||||||
<span class="component-title">Enable HTTPS</span>
|
<span class="component-title">Enable HTTPS</span>
|
||||||
<span class="component-desc">Enable accessing the interface from a HTTPS address.</span>
|
<span class="component-desc">
|
||||||
|
<input type="checkbox" name="enable_https" class="enabler" id="enable_https" #if $sickbeard.ENABLE_HTTPS then 'checked="checked"' else ''#/>
|
||||||
|
<p>enable access to the web interface using a HTTPS address</p>
|
||||||
|
</span>
|
||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div id="content_enable_https">
|
<div id="content_enable_https">
|
||||||
<div class="field-pair">
|
<div class="field-pair">
|
||||||
<label class="nocheck">
|
<label for="https_cert">
|
||||||
<span class="component-title">HTTPS Certificate</span>
|
<span class="component-title">HTTPS certificate</span>
|
||||||
<input type="text" name="https_cert" value="$sickbeard.HTTPS_CERT" class="form-control input-sm input300" />
|
<span class="component-desc">
|
||||||
|
<input type="text" name="https_cert" id="https_cert" value="$sickbeard.HTTPS_CERT" class="form-control input-sm input300" />
|
||||||
|
<div class="clear-left"><p>file name or path to HTTPS certificate</p></div>
|
||||||
|
</span>
|
||||||
</label>
|
</label>
|
||||||
<label class="nocheck">
|
</div>
|
||||||
<span class="component-title"> </span>
|
<div class="field-pair">
|
||||||
<span class="component-desc">File name or path to HTTPS Certificate.</span>
|
<label for="https_key">
|
||||||
|
<span class="component-title">HTTPS key</span>
|
||||||
|
<span class="component-desc">
|
||||||
|
<input type="text" name="https_key" id="https_key" value="$sickbeard.HTTPS_KEY" class="form-control input-sm input300" />
|
||||||
|
<div class="clear-left"><p>file name or path to HTTPS key</p></div>
|
||||||
|
</span>
|
||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div class="field-pair">
|
<div class="field-pair">
|
||||||
<label class="nocheck">
|
<label for="handle_reverse_proxy">
|
||||||
<span class="component-title">HTTPS Key</span>
|
<span class="component-title">Reverse proxy headers</span>
|
||||||
<input type="text" name="https_key" value="$sickbeard.HTTPS_KEY" class="form-control input-sm input300" />
|
<span class="component-desc">
|
||||||
|
<input type="checkbox" name="handle_reverse_proxy" id="handle_reverse_proxy" #if $sickbeard.HANDLE_REVERSE_PROXY then 'checked="checked"' else ''#/>
|
||||||
|
<p>accept the following reverse proxy headers (advanced)...<br />(X-Forwarded-For, X-Forwarded-Host, and X-Forwarded-Proto)</p>
|
||||||
|
</span>
|
||||||
</label>
|
</label>
|
||||||
<label class="nocheck">
|
|
||||||
<span class="component-title"> </span>
|
|
||||||
<span class="component-desc">File name or path to HTTPS Key.</span>
|
|
||||||
</label>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<input type="submit" class="btn config_submitter" value="Save Changes" />
|
<input type="submit" class="btn config_submitter" value="Save Changes" />
|
||||||
|
|
||||||
</fieldset>
|
</fieldset>
|
||||||
|
|
||||||
</div><!-- /component-group2 //-->
|
</div><!-- /component-group2 //-->
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
<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>Date and Time</h3>
|
<h3>Advanced Settings</h3>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<fieldset class="component-group-list">
|
<fieldset class="component-group-list">
|
||||||
|
|
||||||
<div class="field-pair">
|
<div class="field-pair">
|
||||||
<input type="checkbox" name="fuzzy_dating" id="fuzzy_dating" class="viewIf datePresets" #if $sickbeard.FUZZY_DATING == True then "checked=\"checked\"" else ""#/>
|
<label>
|
||||||
<label for="fuzzy_dating">
|
<span class="component-title">Branch version:</span>
|
||||||
<span class="component-title">Display Fuzzy Dates</span>
|
|
||||||
<span class="component-desc">E.g "Last Thu", "On Tue" and move the absolute date into time tooltips?</span>
|
|
||||||
</label>
|
|
||||||
</div>
|
|
||||||
<div class="field-pair show_if_fuzzy_dating#if True == $sickbeard.FUZZY_DATING then '' else ' metadataDiv'#">
|
|
||||||
<input type="checkbox" name="trim_zero" id="trim_zero" #if $sickbeard.TRIM_ZERO == True then "checked=\"checked\"" else ""#/>
|
|
||||||
<label for="trim_zero">
|
|
||||||
<span class="component-title">Trim Zero Padding</span>
|
|
||||||
<span class="component-desc">Trim leading number "0" shown on hour of day and date of month?</span>
|
|
||||||
</label>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="field-pair">
|
|
||||||
<label class="nocheck" for="date_presets">
|
|
||||||
<span class="component-title">Date Style:</span>
|
|
||||||
<span class="component-desc">
|
<span class="component-desc">
|
||||||
<select class="form-control input-sm #if True == $sickbeard.FUZZY_DATING then '' else ' metadataDiv'#" id="date_presets#if True == $sickbeard.FUZZY_DATING then '' else '_na'#" name="date_preset#if True == $sickbeard.FUZZY_DATING then '' else '_na'#">
|
<select id="branchVersion" class="form-control form-control-inline input-sm pull-left">
|
||||||
#for $cur_preset in $date_presets:
|
#for $cur_branch in $sickbeard.versionCheckScheduler.action.list_remote_branches():
|
||||||
<option value="$cur_preset" #if $cur_preset == $sickbeard.DATE_PRESET or ("%x" == $sickbeard.DATE_PRESET and "$cur_preset" == '%a, %b %d, %Y') then "selected=\"selected\"" else ""#>$datetime.datetime($datetime.datetime.now().year, 12, 31, 14, 30, 47).strftime($cur_preset)</option>
|
<option value="$cur_branch" #if $cur_branch == $sickbeard.BRANCH then 'selected="selected"' else ''#>$cur_branch</option>
|
||||||
#end for
|
|
||||||
</select>
|
|
||||||
|
|
||||||
<select class="form-control input-sm #if True != $sickbeard.FUZZY_DATING then '' else ' metadataDiv'#" id="date_presets#if True != $sickbeard.FUZZY_DATING then '' else '_na'#" name="date_preset#if True != $sickbeard.FUZZY_DATING then '' else '_na'#">
|
|
||||||
<option value="%x" #if "%x" == $sickbeard.DATE_PRESET then "selected=\"selected\"" else ""#>Use System Default</option>
|
|
||||||
#for $cur_preset in $date_presets:
|
|
||||||
<option value="$cur_preset" #if $cur_preset == $sickbeard.DATE_PRESET then "selected=\"selected\"" else ""#>$datetime.datetime($datetime.datetime.now().year, 12, 31, 14, 30, 47).strftime($cur_preset)</option>
|
|
||||||
#end for
|
#end for
|
||||||
</select>
|
</select>
|
||||||
|
<input class="btn btn-inline" style="margin-left: 6px;" type="button" id="branchCheckout" value="Checkout Branch">
|
||||||
|
<div class="clear-left"><p>select branch to use (restart required)</p></div>
|
||||||
</span>
|
</span>
|
||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="field-pair">
|
<div class="field-pair">
|
||||||
<label class="nocheck" for="time_presets">
|
<label for="git_remote">
|
||||||
<span class="component-title">Time Style:</span>
|
<span class="component-title">Git remote for branch</span>
|
||||||
<span class="component-desc">
|
<span class="component-desc">
|
||||||
<select id="time_presets" name="time_preset" class="form-control input-sm">
|
<input type="text" name="git_remote" id="git_remote" value="$sickbeard.GIT_REMOTE" class="form-control input-sm input300" />
|
||||||
#for $cur_preset in $time_presets:
|
<div class="clear-left"><p>default:origin. Access repo configured remotes (save then refresh browser)</p></div>
|
||||||
<option value="$cur_preset" #if $cur_preset == $sickbeard.TIME_PRESET_W_SECONDS then "selected=\"selected\"" else ""#>$sbdatetime.now().sbftime(show_seconds=True,t_preset=$cur_preset)</option>
|
|
||||||
#end for
|
|
||||||
</select>
|
|
||||||
</span>
|
</span>
|
||||||
</label>
|
</label>
|
||||||
<label class="nocheck">
|
|
||||||
<span class="component-title"> </span>
|
|
||||||
<span class="component-desc"><b>Note:</b> Seconds are only shown on the History page.</span>
|
|
||||||
</label>
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="field-pair">
|
<div class="field-pair">
|
||||||
<label class="nocheck">
|
<label>
|
||||||
<span class="component-title">Timezones:</span>
|
<span class="component-title">Git executable path</span>
|
||||||
<span class="component-desc">Display dates and times in either your timezone or the shows network timezone?</span>
|
|
||||||
</label>
|
|
||||||
<label class="nocheck">
|
|
||||||
<span class="component-title"> </span>
|
|
||||||
<span class="component-desc">
|
<span class="component-desc">
|
||||||
<input type="radio" name="timezone_display" id="local" value="local" #if $sickbeard.TIMEZONE_DISPLAY=="local" then "checked=\"checked\"" else ""# />Local Timezone<br />
|
<input type="text" name="git_path" value="$sickbeard.GIT_PATH" class="form-control input-sm input300" />
|
||||||
|
<div class="clear-left"><p>only needed if OS is unable to locate git from env</p></div>
|
||||||
</span>
|
</span>
|
||||||
<span class="component-title"> </span>
|
</label>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="field-pair">
|
||||||
|
<label>
|
||||||
|
<span class="component-title">CPU throttling:</span>
|
||||||
<span class="component-desc">
|
<span class="component-desc">
|
||||||
<input type="radio" name="timezone_display" id="network" value="network" #if $sickbeard.TIMEZONE_DISPLAY=="network" then "checked=\"checked\"" else ""# />Network Timezone<br />
|
<select id="cpu_presets" name="cpu_preset" class="form-control input-sm">
|
||||||
|
#for $cur_preset in $cpu_presets:
|
||||||
|
<option value="$cur_preset" #if $cur_preset == $sickbeard.CPU_PRESET then 'selected="selected"' else ''#>$cur_preset.capitalize()</option>
|
||||||
|
#end for
|
||||||
|
</select>
|
||||||
|
<span>Normal (default). High is lower and Low is higher CPU use</span>
|
||||||
|
</span>
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="field-pair">
|
||||||
|
<label>
|
||||||
|
<span class="component-title">Anonymous redirect</span>
|
||||||
|
<span class="component-desc">
|
||||||
|
<input type="text" name="anon_redirect" value="$sickbeard.ANON_REDIRECT" class="form-control input-sm input300" />
|
||||||
|
<div class="clear-left"><p>backlink protection via anonymizer service, must end in "?"</p></div>
|
||||||
|
</span>
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="field-pair">
|
||||||
|
<label for="encryption_version">
|
||||||
|
<span class="component-title">Encrypt passwords</span>
|
||||||
|
<span class="component-desc">
|
||||||
|
<input type="checkbox" name="encryption_version" id="encryption_version" #if $sickbeard.ENCRYPTION_VERSION then 'checked="checked"' else ''#/>
|
||||||
|
<p>in the <code>config.ini</code> file.
|
||||||
|
<b>Warning:</b> Passwords must only contain <a target="_blank" href="http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters">ASCII characters</a></p>
|
||||||
|
</span>
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="field-pair">
|
||||||
|
<label for="calendar_unprotected">
|
||||||
|
<span class="component-title">Unprotected calendar</span>
|
||||||
|
<span class="component-desc">
|
||||||
|
<input type="checkbox" name="calendar_unprotected" id="calendar_unprotected" #if $sickbeard.CALENDAR_UNPROTECTED then 'checked="checked"' else ''#/>
|
||||||
|
<p>allow subscribing to the calendar without user and password.
|
||||||
|
Some services like Google Calendar only work this way</p>
|
||||||
|
</span>
|
||||||
|
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="field-pair">
|
||||||
|
<label>
|
||||||
|
<span class="component-title">Proxy host</span>
|
||||||
|
<span class="component-desc">
|
||||||
|
<input type="text" name="proxy_setting" value="$sickbeard.PROXY_SETTING" class="form-control input-sm input300" />
|
||||||
|
<div class="clear-left"><p>blank to disable or proxy to use when connecting to providers</p></div>
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="field-pair">
|
||||||
|
<label for="proxy_indexers">
|
||||||
|
<span class="component-title">Use proxy for indexers</span>
|
||||||
|
<span class="component-desc">
|
||||||
|
<input type="checkbox" name="proxy_indexers" id="proxy_indexers" #if True == $sickbeard.PROXY_INDEXERS then 'checked="checked"' else ''#/>
|
||||||
|
<p>use proxy host for connecting to indexers (thetvdb, tvrage)</p>
|
||||||
</span>
|
</span>
|
||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
@ -361,169 +534,6 @@
|
|||||||
</fieldset>
|
</fieldset>
|
||||||
</div><!-- /component-group3 //-->
|
</div><!-- /component-group3 //-->
|
||||||
|
|
||||||
<div id="core-component-group4" class="component-group">
|
|
||||||
|
|
||||||
<div class="component-group-desc">
|
|
||||||
<h3>Advanced Settings</h3>
|
|
||||||
<p>You need to know what you are doing here!!!</p>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<fieldset class="component-group-list">
|
|
||||||
|
|
||||||
<div class="field-pair">
|
|
||||||
<label class="nocheck">
|
|
||||||
<span class="component-title">Branch Version:</span>
|
|
||||||
<span class="component-desc">
|
|
||||||
<select id="branchVersion" class="form-control form-control-inline input-sm pull-left">
|
|
||||||
#for $cur_branch in $sickbeard.versionCheckScheduler.action.list_remote_branches():
|
|
||||||
<option value="$cur_branch" #if $cur_branch == $sickbeard.BRANCH then "selected=\"selected\"" else ""#>$cur_branch</option>
|
|
||||||
#end for
|
|
||||||
</select>
|
|
||||||
<input class="btn btn-inline" style="margin-left: 6px;" type="button" id="branchCheckout" value="Checkout Branch">
|
|
||||||
</span>
|
|
||||||
</label>
|
|
||||||
<label class="nocheck">
|
|
||||||
<span class="component-title"> </span>
|
|
||||||
<span class="component-desc">Select the branch you wish to use, changing this will require a restart.</span>
|
|
||||||
</label>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="field-pair">
|
|
||||||
<label class="nocheck">
|
|
||||||
<span class="component-title">CPU Throttling:</span>
|
|
||||||
<span class="component-desc">
|
|
||||||
<select id="cpu_presets" name="cpu_preset" class="form-control input-sm">
|
|
||||||
#for $cur_preset in $cpu_presets:
|
|
||||||
<option value="$cur_preset" #if $cur_preset == $sickbeard.CPU_PRESET then "selected=\"selected\"" else ""#>$cur_preset.capitalize()</option>
|
|
||||||
#end for
|
|
||||||
</select>
|
|
||||||
</span>
|
|
||||||
</label>
|
|
||||||
<label class="nocheck">
|
|
||||||
<span class="component-title"> </span>
|
|
||||||
<span class="component-desc">Normal = Default. High = Lower CPU usage. Low = Higher CPU usage.</span>
|
|
||||||
</label>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="field-pair">
|
|
||||||
<label class="nocheck">
|
|
||||||
<span class="component-title">Anonymous Redirect</span>
|
|
||||||
<input type="text" name="anon_redirect" value="$sickbeard.ANON_REDIRECT" class="form-control input-sm input300" />
|
|
||||||
</label>
|
|
||||||
<label class="nocheck">
|
|
||||||
<span class="component-title"> </span>
|
|
||||||
<span class="component-desc">Backlink protection via anonymizer service, must end in <b>?</b></span>
|
|
||||||
</label>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="field-pair">
|
|
||||||
<label class="nocheck">
|
|
||||||
<span class="component-title">Git Path</span>
|
|
||||||
<input type="text" name="git_path" value="$sickbeard.GIT_PATH" class="form-control input-sm input300" />
|
|
||||||
</label>
|
|
||||||
<label class="nocheck">
|
|
||||||
<span class="component-title"> </span>
|
|
||||||
<span class="component-desc">Specify path to Git binary, use only if OS is unable to find the path.</span>
|
|
||||||
</label>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="field-pair">
|
|
||||||
<input type="checkbox" name="use_api" class="enabler" id="use_api" #if $sickbeard.USE_API then "checked=\"checked\"" else ""#/>
|
|
||||||
<label for="use_api">
|
|
||||||
<span class="component-title">Enable API</span>
|
|
||||||
<span class="component-desc">Allow the use of the Sick-Beard API.</span>
|
|
||||||
</label>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div id="content_use_api">
|
|
||||||
<div class="field-pair">
|
|
||||||
<label class="nocheck" for="api_key">
|
|
||||||
<span class="component-title">API Key</span>
|
|
||||||
<input type="text" name="api_key" id="api_key" value="$sickbeard.API_KEY" class="form-control input-sm input300" readonly="readonly" />
|
|
||||||
<input class="btn btn-inline" type="button" id="generate_new_apikey" value="Generate">
|
|
||||||
</label>
|
|
||||||
<label class="nocheck">
|
|
||||||
<span class="component-title"> </span>
|
|
||||||
<span class="component-desc">Used to give 3rd party programs limited access to Sick-Beard.</span>
|
|
||||||
</label>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="field-pair">
|
|
||||||
<input type="checkbox" name="encryption_version" id="encryption_version" #if $sickbeard.ENCRYPTION_VERSION then "checked=\"checked\"" else ""#/>
|
|
||||||
<label for="encryption_version">
|
|
||||||
<span class="component-title">Encrypt Passwords</span>
|
|
||||||
<span class="component-desc">Should SickRage encrypt passwords in <code>config.ini</code> file?</span>
|
|
||||||
</label>
|
|
||||||
<label class="nocheck">
|
|
||||||
<span class="component-title"> </span>
|
|
||||||
<span class="component-desc"><b>Warning</b>: Passwords must only contain <a href="http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters">ASCII characters</a></span>
|
|
||||||
</label>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="field-pair">
|
|
||||||
<input type="checkbox" name="calendar_unprotected" id="calendar_unprotected" #if $sickbeard.CALENDAR_UNPROTECTED then "checked=\"checked\"" else ""#/>
|
|
||||||
<label for="calendar_unprotected">
|
|
||||||
<span class="component-title">Unprotected Calendar</span>
|
|
||||||
<span class="component-desc">Allow subscribing to the calendar without user and password.</span>
|
|
||||||
</label>
|
|
||||||
<label class="nocheck">
|
|
||||||
<span class="component-title"> </span>
|
|
||||||
<span class="component-desc">Some services like Google Calendar only work this way.</span>
|
|
||||||
</label>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="field-pair">
|
|
||||||
<label class="nocheck">
|
|
||||||
<span class="component-title">Proxy Settings</span>
|
|
||||||
<input type="text" name="proxy_setting" value="$sickbeard.PROXY_SETTING" class="form-control input-sm input300" />
|
|
||||||
</label>
|
|
||||||
<label class="nocheck">
|
|
||||||
<span class="component-title"> </span>
|
|
||||||
<span class="component-desc">Proxy to use for connecting to providers. Leave empty to not use proxy.</span>
|
|
||||||
</label>
|
|
||||||
</div>
|
|
||||||
<div class="field-pair">
|
|
||||||
<input type="checkbox" name="proxy_indexers" id="proxy_indexers" #if $sickbeard.PROXY_INDEXERS == True then "checked=\"checked\"" else ""#/>
|
|
||||||
<label for="proxy_indexers">
|
|
||||||
<span class="component-title">Proxy Indexers</span>
|
|
||||||
<span class="component-desc">Use the proxy for connecting to indexers (thetvdb, tvrage)</span>
|
|
||||||
</label>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<input type="submit" class="btn config_submitter" value="Save Changes" />
|
|
||||||
</fieldset>
|
|
||||||
</div><!-- /component-group4 //-->
|
|
||||||
|
|
||||||
<div id="core-component-group5" class="component-group">
|
|
||||||
|
|
||||||
<div class="component-group-desc">
|
|
||||||
<h3>UI Theme Settings</h3>
|
|
||||||
<p>Change UI settings to your liking.</p>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<fieldset class="component-group-list">
|
|
||||||
|
|
||||||
<div class="field-pair">
|
|
||||||
<label class="nocheck">
|
|
||||||
<span class="component-title">UI Theme:</span>
|
|
||||||
<span class="component-desc">
|
|
||||||
<select id="theme_name" name="theme_name" class="form-control input-sm">
|
|
||||||
<option value="dark" #if $sickbeard.THEME_NAME == "dark" then "selected=\"selected\"" else ""#>Dark</option>
|
|
||||||
<option value="original" #if $sickbeard.THEME_NAME == "original" then "selected=\"selected\"" else ""#>Original</option>
|
|
||||||
</select>
|
|
||||||
</span>
|
|
||||||
</label>
|
|
||||||
<label class="nocheck">
|
|
||||||
<span class="component-title"> </span>
|
|
||||||
<span class="component-desc"><font color="red">Please refresh your browser after you have saved for appearance to take effect.</font></span>
|
|
||||||
</label>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<input type="submit" class="btn config_submitter" value="Save Changes" />
|
|
||||||
</fieldset>
|
|
||||||
</div><!-- /component-group5 //-->
|
|
||||||
|
|
||||||
<br/>
|
<br/>
|
||||||
<h6 class="pull-right"><b>All non-absolute folder locations are relative to <span class="path">$sickbeard.DATA_DIR</span></b> </h6>
|
<h6 class="pull-right"><b>All non-absolute folder locations are relative to <span class="path">$sickbeard.DATA_DIR</span></b> </h6>
|
||||||
<input type="submit" class="btn pull-left config_submitter button" value="Save Changes" />
|
<input type="submit" class="btn pull-left config_submitter button" value="Save Changes" />
|
||||||
@ -538,9 +548,9 @@
|
|||||||
|
|
||||||
<script type="text/javascript" charset="utf-8">
|
<script type="text/javascript" charset="utf-8">
|
||||||
<!--
|
<!--
|
||||||
jQuery('#log_dir').fileBrowser({ title: 'Select Log Directory' });
|
jQuery('#log_dir').fileBrowser({ title: 'Select log file folder location' });
|
||||||
jQuery('#config-components').tabs();
|
jQuery('#config-components').tabs();
|
||||||
//-->
|
//-->
|
||||||
</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')
|
||||||
|
@ -11,18 +11,17 @@
|
|||||||
#end if
|
#end if
|
||||||
|
|
||||||
<input type="hidden" id="whichDefaultRootDir" value="$backend_default" />
|
<input type="hidden" id="whichDefaultRootDir" value="$backend_default" />
|
||||||
<div style="padding: 10px 0 5px; width: 670px; margin-left: auto; margin-right: auto;">
|
<div class="rootdir-selectbox">
|
||||||
<select name="rootDir" id="rootDirs" size="6" style="width: 670px;">
|
<select name="rootDir" id="rootDirs" size="6">
|
||||||
#for $cur_dir in $backend_dirs:
|
#for $cur_dir in $backend_dirs:
|
||||||
<option value="$cur_dir">$cur_dir</option>
|
<option value="$cur_dir">$cur_dir</option>
|
||||||
#end for
|
#end for
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
<div id="rootDirsControls" style="text-align: center; width: 670px; margin-left: auto; margin-right: auto;">
|
<div id="rootDirsControls" class="rootdir-controls">
|
||||||
<input class="btn" type="button" id="addRootDir" value="New" />
|
<input class="btn" type="button" id="addRootDir" value="New" />
|
||||||
<input class="btn" type="button" id="editRootDir" value="Edit" />
|
<input class="btn" type="button" id="editRootDir" value="Edit" />
|
||||||
<input class="btn" type="button" id="deleteRootDir" value="Delete" />
|
<input class="btn" type="button" id="deleteRootDir" value="Delete" />
|
||||||
<input class="btn" type="button" id="defaultRootDir" value="Set as Default *" />
|
<input class="btn" type="button" id="defaultRootDir" value="Set as Default *" />
|
||||||
</div>
|
</div>
|
||||||
<input type="text" style="display: none" id="rootDirText" />
|
<input type="text" style="display: none" id="rootDirText" />
|
||||||
<br />
|
|
||||||
|
@ -104,6 +104,7 @@ AUTO_UPDATE = False
|
|||||||
NOTIFY_ON_UPDATE = False
|
NOTIFY_ON_UPDATE = False
|
||||||
CUR_COMMIT_HASH = None
|
CUR_COMMIT_HASH = None
|
||||||
BRANCH = ''
|
BRANCH = ''
|
||||||
|
GIT_REMOTE = ''
|
||||||
CUR_COMMIT_BRANCH = ''
|
CUR_COMMIT_BRANCH = ''
|
||||||
|
|
||||||
INIT_LOCK = Lock()
|
INIT_LOCK = Lock()
|
||||||
@ -460,7 +461,7 @@ def get_backlog_cycle_time():
|
|||||||
def initialize(consoleLogging=True):
|
def initialize(consoleLogging=True):
|
||||||
with INIT_LOCK:
|
with INIT_LOCK:
|
||||||
|
|
||||||
global BRANCH, CUR_COMMIT_HASH, CUR_COMMIT_BRANCH, ACTUAL_LOG_DIR, LOG_DIR, WEB_PORT, WEB_LOG, ENCRYPTION_VERSION, WEB_ROOT, WEB_USERNAME, WEB_PASSWORD, WEB_HOST, WEB_IPV6, USE_API, API_KEY, ENABLE_HTTPS, HTTPS_CERT, HTTPS_KEY, \
|
global BRANCH, GIT_REMOTE, CUR_COMMIT_HASH, CUR_COMMIT_BRANCH, ACTUAL_LOG_DIR, LOG_DIR, WEB_PORT, WEB_LOG, ENCRYPTION_VERSION, WEB_ROOT, WEB_USERNAME, WEB_PASSWORD, WEB_HOST, WEB_IPV6, USE_API, API_KEY, ENABLE_HTTPS, HTTPS_CERT, HTTPS_KEY, \
|
||||||
HANDLE_REVERSE_PROXY, USE_NZBS, USE_TORRENTS, NZB_METHOD, NZB_DIR, DOWNLOAD_PROPERS, CHECK_PROPERS_INTERVAL, ALLOW_HIGH_PRIORITY, TORRENT_METHOD, \
|
HANDLE_REVERSE_PROXY, USE_NZBS, USE_TORRENTS, NZB_METHOD, NZB_DIR, DOWNLOAD_PROPERS, CHECK_PROPERS_INTERVAL, ALLOW_HIGH_PRIORITY, TORRENT_METHOD, \
|
||||||
SAB_USERNAME, SAB_PASSWORD, SAB_APIKEY, SAB_CATEGORY, SAB_HOST, \
|
SAB_USERNAME, SAB_PASSWORD, SAB_APIKEY, SAB_CATEGORY, SAB_HOST, \
|
||||||
NZBGET_USERNAME, NZBGET_PASSWORD, NZBGET_CATEGORY, NZBGET_PRIORITY, NZBGET_HOST, NZBGET_USE_HTTPS, backlogSearchScheduler, \
|
NZBGET_USERNAME, NZBGET_PASSWORD, NZBGET_CATEGORY, NZBGET_PRIORITY, NZBGET_HOST, NZBGET_USE_HTTPS, backlogSearchScheduler, \
|
||||||
@ -530,6 +531,9 @@ def initialize(consoleLogging=True):
|
|||||||
# wanted branch
|
# wanted branch
|
||||||
BRANCH = check_setting_str(CFG, 'General', 'branch', '')
|
BRANCH = check_setting_str(CFG, 'General', 'branch', '')
|
||||||
|
|
||||||
|
# git_remote
|
||||||
|
GIT_REMOTE = check_setting_str(CFG, 'General', 'git_remote', 'origin')
|
||||||
|
|
||||||
# current commit hash
|
# current commit hash
|
||||||
CUR_COMMIT_HASH = check_setting_str(CFG, 'General', 'cur_commit_hash', '')
|
CUR_COMMIT_HASH = check_setting_str(CFG, 'General', 'cur_commit_hash', '')
|
||||||
|
|
||||||
@ -1353,6 +1357,7 @@ def save_config():
|
|||||||
# For passwords you must include the word `password` in the item_name and add `helpers.encrypt(ITEM_NAME, ENCRYPTION_VERSION)` in save_config()
|
# For passwords you must include the word `password` in the item_name and add `helpers.encrypt(ITEM_NAME, ENCRYPTION_VERSION)` in save_config()
|
||||||
new_config['General'] = {}
|
new_config['General'] = {}
|
||||||
new_config['General']['branch'] = BRANCH
|
new_config['General']['branch'] = BRANCH
|
||||||
|
new_config['General']['git_remote'] = GIT_REMOTE
|
||||||
new_config['General']['cur_commit_hash'] = CUR_COMMIT_HASH
|
new_config['General']['cur_commit_hash'] = CUR_COMMIT_HASH
|
||||||
new_config['General']['cur_commit_branch'] = CUR_COMMIT_BRANCH
|
new_config['General']['cur_commit_branch'] = CUR_COMMIT_BRANCH
|
||||||
new_config['General']['config_version'] = CONFIG_VERSION
|
new_config['General']['config_version'] = CONFIG_VERSION
|
||||||
|
@ -443,7 +443,7 @@ class GitUpdateManager(UpdateManager):
|
|||||||
self._num_commits_ahead = 0
|
self._num_commits_ahead = 0
|
||||||
|
|
||||||
# get all new info from github
|
# get all new info from github
|
||||||
output, err, exit_status = self._run_git(self._git_path, 'fetch origin')
|
output, err, exit_status = self._run_git(self._git_path, 'fetch %s' % sickbeard.GIT_REMOTE)
|
||||||
|
|
||||||
if not exit_status == 0:
|
if not exit_status == 0:
|
||||||
logger.log(u"Unable to contact github, can't check for update", logger.ERROR)
|
logger.log(u"Unable to contact github, can't check for update", logger.ERROR)
|
||||||
@ -538,7 +538,7 @@ class GitUpdateManager(UpdateManager):
|
|||||||
"""
|
"""
|
||||||
|
|
||||||
if self.branch == self._find_installed_branch():
|
if self.branch == self._find_installed_branch():
|
||||||
output, err, exit_status = self._run_git(self._git_path, 'pull -f origin ' + self.branch) # @UnusedVariable
|
output, err, exit_status = self._run_git(self._git_path, 'pull -f %s %s' % (sickbeard.GIT_REMOTE, self.branch)) # @UnusedVariable
|
||||||
else:
|
else:
|
||||||
output, err, exit_status = self._run_git(self._git_path, 'checkout -f ' + self.branch) # @UnusedVariable
|
output, err, exit_status = self._run_git(self._git_path, 'checkout -f ' + self.branch) # @UnusedVariable
|
||||||
|
|
||||||
@ -553,7 +553,7 @@ class GitUpdateManager(UpdateManager):
|
|||||||
return False
|
return False
|
||||||
|
|
||||||
def list_remote_branches(self):
|
def list_remote_branches(self):
|
||||||
branches, err, exit_status = self._run_git(self._git_path, 'ls-remote --heads origin') # @UnusedVariable
|
branches, err, exit_status = self._run_git(self._git_path, 'ls-remote --heads %s' % sickbeard.GIT_REMOTE) # @UnusedVariable
|
||||||
if exit_status == 0 and branches:
|
if exit_status == 0 and branches:
|
||||||
return re.findall('\S+\Wrefs/heads/(.*)', branches)
|
return re.findall('\S+\Wrefs/heads/(.*)', branches)
|
||||||
return []
|
return []
|
||||||
|
@ -1502,7 +1502,7 @@ class ConfigGeneral(MainHandler):
|
|||||||
use_api=None, api_key=None, indexer_default=None, timezone_display=None, cpu_preset=None,
|
use_api=None, api_key=None, indexer_default=None, timezone_display=None, cpu_preset=None,
|
||||||
web_password=None, version_notify=None, enable_https=None, https_cert=None, https_key=None,
|
web_password=None, version_notify=None, enable_https=None, https_cert=None, https_key=None,
|
||||||
handle_reverse_proxy=None, sort_article=None, auto_update=None, notify_on_update=None,
|
handle_reverse_proxy=None, sort_article=None, auto_update=None, notify_on_update=None,
|
||||||
proxy_setting=None, proxy_indexers=None, anon_redirect=None, git_path=None, calendar_unprotected=None,
|
proxy_setting=None, proxy_indexers=None, anon_redirect=None, git_path=None, git_remote=None, calendar_unprotected=None,
|
||||||
fuzzy_dating=None, trim_zero=None, date_preset=None, date_preset_na=None, time_preset=None,
|
fuzzy_dating=None, trim_zero=None, date_preset=None, date_preset_na=None, time_preset=None,
|
||||||
indexer_timeout=None, play_videos=None, rootDir=None, theme_name=None):
|
indexer_timeout=None, play_videos=None, rootDir=None, theme_name=None):
|
||||||
|
|
||||||
@ -1525,6 +1525,7 @@ class ConfigGeneral(MainHandler):
|
|||||||
sickbeard.PROXY_SETTING = proxy_setting
|
sickbeard.PROXY_SETTING = proxy_setting
|
||||||
sickbeard.PROXY_INDEXERS = config.checkbox_to_value(proxy_indexers)
|
sickbeard.PROXY_INDEXERS = config.checkbox_to_value(proxy_indexers)
|
||||||
sickbeard.GIT_PATH = git_path
|
sickbeard.GIT_PATH = git_path
|
||||||
|
sickbeard.GIT_REMOTE = git_remote
|
||||||
sickbeard.CALENDAR_UNPROTECTED = config.checkbox_to_value(calendar_unprotected)
|
sickbeard.CALENDAR_UNPROTECTED = config.checkbox_to_value(calendar_unprotected)
|
||||||
# sickbeard.LOG_DIR is set in config.change_LOG_DIR()
|
# sickbeard.LOG_DIR is set in config.change_LOG_DIR()
|
||||||
|
|
||||||
|