Hide advanced settings

This commit is contained in:
JonnyWong16 2018-01-20 14:03:23 -08:00
parent 45c2ccdffe
commit 770f12b632
4 changed files with 123 additions and 118 deletions

View file

@ -2122,6 +2122,18 @@ a:hover .item-children-poster {
top: 5px; top: 5px;
left: 12px; left: 12px;
} }
#menu_link_show_advanced_settings.active {
color: #fff;
background-color: #cc7b19;
}
.advanced-setting {
display: none;
}
div.checkbox.advanced-setting,
div.form-group.advanced-setting {
border-left: 1px solid #e5a00d;
padding-left: 10px;
}
.user-info-wrapper { .user-info-wrapper {
} }
.user-info-poster-face { .user-info-poster-face {

View file

@ -26,11 +26,16 @@
<span><i class="fa fa-cogs"></i> Settings</span> <span><i class="fa fa-cogs"></i> Settings</span>
</div> </div>
<div class="button-bar"> <div class="button-bar">
% if config['show_advanced_settings'] == 1:
<button id="menu_link_show_advanced_settings" class="btn btn-dark active"><i class="fa fa-wrench"></i> Hide Advanced</button>
% else:
<button id="menu_link_show_advanced_settings" class="btn btn-dark"><i class="fa fa-wrench"></i> Show Advanced</button>
% endif
% if config['check_github']: % if config['check_github']:
<button id="menu_link_update_check" class="btn btn-dark"><i class="fa fa-arrow-circle-up"></i> Check for Updates</button> <button id="menu_link_update_check" class="btn btn-dark"><i class="fa fa-arrow-circle-up"></i> Check for Updates</button>
% endif % endif
<button id="menu_link_restart" class="btn btn-dark"><i class="fa fa-refresh"></i> Restart</button> <button id="menu_link_restart" class="btn btn-dark"><i class="fa fa-refresh"></i> Restart</button>
<button id="menu_link_shutdown" class="btn btn-dark"><i class="fa fa-power-off"></i> Shut Down</button> <button id="menu_link_shutdown" class="btn btn-dark"><i class="fa fa-power-off"></i> Shutdown</button>
</div> </div>
</div> </div>
</div> </div>
@ -43,19 +48,16 @@
<li role="presentation"><a href="#tabs-general" aria-controls="tabs-general" role="tab" data-toggle="tab">General</a></li> <li role="presentation"><a href="#tabs-general" aria-controls="tabs-general" role="tab" data-toggle="tab">General</a></li>
<li role="presentation"><a href="#tabs-homepage" aria-controls="tabs-homepage" role="tab" data-toggle="tab">Homepage</a></li> <li role="presentation"><a href="#tabs-homepage" aria-controls="tabs-homepage" role="tab" data-toggle="tab">Homepage</a></li>
<li role="presentation"><a href="#tabs-web_interface" aria-controls="tabs-web_interface" role="tab" data-toggle="tab">Web Interface</a></li> <li role="presentation"><a href="#tabs-web_interface" aria-controls="tabs-web_interface" role="tab" data-toggle="tab">Web Interface</a></li>
<li role="presentation"><a href="#tabs-access_control" aria-controls="tabs-access_control" role="tab" data-toggle="tab">Access Control</a></li>
<li role="presentation"><a href="#tabs-plex_media_server" aria-controls="tabs-plex_media_server" role="tab" data-toggle="tab">Plex Media Server</a></li> <li role="presentation"><a href="#tabs-plex_media_server" aria-controls="tabs-plex_media_server" role="tab" data-toggle="tab">Plex Media Server</a></li>
<li role="presentation"><a href="#tabs-plextv_account" aria-controls="tabs-plextv_account" role="tab" data-toggle="tab">Plex.tv Account</a></li>
<li role="presentation"><a href="#tabs-activity_monitoring" aria-controls="tabs-activity_monitoring" role="tab" data-toggle="tab">Activity Monitoring</a></li>
<li role="presentation"><a href="#tabs-notifications" aria-controls="tabs-notifications" role="tab" data-toggle="tab">Notifications</a></li> <li role="presentation"><a href="#tabs-notifications" aria-controls="tabs-notifications" role="tab" data-toggle="tab">Notifications</a></li>
<li role="presentation"><a href="#tabs-notification_agents" aria-controls="tabs-notification_agents" role="tab" data-toggle="tab">Notification Agents</a></li> <li role="presentation" class="advanced-setting"><a href="#tabs-extra_settings" aria-controls="tabs-extra_settings" role="tab" data-toggle="tab">Extra Settings</a></li>
<li role="presentation"><a href="#tabs-extra_settings" aria-controls="tabs-extra_settings" role="tab" data-toggle="tab">Extra Settings</a></li>
<li role="presentation"><a href="#tabs-import_backups" aria-controls="tabs-import_backups" role="tab" data-toggle="tab">Import & Backups</a></li> <li role="presentation"><a href="#tabs-import_backups" aria-controls="tabs-import_backups" role="tab" data-toggle="tab">Import & Backups</a></li>
<li role="presentation"><a href="#tabs-android_app" aria-controls="tabs-android_app" role="tab" data-toggle="tab">Tautulli Remote Android App <sup><small>beta</small></sup></a></li> <li role="presentation"><a href="#tabs-android_app" aria-controls="tabs-android_app" role="tab" data-toggle="tab">Tautulli Remote Android App <sup><small>beta</small></sup></a></li>
</ul> </ul>
</div> </div>
<div class="col-md-9"> <div class="col-md-9">
<form action="configUpdate" method="post" class="form" id="configUpdate" data-parsley-validate> <form action="configUpdate" method="post" class="form" id="configUpdate" data-parsley-validate>
<input type="hidden" id="show_advanced_settings" name="show_advanced_settings" value="${config['show_advanced_settings']}" required>
<div class="tab-content"> <div class="tab-content">
<div role="tabpanel" class="tab-pane active" id="tabs-help_info"> <div role="tabpanel" class="tab-pane active" id="tabs-help_info">
% if common.VERSION_NUMBER: % if common.VERSION_NUMBER:
@ -78,6 +80,7 @@
<br> <br>
</div> </div>
</div> </div>
<div role="tabpanel" class="tab-pane" id="tabs-general"> <div role="tabpanel" class="tab-pane" id="tabs-general">
<div class="padded-header"> <div class="padded-header">
@ -102,24 +105,39 @@
</div> </div>
<p class="help-block">Set your preferred time format. <a href="javascript:void(0)" data-target="#dateTimeOptionsModal" data-toggle="modal">Click here</a> to see the parameter list.</p> <p class="help-block">Set your preferred time format. <a href="javascript:void(0)" data-target="#dateTimeOptionsModal" data-toggle="modal">Click here</a> to see the parameter list.</p>
</div> </div>
<div class="checkbox"> <div class="checkbox advanced-setting">
<label> <label>
<input type="checkbox" id="week_start_monday" name="week_start_monday" value="1" ${config['week_start_monday']}> Week Starting on Monday <input type="checkbox" id="week_start_monday" name="week_start_monday" value="1" ${config['week_start_monday']}> Week Starting on Monday
</label> </label>
<p class="help-block">Change the "<em>Play by day of week</em>" graph to start on Monday. Default is start on Sunday.</p> <p class="help-block">Change the "<em>Play by day of week</em>" graph to start on Monday. Default is start on Sunday.</p>
</div> </div>
<div class="checkbox"> <div class="checkbox advanced-setting">
<label> <label>
<input type="checkbox" id="group_history_tables" name="group_history_tables" value="1" ${config['group_history_tables']}> Group Table and Watch Statistics History <input type="checkbox" id="group_history_tables" name="group_history_tables" value="1" ${config['group_history_tables']}> Group Table and Watch Statistics History
</label> </label>
<p class="help-block">Group successive play history by the same user as a single entry in the tables and watch statistics.</p> <p class="help-block">Group successive play history by the same user as a single entry in the tables and watch statistics.</p>
</div> </div>
<div class="checkbox"> <div class="checkbox advanced-setting">
<label> <label>
<input type="checkbox" id="history_table_activity" name="history_table_activity" value="1" ${config['history_table_activity']}> Current Activity in History Tables <input type="checkbox" id="history_table_activity" name="history_table_activity" value="1" ${config['history_table_activity']}> Current Activity in History Tables
</label> </label>
<p class="help-block">Include current activity in the history tables. Statistics will not be counted until the stream has ended.</p> <p class="help-block">Include current activity in the history tables. Statistics will not be counted until the stream has ended.</p>
</div> </div>
<div class="padded-header">
<h3>History Logging</h3>
</div>
<div class="form-group advanced-setting">
<label for="logging_ignore_interval">Ignore Interval</label>
<div class="row">
<div class="col-md-2">
<input type="text" class="form-control" data-parsley-type="integer" id="logging_ignore_interval" name="logging_ignore_interval" value="${config['logging_ignore_interval']}" size="5" data-parsley-min="0" data-parsley-trigger="change" data-parsley-errors-container="#logging_ignore_interval_error" required>
</div>
<div id="logging_ignore_interval_error" class="alert alert-danger settings-alert" role="alert"></div>
</div>
<p class="help-block">The interval (in seconds) an item must be in a playing state before logging it. 0 to disable.</p>
</div>
<div class="form-group"> <div class="form-group">
<label for="movie_watched_percent">Movie Watched Percent</label> <label for="movie_watched_percent">Movie Watched Percent</label>
<div class="row"> <div class="row">
@ -168,7 +186,7 @@
</label> </label>
<p class="help-block">Update Tautulli automatically if an update is available.</p> <p class="help-block">Update Tautulli automatically if an update is available.</p>
</div> </div>
<div class="form-group"> <div class="form-group advanced-setting">
<label for="git_token">GitHub API Token</label> <label for="git_token">GitHub API Token</label>
<div class="row"> <div class="row">
<div class="col-md-6"> <div class="col-md-6">
@ -331,7 +349,13 @@
</div> </div>
<p class="help-block">Note: Web interface changes require a restart.</p> <p class="help-block">Note: Web interface changes require a restart.</p>
<div class="form-group"> <div class="checkbox">
<label>
<input type="checkbox" name="launch_browser" id="launch_browser" value="1" ${config['launch_browser']}> Launch Browser on Startup
</label>
<p class="help-block">Launch browser pointed to Tautulli on startup.</p>
</div>
<div class="form-group advanced-setting">
<label for="http_host">HTTP Host</label> <label for="http_host">HTTP Host</label>
<div class="row"> <div class="row">
<div class="col-md-6"> <div class="col-md-6">
@ -359,34 +383,27 @@
</div> </div>
<p class="help-block">The base URL of the web server. Used for reverse proxies.</p> <p class="help-block">The base URL of the web server. Used for reverse proxies.</p>
</div> </div>
<div class="checkbox"> <div class="checkbox advanced-setting">
<label> <label>
<input type="checkbox" class="http-settings" name="http_proxy" id="http_proxy" value="1" ${config['http_proxy']}> Enable HTTP Proxy <input type="checkbox" class="http-settings" name="http_proxy" id="http_proxy" value="1" ${config['http_proxy']}> Enable HTTP Proxy
</label> </label>
<p class="help-block">Respect the X-Forwarded-Proto header. Used for reverse proxies with SSL.</p> <p class="help-block">Respect the X-Forwarded-Proto header. Used for reverse proxies with SSL.</p>
</div> </div>
<br /> <div class="checkbox advanced-setting">
<div class="checkbox">
<label>
<input type="checkbox" name="launch_browser" id="launch_browser" value="1" ${config['launch_browser']}> Launch Browser on Startup
</label>
<p class="help-block">Launch browser pointed to Tautulli on startup.</p>
</div>
<div class="checkbox">
<label> <label>
<input type="checkbox" class="http-settings" name="enable_https" id="enable_https" value="1" ${config['enable_https']} /> Enable HTTPS <input type="checkbox" class="http-settings" name="enable_https" id="enable_https" value="1" ${config['enable_https']} /> Enable HTTPS
</label> </label>
<p class="help-block">Enable HTTPS for web server for encrypted communication.</p> <p class="help-block">Enable HTTPS for web server for encrypted communication.</p>
</div> </div>
<div id="https_options"> <div id="https_options">
<div class="checkbox"> <div class="checkbox advanced-setting">
<label> <label>
<input type="checkbox" class="http-settings" name="https_create_cert" id="https_create_cert" value="1" ${config['https_create_cert']} /> Create Self-signed Certificate <input type="checkbox" class="http-settings" name="https_create_cert" id="https_create_cert" value="1" ${config['https_create_cert']} /> Create Self-signed Certificate
</label> </label>
<p class="help-block">Check to have Tautulli create a self-signed SSL certificate. Uncheck if you want to use your own certificate.</p> <p class="help-block">Check to have Tautulli create a self-signed SSL certificate. Uncheck if you want to use your own certificate.</p>
</div> </div>
<div id="https_options_self-signed"> <div id="https_options_self-signed">
<div class="form-group"> <div class="form-group advanced-setting">
<label for="https_domain">HTTPS Domains</label> <label for="https_domain">HTTPS Domains</label>
<div class="row"> <div class="row">
<div class="col-md-6"> <div class="col-md-6">
@ -395,7 +412,7 @@
</div> </div>
<p class="help-block">The domain names used to access Tautulli, separated by commas (,).</p> <p class="help-block">The domain names used to access Tautulli, separated by commas (,).</p>
</div> </div>
<div class="form-group"> <div class="form-group advanced-setting">
<label for="https_ip">HTTPS IPs</label> <label for="https_ip">HTTPS IPs</label>
<div class="row"> <div class="row">
<div class="col-md-6"> <div class="col-md-6">
@ -405,7 +422,7 @@
<p class="help-block">The IP addresses used to access Tautulli, separated by commas (,).</p> <p class="help-block">The IP addresses used to access Tautulli, separated by commas (,).</p>
</div> </div>
</div> </div>
<div class="form-group"> <div class="form-group advanced-setting">
<label for="https_cert">HTTPS Certificate</label> <label for="https_cert">HTTPS Certificate</label>
<div class="row"> <div class="row">
<div class="col-md-6"> <div class="col-md-6">
@ -414,7 +431,7 @@
</div> </div>
<p class="help-block">The location of the SSL certificate.</p> <p class="help-block">The location of the SSL certificate.</p>
</div> </div>
<div class="form-group"> <div class="form-group advanced-setting">
<label for="https_cert_chain">HTTPS Certificate Chain</label> <label for="https_cert_chain">HTTPS Certificate Chain</label>
<div class="row"> <div class="row">
<div class="col-md-6"> <div class="col-md-6">
@ -423,7 +440,7 @@
</div> </div>
<p class="help-block">The location of the SSL certificate chain.</p> <p class="help-block">The location of the SSL certificate chain.</p>
</div> </div>
<div class="form-group"> <div class="form-group advanced-setting">
<label for="https_key">HTTPS Key</label> <label for="https_key">HTTPS Key</label>
<div class="row"> <div class="row">
<div class="col-md-6"> <div class="col-md-6">
@ -433,11 +450,6 @@
<p class="help-block">The location of the SSL key.</p> <p class="help-block">The location of the SSL key.</p>
</div> </div>
</div> </div>
<p><input type="button" class="btn btn-bright save-button" value="Save" data-success="Changes saved successfully"></p>
</div>
<div role="tabpanel" class="tab-pane" id="tabs-access_control">
<div class="padded-header"> <div class="padded-header">
<h3>Authentication</h3> <h3>Authentication</h3>
@ -463,15 +475,7 @@
</div> </div>
<p class="help-block">Password for web server authentication. Leave empty to disable.</p> <p class="help-block">Password for web server authentication. Leave empty to disable.</p>
</div> </div>
<div class="checkbox">
<label>
<input type="checkbox" name="http_hash_password" id="http_hash_password" value="1" ${config['http_hash_password']} data-parsley-trigger="change"> Hash Password in the Config File
</label>
<span id="hashPasswordCheck" style="color: #eb8600; padding-left: 10px;"></span>
<p class="help-block">Store a hashed password in the config file.<br />Warning: Your password cannot be recovered if forgotten!</p>
</div>
<input type="text" id="http_hashed_password" name="http_hashed_password" value="${config['http_hashed_password']}" style="display: none;" data-parsley-trigger="change" data-parsley-type="integer" data-parsley-range="[0, 1]"
data-parsley-errors-container="#http_hash_password_error" data-parsley-error-message="Cannot un-hash password, please set a new password." data-parsley-no-focus required>
<div class="checkbox"> <div class="checkbox">
<label> <label>
<input type="checkbox" class="auth-settings" name="http_plex_admin" id="http_plex_admin" value="1" ${config['http_plex_admin']} data-parsley-trigger="change"> Allow Plex Admin <input type="checkbox" class="auth-settings" name="http_plex_admin" id="http_plex_admin" value="1" ${config['http_plex_admin']} data-parsley-trigger="change"> Allow Plex Admin
@ -479,7 +483,16 @@
<span id="allowPlexCheck" style="color: #eb8600; padding-left: 10px;"></span> <span id="allowPlexCheck" style="color: #eb8600; padding-left: 10px;"></span>
<p class="help-block">Allow the Plex server admin to login as a Tautulli admin using their Plex.tv account.</p> <p class="help-block">Allow the Plex server admin to login as a Tautulli admin using their Plex.tv account.</p>
</div> </div>
<div class="checkbox"> <div class="checkbox advanced-setting">
<label>
<input type="checkbox" name="http_hash_password" id="http_hash_password" value="1" ${config['http_hash_password']} data-parsley-trigger="change"> Hash Password in the Config File
</label>
<span id="hashPasswordCheck" style="color: #eb8600; padding-left: 10px;"></span>
<p class="help-block">Store a hashed password in the config file.<br />Warning: Your password cannot be recovered if forgotten!</p>
</div>
<input type="text" id="http_hashed_password" name="http_hashed_password" value="${config['http_hashed_password']}" style="display: none;" data-parsley-trigger="change" data-parsley-type="integer" data-parsley-range="[0, 1]"
data-parsley-errors-container="#http_hash_password_error" data-parsley-error-message="Cannot un-hash password, please set a new password." data-parsley-no-focus required>
<div class="checkbox advanced-setting">
<label> <label>
<input type="checkbox" class="auth-settings" name="http_basic_auth" id="http_basic_auth" value="1" ${config['http_basic_auth']} data-parsley-trigger="change"> Use Basic Authentication <input type="checkbox" class="auth-settings" name="http_basic_auth" id="http_basic_auth" value="1" ${config['http_basic_auth']} data-parsley-trigger="change"> Use Basic Authentication
</label> </label>
@ -500,18 +513,18 @@
<p class="help-block">Allow shared users to login to Tautulli using their Plex.tv account. Individual user access needs to be enabled from Users > Edit Mode.</p> <p class="help-block">Allow shared users to login to Tautulli using their Plex.tv account. Individual user access needs to be enabled from Users > Edit Mode.</p>
</div> </div>
<div class="padded-header"> <div class="padded-header advanced-setting">
<h3>API</h3> <h3>API</h3>
</div> </div>
<div class="checkbox"> <div class="checkbox advanced-setting">
<label> <label>
<input type="checkbox" id="api_enabled" name="api_enabled" value="1" ${config['api_enabled']}> Enable API <input type="checkbox" id="api_enabled" name="api_enabled" value="1" ${config['api_enabled']}> Enable API
</label> </label>
<p class="help-block">Allow remote applications to interface with Tautulli.</p> <p class="help-block">Allow remote applications to interface with Tautulli.</p>
</div> </div>
<div id="apioptions"> <div id="apioptions">
<div class="form-group"> <div class="form-group advanced-setting">
<label for="api_key">API key</label> <label for="api_key">API key</label>
<div class="row"> <div class="row">
<div class="col-md-6"> <div class="col-md-6">
@ -621,7 +634,7 @@
</label> </label>
<p class="help-block">If you have secure connections enabled on your Plex Server, communicate with it securely.</p> <p class="help-block">If you have secure connections enabled on your Plex Server, communicate with it securely.</p>
</div> </div>
<div class="checkbox"> <div class="checkbox advanced-setting">
% if config['pms_is_cloud']: % if config['pms_is_cloud']:
<label> <label>
<input type="checkbox" id="pms_url_manual" name="pms_url_manual" value="1" disabled> Manual Connection <input type="checkbox" id="pms_url_manual" name="pms_url_manual" value="1" disabled> Manual Connection
@ -634,7 +647,7 @@
% endif % endif
<p class="help-block">Use the user defined connection details. Do not retrieve the server connection URL automatically.</p> <p class="help-block">Use the user defined connection details. Do not retrieve the server connection URL automatically.</p>
</div> </div>
<div class="form-group"> <div class="form-group advanced-setting">
<label for="pms_logs_folder">Plex Web URL</label> <label for="pms_logs_folder">Plex Web URL</label>
<div class="row"> <div class="row">
<div class="col-md-6"> <div class="col-md-6">
@ -655,11 +668,7 @@
<input type="hidden" id="pms_identifier" name="pms_identifier" value="${config['pms_identifier']}"> <input type="hidden" id="pms_identifier" name="pms_identifier" value="${config['pms_identifier']}">
<input type="checkbox" name="server_changed" id="server_changed" value="1" style="display: none;"> <input type="checkbox" name="server_changed" id="server_changed" value="1" style="display: none;">
<div class="padded-header"> <div class="form-group advanced-setting">
<h3>Plex Logs</h3>
</div>
<div class="form-group">
<label for="pms_logs_folder">Logs Folder</label> <label for="pms_logs_folder">Logs Folder</label>
<div class="row"> <div class="row">
<div class="col-md-6"> <div class="col-md-6">
@ -674,11 +683,6 @@
</p> </p>
</div> </div>
<input type="button" class="btn btn-bright save-button" value="Save" data-success="Changes saved successfully">
</div>
<div role="tabpanel" class="tab-pane" id="tabs-plextv_account">
<div class="padded-header"> <div class="padded-header">
<h3>Plex.tv Authentication</h3> <h3>Plex.tv Authentication</h3>
</div> </div>
@ -699,11 +703,7 @@
<p class="help-block">Token for Plex.tv authentication.</p> <p class="help-block">Token for Plex.tv authentication.</p>
</div> </div>
<div class="padded-header"> <div class="form-group advanced-setting">
<h3>Friends List</h3>
</div>
<div class="form-group">
<label for="refresh_users_interval">Users List Refresh Interval</label> <label for="refresh_users_interval">Users List Refresh Interval</label>
<div class="row"> <div class="row">
<div class="col-md-2"> <div class="col-md-2">
@ -713,18 +713,14 @@
</div> </div>
<p class="help-block">The interval (in hours) Tautulli will request an updated friends list from Plex.tv. Minimum 1, maximum 24, default 12.</p> <p class="help-block">The interval (in hours) Tautulli will request an updated friends list from Plex.tv. Minimum 1, maximum 24, default 12.</p>
</div> </div>
<div class="checkbox"> <div class="checkbox advanced-setting">
<label> <label>
<input type="checkbox" id="refresh_users_on_startup" name="refresh_users_on_startup" value="1" ${config['refresh_users_on_startup']}> Refresh Users List on Startup <input type="checkbox" id="refresh_users_on_startup" name="refresh_users_on_startup" value="1" ${config['refresh_users_on_startup']}> Refresh Users List on Startup
</label> </label>
<p class="help-block">Refresh the users list when Tautulli starts.</p> <p class="help-block">Refresh the users list when Tautulli starts.</p>
</div> </div>
<div class="padded-header"> <div class="form-group advanced-setting">
<h3>Libraries List</h3>
</div>
<div class="form-group">
<label for="refresh_libraries_interval">Libraries List Refresh Interval</label> <label for="refresh_libraries_interval">Libraries List Refresh Interval</label>
<div class="row"> <div class="row">
<div class="col-md-2"> <div class="col-md-2">
@ -734,7 +730,7 @@
</div> </div>
<p class="help-block">The interval (in hours) Tautulli will request an updated libraries list from your Plex Media Server. Minimum 1, maximum 24, default 12.</p> <p class="help-block">The interval (in hours) Tautulli will request an updated libraries list from your Plex Media Server. Minimum 1, maximum 24, default 12.</p>
</div> </div>
<div class="checkbox"> <div class="checkbox advanced-setting">
<label> <label>
<input type="checkbox" id="refresh_libraries_on_startup" name="refresh_libraries_on_startup" value="1" ${config['refresh_libraries_on_startup']}> Refresh Libraries List on Startup <input type="checkbox" id="refresh_libraries_on_startup" name="refresh_libraries_on_startup" value="1" ${config['refresh_libraries_on_startup']}> Refresh Libraries List on Startup
</label> </label>
@ -745,25 +741,23 @@
</div> </div>
<div role="tabpanel" class="tab-pane" id="tabs-activity_monitoring"> <div role="tabpanel" class="tab-pane" id="tabs-notifications">
<div class="padded-header"> <div class="padded-header">
<h3>History Logging</h3> <h3>Notification Agents</h3>
</div> </div>
<div class="form-group"> <p class="help-block">
<label for="logging_ignore_interval">Ignore Interval</label> Add a new notification agent, or configure an existing notification agent by clicking the settings icon on the right.
<div class="row"> </p>
<div class="col-md-2"> <br />
<input type="text" class="form-control" data-parsley-type="integer" id="logging_ignore_interval" name="logging_ignore_interval" value="${config['logging_ignore_interval']}" size="5" data-parsley-min="0" data-parsley-trigger="change" data-parsley-errors-container="#logging_ignore_interval_error" required> <div id="plexpy-notifiers-table">
</div> <div class='text-muted'><i class="fa fa-refresh fa-spin"></i> Loading notification agents...</div>
<div id="logging_ignore_interval_error" class="alert alert-danger settings-alert" role="alert"></div> <br>
</div>
<p class="help-block">The interval (in seconds) an item must be in a playing state before logging it. 0 to disable.</p>
</div> </div>
<div class="padded-header"> <div class="padded-header">
<h3>Buffer Warnings</h3> <h3>Current Activity Notifications</h3>
</div> </div>
<p class="help-block">Note: Buffer warnings only work on certain Plex clients. Android and Plex Web do not report buffer events accurately or at all.</p> <p class="help-block">Note: Buffer warnings only work on certain Plex clients. Android and Plex Web do not report buffer events accurately or at all.</p>
@ -787,17 +781,6 @@
</div> </div>
<p class="help-block">The value (in seconds) Tautulli should wait before triggering the next buffer warning. 0 to always trigger.</p> <p class="help-block">The value (in seconds) Tautulli should wait before triggering the next buffer warning. 0 to always trigger.</p>
</div> </div>
<p><input type="button" class="btn btn-bright save-button" value="Save" data-success="Changes saved successfully"></p>
</div>
<div role="tabpanel" class="tab-pane" id="tabs-notifications">
<div class="padded-header">
<h3>Current Activity Notifications</h3>
</div>
<div class="checkbox"> <div class="checkbox">
<label> <label>
<input type="checkbox" name="notify_consecutive" id="notify_consecutive" value="1" ${config['notify_consecutive']}> Allow Consecutive Notifications <input type="checkbox" name="notify_consecutive" id="notify_consecutive" value="1" ${config['notify_consecutive']}> Allow Consecutive Notifications
@ -903,36 +886,19 @@
</div> </div>
<div role="tabpanel" class="tab-pane" id="tabs-notification_agents">
<div class="padded-header">
<h3>Notification Agents</h3>
</div>
<p class="help-block">
Add a new notification agent, or configure an existing notification agent by clicking the settings icon on the right.
</p>
<br />
<div id="plexpy-notifiers-table">
<div class='text-muted'><i class="fa fa-refresh fa-spin"></i> Loading notification agents...</div>
<br>
</div>
</div>
<div role="tabpanel" class="tab-pane" id="tabs-extra_settings"> <div role="tabpanel" class="tab-pane" id="tabs-extra_settings">
<div class="padded-header"> <div class="padded-header advanced-setting">
<h3>Extra Settings</h3> <h3>Extra Settings</h3>
</div> </div>
<div class="checkbox"> <div class="checkbox advanced-setting">
<label> <label>
<input type="checkbox" id="get_file_sizes" name="get_file_sizes" value="1" ${config['get_file_sizes']}> Calculate Total File Sizes <input type="checkbox" id="get_file_sizes" name="get_file_sizes" value="1" ${config['get_file_sizes']}> Calculate Total File Sizes
</label> </label>
<p class="help-block">Enable if you want Tautulli to calculate the total file size for TV Shows/Seasons and Artists/Albums on the media info tables.</p> <p class="help-block">Enable if you want Tautulli to calculate the total file size for TV Shows/Seasons and Artists/Albums on the media info tables.</p>
</div> </div>
<div class="checkbox"> <div class="checkbox advanced-setting">
<label> <label>
<input type="checkbox" id="log_blacklist" name="log_blacklist" value="1" ${config['log_blacklist']}> Mask Sensitive Information in Logs <input type="checkbox" id="log_blacklist" name="log_blacklist" value="1" ${config['log_blacklist']}> Mask Sensitive Information in Logs
</label> </label>
@ -941,7 +907,7 @@
Note: Only logs from the time this setting is enabled will be masked. Do not post your logs publically without masking sensitive information! Note: Only logs from the time this setting is enabled will be masked. Do not post your logs publically without masking sensitive information!
</p> </p>
</div> </div>
<div class="checkbox"> <div class="checkbox advanced-setting">
<label> <label>
<input type="checkbox" id="cache_images" name="cache_images" value="1" ${config['cache_images']}> Cache Plex Images <input type="checkbox" id="cache_images" name="cache_images" value="1" ${config['cache_images']}> Cache Plex Images
</label> </label>
@ -950,7 +916,7 @@
Note: Video preview thumbnails (BIF) are not cached. Note: Video preview thumbnails (BIF) are not cached.
</p> </p>
</div> </div>
<div class="form-group"> <div class="form-group advanced-setting">
<label for="anon_redirect">Anonymous Redirect</label> <label for="anon_redirect">Anonymous Redirect</label>
<div class="row"> <div class="row">
<div class="col-md-4"> <div class="col-md-4">
@ -959,7 +925,7 @@
</div> </div>
<p class="help-block">Backlink protection via anonymizer service, must end in "?".</p> <p class="help-block">Backlink protection via anonymizer service, must end in "?".</p>
</div> </div>
<div class="form-group"> <div class="form-group advanced-setting">
<label>Flush Temporary Sessions</label> <label>Flush Temporary Sessions</label>
<p class="help-block"> <p class="help-block">
Attempt to fix history logging by flushing out all of the temporary sessions in the database.<br /> Attempt to fix history logging by flushing out all of the temporary sessions in the database.<br />
@ -975,11 +941,11 @@
</div> </div>
% if plexpy.INSTALL_TYPE == 'git': % if plexpy.INSTALL_TYPE == 'git':
<div class="padded-header"> <div class="padded-header advanced-setting">
<h3>Git Settings</h3> <h3>Git Settings</h3>
</div> </div>
<div class="form-group"> <div class="form-group advanced-setting">
<label for="git_branch">Git Remote / Branch</label> <label for="git_branch">Git Remote / Branch</label>
<div class="row"> <div class="row">
<div class="col-md-6"> <div class="col-md-6">
@ -1002,7 +968,7 @@
</div> </div>
<p class="help-block">The git tracking remote and branch (default "origin/master"). Select to switch the git branch (requires restart).</p> <p class="help-block">The git tracking remote and branch (default "origin/master"). Select to switch the git branch (requires restart).</p>
</div> </div>
<div class="form-group"> <div class="form-group advanced-setting">
<label for="git_path">Git Path</label> <label for="git_path">Git Path</label>
<div class="row"> <div class="row">
<div class="col-md-4"> <div class="col-md-4">
@ -1658,6 +1624,15 @@ $(document).ready(function() {
} }
} }
function advancedSettings() {
var advanced_button = $('#menu_link_show_advanced_settings');
if (advanced_button.hasClass('active')) {
$('.advanced-setting').show();
} else {
$('.advanced-setting').hide();
}
}
$('.save-button').click(function() { $('.save-button').click(function() {
preSaveChecks(function () { saveSettings() }); preSaveChecks(function () { saveSettings() });
}); });
@ -1697,6 +1672,22 @@ $(document).ready(function() {
window.location.href = 'restart'; window.location.href = 'restart';
}); });
$('#menu_link_show_advanced_settings').click(function() {
$(this).toggleClass('active');
if ($(this).hasClass('active')) {
$(this).html('<i class="fa fa-wrench"></i> Hide Advanced');
$('#show_advanced_settings').val(1);
} else {
$(this).html('<i class="fa fa-wrench"></i> Show Advanced');
$('#show_advanced_settings').val(0);
}
if (document.location.hash == '#tab_tabs-extra_settings') {
$('.nav-settings a[href=#tabs-help_info]').tab('show');
}
advancedSettings()
});
advancedSettings();
getConfigurationTable(); getConfigurationTable();
getSchedulerTable(); getSchedulerTable();
getNotifiersTable(); getNotifiersTable();

View file

@ -480,6 +480,7 @@ _CONFIG_DEFINITIONS = {
'REFRESH_USERS_ON_STARTUP': (int, 'Monitoring', 1), 'REFRESH_USERS_ON_STARTUP': (int, 'Monitoring', 1),
'REMOTE_ACCESS_PING_THRESHOLD': (int, 'Advanced', 3), 'REMOTE_ACCESS_PING_THRESHOLD': (int, 'Advanced', 3),
'SESSION_DB_WRITE_ATTEMPTS': (int, 'Advanced', 5), 'SESSION_DB_WRITE_ATTEMPTS': (int, 'Advanced', 5),
'SHOW_ADVANCED_SETTINGS': (int, 'General', 0),
'SLACK_ENABLED': (int, 'Slack', 0), 'SLACK_ENABLED': (int, 'Slack', 0),
'SLACK_HOOK': (str, 'Slack', ''), 'SLACK_HOOK': (str, 'Slack', ''),
'SLACK_CHANNEL': (str, 'Slack', ''), 'SLACK_CHANNEL': (str, 'Slack', ''),

View file

@ -2612,7 +2612,8 @@ class WebInterface(object):
"tv_watched_percent": plexpy.CONFIG.TV_WATCHED_PERCENT, "tv_watched_percent": plexpy.CONFIG.TV_WATCHED_PERCENT,
"music_watched_percent": plexpy.CONFIG.MUSIC_WATCHED_PERCENT, "music_watched_percent": plexpy.CONFIG.MUSIC_WATCHED_PERCENT,
"themoviedb_lookup": checked(plexpy.CONFIG.THEMOVIEDB_LOOKUP), "themoviedb_lookup": checked(plexpy.CONFIG.THEMOVIEDB_LOOKUP),
"tvmaze_lookup": checked(plexpy.CONFIG.TVMAZE_LOOKUP) "tvmaze_lookup": checked(plexpy.CONFIG.TVMAZE_LOOKUP),
"show_advanced_settings": plexpy.CONFIG.SHOW_ADVANCED_SETTINGS
} }
return serve_template(templatename="settings.html", title="Settings", config=config, kwargs=kwargs) return serve_template(templatename="settings.html", title="Settings", config=config, kwargs=kwargs)