1
0
Fork 0
mirror of https://github.com/jellyfin/jellyfin-web synced 2025-03-30 19:56:21 +00:00

added advanced server settings tab

This commit is contained in:
Luke Pulverenti 2014-01-11 14:21:49 -05:00
parent bcf0a737d2
commit fa461c249c
5 changed files with 112 additions and 24 deletions

View file

@ -11,6 +11,7 @@
<div data-role="controlgroup" data-type="horizontal" class="localnav" data-mini="true">
<a href="#" data-role="button" class="ui-btn-active">General</a>
<a href="advancedserversettings.html" data-role="button">Server</a>
<a href="encodingsettings.html" data-role="button">Transcoding</a>
</div>
<form id="advancedConfigurationForm">
@ -34,14 +35,6 @@
Dev builds are the bleeding edge. Released often, these build have not been tested. The application may crash and entire features may not work at all.
</div>
</li>
<li>
<label for="txtPortNumber">Http server port number: </label>
<input type="number" id="txtPortNumber" name="txtPortNumber" pattern="[0-9]*" required="required" min="1" data-mini="true" />
</li>
<li id="fldWebSocketPortNumber" style="display: none;">
<label for="txtWebSocketPortNumber">Web socket port number: </label>
<input type="number" id="txtWebSocketPortNumber" name="txtWebSocketPortNumber" pattern="[0-9]*" required="required" min="1" data-mini="true" />
</li>
<li>
<input type="checkbox" id="chkDebugLog" name="chkDebugLog" data-mini="true" />
<label for="chkDebugLog">Enable debug logging </label>

View file

@ -0,0 +1,49 @@
<!DOCTYPE html>
<html>
<head>
<title>Advanced</title>
</head>
<body>
<div id="advancedServerSettingsPage" data-role="page" class="page type-interior advancedConfigurationPage">
<div data-role="content">
<div class="content-primary">
<div data-role="controlgroup" data-type="horizontal" class="localnav" data-mini="true">
<a href="advanced.html" data-role="button">General</a>
<a href="#" data-role="button" class="ui-btn-active">Server</a>
<a href="encodingsettings.html" data-role="button">Transcoding</a>
</div>
<form class="advancedServerSettingsForm">
<ul data-role="listview" class="ulForm">
<li>
<label for="txtPortNumber">Http server port number: </label>
<input type="number" id="txtPortNumber" name="txtPortNumber" pattern="[0-9]*" required="required" min="1" data-mini="true" />
</li>
<li id="fldWebSocketPortNumber" style="display: none;">
<label for="txtWebSocketPortNumber">Web socket port number: </label>
<input type="number" id="txtWebSocketPortNumber" name="txtWebSocketPortNumber" pattern="[0-9]*" required="required" min="1" data-mini="true" />
</li>
</ul>
<ul data-role="listview" class="ulForm">
<li>
<button type="submit" data-theme="b" data-icon="check" data-mini="true">
Save
</button>
<button type="button" onclick="Dashboard.navigate('dashboard.html');" data-icon="delete" data-mini="true">
Cancel
</button>
</li>
</ul>
</form>
</div>
</div>
<script type="text/javascript">
$('.advancedServerSettingsForm').off('submit', AdvancedServerSettingsPage.onSubmit).on('submit', AdvancedServerSettingsPage.onSubmit);
</script>
</div>
</body>
</html>

View file

@ -11,6 +11,7 @@
<div data-role="controlgroup" data-type="horizontal" class="localnav" data-mini="true">
<a href="advanced.html" data-role="button">General</a>
<a href="advancedserversettings.html" data-role="button">Server</a>
<a href="#" data-role="button" class="ui-btn-active">Transcoding</a>
</div>
@ -51,17 +52,17 @@
<input type="checkbox" id="chkEnableCustomTranscodingTempPath" name="chkEnableCustomTranscodingTempPath" data-mini="true" />
<label for="chkEnableCustomTranscodingTempPath">Use custom transcoding temporary path</label>
<div class="fieldDescription">
This folder contains server cache files, such as images.
This folder contains working files used by the media browser transcoder.
</div>
</li>
<li id="fldEnterTranscodingTempPath" style="display: none;">
<label for="txtTranscodingTempPath">Server cache path: </label>
<label for="txtTranscodingTempPath">Transcoding temporary path: </label>
<div style="display: inline-block; width: 92%;">
<input type="text" id="txtTranscodingTempPath" name="txtTranscodingTempPath" data-mini="true" />
</div>
<button id="btnSelectTranscodingTempPath" type="button" data-icon="search" data-iconpos="notext" data-inline="true">Select Directory</button>
<div class="fieldDescription">
Supply a custom cache path. Media Browser Server must have write access to this folder. The location of this folder will directly impact server performance and should ideally be placed on a solid state drive.
Supply a custom transcoding temporary path. Media Browser Server must have write access to this folder.
</div>
</li>
<li>

View file

@ -16,17 +16,7 @@
$('#fldRunAtStartup', page).hide();
}
if (systemInfo.SupportsNativeWebSocket) {
$('#fldWebSocketPortNumber', page).hide();
} else {
$('#fldWebSocketPortNumber', page).show();
}
$('#selectAutomaticUpdateLevel', page).val(config.SystemUpdateLevel).selectmenu('refresh').trigger('change');
$('#txtWebSocketPortNumber', page).val(config.LegacyWebSocketPortNumber);
$('#txtPortNumber', page).val(config.HttpServerPortNumber);
$('#chkDebugLog', page).checked(config.EnableDebugLevelLogging).checkboxradio("refresh");
$('#chkRunAtStartup', page).checked(config.RunAtStartup).checkboxradio("refresh");
@ -136,9 +126,6 @@
config.CachePath = '';
}
config.LegacyWebSocketPortNumber = $('#txtWebSocketPortNumber', form).val();
config.HttpServerPortNumber = $('#txtPortNumber', form).val();
config.EnableDebugLevelLogging = $('#chkDebugLog', form).checked();
config.RunAtStartup = $('#chkRunAtStartup', form).checked();

View file

@ -0,0 +1,58 @@
(function ($, document, window) {
function loadPage(page, config, systemInfo) {
if (systemInfo.SupportsNativeWebSocket) {
$('#fldWebSocketPortNumber', page).hide();
} else {
$('#fldWebSocketPortNumber', page).show();
}
$('#txtWebSocketPortNumber', page).val(config.LegacyWebSocketPortNumber);
$('#txtPortNumber', page).val(config.HttpServerPortNumber);
Dashboard.hideLoadingMsg();
}
$(document).on('pageshow', "#advancedServerSettingsPage", function () {
Dashboard.showLoadingMsg();
var page = this;
var promise1 = ApiClient.getServerConfiguration();
var promise2 = ApiClient.getSystemInfo();
$.when(promise1, promise2).done(function (response1, response2) {
loadPage(page, response1[0], response2[0]);
});
});
window.AdvancedServerSettingsPage = {
onSubmit: function () {
Dashboard.showLoadingMsg();
var form = this;
ApiClient.getServerConfiguration().done(function (config) {
config.LegacyWebSocketPortNumber = $('#txtWebSocketPortNumber', form).val();
config.HttpServerPortNumber = $('#txtPortNumber', form).val();
ApiClient.updateServerConfiguration(config).done(Dashboard.processServerConfigurationUpdateResult);
});
// Disable default form submission
return false;
}
};
})(jQuery, document, window);