From 72f7b1f1d48237f7fd078027ae74102726fd57cf Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Mon, 12 May 2014 08:48:06 -0400
Subject: [PATCH] Merged #71 "Can not assign responsible when anonymous push is enabled"
---
src/main/java/com/gitblit/wicket/pages/EditTicketPage.java | 14 ++++++++++----
src/main/java/com/gitblit/wicket/pages/NewTicketPage.java | 18 ++++++++++++++----
2 files changed, 24 insertions(+), 8 deletions(-)
diff --git a/src/main/java/com/gitblit/wicket/pages/EditTicketPage.java b/src/main/java/com/gitblit/wicket/pages/EditTicketPage.java
index c3294ba..46781fa 100644
--- a/src/main/java/com/gitblit/wicket/pages/EditTicketPage.java
+++ b/src/main/java/com/gitblit/wicket/pages/EditTicketPage.java
@@ -163,16 +163,22 @@
// responsible
Set<String> userlist = new TreeSet<String>(ticket.getParticipants());
- for (RegistrantAccessPermission rp : app().repositories().getUserAccessPermissions(getRepositoryModel())) {
- if (rp.permission.atLeast(AccessPermission.PUSH) && !rp.isTeam()) {
- userlist.add(rp.registrant);
+ if (UserModel.ANONYMOUS.canPush(getRepositoryModel())) {
+ // anonymous push
+ userlist.addAll(app().users().getAllUsernames());
+ } else {
+ // authenticated push
+ for (RegistrantAccessPermission rp : app().repositories().getUserAccessPermissions(getRepositoryModel())) {
+ if (rp.permission.atLeast(AccessPermission.PUSH) && !rp.isTeam()) {
+ userlist.add(rp.registrant);
+ }
}
}
List<TicketResponsible> responsibles = new ArrayList<TicketResponsible>();
for (String username : userlist) {
UserModel user = app().users().getUserModel(username);
- if (user != null) {
+ if (user != null && !user.disabled) {
TicketResponsible responsible = new TicketResponsible(user);
responsibles.add(responsible);
if (user.username.equals(ticket.responsible)) {
diff --git a/src/main/java/com/gitblit/wicket/pages/NewTicketPage.java b/src/main/java/com/gitblit/wicket/pages/NewTicketPage.java
index cc0474a..961590a 100644
--- a/src/main/java/com/gitblit/wicket/pages/NewTicketPage.java
+++ b/src/main/java/com/gitblit/wicket/pages/NewTicketPage.java
@@ -116,13 +116,23 @@
if (currentUser.canAdmin(null, getRepositoryModel())) {
// responsible
List<TicketResponsible> responsibles = new ArrayList<TicketResponsible>();
- for (RegistrantAccessPermission rp : app().repositories().getUserAccessPermissions(getRepositoryModel())) {
- if (rp.permission.atLeast(AccessPermission.PUSH) && !rp.isTeam()) {
- UserModel user = app().users().getUserModel(rp.registrant);
- if (user != null) {
+ if (UserModel.ANONYMOUS.canPush(getRepositoryModel())) {
+ // anonymous push allowed
+ for (UserModel user : app().users().getAllUsers()) {
+ if (!user.disabled) {
responsibles.add(new TicketResponsible(user));
}
}
+ } else {
+ // authenticated push
+ for (RegistrantAccessPermission rp : app().repositories().getUserAccessPermissions(getRepositoryModel())) {
+ if (rp.permission.atLeast(AccessPermission.PUSH) && !rp.isTeam()) {
+ UserModel user = app().users().getUserModel(rp.registrant);
+ if (user != null && !user.disabled) {
+ responsibles.add(new TicketResponsible(user));
+ }
+ }
+ }
}
Collections.sort(responsibles);
Fragment responsible = new Fragment("responsible", "responsibleFragment", this);
--
Gitblit v1.9.1