From 0e44acbb2fec928a1606dc60f427a148fff405c9 Mon Sep 17 00:00:00 2001
From: Mohamed Ragab <moragab@gmail.com>
Date: Wed, 02 May 2012 11:15:01 -0400
Subject: [PATCH] Added a script to facilitate setting the proxy host and port and no proxy hosts, and then it concatenates all the java system properties for setting the java proxy configurations and puts the resulting string in an environment variable JAVA_PROXY_CONFIG, modified the scirpts gitblit, gitblit-ubuntu, and gitblit-centos to source the java-proxy-config.sh script and then include the resulting java proxy configuration in the java command
---
src/com/gitblit/client/RepositoriesPanel.java | 81 +++++++++++++++++++++++++++++++++++++---
1 files changed, 75 insertions(+), 6 deletions(-)
diff --git a/src/com/gitblit/client/RepositoriesPanel.java b/src/com/gitblit/client/RepositoriesPanel.java
index 20b9080..685a70a 100644
--- a/src/com/gitblit/client/RepositoriesPanel.java
+++ b/src/com/gitblit/client/RepositoriesPanel.java
@@ -27,6 +27,7 @@
import java.awt.event.MouseEvent;
import java.io.IOException;
import java.util.ArrayList;
+import java.util.Arrays;
import java.util.List;
import javax.swing.JButton;
@@ -44,6 +45,7 @@
import javax.swing.table.TableCellRenderer;
import javax.swing.table.TableRowSorter;
+import com.gitblit.Constants;
import com.gitblit.Constants.RpcRequest;
import com.gitblit.models.FeedModel;
import com.gitblit.models.RepositoryModel;
@@ -134,6 +136,24 @@
}
});
+ final JButton logRepository = new JButton(Translation.get("gb.log") + "...");
+ logRepository.setEnabled(false);
+ logRepository.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent e) {
+ RepositoryModel model = getSelectedRepositories().get(0);
+ showSearchDialog(false, model);
+ }
+ });
+
+ final JButton searchRepository = new JButton(Translation.get("gb.search") + "...");
+ searchRepository.setEnabled(false);
+ searchRepository.addActionListener(new ActionListener() {
+ public void actionPerformed(ActionEvent e) {
+ RepositoryModel model = getSelectedRepositories().get(0);
+ showSearchDialog(true, model);
+ }
+ });
+
SubscribedRepositoryRenderer nameRenderer = new SubscribedRepositoryRenderer(gitblit);
IndicatorsRenderer typeRenderer = new IndicatorsRenderer();
@@ -165,9 +185,19 @@
}
boolean singleSelection = table.getSelectedRowCount() == 1;
boolean selected = table.getSelectedRow() > -1;
- browseRepository.setEnabled(singleSelection);
+ if (singleSelection) {
+ RepositoryModel repository = getSelectedRepositories().get(0);
+ browseRepository.setEnabled(repository.hasCommits);
+ logRepository.setEnabled(repository.hasCommits);
+ searchRepository.setEnabled(repository.hasCommits);
+ subscribeRepository.setEnabled(repository.hasCommits);
+ } else {
+ browseRepository.setEnabled(false);
+ logRepository.setEnabled(false);
+ searchRepository.setEnabled(false);
+ subscribeRepository.setEnabled(false);
+ }
delRepository.setEnabled(selected);
- subscribeRepository.setEnabled(singleSelection);
if (selected) {
int viewRow = table.getSelectedRow();
int modelRow = table.convertRowIndexToModel(viewRow);
@@ -216,6 +246,8 @@
repositoryControls.add(editRepository);
repositoryControls.add(delRepository);
repositoryControls.add(subscribeRepository);
+ repositoryControls.add(logRepository);
+ repositoryControls.add(searchRepository);
setLayout(new BorderLayout(Utils.MARGIN, Utils.MARGIN));
header = new HeaderPanel(Translation.get("gb.repositories"), "gitweb-favicon.png");
@@ -247,6 +279,8 @@
protected abstract void subscribeFeeds(List<FeedModel> feeds);
protected abstract void updateUsersTable();
+
+ protected abstract void updateTeamsTable();
protected void disableManagement() {
createRepository.setVisible(false);
@@ -319,14 +353,21 @@
*
*/
protected void createRepository() {
- EditRepositoryDialog dialog = new EditRepositoryDialog();
+ EditRepositoryDialog dialog = new EditRepositoryDialog(gitblit.getProtocolVersion());
dialog.setLocationRelativeTo(RepositoriesPanel.this);
dialog.setUsers(null, gitblit.getUsernames(), null);
+ dialog.setTeams(gitblit.getTeamnames(), null);
dialog.setRepositories(gitblit.getRepositories());
dialog.setFederationSets(gitblit.getFederationSets(), null);
+ dialog.setIndexedBranches(new ArrayList<String>(Arrays.asList(Constants.DEFAULT_BRANCH)), null);
+ dialog.setPreReceiveScripts(gitblit.getPreReceiveScriptsUnused(null),
+ gitblit.getPreReceiveScriptsInherited(null), null);
+ dialog.setPostReceiveScripts(gitblit.getPostReceiveScriptsUnused(null),
+ gitblit.getPostReceiveScriptsInherited(null), null);
dialog.setVisible(true);
final RepositoryModel newRepository = dialog.getRepository();
final List<String> permittedUsers = dialog.getPermittedUsers();
+ final List<String> permittedTeams = dialog.getPermittedTeams();
if (newRepository == null) {
return;
}
@@ -335,11 +376,15 @@
@Override
protected Boolean doRequest() throws IOException {
- boolean success = gitblit.createRepository(newRepository, permittedUsers);
+ boolean success = gitblit.createRepository(newRepository, permittedUsers,
+ permittedTeams);
if (success) {
gitblit.refreshRepositories();
if (permittedUsers.size() > 0) {
gitblit.refreshUsers();
+ }
+ if (permittedTeams.size() > 0) {
+ gitblit.refreshTeams();
}
}
return success;
@@ -349,6 +394,7 @@
protected void onSuccess() {
updateTable(false);
updateUsersTable();
+ updateTeamsTable();
}
@Override
@@ -367,16 +413,27 @@
* @param repository
*/
protected void editRepository(final RepositoryModel repository) {
- EditRepositoryDialog dialog = new EditRepositoryDialog(repository);
+ EditRepositoryDialog dialog = new EditRepositoryDialog(gitblit.getProtocolVersion(),
+ repository);
dialog.setLocationRelativeTo(RepositoriesPanel.this);
List<String> usernames = gitblit.getUsernames();
List<String> members = gitblit.getPermittedUsernames(repository);
dialog.setUsers(repository.owner, usernames, members);
+ dialog.setTeams(gitblit.getTeamnames(), gitblit.getPermittedTeamnames(repository));
dialog.setRepositories(gitblit.getRepositories());
dialog.setFederationSets(gitblit.getFederationSets(), repository.federationSets);
+ List<String> allLocalBranches = new ArrayList<String>();
+ allLocalBranches.add(Constants.DEFAULT_BRANCH);
+ allLocalBranches.addAll(repository.getLocalBranches());
+ dialog.setIndexedBranches(allLocalBranches, repository.indexedBranches);
+ dialog.setPreReceiveScripts(gitblit.getPreReceiveScriptsUnused(repository),
+ gitblit.getPreReceiveScriptsInherited(repository), repository.preReceiveScripts);
+ dialog.setPostReceiveScripts(gitblit.getPostReceiveScriptsUnused(repository),
+ gitblit.getPostReceiveScriptsInherited(repository), repository.postReceiveScripts);
dialog.setVisible(true);
final RepositoryModel revisedRepository = dialog.getRepository();
final List<String> permittedUsers = dialog.getPermittedUsers();
+ final List<String> permittedTeams = dialog.getPermittedTeams();
if (revisedRepository == null) {
return;
}
@@ -386,10 +443,11 @@
@Override
protected Boolean doRequest() throws IOException {
boolean success = gitblit.updateRepository(repository.name, revisedRepository,
- permittedUsers);
+ permittedUsers, permittedTeams);
if (success) {
gitblit.refreshRepositories();
gitblit.refreshUsers();
+ gitblit.refreshTeams();
}
return success;
}
@@ -398,6 +456,7 @@
protected void onSuccess() {
updateTable(false);
updateUsersTable();
+ updateTeamsTable();
}
@Override
@@ -430,6 +489,7 @@
if (success) {
gitblit.refreshRepositories();
gitblit.refreshUsers();
+ gitblit.refreshTeams();
}
return success;
}
@@ -438,6 +498,7 @@
protected void onSuccess() {
updateTable(false);
updateUsersTable();
+ updateTeamsTable();
}
@Override
@@ -449,4 +510,12 @@
}
}
+ private void showSearchDialog(boolean isSearch, final RepositoryModel repository) {
+ final SearchDialog dialog = new SearchDialog(gitblit, isSearch);
+ if (repository != null) {
+ dialog.selectRepository(repository);
+ }
+ dialog.setLocationRelativeTo(this);
+ dialog.setVisible(true);
+ }
}
--
Gitblit v1.9.1