final Insets _insets = new Insets(5, 5, 5, 5);\r
repositoryPalette = new JPalette<String>();\r
userPalette = new JPalette<String>();\r
-\r
+ userPalette.setEnabled(settings.supportsTeamMembershipChanges);\r
+ \r
JPanel fieldsPanelTop = new JPanel(new BorderLayout());\r
fieldsPanelTop.add(fieldsPanel, BorderLayout.NORTH);\r
\r
notFederatedCheckbox = new JCheckBox(\r
Translation.get("gb.excludeFromFederationDescription"),\r
anUser.excludeFromFederation);\r
+ \r
+ // credentials are optionally controlled by 3rd-party authentication\r
+ usernameField.setEnabled(settings.supportsCredentialChanges);\r
+ passwordField.setEnabled(settings.supportsCredentialChanges);\r
+ confirmPasswordField.setEnabled(settings.supportsCredentialChanges);\r
+\r
+ displayNameField.setEnabled(settings.supportsDisplayNameChanges);\r
+ emailAddressField.setEnabled(settings.supportsEmailAddressChanges);\r
\r
JPanel fieldsPanel = new JPanel(new GridLayout(0, 1));\r
fieldsPanel.add(newFieldPanel(Translation.get("gb.username"), usernameField));\r
final Insets _insets = new Insets(5, 5, 5, 5);\r
repositoryPalette = new JPalette<String>();\r
teamsPalette = new JPalette<TeamModel>();\r
+ teamsPalette.setEnabled(settings.supportsTeamMembershipChanges);\r
\r
JPanel fieldsPanelTop = new JPanel(new BorderLayout());\r
fieldsPanelTop.add(fieldsPanel, BorderLayout.NORTH);\r
}\r
teamsPalette.setObjects(teams, selected);\r
}\r
-\r
+ \r
public UserModel getUser() {\r
if (canceled) {\r
return null;\r
private static final long serialVersionUID = 1L;\r
private PaletteModel<T> availableModel;\r
private PaletteModel<T> selectedModel;\r
+ private JButton add;\r
+ private JButton subtract;\r
+ private JButton up;\r
+ private JButton down;\r
\r
public JPalette() {\r
this(false);\r
final JTable available = new JTable(availableModel);\r
final JTable selected = new JTable(selectedModel);\r
\r
- JButton add = new JButton("->");\r
+ add = new JButton("->");\r
add.addActionListener(new ActionListener() {\r
public void actionPerformed(ActionEvent event) {\r
List<T> move = new ArrayList<T>();\r
selectedModel.fireTableDataChanged();\r
}\r
});\r
- JButton subtract = new JButton("<-");\r
+ subtract = new JButton("<-");\r
subtract.addActionListener(new ActionListener() {\r
public void actionPerformed(ActionEvent event) {\r
List<T> move = new ArrayList<T>();\r
}\r
});\r
\r
- JButton up = new JButton("\u2191");\r
+ up = new JButton("\u2191");\r
up.addActionListener(new ActionListener() {\r
public void actionPerformed(ActionEvent event) {\r
int row = selected.getSelectedRow();\r
}\r
});\r
\r
- JButton down = new JButton("\u2193");\r
+ down = new JButton("\u2193");\r
down.addActionListener(new ActionListener() {\r
public void actionPerformed(ActionEvent event) {\r
int row = selected.getSelectedRow();\r
panel.add(jsp, BorderLayout.CENTER);\r
return panel;\r
}\r
+ \r
+ @Override\r
+ public void setEnabled(boolean enabled) {\r
+ super.setEnabled(enabled);\r
+ add.setEnabled(enabled);\r
+ subtract.setEnabled(enabled);\r
+ up.setEnabled(enabled);\r
+ down.setEnabled(enabled);\r
+ }\r
\r
public void setObjects(List<T> all, List<T> selected) {\r
List<T> available = new ArrayList<T>(all);\r
private static final long serialVersionUID = 1L;\r
\r
public List<String> pushScripts;\r
+ \r
+ public boolean supportsCredentialChanges;\r
+ \r
+ public boolean supportsDisplayNameChanges;\r
+ \r
+ public boolean supportsEmailAddressChanges;\r
+ \r
+ public boolean supportsTeamMembershipChanges;\r
\r
public ServerSettings() {\r
settings = new TreeMap<String, SettingModel>();\r