ScrewTurn.Wiki.PermissionsManager.btnSearch_Click C# (CSharp) Method

btnSearch_Click() protected method

protected btnSearch_Click ( object sender, EventArgs e ) : void
sender object
e System.EventArgs
return void
        protected void btnSearch_Click(object sender, EventArgs e)
        {
            string subject = txtNewSubject.Text.Trim().ToLowerInvariant();

            SubjectInfo[] currentSubjects = GetSubjects();

            if(subject.Length > 0) {
                // Find all groups and users whose name starts with the specified string

                lstFoundSubjects.Items.Clear();

                foreach(UserGroup group in Users.GetUserGroups()) {
                    if(group.Name.ToLowerInvariant().StartsWith(subject) &&
                        !IsAlreadyPresent(group.Name, SubjectType.Group, currentSubjects)) {

                        lstFoundSubjects.Items.Add(new ListItem(Properties.Messages.Group + ": " + group.Name, "G." + group.Name));
                    }
                }

                foreach(UserInfo user in Users.GetUsers()) {
                    if(user.Username.ToLowerInvariant().StartsWith(subject) &&
                        !IsAlreadyPresent(user.Username, SubjectType.User, currentSubjects)) {

                        lstFoundSubjects.Items.Add(new ListItem(Properties.Messages.User + ": " + user.Username, "U." + user.Username));
                    }
                }

                btnAdd.Enabled = lstFoundSubjects.Items.Count > 0;
            }
        }