diff --git a/Aosta.Ava/Aosta.Ava/Assets/Localization/en-US.json b/Aosta.Ava/Aosta.Ava/Assets/Localization/en-US.json index 226446c..f527a93 100644 --- a/Aosta.Ava/Aosta.Ava/Assets/Localization/en-US.json +++ b/Aosta.Ava/Aosta.Ava/Assets/Localization/en-US.json @@ -34,11 +34,13 @@ "Label.Date": "Date", "Label.Episode.Number": "Episode #{0}", "Label.Episodes": "Episodes", + "Label.Filler": "Filler", "Label.LoadMore": "Load more", "Label.LocalizationLookupError": "Localization not found for {0}", "Label.NotAvailable.Long" : "Not available", "Label.NotAvailable.Short" : "N/A", "Label.Online": "Online", + "Label.Recap": "Recap", "Label.Score": "Score", "Label.Season": "Season", "Label.Synopsis": "Synopsis", @@ -89,6 +91,12 @@ "Enum.Season.Fall": "Fall", "Enum.Season.Winter": "Winter", + "Enum.WatchingStatus.PlanToWatch": "Planned", + "Enum.WatchingStatus.Dropped": "Dropped", + "Enum.WatchingStatus.Completed": "Completed", + "Enum.WatchingStatus.OnHold": "On Hold", + "Enum.WatchingStatus.Watching": "Watching", + "Date.Compact.January": "{0} Jan {1}", "Date.Compact.February": "{0} Feb {1}", "Date.Compact.March": "{0} Mar {1}", @@ -100,5 +108,9 @@ "Date.Compact.September": "{0} Sep {1}", "Date.Compact.October": "{0} Oct {1}", "Date.Compact.November": "{0} Nov {1}", - "Date.Compact.December": "{0} Dec {1}" + "Date.Compact.December": "{0} Dec {1}", + + "Duration.Compact.Hours": "{0}h {1}m {2}s", + "Duration.Compact.Minutes": "{0}m {1}s", + "Duration.Compact.Seconds": "{0}s" } diff --git a/Aosta.Ava/Aosta.Ava/Assets/Localization/it-IT.json b/Aosta.Ava/Aosta.Ava/Assets/Localization/it-IT.json index 49a8a00..457688b 100644 --- a/Aosta.Ava/Aosta.Ava/Assets/Localization/it-IT.json +++ b/Aosta.Ava/Aosta.Ava/Assets/Localization/it-IT.json @@ -33,11 +33,13 @@ "Label.Date": "Data", "Label.Episode.Number": "Episodio n.{0}", "Label.Episodes": "Episodi", + "Label.Filler": "Filler", "Label.LoadMore": "Carica altro", "Label.LocalizationLookupError": "Localizzazione non trovata per {0}", "Label.NotAvailable.Long" : "Non disponibile", "Label.NotAvailable.Short" : "N/D", "Label.Online": "Online", + "Label.Recap": "Recap", "Label.Score": "Voto", "Label.Season": "Stagione", "Label.Synopsis": "Sinossi", @@ -88,6 +90,12 @@ "Enum.Season.Fall": "Autunno", "Enum.Season.Winter": "Inverno", + "Enum.WatchingStatus.PlanToWatch": "Pianificato", + "Enum.WatchingStatus.Dropped": "Droppato", + "Enum.WatchingStatus.Completed": "Completato", + "Enum.WatchingStatus.OnHold": "In pausa", + "Enum.WatchingStatus.Watching": "In visione", + "Date.Compact.January": "{0}/01/{1}", "Date.Compact.February": "{0}/02/{1}", "Date.Compact.March": "{0}/03/{1}", @@ -99,5 +107,9 @@ "Date.Compact.September": "{0}/09/{1}", "Date.Compact.October": "{0}/10/{1}", "Date.Compact.November": "{0}/11/{1}", - "Date.Compact.December": "{0}/12/{1}" + "Date.Compact.December": "{0}/12/{1}", + + "Duration.Compact.Hours": "{0}o {1}m {2}s", + "Duration.Compact.Minutes": "{0}m {1}s", + "Duration.Compact.Seconds": "{0}s" } \ No newline at end of file diff --git a/Aosta.Ava/Aosta.Ava/Assets/Resources/DataTemplates.axaml b/Aosta.Ava/Aosta.Ava/Assets/Resources/DataTemplates.axaml index 7056fb3..0c499b8 100644 --- a/Aosta.Ava/Aosta.Ava/Assets/Resources/DataTemplates.axaml +++ b/Aosta.Ava/Aosta.Ava/Assets/Resources/DataTemplates.axaml @@ -15,176 +15,100 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + diff --git a/Aosta.Ava/Aosta.Ava/Assets/Styles/DefaultStyles.axaml b/Aosta.Ava/Aosta.Ava/Assets/Styles/DefaultStyles.axaml index be3ea3e..9d5a95f 100644 --- a/Aosta.Ava/Aosta.Ava/Assets/Styles/DefaultStyles.axaml +++ b/Aosta.Ava/Aosta.Ava/Assets/Styles/DefaultStyles.axaml @@ -8,11 +8,19 @@ + + + + diff --git a/Aosta.Ava/Aosta.Ava/Extensions/ModelExtensions.cs b/Aosta.Ava/Aosta.Ava/Extensions/ModelExtensions.cs index 3792f66..91ce36d 100644 --- a/Aosta.Ava/Aosta.Ava/Extensions/ModelExtensions.cs +++ b/Aosta.Ava/Aosta.Ava/Extensions/ModelExtensions.cs @@ -10,6 +10,16 @@ namespace Aosta.Ava.Extensions; public static class ModelExtensions { + public static LocalizedString Localize(this WatchingStatus status) => status switch + { + WatchingStatus.PlanToWatch => "Enum.WatchingStatus.PlanToWatch".Localize(), + WatchingStatus.Dropped => "Enum.WatchingStatus.Dropped".Localize(), + WatchingStatus.Completed => "Enum.WatchingStatus.Completed".Localize(), + WatchingStatus.OnHold => "Enum.WatchingStatus.OnHold".Localize(), + WatchingStatus.Watching => "Enum.WatchingStatus.Watching".Localize(), + _ => throw new ArgumentOutOfRangeException(nameof(status), status, error_message(nameof(WatchingStatus))) + }; + public static LocalizedString Localize(this AiringStatus status) => status switch { AiringStatus.NotAvailable => "Label.NotAvailable.Long".Localize(), diff --git a/Aosta.Ava/Aosta.Ava/Pages/JikanAnimeDetailsPage.axaml b/Aosta.Ava/Aosta.Ava/Pages/JikanAnimeDetailsPage.axaml index 4fbbbdc..7f6b83d 100644 --- a/Aosta.Ava/Aosta.Ava/Pages/JikanAnimeDetailsPage.axaml +++ b/Aosta.Ava/Aosta.Ava/Pages/JikanAnimeDetailsPage.axaml @@ -13,7 +13,7 @@ + Title="{Binding Title}" /> @@ -33,14 +33,40 @@ - + + + + + + + + + + + + + + + - + - - -