public static async Task OpenDetailPage(this BaseContentPage page, string documentId, bool isSilent = false) { if (page.IsOpenning) { return; } page.ViewModel.IsLoadActivity = true; if (AppData.Discount.IsSynchingImages) { var isHasInternet = CrossConnectivity.Current.IsConnected; if (isHasInternet) { await AppData.Discount.SyncImagesFor(documentId); } } DiscountDetailData discountDetailData; try { discountDetailData = await AppData.Discount.Db.LoadDiscountDetail(documentId); if (discountDetailData != null) { page.OpenPage(new DiscountDetailPage(discountDetailData)); } } catch (Exception ex) { LoggerHelper.WriteException(ex); discountDetailData = null; } page.ViewModel.IsLoadActivity = false; if (discountDetailData == null && !isSilent) { var discountContentUI = new DiscountContentUI(); await page.DisplayAlert(null, discountContentUI.TitleErrLoading, discountContentUI.TxtOk); } }