From 479cc28bdf743b778f9528bd0e9b997541aead53 Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Tue, 23 Oct 2012 17:17:14 -0400
Subject: [PATCH] Add some common regex filters to the repository lists
---
src/com/gitblit/client/EditUserDialog.java | 25 +++++++++++++++++++++----
1 files changed, 21 insertions(+), 4 deletions(-)
diff --git a/src/com/gitblit/client/EditUserDialog.java b/src/com/gitblit/client/EditUserDialog.java
index da75867..e096693 100644
--- a/src/com/gitblit/client/EditUserDialog.java
+++ b/src/com/gitblit/client/EditUserDialog.java
@@ -347,18 +347,35 @@
restricted.add(repo.name);
}
}
+ StringUtils.sortRepositorynames(restricted);
+
+ List<String> list = new ArrayList<String>();
+ // repositories
+ list.add(".*");
+ // all repositories excluding personal repositories
+ list.add("[^~].*");
+ String lastProject = null;
+ for (String repo : restricted) {
+ String projectPath = StringUtils.getFirstPathElement(repo);
+ if (lastProject == null || !lastProject.equalsIgnoreCase(projectPath)) {
+ lastProject = projectPath;
+ if (!StringUtils.isEmpty(projectPath)) {
+ // regex for all repositories within a project
+ list.add(projectPath + "/.*");
+ }
+ list.add(repo);
+ }
+ }
// remove repositories for which user already has a permission
if (permissions == null) {
permissions = new ArrayList<RegistrantAccessPermission>();
} else {
for (RegistrantAccessPermission rp : permissions) {
- restricted.remove(rp.registrant);
+ list.remove(rp.registrant);
}
}
-
- StringUtils.sortRepositorynames(restricted);
- repositoryPalette.setObjects(restricted, permissions);
+ repositoryPalette.setObjects(list, permissions);
}
public void setTeams(List<TeamModel> teams, List<TeamModel> selected) {
--
Gitblit v1.9.1