using Serilog; using TINK.Model.Device; using TINK.ViewModel.Login; using Xamarin.Forms; using Xamarin.Forms.Xaml; namespace TINK.View.CopriWebView { [XamlCompilation(XamlCompilationOptions.Compile)] public partial class ManageAccountPage : ContentPage { public ManageAccountPage() { InitializeComponent(); ManageAccount.Navigating += (sender, ev) => { if (!ev.Url.ToUpper().EndsWith(".PDF")) { // Stay inside web view except for downloading pdf- files. this.IsEnabled = false; ActivityIndicatorLoading.IsVisible = true; ActivityIndicatorLoading.IsRunning = true; return; } DependencyService.Get().OpenUrl(ev.Url); }; ManageAccount.Navigated += (sender, ev) => { if (ev.Result == WebNavigationResult.Success) { this.IsEnabled = true; ActivityIndicatorLoading.IsVisible = false; ActivityIndicatorLoading.IsRunning = false; return; } Log.ForContext().Error("Navigation did not succeed.{@Event}{@Sender}", ev, sender); ManageAccount.Source = new HtmlWebViewSource { Html = "Kann persönliche Daten nicht anzeigen/ verwalten!
Verbindung mit Internet ok?" }; this.IsEnabled = true; ActivityIndicatorLoading.IsVisible = false; ActivityIndicatorLoading.IsRunning = false; }; ManageAccount.BindingContext = new ManageAccountViewModel( App.ModelRoot.ActiveUser.SessionCookie, Model.TinkApp.MerchantId, App.ModelRoot.NextActiveUri.Host); } } }