public static LeagueBase SaveLeagueEdit(Guid memId, Guid uid, LeagueBase league) { var response = Network.SendPackage(Network.ConvertObjectToStream(new MemberPassParams() { Mid = memId, Uid = uid, Item = league }), MobileConfig.LEAGUE_EDIT_SAVE_URL); var stream = response.GetResponseStream(); StreamReader read = new StreamReader(stream); string json = read.ReadToEnd(); return Json.DeserializeObject<LeagueBase>(json); }
public ActionResult EditLeague() { try { if (HttpContext.Request.InputStream != null) { Stream stream = HttpContext.Request.InputStream; var ob = Network.LoadObject<MemberPassParams>(ref stream); var mem = MemberCache.GetMemberDisplay(ob.Mid); if (ob.Uid == mem.UserId) { LeagueBase leag = new LeagueBase(); bool isAdmin = MemberCache.IsManagerOrBetterOfLeague(ob.Mid); if (!isAdmin) { leag.IsSuccessful = false; return Json(leag, JsonRequestBehavior.AllowGet); } var league = RDN.Library.Classes.League.LeagueFactory.GetLeague(MemberCache.GetLeagueIdOfMember(ob.Mid)); leag.Address = league.Address; leag.ZipCode = league.ZipCode; leag.City = league.City; leag.Country = league.Country; leag.CountryId = league.CountryId; leag.Email = league.Email; leag.Founded = league.Founded; leag.LeagueId = league.LeagueId; leag.Name = league.Name; leag.PhoneNumber = league.PhoneNumber; leag.State = league.State; leag.TimeZone = league.TimeZone; leag.Website = league.Website; leag.Twitter = league.Twitter; leag.Instagram = league.Instagram; leag.Facebook = league.Facebook; leag.RuleSetsPlayedEnum = league.RuleSetsPlayedEnum; leag.CultureSelected = league.CultureSelected; var cultures = CultureInfo.GetCultures(CultureTypes.AllCultures).Where(x => x.Name.Contains("en")).OrderBy(x => x.DisplayName).ToList(); for (int i = 0; i < cultures.Count; i++) { Culture c = new Culture(); c.Name = cultures[i].DisplayName; c.LCID = cultures[i].LCID; leag.Cultures.Add(c); } leag.IsSuccessful = true; return Json(leag, JsonRequestBehavior.AllowGet); } } } catch (Exception exception) { ErrorDatabaseManager.AddException(exception, GetType()); } return Json(new LeagueBase() { IsSuccessful = false }, JsonRequestBehavior.AllowGet); }
public EditLeague() { InitializeComponent(); progressIndicator = new ProgressIndicator(); SystemTray.SetProgressIndicator(this, progressIndicator); progressIndicator.IsIndeterminate = true; progressIndicator.Text = "Pulling League..."; progressIndicator.IsVisible = true; Task.Run(new Action(() => { league = LeagueMobile.GetLeagueEdit(SettingsMobile.Instance.User.MemberId, SettingsMobile.Instance.User.LoginId); if (league != null && league.IsSuccessful) { Dispatcher.BeginInvoke(delegate { try { if (!String.IsNullOrEmpty(league.Name)) LeagueName.Text = league.Name; if (!String.IsNullOrEmpty(league.City)) City.Text = league.City; if (!String.IsNullOrEmpty(league.State)) State.Text = league.State; if (!String.IsNullOrEmpty(league.ZipCode)) Zip.Text = league.ZipCode; if (!String.IsNullOrEmpty(league.Country)) Country.Text = league.Country; Founding.Value = league.Founded; if (!String.IsNullOrEmpty(league.PhoneNumber)) Phone.Text = league.PhoneNumber; if (!String.IsNullOrEmpty(league.Email)) Email.Text = league.Email; if (!String.IsNullOrEmpty(league.Website)) Website.Text = league.Website; if (!String.IsNullOrEmpty(league.Instagram)) Instagram.Text = league.Instagram; if (!String.IsNullOrEmpty(league.Twitter)) Twitter.Text = league.Twitter; if (!String.IsNullOrEmpty(league.Facebook)) Facebook.Text = league.Facebook; int index = league.Cultures.IndexOf(league.Cultures.Where(x => x.LCID == league.CultureSelected).FirstOrDefault()); Cultures.ItemsSource = league.Cultures; Cultures.SelectedIndex = index; if (league.RuleSetsPlayedEnum.HasFlag(RuleSetsUsedEnum.MADE)) MADE.IsChecked = true; if (league.RuleSetsPlayedEnum.HasFlag(RuleSetsUsedEnum.OSDA)) OSDA.IsChecked = true; if (league.RuleSetsPlayedEnum.HasFlag(RuleSetsUsedEnum.RDCL)) RDCL.IsChecked = true; if (league.RuleSetsPlayedEnum.HasFlag(RuleSetsUsedEnum.Renegade)) Renegade.IsChecked = true; if (league.RuleSetsPlayedEnum.HasFlag(RuleSetsUsedEnum.Texas_Derby)) TexasDerby.IsChecked = true; if (league.RuleSetsPlayedEnum.HasFlag(RuleSetsUsedEnum.The_WFTDA)) WFTDA.IsChecked = true; if (league.RuleSetsPlayedEnum.HasFlag(RuleSetsUsedEnum.USARS)) USARS.IsChecked = true; progressIndicator.IsVisible = false; } catch (Exception exception) { ErrorHandler.Save(exception, MobileTypeEnum.WP8); } }); } })); }
public static bool UpdateLeagueFromMobile(LeagueBase leagueToUpdate) { try { var dc = new ManagementContext(); var league = dc.Leagues.Include("ContactCard").Where(x => x.LeagueId == leagueToUpdate.LeagueId).FirstOrDefault(); league.Name = leagueToUpdate.Name; league.WebSite = leagueToUpdate.Website; league.Twitter = leagueToUpdate.Twitter; league.Instagram = leagueToUpdate.Instagram; league.Facebook = leagueToUpdate.Facebook; league.RuleSetsPlayedEnum = (long)leagueToUpdate.RuleSetsPlayedEnum; league.CultureLCID = leagueToUpdate.CultureSelected; if (leagueToUpdate.Founded != null && leagueToUpdate.Founded != new DateTime() && leagueToUpdate.Founded > DateTime.UtcNow.AddYears(-100)) league.Founded = leagueToUpdate.Founded; var emailDb = league.ContactCard.Emails.Where(x => x.IsDefault == true).FirstOrDefault(); if (emailDb != null) { emailDb.EmailAddress = leagueToUpdate.Email; } else { Email em = new Email(); em.ContactCard = league.ContactCard; em.EmailAddress = leagueToUpdate.Email; em.IsDefault = true; league.ContactCard.Emails.Add(em); } //int numberType = Convert.ToInt32(CommunicationTypeEnum.PhoneNumber); var phone = league.ContactCard.Communications.Where(x => x.CommunicationTypeEnum == (byte)CommunicationTypeEnum.PhoneNumber).FirstOrDefault(); if (phone != null) phone.Data = leagueToUpdate.PhoneNumber; else { Communication com = new Communication(); com.Data = leagueToUpdate.PhoneNumber; //com.CommunicationType = dc.CommunicationType.Where(x => x.CommunicationTypeId == numberType).FirstOrDefault(); com.CommunicationTypeEnum = (byte)CommunicationTypeEnum.PhoneNumber; com.ContactCard = league.ContactCard; com.IsDefault = true; league.ContactCard.Communications.Add(com); } var addresses = league.ContactCard.Addresses.Where(x => x.IsDefault == true).FirstOrDefault(); if (addresses == null) if (league.ContactCard.Addresses.Count > 0) addresses = league.ContactCard.Addresses.FirstOrDefault(); if (addresses == null) { addresses = new Address(); addresses.ContactCard = league.ContactCard; } addresses.CityRaw = leagueToUpdate.City; addresses.StateRaw = leagueToUpdate.State; addresses.Zip = leagueToUpdate.ZipCode; var countryDb = dc.Countries.Where(x => x.Name.ToLower() == leagueToUpdate.Country.ToLower()).FirstOrDefault(); if (countryDb == null) countryDb = dc.Countries.Where(x => x.Code.ToLower() == leagueToUpdate.Country.ToLower()).FirstOrDefault(); addresses.Country = countryDb; var coords = OpenStreetMap.FindLatLongOfAddress(addresses.Address1, addresses.Address2, addresses.Zip, addresses.CityRaw, addresses.StateRaw, addresses.Country != null ? addresses.Country.Name : string.Empty); if (coords != null) { addresses.Coords = new System.Device.Location.GeoCoordinate(); addresses.Coords.Latitude = coords.Latitude; addresses.Coords.Longitude = coords.Longitude; addresses.Coords.Altitude = 0; addresses.Coords.Course = 0; addresses.Coords.HorizontalAccuracy = 1; addresses.Coords.Speed = 0; addresses.Coords.VerticalAccuracy = 1; } addresses.IsDefault = true; int c = dc.SaveChanges(); return c > 0; } catch (Exception exception) { ErrorDatabaseManager.AddException(exception, exception.GetType()); } return false; }