diff --git a/src/components/Login/JellyfinLogin.tsx b/src/components/Login/JellyfinLogin.tsx index 540fb6fdc..bfc92fc82 100644 --- a/src/components/Login/JellyfinLogin.tsx +++ b/src/components/Login/JellyfinLogin.tsx @@ -11,9 +11,9 @@ import useSettings from '../../hooks/useSettings'; const messages = defineMessages({ username: 'Username', password: 'Password', - host: 'Jellyfin URL', + host: '{mediaServerName} URL', email: 'Email', - validationhostrequired: 'Jellyfin URL required', + validationhostrequired: '{mediaServerName} URL required', validationhostformat: 'Valid URL required', validationemailrequired: 'Email required', validationemailformat: 'Valid email required', @@ -46,9 +46,17 @@ const JellyfinLogin: React.FC = ({ host: Yup.string() .matches( /^(?:(?:(?:https?):)?\/\/)(?:\S+(?::\S*)?@)?(?:(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z\u00a1-\uffff0-9]-*)*[a-z\u00a1-\uffff0-9]+)(?:\.(?:[a-z\u00a1-\uffff0-9]-*)*[a-z\u00a1-\uffff0-9]+)*\.?)(?::\d{2,5})?(?:[/?#]\S*)?$/, - intl.formatMessage(messages.validationhostformat) + intl.formatMessage(messages.validationhostformat, { + mediaServerName: + process.env.JELLYFIN_TYPE == 'emby' ? 'Emby' : 'Jellyfin', + }) ) - .required(intl.formatMessage(messages.validationhostrequired)), + .required( + intl.formatMessage(messages.validationhostrequired, { + mediaServerName: + process.env.JELLYFIN_TYPE == 'emby' ? 'Emby' : 'Jellyfin', + }) + ), email: Yup.string() .email(intl.formatMessage(messages.validationemailformat)) .required(intl.formatMessage(messages.validationemailrequired)), @@ -97,7 +105,10 @@ const JellyfinLogin: React.FC = ({
@@ -105,7 +116,12 @@ const JellyfinLogin: React.FC = ({ id="host" name="host" type="text" - placeholder={intl.formatMessage(messages.host)} + placeholder={intl.formatMessage(messages.host, { + mediaServerName: + process.env.JELLYFIN_TYPE == 'emby' + ? 'Emby' + : 'Jellyfin', + })} />
{errors.host && touched.host && ( diff --git a/src/components/Setup/SetupLogin.tsx b/src/components/Setup/SetupLogin.tsx index 2dde96dcf..182c4b160 100644 --- a/src/components/Setup/SetupLogin.tsx +++ b/src/components/Setup/SetupLogin.tsx @@ -3,14 +3,14 @@ import { useUser } from '../../hooks/useUser'; import PlexLoginButton from '../PlexLoginButton'; import JellyfinLogin from '../Login/JellyfinLogin'; import axios from 'axios'; -import { defineMessages, FormattedMessage } from 'react-intl'; +import { defineMessages, FormattedMessage, useIntl } from 'react-intl'; import Accordion from '../Common/Accordion'; import { MediaServerType } from '../../../server/constants/server'; const messages = defineMessages({ welcome: 'Welcome to Overseerr', signinMessage: 'Get started by signing in', - signinWithJellyfin: 'Use your Jellyfin account', + signinWithJellyfin: 'Use your {mediaServerName} account', signinWithPlex: 'Use your Plex account', }); @@ -24,7 +24,7 @@ const SetupLogin: React.FC = ({ onComplete }) => { MediaServerType.NOT_CONFIGURED ); const { user, revalidate } = useUser(); - + const intl = useIntl(); // Effect that is triggered when the `authToken` comes back from the Plex OAuth // We take the token and attempt to login. If we get a success message, we will // ask swr to revalidate the user which _shouid_ come back with a valid user. @@ -91,7 +91,13 @@ const SetupLogin: React.FC = ({ onComplete }) => { }`} onClick={() => handleClick(1)} > - + {process.env.JELLYFIN_TYPE == 'emby' + ? intl.formatMessage(messages.signinWithJellyfin, { + mediaServerName: 'Emby', + }) + : intl.formatMessage(messages.signinWithJellyfin, { + mediaServerName: 'Jellyfin', + })}