Exemple #1
0
 public async Task<UserListModel> GetUserList(int page)
 {
     try
     {
         //if has internet connection: call the rest service
         //if not, get offline data
         if (await ConnectivityHelper.CheckConnectivityAsync())
         {
             string uri = String.Format(Constants.ApiUri+ "/api/users?per_page={0}", 50);
             var response = await _requestProvider.GetAsync<UserListModel>(uri);
             if (response == null)
             {
                 response = new UserListModel();
             }
             Settings.UserList = response;
             return response;
         }
         else
         {
             return Settings.UserList;
         }
     }
     catch (Exception ex)
     {
         if (Settings.UserList != null)
         {
             return Settings.UserList;
         }
         else
         {
             return new UserListModel() { Users = new List<UserModel>() };
         }
     }
 }
Exemple #2
0
        /// <summary>
        /// Initializes a new instance of the <see cref="AuthViewModel"/> class.
        /// </summary>
        public AuthViewModel(string webmapURL, string arcGISOnlineURL, string appClientID, string redirectURL, string userName, string oAuthRefreshToken)
        {
            _webmapURL         = webmapURL;
            _arcGISOnlineURL   = arcGISOnlineURL;
            _appClientID       = appClientID;
            _redirectURL       = redirectURL;
            _userName          = userName;
            _oAuthRefreshToken = oAuthRefreshToken;

            // Watch for oAuth token changes
            BroadcastMessenger.Instance.BroadcastMessengerValueChanged += (o, args) =>
            {
                if (args.Args.Key == BroadcastMessageKey.OAuthRefreshToken)
                {
                    _oAuthRefreshToken = args.Args.Value?.ToString();
                }
            };

            // Set up authentication manager to handle signing in
            UpdateAuthenticationManager();

            // test if refresh token is available and sign the user in
            if (!string.IsNullOrEmpty(_oAuthRefreshToken))
            {
                // if device is online, sign user in automatically
                ConnectivityHelper.IsWebmapAccessible(_webmapURL).ContinueWith(t =>
                {
                    if (t.Result)
                    {
                        SignInCommand.Execute(null);
                    }
                });
            }
        }
        public override async void OnNavigatedTo(INavigationParameters parameters)
        {
            if (!(await ConnectivityHelper.CheckInternetConection(this.dialogService)))
            {
                return;
            }

            await GetEuDocsByClassifier("57B81A94-F630-4D12-A062-1882AF4DF437;938AD68B-0057-4B28-AEA1-99EC41764C13");
        }
        public override async void OnNavigatedTo(INavigationParameters parameters)
        {
            if (!(await ConnectivityHelper.CheckInternetConection(this.dialogService)))
            {
                return;
            }

            await GetEuDocsByClassifier("AC2A647D-CDF0-4BAE-8B26-AE63B95B0A43");
        }
Exemple #5
0
        public override async void OnNavigatedTo(INavigationParameters parameters)
        {
            if (!(await ConnectivityHelper.CheckInternetConection(this.dialogService)))
            {
                return;
            }

            await GetEuDocsByClassifier("F2338AFC-30BD-4270-89AA-FBC2653F1C0C");
        }
Exemple #6
0
        public static async Task <MissionListViewModel> LoadData()
        {
            MissionListViewModel model = new MissionListViewModel();
            ConnectivityHelper <List <MissionSimpleDto> > connectable = new ConnectivityHelper <List <MissionSimpleDto> >();
            MissionRepository repository = new MissionRepository();
            var missions = await connectable.MakeRemoteCall(async() => await repository.GetMissionsForList(), () => {});

            model.Missions.AddRange(missions);
            model.Loading = false;
            return(model);
        }
        public virtual async Task InitializeAsync(object navigationData)
        {
            IsConnected = true;
            Plugin.Connectivity.CrossConnectivity.Current.ConnectivityChanged += async(sender, args) =>
            {
                IsConnected = (await ConnectivityHelper.CheckConnectivityAsync());
            };

            IsConnected = true;
            IsConnected = await ConnectivityHelper.CheckConnectivityAsync();
        }
Exemple #8
0
        public void ShouldAbortPull_MobileDataEnabled_Should_ReturnFalse()
        {
            // Given
            PullRules pullRules = new PullRules();

            ConnectivityHelper.MockConnectionProfiles(new List <ConnectionProfile> {
                ConnectionProfile.Cellular
            });
            LocalPreferencesHelper.SetIsDownloadWithMobileDataEnabled(true);

            // When
            bool shouldAbortPull = pullRules.ShouldAbortPull();

            // Then
            Assert.False(shouldAbortPull);

            ConnectivityHelper.ResetConnectionProfiles();
        }
Exemple #9
0
        private void GetHostDetail()
        {
            if (IsBusy || !ConnectivityHelper.IsNetworkAvailable())
            {
                return;
            }

            IsBusy = true;
            Task.Run(async() =>
            {
                return(await databaseService.GetHostDetails(scannedToken));
            }).ContinueWith(task => Device.BeginInvokeOnMainThread(() =>
            {
                IsBusy = false;
                if (task.Status == TaskStatus.RanToCompletion)
                {
                    if (task.Result != null)
                    {
                        if (task.Result.Success)
                        {
                            OnLogInSuccess(task.Result.Host);
                        }
                        else if (!string.IsNullOrWhiteSpace(task.Result.Message))
                        {
                            CoreMethods.DisplayAlert("", task.Result.Message, TranslateExtension.GetValue("ok"));
                        }
                        else
                        {
                            CoreMethods.DisplayAlert("Request Fail", "Property not found", TranslateExtension.GetValue("ok"));
                        }
                    }
                    else
                    {
                        CoreMethods.DisplayAlert("", TranslateExtension.GetValue("dialog_message_server_error"), TranslateExtension.GetValue("ok"));
                    }
                }
                else if (task.IsFaulted)
                {
                    CoreMethods.DisplayAlert(TranslateExtension.GetValue("error"), task.Exception?.GetBaseException().Message, TranslateExtension.GetValue("ok"));
                }
            }));
        }
Exemple #10
0
        public override RelatedFeatureTypes GetHelper(ConnectivityHelper p_helper)
        {
            RelatedFeatureTypes oConnHelper = null;

            switch (p_helper)
            {
            case ConnectivityHelper.InsideFeatures:
                oConnHelper = new InsideFeatures();
                break;

            case ConnectivityHelper.LoadSideORDSFeatures:
                oConnHelper = new LoadSideOrDSFeatures();
                break;

            case ConnectivityHelper.OutsideFeatures:
                oConnHelper = new OutsideFeatures();
                break;

            case ConnectivityHelper.ParallelFeatures:
                oConnHelper = new ParallelFeatures();
                break;

            case ConnectivityHelper.SharedLoads:
                oConnHelper = new SharedLoads();
                break;

            case ConnectivityHelper.SharedSources:
                oConnHelper = new SharedSources();
                break;

            case ConnectivityHelper.SourceSideOrUSFeatures:
                oConnHelper = new SourceSideOrUSFeatures();
                break;

            default:
                break;
            }
            return(oConnHelper);
        }
        private async Task TryConnectAsync()
        {
            if (_isConnecting)
            {
                return;
            }

            try
            {
                _isConnecting = true;
                IsBusy        = true;
                IsConnected   = await ConnectivityHelper.CheckConnectivityAsync();
            }
            catch
            {
            }
            finally
            {
                IsBusy        = false;
                _isConnecting = false;
            }
        }
Exemple #12
0
        public void ShouldAbortPull_MobileDataEnabled_NotSavedLog()
        {
            // Given
            PullRules pullRules = new PullRules();

            ConnectivityHelper.MockConnectionProfiles(new List <ConnectionProfile> {
                ConnectionProfile.Cellular
            });
            LocalPreferencesHelper.SetIsDownloadWithMobileDataEnabled(true);

            // When
            string pullKeyInfoPre = _developerToolsService.LastPullHistory;

            pullRules.ShouldAbortPull();
            string pullKeyInfoPost = _developerToolsService.LastPullHistory;

            // Then
            Assert.Empty(pullKeyInfoPre);
            Assert.Empty(pullKeyInfoPost);

            ConnectivityHelper.ResetConnectionProfiles();
        }
        private void NewTermsConditions(object sender)
        {
            if (IsBusy || !ConnectivityHelper.IsNetworkAvailable())
            {
                return;
            }

            Task.Run(async() =>
            {
                return(await termsConditionsService.NewTermsConditions(Host));
            }).ContinueWith(task => Device.BeginInvokeOnMainThread(() =>
            {
                if (task.Status == TaskStatus.RanToCompletion)
                {
                    if (task.Result != null)
                    {
                        if (task.Result.Success)
                        {
                            CoreMethods.DisplayAlert("Update Successfully", task.Result.Message, TranslateExtension.GetValue("ok"));
                            CoreMethods.PopViewModel();
                        }
                        else
                        {
                            CoreMethods.DisplayAlert("Update Unsuccessfully", task.Result.Message, TranslateExtension.GetValue("ok"));
                        }
                    }
                    else
                    {
                        CoreMethods.DisplayAlert("Update Unsuccessfully", TranslateExtension.GetValue("dialog_message_server_error"), TranslateExtension.GetValue("ok"));
                    }
                }
                else if (task.IsFaulted)
                {
                    CoreMethods.DisplayAlert(TranslateExtension.GetValue("error"), task.Exception?.GetBaseException().Message, TranslateExtension.GetValue("ok"));
                }
            }));
        }
        public Task <bool> SyncFromServer(int method, Action onSuccess, Action <string> onError = null, bool showOverlay = false)
        {
            if (!ConnectivityHelper.IsNetworkAvailable(method == 2))
            {
                Device.BeginInvokeOnMainThread(() =>
                {
                    onError?.Invoke(TranslateExtension.GetValue("alert_no_internt_message"));
                });
                return(Task.FromResult(false));
            }

            if (showOverlay)
            {
                DependencyService.Get <IPopupService>().ShowContent(new LoadingScreen1()
                {
                    Message = TranslateExtension.GetValue("content_message_synchronizing")
                });
            }

            Task.Run(async() =>
            {
                return(await SyncFromServer(method));
            }).ContinueWith(task => Device.BeginInvokeOnMainThread(() =>
            {
                if (showOverlay)
                {
                    DependencyService.Get <IPopupService>().HideContent();
                }

                if (task.Status == TaskStatus.RanToCompletion)
                {
                    if (task.Result)
                    {
                        if (showOverlay)
                        {
                            UserDialogs.Instance.Toast(new ToastConfig(TranslateExtension.GetValue("alert_message_sync_completed"))
                            {
                            });
                        }
                        onSuccess?.Invoke();
                    }
                    else
                    {
                        if (showOverlay)
                        {
                            UserDialogs.Instance.Toast(new ToastConfig(TranslateExtension.GetValue("alert_message_sync_failed"))
                            {
                            });
                        }
                        onError?.Invoke(TranslateExtension.GetValue("alert_message_sync_failed"));
                    }
                }
                else if (task.IsFaulted && task.Exception?.GetBaseException().Message is string message)
                {
                    if (showOverlay)
                    {
                        UserDialogs.Instance.Toast(new ToastConfig(message)
                        {
                        });
                    }
                    onError?.Invoke(message);
                }
            }));

            return(Task.FromResult(true));
        }
Exemple #15
0
 public abstract RelatedFeatureTypes GetHelper(ConnectivityHelper connHelper);