From 6929d9df029d230d45d2b3f33717cb0ae6a40c56 Mon Sep 17 00:00:00 2001 From: James Moger <james.moger@gitblit.com> Date: Wed, 05 Dec 2012 17:24:18 -0500 Subject: [PATCH] Added attributes tab to Edit User for both site and Manager --- src/com/gitblit/client/EditUserDialog.java | 39 +++++++++++++++++++++++++++++++++++++++ 1 files changed, 39 insertions(+), 0 deletions(-) diff --git a/src/com/gitblit/client/EditUserDialog.java b/src/com/gitblit/client/EditUserDialog.java index e954fed..0400f5c 100644 --- a/src/com/gitblit/client/EditUserDialog.java +++ b/src/com/gitblit/client/EditUserDialog.java @@ -90,7 +90,17 @@ private JCheckBox canCreateCheckbox; private JCheckBox notFederatedCheckbox; + + private JTextField organizationalUnitField; + + private JTextField organizationField; + private JTextField localityField; + + private JTextField stateProvinceField; + + private JTextField countryCodeField; + private RegistrantPermissionsPanel repositoryPalette; private JPalette<TeamModel> teamsPalette; @@ -142,6 +152,12 @@ Translation.get("gb.excludeFromFederationDescription"), anUser.excludeFromFederation); + organizationalUnitField = new JTextField(anUser.organizationalUnit == null ? "" : anUser.organizationalUnit, 25); + organizationField = new JTextField(anUser.organization == null ? "" : anUser.organization, 25); + localityField = new JTextField(anUser.locality == null ? "" : anUser.locality, 25); + stateProvinceField = new JTextField(anUser.stateProvince == null ? "" : anUser.stateProvince, 25); + countryCodeField = new JTextField(anUser.countryCode == null ? "" : anUser.countryCode, 15); + // credentials are optionally controlled by 3rd-party authentication usernameField.setEnabled(settings.supportsCredentialChanges); passwordField.setEnabled(settings.supportsCredentialChanges); @@ -149,6 +165,12 @@ displayNameField.setEnabled(settings.supportsDisplayNameChanges); emailAddressField.setEnabled(settings.supportsEmailAddressChanges); + + organizationalUnitField.setEnabled(settings.supportsDisplayNameChanges); + organizationField.setEnabled(settings.supportsDisplayNameChanges); + localityField.setEnabled(settings.supportsDisplayNameChanges); + stateProvinceField.setEnabled(settings.supportsDisplayNameChanges); + countryCodeField.setEnabled(settings.supportsDisplayNameChanges); JPanel fieldsPanel = new JPanel(new GridLayout(0, 1)); fieldsPanel.add(newFieldPanel(Translation.get("gb.username"), usernameField)); @@ -162,6 +184,13 @@ fieldsPanel.add(newFieldPanel(Translation.get("gb.excludeFromFederation"), notFederatedCheckbox)); + JPanel attributesPanel = new JPanel(new GridLayout(0, 1, 5, 2)); + attributesPanel.add(newFieldPanel(Translation.get("gb.organizationalUnit") + " (OU)", organizationalUnitField)); + attributesPanel.add(newFieldPanel(Translation.get("gb.organization") + " (O)", organizationField)); + attributesPanel.add(newFieldPanel(Translation.get("gb.locality") + " (L)", localityField)); + attributesPanel.add(newFieldPanel(Translation.get("gb.stateProvince") + " (ST)", stateProvinceField)); + attributesPanel.add(newFieldPanel(Translation.get("gb.countryCode") + " (C)", countryCodeField)); + final Insets _insets = new Insets(5, 5, 5, 5); repositoryPalette = new RegistrantPermissionsPanel(RegistrantType.REPOSITORY); teamsPalette = new JPalette<TeamModel>(); @@ -169,6 +198,9 @@ JPanel fieldsPanelTop = new JPanel(new BorderLayout()); fieldsPanelTop.add(fieldsPanel, BorderLayout.NORTH); + + JPanel attributesPanelTop = new JPanel(new BorderLayout()); + attributesPanelTop.add(attributesPanel, BorderLayout.NORTH); JPanel repositoriesPanel = new JPanel(new BorderLayout()) { @@ -192,6 +224,7 @@ JTabbedPane panel = new JTabbedPane(JTabbedPane.TOP); panel.addTab(Translation.get("gb.general"), fieldsPanelTop); + panel.addTab(Translation.get("gb.attributes"), attributesPanelTop); if (protocolVersion > 1) { panel.addTab(Translation.get("gb.teamMemberships"), teamsPanel); } @@ -324,6 +357,12 @@ user.canCreate = canCreateCheckbox.isSelected(); user.excludeFromFederation = notFederatedCheckbox.isSelected(); + user.organizationalUnit = organizationalUnitField.getText().trim(); + user.organization = organizationField.getText().trim(); + user.locality = localityField.getText().trim(); + user.stateProvince = stateProvinceField.getText().trim(); + user.countryCode = countryCodeField.getText().trim(); + for (RegistrantAccessPermission rp : repositoryPalette.getPermissions()) { user.setRepositoryPermission(rp.registrant, rp.permission); } -- Gitblit v1.9.1