James Moger
2012-04-25 e191104cd356faa2e261cc37585143878e23298d
Disable membership, display name, and email fields in Manager if unsupported by user service
4 files modified
43 ■■■■ changed files
src/com/gitblit/client/EditTeamDialog.java 3 ●●●● patch | view | raw | blame | history
src/com/gitblit/client/EditUserDialog.java 11 ●●●●● patch | view | raw | blame | history
src/com/gitblit/client/JPalette.java 21 ●●●● patch | view | raw | blame | history
src/com/gitblit/models/ServerSettings.java 8 ●●●●● patch | view | raw | blame | history
src/com/gitblit/client/EditTeamDialog.java
@@ -125,7 +125,8 @@
        final Insets _insets = new Insets(5, 5, 5, 5);
        repositoryPalette = new JPalette<String>();
        userPalette = new JPalette<String>();
        userPalette.setEnabled(settings.supportsTeamMembershipChanges);
        JPanel fieldsPanelTop = new JPanel(new BorderLayout());
        fieldsPanelTop.add(fieldsPanel, BorderLayout.NORTH);
src/com/gitblit/client/EditUserDialog.java
@@ -129,6 +129,14 @@
        notFederatedCheckbox = new JCheckBox(
                Translation.get("gb.excludeFromFederationDescription"),
                anUser.excludeFromFederation);
        // credentials are optionally controlled by 3rd-party authentication
        usernameField.setEnabled(settings.supportsCredentialChanges);
        passwordField.setEnabled(settings.supportsCredentialChanges);
        confirmPasswordField.setEnabled(settings.supportsCredentialChanges);
        displayNameField.setEnabled(settings.supportsDisplayNameChanges);
        emailAddressField.setEnabled(settings.supportsEmailAddressChanges);
        JPanel fieldsPanel = new JPanel(new GridLayout(0, 1));
        fieldsPanel.add(newFieldPanel(Translation.get("gb.username"), usernameField));
@@ -143,6 +151,7 @@
        final Insets _insets = new Insets(5, 5, 5, 5);
        repositoryPalette = new JPalette<String>();
        teamsPalette = new JPalette<TeamModel>();
        teamsPalette.setEnabled(settings.supportsTeamMembershipChanges);
        JPanel fieldsPanelTop = new JPanel(new BorderLayout());
        fieldsPanelTop.add(fieldsPanel, BorderLayout.NORTH);
@@ -340,7 +349,7 @@
        }
        teamsPalette.setObjects(teams, selected);
    }
    public UserModel getUser() {
        if (canceled) {
            return null;
src/com/gitblit/client/JPalette.java
@@ -38,6 +38,10 @@
    private static final long serialVersionUID = 1L;
    private PaletteModel<T> availableModel;
    private PaletteModel<T> selectedModel;
    private JButton add;
    private JButton subtract;
    private JButton up;
    private JButton down;
    public JPalette() {
        this(false);
@@ -52,7 +56,7 @@
        final JTable available = new JTable(availableModel);
        final JTable selected = new JTable(selectedModel);
        JButton add = new JButton("->");
        add = new JButton("->");
        add.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent event) {
                List<T> move = new ArrayList<T>();
@@ -70,7 +74,7 @@
                selectedModel.fireTableDataChanged();
            }
        });
        JButton subtract = new JButton("<-");
        subtract = new JButton("<-");
        subtract.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent event) {
                List<T> move = new ArrayList<T>();
@@ -90,7 +94,7 @@
            }
        });
        JButton up = new JButton("\u2191");
        up = new JButton("\u2191");
        up.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent event) {
                int row = selected.getSelectedRow();
@@ -102,7 +106,7 @@
            }
        });
        JButton down = new JButton("\u2193");
        down = new JButton("\u2193");
        down.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent event) {
                int row = selected.getSelectedRow();
@@ -149,6 +153,15 @@
        panel.add(jsp, BorderLayout.CENTER);
        return panel;
    }
    @Override
    public void setEnabled(boolean enabled) {
        super.setEnabled(enabled);
        add.setEnabled(enabled);
        subtract.setEnabled(enabled);
        up.setEnabled(enabled);
        down.setEnabled(enabled);
    }
    public void setObjects(List<T> all, List<T> selected) {
        List<T> available = new ArrayList<T>(all);
src/com/gitblit/models/ServerSettings.java
@@ -36,6 +36,14 @@
    private static final long serialVersionUID = 1L;
    public List<String> pushScripts;
    public boolean supportsCredentialChanges;
    public boolean supportsDisplayNameChanges;
    public boolean supportsEmailAddressChanges;
    public boolean supportsTeamMembershipChanges;
    public ServerSettings() {
        settings = new TreeMap<String, SettingModel>();