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

rework hosting options

This commit is contained in:
Luke Pulverenti 2015-01-18 23:29:57 -05:00
parent 1509f3805d
commit 0f142fff89
10 changed files with 222 additions and 167 deletions

View file

@ -8,10 +8,7 @@
Dashboard.setPageTitle(Dashboard.lastSystemInfo.ServerName);
}
ApiClient.getSystemInfo().done(function (systemInfo) {
Dashboard.setPageTitle(systemInfo.ServerName);
});
refreshPageTitle(page);
$('#txtServerName', page).val(config.ServerName || '');
@ -21,21 +18,19 @@
})).val(config.UICulture).selectmenu('refresh');
$('#txtPortNumber', page).val(config.HttpServerPortNumber);
$('#txtPublicPort', page).val(config.PublicPort);
$('#chkUseHttps', page).checked(config.UseHttps).checkboxradio('refresh');
$('#txtHttpsPort', page).val(config.HttpsPortNumber);
$('#txtCertificatePath', page).val(config.CertificatePath);
$('#txtDdns', page).val(config.WanDdns || '');
$('#chkEnableUpnp', page).checked(config.EnableUPnP).checkboxradio('refresh');
$('#txtCachePath', page).val(config.CachePath || '');
Dashboard.hideLoadingMsg();
}
function refreshPageTitle(page) {
ApiClient.getSystemInfo().done(function (systemInfo) {
Dashboard.setPageTitle(systemInfo.ServerName);
});
}
$(document).on('pageshow', "#dashboardGeneralPage", function () {
Dashboard.showLoadingMsg();
@ -88,27 +83,19 @@
Dashboard.showLoadingMsg();
var form = this;
var page = $(form).parents('.page');
ApiClient.getServerConfiguration().done(function (config) {
config.ServerName = $('#txtServerName', form).val();
config.UICulture = $('#selectLocalizationLanguage', form).val();
config.HttpServerPortNumber = $('#txtPortNumber', form).val();
config.PublicPort = $('#txtPublicPort', form).val();
config.UseHttps = $('#chkUseHttps', form).checked();
config.HttpsPortNumber = $('#txtHttpsPort', form).val();
config.CertificatePath = $('#txtCertificatePath', form).val();
config.EnableUPnP = $('#chkEnableUpnp', form).checked();
config.WanDdns = $('#txtDdns', form).val();
config.CachePath = $('#txtCachePath', form).val();
ApiClient.updateServerConfiguration(config).done(function () {
refreshPageTitle(page);
ApiClient.getNamedConfiguration(brandingConfigKey).done(function (brandingConfig) {
brandingConfig.LoginDisclaimer = $('#txtLoginDisclaimer', form).val();

View file

@ -0,0 +1,62 @@
(function ($, document, window) {
function loadPage(page, config) {
$('#txtPortNumber', page).val(config.HttpServerPortNumber);
$('#txtPublicPort', page).val(config.PublicPort);
$('#chkEnableHttps', page).checked(config.EnableHttps).checkboxradio('refresh');
$('#txtHttpsPort', page).val(config.HttpsPortNumber);
$('#txtCertificatePath', page).val(config.CertificatePath);
$('#txtDdns', page).val(config.WanDdns || '');
$('#chkEnableUpnp', page).checked(config.EnableUPnP).checkboxradio('refresh');
Dashboard.hideLoadingMsg();
}
$(document).on('pageshow', "#dashboardHostingPage", function () {
Dashboard.showLoadingMsg();
var page = this;
ApiClient.getServerConfiguration().done(function (config) {
loadPage(page, config);
});
}).on('pageinit', "#dashboardHostingPage", function () {
var page = this;
});
window.DashboardHostingPage = {
onSubmit: function () {
Dashboard.showLoadingMsg();
var form = this;
ApiClient.getServerConfiguration().done(function (config) {
config.HttpServerPortNumber = $('#txtPortNumber', form).val();
config.PublicPort = $('#txtPublicPort', form).val();
config.EnableHttps = $('#chkEnableHttps', form).checked();
config.HttpsPortNumber = $('#txtHttpsPort', form).val();
config.CertificatePath = $('#txtCertificatePath', form).val();
config.EnableUPnP = $('#chkEnableUpnp', form).checked();
config.WanDdns = $('#txtDdns', form).val();
ApiClient.updateServerConfiguration(config).done(Dashboard.processServerConfigurationUpdateResult);
});
// Disable default form submission
return false;
}
};
})(jQuery, document, window);

View file

@ -82,18 +82,12 @@
$('#appVersionNumber', page).html(Globalize.translate('LabelVersionNumber').replace('{0}', systemInfo.Version));
var httpPort = systemInfo.HttpServerPortNumber;
var portHtml = Globalize.translate('LabelRunningOnPort', '<b>' + httpPort + '</b>');
if (systemInfo.UseHttps) {
var httpsPort = systemInfo.HttpsPortNumber;
portHtml += '<br>';
portHtml += Globalize.translate('LabelRunningOnHttpsPort', '<b>' + httpsPort + '</b>');
if (systemInfo.EnableHttps) {
$('#ports', page).html(Globalize.translate('LabelRunningOnPorts', '<b>' + systemInfo.HttpServerPortNumber + '</b>', '<b>' + systemInfo.HttpsPortNumber + '</b>'));
} else {
$('#ports', page).html(Globalize.translate('LabelRunningOnPort', '<b>' + systemInfo.HttpServerPortNumber + '</b>'));
}
$('#ports', page).html(portHtml);
if (systemInfo.CanSelfRestart) {
$('.btnRestartContainer', page).removeClass('hide');
} else {
@ -773,11 +767,20 @@
renderUrls: function (page, systemInfo) {
if (systemInfo.LocalAddress) {
var localAccessHtml = Globalize.translate('LabelLocalAccessUrl', '<a href="' + systemInfo.LocalAddress + '" target="_blank">' + systemInfo.LocalAddress + '</a>');
$('.localUrl', page).html(localAccessHtml).show().trigger('create');
} else {
$('.externalUrl', page).hide();
}
if (systemInfo.WanAddress) {
var externalUrl = systemInfo.WanAddress + ApiClient.apiPrefix();
var externalUrl = systemInfo.WanAddress;
var remoteAccessHtml = Globalize.translate('LabelRemoteAccessUrl').replace('{0}', '<a href="' + externalUrl + '" target="_blank">' + externalUrl + '</a>');
var remoteAccessHtml = Globalize.translate('LabelRemoteAccessUrl', '<a href="' + externalUrl + '" target="_blank">' + externalUrl + '</a>');
$('.externalUrl', page).html(remoteAccessHtml).show().trigger('create');
} else {

View file

@ -668,6 +668,7 @@ var Dashboard = {
var items = Dashboard.getToolsMenuLinks(page);
var i, length, item;
var menuHtml = '';
for (i = 0, length = items.length; i < length; i++) {
@ -678,7 +679,7 @@ var Dashboard = {
}
if (item.divider) {
html += "<div class='sidebarDivider ui-bar-inherit'></div>";
menuHtml += "<div class='sidebarDivider ui-bar-inherit'></div>";
}
if (item.href) {
@ -686,26 +687,27 @@ var Dashboard = {
var style = item.color ? ' style="color:' + item.color + '"' : '';
if (item.selected) {
html += '<a class="selectedSidebarLink" href="' + item.href + '">';
menuHtml += '<a class="sidebarLink selectedSidebarLink" href="' + item.href + '">';
} else {
html += '<a href="' + item.href + '">';
menuHtml += '<a class="sidebarLink" href="' + item.href + '">';
}
html += '<span class="fa ' + item.icon + ' sidebarLinkIcon"' + style + '></span>';
menuHtml += '<span class="fa ' + item.icon + ' sidebarLinkIcon"' + style + '></span>';
html += '<span class="sidebarLinkText">';
html += item.name;
html += '</span>';
html += '</a>';
menuHtml += '<span class="sidebarLinkText">';
menuHtml += item.name;
menuHtml += '</span>';
menuHtml += '</a>';
} else {
html += '<div class="sidebarHeader">';
html += item.name;
html += '</div>';
menuHtml += '<div class="sidebarHeader">';
menuHtml += item.name;
menuHtml += '</div>';
}
}
// collapsible
html += menuHtml;
// sidebarLinks
html += '</div>';
// content-secondary
@ -715,29 +717,10 @@ var Dashboard = {
html += '<p class="libraryPanelHeader" style="margin: 15px 0 15px 15px;"><a href="index.html" class="imageLink"><img src="css/images/mblogoicon.png" /><span style="color:#333;">MEDIA</span><span class="mediaBrowserAccent">BROWSER</span></a></p>';
for (i = 0, length = items.length; i < length; i++) {
item = items[i];
if (!user.Policy.IsAdministrator) {
break;
}
if (item.divider) {
html += "<div class='dashboardPanelDivider'></div>";
}
if (item.href) {
if (item.selected) {
html += '<a class="selectedDashboardPanelLink dashboardPanelLink" href="' + item.href + '">' + item.name + '</a>';
} else {
html += '<a class="dashboardPanelLink" href="' + item.href + '">' + item.name + '</a>';
}
}
}
html += '<div class="sidebarLinks">';
html += menuHtml;
// sidebarLinks
html += '</div>';
html += '</div>';
$('.content-primary', page).before(html);
@ -1483,6 +1466,11 @@ $(document).on('pagecreate', ".page", function () {
var page = $(this);
var current = page.data('theme');
if (current) {
return;
}
var newTheme;
if (page.hasClass('libraryPage')) {
@ -1491,7 +1479,7 @@ $(document).on('pagecreate', ".page", function () {
newTheme = 'a';
}
var current = page.page("option", "theme");
current = page.page("option", "theme");
if (current && current != newTheme) {
page.page("option", "theme", newTheme);