using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using CDPShared; using CircleSDK.Model; namespace CircleViewer.Dialogs { public partial class RevokeMemberDlg : Form { CDPWorker _cdp; public RevokeMemberDlg(CDPWorker cdp) { _cdp = cdp; InitializeComponent(); } private async void RevokeMemberDlg_Load(object sender, EventArgs e) { var reply = await _cdp.API.EnumCircleMembers(Properties.Settings.Default.DefaultCircleId); if (reply == null) { MessageBox.Show("Unable to enumerate members.", "Circle for Data Protection"); return; } lbMemberList.DataSource = reply; lbMemberList.DisplayMember = "DisplayName"; } private async void bnRevoke_Click(object sender, EventArgs e) { if (lbMemberList.SelectedItem == null) return; ProfileInfo pi = (ProfileInfo)lbMemberList.SelectedItem; if (MessageBox.Show("Are you sure?", "Circle for Data Protection", MessageBoxButtons.YesNo) == DialogResult.Yes) { var reply = await _cdp.API.RemoveMember(Properties.Settings.Default.DefaultCircleId, pi.ProfileId); if (reply == null) { MessageBox.Show("Unable to remove user", "Circle for Data Protection"); return; } else { string userName = Environment.UserDomainName + "\\" + Environment.UserName; await _cdp.AddMessage($"{userName} revoked user {pi.DisplayName}", (Int32)CircleViewMessages.MemberRevoked); } } } } }