/// <summary>
 /// RefreshData method implmentation
 /// </summary>
 public void RefreshData(bool refreshgrid = false, bool clearselection = false)
 {
     this.UseWaitCursor = true;
     this.Cursor        = Cursors.WaitCursor;
     try
     {
         _lst = ManagementAdminService.GetUsers();
         if (clearselection)
         {
             this.GridView.RowCount = 0;
         }
         this.GridView.RowCount = ManagementAdminService.GetUsersCount();
         if (refreshgrid)
         {
             this.GridView.Refresh();
         }
         if (clearselection)
         {
             // this.GridView.ClearSelection();
         }
     }
     finally
     {
         this.UseWaitCursor = false;
         this.Cursor        = Cursors.Default;
     }
 }
        /// <summary>
        /// DeleteUserData method implementation
        /// </summary>
        internal bool DeleteUserData(MMCRegistrationList registrations)
        {
            bool ret = ManagementAdminService.DeleteUser(registrations);

            DeleteRows(registrations);
            return(ret);
        }
 /// <summary>
 /// newkeyBtn_Click event
 /// </summary>
 private void newkeyBtn_Click(object sender, EventArgs e)
 {
     KeysManager.NewKey(_upn);
     _secretkey              = KeysManager.EncodedKey(_upn);
     this.DisplayKey.Text    = _secretkey;
     this.qrCodeGraphic.Text = ManagementAdminService.GetQRCodeValue(_upn, this.DisplayKey.Text);
     if (!SyncDisabled)
     {
         userPropertyPage.SyncSharedUserData(this, true);
     }
 }
Ejemplo n.º 4
0
 /// <summary>
 /// OnInitialize method implmentation
 /// </summary>
 protected override void OnInitialize()
 {
     base.OnInitialize();
     try
     {
         ManagementAdminService.Initialize(true);
     }
     catch (Exception ex)
     {
         MessageBoxParameters msgp = new MessageBoxParameters();
         msgp.Caption = "MFA Error";
         msgp.Text    = ex.Message;
         msgp.Buttons = MessageBoxButtons.OK;
         msgp.Icon    = MessageBoxIcon.Error;
         this.Console.ShowDialog(msgp);
         this.RootNode.Children.Clear();
     }
 }
        /// <summary>
        /// BTNSendByMail_Click event
        /// </summary>
        private void BTNSendByMail_Click(object sender, EventArgs e)
        {
            Cursor crs = this.Cursor;

            try
            {
                this.Cursor = Cursors.WaitCursor;
                MMCRegistrationList lst = userPropertyPage.GetSharedUserData();
                foreach (MMCRegistration reg in lst)
                {
                    string secret = KeysManager.EncodedKey(reg.UPN);
                    ManagementAdminService.SendKeyByEmail(reg.MailAddress, reg.UPN, secret);
                }
            }
            finally
            {
                this.Cursor = crs;
            }
        }
        /// <summary>
        /// SetUserControlData method implmentation
        /// </summary>
        public void SetUserControlData(MMCRegistrationList lst, bool disablesync)
        {
            SyncDisabled = disablesync;
            try
            {
                MMCRegistration obj = ((MMCRegistrationList)lst)[0];
                _secretkey = KeysManager.EncodedKey(((MMCRegistration)obj).UPN);
                _upn       = ((MMCRegistration)obj).UPN;
                _email     = ((MMCRegistration)obj).MailAddress;

                if (string.IsNullOrEmpty(_email))
                {
                    this.EmailPrompt.Text = "Adresse email : ";
                    _emailnotset          = true;
                }
                else
                {
                    this.EmailPrompt.Text = string.Format("Adresse email : {0}", _email);
                    _emailnotset          = false;
                }
                if (!string.IsNullOrEmpty(_secretkey))
                {
                    this.DisplayKey.Text = _secretkey;
                    if (!string.IsNullOrEmpty(_upn))
                    {
                        this.qrCodeGraphic.Text = ManagementAdminService.GetQRCodeValue(_upn, this.DisplayKey.Text);
                    }
                    else
                    {
                        this.qrCodeGraphic.Text = string.Empty;
                    }
                }
                else
                {
                    userPropertyPage.Dirty = true;
                }
                UpdateControlsEnabled();
            }
            finally
            {
                SyncDisabled = false;
            }
        }
        /// <summary>
        /// EnsurePageForRowIndex method implmentation
        /// </summary>
        private int EnsurePageForRowIndex(int rowindex)
        {
            int idx  = rowindex % ManagementAdminService.Paging.PageSize;
            int page = (rowindex / ManagementAdminService.Paging.PageSize) + 1;

            if (page != ManagementAdminService.Paging.CurrentPage)
            {
                this.UseWaitCursor = true;
                this.Cursor        = Cursors.WaitCursor;
                try
                {
                    ManagementAdminService.Paging.CurrentPage = page;
                    _lst = ManagementAdminService.GetUsers();
                }
                finally
                {
                    this.UseWaitCursor = false;
                    this.Cursor        = Cursors.Default;
                }
            }
            return(idx);
        }
        /// <summary>
        /// DisableUserData method implementation
        /// </summary>
        internal void DisableUserData(MMCRegistrationList registrations)
        {
            MMCRegistrationList results = ManagementAdminService.DisableUser(registrations);

            EnableDisableRows(results);
        }
        /// <summary>
        /// AddUserData method implmentation
        /// </summary>
        internal void AddUserData(MMCRegistrationList registrations)
        {
            MMCRegistrationList results = ManagementAdminService.AddUser(registrations);

            AddRows(results);
        }
 /// <summary>
 /// SetUserData method implementation
 /// </summary>
 internal void SetUserData(MMCRegistrationList registrations)
 {
     ManagementAdminService.SetUser(registrations);
     UpdateRows(registrations);
 }
 /// <summary>
 /// BTNSendByMail_Click event
 /// </summary>
 private void BTNSendByMail_Click(object sender, EventArgs e)
 {
     ManagementAdminService.SendKeyByEmail(_email, _upn, this.DisplayKey.Text);
 }
        /// <summary>
        /// CanApplyDataChanges method implementation
        /// </summary>
        private bool CanApplyDataChanges(MMCRegistration registration)
        {
            bool result = false;

            if (registration.IsApplied)
            {
                return(true);
            }
            if (string.IsNullOrEmpty(registration.UPN))
            {
                MessageBoxParameters messageBoxParameters = new MessageBoxParameters();
                messageBoxParameters.Text    = "le nom de l'utilsateur ne peux être vide !";
                messageBoxParameters.Buttons = MessageBoxButtons.OK;
                messageBoxParameters.Icon    = MessageBoxIcon.Error;
                ParentSheet.ShowDialog(messageBoxParameters);
                ParentSheet.SetActivePage(0);
            }
            else if (string.IsNullOrEmpty(KeysManager.ReadKey(registration.UPN)))
            {
                MessageBoxParameters messageBoxParameters = new MessageBoxParameters();
                messageBoxParameters.Text    = "Une clé numérique valide est requise pour générer des codes TOTP permettant de valider votre identité !";
                messageBoxParameters.Buttons = MessageBoxButtons.OK;
                messageBoxParameters.Icon    = MessageBoxIcon.Error;
                ParentSheet.ShowDialog(messageBoxParameters);
                ParentSheet.SetActivePage(1);
            }
            else if (string.IsNullOrEmpty(registration.MailAddress))
            {
                MessageBoxParameters messageBoxParameters = new MessageBoxParameters();
                messageBoxParameters.Text    = "Une adresse de messagerie secondaire est requis pour recevoir les codes par e-mails !\rSouhaitez-vous continuer ?";
                messageBoxParameters.Buttons = MessageBoxButtons.YesNo;
                messageBoxParameters.Icon    = MessageBoxIcon.Warning;
                if (ParentSheet.ShowDialog(messageBoxParameters) == DialogResult.Yes)
                {
                    result = true;
                }
                else
                {
                    ParentSheet.SetActivePage(0);
                }
            }
            else if (!ManagementAdminService.IsValidEmail(registration.MailAddress))
            {
                MessageBoxParameters messageBoxParameters = new MessageBoxParameters();
                messageBoxParameters.Text    = "Adresse de messagerie secondaire invalide !";
                messageBoxParameters.Buttons = MessageBoxButtons.OK;
                messageBoxParameters.Icon    = MessageBoxIcon.Error;
                ParentSheet.ShowDialog(messageBoxParameters);
                ParentSheet.SetActivePage(0);
            }
            else if (string.IsNullOrEmpty(registration.PhoneNumber))
            {
                MessageBoxParameters messageBoxParameters = new MessageBoxParameters();
                messageBoxParameters.Text    = "Un N° de téléphone est requis pour recevoir les codes par SMS !\r\rSouhaitez-vous continuer ?";
                messageBoxParameters.Buttons = MessageBoxButtons.YesNo;
                messageBoxParameters.Icon    = MessageBoxIcon.Warning;
                if (ParentSheet.ShowDialog(messageBoxParameters) == DialogResult.Yes)
                {
                    result = true;
                }
                else
                {
                    ParentSheet.SetActivePage(0);
                }
            }
            else if (!ManagementAdminService.IsValidPhone(registration.PhoneNumber))
            {
                MessageBoxParameters messageBoxParameters = new MessageBoxParameters();
                messageBoxParameters.Text    = "Un N° de téléphone valide est requis pour recevoir les codes par SMS !";
                messageBoxParameters.Buttons = MessageBoxButtons.OK;
                messageBoxParameters.Icon    = MessageBoxIcon.Error;
                ParentSheet.ShowDialog(messageBoxParameters);
                ParentSheet.SetActivePage(0);
            }
            else
            {
                result = true;
            }
            return(result);
        }