From c0bf1a3ebffac49e59ee8b3283b95bfa672630da Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Mon, 22 Jul 2013 08:02:52 -0400
Subject: [PATCH] Merge pull request #104 from rafaelcavazin/master
---
src/main/java/com/gitblit/wicket/panels/RepositoryUrlPanel.java | 28 +++++++++++-----------------
1 files changed, 11 insertions(+), 17 deletions(-)
diff --git a/src/main/java/com/gitblit/wicket/panels/RepositoryUrlPanel.java b/src/main/java/com/gitblit/wicket/panels/RepositoryUrlPanel.java
index b28599f..aaab2b1 100644
--- a/src/main/java/com/gitblit/wicket/panels/RepositoryUrlPanel.java
+++ b/src/main/java/com/gitblit/wicket/panels/RepositoryUrlPanel.java
@@ -85,7 +85,7 @@
// grab primary url from the top of the list
primaryUrl = repositoryUrls.size() == 0 ? null : repositoryUrls.get(0);
- boolean canClone = ((primaryUrl.permission == null) || primaryUrl.permission.atLeast(AccessPermission.CLONE));
+ boolean canClone = primaryUrl != null && ((primaryUrl.permission == null) || primaryUrl.permission.atLeast(AccessPermission.CLONE));
if (repositoryUrls.size() == 0 || !canClone) {
// no urls, nothing to show.
@@ -162,7 +162,7 @@
}
// access restriction icon and tooltip
- if (isGitblitServingRepositories()) {
+ if (GitBlit.isServingRepositories()) {
switch (repository.accessRestriction) {
case NONE:
urlPanel.add(WicketUtils.newClearPixel("accessRestrictionIcon").setVisible(false));
@@ -228,18 +228,16 @@
final GitClientApplication clientApp = item.getModelObject();
// filter the urls for the client app
- List<RepositoryUrl> urls;
- if (clientApp.minimumPermission == null) {
- // client app does not specify minimum access permission
- urls = repositoryUrls;
- } else {
- urls = new ArrayList<RepositoryUrl>();
- for (RepositoryUrl repoUrl : repositoryUrls) {
- if (repoUrl.permission == null) {
- // external permissions, assume it is satisfactory
+ List<RepositoryUrl> urls = new ArrayList<RepositoryUrl>();
+ for (RepositoryUrl repoUrl : repositoryUrls) {
+ if (clientApp.minimumPermission == null || repoUrl.permission == null) {
+ // no minimum permission or external permissions, assume it is satisfactory
+ if (clientApp.supportsTransport(repoUrl.url)) {
urls.add(repoUrl);
- } else if (repoUrl.permission.atLeast(clientApp.minimumPermission)) {
- // repo url meets minimum permission requirement
+ }
+ } else if (repoUrl.permission.atLeast(clientApp.minimumPermission)) {
+ // repo url meets minimum permission requirement
+ if (clientApp.supportsTransport(repoUrl.url)) {
urls.add(repoUrl);
}
}
@@ -333,10 +331,6 @@
protected String substitute(String pattern, String repoUrl, String baseUrl) {
return pattern.replace("${repoUrl}", repoUrl).replace("${baseUrl}", baseUrl);
- }
-
- protected boolean isGitblitServingRepositories() {
- return GitBlit.getBoolean(Keys.git.enableGitServlet, true) || (GitBlit.getInteger(Keys.git.daemonPort, 0) > 0);
}
protected Label createPermissionBadge(String wicketId, RepositoryUrl repoUrl) {
--
Gitblit v1.9.1