Exemplo n.º 1
0
        private async void MasterDetailsView_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            if (sender is MasterDetailsView masterDetailsView)
            {
                if (masterDetailsView.SelectedItem is FolderModel folder)
                {
                    SelectedProject    = folder;
                    SelectedFileEntry  = null;
                    SelectedPlantOrder = null;
                    var number = System.Text.RegularExpressions.Regex.Split(folder.Name, @"\D+").FirstOrDefault().Trim();
                    if (int.TryParse(number, out int plantOrderNumber))
                    {
                        var plantOrders = await Proxy.GetPlantOrders(plantOrderNumber);

                        await this.Dispatcher.RunAsync(CoreDispatcherPriority.Normal, () =>
                        {
                            foreach (var plantOrder in plantOrders)
                            {
                                PlantOrders.Add(plantOrder);
                            }
                            CurrentPlantOrders.Load(plantOrders);
                            DataGridPlantOrder.ItemsSource = CurrentPlantOrders.GroupData().View;
                        });
                    }

                    if (_employeeId > 0)
                    {
                        _userSettings.LastSelectedProjectDir = folder.Name;
                        LocalUserSettings.Save(_employeeId, _userSettings);
                    }
                }
            }
        }
Exemplo n.º 2
0
        private void LoadUserSettings()
        {
            var employeeId = LocalClient.Employee?.EmployeeId;

            if (employeeId.HasValue)
            {
                _employeeId = employeeId.Value;
                var settings = LocalUserSettings.Load(_employeeId);
                if (settings != null)
                {
                    _userSettings = settings;
                    return;
                }
            }

            _userSettings = new LocalUserSettings();
        }
Exemplo n.º 3
0
        public IFileSystem Connect(string code, string uri)
        {
            if (string.IsNullOrEmpty(Provider))
            {
                throw new Exception("Empty provider supplied");
            }

            //TODO:
            Dictionary <string, object> auth = default;//AuthInstance.AuthorizationProvider.Get(Provider);

            if (auth == null)
            {
                throw new Exception("Application Authorization Not Found");
            }
            _plugin = CloudFileSystemPluginFactory.Instance.List.FirstOrDefault(a => a.Name == Provider);
            if (_plugin == null)
            {
                throw new Exception("Cannot find cloud provider '" + Provider + "'");
            }

            LocalUserSettings userSettings = new LocalUserSettings();

            if (ConnectionString != string.Empty)
            {
                userSettings = new LocalUserSettingWithCode();
                ((LocalUserSettingWithCode)userSettings).Code = code;
                ((LocalUserSettingWithCode)userSettings).OriginalRedirectUri = uri;
            }
            if (auth.ContainsKey("ClientId"))
            {
                userSettings.ClientId = (string)auth["ClientId"];
            }
            if (auth.ContainsKey("ClientSecret"))
            {
                userSettings.ClientSecret = (string)auth["ClientSecret"];
            }
            if (auth.ContainsKey("Scopes"))
            {
                userSettings.Scopes = (List <string>)auth["Scopes"];
            }
            if (auth.ContainsKey("UserAgent"))
            {
                userSettings.UserAgent = (string)auth["UserAgent"];
            }
            if (auth.ContainsKey("AcknowledgeAbuse"))
            {
                userSettings.AcknowledgeAbuse = (bool)auth["AcknowledgeAbuse"];
            }
            if (auth.ContainsKey("ClientAppFriendlyName"))
            {
                userSettings.ClientAppFriendlyName = (string)auth["ClientAppFriendlyName"];
            }
            IFileSystem res = _plugin.Init(Name, userSettings, ConnectionString);

            if (res.Status == Status.Ok)
            {
                string userauth = res.GetUserAuthorization();
                if (ConnectionString != userauth)
                {
                    NeedSave         = true;
                    ConnectionString = userauth;
                }
            }

            return(res);
        }