Beispiel #1
0
        void AddGroup(AnnGroupsRoles groupRoles, string groupName, AnnRoles roles)
        {
            groupRoles.GroupRoles.Add(groupName, roles);
            groupRoles.GroupUsers.Add(groupName, new List <string>());

            // Fill Groups Combo boxed
            GroupItem item = new GroupItem(groupName, roles);

            _chkLstGroups.Items.Add(item);
            _lstGroups.Items.Add(item);
        }
Beispiel #2
0
        void AddUser(AnnGroupsRoles groupRoles, string groupName, string userName)
        {
            if (!groupRoles.GroupUsers.ContainsKey(groupName))
            {
                groupRoles.GroupUsers.Add(groupName, new List <string>());
            }

            groupRoles.GroupUsers[groupName].Add(userName);

            if (!_lstUsers.Items.Contains(userName))
            {
                if (!string.IsNullOrEmpty(userName))
                {
                    _lstUsers.Items.Add(userName);
                }
            }
        }
Beispiel #3
0
        private void _btnLoad_Click(object sender, EventArgs e)
        {
            using (OpenFileDialog openFileDialog = new OpenFileDialog())
            {
                openFileDialog.Filter = "Annotations Roles File (.xml)|*.xml";
                if (openFileDialog.ShowDialog(this) == DialogResult.OK)
                {
                    XmlDocument document = new XmlDocument();
                    document.Load(openFileDialog.FileName);

                    XmlNodeList groups = document.GetElementsByTagName("Group");
                    if (groups != null && groups.Count > 0)
                    {
                        _lstUsers.Items.Clear();
                        _lstGroups.Items.Clear();
                        _chkLstGroups.Items.Clear();
                        AnnGroupsRoles groupRoles = new AnnGroupsRoles();
                        _automationManager.GroupsRoles = _groupsRoles;

                        foreach (XmlNode group in groups)
                        {
                            XmlAttributeCollection attribs = group.Attributes;
                            if (attribs != null)
                            {
                                string groupName = attribs["Name"].Value;
                                if (!string.IsNullOrEmpty(groupName))
                                {
                                    string rolesValue = attribs["Roles"].Value;
                                    string usersValue = attribs["Users"].Value;

                                    List <string> users = new List <string>(usersValue.Split(';'));

                                    AnnRoles roles = new AnnRoles();
                                    roles.AddRange(rolesValue.Split(';'));

                                    AddGroup(groupRoles, groupName, roles);


                                    // Fill Users
                                    foreach (string user in users)
                                    {
                                        AddUser(groupRoles, groupName, user);
                                    }
                                }
                            }

                            if (_groupsRoles.GroupRoles != null)
                            {
                                _groupsRoles.GroupRoles.Clear();
                            }

                            if (groupRoles.GroupRoles != null)
                            {
                                foreach (var item in groupRoles.GroupRoles)
                                {
                                    _groupsRoles.GroupRoles.Add(item.Key, item.Value);
                                }
                            }

                            if (_groupsRoles.GroupUsers != null)
                            {
                                _groupsRoles.GroupUsers.Clear();
                            }

                            if (groupRoles.GroupUsers != null)
                            {
                                foreach (var item in groupRoles.GroupUsers)
                                {
                                    _groupsRoles.GroupUsers.Add(item.Key, item.Value);
                                }
                            }
                        }
                    }
                    else
                    {
                        Messager.ShowError(this, "Invalid Roles File");
                    }
                }

                UpdateUI();
            }
        }