private boolean valid() {
        Contact _client;
        if (clientBox.getSelectedItem() instanceof Contact) {
            _client = (Contact) clientBox.getSelectedItem();
        } else {
            String clientname = (String) clientBox.getSelectedItem();
            _client = Database.driver().getClientsAlphabetically().get(clientname.toLowerCase());
        }


        if (clientBox.getSelectedIndex() == 0 || _client == null) {
            JOptionPane.showMessageDialog(null, "Gelieve een klant te kiezen!", "Fout!", JOptionPane.ERROR_MESSAGE);
            clientBox.requestFocus();
            return false;
        }

        if (!txtReduction.getInputVerifier().verify(txtReduction)) {
            JOptionPane.showMessageDialog(null, "Gelieve de korting na te kijken!", "Fout!", JOptionPane.ERROR_MESSAGE);
            txtReduction.requestFocus();
            return false;
        }

        if (tablemodel.getRowCount() == 0) {
            JOptionPane.showMessageDialog(null, "Gelieve minstens 1 artikel toe te voegen aan deze factuur!", "Fout!", JOptionPane.ERROR_MESSAGE);
            autobox.requestFocus();
            return false;
        }

        if (!quantityoutlet.getInputVerifier().verify(quantityoutlet)) {
            JOptionPane.showMessageDialog(null, "Gelieve een geldige hoeveelheid in te voeren!", "Fout!", JOptionPane.ERROR_MESSAGE);
            quantityoutlet.requestFocus();
            return false;
        }

        return true;
    }