Пример #1
0
        void ReleaseDesignerOutlets()
        {
            if (BtnAdd != null)
            {
                BtnAdd.Dispose();
                BtnAdd = null;
            }

            if (BtnClose != null)
            {
                BtnClose.Dispose();
                BtnClose = null;
            }

            if (MainTableView != null)
            {
                MainTableView.Dispose();
                MainTableView = null;
            }

            if (GroupsTableView != null)
            {
                GroupsTableView.Dispose();
                GroupsTableView = null;
            }
        }
Пример #2
0
        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;
        }
        public override void AwakeFromNib()
        {
            base.AwakeFromNib();

            this.BtnClose.Activated += (object sender, EventArgs e) => {
                this.Close();
                NSApplication.SharedApplication.StopModalWithCode(0);
            };
            this.BtnAdd.Activated += OnClickAddGroupButton;

            foreach (NSTableColumn column in GroupsTableView.TableColumns())
            {
                GroupsTableView.RemoveColumn(column);
            }
            GroupsTableView.Delegate = new TableDelegate();
            var groupInfo = new GroupMembershipDto()
            {
                Groups = new List <GroupDto> ()
            };

            ActionHelper.Execute(delegate() {
                var auth  = SnapInContext.Instance.AuthTokenManager.GetAuthToken(ServerDto.ServerName);
                groupInfo = SnapInContext.Instance.ServiceGateway.Tenant.Search(ServerDto, TenantName, DomainName, MemberType.GROUP, SearchType.NAME, auth.Token);
            });

            var listView = new GroupsDataSource {
                Entries = groupInfo.Groups
            };
            var columnNames = new List <ColumnOptions> {
                new ColumnOptions {
                    Id = "Name", DisplayName = "Group Name", DisplayOrder = 1, Width = 500
                },
            };
            var columns = ListViewHelper.ToNSTableColumns(columnNames);

            foreach (var column in columns)
            {
                GroupsTableView.AddColumn(column);
            }
            GroupsTableView.DataSource = listView;
            GroupsTableView.ReloadData();
        }
Пример #4
0
        public override void AwakeFromNib()
        {
            base.AwakeFromNib();

            this.BtnClose.Activated += (object sender, EventArgs e) => {
                this.Close();
                NSApplication.SharedApplication.StopModalWithCode(0);
            };
            this.BtnAdd.Activated       += OnClickAddGroupButton;
            this.SearchButton.Activated += (object sender, EventArgs e) => {
                if (!IsUserSearch)
                {
                    var domain = ((NSString)DomainComboBox.SelectedValue).ToString();
                    var filter = (MemberTypeFilter)((int)MemberTypeComboBox.SelectedIndex);
                    Search(NameTextString.StringValue, domain, filter);
                }
                else
                {
                    Search(NameTextString.StringValue, DomainName, MemberTypeFilter.Groups);
                }
            };
            foreach (NSTableColumn column in GroupsTableView.TableColumns())
            {
                GroupsTableView.RemoveColumn(column);
            }
            var columnNames = new List <ColumnOptions> {
                new ColumnOptions {
                    Id = "Name", DisplayName = "Name", DisplayOrder = 1, Width = 500
                },
            };
            var columns = ListViewHelper.ToNSTableColumns(columnNames);

            foreach (var column in columns)
            {
                GroupsTableView.AddColumn(column);
            }
            GroupsTableView.AllowsMultipleSelection = true;
            GroupsTableView.Delegate = new TableDelegate();
            GetIdentitySources();
        }
Пример #5
0
        void ReleaseDesignerOutlets()
        {
            if (BtnAdd != null)
            {
                BtnAdd.Dispose();
                BtnAdd = null;
            }

            if (BtnClose != null)
            {
                BtnClose.Dispose();
                BtnClose = null;
            }

            if (DomainComboBox != null)
            {
                DomainComboBox.Dispose();
                DomainComboBox = null;
            }

            if (GroupsTableView != null)
            {
                GroupsTableView.Dispose();
                GroupsTableView = null;
            }

            if (MainTableView != null)
            {
                MainTableView.Dispose();
                MainTableView = null;
            }

            if (MemberTypeComboBox != null)
            {
                MemberTypeComboBox.Dispose();
                MemberTypeComboBox = null;
            }

            if (NameTextString != null)
            {
                NameTextString.Dispose();
                NameTextString = null;
            }

            if (SearchButton != null)
            {
                SearchButton.Dispose();
                SearchButton = null;
            }

            if (WarningLabel != null)
            {
                WarningLabel.Dispose();
                WarningLabel = null;
            }

            if (MemberTypeLabel != null)
            {
                MemberTypeLabel.Dispose();
                MemberTypeLabel = null;
            }

            if (DomainLabel != null)
            {
                DomainLabel.Dispose();
                DomainLabel = null;
            }
        }