Exemple #1
0
        public UserManagementViewModel(
            IDataApiClient dataApiClient,
            IReadonlyObjectDatabase <UserProfile> userDatabase)
        {
            this.dataApiClient = dataApiClient;

            try
            {
                var userProfileLoader = new UserProfileLoader(dataApiClient, userDatabase);
                var userProfiles      = Task.Run(() => userProfileLoader.LoadAsync()).Result
                                        .OrderBy(x => x.Username);
                UserProfiles = new ObservableCollection <UserProfileViewModel>(userProfiles);
            }
            catch (Exception e)
            {
                StaticMessageBoxSpawner.Show($"Failed to load user profiles: {e.InnermostException().Message}");
                UserProfiles = new ObservableCollection <UserProfileViewModel>();
            }
            CreateUserViewModel              = new CreateUserViewModel(userDatabase, dataApiClient);
            CreateUserViewModel.UserCreated += (sender, userProfile) => UserProfiles.Add(userProfile);

            SaveUserDetailsCommand = new RelayCommand(SaveUserDetails, () => SelectedUserProfile != null);
            AddRoleCommand         = new RelayCommand(AddRole, CanEditUser);
            RemoveRoleCommand      = new RelayCommand(RemoveRole, CanEditUser);
            DeleteUserCommand      = new RelayCommand(DeleteUser, CanEditUser);
        }
Exemple #2
0
        private UserProfile GetProfile(string Profile)
        {
            using (var w = new WebClient())
            {
                string Raw;
                var    _url = new Uri(new Uri(WPRoot), Profile);
                w.Encoding = System.Text.Encoding.UTF8;

                Raw = w.DownloadString(_url);
                var _profile = UserProfileLoader.ReadUserProfile(Raw);
                _profile.Ref = Profile;
                return(_profile);
            }
        }