Index: lams_flash/src/central/flash/org/lamsfoundation/lams/learner/ls/LessonModel.as =================================================================== diff -u -r77495ccc32bed23cbe45d47e16ae585c9a82d924 -r150da91e3a230056c55469c8e648fa1d7614b618 --- lams_flash/src/central/flash/org/lamsfoundation/lams/learner/ls/LessonModel.as (.../LessonModel.as) (revision 77495ccc32bed23cbe45d47e16ae585c9a82d924) +++ lams_flash/src/central/flash/org/lamsfoundation/lams/learner/ls/LessonModel.as (.../LessonModel.as) (revision 150da91e3a230056c55469c8e648fa1d7614b618) @@ -629,6 +629,14 @@ public function getLesson():Lesson{ return _lesson; } - + + public function findParent(a:Activity, b:Activity):Boolean { + if(a.parentUIID == b.activityUIID) + return true; + else if(a.parentUIID == null) + return false; + else + return findParent(_learningDesignModel.getActivityByUIID(a.parentUIID), b); + } } \ No newline at end of file Index: lams_flash/src/common/flash/org/lamsfoundation/lams/common/LearnerActivity.as =================================================================== diff -u -rf9e8747f735890453f4d3462ba35f35c8774c4e8 -r150da91e3a230056c55469c8e648fa1d7614b618 --- lams_flash/src/common/flash/org/lamsfoundation/lams/common/LearnerActivity.as (.../LearnerActivity.as) (revision f9e8747f735890453f4d3462ba35f35c8774c4e8) +++ lams_flash/src/common/flash/org/lamsfoundation/lams/common/LearnerActivity.as (.../LearnerActivity.as) (revision 150da91e3a230056c55469c8e648fa1d7614b618) @@ -348,8 +348,8 @@ } } else if(this.activity.isOptionsWithSequencesActivity() || this.activity.isOptionalActivity() || this.activity.isParallelActivity()) { Debugger.log('activeComplex:'+activeComplex, Debugger.CRITICAL,'onRelease','LearnerActivity'); - - if(LearnerComplexActivity(this._parent._parent).activity.activityUIID == this.activity.parentUIID || activeSequence.activityUIID == this.activity.parentUIID) { + if(model.findParent(this.activity, LearnerComplexActivity(this._parent._parent).activity) || (activeSequence.activityUIID == this.activity.parentUIID)) { + //if(LearnerComplexActivity(this._parent._parent).activity.activityUIID == this.activity.parentUIID || activeSequence.activityUIID == this.activity.parentUIID) { if(activeComplex == this.activity) { // close current active complex LearnerComplexActivity(this._parent._parent).removeAllChildrenAndInputComplex(null); Index: lams_flash/src/common/flash/org/lamsfoundation/lams/common/LearnerComplexActivity.as =================================================================== diff -u -rf9e8747f735890453f4d3462ba35f35c8774c4e8 -r150da91e3a230056c55469c8e648fa1d7614b618 --- lams_flash/src/common/flash/org/lamsfoundation/lams/common/LearnerComplexActivity.as (.../LearnerComplexActivity.as) (revision f9e8747f735890453f4d3462ba35f35c8774c4e8) +++ lams_flash/src/common/flash/org/lamsfoundation/lams/common/LearnerComplexActivity.as (.../LearnerComplexActivity.as) (revision 150da91e3a230056c55469c8e648fa1d7614b618) @@ -230,11 +230,13 @@ return i+1; } - } else if(learnerAct.activity.isBranchingActivity() && !isLearnerModule()) { + } else if(learnerAct.activity.isBranchingActivity()) { Debugger.log('test: ' + (learnerAct.isAttempted || learnerAct.isCompleted), Debugger.CRITICAL, 'drawChildren', 'LearnerComplexActivity'); if(learnerAct.isAttempted || learnerAct.isCompleted) { - drawActiveBranch(learnerAct, container); + if(!isLearnerModule()) { + drawActiveBranch(learnerAct, container); + } return i+1; } @@ -299,10 +301,20 @@ learner = (model instanceof LessonModel) ? model.progressData : learner; actStatus = null; + checkIfBranchActive(); checkIfSequenceActive(); + draw(); } + private function checkIfBranchActive():Void { + for(var i=0; i