public ActionResult Setup(RegisterLeague model) { try { Dictionary<int, string> countries = LocationFactory.GetCountriesDictionary(); //league.Federations = federations.Select(item => new SelectListItem { Text = item.Value, Value = item.Key.ToString() }).ToList(); model.Countries = countries.Select(item => new SelectListItem { Text = item.Value, Value = item.Key.ToString() }).ToList(); if (model.LeagueId != new Guid()) { var memberId = RDN.Library.Classes.Account.User.GetMemberId(); //updates the league and attaches the owner to it. bool isUpdated = RDN.Library.Classes.League.LeagueFactory.UpdateLeagueForOwner(model.LeagueId, model.Name, model.Email, model.PhoneNumber, model.City, Convert.ToInt32(model.Country), model.State, model.TimeZone); // RDN.Library.Classes.League.League.AttachOwnerToLeague(model.LeagueId, memberId); RDN.Library.Classes.Account.User.AddMemberToLeague(memberId, model.LeagueId); model.Updated = true; MemberCache.Clear(memberId); MemberCache.ClearApiCache(memberId); } else { var memberId = RDN.Library.Classes.Account.User.GetMemberId(); var errors = RDN.Library.Classes.League.LeagueFactory.CreateLeague((new Guid()).ToString(), model.Name, model.PhoneNumber, model.Email, string.Empty, model.Country, model.State, model.City, model.TimeZone); if (errors.Count == 0) { model.Created = true; MemberCache.Clear(memberId); MemberCache.ClearApiCache(memberId); } else { model.Created = false; } } } catch (Exception exception) { ErrorDatabaseManager.AddException(exception, GetType()); return View(model); } return View(model); }
public ActionResult Setup(string id, string name) { try { //Dictionary<Guid, string> federations = Federation.GetFederations(); Dictionary<int, string> countries = LocationFactory.GetCountriesDictionary(); RegisterLeague league = new RegisterLeague(); //league.Federations = federations.Select(item => new SelectListItem { Text = item.Value, Value = item.Key.ToString() }).ToList(); league.Countries = countries.Select(item => new SelectListItem { Text = item.Value, Value = item.Key.ToString() }).ToList(); league.Name = name; if (!String.IsNullOrEmpty(id)) { var leagueDb = RDN.Library.Classes.League.LeagueFactory.GetLeague(new Guid(id)); if (leagueDb.LeagueMembers.Where(x => x.LeagueOwnersEnum.HasFlag(LeagueOwnersEnum.Manager) || x.LeagueOwnersEnum.HasFlag(LeagueOwnersEnum.Manager)).Count() > 0) return View(league); league.LeagueId = leagueDb.LeagueId; league.Name = leagueDb.Name; league.Email = leagueDb.Email; league.PhoneNumber = leagueDb.PhoneNumber; league.City = leagueDb.City; league.State = leagueDb.State; if (!String.IsNullOrEmpty(leagueDb.Country)) { var cou = league.Countries.Where(x => x.Value == leagueDb.CountryId.ToString()).FirstOrDefault(); if (cou != null) league.Countries.Where(x => x.Value == leagueDb.CountryId.ToString()).FirstOrDefault().Selected = true; } else league.Country = leagueDb.Country; if (leagueDb.TimeZone != 0) { league.TimeZones.Where(x => x.Value == leagueDb.TimeZone.ToString("N0")).FirstOrDefault().Selected = true; } league.TimeZone = leagueDb.TimeZone; } return View(league); } catch (Exception exception) { ErrorDatabaseManager.AddException(exception, exception.GetType()); } return Redirect(Url.Content("~/")); }