Ejemplo n.º 1
0
        private string GetPermissionName(hMailServer.IMAPFolderPermission permission)
        {
            string name = "";

            switch (permission.PermissionType)
            {
            case eACLPermissionType.ePermissionTypeUser:
            {
                hMailServer.Account account = permission.Account;
                name = account.Address;
                break;
            }

            case eACLPermissionType.ePermissionTypeGroup:
            {
                hMailServer.Group group = permission.Group;
                name = group.Name;
                break;
            }

            case eACLPermissionType.ePermissionTypeAnyone:
            {
                name = EnumStrings.GetPermissionTypeString(permission.PermissionType);
                break;
            }
            }

            return(name);
        }
Ejemplo n.º 2
0
        private ListViewItem ListPermission(hMailServer.IMAPFolderPermission permission)
        {
            string name = "<Deleted>";

            try
            {
                name = GetPermissionName(permission);
            }
            catch (Exception)
            {
            }

            ListViewItem item = listACL.Items.Add(EnumStrings.GetPermissionTypeString(permission.PermissionType));

            item.SubItems.Add(name);
            item.Tag = permission;
            return(item);
        }
Ejemplo n.º 3
0
        private void FillCombos()
        {
            comboType.AddItem(EnumStrings.GetPermissionTypeString(eACLPermissionType.ePermissionTypeUser), eACLPermissionType.ePermissionTypeUser);

            if (_onlyUsers == false)
            {
                comboType.AddItem(EnumStrings.GetPermissionTypeString(eACLPermissionType.ePermissionTypeGroup), eACLPermissionType.ePermissionTypeGroup);
                comboType.AddItem(EnumStrings.GetPermissionTypeString(eACLPermissionType.ePermissionTypeAnyone), eACLPermissionType.ePermissionTypeAnyone);
            }

            comboType.SelectedIndex = 0;


            hMailServer.Domains domains = APICreator.Application.Domains;
            string domainNames          = domains.Names;

            Marshal.ReleaseComObject(domains);

            string[] rows = Microsoft.VisualBasic.Strings.Split(domainNames, "\r\n", -1, Microsoft.VisualBasic.CompareMethod.Binary);

            foreach (string row in rows)
            {
                if (string.IsNullOrEmpty(row))
                {
                    continue;
                }

                string[] properties = Microsoft.VisualBasic.Strings.Split(row, "\t", -1, Microsoft.VisualBasic.CompareMethod.Text);

                int    id   = Convert.ToInt32(properties[0]);
                string name = properties[1];

                if (_specificDomainID == 0 || _specificDomainID == id)
                {
                    comboDomains.AddItem(name, id);
                }
            }


            if (comboDomains.Items.Count > 0)
            {
                comboDomains.SelectedIndex = 0;
            }
        }