diff --git a/src/main/java/org/olat/course/statistic/StatisticCourseNodesController.java b/src/main/java/org/olat/course/statistic/StatisticCourseNodesController.java index ef4b58506b39d9da28af23f397684e901314f10c..ce9f009c36532dd982a6881c69600c351df9cea2 100644 --- a/src/main/java/org/olat/course/statistic/StatisticCourseNodesController.java +++ b/src/main/java/org/olat/course/statistic/StatisticCourseNodesController.java @@ -171,6 +171,7 @@ public class StatisticCourseNodesController extends BasicController implements A String ident = te.getNodeId(); TreeNode selectedNode = courseTree.getTreeModel().getNodeById(ident); doSelectNode(ureq, selectedNode); + initTools(); } } } @@ -188,6 +189,7 @@ public class StatisticCourseNodesController extends BasicController implements A String selNodeId = nclr.getIdent(); courseTree.setSelectedNodeId(selNodeId); doSelectNode(ureq, nclr); + initTools(); } } } @@ -210,9 +212,6 @@ public class StatisticCourseNodesController extends BasicController implements A if(currentCtrl != null) { listenTo(currentCtrl); layoutCtr.setCol3(currentCtrl.getInitialComponent()); - if(currentCtrl instanceof TooledController) { - ((TooledController)currentCtrl).initTools(); - } } else { layoutCtr.setCol3(new Panel("empty")); } diff --git a/src/main/java/org/olat/ims/qti21/ui/statistics/QTI21AssessmentTestStatisticsController.java b/src/main/java/org/olat/ims/qti21/ui/statistics/QTI21AssessmentTestStatisticsController.java index 459144a918f526c8955b01589c5d75201c238e9d..743052e2573805045d33253ca9833a1f18829a6f 100644 --- a/src/main/java/org/olat/ims/qti21/ui/statistics/QTI21AssessmentTestStatisticsController.java +++ b/src/main/java/org/olat/ims/qti21/ui/statistics/QTI21AssessmentTestStatisticsController.java @@ -105,10 +105,8 @@ public class QTI21AssessmentTestStatisticsController extends BasicController imp printLink = LinkFactory.createToolLink("print" + CodeHelper.getRAMUniqueID(), translate("print"), this); printLink.setIconLeftCSS("o_icon o_icon_print o_icon-lg"); printLink.setPopup(new LinkPopupSettings(680, 500, "qti-stats")); - stackPanel.addTool(printLink, Align.right); downloadRawLink = LinkFactory.createToolLink("download" + CodeHelper.getRAMUniqueID(), translate("download.raw.data"), this); - stackPanel.addTool(downloadRawLink, Align.right); } else { printLink = null; downloadRawLink = LinkFactory.createLink("download.raw.data", mainVC, this); @@ -116,7 +114,6 @@ public class QTI21AssessmentTestStatisticsController extends BasicController imp mainVC.put("download", downloadRawLink); } downloadRawLink.setIconLeftCSS("o_icon o_icon_download o_icon-lg"); - if(withFilter && (resourceResult.canViewAnonymousUsers() || resourceResult.canViewNonParticipantUsers())) { filterCtrl = new UserFilterController(ureq, getWindowControl(), @@ -241,12 +238,13 @@ public class QTI21AssessmentTestStatisticsController extends BasicController imp List<ItemInfos> itemInfos = new ArrayList<>(statisticItems.size()); for (AssessmentItemStatistic statisticItem: statisticItems) { AssessmentItem item = statisticItem.getAssessmentItem(); - - String label = Integer.toString(++i); - String text = item.getTitle(); - d1.add(statisticItem.getAverageScore(), label); - d2.add(statisticItem.getNumOfCorrectAnswers(), label); - itemInfos.add(new ItemInfos(label, text)); + if(item != null) { + String label = Integer.toString(++i); + String text = item.getTitle(); + d1.add(statisticItem.getAverageScore(), label); + d2.add(statisticItem.getNumOfCorrectAnswers(), label); + itemInfos.add(new ItemInfos(label, text)); + } } mainVC.contextPut("itemInfoList", itemInfos);