public MasterGameViewModel(MasterGame masterGame, LocalDate currentDate, bool error = false, int numberOutstandingCorrections = 0) { MasterGameID = masterGame.MasterGameID; GameName = masterGame.GameName; EstimatedReleaseDate = masterGame.EstimatedReleaseDate; MinimumReleaseDate = masterGame.MinimumReleaseDate; MaximumReleaseDate = masterGame.GetDefiniteMaximumReleaseDate(); EarlyAccessReleaseDate = masterGame.EarlyAccessReleaseDate; InternationalReleaseDate = masterGame.InternationalReleaseDate; AnnouncementDate = masterGame.AnnouncementDate; ReleaseDate = masterGame.ReleaseDate; IsReleased = masterGame.IsReleased(currentDate); DoNotRefreshDate = masterGame.DoNotRefreshDate; DoNotRefreshAnything = masterGame.DoNotRefreshAnything; EligibilityChanged = masterGame.EligibilityChanged; DelayContention = masterGame.DelayContention; CriticScore = masterGame.CriticScore; AveragedScore = masterGame.AveragedScore; Notes = masterGame.Notes; OpenCriticID = masterGame.OpenCriticID; GGToken = masterGame.GGToken; SubGames = masterGame.SubGames.Select(x => new MasterGameViewModel(x, currentDate)).ToList(); Tags = masterGame.Tags.Select(x => x.Name).ToList(); BoxartFileName = masterGame.BoxartFileName; GGCoverArtFileName = masterGame.GGCoverArtFileName; AddedTimestamp = masterGame.AddedTimestamp; Error = error; NumberOutstandingCorrections = numberOutstandingCorrections; }
public MasterGameViewModel(MasterGame masterGame, IClock clock) { MasterGameID = masterGame.MasterGameID; GameName = masterGame.GameName; EstimatedReleaseDate = masterGame.EstimatedReleaseDate; MinimumReleaseDate = masterGame.MinimumReleaseDate; MaximumReleaseDate = masterGame.GetDefiniteMaximumReleaseDate(); EarlyAccessReleaseDate = masterGame.EarlyAccessReleaseDate; InternationalReleaseDate = masterGame.InternationalReleaseDate; ReleaseDate = masterGame.ReleaseDate; IsReleased = masterGame.IsReleased(clock.GetCurrentInstant()); CriticScore = masterGame.CriticScore; AveragedScore = masterGame.AveragedScore; Notes = masterGame.Notes; OpenCriticID = masterGame.OpenCriticID; SubGames = masterGame.SubGames.Select(x => new MasterGameViewModel(x, clock)).ToList(); Tags = masterGame.Tags.Select(x => x.Name).ToList(); BoxartFileName = masterGame.BoxartFileName; AddedTimestamp = masterGame.AddedTimestamp; }