summaryrefslogtreecommitdiffstats
path: root/src/com/gitblit/client
diff options
context:
space:
mode:
authorJames Moger <james.moger@gitblit.com>2011-12-21 17:13:00 -0500
committerJames Moger <james.moger@gitblit.com>2011-12-21 17:13:00 -0500
commit0b911946c4d81df6c8f411089f2e3036b4251e2b (patch)
tree0f77fb768f8733f66228de36193518db21b920ae /src/com/gitblit/client
parenteb96eab513101783a750c13419de6bdce3d2fa4c (diff)
downloadgitblit-0b911946c4d81df6c8f411089f2e3036b4251e2b.tar.gz
gitblit-0b911946c4d81df6c8f411089f2e3036b4251e2b.zip
Support mailing lists for Teams
Diffstat (limited to 'src/com/gitblit/client')
-rw-r--r--src/com/gitblit/client/EditTeamDialog.java30
1 files changed, 24 insertions, 6 deletions
diff --git a/src/com/gitblit/client/EditTeamDialog.java b/src/com/gitblit/client/EditTeamDialog.java
index 4297599c..a04ed2cf 100644
--- a/src/com/gitblit/client/EditTeamDialog.java
+++ b/src/com/gitblit/client/EditTeamDialog.java
@@ -65,6 +65,8 @@ public class EditTeamDialog extends JDialog {
private JTextField teamnameField;
+ private JTextField mailingListsField;
+
private JPalette<String> repositoryPalette;
private JPalette<String> userPalette;
@@ -105,16 +107,20 @@ public class EditTeamDialog extends JDialog {
private void initialize(int protocolVersion, TeamModel aTeam) {
teamnameField = new JTextField(aTeam.name == null ? "" : aTeam.name, 25);
+ mailingListsField = new JTextField(aTeam.mailingLists == null ? ""
+ : StringUtils.flattenStrings(aTeam.mailingLists, " "), 50);
+
JPanel fieldsPanel = new JPanel(new GridLayout(0, 1));
fieldsPanel.add(newFieldPanel(Translation.get("gb.teamName"), teamnameField));
+ fieldsPanel.add(newFieldPanel(Translation.get("gb.mailingLists"), mailingListsField));
final Insets _insets = new Insets(5, 5, 5, 5);
repositoryPalette = new JPalette<String>();
userPalette = new JPalette<String>();
-
+
JPanel fieldsPanelTop = new JPanel(new BorderLayout());
fieldsPanelTop.add(fieldsPanel, BorderLayout.NORTH);
-
+
JPanel repositoriesPanel = new JPanel(new BorderLayout()) {
private static final long serialVersionUID = 1L;
@@ -140,7 +146,6 @@ public class EditTeamDialog extends JDialog {
panel.addTab(Translation.get("gb.teamMembers"), usersPanel);
panel.addTab(Translation.get("gb.restrictedRepositories"), repositoriesPanel);
-
JButton createButton = new JButton(Translation.get("gb.save"));
createButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent event) {
@@ -162,7 +167,7 @@ public class EditTeamDialog extends JDialog {
JPanel controls = new JPanel();
controls.add(cancelButton);
controls.add(createButton);
-
+
JPanel centerPanel = new JPanel(new BorderLayout(5, 5)) {
private static final long serialVersionUID = 1L;
@@ -218,9 +223,22 @@ public class EditTeamDialog extends JDialog {
}
team.name = tname;
+ String ml = mailingListsField.getText();
+ if (!StringUtils.isEmpty(ml)) {
+ Set<String> list = new HashSet<String>();
+ for (String address : ml.split("(,|\\s)")) {
+ if (StringUtils.isEmpty(address)) {
+ continue;
+ }
+ list.add(address.toLowerCase());
+ }
+ team.mailingLists.clear();
+ team.mailingLists.addAll(list);
+ }
+
team.repositories.clear();
team.repositories.addAll(repositoryPalette.getSelections());
-
+
team.users.clear();
team.users.addAll(userPalette.getSelections());
return true;
@@ -251,7 +269,7 @@ public class EditTeamDialog extends JDialog {
}
repositoryPalette.setObjects(restricted, selected);
}
-
+
public void setUsers(List<String> users, List<String> selected) {
Collections.sort(users);
if (selected != null) {