From 4bd2037edddbf444ac9817e9d14710be45850a10 Mon Sep 17 00:00:00 2001 From: James Moger <james.moger@gitblit.com> Date: Mon, 19 Dec 2011 18:00:29 -0500 Subject: [PATCH] RPC support for hook script selection --- src/com/gitblit/client/EditRepositoryDialog.java | 44 +++++++++++++++++++++++++++++++++++++------- 1 files changed, 37 insertions(+), 7 deletions(-) diff --git a/src/com/gitblit/client/EditRepositoryDialog.java b/src/com/gitblit/client/EditRepositoryDialog.java index a70a617..44b6fc6 100644 --- a/src/com/gitblit/client/EditRepositoryDialog.java +++ b/src/com/gitblit/client/EditRepositoryDialog.java @@ -88,7 +88,7 @@ private JCheckBox skipSummaryMetrics; private JCheckBox isFrozen; - + private JTextField mailRecipientsField; private JComboBox accessRestriction; @@ -98,10 +98,14 @@ private JComboBox ownerField; private JPalette<String> usersPalette; - + private JPalette<String> setsPalette; - + private JPalette<String> teamsPalette; + + private JPalette<String> preReceivePalette; + + private JPalette<String> postReceivePalette; private Set<String> repositoryNames; @@ -162,7 +166,7 @@ mailRecipientsField = new JTextField(anRepository.mailRecipients == null ? "" : StringUtils.flattenStrings(anRepository.mailRecipients, " "), 50); - + accessRestriction = new JComboBox(AccessRestrictionType.values()); accessRestriction.setRenderer(new AccessRestrictionRenderer()); accessRestriction.setSelectedItem(anRepository.accessRestriction); @@ -216,6 +220,18 @@ federationPanel.add(newFieldPanel(Translation.get("gb.federationSets"), setsPalette), BorderLayout.CENTER); + preReceivePalette = new JPalette<String>(true); + JPanel preReceivePanel = new JPanel(new BorderLayout(5, 5)); + preReceivePanel.add( + newFieldPanel(Translation.get("gb.preReceiveScripts"), preReceivePalette), + BorderLayout.CENTER); + + postReceivePalette = new JPalette<String>(true); + JPanel postReceivePanel = new JPanel(new BorderLayout(5, 5)); + postReceivePanel.add( + newFieldPanel(Translation.get("gb.postReceiveScripts"), postReceivePalette), + BorderLayout.CENTER); + JTabbedPane panel = new JTabbedPane(JTabbedPane.TOP); panel.addTab(Translation.get("gb.general"), fieldsPanel); panel.addTab(Translation.get("gb.accessRestriction"), accessPanel); @@ -223,6 +239,8 @@ panel.addTab(Translation.get("gb.teams"), teamsPanel); } panel.addTab(Translation.get("gb.federation"), federationPanel); + panel.addTab(Translation.get("gb.preReceiveScripts"), preReceivePanel); + panel.addTab(Translation.get("gb.postReceiveScripts"), postReceivePanel); JButton createButton = new JButton(Translation.get("gb.save")); createButton.addActionListener(new ActionListener() { @@ -352,8 +370,9 @@ repository.skipSizeCalculation = skipSizeCalculation.isSelected(); repository.skipSummaryMetrics = skipSummaryMetrics.isSelected(); repository.isFrozen = isFrozen.isSelected(); - - repository.mailRecipients = StringUtils.getStringsFromValue(mailRecipientsField.getText().trim(), " "); + + repository.mailRecipients = StringUtils.getStringsFromValue(mailRecipientsField.getText() + .trim(), " "); repository.accessRestriction = (AccessRestrictionType) accessRestriction.getSelectedItem(); repository.federationStrategy = (FederationStrategy) federationStrategy.getSelectedItem(); @@ -361,6 +380,9 @@ if (repository.federationStrategy.exceeds(FederationStrategy.EXCLUDE)) { repository.federationSets = setsPalette.getSelections(); } + + repository.preReceiveScripts = preReceivePalette.getSelections(); + repository.postReceiveScripts = postReceivePalette.getSelections(); return true; } @@ -376,7 +398,7 @@ } usersPalette.setObjects(all, selected); } - + public void setTeams(List<String> all, List<String> selected) { teamsPalette.setObjects(all, selected); } @@ -396,6 +418,14 @@ setsPalette.setObjects(all, selected); } + public void setPreReceiveScripts(List<String> all, List<String> selected) { + preReceivePalette.setObjects(all, selected); + } + + public void setPostReceiveScripts(List<String> all, List<String> selected) { + postReceivePalette.setObjects(all, selected); + } + public RepositoryModel getRepository() { if (canceled) { return null; -- Gitblit v1.9.1