From 17fb508d048f746d2ac5a68a4f647c1856a2a167 Mon Sep 17 00:00:00 2001 From: cvium Date: Thu, 10 Sep 2020 11:10:24 +0200 Subject: [PATCH] Add known proxies config option --- src/controllers/dashboard/networking.html | 5 +++++ src/controllers/dashboard/networking.js | 6 ++++++ src/strings/en-us.json | 2 ++ 3 files changed, 13 insertions(+) diff --git a/src/controllers/dashboard/networking.html b/src/controllers/dashboard/networking.html index 899d0976b7..9fb08aa661 100644 --- a/src/controllers/dashboard/networking.html +++ b/src/controllers/dashboard/networking.html @@ -43,6 +43,11 @@
${LanNetworksHelp}
+ +
+ +
${KnownProxiesHelp}
+
diff --git a/src/controllers/dashboard/networking.js b/src/controllers/dashboard/networking.js index a7f3076056..7fc161a90b 100644 --- a/src/controllers/dashboard/networking.js +++ b/src/controllers/dashboard/networking.js @@ -30,6 +30,11 @@ import 'emby-select'; }).filter(function (s) { return s.length > 0; }); + config.KnownProxies = form.querySelector('#txtKnownProxies').value.split(',').map(function (s) { + return s.trim(); + }).filter(function (s) { + return s.length > 0; + }); config.IsRemoteIPFilterBlacklist = form.querySelector('#selectExternalAddressFilterMode').value === 'blacklist'; config.PublicPort = form.querySelector('#txtPublicPort').value; config.PublicHttpsPort = form.querySelector('#txtPublicHttpsPort').value; @@ -108,6 +113,7 @@ import 'emby-select'; page.querySelector('#txtPublicHttpsPort').value = config.PublicHttpsPort; page.querySelector('#txtLocalAddress').value = config.LocalNetworkAddresses[0] || ''; page.querySelector('#txtLanNetworks').value = (config.LocalNetworkSubnets || []).join(', '); + page.querySelector('#txtKnownProxies').value = (config.KnownProxies || []).join(', '); page.querySelector('#txtExternalAddressFilter').value = (config.RemoteIPFilter || []).join(', '); page.querySelector('#selectExternalAddressFilterMode').value = config.IsRemoteIPFilterBlacklist ? 'blacklist' : 'whitelist'; page.querySelector('#chkRemoteAccess').checked = config.EnableRemoteAccess == null || config.EnableRemoteAccess; diff --git a/src/strings/en-us.json b/src/strings/en-us.json index e39199c56f..0f61286e92 100644 --- a/src/strings/en-us.json +++ b/src/strings/en-us.json @@ -451,6 +451,7 @@ "ItemCount": "{0} items", "Items": "Items", "Kids": "Kids", + "KnownProxiesHelp": "Comma separated list of IP addresses of known proxies used when connecting to your Jellyfin instance. This is required to make proper use of X-Forwarded-For headers. Requires a reboot after saving.", "Label3DFormat": "3D format:", "LabelAbortedByServerShutdown": "(Aborted by server shutdown)", "LabelAccessDay": "Day of week:", @@ -598,6 +599,7 @@ "LabelInNetworkSignInWithEasyPasswordHelp": "Use the easy pin code to sign in to clients within your local network. Your regular password will only be needed away from home. If the pin code is left blank, you won't need a password within your home network.", "LabelInternetQuality": "Internet quality:", "LabelKeepUpTo": "Keep up to:", + "LabelKnownProxies": "Known proxies:", "LabelKidsCategories": "Children's categories:", "LabelKodiMetadataDateFormat": "Release date format:", "LabelKodiMetadataDateFormatHelp": "All dates within NFO files will be parsed using this format.",