private void Search(string name, string domain, MemberTypeFilter filter) { var groupInfo = new GroupMembershipDto() { Groups = new List <GroupDto> (), Users = new List <UserDto>() }; if (filter != MemberTypeFilter.Users) { ActionHelper.Execute(delegate() { var auth = SnapInContext.Instance.AuthTokenManager.GetAuthToken(ServerDto.ServerName); var groupInfo1 = SnapInContext.Instance.ServiceGateway.Tenant.Search(ServerDto, TenantName, domain, MemberType.GROUP, SearchType.NAME, auth.Token, name); groupInfo.Groups = groupInfo1.Groups; }); } if (filter != MemberTypeFilter.Groups) { ActionHelper.Execute(delegate() { var auth = SnapInContext.Instance.AuthTokenManager.GetAuthToken(ServerDto.ServerName); var groupInfo2 = SnapInContext.Instance.ServiceGateway.Tenant.Search(ServerDto, TenantName, domain, MemberType.USER, SearchType.NAME, auth.Token, name); groupInfo.Users = groupInfo2.Users; }); } var listView = new GroupMembershipDataSource { Groups = groupInfo.Groups, Users = groupInfo.Users }; if (listView.Groups == null) { listView.Groups = new List <GroupDto> (); } if (listView.Users == null) { listView.Users = new List <UserDto> (); } GroupsTableView.DataSource = listView; GroupsTableView.ReloadData(); WarningLabel.Hidden = (listView.Groups.Count + listView.Users.Count) < 100; }
private void SearchMembers(string name, string domain, MemberTypeFilter filter) { lstGroupMembers.Items.Clear(); if (filter != MemberTypeFilter.Groups) { var users = _presenter.GetUsers(name, domain); if (users != null) { foreach (var member in users) { var item = new ListViewItem(member.Name, 4) { Tag = member, ImageIndex = (int)TreeImageIndex.User }; lstGroupMembers.Items.Add(item); } } } if (filter != MemberTypeFilter.Users) { var groups = _presenter.GetGroups(name, domain); if (groups != null) { foreach (var member in groups) { var item = new ListViewItem(member.GroupName, 5) { Tag = member, ImageIndex = (int)TreeImageIndex.Group }; lstGroupMembers.Items.Add(item); } } } lblWarning.Text = string.Format("Warning: Showing top {0} results. Please specify a more specific search criteria..", lstGroupMembers.Items.Count); lblWarning.Visible = lstGroupMembers.Items.Count > 100; }