Beispiel #1
0
        public static bool Login(string username, string password)
        {
            var userInfo = Auth.Authenticate(username, password);

            if (userInfo == null)
            {
                errorLogger.SaveError(0, 1, 1, 2, "Login Attempt", "Warehouse", new InvalidCredentialException("Invalid credentials, Username = "******"Login Window", "Successful Login");
            return(true);
        }
Beispiel #2
0
 private void BtnDisableClick(object sender, EventArgs e)
 {
     if (CurrentUser.IsActive == true)
     {
         var result = ViewHelper.ShowConfirmDialog("Do you want to disable this user?");
         if (result == DialogResult.Yes)
         {
             CurrentUser.IsActive = false;
             repository.Users.Update(CurrentUser);
             //Helpers.SecurityHelper.EnableDisableUser(CurrentUser.UserID);
             ViewHelper.ShowSuccessMessage("User disabled successfuly.");
             activityLogger.SaveAction(CurrentUser.UserID, 1, "Disable user", "User disabled successfuly.");
             Refresh(CurrentUser.UserID);
         }
         else
         {
             Exception ex = new Exception("Unable to disable user");
             //errorLogger.SaveError(CurrentUser.UserID, 1, 1, 2, "Disable user account", "Warehouse", ex);
             return;
         }
     }
     else if (CurrentUser.IsActive == false)
     {
         var result = ViewHelper.ShowConfirmDialog("Do you want to enable this user?");
         if (result == DialogResult.Yes)
         {
             CurrentUser.IsActive = true;
             repository.Users.Update(CurrentUser);
             //SecurityHelper.EnableDisableUser(CurrentUser.UserID);
             ViewHelper.ShowSuccessMessage("User password enabled successfuly.");
             activityLogger.SaveAction(CurrentUser.UserID, 1, "Enable user", "User enabled successfuly.");
             Refresh(CurrentUser.UserID);
         }
         else
         {
             Exception ex = new Exception("Unable to enable user account.");
             errorLogger.SaveError(CurrentUser.UserID, 1, 1, 2, "Enable user account", "Warehouse", ex);
             return;
         }
     }
     else
     {
         Exception ex = new Exception("Error disabling user account.");
         ViewHelper.ShowErrorMessage("Error disabling user account.");
         errorLogger.SaveError(CurrentUser.UserID, 1, 1, 2, "Enable/Disable user account", "Warehouse", ex);
         // this.Close();
     }
 }
        private void okCommand_Click(object sender, EventArgs e)
        {
            if (!validateForm())
            {
                return;
            }
            if (!passwordTextEdit.Text.Equals(confirmPasswordTextEdit.Text))
            {
                ViewHelper.ShowErrorMessage("The password was not correctly confirmed. Please ensure that the password and confirmation match exactly.");
                activityLogger.SaveAction(CurrentUser.UserID, 1, "Set Password Window", "The password was not correctly confirmed. Please ensure that the password and confirmation match exactly.");
                this.Close();
            }

            try
            {
                CurrentUser.SetPassword(passwordTextEdit.EditValue.ToString());
                _repository.Users.Update(CurrentUser);
                //SecurityHelper.ResetPassword(CurrentUser.UserName, passwordTextEdit.Text);
                ViewHelper.ShowSuccessMessage("User password has been set.");
                activityLogger.SaveAction(CurrentUser.UserID, 1, "Set Password Window", "User password set succesfully");
                this.Close();
            }
            catch (Exception exception)
            {
                ViewHelper.ShowErrorMessage("Error occured while setting new password.", exception);
                errorLogger.SaveError(CurrentUser.UserID, 1, 1, 2, "Unable to set password", "Warehouse", exception);
            }
        }
        private void BtnSaveGroupClick(object sender, EventArgs e)
        {
            if (grouplistbox.SelectedItem == null)
            {
                ViewHelper.ShowErrorMessage("There is no group to be added.");
                activityLogger.SaveAction(CurrentUser.UserID, 1, "Group Window", "There is no group to be added.");
                this.Close();
            }
            usergroupbindingSource.EndEdit();
            var obj = usergroupbindingSource.DataSource as List <UserGroup>;

            try
            {
                var selectedItems = grouplistbox.SelectedItems;
                foreach (var anItem in selectedItems)
                {
                    var item = anItem as Group;
                    //foreach (var groupPermission in item.GroupPermissions)
                    //{
                    //    var permission = new Permission
                    //    {
                    //        UserID = CurrentUser.UserID,
                    //        OperationID = groupPermission.OperationID,
                    //        Allow = groupPermission.Allow
                    //    };
                    //    repository.Permissions.Add(permission);
                    //   activityLogger.SaveAction(CurrentUser.UserID, 1, "User Permission Window", "User Permission Succesfully Added");
                    //  }
                    var ug = repository.UserGroups.FindBy(g => g.GroupID == item.GroupID && g.UserID == CurrentUser.UserID).FirstOrDefault();
                    if (ug != null)
                    {
                        ug.GroupStatus = true;
                        repository.UserGroups.Update(ug);
                    }
                    else
                    {
                        var usergroup = new UserGroup
                        {
                            GroupID     = item.GroupID,
                            UserID      = CurrentUser.UserID,
                            GroupStatus = true
                        };
                        repository.UserGroups.Add(usergroup);
                        activityLogger.SaveAction(CurrentUser.UserID, 1, "Group Window", "Group Succesfully Added");
                    }
                }
                this.Close();
            }
            catch (Exception ex)
            {
                ViewHelper.ShowErrorMessage("Unable to create user group!");
                errorLogger.SaveError(CurrentUser.UserID, 1, 1, 2, "Add group attempt", "Warehouse", ex);
            }
        }
        private void BtnSaveAccountClick(object sender, EventArgs e)
        {
            if (accountlistBox.SelectedItem == null)
            {
                ViewHelper.ShowErrorMessage("There is no account to be added.");
                activityLogger.SaveAction(CurrentUser.UserID, 1, "User Account list", "There is no account to be added.");
                this.Close();
            }
            accountuserbindingSource.EndEdit();
            var obj = accountuserbindingSource.DataSource as List <AccountUser>;

            try
            {
                var selectedItems = accountlistBox.SelectedItems;
                foreach (var anItem in selectedItems)
                {
                    var item = anItem as Activity;
                    // check if there is a deactivated account by the same account id
                    var aUser =
                        repository.AccountUsers.FindBy(u => u.UserID == CurrentUser.UserID && u.AccountID == item.ActivityID).FirstOrDefault();

                    if (aUser != null)
                    {
                        aUser.IsActive = true;
                        repository.AccountUsers.Update(aUser);
                    }
                    else
                    {
                        var accountUser = new AccountUser
                        {
                            AccountID = item.ActivityID,
                            UserID    = CurrentUser.UserID,
                            IsActive  = true
                        };

                        repository.AccountUsers.Add(accountUser);
                    }
                }

                activityLogger.SaveAction(CurrentUser.UserID, 1, "User Account list", "Account Succesfully Added");
                this.Close();
            }
            catch (Exception ex)
            {
                ViewHelper.ShowErrorMessage("Unable to create account", ex);
                errorLogger.SaveError(CurrentUser.UserID, 1, 1, 2, "Add account attempt", "Warehouse", ex);
            }
        }
        private void btnStoreSave_Click(object sender, EventArgs e)
        {
            if (storelistBox.SelectedItem == null)
            {
                ViewHelper.ShowErrorMessage("There is no store to be added.");
                activityLogger.SaveAction(CurrentUser.UserID, 1, "User Store Window", "There is no store to be added.");
                this.Close();
            }
            userstorebindingSource.EndEdit();
            var obj = userstorebindingSource.DataSource as List <StoreUser>;

            try
            {
                var selectedItems = storelistBox.SelectedItems;
                foreach (var anItem in selectedItems)
                {
                    var item = anItem as Store;

                    // check if there is a diabled store entity
                    var aStore = repository.StoreUsers.FindBy(s => s.UserID == CurrentUser.UserID && s.StoreID == item.StoreID).
                                 FirstOrDefault();
                    if (aStore != null)
                    {
                        aStore.IsActive = true;
                        repository.StoreUsers.Update(aStore);
                    }
                    else
                    {
                        var storeuser = new StoreUser
                        {
                            StoreID  = item.StoreID,
                            UserID   = CurrentUser.UserID,
                            IsActive = true
                        };
                        repository.StoreUsers.Add(storeuser);
                        activityLogger.SaveAction(CurrentUser.UserID, 1, "User Store Window",
                                                  "User store added Succesfully");
                    }
                }
                this.Close();
            }
            catch (Exception ex)
            {
                ViewHelper.ShowErrorMessage("Unable to create store", ex);
                errorLogger.SaveError(CurrentUser.UserID, 1, 1, 2, "Add store attempt", "Warehouse", ex);
            }
        }
        private void okCommand_Click(object sender, EventArgs e)
        {
            retryCount += 1;

            // If the user tries more than three times then they must restart the app
            //if (retryCount > 2) Application.Exit();

            if (!ValidateForm())
            {
                return;
            }
            var user     = userTextEdit.Text;
            var password = passwordTextEdit.Text;

            try
            {
                passwordTextEdit.Text = String.Empty;
                if (Helpers.SecurityHelper.Login(user, password))
                {
                    // Update the connection string for the logging.
                    ConnectionHelper.CurrentConnection.ApplicationName = string.Format("HCMIS.User-Managment-U-{0}", (SecurityHelper.CurrentPrincipal.Identity as
                                                                                                                      UserIdentity).UserID.ToString());
                    HCMIS.Logging.LogManager.ConnectionString = HCMIS.Security.Settings.ConnectionString = ConnectionHelper.CurrentConnection.ToString();

                    var shell = new MainWindow();
                    shell.FormClosed += new FormClosedEventHandler(shell_FormClosed);
                    shell.Show();
                    this.Hide();
                }
                else
                {
                    lblErrorMessage.Text = @"User Name or Password Incorrect";
                }
            }
            catch (InvalidCredentialException exception)
            {
                ViewHelper.ShowErrorMessage(exception.Message);
                errorLogger.SaveError(1, 1, 1, 2, "Login Attempt", "Warehouse", exception);
            }
        }