public async Task <IActionResult> TeamEdit(int id, [Bind("Id,TeamName,TeamCode,SubDivisionId, Address,PostCode,Website,About")] Team team) { if (id != team.Id) { return(NotFound()); } // once season is in season is in session no changes to team code //team.TeamCode = team.TeamCode.ToUpper(); // Get Team var thisTeam = await _wpbService.GetTeamAsync(id); if (thisTeam == null) { return(NotFound()); } // update the premited value passed in only: // Address,PostCode,Website,About thisTeam.About = ModelHelpers.ShortenAndFormatText(team.About, 200); // because we are manually changing the values of about: ModelState.Remove("About"); thisTeam.Address = team.Address; thisTeam.PostCode = team.PostCode; thisTeam.Website = team.Website; if (!ModelState.IsValid) { var divisionList = await _wpbService.GetSubDivisionDropListAsync(); ViewData["SubDivision"] = new SelectList(divisionList, "Id", "SubDivisionTitle"); return(View(team)); } // once season is in season is in session no changes to team code /*var subDivCodeExist = _wpbService.TeamCodeExist(team.TeamCode); * if (subDivCodeExist) * { * var divisionList = await _wpbService.GetSubDivisionDropListAsync(); * ViewData["SubDivision"] = new SelectList(divisionList, "Id", "SubDivisionTitle"); * ModelState.AddModelError("", "$Team code: {team.TeamCode} is already in use."); * return View(team); * }*/ var teamCodeSanityCheck = await _wpbService.GetTeamAsync(id); if (teamCodeSanityCheck != null) { // no changes to team code if (team.TeamCode != teamCodeSanityCheck.TeamCode) { var divisionList = await _wpbService.GetSubDivisionDropListAsync(); ViewData["SubDivision"] = new SelectList(divisionList, "Id", "SubDivisionTitle"); ModelState.AddModelError("", "Changes to team code not allow while in session!"); return(View(team)); } } else { return(NotFound()); } var editSuccess = await _wpbService.UpdateTeamAsync(thisTeam); if (editSuccess) { return(RedirectToAction(nameof(TeamsAll))); } return(NotFound()); }