public static void UpdateTicket(PNR pnr, NavigationService navigation) { Logger.MethodCalled("Functions.UpdateTicket(PNR, NavigationService)", new object[] { pnr }); if (!App.IsInternetAvailable) { var savedTicket = Database.SavedData.Tickets.SingleOrDefault(x => x.PNR.Code == pnr.Code); if (savedTicket == null) { App.ShowProgress("internet bağlantınızı kontrol ediniz", ProgressType.Warning, ProgressTime.Normal); } else { App.ShowProgress("güncel bilgiler yüklenemedi", ProgressType.Error, ProgressTime.Normal); App.ShowProgress("kayıtlı bilgiler yükleniyor", ProgressType.Warning, ProgressTime.Normal); Database.TempData.Ticket = savedTicket; var timer = new DispatcherTimer(); timer.Interval = TimeSpan.FromMilliseconds(2000); timer.Tick += (c, r) => { timer.Stop(); App.HideProgress(); navigation.Navigate(new Uri("/Pages/TicketAction/DetailsPage.xaml", UriKind.RelativeOrAbsolute)); }; timer.Start(); } } else { App.ShowProgress("bilet güncelleniyor..."); App.AddBackPressedEvent(_ticketUpdateBackPressed); TicketRequests.TicketRequest.OnCompleted = (response) => { var ticket = response.Result; Database.TempData.Ticket = ticket; App.RemoveBackPressedEvent(_ticketUpdateBackPressed); App.HideProgress(); if (ticket == null) { App.ShowProgress("bilet bulunamadı", ProgressType.Error, ProgressTime.Normal); } else { Database.UpdateTicket(ticket); navigation.Navigate(new Uri("/Pages/TicketAction/DetailsPage.xaml", UriKind.RelativeOrAbsolute)); } }; TicketRequests.GetTicket(pnr); } }
private void btnSearch_Clicked(object sender, EventArgs e) { if (SearchPanel.Visibility == Visibility.Collapsed) { OpenSearchPanel(); } else { if (string.IsNullOrEmpty(txtPNR.Value) || string.IsNullOrEmpty(txtParameter.Value)) { App.ShowProgress("boş bıraktığınız alan(lar) var", ProgressType.Warning, ProgressTime.Normal); } else if (!App.IsInternetAvailable) { App.ShowProgress("internet bağlantınızı kontrol ediniz", ProgressType.Warning, ProgressTime.Normal); } else { btnSearch.IsActivated = false; btnCancel.IsActivated = false; App.AddBackPressedEvent(BackPressedForSearch); App.ShowProgress("bilet aranıyor..."); TicketRequests.TicketRequest.OnCompleted = (response) => { var ticket = response.Result; Database.TempData.Ticket = ticket; App.HideProgress(); btnSearch.IsActivated = true; btnCancel.IsActivated = true; App.RemoveBackPressedEvent(BackPressedForSearchPanel); if (response.Status != ResponseStatus.Successful) { App.ShowProgress("bu bilgilere ait bilet bulunamadı", ProgressType.Error, ProgressTime.Normal); } else { CloseSearchPanel(); Database.AddTicket(ticket); NavigationService.Navigate(new Uri("/Pages/TicketAction/DetailsPage.xaml", UriKind.RelativeOrAbsolute)); } }; TicketRequests.GetTicket(Database.TempData.PNR); } } }