Index: lams_flash/src/central/flash/org/lamsfoundation/lams/monitoring/mv/MonitorController.as =================================================================== diff -u -rc645668a11086e5356242fb747671002434381c2 -r21ac49e7aee837a829a0b51ba0238a10c0af4f79 --- lams_flash/src/central/flash/org/lamsfoundation/lams/monitoring/mv/MonitorController.as (.../MonitorController.as) (revision c645668a11086e5356242fb747671002434381c2) +++ lams_flash/src/central/flash/org/lamsfoundation/lams/monitoring/mv/MonitorController.as (.../MonitorController.as) (revision 21ac49e7aee837a829a0b51ba0238a10c0af4f79) @@ -495,6 +495,11 @@ JsPopup.getInstance().launchPopupWindow(exp_url, 'ExportPortfolio', 410, 640, true, true, false, false, false); } + private function openInstantMessaging():Void { + var im_url:String = _root.serverURL+"learning/lessonChat.jsp?lessonID="+_root.lessonID+"&presenceEnabledPatch="+_monitorModel.getSequence().learnerPresenceAvailable+"&presenceImEnabled="+_monitorModel.getSequence().learnerImAvailable; + JsPopup.getInstance().launchPopupWindow(im_url, 'IMpopup', 570, 796, 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); @@ -517,6 +522,8 @@ _monitorModel.setDialogOpen("LM_DIALOG"); } else if(tgt.indexOf("viewLearners_btn") != -1){ _monitorModel.setDialogOpen("VM_DIALOG"); + } else if(tgt.indexOf("learners_openIM_btn") != -1) { + openInstantMessaging(); } else if(tgt.indexOf("start_btn") != -1){ _monitorModel.getMonitor().startLesson(false, _root.lessonID); } else if(tgt.indexOf("viewAllTimeChart_btn") != -1){ Index: lams_flash/src/central/flash/org/lamsfoundation/lams/monitoring/mv/tabviews/LessonTabView.as =================================================================== diff -u -rc2fc4ad885aa140b63aa94ea31252a42977966df -r21ac49e7aee837a829a0b51ba0238a10c0af4f79 --- lams_flash/src/central/flash/org/lamsfoundation/lams/monitoring/mv/tabviews/LessonTabView.as (.../LessonTabView.as) (revision c2fc4ad885aa140b63aa94ea31252a42977966df) +++ lams_flash/src/central/flash/org/lamsfoundation/lams/monitoring/mv/tabviews/LessonTabView.as (.../LessonTabView.as) (revision 21ac49e7aee837a829a0b51ba0238a10c0af4f79) @@ -126,6 +126,7 @@ //Button private var viewLearners_btn:Button; private var editClass_btn:Button; + private var learners_openIM_btn:Button; private var statusApply_btn:Button; private var schedule_btn:Button; private var start_btn:Button; @@ -262,6 +263,7 @@ editClass_btn.addEventListener("click", _monitorController); viewLearners_btn.addEventListener("click", _monitorController); + learners_openIM_btn.addEventListener("click", _monitorController); schedule_btn.addEventListener("click", Delegate.create(this, scheduleLessonStart)); start_btn.addEventListener("click", _monitorController); statusApply_btn.addEventListener("click", Proxy.create(this, changeStatus)); @@ -398,6 +400,7 @@ scheduleTime._y = scheduleTime._y - 30 viewLearners_btn._y = viewLearners_btn._y - 30 editClass_btn._y = editClass_btn._y - 30 + learners_openIM_btn._y = learners_openIM_btn._y - 30 changeStatus_cmb._y = changeStatus_cmb._y - 30 statusApply_btn._y = statusApply_btn._y - 30 schedule_btn._y = schedule_btn._y - 30 @@ -439,6 +442,8 @@ learner_eim_cb.enabled = false; learner_eim_cb.selected = false; } + + learners_openIM_btn._visible = learner_eim_cb.selected; } private function populateStatusList(stateID:Number):Void{ @@ -812,6 +817,7 @@ //Button viewLearners_btn.label = Dictionary.getValue('ls_manage_learners_btn'); editClass_btn.label = Dictionary.getValue('ls_manage_editclass_btn'); + learners_openIM_btn.label = Dictionary.getValue('ls_manage_openim_btn'); statusApply_btn.label = Dictionary.getValue('ls_manage_apply_btn'); schedule_btn.label = Dictionary.getValue('ls_manage_schedule_btn'); start_btn.label = Dictionary.getValue('ls_manage_start_btn'); @@ -879,9 +885,12 @@ } } else if (r == "presenceAvailable") { + mm.getSequence().learnerPresenceAvailable = learner_epres_cb.selected; + if (learner_epres_cb.selected) { Application.getInstance().getComms().getRequest('Presence.do?method=createXmppRoom&lessonId=' + _root.lessonID, Proxy.create(this, createRoomResponseHandler), false); Cursor.showCursor(ApplicationParent.C_DEFAULT); + learner_eim_cb.enabled = true; var msg:String = Dictionary.getValue('ls_confirm_presence_enabled') ; @@ -891,15 +900,22 @@ learner_eim_cb.enabled = false; learner_eim_cb.selected = false; + learners_openIM_btn._visible = false; + mm.getSequence().learnerImAvailable = false; + var msg:String = Dictionary.getValue('ls_confirm_presence_disabled') ; LFMessage.showMessageAlert(msg); } } else if (r == "presenceImAvailable") { + learners_openIM_btn._visible = learner_eim_cb.selected; + + mm.getSequence().learnerImAvailable = learner_eim_cb.selected; + if (learner_eim_cb.selected) { var msg:String = Dictionary.getValue('ls_confirm_presence_im_enabled') ; LFMessage.showMessageAlert(msg); - + }else { var msg:String = Dictionary.getValue('ls_confirm_presence_im_disabled') ; LFMessage.showMessageAlert(msg); @@ -950,6 +966,7 @@ styleObj = _tm.getStyleObject('button'); viewLearners_btn.setStyle('styleName',styleObj); editClass_btn.setStyle('styleName',styleObj); + learners_openIM_btn.setStyle('styleName',styleObj); schedule_btn.setStyle('styleName',styleObj); start_btn.setStyle('styleName',styleObj); statusApply_btn.setStyle('styleName',styleObj);