Exemplo n.º 1
0
        //Inserts user after error checking/handling
        private void btnAdminUsersInsert_Click(object sender, EventArgs e)
        {
            if (!CheckPanelTextboxesIfEmpty(pnlAdminUsersCreate))
            {
                return;
            }
            if (!userService.PasswordIsEqual(admin_tbCreatePassword.Text, admin_tbCreatePassword2.Text))
            {
                CallErrorPanel($"Wachtwoorden moeten gelijk zijn!");
                return;
            }
            if (!userService.CheckPasswordPattern(admin_tbCreatePassword.Text))
            {
                CallErrorPanel($"Wachtwoord moet minstens een hoofdletter, kleine letter en één speciaal teken bevatten.");
                return;
            }
            int newValue;

            if (!int.TryParse(admin_tbCreateCode.Text, out newValue))
            {
                CallErrorPanel($"Het personeelsnummer mag geen letters bevatten!");
                return;
            }
            else if (newValue.ToString().Length < 4 || newValue.ToString().Length > 4)
            {
                CallErrorPanel($"Personeelsnummer moet een 4 cijferig getal zijn tussen 1000 en 9999.");
                return;
            }
            else
            {
                User user = new User()
                {
                    Name           = admin_tbCreateUsername.Text,
                    EmployeeCode   = newValue.ToString(),
                    FunctionId     = admin_cmbCreateFunction.SelectedIndex + 1,
                    SecretQuestion = admin_tbCreateQuestion.Text,
                    SecretAnswer   = admin_tbCreateAnswer.Text,
                    HashWithSalt   = userService.PasswordToSHA256(admin_tbCreatePassword.Text)
                };
                userService.InsertUser(user);

                CallErrorPanel($"De gebruiker {user.Name} is aangemaakt!");

                FillLVAdminUsers();
                pnlAdminUsersCreate.Hide();
            }
        }