Index: lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/BranchingActivity.as =================================================================== diff -u -r7548a5a6349a58e304bfa7b35805978121ccbd87 -r979518a0ef7152e3de292b985b041385de5501c2 --- lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/BranchingActivity.as (.../BranchingActivity.as) (revision 7548a5a6349a58e304bfa7b35805978121ccbd87) +++ lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/BranchingActivity.as (.../BranchingActivity.as) (revision 979518a0ef7152e3de292b985b041385de5501c2) @@ -30,11 +30,26 @@ * @see Activity */ class BranchingActivity extends ComplexActivity { - + private var _startXCoord:Number; + private var _startYCoord:Number; + private var _endXCoord:Number; + private var _endYCoord:Number; + + private static var DEFAULT_STARTX:Number = 0; + private static var DEFAULT_STARTY:Number = 0; + private static var DEFAULT_ENDX:Number = 0; + private static var DEFAULT_ENDY:Number = 0; + function BranchingActivity(activityUIID:Number){ super(activityUIID); _activityTypeID = BRANCHING_ACTIVITY_TYPE; + + _startXCoord = DEFAULT_STARTX; + _startYCoord = DEFAULT_STARTY; + _endXCoord = DEFAULT_ENDX; + _endYCoord = DEFAULT_ENDY; + } /** @@ -45,6 +60,11 @@ */ public function populateFromDTO(dto:Object){ super.populateFromDTO(dto); + _startXCoord = dto.startXCoord; + _startYCoord = dto.startYCoord; + _endXCoord = dto.endXCoord; + _endYCoord = dto.endXCoord; + } /** @@ -56,8 +76,45 @@ */ public function toData():Object{ var dto:Object = super.toData(); + + if(_startXCoord) dto.startXCoord = _startXCoord; + if(_startYCoord) dto.startYCoord = _startYCoord; + if(_endXCoord) dto.endXCoord = _endXCoord; + if(_endYCoord) dto.endYCoord = _endYCoord; + return dto; } + public function set startXCoord(a:Number):Void{ + _startXCoord = Math.round(a); + } + + public function get startXCoord():Number{ + return _startXCoord; + } + + public function set startYCoord(a:Number):Void{ + _startYCoord = Math.round(a); + } + + public function get startYCoord():Number{ + return _startYCoord; + } + + public function set endXCoord(a:Number):Void{ + _endXCoord = Math.round(a); + } + + public function get endXCoord():Number{ + return _endXCoord; + } + + public function set endYCoord(a:Number):Void{ + _endYCoord = Math.round(a); + } + + public function get endYCoord():Number{ + return _endYCoord; + } } Index: lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/br/CanvasBranchView.as =================================================================== diff -u -rd3d682445aa3dca16d7a1010db38c2473c1b8892 -r979518a0ef7152e3de292b985b041385de5501c2 --- lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/br/CanvasBranchView.as (.../CanvasBranchView.as) (revision d3d682445aa3dca16d7a1010db38c2473c1b8892) +++ lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/br/CanvasBranchView.as (.../CanvasBranchView.as) (revision 979518a0ef7152e3de292b985b041385de5501c2) @@ -216,10 +216,10 @@ Debugger.log('adding hubs for branch activity:' + _canvasBranchingActivity,Debugger.CRITICAL,'setupConenctorHubs','org.lamsfoundation.lams.CanvasBranchView'); // start-point connector hub - cHubStart_mc = activityLayer.createChildAtDepth("CanvasBranchingConnectorStart",DepthManager.kTop,{_activity:_canvasBranchingActivity.activity,_canvasController:getController(),_canvasView:_canvasBranchView, _x: 0 , _y: 0}); + cHubStart_mc = activityLayer.createChildAtDepth("CanvasBranchingConnectorStart",DepthManager.kTop,{_activity: activity,_canvasController:getController(),_canvasBranchView:_canvasBranchView, _x: activity.startXCoord , _y: activity.startYCoord, branchConnector:true}); // end-point connector hub - cHubEnd_mc = activityLayer.createChildAtDepth("CanvasBranchingConnectorEnd",DepthManager.kTop,{_activity:_canvasBranchingActivity.activity,_canvasController:getController(),_canvasView:_canvasBranchView, _x: 0 , _y: 0}); + cHubEnd_mc = activityLayer.createChildAtDepth("CanvasBranchingConnectorEnd",DepthManager.kTop,{_activity: activity,_canvasController:getController(),_canvasBranchView:_canvasBranchView, _x: activity.endXCoord , _y: activity.endYCoord, branchConnector:true}); } @@ -543,6 +543,16 @@ return CanvasActivity(cHubEnd_mc); } + public function isStart(a:MovieClip):Boolean { + if(startHub == a) return true; + else return false; + } + + public function isEnd(a:MovieClip):Boolean { + if(endHub == a) return true; + else return false; + } + public function get activity():BranchingActivity { return _canvasBranchingActivity.activity; } Index: lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/cv/CanvasActivity.as =================================================================== diff -u -r5b8b877a9e81a776b5af2cb4177c60e304e06dc6 -r979518a0ef7152e3de292b985b041385de5501c2 --- lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/cv/CanvasActivity.as (.../CanvasActivity.as) (revision 5b8b877a9e81a776b5af2cb4177c60e304e06dc6) +++ lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/cv/CanvasActivity.as (.../CanvasActivity.as) (revision 979518a0ef7152e3de292b985b041385de5501c2) @@ -391,9 +391,22 @@ } //position + Debugger.log('setting position:',Debugger.CRITICAL,'draw','CanvasActivity'); if(!_branchConnector) { + Debugger.log('not branch:',Debugger.CRITICAL,'draw','CanvasActivity'); + _x = _activity.xCoord; _y = _activity.yCoord; + } else { + if(_canvasBranchView.isStart(this)) { + Debugger.log('start branch:' + _canvasBranchView.activity.startXCoord + ":" + _canvasBranchView.activity.startYCoord, Debugger.CRITICAL,'draw','CanvasActivity'); + _x = _canvasBranchView.activity.startXCoord; + _y = _canvasBranchView.activity.startYCoord; + } else if(_canvasBranchView.isEnd(this)) { + Debugger.log('end branch:' + _canvasBranchView.activity.endXCoord + ":" + _canvasBranchView.activity.endYCoord,Debugger.CRITICAL,'draw','CanvasActivity'); + _x = _canvasBranchView.activity.endXCoord; + _y = _canvasBranchView.activity.endYCoord; + } } Debugger.log('canvasActivity_mc._visible'+canvasActivity_mc._visible,4,'draw','CanvasActivity'); Index: lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/cv/CanvasController.as =================================================================== diff -u -rd3d682445aa3dca16d7a1010db38c2473c1b8892 -r979518a0ef7152e3de292b985b041385de5501c2 --- lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/cv/CanvasController.as (.../CanvasController.as) (revision d3d682445aa3dca16d7a1010db38c2473c1b8892) +++ lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/cv/CanvasController.as (.../CanvasController.as) (revision 979518a0ef7152e3de292b985b041385de5501c2) @@ -183,8 +183,15 @@ if(!ca.branchConnector) { ca.activity.xCoord = ca._x; ca.activity.yCoord = ca._y; + } else { + if(_canvasModel.activeView.isStart(ca)) { + ca.activity.startXCoord = ca._x; + ca.activity.startYCoord = ca._y; + } else if(_canvasModel.activeView.isEnd(ca)) { + ca.activity.endXCoord = ca._x; + ca.activity.endYCoord = ca._y; + } } - // TODO: set coord if dragging/release branch start/end hub //refresh the transitions //TODO: refresh the transitions as you drag... Index: lams_flash/src/central/flash/org/lamsfoundation/lams/monitoring/ContributeActivity.as =================================================================== diff -u -rd7823922f404944822957e6c051bc0f1335a76de -r979518a0ef7152e3de292b985b041385de5501c2 --- lams_flash/src/central/flash/org/lamsfoundation/lams/monitoring/ContributeActivity.as (.../ContributeActivity.as) (revision d7823922f404944822957e6c051bc0f1335a76de) +++ lams_flash/src/central/flash/org/lamsfoundation/lams/monitoring/ContributeActivity.as (.../ContributeActivity.as) (revision 979518a0ef7152e3de292b985b041385de5501c2) @@ -37,6 +37,8 @@ public static var SCHEDULE_GATE:Number = 5; public static var CHOSEN_GROUPING:Number = 6; public static var CONTRIBUTION:Number = 7; + public static var SYS_GATE:Number = 8; + public static var TEACHER_CHOSEN_BRANCHNG:Number = 9; private var _childActivities:Array; private var _contributeEntries:Array; @@ -79,7 +81,6 @@ var ca:ContributeActivity = new ContributeActivity(); ca.populateFromDTO(dto.childActivities[i], id); _childActivities.push(ca); - trace('adding a child'); } } @@ -89,13 +90,11 @@ var ca:ContributeActivity = new ContributeActivity(); ca.populateFromDTO(dto.contributeEntries[i], id); _contributeEntries.push(ca); - trace('adding a entry'); } } _title = dto.title; _description = dto.description; - _taskURL = dto.URL + '&contentFolderID=' + id; - trace("URL in DTO for "+dto.title+ " is: "+dto.URL) + _taskURL = dto.URL + '&contentFolderID=' + id; _contributionType = dto.contributionType; _isRequired = dto.isRequired; } Index: lams_flash/src/central/flash/org/lamsfoundation/lams/monitoring/mv/tabviews/LessonTabView.as =================================================================== diff -u -rd7823922f404944822957e6c051bc0f1335a76de -r979518a0ef7152e3de292b985b041385de5501c2 --- lams_flash/src/central/flash/org/lamsfoundation/lams/monitoring/mv/tabviews/LessonTabView.as (.../LessonTabView.as) (revision d7823922f404944822957e6c051bc0f1335a76de) +++ lams_flash/src/central/flash/org/lamsfoundation/lams/monitoring/mv/tabviews/LessonTabView.as (.../LessonTabView.as) (revision 979518a0ef7152e3de292b985b041385de5501c2) @@ -69,7 +69,8 @@ private var _tip:ToolTip; private var mm:MonitorModel; - private var isLessonLaunchChecked:Boolean + private var isLessonLaunchChecked:Boolean; + //TabView clips private var reqTasks_depth:Number = 4000; private var listCount:Number = 0; @@ -137,7 +138,6 @@ private var dispatchEvent:Function; public var addEventListener:Function; public var removeEventListener:Function; - //public var menu:ContextMenu; /** @@ -146,20 +146,21 @@ function LessonTabView(){ trace("loaded lesson tab view") _lessonTabView = this; - //this._visible = false; + _tm = ThemeManager.getInstance(); _tip = new ToolTip(); + //Init for event delegation mx.events.EventDispatcher.initialize(this); - //MovieClipUtils.doLater(Proxy.create(this,init)); + } /** * Called to initialise Canvas . CAlled by the Canvas container */ public function init(m:Observable,c:Controller){ - trace("called Lesson Tab Init") super (m, c); + isLessonLaunchChecked = true; btnLabel = Dictionary.getValue('td_goContribute_btn'); @@ -186,16 +187,11 @@ populateContributeActivities(); break; case 'TABCHANGE' : - if (infoObj.tabID == _tabID && !mm.locked){ - trace("TabID for Selected tab is (LessonTab TABCHANGE): "+infoObj.tabID) - //this._visible = true; + if (infoObj.tabID == _tabID && !mm.locked){ + mm.getMonitor().getMV().getMonitorLessonScp()._visible = true; - //mm.getMonitor().getMV().getMonitorScp().contentPath = this; hideMainExp(mm); mm.broadcastViewUpdate("JOURNALSSHOWHIDE", false); - - //mm.setDirty(); - //MovieClipUtils.doLater(Proxy.create(this,draw)); if(mm.getIsProgressChangedLesson()){ trace("I am calling reloadProgress now") @@ -206,7 +202,6 @@ } else { mm.getMonitor().getMV().getMonitorLessonScp()._visible = false; - //this._visible = false; } break; case 'SEQUENCE' : @@ -243,10 +238,7 @@ break; case 'DRAW_DESIGN' : if (infoObj.tabID == _tabID && !mm.locked){ - //drawDesignCalled = "called"; - trace("TabID for Selected tab is (LessonTab): "+infoObj.tabID) populateLessonDetails(); - //mm.setIsProgressChanged(false); } break; default : @@ -256,8 +248,6 @@ } private function setupTab(){ - //start_date_lbl.visible = false; - //schedule_date_lbl.visible = false; _monitorController = getController(); editClass_btn.addEventListener("click", _monitorController); @@ -295,13 +285,13 @@ var year = mydate.getFullYear(); var month = mydate.getMonth(); var date = mydate.getDate(); + Debugger.log('schedule date range starts from :'+date + "/" +month+ "/" +year,Debugger.CRITICAL,'setScheduleDateRange','org.lamsfoundation.lams.WizardView'); scheduleDate_dt.selectableRange = {rangeStart: new Date(year, month, date)}; } private function hideMainExp(mm:MonitorModel):Void{ - //var mcontroller = getController(); mm.broadcastViewUpdate("EXPORTSHOWHIDE", false) mm.broadcastViewUpdate("EDITFLYSHOWHIDE", false); } @@ -315,18 +305,13 @@ */ private function reloadProgress(isChanged:Boolean){ - trace("reloading Progress data for Learners") - //mm.getMonitor().reloadLessonToMonitor(); - if (isChanged == false){ mm.setIsProgressChangedLesson(false); }else { - //mm.setIsProgressChangedLesson(true); mm.setIsProgressChangedLearner(true); mm.setIsProgressChangedSequence(true) } - //mm.getMonitor().getProgressData(mm.getSequence()); mm.getMonitor().reloadLessonToMonitor(); } @@ -338,30 +323,25 @@ listCount = 0; this.onEnterFrame = setupLabels; - //get the content path for the sp - //_monitorLesson_mc = monitorLesson_scp.contentPath = this; _monitorReqTask_mc = reqTasks_scp.content; _monitorController = getController(); - trace("Loaded LessonTabView Data"+ this) - startMsg_txt.visible = false; editLockMessage_txt.visible = false; var seq:Sequence = mm.getSequence(); + if (_root.lessonLaunch == "false" && isLessonLaunchChecked){ rearrangeAll(); isLessonLaunchChecked = false; - } + } + populateStatusList(seq.state); populateLessonDetails(); enableEditClass(seq.state); - //showStartFields(true, true); var requestLessonID:Number = seq.ID; - trace('seq id: ' + mm.getSequence().ID); - trace('last seq id: ' + mm.getLastSelectedSequence().ID); if (mm.getSequence().ID == mm.getLastSelectedSequence().ID){ if(mm.getToDos() == null){ mm.getMonitor().getContributeActivities(mm.getSequence().ID); @@ -428,10 +408,8 @@ sessionStatus_txt.text = showStatus(s.state); numLearners_txt.text = String(s.noStartedLearners) + " " + Dictionary.getValue('ls_of_text')+" "+String(s.noPossibleLearners); - trace("current logged in learners are: "+mm.allLearnersProgress.length) learnerURL_txt.text = _root.serverURL+"launchlearner.do?lessonID="+_root.lessonID; - //numLearners_txt.text = mm.allLearnersProgress.length + " " + Dictionary.getValue('ls_of_text')+" "+String(s.noPossibleLearners); class_txt.text = s.organisationName; learner_expp_cb.selected = s.learnerExportAvailable; } @@ -515,26 +493,13 @@ } start_btn.visible = a; - - - - - + scheduleTime._visible = b; scheduleDate_dt.visible = b; schedule_btn.visible = b; manageDate_lbl.visible = b; manageTime_lbl.visible = b; - /** - if(seq.isStarted()){ - startMsg_txt.text = "Currently Started." - } else { - startMsg_txt.text = "Scheduled to start at " - } - - startMsg_txt.visible = true; - */ } private function showStatus(seqStatus:Number):String{ @@ -582,13 +547,11 @@ if (scheduleDate_dt.selectedDate == null || scheduleDate_dt.selectedDate == undefined){ LFMessage.showMessageAlert(Dictionary.getValue('al_validation_schstart'), null, null); }else { - //var datetime:String = getScheduleDateTime(scheduleDate_dt.selectedDate, scheduleTime.f_returnTime()); var schDT = getScheduleDateTime(scheduleDate_dt.selectedDate, scheduleTime.f_returnTime()); if (!schDT.validTime){ LFMessage.showMessageAlert(Dictionary.getValue('al_validation_schtime'), null, null); return; }else { - //trace(resultDTO.scheduleDateTime); mm.getMonitor().startLesson(true, _root.lessonID, schDT.dateTime); } @@ -599,9 +562,9 @@ private function populateContributeActivities():Void{ if (requiredTaskList.length == 0){ var todos:Array = mm.getToDos(); + // show isRequired activities in scrollpane for (var i=0; i 0){ var obj:Object = {} @@ -628,13 +591,14 @@ array.push(obj); } } + for (var j=0; j 0){ // write ca title / details to screen with x position @@ -677,21 +640,23 @@ reqTasks_scp.redraw(true); requiredTaskList[listCount].contributeEntry.text = "\t\t"+mm.getMonitor().getCELiteral(o._contributionType); requiredTaskList[listCount].goContribute._x = reqTasks_scp._width-50 - //requiredTaskList[listCount].goContribute.label = Dictionary.getValue('td_goContribute_btn'); + requiredTaskList[listCount].goContribute.onRelease = function (){ trace("Contribute Type is: "+o.taskURL); JsPopup.getInstance().launchPopupWindow(o.taskURL, 'ContributeActivity', 600, 800, true, true, false, false, false); } + requiredTaskList[listCount].goContribute.onRollOver = Proxy.create(this,this['showToolTip'], requiredTaskList[listCount].goContribute, "goContribute_btn_tooltip", reqTasks_scp._y+requiredTaskList[listCount]._y+requiredTaskList[listCount]._height, reqTasks_scp._x); requiredTaskList[listCount].goContribute.onRollOut = Proxy.create(this,this['hideToolTip']); + var styleObj = _tm.getStyleObject('button'); requiredTaskList[listCount].goContribute.setStyle('styleName',styleObj); - listCount++ + + listCount++; + }else{ // child CA - trace('child entries length:' + o.entrievs.length) if(o.entries.length > 0){ - trace('now drawing child'); // write child ca title (indented - x + 10 position) drawIsRequiredTasks(o.child, o.entries, x); } @@ -706,10 +671,7 @@ * Opens the lesson manager dialog */ public function showLessonManagerDialog(mm:MonitorModel) { - trace('doing Lesson Manager popup...'); - trace('app root: ' + mm.getMonitor().root); - trace('lfwindow: ' + LFWindow); - var dialog:MovieClip = PopUpManager.createPopUp(mm.getMonitor().root, LFWindow, true,{title:Dictionary.getValue('ls_win_editclass_title'),closeButton:true,scrollContentPath:'selectClass'}); + var dialog:MovieClip = PopUpManager.createPopUp(mm.getMonitor().root, LFWindow, true,{title:Dictionary.getValue('ls_win_editclass_title'),closeButton:true,scrollContentPath:'selectClass'}); dialog.addEventListener('contentLoaded',Delegate.create(_monitorController,_monitorController.openDialogLoaded)); } @@ -718,10 +680,7 @@ * Opens the lesson manager dialog */ public function showLearnersDialog(mm:MonitorModel) { - trace('doing Learners popup...'); - trace('app root: ' + mm.getMonitor().root); - trace('lfwindow: ' + LFWindow); - var opendialog:MovieClip = PopUpManager.createPopUp(mm.getMonitor().root, LFWindow, true,{title:Dictionary.getValue('ls_win_learners_title'),closeButton:true,scrollContentPath:'learnersDialog'}); + var opendialog:MovieClip = PopUpManager.createPopUp(mm.getMonitor().root, LFWindow, true,{title:Dictionary.getValue('ls_win_learners_title'),closeButton:true,scrollContentPath:'learnersDialog'}); opendialog.addEventListener('contentLoaded',Delegate.create(_monitorController,_monitorController.openDialogLoaded)); } @@ -746,11 +705,7 @@ public function showToolTip(btnObj, btnTT:String, goBtnYpos:Number, goBtnXpos:Number):Void{ var ttData = mm.getTTData(); - trace("Monitor_X: " + ttData.monitorX); - trace("Monitor_Y: " + ttData.monitorY); - trace("ttHolder : " + ttData.ttHolderMC); - if(goBtnYpos != null && goBtnXpos != null){ var xpos:Number = mm.getMonitor().getMV().getMonitorLessonScp().width - 150; var ypos:Number = ttData.monitorY + (goBtnYpos +5); @@ -768,8 +723,6 @@ } public function setupLabels(){ - //max_lbl.text = Dictionary.getValue('pi_max_act'); - //populate the synch type combo: status_lbl.text = ""+Dictionary.getValue('ls_status_lbl')+""; learner_lbl.text = ""+Dictionary.getValue('ls_learners_lbl')+""; @@ -790,8 +743,6 @@ schedule_btn.label = Dictionary.getValue('ls_manage_schedule_btn'); start_btn.label = Dictionary.getValue('ls_manage_start_btn'); - //_lessonStateArr = ["CREATED", "NOT_STARTED", "STARTED", "SUSPENDED", "FINISHED", "ARCHIVED", "DISABLED"]; - taskManager.border = true taskManager.borderColor = 0x003366; taskManager_lbl.text = Dictionary.getValue('ls_tasks_txt'); @@ -820,8 +771,7 @@ private function toogleExpPortfolio(evt:Object) { Debugger.log("Toogle Staff Selection", Debugger.GEN, "toogleStaffSelection", "WizardView"); var target:CheckBox = CheckBox(evt.target); - //var wm:WizardModel = WizardModel(getModel()); - //resultDTO.learnerExpPortfolio = target.selected; + var callback:Function = Proxy.create(this,confirmOutput); Application.getInstance().getComms().getRequest('monitoring/monitoring.do?method=learnerExportPortfolioAvailable&lessonID='+_root.lessonID+'&learnerExportPortfolio='+target.selected, callback, false); } @@ -857,7 +807,6 @@ manageClass_lbl.setStyle('styleName',styleObj); manageStatus_lbl.setStyle('styleName',styleObj); manageStart_lbl.setStyle('styleName',styleObj); - //learner_expp_cb.setStyle('styleName',styleObj); schedule_date_lbl.setStyle('styleName', styleObj); sessionStatus_txt.setStyle('styleName', styleObj); @@ -921,32 +870,33 @@ var monthStr:String; var mydate = new Date(); var dtObj = new Object(); - trace('output time: ' + timeStr); + var day = date.getDate(); + if(day<10){ dayStr=String(0)+day; } else { dayStr=day.toString(); } var month = date.getMonth()+1; + if(month<10){ monthStr=String(0)+month; } else { monthStr = month.toString(); } var dateStr = dayStr + bs + monthStr + bs + date.getFullYear(); - trace('selected date: ' + dateStr); if (day == mydate.getDate() && month == mydate.getMonth()+1 && date.getFullYear() == mydate.getFullYear()){ dtObj.validTime = validateTime() - }else { + } else { dtObj.validTime = true } + dtObj.dateTime = dateStr + '+' + timeStr; return dtObj; - //return dateStr + '+' + timeStr; } private function validateTime():Boolean{ @@ -987,14 +937,13 @@ */ private function setSize(mm:MonitorModel):Void{ var s:Object = mm.getSize(); - trace("Monitor Tab Widtht: "+s.w+" Monitor Tab Height: "+s.h); - //bkg_pnl.setSize(s.w-20,s.h); + lessonManager.setSize(s.w-20,lessonManager._height); taskManager.setSize(s.w-20,lessonManager._height); - //qTasks_scp.setSize(s.w._width,reqTasks_scp._height); - var scpHeight:Number = mm.getMonitor().getMV().getMonitorLessonScp()._height - trace("scpHeight in lesson tab:"+scpHeight) + + var scpHeight:Number = mm.getMonitor().getMV().getMonitorLessonScp()._height; reqTasks_scp.setSize(s.w-30,(scpHeight-reqTasks_scp._y)-20); + for (var i=0; i