private static List <PlayEvent> GetGoalsAndPenalties(IList <Event> events, string homeTeam) { var goals = GoalFactory.Create(events, homeTeam); var penalties = PenaltiesFactory.Create(events, homeTeam); var goalsAndPenalties = goals; goalsAndPenalties.AddRange(penalties); return(goalsAndPenalties); }
private async Task <bool> TrySave() { if (!Validate(out decimal amount, out string name)) { return(false); } var date = selectedDate; var isImageSelected = selectedImageUri != Uri.Empty; var viewHasBeenAltered = new Func <bool>( () => currentImageGenerationId == cropView?.VisibleRectangleBitmap?.GenerationId).Invoke(); var imageName = (isImageSelected || viewHasBeenAltered) ? await TryUpdateImage() : goal?.Image; var tmp = GoalFactory.Create(amount, date, imageName, name); if (goal != null) { var updatedGoal = GoalFactory.Copy(goal, tmp); if (Compare(updatedGoal, goal)) { return(true); } RepositoryFactory.GetSingleton().GetRepository().Update(updatedGoal); } else { RepositoryFactory.GetSingleton().GetRepository().Add(tmp); } return(true); }