fixup! Translations and Episode Order

This commit is contained in:
Mark McDowall
2026-09-27 19:20:02 -07:00
parent de384f8c6d
commit 786aa6fe53
9 changed files with 40 additions and 9 deletions
@@ -121,6 +121,7 @@ function ImportSeriesCard({
type: 'official',
name: translate('AiredOrder'),
seasonNumbers: [],
episodeCount: 0,
},
],
[selectedSeries]
@@ -18,6 +18,24 @@ export interface SeasonTypeSelectInputProps {
onChange: (payload: InputChanged<string>) => void;
}
function getSeasonTypeHint(seasonCount: number, episodeCount: number) {
if (!episodeCount) {
return seasonCount === 1
? translate('OneSeason')
: translate('CountSeasons', { count: seasonCount });
}
if (seasonCount === 1) {
return episodeCount === 1
? translate('OneSeasonOneEpisode')
: translate('OneSeasonCountEpisodes', { episodeCount });
}
return episodeCount === 1
? translate('CountSeasonsOneEpisode', { seasonCount })
: translate('CountSeasonsCountEpisodes', { seasonCount, episodeCount });
}
export default function SeasonTypeSelectInput(
props: SeasonTypeSelectInputProps
) {
@@ -36,14 +54,12 @@ export default function SeasonTypeSelectInput(
const seasonCount = seasonType.seasonNumbers.filter(
(seasonNumber) => seasonNumber > 0
).length;
const { episodeCount } = seasonType;
return {
key: seasonType.type,
value: seasonType.name,
hint:
seasonCount === 1
? translate('OneSeason')
: translate('CountSeasons', { count: seasonCount }),
hint: getSeasonTypeHint(seasonCount, episodeCount),
};
}
);
+1
View File
@@ -79,6 +79,7 @@ export interface SeasonType {
name: string;
type: string;
seasonNumbers: number[];
episodeCount: number;
}
interface Series extends ModelBase {
@@ -306,6 +306,8 @@
"CountResult": "{count} Result",
"CountResults": "{count} Results",
"CountSeasons": "{count} Seasons",
"CountSeasonsCountEpisodes": "{seasonCount} Seasons, {episodeCount} Episodes",
"CountSeasonsOneEpisode": "{seasonCount} Seasons, 1 Episode",
"CountSelectedFile": "{selectedCount} selected file",
"CountSelectedFiles": "{selectedCount} selected files",
"CountSeriesSelected": "{count} series selected",
@@ -1708,6 +1710,8 @@
"OnSeriesDelete": "On Series Delete",
"OneMinute": "1 Minute",
"OneSeason": "1 Season",
"OneSeasonCountEpisodes": "1 Season, {episodeCount} Episodes",
"OneSeasonOneEpisode": "1 Season, 1 Episode",
"OnlyForBulkSeasonReleases": "Only for Bulk Season Releases",
"OnlyTorrent": "Only Torrent",
"OnlyUsenet": "Only Usenet",
@@ -12,5 +12,6 @@ namespace NzbDrone.Core.MetadataSource.SkyHook.Resource
public string Name { get; set; }
public string Type { get; set; }
public List<int> SeasonNumbers { get; set; }
public int EpisodeCount { get; set; }
}
}
@@ -396,7 +396,8 @@ namespace NzbDrone.Core.MetadataSource.SkyHook
{
Name = seasonType.Name,
Type = seasonType.Type,
SeasonNumbers = seasonType.SeasonNumbers
SeasonNumbers = seasonType.SeasonNumbers,
EpisodeCount = seasonType.EpisodeCount
};
}
+1
View File
@@ -9,6 +9,7 @@ namespace NzbDrone.Core.Tv
public string Name { get; set; }
public string Type { get; set; }
public List<int> SeasonNumbers { get; set; }
public int EpisodeCount { get; set; }
[JsonIgnore]
public static string Official => "official";
@@ -9,6 +9,7 @@ namespace Sonarr.Api.V3.Series
public string Name { get; set; }
public string Type { get; set; }
public List<int> SeasonNumbers { get; set; }
public int EpisodeCount { get; set; }
}
public static class SeasonTypeResourceMapper
@@ -24,7 +25,8 @@ namespace Sonarr.Api.V3.Series
{
Name = model.Name,
Type = model.Type,
SeasonNumbers = model.SeasonNumbers
SeasonNumbers = model.SeasonNumbers,
EpisodeCount = model.EpisodeCount
};
}
@@ -39,7 +41,8 @@ namespace Sonarr.Api.V3.Series
{
Name = resource.Name,
Type = resource.Type,
SeasonNumbers = resource.SeasonNumbers
SeasonNumbers = resource.SeasonNumbers,
EpisodeCount = resource.EpisodeCount
};
}
@@ -7,6 +7,7 @@ namespace Sonarr.Api.V5.Series
public string? Name { get; set; }
public string? Type { get; set; }
public List<int> SeasonNumbers { get; set; } = [];
public int EpisodeCount { get; set; }
}
public static class SeasonTypeResourceMapper
@@ -17,7 +18,8 @@ namespace Sonarr.Api.V5.Series
{
Name = model.Name,
Type = model.Type,
SeasonNumbers = model.SeasonNumbers
SeasonNumbers = model.SeasonNumbers,
EpisodeCount = model.EpisodeCount
};
}
@@ -27,7 +29,8 @@ namespace Sonarr.Api.V5.Series
{
Name = resource.Name,
Type = resource.Type,
SeasonNumbers = resource.SeasonNumbers
SeasonNumbers = resource.SeasonNumbers,
EpisodeCount = resource.EpisodeCount
};
}