public async Task <ActionResult> Verify( string clubInitials, MergeCompetitorViewModel vm) { var clubId = await _clubService.GetClubId(clubInitials); if (!await _authService.CanUserEdit(User, clubId)) { return(Unauthorized()); } vm.SourceCompetitor = await _competitorService.GetCompetitorAsync(vm.SourceCompetitorId.Value); vm.TargetCompetitor = await _competitorService.GetCompetitorAsync(vm.TargetCompetitorId.Value); if (vm.SourceCompetitor.ClubId != clubId || vm.TargetCompetitor.ClubId != clubId) { return(Unauthorized()); } vm.SourceNumberOfRaces = await _mergeService.GetNumberOfRaces(vm.SourceCompetitorId.Value); vm.TargetNumberOfRaces = await _mergeService.GetNumberOfRaces(vm.TargetCompetitorId.Value); vm.SourceSeasons = await _mergeService.GetSeasons(vm.SourceCompetitorId.Value); vm.TargetSeasons = await _mergeService.GetSeasons(vm.TargetCompetitorId.Value); return(View("Verify", vm)); }