public GetAllDeckViewModel(GetDecksWithLearnCounts.Result applicationDeck) { DeckId = applicationDeck.Id; UnknownCardCount = applicationDeck.UnknownCardCount; ExpiredCardCount = applicationDeck.ExpiredCardCount; Description = applicationDeck.Description; NextExpiryUTCDate = applicationDeck.NextExpiryUTCDate; }
public GetAllDeckViewModel(GetDecksWithLearnCounts.Result applicationDeck, ILocalized localizer) { NextExpiryUTCDate = applicationDeck.NextExpiryUTCDate; var lines = new List <string>(); if (applicationDeck.CardCount == 0) { HeadLine = localizer.Get("ThereIsNoCardInYourDeck") + $" <a href=\"/Decks/Index?DeckId={applicationDeck.Id}\">{applicationDeck.Description}</a>."; lines.Add($"<a href=\"/Search/Index\" >{localizer.Get("ClickHereToSearchAndAddCards")}</a>..."); lines.Add($"<a href=\"/Authoring/Index\">{localizer.Get("ClickHereToCreateCards")}</a>..."); } else { HeadLine = $"{localizer.Get("AmongThe")} {applicationDeck.CardCount} {localizer.Get("CardsOfYourDeck")} <a href=\"/Decks/Index?DeckId={applicationDeck.Id}\">{applicationDeck.Description}</a>..."; if (applicationDeck.UnknownCardCount == 0) { lines.Add(localizer.Get("NoUnknownCard")); } else { var linkText = applicationDeck.UnknownCardCount == 1 ? localizer.Get("OneUnknownCard") : $"{applicationDeck.UnknownCardCount} {localizer.Get("UnknownCards")}"; lines.Add($"<a href=\"/Learn/Index?LearnMode=Unknown\">{linkText}</a>"); } if (applicationDeck.ExpiredCardCount == 0) { lines.Add(localizer.Get("NoExpiredCard")); } else { var linkText = applicationDeck.ExpiredCardCount == 1 ? localizer.Get("OneExpiredCard") : $"{applicationDeck.ExpiredCardCount} {localizer.Get("ExpiredCards")}"; lines.Add($"<a href=\"/Learn/Index?LearnMode=Expired\">{linkText}</a>"); } if (applicationDeck.ExpiringNextHourCount == 0) { lines.Add(localizer.Get("NoCardToExpireInTheNextHour")); } else { if (applicationDeck.ExpiringNextHourCount == 1) { lines.Add(localizer.Get("OneCardWillExpireInTheNextHour")); } else { lines.Add($"{applicationDeck.ExpiringNextHourCount} {localizer.Get("CardsWillExpireInTheNextHour")}"); } } if (applicationDeck.ExpiringFollowing24hCount == 0) { lines.Add(localizer.Get("NoCardToExpireInTheFollowing24h")); } else { if (applicationDeck.ExpiringFollowing24hCount == 1) { lines.Add(localizer.Get("OneCardWillExpireInTheFollowing24h")); } else { lines.Add($"{applicationDeck.ExpiringFollowing24hCount} {localizer.Get("CardsWillExpireInTheFollowing24h")}"); } } if (applicationDeck.ExpiringFollowing3DaysCount == 0) { lines.Add(localizer.Get("NoCardToExpireInTheFollowing3Days")); } else { if (applicationDeck.ExpiringFollowing3DaysCount == 1) { lines.Add(localizer.Get("OneCardWillExpireInTheFollowing3Days")); } else { lines.Add($"{applicationDeck.ExpiringFollowing3DaysCount} {localizer.Get("CardsWillExpireInTheFollowing3Days")}"); } } } Lines = lines; }