mirror of
https://github.com/Sonarr/Sonarr.git
synced 2026-10-02 02:44:37 +08:00
fixup! Translations and Episode Order
This commit is contained in:
@@ -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),
|
||||
};
|
||||
}
|
||||
);
|
||||
|
||||
@@ -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
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
@@ -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
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user