mirror of
https://github.com/fallenbagel/jellyseerr.git
synced 2026-01-01 04:08:45 -05:00
fix: only show mediaserver settings for current active mediaserver
This commit is contained in:
@@ -1,9 +1,11 @@
|
|||||||
|
import getConfig from 'next/config';
|
||||||
import React from 'react';
|
import React from 'react';
|
||||||
import { defineMessages, useIntl } from 'react-intl';
|
import { defineMessages, useIntl } from 'react-intl';
|
||||||
|
import { MediaServerType } from '../../../server/constants/server';
|
||||||
|
import useSettings from '../../hooks/useSettings';
|
||||||
import globalMessages from '../../i18n/globalMessages';
|
import globalMessages from '../../i18n/globalMessages';
|
||||||
import PageTitle from '../Common/PageTitle';
|
import PageTitle from '../Common/PageTitle';
|
||||||
import SettingsTabs, { SettingsRoute } from '../Common/SettingsTabs';
|
import SettingsTabs, { SettingsRoute } from '../Common/SettingsTabs';
|
||||||
import getConfig from 'next/config';
|
|
||||||
|
|
||||||
const messages = defineMessages({
|
const messages = defineMessages({
|
||||||
menuGeneralSettings: 'General',
|
menuGeneralSettings: 'General',
|
||||||
@@ -20,6 +22,7 @@ const messages = defineMessages({
|
|||||||
const SettingsLayout: React.FC = ({ children }) => {
|
const SettingsLayout: React.FC = ({ children }) => {
|
||||||
const intl = useIntl();
|
const intl = useIntl();
|
||||||
const { publicRuntimeConfig } = getConfig();
|
const { publicRuntimeConfig } = getConfig();
|
||||||
|
const settings = useSettings();
|
||||||
const settingsRoutes: SettingsRoute[] = [
|
const settingsRoutes: SettingsRoute[] = [
|
||||||
{
|
{
|
||||||
text: intl.formatMessage(messages.menuGeneralSettings),
|
text: intl.formatMessage(messages.menuGeneralSettings),
|
||||||
@@ -31,16 +34,17 @@ const SettingsLayout: React.FC = ({ children }) => {
|
|||||||
route: '/settings/users',
|
route: '/settings/users',
|
||||||
regex: /^\/settings\/users/,
|
regex: /^\/settings\/users/,
|
||||||
},
|
},
|
||||||
{
|
settings.currentSettings.mediaServerType === MediaServerType.PLEX
|
||||||
text: intl.formatMessage(messages.menuPlexSettings),
|
? {
|
||||||
route: '/settings/plex',
|
text: intl.formatMessage(messages.menuPlexSettings),
|
||||||
regex: /^\/settings\/plex/,
|
route: '/settings/plex',
|
||||||
},
|
regex: /^\/settings\/plex/,
|
||||||
{
|
}
|
||||||
text: getAvalaibleMediaServerName(),
|
: {
|
||||||
route: '/settings/jellyfin',
|
text: getAvailableMediaServerName(),
|
||||||
regex: /^\/settings\/jellyfin/,
|
route: '/settings/jellyfin',
|
||||||
},
|
regex: /^\/settings\/jellyfin/,
|
||||||
|
},
|
||||||
{
|
{
|
||||||
text: intl.formatMessage(messages.menuServices),
|
text: intl.formatMessage(messages.menuServices),
|
||||||
route: '/settings/services',
|
route: '/settings/services',
|
||||||
@@ -77,15 +81,10 @@ const SettingsLayout: React.FC = ({ children }) => {
|
|||||||
<div className="mt-10 text-white">{children}</div>
|
<div className="mt-10 text-white">{children}</div>
|
||||||
</>
|
</>
|
||||||
);
|
);
|
||||||
function getAvalaibleMediaServerName() {
|
function getAvailableMediaServerName() {
|
||||||
if (publicRuntimeConfig.JELLYFIN_TYPE === 'emby') {
|
|
||||||
return intl.formatMessage(messages.menuJellyfinSettings, {
|
|
||||||
mediaServerName: 'Emby',
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
return intl.formatMessage(messages.menuJellyfinSettings, {
|
return intl.formatMessage(messages.menuJellyfinSettings, {
|
||||||
mediaServerName: 'Jellyfin',
|
mediaServerName:
|
||||||
|
publicRuntimeConfig.JELLYFIN_TYPE === 'emby' ? 'Emby' : 'Jellyfin',
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user