mirror of
https://github.com/sct/overseerr.git
synced 2025-09-17 17:24:35 +02:00
fix: various fixes for new tags feature (#1369)
* fix(backend): fix movie override tags check * fix(lang): fix 'no tags' and 'anime tags' strings * fix(logging): correct capitalization of Radarr/Sonarr * fix(ui): consistently disable tag select / display loading placeholder
This commit is contained in:
@@ -361,7 +361,7 @@ export class MediaRequest {
|
||||
const settings = getSettings();
|
||||
if (settings.radarr.length === 0 && !settings.radarr[0]) {
|
||||
logger.info(
|
||||
'Skipped radarr request as there is no radarr configured',
|
||||
'Skipped Radarr request as there is no Radarr server configured',
|
||||
{ label: 'Media Request' }
|
||||
);
|
||||
return;
|
||||
@@ -389,7 +389,9 @@ export class MediaRequest {
|
||||
logger.info(
|
||||
`There is no default ${
|
||||
this.is4k ? '4K ' : ''
|
||||
}radarr configured. Did you set any of your Radarr servers as default?`,
|
||||
}Radarr server configured. Did you set any of your ${
|
||||
this.is4k ? '4K ' : ''
|
||||
}Radarr servers as default?`,
|
||||
{ label: 'Media Request' }
|
||||
);
|
||||
return;
|
||||
@@ -420,11 +422,7 @@ export class MediaRequest {
|
||||
});
|
||||
}
|
||||
|
||||
if (
|
||||
this.tags &&
|
||||
(radarrSettings.tags.length !== (this.tags?.length ?? 0) ||
|
||||
radarrSettings.tags.every((num) => (this.tags ?? []).includes(num)))
|
||||
) {
|
||||
if (this.tags && !isEqual(this.tags, radarrSettings.tags)) {
|
||||
tags = this.tags;
|
||||
logger.info(`Request has override tags`, {
|
||||
label: 'Media Request',
|
||||
@@ -505,7 +503,7 @@ export class MediaRequest {
|
||||
});
|
||||
logger.info('Sent request to Radarr', { label: 'Media Request' });
|
||||
} catch (e) {
|
||||
const errorMessage = `Request failed to send to radarr: ${e.message}`;
|
||||
const errorMessage = `Request failed to send to Radarr: ${e.message}`;
|
||||
logger.error('Request failed to send to Radarr', {
|
||||
label: 'Media Request',
|
||||
errorMessage,
|
||||
@@ -525,7 +523,7 @@ export class MediaRequest {
|
||||
const settings = getSettings();
|
||||
if (settings.sonarr.length === 0 && !settings.sonarr[0]) {
|
||||
logger.info(
|
||||
'Skipped sonarr request as there is no sonarr configured',
|
||||
'Skipped Sonarr request as there is no Sonarr server configured',
|
||||
{ label: 'Media Request' }
|
||||
);
|
||||
return;
|
||||
@@ -553,7 +551,9 @@ export class MediaRequest {
|
||||
logger.info(
|
||||
`There is no default ${
|
||||
this.is4k ? '4K ' : ''
|
||||
}sonarr configured. Did you set any of your Sonarr servers as default?`,
|
||||
}Sonarr server configured. Did you set any of your ${
|
||||
this.is4k ? '4K ' : ''
|
||||
}Sonarr servers as default?`,
|
||||
{ label: 'Media Request' }
|
||||
);
|
||||
return;
|
||||
@@ -654,7 +654,7 @@ export class MediaRequest {
|
||||
tags = this.tags;
|
||||
logger.info(`Request has override tags`, {
|
||||
label: 'Media Request',
|
||||
tags,
|
||||
tagIds: tags,
|
||||
});
|
||||
}
|
||||
|
||||
@@ -719,7 +719,7 @@ export class MediaRequest {
|
||||
});
|
||||
logger.info('Sent request to Sonarr', { label: 'Media Request' });
|
||||
} catch (e) {
|
||||
const errorMessage = `Request failed to send to sonarr: ${e.message}`;
|
||||
const errorMessage = `Request failed to send to Sonarr: ${e.message}`;
|
||||
logger.error('Request failed to send to Sonarr', {
|
||||
label: 'Media Request',
|
||||
errorMessage,
|
||||
|
@@ -35,7 +35,7 @@ const messages = defineMessages({
|
||||
languageprofile: 'Language Profile',
|
||||
tags: 'Tags',
|
||||
selecttags: 'Select tags',
|
||||
notagoptions: 'No Tags',
|
||||
notagoptions: 'No tags.',
|
||||
});
|
||||
|
||||
export type RequestOverrides = {
|
||||
@@ -466,7 +466,12 @@ const AdvancedRequester: React.FC<AdvancedRequesterProps> = ({
|
||||
value: tag.id,
|
||||
}))}
|
||||
isMulti
|
||||
placeholder={intl.formatMessage(messages.selecttags)}
|
||||
isDisabled={isValidating || !serverData}
|
||||
placeholder={
|
||||
isValidating || !serverData
|
||||
? intl.formatMessage(globalMessages.loading)
|
||||
: intl.formatMessage(messages.selecttags)
|
||||
}
|
||||
className="react-select-container react-select-container-dark"
|
||||
classNamePrefix="react-select"
|
||||
value={selectedTags.map((tagId) => {
|
||||
|
@@ -59,6 +59,7 @@ const messages = defineMessages({
|
||||
testFirstQualityProfiles: 'Test connection to load quality profiles',
|
||||
loadingrootfolders: 'Loading root folders…',
|
||||
testFirstRootFolders: 'Test connection to load root folders',
|
||||
loadingTags: 'Loading tags…',
|
||||
testFirstTags: 'Test connection to load tags',
|
||||
tags: 'Tags',
|
||||
preventSearch: 'Disable Auto-Search',
|
||||
@@ -66,7 +67,7 @@ const messages = defineMessages({
|
||||
validationApplicationUrlTrailingSlash: 'URL must not end in a trailing slash',
|
||||
validationBaseUrlLeadingSlash: 'Base URL must have a leading slash',
|
||||
validationBaseUrlTrailingSlash: 'Base URL must not end in a trailing slash',
|
||||
notagoptions: 'No Tags',
|
||||
notagoptions: 'No tags.',
|
||||
selecttags: 'Select tags',
|
||||
});
|
||||
|
||||
@@ -631,10 +632,12 @@ const RadarrModal: React.FC<RadarrModalProps> = ({
|
||||
: []
|
||||
}
|
||||
isMulti
|
||||
isDisabled={!isValidated}
|
||||
isDisabled={!isValidated || isTesting}
|
||||
placeholder={
|
||||
!isValidated
|
||||
? intl.formatMessage(messages.testFirstTags)
|
||||
: isTesting
|
||||
? intl.formatMessage(messages.loadingTags)
|
||||
: intl.formatMessage(messages.selecttags)
|
||||
}
|
||||
className="react-select-container"
|
||||
|
@@ -72,8 +72,8 @@ const messages = defineMessages({
|
||||
validationBaseUrlLeadingSlash: 'Base URL must have a leading slash',
|
||||
validationBaseUrlTrailingSlash: 'Base URL must not end in a trailing slash',
|
||||
tags: 'Tags',
|
||||
animeTags: 'Tags',
|
||||
notagoptions: 'No Tags',
|
||||
animeTags: 'Anime Tags',
|
||||
notagoptions: 'No tags.',
|
||||
selecttags: 'Select tags',
|
||||
});
|
||||
|
||||
@@ -685,7 +685,7 @@ const SonarrModal: React.FC<SonarrModalProps> = ({
|
||||
: []
|
||||
}
|
||||
isMulti
|
||||
isDisabled={!isValidated}
|
||||
isDisabled={!isValidated || isTesting}
|
||||
placeholder={
|
||||
!isValidated
|
||||
? intl.formatMessage(messages.testFirstTags)
|
||||
|
@@ -176,7 +176,7 @@
|
||||
"components.RequestModal.AdvancedRequester.destinationserver": "Destination Server",
|
||||
"components.RequestModal.AdvancedRequester.folder": "{path} ({space})",
|
||||
"components.RequestModal.AdvancedRequester.languageprofile": "Language Profile",
|
||||
"components.RequestModal.AdvancedRequester.notagoptions": "No Tags",
|
||||
"components.RequestModal.AdvancedRequester.notagoptions": "No tags.",
|
||||
"components.RequestModal.AdvancedRequester.qualityprofile": "Quality Profile",
|
||||
"components.RequestModal.AdvancedRequester.requestas": "Request As",
|
||||
"components.RequestModal.AdvancedRequester.rootfolder": "Root Folder",
|
||||
@@ -332,10 +332,11 @@
|
||||
"components.Settings.RadarrModal.externalUrl": "External URL",
|
||||
"components.Settings.RadarrModal.externalUrlPlaceholder": "External URL pointing to your Radarr server",
|
||||
"components.Settings.RadarrModal.hostname": "Hostname or IP Address",
|
||||
"components.Settings.RadarrModal.loadingTags": "Loading tags…",
|
||||
"components.Settings.RadarrModal.loadingprofiles": "Loading quality profiles…",
|
||||
"components.Settings.RadarrModal.loadingrootfolders": "Loading root folders…",
|
||||
"components.Settings.RadarrModal.minimumAvailability": "Minimum Availability",
|
||||
"components.Settings.RadarrModal.notagoptions": "No Tags",
|
||||
"components.Settings.RadarrModal.notagoptions": "No tags.",
|
||||
"components.Settings.RadarrModal.port": "Port",
|
||||
"components.Settings.RadarrModal.preventSearch": "Disable Auto-Search",
|
||||
"components.Settings.RadarrModal.qualityprofile": "Quality Profile",
|
||||
@@ -443,7 +444,7 @@
|
||||
"components.Settings.SettingsUsers.userSettingsDescription": "Configure global and default user settings.",
|
||||
"components.Settings.SettingsUsers.users": "Users",
|
||||
"components.Settings.SonarrModal.add": "Add Server",
|
||||
"components.Settings.SonarrModal.animeTags": "Tags",
|
||||
"components.Settings.SonarrModal.animeTags": "Anime Tags",
|
||||
"components.Settings.SonarrModal.animelanguageprofile": "Anime Language Profile",
|
||||
"components.Settings.SonarrModal.animequalityprofile": "Anime Quality Profile",
|
||||
"components.Settings.SonarrModal.animerootfolder": "Anime Root Folder",
|
||||
@@ -465,7 +466,7 @@
|
||||
"components.Settings.SonarrModal.loadinglanguageprofiles": "Loading language profiles…",
|
||||
"components.Settings.SonarrModal.loadingprofiles": "Loading quality profiles…",
|
||||
"components.Settings.SonarrModal.loadingrootfolders": "Loading root folders…",
|
||||
"components.Settings.SonarrModal.notagoptions": "No Tags",
|
||||
"components.Settings.SonarrModal.notagoptions": "No tags.",
|
||||
"components.Settings.SonarrModal.port": "Port",
|
||||
"components.Settings.SonarrModal.preventSearch": "Disable Auto-Search",
|
||||
"components.Settings.SonarrModal.qualityprofile": "Quality Profile",
|
||||
|
Reference in New Issue
Block a user