From 0671f7364bf0f817ecb3e2b75416120cca750006 Mon Sep 17 00:00:00 2001
From: srosse <none@none>
Date: Mon, 9 May 2016 16:37:06 +0200
Subject: [PATCH] OO-2014: fix RS if referenced course hasn't any owner

---
 .../qti/editor/QTIEditorMainController.java   | 24 +++++++++----------
 1 file changed, 11 insertions(+), 13 deletions(-)

diff --git a/src/main/java/org/olat/ims/qti/editor/QTIEditorMainController.java b/src/main/java/org/olat/ims/qti/editor/QTIEditorMainController.java
index abbda800cfa..a7cc591538e 100644
--- a/src/main/java/org/olat/ims/qti/editor/QTIEditorMainController.java
+++ b/src/main/java/org/olat/ims/qti/editor/QTIEditorMainController.java
@@ -31,7 +31,6 @@ import java.util.Date;
 import java.util.HashMap;
 import java.util.Iterator;
 import java.util.List;
-import java.util.Locale;
 import java.util.Map;
 import java.util.Set;
 import java.util.concurrent.CountDownLatch;
@@ -1251,18 +1250,17 @@ public class QTIEditorMainController extends MainLayoutBasicController implement
 				RepositoryEntry entry = repositoryManager.lookupRepositoryEntry(course, false);
 				if(entry != null) {//OO-1300
 					List<Identity> stakeHoldersIds = repositoryService.getMembers(entry, GroupRoles.owner.name());
-	
-					// add stakeholders as group
-					cl = new ContactList(courseTitle);
-					cl.addAllIdentites(stakeHoldersIds);
-					changeEmail.addEmailTo(cl);
-	
-					User user = stakeHoldersIds.get(0).getUser();
-					Locale loc = ureq.getLocale();
-					stakeHolders.append(user.getProperty(UserConstants.FIRSTNAME, loc)).append(" ").append(user.getProperty(UserConstants.LASTNAME, loc));
-					for (int i = 1; i < stakeHoldersIds.size(); i++) {
-						user = stakeHoldersIds.get(i).getUser();
-						stakeHolders.append(", ").append(user.getProperty(UserConstants.FIRSTNAME, loc)).append(" ").append(user.getProperty(UserConstants.LASTNAME, loc));
+					if(stakeHoldersIds != null && stakeHoldersIds.size() > 0) {
+						// add stakeholders as group
+						cl = new ContactList(courseTitle);
+						cl.addAllIdentites(stakeHoldersIds);
+						changeEmail.addEmailTo(cl);
+		
+						for (Identity stakeHoldersId:stakeHoldersIds) {
+							if(stakeHolders.length() > 0) stakeHolders.append(", ");
+							User user = stakeHoldersId.getUser();
+							stakeHolders.append(user.getProperty(UserConstants.FIRSTNAME, getLocale())).append(" ").append(user.getProperty(UserConstants.LASTNAME, getLocale()));
+						}
 					}
 				}
 
-- 
GitLab