From c5a6523b2901cde8cce03ad05e576cc804808704 Mon Sep 17 00:00:00 2001 From: srosse <none@none> Date: Fri, 10 Mar 2017 13:56:44 +0100 Subject: [PATCH] OO-2606: set the current course node at the start of a course --- .../org/olat/course/run/RunMainController.java | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/src/main/java/org/olat/course/run/RunMainController.java b/src/main/java/org/olat/course/run/RunMainController.java index 4a4899f0087..d26225ffc7e 100644 --- a/src/main/java/org/olat/course/run/RunMainController.java +++ b/src/main/java/org/olat/course/run/RunMainController.java @@ -204,7 +204,7 @@ public class RunMainController extends MainLayoutBasicController implements Gene } navHandler = new NavigationHandler(uce, treeFilter, false); - updateTreeAndContent(ureq, currentCourseNode, null); + currentCourseNode = updateTreeAndContent(ureq, currentCourseNode, null); if (courseRepositoryEntry != null && repositoryManager.createRepositoryEntryStatus(courseRepositoryEntry.getStatusCode()).isClosed()) { wControl.setWarning(translate("course.closed")); @@ -396,7 +396,7 @@ public class RunMainController extends MainLayoutBasicController implements Gene nextLink.setEnabled(hasNext); } - protected boolean updateCurrentCourseNode(UserRequest ureq) { + protected CourseNode updateCurrentCourseNode(UserRequest ureq) { return updateTreeAndContent(ureq, getCurrentCourseNode(), "", null, null); } @@ -408,11 +408,11 @@ public class RunMainController extends MainLayoutBasicController implements Gene * @param nodecmd An optional command used to activate the run view or NULL if not available * @return true if the node jumped to is visible */ - private boolean updateTreeAndContent(UserRequest ureq, CourseNode calledCourseNode, String nodecmd) { + private CourseNode updateTreeAndContent(UserRequest ureq, CourseNode calledCourseNode, String nodecmd) { return updateTreeAndContent(ureq, calledCourseNode, nodecmd, null, null); } - private boolean updateTreeAndContent(UserRequest ureq, CourseNode calledCourseNode, String nodecmd, List<ContextEntry> entries, StateEntry state) { + private CourseNode updateTreeAndContent(UserRequest ureq, CourseNode calledCourseNode, String nodecmd, List<ContextEntry> entries, StateEntry state) { // build menu (treemodel) // dispose old node controller before creating the NodeClickedRef which creates // the new node controller. It is important that the old node controller is @@ -431,7 +431,7 @@ public class RunMainController extends MainLayoutBasicController implements Gene MessageController msgController = MessageUIFactory.createInfoMessage(ureq, getWindowControl(), translate("course.noaccess.title"), translate("course.noaccess.text")); contentP.setContent(msgController.getInitialComponent()); luTree.setTreeModel(new GenericTreeModel()); - return false; + return null; } } @@ -466,7 +466,7 @@ public class RunMainController extends MainLayoutBasicController implements Gene updateNextPrevious(); updateCourseDataAttributes(nclr.getCalledCourseNode()); updateLastUsage(nclr.getCalledCourseNode()); - return true; + return nclr.getCalledCourseNode(); } private void updateLastUsage(CourseNode calledCourseNode) { @@ -524,9 +524,9 @@ public class RunMainController extends MainLayoutBasicController implements Gene String nodeid = ureq.getParameter("nodeid"); if (nodeid != null) { CourseNode identNode = course.getRunStructure().getNode(nodeid); - boolean success = updateTreeAndContent(ureq, identNode, null); - if (success) { - currentCourseNode = identNode; + CourseNode node = updateTreeAndContent(ureq, identNode, null); + if (node != null) { + currentCourseNode = node; } else { getWindowControl().setWarning(translate("msg.nodenotavailableanymore")); } -- GitLab