Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Small tweaks to the server settings #360

Merged
merged 8 commits into from Jun 18, 2019
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
2 changes: 1 addition & 1 deletion src/serversecurity.html → src/apikeys.html
@@ -1,4 +1,4 @@
<div id="serverSecurityPage" data-role="page" class="page type-interior advancedConfigurationPage withTabs fullWidthContent">
<div id="apiKeysPage" data-role="page" class="page type-interior advancedConfigurationPage fullWidthContent">
<div>
<div class="content-primary">
<div class="detailSectionHeader">
Expand Down
Expand Up @@ -12,7 +12,7 @@ <h2 class="sectionTitle">
<span>${LabelPlayDefaultAudioTrack}</span>
</label>
</div>

<div class="qualitySections hide">
<div class="verticalSection verticalSection-extrabottompadding videoQualitySection hide">
<h2 class="sectionTitle">
Expand Down Expand Up @@ -41,7 +41,7 @@ <h2>

<div class="verticalSection verticalSection-extrabottompadding">
<h2 class="sectionTitle">
${Advanced}
${TabAdvanced}
</h2>
<div class="checkboxContainer checkboxContainer-withDescription cinemaModeOptions">
<label>
Expand Down
43 changes: 20 additions & 23 deletions src/controllers/serversecurity.js → src/controllers/apikeys.js
Expand Up @@ -4,14 +4,15 @@ define(["datetime", "loading", "libraryMenu", "dom", "globalize", "emby-button"]
function revoke(page, key) {
require(["confirm"], function(confirm) {
confirm(globalize.translate("MessageConfirmRevokeApiKey"), globalize.translate("HeaderConfirmRevokeApiKey")).then(function() {
loading.show(), ApiClient.ajax({
loading.show();
ApiClient.ajax({
type: "DELETE",
url: ApiClient.getUrl("Auth/Keys/" + key)
}).then(function() {
loadData(page)
})
})
})
loadData(page);
});
});
});
}

function renderKeys(page, keys) {
Expand All @@ -21,13 +22,15 @@ define(["datetime", "loading", "libraryMenu", "dom", "globalize", "emby-button"]
var date = datetime.parseISO8601Date(item.DateCreated, !0);
return html += datetime.toLocaleDateString(date) + " " + datetime.getDisplayTime(date), html += "</td>", html += "</tr>"
}).join("");
page.querySelector(".resultBody").innerHTML = rows, loading.hide()
page.querySelector(".resultBody").innerHTML = rows;
loading.hide();
}

function loadData(page) {
loading.show(), ApiClient.getJSON(ApiClient.getUrl("Auth/Keys")).then(function(result) {
renderKeys(page, result.Items)
})
loading.show();
ApiClient.getJSON(ApiClient.getUrl("Auth/Keys")).then(function(result) {
renderKeys(page, result.Items);
});
}

function showNewKeyPrompt(page) {
Expand All @@ -49,24 +52,18 @@ define(["datetime", "loading", "libraryMenu", "dom", "globalize", "emby-button"]
})
}

function getTabs() {
return [{
href: "dashboardhosting.html",
name: globalize.translate("TabHosting")
}, {
href: "serversecurity.html",
name: globalize.translate("TabSecurity")
}]
}
pageIdOn("pageinit", "serverSecurityPage", function() {
pageIdOn("pageinit", "apiKeysPage", function() {
var page = this;
page.querySelector(".btnNewKey").addEventListener("click", function() {
showNewKeyPrompt(page)
}), page.querySelector(".tblApiKeys").addEventListener("click", function(e) {
});
page.querySelector(".tblApiKeys").addEventListener("click", function(e) {
var btnRevoke = dom.parentWithClass(e.target, "btnRevoke");
btnRevoke && revoke(page, btnRevoke.getAttribute("data-token"))
})
}), pageIdOn("pagebeforeshow", "serverSecurityPage", function() {
libraryMenu.setTabs("adminadvanced", 1, getTabs), loadData(this)
});
});

pageIdOn("pagebeforeshow", "apiKeysPage", function() {
loadData(this);
})
});
55 changes: 44 additions & 11 deletions src/controllers/librarydisplay.js
Expand Up @@ -14,25 +14,58 @@ define(["globalize", "loading", "libraryMenu", "emby-checkbox", "emby-button", "
}, {
href: "metadatanfo.html",
name: Globalize.translate("TabNfoSettings")
}, {
href: "librarysettings.html",
name: Globalize.translate("TabAdvanced")
}]
}

return function(view, params) {
function loadData() {
ApiClient.getServerConfiguration().then(function(config) {
view.querySelector(".chkFolderView").checked = config.EnableFolderView, view.querySelector(".chkGroupMoviesIntoCollections").checked = config.EnableGroupingIntoCollections, view.querySelector(".chkDisplaySpecialsWithinSeasons").checked = config.DisplaySpecialsWithinSeasons, view.querySelector(".chkExternalContentInSuggestions").checked = config.EnableExternalContentInSuggestions
})
view.querySelector(".chkFolderView").checked = config.EnableFolderView;
view.querySelector(".chkGroupMoviesIntoCollections").checked = config.EnableGroupingIntoCollections;
view.querySelector(".chkDisplaySpecialsWithinSeasons").checked = config.DisplaySpecialsWithinSeasons;
view.querySelector(".chkExternalContentInSuggestions").checked = config.EnableExternalContentInSuggestions;
view.querySelector("#chkSaveMetadataHidden").checked = config.SaveMetadataHidden;
});
ApiClient.getNamedConfiguration("metadata").then(function(metadata) {
loadMetadataConfig(this, metadata)
});
}

function loadMetadataConfig(page, config) {
$("#selectDateAdded", page).val(config.UseFileCreationTimeForDateAdded ? "1" : "0");
}

view.querySelector("form").addEventListener("submit", function(e) {
loading.show();
var form = this;
return ApiClient.getServerConfiguration().then(function(config) {
config.EnableFolderView = form.querySelector(".chkFolderView").checked, config.EnableGroupingIntoCollections = form.querySelector(".chkGroupMoviesIntoCollections").checked, config.DisplaySpecialsWithinSeasons = form.querySelector(".chkDisplaySpecialsWithinSeasons").checked, config.EnableExternalContentInSuggestions = form.querySelector(".chkExternalContentInSuggestions").checked, ApiClient.updateServerConfiguration(config).then(Dashboard.processServerConfigurationUpdateResult)
}), e.preventDefault(), !1
}), view.addEventListener("viewshow", function() {
libraryMenu.setTabs("librarysetup", 1, getTabs), loadData()
})
ApiClient.getServerConfiguration().then(function(config) {
config.EnableFolderView = form.querySelector(".chkFolderView").checked;
config.EnableGroupingIntoCollections = form.querySelector(".chkGroupMoviesIntoCollections").checked;
config.DisplaySpecialsWithinSeasons = form.querySelector(".chkDisplaySpecialsWithinSeasons").checked;
config.EnableExternalContentInSuggestions = form.querySelector(".chkExternalContentInSuggestions").checked;
config.SaveMetadataHidden = form.querySelector("#chkSaveMetadataHidden").checked;
ApiClient.updateServerConfiguration(config).then(Dashboard.processServerConfigurationUpdateResult);
});
ApiClient.getNamedConfiguration("metadata").then(function(config) {
config.UseFileCreationTimeForDateAdded = "1" === $("#selectDateAdded", form).val();
ApiClient.updateNamedConfiguration("metadata", config);
});

e.preventDefault();
loading.hide();
return false;
});

view.addEventListener("viewshow", function() {
libraryMenu.setTabs("librarysetup", 1, getTabs);
loadData();
ApiClient.getSystemInfo().then(function(info) {
if ("Windows" === info.OperatingSystem) {
this.querySelector(".fldSaveMetadataHidden").classList.remove("hide");
} else {
this.querySelector(".fldSaveMetadataHidden").classList.add("hide");
}
});
});
}
});
74 changes: 0 additions & 74 deletions src/controllers/librarysettings.js

This file was deleted.

4 changes: 1 addition & 3 deletions src/controllers/medialibrarypage.js
Expand Up @@ -334,11 +334,9 @@ define(["jQuery", "apphost", "scripts/taskbutton", "loading", "libraryMenu", "gl
}, {
href: "metadatanfo.html",
name: globalize.translate("TabNfoSettings")
}, {
href: "librarysettings.html",
name: globalize.translate("TabAdvanced")
}]
}

window.WizardLibraryPage = {
next: function() {
Dashboard.navigate("wizardsettings.html")
Expand Down
4 changes: 1 addition & 3 deletions src/controllers/metadataimagespage.js
Expand Up @@ -53,11 +53,9 @@ define(["jQuery", "dom", "loading", "libraryMenu", "listViewStyle"], function($,
}, {
href: "metadatanfo.html",
name: Globalize.translate("TabNfoSettings")
}, {
href: "librarysettings.html",
name: Globalize.translate("TabAdvanced")
}]
}

$(document).on("pageinit", "#metadataImagesConfigurationPage", function() {
$(".metadataImagesConfigurationForm").off("submit", onSubmit).on("submit", onSubmit)
}).on("pageshow", "#metadataImagesConfigurationPage", function() {
Expand Down
4 changes: 1 addition & 3 deletions src/controllers/metadatanfo.js
Expand Up @@ -40,11 +40,9 @@ define(["jQuery", "loading", "libraryMenu"], function($, loading, libraryMenu) {
}, {
href: "metadatanfo.html",
name: Globalize.translate("TabNfoSettings")
}, {
href: "librarysettings.html",
name: Globalize.translate("TabAdvanced")
}]
}

var metadataKey = "xbmcmetadata";
$(document).on("pageinit", "#metadataNfoPage", function() {
$(".metadataNfoForm").off("submit", onSubmit).on("submit", onSubmit)
Expand Down
Expand Up @@ -61,15 +61,6 @@ define(["loading", "libraryMenu", "globalize", "emby-checkbox", "emby-select"],
}).then(callback) : callback()
}

function getTabs() {
return [{
href: "dashboardhosting.html",
name: globalize.translate("TabHosting")
}, {
href: "serversecurity.html",
name: globalize.translate("TabSecurity")
}]
}
return function(view, params) {
function loadPage(page, config) {
page.querySelector("#txtPortNumber").value = config.HttpServerPortNumber, page.querySelector("#txtPublicPort").value = config.PublicPort, page.querySelector("#txtPublicHttpsPort").value = config.PublicHttpsPort, page.querySelector("#txtLocalAddress").value = config.LocalNetworkAddresses[0] || "", page.querySelector("#txtLanNetworks").value = (config.LocalNetworkSubnets || []).join(", "), page.querySelector("#txtExternalAddressFilter").value = (config.RemoteIPFilter || []).join(", "), page.querySelector("#selectExternalAddressFilterMode").value = config.IsRemoteIPFilterBlacklist ? "blacklist" : "whitelist", page.querySelector("#chkRemoteAccess").checked = null == config.EnableRemoteAccess || config.EnableRemoteAccess;
Expand All @@ -96,10 +87,13 @@ define(["loading", "libraryMenu", "globalize", "emby-checkbox", "emby-select"],
header: globalize.translate("HeaderSelectCertificatePath")
})
})
}), view.querySelector(".dashboardHostingForm").addEventListener("submit", onSubmit), view.querySelector("#txtCertificatePath").addEventListener("change", onCertPathChange), view.addEventListener("viewshow", function(e) {
libraryMenu.setTabs("adminadvanced", 0, getTabs), loading.show(), ApiClient.getServerConfiguration().then(function(config) {
loadPage(view, config)
})
})
});

view.querySelector(".dashboardHostingForm").addEventListener("submit", onSubmit), view.querySelector("#txtCertificatePath").addEventListener("change", onCertPathChange), view.addEventListener("viewshow", function(e) {
loading.show();
ApiClient.getServerConfiguration().then(function(config) {
loadPage(view, config);
});
});
}
});
21 changes: 19 additions & 2 deletions src/librarydisplay.html
@@ -1,19 +1,28 @@
<div id="libraryDisplayPage" data-role="page" class="page type-interior librarySectionPage withTabs">

<div>
<div class="content-primary">
<form>
<div class="selectContainer">
<select is="emby-select" id="selectDateAdded" data-mini="true" label="${LabelDateAddedBehavior}">
<option value="0">${OptionDateAddedImportTime}</option>
<option value="1">${OptionDateAddedFileTime}</option>
</select>
<div class="fieldDescription">${LabelDateAddedBehaviorHelp}</div>
</div>

<div class="checkboxContainer checkboxContainer-withDescription">
<label>
<input type="checkbox" is="emby-checkbox" class="chkFolderView" />
<span>${OptionDisplayFolderView}</span>
</label>
<div class="fieldDescription checkboxFieldDescription">${OptionDisplayFolderViewHelp}</div>
</div>

<label class="checkboxContainer">
<input type="checkbox" is="emby-checkbox" class="chkDisplaySpecialsWithinSeasons"/>
<span>${LabelDisplaySpecialsWithinSeasons}</span>
</label>

<div class="checkboxContainer checkboxContainer-withDescription">
<label>
<input type="checkbox" is="emby-checkbox" class="chkGroupMoviesIntoCollections" />
Expand All @@ -29,11 +38,19 @@
</label>
<div class="fieldDescription checkboxFieldDescription">${OptionEnableExternalContentInSuggestionsHelp}</div>
</div>

<div class="checkboxContainer checkboxContainer-withDescription fldSaveMetadataHidden hide">
<label>
<input type="checkbox" is="emby-checkbox" class="chkAirDays" id="chkSaveMetadataHidden" data-filter="Sunday" />
<span>${OptionSaveMetadataAsHidden}</span>
</label>
<div class="fieldDescription checkboxFieldDescription">${OptionSaveMetadataAsHiddenHelp}</div>
</div>

<br />
<button is="emby-button" type="submit" class="raised button-submit block">
<span>${ButtonSave}</span>
</button>

</form>
</div>
</div>
Expand Down