Index: lams_central/web/includes/javascript/authoring/authoringGeneral.js =================================================================== diff -u -rb31d7691730ea3c6de4b0aaf2a297a22b7c53e93 -ra2f3ced2fdf996943d0d86c3cde7d895e2d11a0d --- lams_central/web/includes/javascript/authoring/authoringGeneral.js (.../authoringGeneral.js) (revision b31d7691730ea3c6de4b0aaf2a297a22b7c53e93) +++ lams_central/web/includes/javascript/authoring/authoringGeneral.js (.../authoringGeneral.js) (revision a2f3ced2fdf996943d0d86c3cde7d895e2d11a0d) @@ -1553,12 +1553,15 @@ if (!firstActivity) { return null; } - // the first activity can be grouping or the second one + // the first activity can be grouping or the second or third one (Live Edit gate and notebook can be in front) var firstGroupingActivity = firstActivity instanceof ActivityDefs.GroupingActivity ? firstActivity : null; if (!firstGroupingActivity) { firstGroupingActivity = getNextActivity(firstActivity); if (!(firstGroupingActivity instanceof ActivityDefs.GroupingActivity)){ - return null; + firstGroupingActivity = getNextActivity(firstGroupingActivity); + if (!(firstGroupingActivity instanceof ActivityDefs.GroupingActivity)){ + return null; + } } } @@ -2780,6 +2783,16 @@ layout.ld.learningDesignID = response.learningDesignID; if (layout.liveEdit) { + var missingGroupingOnActivities = GeneralLib.checkTBLGrouping(); + if (missingGroupingOnActivities) { + var info = LABELS.SAVE_SUCCESSFUL_CHECK_GROUPING; + for (var activity of missingGroupingOnActivities){ + info += '
* ' + activity.title; + } + layout.infoDialog.data('show')(info); + // do not close Live Edit if TBL errors appear + return; + } // let backend know that system gate needs to be removed $.ajax({ type : 'POST', @@ -2826,20 +2839,10 @@ GeneralLib.setModified(false); // close the Live Edit dialog - var missingGroupingOnActivities = GeneralLib.checkTBLGrouping(); - if (missingGroupingOnActivities) { - var info = LABELS.SAVE_SUCCESSFUL_CHECK_GROUPING; - for (var activity of missingGroupingOnActivities){ - info += '
* ' + activity.title; - } - layout.infoDialog.data('show')(info); - - } else { - layout.infoDialog.data('show')(LABELS.LIVEEDIT_SAVE_SUCCESSFUL, true); - setTimeout(function(){ - window.parent.closeDialog('dialogAuthoring'); - }, 5000); - } + layout.infoDialog.data('show')(LABELS.LIVEEDIT_SAVE_SUCCESSFUL, true); + setTimeout(function(){ + window.parent.closeDialog('dialogAuthoring'); + }, 5000); } });