From 38ba369972fe7e01a8ef6a950fd9bd403ef97eb6 Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Thu, 29 May 2014 10:47:00 -0400
Subject: [PATCH] Merge branch 'ticket/91' into develop

---
 src/main/java/com/gitblit/wicket/pages/TicketPage.java |   14 +++++++++++---
 1 files changed, 11 insertions(+), 3 deletions(-)

diff --git a/src/main/java/com/gitblit/wicket/pages/TicketPage.java b/src/main/java/com/gitblit/wicket/pages/TicketPage.java
index c282695..10a7cc4 100644
--- a/src/main/java/com/gitblit/wicket/pages/TicketPage.java
+++ b/src/main/java/com/gitblit/wicket/pages/TicketPage.java
@@ -57,6 +57,7 @@
 
 import com.gitblit.Constants;
 import com.gitblit.Constants.AccessPermission;
+import com.gitblit.Constants.AuthorizationControl;
 import com.gitblit.Keys;
 import com.gitblit.git.PatchsetCommand;
 import com.gitblit.git.PatchsetReceivePack;
@@ -383,9 +384,16 @@
 				 * RESPONSIBLE LIST
 				 */
 				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())
+						|| AuthorizationControl.AUTHENTICATED == getRepositoryModel().authorizationControl) {
+					// 	authorization is ANONYMOUS or AUTHENTICATED (i.e. all users can be set responsible)
+					userlist.addAll(app().users().getAllUsernames());
+				} else {
+					// authorization is by NAMED users (users with PUSH permission can be set responsible)
+					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>();

--
Gitblit v1.9.1