From 50ce198471b1a3777a183d68904bbfb39ebd4523 Mon Sep 17 00:00:00 2001 From: TheCatLady <52870424+TheCatLady@users.noreply.github.com> Date: Fri, 8 Oct 2021 09:19:47 -0400 Subject: [PATCH] fix: apply request overrides iff override & selected servers match (#2164) --- .../RequestModal/AdvancedRequester/index.tsx | 23 +++++++++++-------- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/src/components/RequestModal/AdvancedRequester/index.tsx b/src/components/RequestModal/AdvancedRequester/index.tsx index f532917d..9fe8bdaf 100644 --- a/src/components/RequestModal/AdvancedRequester/index.tsx +++ b/src/components/RequestModal/AdvancedRequester/index.tsx @@ -150,21 +150,21 @@ const AdvancedRequester: React.FC = ({ const defaultProfile = serverData.profiles.find( (profile) => profile.id === - (isAnime + (isAnime && serverData.server.activeAnimeProfileId ? serverData.server.activeAnimeProfileId : serverData.server.activeProfileId) ); const defaultFolder = serverData.rootFolders.find( (folder) => folder.path === - (isAnime + (isAnime && serverData.server.activeAnimeDirectory ? serverData.server.activeAnimeDirectory : serverData.server.activeDirectory) ); const defaultLanguage = serverData.languageProfiles?.find( (language) => language.id === - (isAnime + (isAnime && serverData.server.activeAnimeLanguageProfileId ? serverData.server.activeAnimeLanguageProfileId : serverData.server.activeLanguageProfileId) ); @@ -172,10 +172,15 @@ const AdvancedRequester: React.FC = ({ ? serverData.server.activeAnimeTags : serverData.server.activeTags; + const applyOverrides = + defaultOverrides && + ((defaultOverrides.server === null && serverData.server.isDefault) || + defaultOverrides.server === serverData.server.id); + if ( defaultProfile && defaultProfile.id !== selectedProfile && - (!defaultOverrides || defaultOverrides.profile === null) + (!applyOverrides || defaultOverrides.profile === null) ) { setSelectedProfile(defaultProfile.id); } @@ -183,7 +188,7 @@ const AdvancedRequester: React.FC = ({ if ( defaultFolder && defaultFolder.path !== selectedFolder && - (!defaultOverrides || defaultOverrides.folder === null) + (!applyOverrides || !defaultOverrides.folder) ) { setSelectedFolder(defaultFolder.path ?? ''); } @@ -191,7 +196,7 @@ const AdvancedRequester: React.FC = ({ if ( defaultLanguage && defaultLanguage.id !== selectedLanguage && - (!defaultOverrides || defaultOverrides.language === null) + (!applyOverrides || defaultOverrides.language === null) ) { setSelectedLanguage(defaultLanguage.id); } @@ -199,7 +204,7 @@ const AdvancedRequester: React.FC = ({ if ( defaultTags && !isEqual(defaultTags, selectedTags) && - (!defaultOverrides || defaultOverrides.tags === null) + (!applyOverrides || defaultOverrides.tags === null) ) { setSelectedTags(defaultTags); } @@ -215,7 +220,7 @@ const AdvancedRequester: React.FC = ({ setSelectedProfile(defaultOverrides.profile); } - if (defaultOverrides && defaultOverrides.folder != null) { + if (defaultOverrides && defaultOverrides.folder) { setSelectedFolder(defaultOverrides.folder); } @@ -241,7 +246,7 @@ const AdvancedRequester: React.FC = ({ profile: selectedProfile !== -1 ? selectedProfile : undefined, server: selectedServer ?? undefined, user: selectedUser ?? undefined, - language: selectedLanguage ?? undefined, + language: selectedLanguage !== -1 ? selectedLanguage : undefined, tags: selectedTags, }); }