From 0cc06fcba8a61a9c0afe8890269ab35eb5edea31 Mon Sep 17 00:00:00 2001 From: Mark McDowall Date: Sun, 2 Aug 2020 11:33:15 -0700 Subject: [PATCH] Fixed: Multiple warnings for episode combined into one tooltip Fixes #3890 --- frontend/src/Episode/EpisodeNumber.js | 32 +++++++++++++++++---------- 1 file changed, 20 insertions(+), 12 deletions(-) diff --git a/frontend/src/Episode/EpisodeNumber.js b/frontend/src/Episode/EpisodeNumber.js index f8183be8a..6c0a62fb0 100644 --- a/frontend/src/Episode/EpisodeNumber.js +++ b/frontend/src/Episode/EpisodeNumber.js @@ -17,6 +17,20 @@ function getAlternateTitles(seasonNumber, sceneSeasonNumber, alternateTitles) { }); } +function getWarningMessage(unverifiedSceneNumbering, seriesType, absoluteEpisodeNumber) { + const messages = []; + + if (unverifiedSceneNumbering) { + messages.push('Scene number hasn\'t been verified yet'); + } + + if (seriesType === 'anime' && !absoluteEpisodeNumber) { + messages.push('Episode does not have an absolute episode number'); + } + + return messages.join('\n'); +} + function EpisodeNumber(props) { const { seasonNumber, @@ -38,6 +52,8 @@ function EpisodeNumber(props) { (seriesType === 'anime' && sceneAbsoluteEpisodeNumber !== undefined) || !!alternateTitles.length; + const warningMessage = getWarningMessage(unverifiedSceneNumbering, seriesType, absoluteEpisodeNumber); + return ( { @@ -94,24 +110,16 @@ function EpisodeNumber(props) { } { - unverifiedSceneNumbering && + warningMessage ? + title={warningMessage} + /> : + null } - { - seriesType === 'anime' && !absoluteEpisodeNumber && - - } ); }