Index: lams_central/src/flash/org/lamsfoundation/lams/monitoring/Application.as =================================================================== diff -u -rd502e6d1f34632a757dd6bda2daf8b0c07e1c8a5 -rcffbd5b971c1bd0f8656d991d356593444f65d41 --- lams_central/src/flash/org/lamsfoundation/lams/monitoring/Application.as (.../Application.as) (revision d502e6d1f34632a757dd6bda2daf8b0c07e1c8a5) +++ lams_central/src/flash/org/lamsfoundation/lams/monitoring/Application.as (.../Application.as) (revision cffbd5b971c1bd0f8656d991d356593444f65d41) @@ -237,8 +237,12 @@ requestSequence(_root.lessonID); } - private function requestSequence(seqID:Number){ - var callback:Function = Proxy.create(this, saveSequence); + public function reloadSequence(seqID:Number, target:Function){ + requestSequence(seqID, target); + } + + private function requestSequence(seqID:Number, target:Function){ + var callback:Function = (target == null) ? Proxy.create(this, saveSequence) : target; Application.getInstance().getComms().getRequest('monitoring/monitoring.do?method=getLessonDetails&lessonID=' + String(seqID) + '&userID=' + _root.userID,callback, false); } @@ -252,16 +256,20 @@ } + public function reloadLearningDesign(seq:Sequence, target:Function) { + openLearningDesign(seq, target); + } + /** * server call for Learning Deign and sent it to the save it in DataDesignModel * * @usage * @param seq type Sequence; * @return Void */ - private function openLearningDesign(seq:Sequence){ + private function openLearningDesign(seq:Sequence, target:Function){ var designID:Number = seq.learningDesignID; - var callback:Function = Proxy.create(this,saveDataDesignModel); + var callback:Function = (target == null) ? Proxy.create(this,saveDataDesignModel) : target; Application.getInstance().getComms().getRequest('authoring/author.do?method=getLearningDesignDetails&learningDesignID='+designID,callback, false); Index: lams_central/src/flash/org/lamsfoundation/lams/monitoring/layout/DefaultLayoutManager.as =================================================================== diff -u -rd502e6d1f34632a757dd6bda2daf8b0c07e1c8a5 -rcffbd5b971c1bd0f8656d991d356593444f65d41 --- lams_central/src/flash/org/lamsfoundation/lams/monitoring/layout/DefaultLayoutManager.as (.../DefaultLayoutManager.as) (revision d502e6d1f34632a757dd6bda2daf8b0c07e1c8a5) +++ lams_central/src/flash/org/lamsfoundation/lams/monitoring/layout/DefaultLayoutManager.as (.../DefaultLayoutManager.as) (revision cffbd5b971c1bd0f8656d991d356593444f65d41) @@ -93,14 +93,18 @@ public function checkAvailability(_sequence:Sequence):Object { var _ddm:DesignDataModel = null; - var _obj:Object = new Object(); - _ddm = (_sequence.getLearningDesignModel() != null) ? _sequence.getLearningDesignModel() : _ddm; - _obj.locked = _ddm.editOverrideLock; - _obj.isEditingUser = (_ddm.editOverrideUserID == _root.userID) ? true : false; + return checkAvailabilityOnDDM(_ddm); + } + + public function checkAvailabilityOnDDM(_ddm:DesignDataModel):Object { + var _obj:Object = new Object(); - return _obj; + _obj.locked = _ddm.editOverrideLock; + _obj.isEditingUser = (_ddm.editOverrideUserID == _root.userID) ? true : false; + + return _obj; } public function doMonitor(isLocked:Boolean, isEditingUser:Boolean) { Index: lams_central/src/flash/org/lamsfoundation/lams/monitoring/mv/Monitor.as =================================================================== diff -u -r2eed003c49aecd1a11d93a86bb4273d581f3d4f6 -rcffbd5b971c1bd0f8656d991d356593444f65d41 --- lams_central/src/flash/org/lamsfoundation/lams/monitoring/mv/Monitor.as (.../Monitor.as) (revision 2eed003c49aecd1a11d93a86bb4273d581f3d4f6) +++ lams_central/src/flash/org/lamsfoundation/lams/monitoring/mv/Monitor.as (.../Monitor.as) (revision cffbd5b971c1bd0f8656d991d356593444f65d41) @@ -485,7 +485,7 @@ var callback:Function = Proxy.create(this,readyEditOnFly, true); - Application.getInstance().getComms().getRequest('eof/authoring/editLearningDesign?learningDesignID=' + learningDesignID,callback, false); + Application.getInstance().getComms().getRequest('eof/authoring/editLearningDesign?learningDesignID=' + learningDesignID + '&userID=' + _root.userID,callback, false); } Index: lams_central/src/flash/org/lamsfoundation/lams/monitoring/mv/MonitorController.as =================================================================== diff -u -r00ab62ab99ebcc19044975f448f71c238ba5fea3 -rcffbd5b971c1bd0f8656d991d356593444f65d41 --- lams_central/src/flash/org/lamsfoundation/lams/monitoring/mv/MonitorController.as (.../MonitorController.as) (revision 00ab62ab99ebcc19044975f448f71c238ba5fea3) +++ lams_central/src/flash/org/lamsfoundation/lams/monitoring/mv/MonitorController.as (.../MonitorController.as) (revision cffbd5b971c1bd0f8656d991d356593444f65d41) @@ -267,21 +267,16 @@ trace(evt.target); var tgt:String = new String(evt.target); if(tgt.indexOf("editClass_btn") != -1){ - trace('you clicked edit class button..'); _monitorModel.setDialogOpen("LM_DIALOG"); } else if(tgt.indexOf("viewLearners_btn") != -1){ _monitorModel.setDialogOpen("VM_DIALOG"); } else if(tgt.indexOf("start_btn") != -1){ - trace('you clicked start class button..'); _monitorModel.getMonitor().startLesson(false, _root.lessonID); } else if(tgt.indexOf("exportPortfolio_btn") != -1){ - trace('you clicked exportPortfolio button..'); exportClassPortfolio(); }else if(tgt.indexOf("refresh_btn") != -1){ - trace('you clicked refresh button..'); - _monitorModel.refreshAllData(); + _app.reloadLearningDesign(_monitorModel.getSequence(), Proxy.create(_monitorModel, _monitorModel.refreshAllData)); }else if(tgt.indexOf("help_btn") != -1){ - trace('you clicked help button..'); _monitorModel.tabHelp(); }else if(tgt.indexOf("viewJournals_btn") != -1){ trace('you clicked journal entries button..'); @@ -293,6 +288,8 @@ } } + + /** * called when the dialog is loaded, calles methods to set up content in dialogue Index: lams_central/src/flash/org/lamsfoundation/lams/monitoring/mv/MonitorModel.as =================================================================== diff -u -r6f216fba347b83cec9643e97905a407e168dd8c4 -rcffbd5b971c1bd0f8656d991d356593444f65d41 --- lams_central/src/flash/org/lamsfoundation/lams/monitoring/mv/MonitorModel.as (.../MonitorModel.as) (revision 6f216fba347b83cec9643e97905a407e168dd8c4) +++ lams_central/src/flash/org/lamsfoundation/lams/monitoring/mv/MonitorModel.as (.../MonitorModel.as) (revision cffbd5b971c1bd0f8656d991d356593444f65d41) @@ -25,7 +25,8 @@ import org.lamsfoundation.lams.monitoring.mv.*; import org.lamsfoundation.lams.authoring.Activity; import org.lamsfoundation.lams.authoring.Transition -import org.lamsfoundation.lams.authoring.GateActivity;; +import org.lamsfoundation.lams.authoring.GateActivity; +import org.lamsfoundation.lams.authoring.DesignDataModel; import org.lamsfoundation.lams.common.Sequence; import org.lamsfoundation.lams.common.util.Observable; import org.lamsfoundation.lams.common.util.*; @@ -512,15 +513,22 @@ } - public function refreshAllData(){ - selectedTab = getSelectedTab(); - setChanged(); + public function refreshAllData(learningDesignDTO:Object){ + var ddm:DesignDataModel = new DesignDataModel(); + ddm.setDesign(learningDesignDTO); + if(!app.layout.manager.checkAvailabilityOnDDM(ddm).locked) { - //send an update - infoObj = {}; - infoObj.updateType = "RELOADPROGRESS"; - infoObj.tabID = selectedTab; - notifyObservers(infoObj); + selectedTab = getSelectedTab(); + setChanged(); + + //send an update + infoObj = {}; + infoObj.updateType = "RELOADPROGRESS"; + infoObj.tabID = selectedTab; + notifyObservers(infoObj); + } else { + ApplicationParent.extCall("reloadWindow", null); + } } Index: lams_monitoring/web/lams_monitoring.swf =================================================================== diff -u -r62378710d8d3fea6bc83ff437ddb83bcf581cc2f -rcffbd5b971c1bd0f8656d991d356593444f65d41 Binary files differ Index: lams_monitoring/web/lams_monitoring_library.swf =================================================================== diff -u -r62378710d8d3fea6bc83ff437ddb83bcf581cc2f -rcffbd5b971c1bd0f8656d991d356593444f65d41 Binary files differ Index: lams_monitoring/web/monitorLesson.jsp =================================================================== diff -u -r2eed003c49aecd1a11d93a86bb4273d581f3d4f6 -rcffbd5b971c1bd0f8656d991d356593444f65d41 --- lams_monitoring/web/monitorLesson.jsp (.../monitorLesson.jsp) (revision 2eed003c49aecd1a11d93a86bb4273d581f3d4f6) +++ lams_monitoring/web/monitorLesson.jsp (.../monitorLesson.jsp) (revision cffbd5b971c1bd0f8656d991d356593444f65d41) @@ -53,6 +53,8 @@ closeWindowRefresh(); }else if(command == "openAuthorForEditOnFly") { openAuthorForEditOnFly(args); + }else if(command == "reloadWindow") { + reloadWindow(); } } @@ -83,6 +85,10 @@ openPopUp(url, title, h, w, resize, status, scrollbar, menubar, toolbar); } + + function reloadWindow() { + window.location.reload(true); + } function openPopUp(args, title, h, w, resize, status, scrollbar, menubar, toolbar){ // refocus code commented out as we want to replace contents due to tool's session issues. Code will be