diff --git a/src/main/java/org/olat/course/condition/GroupSelectionController.java b/src/main/java/org/olat/course/condition/GroupSelectionController.java index 2cc2e675bb9e7d3089f14dd34beac87107b4769e..1dfeaa8bb1d3428071085637445b7c19fa581db7 100644 --- a/src/main/java/org/olat/course/condition/GroupSelectionController.java +++ b/src/main/java/org/olat/course/condition/GroupSelectionController.java @@ -71,8 +71,6 @@ public class GroupSelectionController extends FormBasicController { private NewBGController groupCreateCntrllr; private CloseableModalController cmc; - private String[] groupNames; - private String[] groupKeys; private boolean createEnable; private FlexiTableElement groupTableElement; @@ -111,7 +109,7 @@ public class GroupSelectionController extends FormBasicController { Map<Long, StatisticsBusinessGroupRow> stats = businessGroupService.findBusinessGroupsStatistics(params).stream().collect(Collectors.toMap(StatisticsBusinessGroupRow::getKey, g -> g, (u, v) -> u)); groupTableRows = new ArrayList<>(); - Set<Integer> selectedRows = new HashSet<Integer>(); + Set<Integer> selectedRows = new HashSet<>(); for (BusinessGroup businessGroup : groups) { groupTableRows.add(new ENEditGroupTableContentRow(businessGroup, stats.get(businessGroup.getKey()))); @@ -208,6 +206,11 @@ public class GroupSelectionController extends FormBasicController { descriptionColumn.setAlwaysVisible(true); columnsModel.addFlexiColumnModel(descriptionColumn); + DefaultFlexiColumnModel coachesColumn = new DefaultFlexiColumnModel(ENEditGroupTableColumns.coaches); + coachesColumn.setDefaultVisible(true); + coachesColumn.setAlwaysVisible(true); + columnsModel.addFlexiColumnModel(coachesColumn); + DefaultFlexiColumnModel participantsColumn = new DefaultFlexiColumnModel(ENEditGroupTableColumns.participants); participantsColumn.setDefaultVisible(true); participantsColumn.setAlwaysVisible(true); diff --git a/src/main/java/org/olat/course/condition/_i18n/LocalStrings_de.properties b/src/main/java/org/olat/course/condition/_i18n/LocalStrings_de.properties index 3d6b601030d0d975dc2fb0314603d760de7fb34a..bbeebbdd8baafc36d19fd60b353d09456d318bf6 100644 --- a/src/main/java/org/olat/course/condition/_i18n/LocalStrings_de.properties +++ b/src/main/java/org/olat/course/condition/_i18n/LocalStrings_de.properties @@ -11,6 +11,7 @@ easy.operator=Operator easy.value=Wert engroupedit.table.key=ID engroupedit.table.up=Hoch +engroupedit.table.coaches=Betreuer engroupedit.table.description=Beschreibung engroupedit.table.down=Runter engroupedit.table.groupName=Gruppenname @@ -118,4 +119,5 @@ solution.provideone.nodereference=Hinweis\: Genau eine Kursbaustein-Identifikati solution.provideone.username=Hinweis\: Geben Sie genau einen Benutzernamen an. Beachten Sie, dass nicht gepr\u00FCft wird, ob der Benutzer in OLAT bereits existiert. solution.providetwo.attrvalue=Hinweis\: Die "{0}"-Funktion braucht einen Attributnamen und einen Attributswert, beide von "" umschlossen. solution.takeassessablenode=Hinweis\: Konsultieren Sie die Hilfe f\u00FCr eine Liste von bewertbaren Kursbausteinen. +table.header.coaches=Betreuer xx={0} diff --git a/src/main/java/org/olat/course/condition/_i18n/LocalStrings_en.properties b/src/main/java/org/olat/course/condition/_i18n/LocalStrings_en.properties index a6e0a0c8d627a6522702a47b038676cbce8e473c..b142ebb947f950a02f6933d352db47363b24edd5 100644 --- a/src/main/java/org/olat/course/condition/_i18n/LocalStrings_en.properties +++ b/src/main/java/org/olat/course/condition/_i18n/LocalStrings_en.properties @@ -11,6 +11,7 @@ easy.operator=Operator easy.value=Value engroupedit.table.key=ID engroupedit.table.up=Up +engroupedit.table.coaches=Coaches engroupedit.table.description=Description engroupedit.table.down=Down engroupedit.table.groupName=Groupname diff --git a/src/main/java/org/olat/course/nodes/en/ENEditGroupAreaFormController.java b/src/main/java/org/olat/course/nodes/en/ENEditGroupAreaFormController.java index 40dbee1311b28275b17d36f8d4af7706253d815d..30b4ad8a8ab6a893a6b67f148a0d5d9b35a68390 100644 --- a/src/main/java/org/olat/course/nodes/en/ENEditGroupAreaFormController.java +++ b/src/main/java/org/olat/course/nodes/en/ENEditGroupAreaFormController.java @@ -800,23 +800,6 @@ class ENEditGroupAreaFormController extends FormBasicController implements Gener return keyList; } - private KeysAndNames getGroupKeysAndNames(List<Long> keys) { - StringBuilder sb = new StringBuilder(); - KeysAndNames keysAndNames = new KeysAndNames(); - keysAndNames.getKeys().addAll(keys); - - List<BusinessGroupShort> groups = businessGroupService.loadShortBusinessGroups(keys); - for(BusinessGroupShort group:groups) { - if(sb.length() > 0) sb.append(" "); - sb.append("<i class='o_icon o_icon-fw o_icon_group'> </i> "); - sb.append(StringHelper.escapeHtml(group.getName())); - keysAndNames.getNames().add(group.getName()); - - } - keysAndNames.setDecoratedNames(sb.toString()); - return keysAndNames; - } - private KeysAndNames getAreaKeysAndNames(List<Long> keys) { StringBuilder sb = new StringBuilder(); List<BGArea> areas = areaManager.loadAreas(keys); diff --git a/src/main/java/org/olat/course/nodes/en/ENEditGroupTableContentRow.java b/src/main/java/org/olat/course/nodes/en/ENEditGroupTableContentRow.java index 0426c26a2425c6003644b43634419c9feb23fd99..b8a3d5812f40f39b52086a731edf24206f9dbd0c 100644 --- a/src/main/java/org/olat/course/nodes/en/ENEditGroupTableContentRow.java +++ b/src/main/java/org/olat/course/nodes/en/ENEditGroupTableContentRow.java @@ -35,6 +35,7 @@ public class ENEditGroupTableContentRow { private final String description; private final int minParticipants; private final int maxParticipants; + private final int coaches; private final int participants; private final int onWaitinglist; private final boolean waitinglistEnabled; @@ -46,6 +47,7 @@ public class ENEditGroupTableContentRow { minParticipants = 0; maxParticipants = 0; participants = 0; + coaches = 0; onWaitinglist = 0; waitinglistEnabled = false; } @@ -59,6 +61,7 @@ public class ENEditGroupTableContentRow { this.waitinglistEnabled = group.getWaitingListEnabled(); this.onWaitinglist = enrollment.getNumInWaitingList(); this.participants = enrollment.getNumOfParticipants(); + this.coaches = -1; } public ENEditGroupTableContentRow(BusinessGroup group, StatisticsBusinessGroupRow stats) { @@ -70,6 +73,7 @@ public class ENEditGroupTableContentRow { this.waitinglistEnabled = group.getWaitingListEnabled(); this.onWaitinglist = stats.getNumWaiting(); this.participants = stats.getNumOfParticipants(); + this.coaches = stats.getNumOfCoaches(); } @@ -93,6 +97,10 @@ public class ENEditGroupTableContentRow { return maxParticipants > -1 ? String.valueOf(maxParticipants) : " - "; } + public int getCoaches() { + return coaches; + } + public int getParticipants() { return participants; } diff --git a/src/main/java/org/olat/course/nodes/en/ENEditGroupTableModel.java b/src/main/java/org/olat/course/nodes/en/ENEditGroupTableModel.java index 719a0cfc93368b18ca9cde27a3df2426582fe8b8..b9ba65614bf4cfba841a693ef8b2ed128a7f5e98 100644 --- a/src/main/java/org/olat/course/nodes/en/ENEditGroupTableModel.java +++ b/src/main/java/org/olat/course/nodes/en/ENEditGroupTableModel.java @@ -81,6 +81,8 @@ public class ENEditGroupTableModel extends DefaultFlexiTableDataModel<ENEditGrou return row.isWaitinglistEnabled(); case onWaitinglist: return row.getOnWaitinglist(); + case coaches: + return row.getCoaches(); case participants: return row.getParticipants(); @@ -95,7 +97,7 @@ public class ENEditGroupTableModel extends DefaultFlexiTableDataModel<ENEditGrou } public List<String> getNames() { - List<String> names = new ArrayList<String>(); + List<String> names = new ArrayList<>(); for (ENEditGroupTableContentRow row : getObjects()) { names.add(row.getGroupName()); @@ -105,7 +107,7 @@ public class ENEditGroupTableModel extends DefaultFlexiTableDataModel<ENEditGrou } public List<Long> getKeys() { - List<Long> keys = new ArrayList<Long>(); + List<Long> keys = new ArrayList<>(); for (ENEditGroupTableContentRow row : getObjects()) { keys.add(row.getKey()); @@ -123,6 +125,7 @@ public class ENEditGroupTableModel extends DefaultFlexiTableDataModel<ENEditGrou minParticipants("engroupedit.table.minPart"), maxParticipants("engroupedit.table.maxPart"), description("engroupedit.table.description"), + coaches("engroupedit.table.coaches"), participants("engroupedit.table.enrolled"), waitinglistEnabled("engroupedit.table.waitinglist"), onWaitinglist("engroupedit.table.waitinglistParticipants"), diff --git a/src/main/java/org/olat/course/nodes/en/EnrollmentTableModelWithMaxSize.java b/src/main/java/org/olat/course/nodes/en/EnrollmentTableModelWithMaxSize.java index 96eea312a6333953b03868928ef6bf16474bf09b..bb153c8dc55639cb3f007bba35c79a05fc555a7d 100644 --- a/src/main/java/org/olat/course/nodes/en/EnrollmentTableModelWithMaxSize.java +++ b/src/main/java/org/olat/course/nodes/en/EnrollmentTableModelWithMaxSize.java @@ -108,7 +108,7 @@ public class EnrollmentTableModelWithMaxSize extends DefaultTableDataModel<Enrol // Waiting-list if (enrollmentRow.isWaitingListEnabled()) { // Waitinglist is enabled => show current size - return new Integer(enrollmentRow.getNumInWaitingList()); + return Integer.valueOf(enrollmentRow.getNumInWaitingList()); } return trans.translate("grouplist.table.noWaitingList"); case 5: