Index: lams_flash/src/central/flash/org/lamsfoundation/lams/monitoring/Application.as =================================================================== diff -u -r245728d04c9feab340685e9d94b5623e0f9a1d74 -r345e61bed6622f37845b0056796ce63d60ac0640 --- lams_flash/src/central/flash/org/lamsfoundation/lams/monitoring/Application.as (.../Application.as) (revision 245728d04c9feab340685e9d94b5623e0f9a1d74) +++ lams_flash/src/central/flash/org/lamsfoundation/lams/monitoring/Application.as (.../Application.as) (revision 345e61bed6622f37845b0056796ce63d60ac0640) @@ -420,11 +420,10 @@ public function MonitorActivityContent():Void{ - trace("testing MonitorActivityContent"); var ca = _monitor.getMM().selectedItem - if (CanvasActivity(ca) != null){ - _monitor.getMV().getController().activityDoubleClick(ca, "MonitorTabView"); - }else { + if(CanvasActivity(ca) != null){ + _monitor.getMV().getController().activityDoubleClick(ca, "MonitorTabView", null, true); + } else { LFMessage.showMessageAlert(Dictionary.getValue('al_activity_openContent_invalid')); } } Index: lams_flash/src/central/flash/org/lamsfoundation/lams/monitoring/mv/MonitorController.as =================================================================== diff -u -rfaa2451a2961575550669f2bceb7522490dde9b4 -r345e61bed6622f37845b0056796ce63d60ac0640 --- lams_flash/src/central/flash/org/lamsfoundation/lams/monitoring/mv/MonitorController.as (.../MonitorController.as) (revision faa2451a2961575550669f2bceb7522490dde9b4) +++ lams_flash/src/central/flash/org/lamsfoundation/lams/monitoring/mv/MonitorController.as (.../MonitorController.as) (revision 345e61bed6622f37845b0056796ce63d60ac0640) @@ -76,7 +76,6 @@ Debugger.log('activityClick CanvasActivity:'+act.Learner.getUserName(),Debugger.GEN,'activityClick','MonitorController'); }else { _monitorModel.selectedItem = act; - _monitorModel.setDirty(); } } @@ -284,27 +283,27 @@ Debugger.log('activityReleaseOutside CanvasActivity:'+ca.activity.activityID,Debugger.GEN,'activityReleaseOutside','MonitorController'); } - public function activityDoubleClick(ca:Object, forTabView:String, learnerID:Number):Void{ + public function activityDoubleClick(ca:Object, forTabView:String, learnerID:Number, fromContextMenu:Boolean):Void{ Debugger.log("ca.activity.isBranchingActivity(): "+ca.activity.isBranchingActivity(), Debugger.GEN, "activityDoubleClick", "MonitorController"); - if(ca.activity.isBranchingActivity()) { + if(ca.activity.isBranchingActivity() && !fromContextMenu) { _monitorModel.openBranchActivityContent(ca, true); - } - else { + } else { var _learnerID:Number; var URLToSend:String; setBusy(); - if (forTabView == "MonitorTabView"){ + if(forTabView == "MonitorTabView"){ URLToSend = _root.serverURL+_root.monitoringURL+'getActivityMonitorURL&activityID='+ca.activity.activityID+'&lessonID='+_root.lessonID; URLToSend += '&contentFolderID='+MonitorModel(getModel()).getSequence().contentFolderID - }else { - if (learnerID != null){ + } else { + if(learnerID != null){ _learnerID = learnerID; - }else { + } else { _learnerID = ca.learnerID; } + if (forTabView == "MonitorTabViewLearner"){ Debugger.log('activityDoubleClick CanvasActivity:'+ca.activityID,Debugger.GEN,'activityDoubleClick','MonitorController'); URLToSend = _root.serverURL+_root.monitoringURL+'getLearnerActivityURL&activityID='+ca.activityID+'&userID='+_learnerID+'&lessonID='+_root.lessonID; @@ -314,16 +313,17 @@ } Debugger.log('Opening url (ca.activityID) :'+URLToSend+" Opening url (ca.activityID)"+URLToSend,Debugger.CRITICAL,'openToolActivityContent','MonitorModel'); - if (forTabView != "MonitorTabView" && forTabView != "MonitorTabViewLearner"){ - if (ca.activityStatus == undefined){ + if(forTabView != "MonitorTabView" && forTabView != "MonitorTabViewLearner"){ + if(ca.activityStatus == undefined){ + var alertMSG:String = Dictionary.getValue('al_doubleclick_todoactivity',[ca.learnerName, ca.activity.title]); getURL("javascript:alert('"+alertMSG+"');"); - }else { + } else { JsPopup.getInstance().launchPopupWindow(URLToSend, 'MonitorLearnerActivity', 600, 800, true, true, false, false, false); } - }else { + } else { JsPopup.getInstance().launchPopupWindow(URLToSend, 'MonitorLearnerActivity', 600, 800, true, true, false, false, false); } @@ -342,29 +342,20 @@ * @return */ public function change(evt):Void{ - trace(evt.target); - trace("test: "+ String(evt.target.selectedIndex)) _monitorModel.setSelectedTab(evt.target.selectedIndex) - if (_monitorModel.getSequence() == null){ - trace ("None of Sequence is selected yet!"); - }else { + + if (_monitorModel.getSequence() != null) _monitorModel.changeTab(evt.target.selectedIndex); - } - - } private function exportClassPortfolio():Void{ var exp_url:String = _root.serverURL+"learning/exportWaitingPage.jsp?mode=teacher&lessonID="+_root.lessonID; - JsPopup.getInstance().launchPopupWindow(exp_url, 'ExportPortfolio', 410, 640, true, true, false, false, false); } private function openJournalEntries():Void{ var journals_url:String = _root.serverURL+"learning/notebook.do?method=viewAllJournals&lessonID="+_root.lessonID; - JsPopup.getInstance().launchPopupWindow(journals_url, 'JournalEntries', 570, 796, true, true, false, false, false); - } private function openEditOnFly():Void{ @@ -379,7 +370,6 @@ } public function click(evt):Void{ - trace(evt.target); var tgt:String = new String(evt.target); if(tgt.indexOf("editClass_btn") != -1){ _monitorModel.setDialogOpen("LM_DIALOG"); @@ -420,9 +410,9 @@ */ public function openDialogLoaded(evt:Object) { Debugger.log('!evt.type:'+evt.type,Debugger.GEN,'openDialogLoaded','org.lamsfoundation.lams.MonitorController'); - //Check type is correct - trace('open dialog evt type:' + evt.type); - if(evt.type == 'contentLoaded'){ + + //Check type is correct + if(evt.type == 'contentLoaded'){ //set a ref to the view evt.target.scrollContent.monitorView = LessonTabView(getView()); Index: lams_flash/src/central/flash/org/lamsfoundation/lams/monitoring/mv/MonitorModel.as =================================================================== diff -u -rfaa2451a2961575550669f2bceb7522490dde9b4 -r345e61bed6622f37845b0056796ce63d60ac0640 --- lams_flash/src/central/flash/org/lamsfoundation/lams/monitoring/mv/MonitorModel.as (.../MonitorModel.as) (revision faa2451a2961575550669f2bceb7522490dde9b4) +++ lams_flash/src/central/flash/org/lamsfoundation/lams/monitoring/mv/MonitorModel.as (.../MonitorModel.as) (revision 345e61bed6622f37845b0056796ce63d60ac0640) @@ -482,12 +482,19 @@ private function orderDesign(activity:Activity, order:Array):Void{ order.push(activity); + if(activity.isBranchingActivity() || activity.isSequenceActivity()) { + var children:Array = _activeSeq.getLearningDesignModel().getComplexActivityChildren(activity.activityUIID); + for(var i=0; i 0 || ddm_activity.parentUIID > 0){ - var parentAct; - if((parentAct = _activeSeq.getLearningDesignModel().activities.get(ddm_activity.parentUIID)) != null) - if(parentAct.activityTypeID == Activity.SEQUENCE_ACTIVITY_TYPE) - broadcastViewUpdate("DRAW_ACTIVITY_SEQ", ddm_activity, tabID, drawLearner); - } else { - broadcastViewUpdate("DRAW_ACTIVITY", ddm_activity, tabID, drawLearner); - } + + if(ddm_activity.activityTypeID == Activity.SEQUENCE_ACTIVITY_TYPE){ + broadcastViewUpdate("ADD_SEQUENCE", ddm_activity); + } else if(ddm_activity.parentActivityID > 0 || ddm_activity.parentUIID > 0){ + var parentAct; + if((parentAct = _activeSeq.getLearningDesignModel().activities.get(ddm_activity.parentUIID)) != null) + if(parentAct.activityTypeID == Activity.SEQUENCE_ACTIVITY_TYPE) + broadcastViewUpdate("DRAW_ACTIVITY_SEQ", ddm_activity, tabID, drawLearner); + } else { + broadcastViewUpdate("DRAW_ACTIVITY", ddm_activity, tabID, drawLearner); + } } //now check the transitions: Index: lams_flash/src/central/flash/org/lamsfoundation/lams/monitoring/mv/tabviews/LearnerTabView.as =================================================================== diff -u -rfaa2451a2961575550669f2bceb7522490dde9b4 -r345e61bed6622f37845b0056796ce63d60ac0640 --- lams_flash/src/central/flash/org/lamsfoundation/lams/monitoring/mv/tabviews/LearnerTabView.as (.../LearnerTabView.as) (revision faa2451a2961575550669f2bceb7522490dde9b4) +++ lams_flash/src/central/flash/org/lamsfoundation/lams/monitoring/mv/tabviews/LearnerTabView.as (.../LearnerTabView.as) (revision 345e61bed6622f37845b0056796ce63d60ac0640) @@ -278,7 +278,7 @@ mm.activitiesDisplayed.clear(); mm.getMonitor().getProgressData(mm.getSequence()); - + } private function drawAllLearnersDesign(mm:MonitorModel, tabID:Number){ @@ -404,7 +404,7 @@ } //take action depending on act type - if(a.activityTypeID==Activity.TOOL_ACTIVITY_TYPE || a.isGroupActivity()){ + if(a.activityTypeID==Activity.TOOL_ACTIVITY_TYPE || a.isGroupActivity() || a.isBranchingActivity()) { newActivity_mc = _activityLayer_mc.createChildAtDepth("LearnerActivity", _activityLayer_mc.getNextHighestDepth(),{_activity:a,_controller:mc,_view:ltv, _x:ACT_X, _y:ACT_Y+40, learner:learner}); ACT_X = newActivity_mc._x + newActivity_mc._width; Index: lams_flash/src/common/flash/org/lamsfoundation/lams/common/CommonCanvasView.as =================================================================== diff -u -rfaa2451a2961575550669f2bceb7522490dde9b4 -r345e61bed6622f37845b0056796ce63d60ac0640 --- lams_flash/src/common/flash/org/lamsfoundation/lams/common/CommonCanvasView.as (.../CommonCanvasView.as) (revision faa2451a2961575550669f2bceb7522490dde9b4) +++ lams_flash/src/common/flash/org/lamsfoundation/lams/common/CommonCanvasView.as (.../CommonCanvasView.as) (revision 345e61bed6622f37845b0056796ce63d60ac0640) @@ -84,17 +84,18 @@ var ca = CanvasActivity(m.selectedItem); var a:Activity = ca.activity; - var ddm:DesignDataModel = (model instanceof MonitorModel) ? MonitorModel(model).getMonitor().ddm : CanvasModel(model).getCanvas().ddm; + var module = (model instanceof MonitorModel) ? MonitorModel(model).getMonitor() : CanvasModel(model).getCanvas(); + Debugger.log("prevSelectedItem : " + m.prevSelectedItem.activity.title, Debugger.CRITICAL, "highlightActivity", "CommonCanvasView"); + // deselect previously selected item if(m.prevSelectedItem != null) { // if child of an complex activity is previously selected, it is easiest to clear all the children - if(m.prevSelectedItem.activity.parentUIID != null && ddm.getActivityByUIID(m.prevSelectedItem.activity.parentUIID).activityTypeID != Activity.SEQUENCE_ACTIVITY_TYPE) { + if(m.prevSelectedItem.activity.parentUIID != null && module.ddm.getActivityByUIID(m.prevSelectedItem.activity.parentUIID).activityTypeID != Activity.SEQUENCE_ACTIVITY_TYPE) { var caComplex = m.activitiesDisplayed.get(m.prevSelectedItem.activity.parentUIID); caComplex.refreshChildren(); } else { - var dca:ICanvasActivity = m.activitiesDisplayed.get(m.prevSelectedItem.activity.activityUIID); - dca.setSelected(false); + m.prevSelectedItem.setSelected(false); } } Index: lams_monitoring/web/lams_monitoring.swf =================================================================== diff -u -ra51a3578f817472254bb2e84b301122a6d8268cd -r345e61bed6622f37845b0056796ce63d60ac0640 Binary files differ Index: lams_monitoring/web/lams_monitoring_library.swf =================================================================== diff -u -ra51a3578f817472254bb2e84b301122a6d8268cd -r345e61bed6622f37845b0056796ce63d60ac0640 Binary files differ