public override Task Update (bool isRefresh = false){ if (People == null) { var peoples = new List<TalkPair> (); var people = Globals.Talks.Where (t => t.Section == Globals.SelectedSection).Distinct (new PeopleComparer ()).ToList (); Time = "De " + people.First ().Time.ToString ("HH:mm") + " a " + people.Last ().Time.ToString ("HH:mm") + " horas"; Rational = people.First ().Rational; for (var i = 0; i < people.Count (); i += 2) { var pair = new TalkPair (); if (i < people.Count ()) pair.Talk1 = people [i]; if (i+1 < people.Count ()) pair.Talk2 = people [i+1]; peoples.Add (pair); } SectionTitle = Globals.SelectedSection; Logo = people.First ().LogoUrl; People = peoples; } Height = ((int)Math.Ceiling(People.Count / 2d)) * 60; return base.Update (isRefresh); }
public override async Task Update (bool isRefresh = false) { if (Globals.Hosts == null) { using (new LoadingWrapper(this, "Cargando...")) { try { var hostsResult = await Globals.Json.GetHosts(); Globals.Hosts = hostsResult.Hosts.ToList(); } catch { await this.Page.DisplayAlert ("Uh oh!", "Parece que tenemos problemas con nuestro servidor, intenta más tarde de nuevo.", "Ok"); } } } if (Globals.Talks == null) { using (new LoadingWrapper (this, "Cargando...")) { try { var resp = await Globals.Json.GetTalks (); Globals.Talks = resp.Talks.ToList (); } catch { await this.Page.DisplayAlert ("Uh oh!", "Parece que tenemos problemas con nuestro servidor, intenta más tarde de nuevo.", "Ok"); } } } if (Globals.Sponsors == null) { using (new LoadingWrapper (this, "Cargando...")) { try { var sponsors = await Globals.Json.GetSponsors(); Globals.Sponsors = sponsors.Sponsors.ToList (); } catch { await this.Page.DisplayAlert ("Uh oh!", "Parece que tenemos problemas con nuestro servidor, intenta más tarde de nuevo.", "Ok"); } } } if (Hosts == null) { var hosts = new List<HostPair> (); var dis1 = Globals.Hosts; for (var i = 0; i < dis1.Count (); i += 2) { var pair = new HostPair (); if (i < dis1.Count ()) pair.Host1 = dis1 [i]; if (i+1 < dis1.Count ()) pair.Host2 = dis1 [i+1]; hosts.Add (pair); } Hosts = hosts; Height = ((int)Math.Ceiling(Globals.Hosts.Count / 2d)) * 160; } if (Talks == null) { var talks = new List<TalkPair> (); var dis2 = Globals.Talks.Distinct (new SectionComparer ()).ToList(); for (var i = 0; i < dis2.Count (); i += 2) { var pair = new TalkPair (); if (i < dis2.Count ()) pair.Talk1 = dis2 [i]; if (i+1 < dis2.Count ()) pair.Talk2 = dis2 [i+1]; talks.Add (pair); } Talks = talks; } }