Index: lams_central/web/includes/javascript/authoring/authoringActivity.js =================================================================== diff -u -r1a329783c6ff3378add4b1279182e37698058230 -r5be40944bddd2480de5d58417669a56c4d051680 --- lams_central/web/includes/javascript/authoring/authoringActivity.js (.../authoringActivity.js) (revision 1a329783c6ff3378add4b1279182e37698058230) +++ lams_central/web/includes/javascript/authoring/authoringActivity.js (.../authoringActivity.js) (revision 5be40944bddd2480de5d58417669a56c4d051680) @@ -257,6 +257,7 @@ this.authorURL = authorURL; this.title = title; this.readOnly = readOnly; + this.requireGrouping = false; if (evaluation) { this.gradebookToolOutputDefinitionName = evaluation[0]; this.gradebookToolOutputWeight = evaluation.length > 1 ? evaluation[1] : null; @@ -618,8 +619,10 @@ })) // activity colour depends on its category ID .attr({ - 'stroke' : layout.colors.toolActivityBorder[layout.toolMetadata[this.learningLibraryID].activityCategoryID], - 'stroke-width' : '0.5', + 'stroke' : this.requireGrouping ? + layout.colors.activityRequireGrouping + : layout.colors.toolActivityBorder[layout.toolMetadata[this.learningLibraryID].activityCategoryID], + 'stroke-width' : this.requireGrouping ? '3' : '0.5', 'stroke-linejoin' : 'round', 'fill' : layout.colors.activity[layout.toolMetadata[this.learningLibraryID].activityCategoryID] }), Index: lams_central/web/includes/javascript/authoring/authoringGeneral.js =================================================================== diff -u -rdae7eeb158338a956aaec37705b0c1efb18be6f6 -r5be40944bddd2480de5d58417669a56c4d051680 --- lams_central/web/includes/javascript/authoring/authoringGeneral.js (.../authoringGeneral.js) (revision dae7eeb158338a956aaec37705b0c1efb18be6f6) +++ lams_central/web/includes/javascript/authoring/authoringGeneral.js (.../authoringGeneral.js) (revision 5be40944bddd2480de5d58417669a56c4d051680) @@ -132,7 +132,9 @@ 'optionalActivityBorder' : '#00007f', // dashed border around a selected activity 'selectEffect' : 'black', - 'transition' : 'rgb(119,126,157)' + 'transition' : 'rgb(119,126,157)', + // highlight TBL activities which should be grouped + 'activityRequireGrouping' : 'red' }, 'defaultTextAttributes' : { @@ -1596,6 +1598,8 @@ for (var activity of activities) { if (!activity.grouping){ activitiesToGroup.push(activity); + activity.requireGrouping = true; + activity.draw(); } } return activitiesToGroup.length === 0 ? null : activitiesToGroup; Index: lams_central/web/includes/javascript/authoring/authoringProperty.js =================================================================== diff -u -r1a329783c6ff3378add4b1279182e37698058230 -r5be40944bddd2480de5d58417669a56c4d051680 --- lams_central/web/includes/javascript/authoring/authoringProperty.js (.../authoringProperty.js) (revision 1a329783c6ff3378add4b1279182e37698058230) +++ lams_central/web/includes/javascript/authoring/authoringProperty.js (.../authoringProperty.js) (revision 5be40944bddd2480de5d58417669a56c4d051680) @@ -705,6 +705,10 @@ if (newGroupingValue != activity.grouping) { activity.grouping = newGroupingValue; redrawNeeded = true; + if (activity.requireGrouping && newGroupingValue != null) { + // get rid of red border set by TBL check + activity.requireGrouping = false; + } } }