Index: lams_central/src/java/org/lamsfoundation/lams/web/planner/PedagogicalPlannerAction.java =================================================================== RCS file: /usr/local/cvsroot/lams_central/src/java/org/lamsfoundation/lams/web/planner/PedagogicalPlannerAction.java,v diff -u -r1.45 -r1.46 --- lams_central/src/java/org/lamsfoundation/lams/web/planner/PedagogicalPlannerAction.java 22 Sep 2012 18:26:19 -0000 1.45 +++ lams_central/src/java/org/lamsfoundation/lams/web/planner/PedagogicalPlannerAction.java 18 Dec 2012 13:08:49 -0000 1.46 @@ -242,6 +242,7 @@ public static final String PARAM_REQUEST_SRC = "requestSrc"; public static final String PARAM_NOTIFY_CLOSE_URL = "notifyCloseURL"; public static final String PARAM_FORBID_BUTTONS = "forbidButtons"; + public static final String PARAM_RETURN_TO_PARENT = "returnToParent"; // Template copy mode values public static final String COPY_MODE_EDIT_CURRENT = "editCurrent"; @@ -433,10 +434,14 @@ boolean isEditor = canEditNode(request, nodeUid); Integer nodePermissions = node.getPermissions(); planner.setPermissions(nodePermissions, isEditor); - - // set it here rather than in JSP page - if (StringUtils.isBlank(node.getFullDescription())) { - planner.setNodeUid(node.getParent().getUid()); + + boolean returnToParent = WebUtil.readBooleanParam(request, PARAM_RETURN_TO_PARENT, false); + // after editing the node, should user return to parent or to current node + if (returnToParent) { + // if parent is null, do not set anything and user will return to root node + if (node.getParent() != null) { + planner.setNodeUid(node.getParent().getUid()); + } } else { planner.setNodeUid(node.getUid()); }