Index: lams_central/src/flash/org/lamsfoundation/lams/wizard/Wizard.as =================================================================== diff -u -rf44b6a75a25937117bdb05ed3923f868ecbeb587 -r7e5d805dea9189847fbbcbfe8aea2416a4934005 --- lams_central/src/flash/org/lamsfoundation/lams/wizard/Wizard.as (.../Wizard.as) (revision f44b6a75a25937117bdb05ed3923f868ecbeb587) +++ lams_central/src/flash/org/lamsfoundation/lams/wizard/Wizard.as (.../Wizard.as) (revision 7e5d805dea9189847fbbcbfe8aea2416a4934005) @@ -235,6 +235,63 @@ Application.getInstance().getComms().getRequest('workspace.do?method=getUsersFromOrganisationByRole&organisationID='+orgID+'&role='+role,callback, false); } + + public function initializeLesson(resultDTO:Object, callback:Function){ + var designId:Number = resultDTO.selectedResourceID; + var lessonName:String = resultDTO.resourceTitle; + var lessonDesc:String = resultDTO.resourceDescription; + Application.getInstance().getComms().getRequest('monitoring/monitoring.do?method=initializeLesson&learningDesignID='+designId+'&userID='+_root.userID+'&lessonName='+lessonName+'&lessonDescription='+lessonDesc,callback, false); + } + + public function startLesson(isScheduled:Boolean, lessonID:Number, datetime:String){ + trace('starting lesson...'); + var callback:Function = Proxy.create(this, onStartLesson); + + if(isScheduled){ + Application.getInstance().getComms().getRequest('monitoring/monitoring.do?method=startOnScheduleLesson&lessonStartDate=' + datetime + '&lessonID=' + lessonID + '&userID=' + _root.userID, callback); + } else { + Application.getInstance().getComms().getRequest('monitoring/monitoring.do?method=startLesson&lessonID=' + lessonID + '&userID=' + _root.userID, callback); + } + } + + private function onStartLesson(b:Boolean){ + trace('receive back after lesson started..'); + if(b){ + trace('lesson started'); + wizardModel.broadcastViewUpdate("LESSON_STARTED", WizardView.FINISH_MODE); + } else { + // error occured + trace('error occurred starting lesson'); + } + } + + /** + * Create LessonClass using wizard data and CreateLessonClass servlet + * + */ + + public function createLessonClass():Void{ + trace('creating lesson class...'); + var dto:Object = wizardModel.getLessonClassData(); + var callback:Function = Proxy.create(this,onCreateLessonClass); + + Application.getInstance().getComms().sendAndReceive(dto,"monitoring/createLessonClass?userID=" + _root.userID,callback,false); + + } + + public function onCreateLessonClass(r):Void{ + if(r instanceof LFError) { + r.showErrorAlert(); + } else if(r) { + // lesson class created + trace('lesson class created'); + trace('mode: ' + wizardModel.resultDTO.mode); + wizardModel.broadcastViewUpdate("SAVED_LC", wizardModel.resultDTO.mode); + } else { + // failed creating lesson class + trace('failed creating lesson class'); + } + } /** * Index: lams_central/src/flash/org/lamsfoundation/lams/wizard/WizardController.as =================================================================== diff -u -r6231e8fdffafa16eb9248ebb9ebdbee7230da9dd -r7e5d805dea9189847fbbcbfe8aea2416a4934005 --- lams_central/src/flash/org/lamsfoundation/lams/wizard/WizardController.as (.../WizardController.as) (revision 6231e8fdffafa16eb9248ebb9ebdbee7230da9dd) +++ lams_central/src/flash/org/lamsfoundation/lams/wizard/WizardController.as (.../WizardController.as) (revision 7e5d805dea9189847fbbcbfe8aea2416a4934005) @@ -103,6 +103,33 @@ } } + /** + * Initialize lesson returning new LessonID + * + * @param resultDTO Wizard data + * @param callback function to return LessonID + * + */ + + public function initializeLesson(resultDTO:Object, callback:Function){ + _wizardModel.resultDTO = resultDTO; + var callback:Function = Proxy.create(this,saveLessonClass); + _wizardModel.getWizard().initializeLesson(resultDTO, callback); + } + + /** + * Save Lesson Class after Lesson is initialized + * + * @param lessonID + * @return + */ + + public function saveLessonClass(lessonID:Number){ + trace('saving lesson class after lesson initialized'); + _wizardModel.lessonID = lessonID; + _wizardModel.getWizard().createLessonClass(); + } + private function getView():WizardView{ return WizardView(super.getView()); }