Index: lams_central/src/flash/org/lamsfoundation/lams/monitoring/LearnersDialog.as
===================================================================
diff -u -rbd0de52e204aa6211b0fcb2d553d246fc422f273 -rc1774bfa6a2989cf32fc39f5f0fe7f3e8bfc9787
--- lams_central/src/flash/org/lamsfoundation/lams/monitoring/LearnersDialog.as (.../LearnersDialog.as) (revision bd0de52e204aa6211b0fcb2d553d246fc422f273)
+++ lams_central/src/flash/org/lamsfoundation/lams/monitoring/LearnersDialog.as (.../LearnersDialog.as) (revision c1774bfa6a2989cf32fc39f5f0fe7f3e8bfc9787)
@@ -50,7 +50,7 @@
private var _container:MovieClip; //The container window that holds the dialog
private var close_btn:Button; // Close window button
- private var learners_txt:TextField;
+ private var learners_lbl:Label;
private var panel:MovieClip; //The underlaying panel base
private var learner_scp:MovieClip; // learners container
@@ -100,7 +100,7 @@
setStyles();
//Set the text for buttons
- close_btn.label = "Close";
+ close_btn.label = Dictionary.getValue('ls_win_learners_close_btn');
//Set the labels
@@ -135,7 +135,7 @@
_monitorController = _monitorView.getController();
_monitorModel = MonitorModel(_monitorView.getModel());
- learners_txt.text = "Learners in class: " + _monitorModel.getSequence().organisationName;
+ learners_lbl.text = Dictionary.getValue('ls_win_learners_heading_lbl') + " " + _monitorModel.getSequence().organisationName;
//Add event listeners for ok, cancel and close buttons
close_btn.addEventListener('onPress',Delegate.create(this, close));
@@ -152,13 +152,22 @@
//LFWindow, goes first to prevent being overwritten with inherited styles.
var styleObj = themeManager.getStyleObject('LFWindow');
_container.setStyle('styleName',styleObj);
+
+ //Apply panel style
+ styleObj = themeManager.getStyleObject('BGPanel');
+ panel.setStyle('styleName', styleObj);
+
+ //Apply scrollpane style
+ styleObj = themeManager.getStyleObject('scrollpane');
+ learner_scp.setStyle('styleName', styleObj);
//Get the button style from the style manager and apply to both buttons
styleObj = themeManager.getStyleObject('button');
close_btn.setStyle('styleName',styleObj);
//Apply label style
- styleObj = themeManager.getStyleObject('label');
+ styleObj = themeManager.getStyleObject('label');
+ learners_lbl.setStyle('styleName', styleObj);
}
Index: lams_central/src/flash/org/lamsfoundation/lams/monitoring/LessonManagerDialog.as
===================================================================
diff -u -r7ce9906165f8f8de5af295f7f75b4b042b176838 -rc1774bfa6a2989cf32fc39f5f0fe7f3e8bfc9787
--- lams_central/src/flash/org/lamsfoundation/lams/monitoring/LessonManagerDialog.as (.../LessonManagerDialog.as) (revision 7ce9906165f8f8de5af295f7f75b4b042b176838)
+++ lams_central/src/flash/org/lamsfoundation/lams/monitoring/LessonManagerDialog.as (.../LessonManagerDialog.as) (revision c1774bfa6a2989cf32fc39f5f0fe7f3e8bfc9787)
@@ -46,13 +46,20 @@
public var RT_ORG:String = "Organisation";
public static var USERS_X:Number = 10;
public static var USER_OFFSET:Number = 20;
+ private static var USERS_LOAD_CHECK_INTERVAL:Number = 50;
+ private static var USERS_LOAD_CHECK_TIMEOUT_COUNT:Number = 200;
//References to components + clips
private var _container:MovieClip; //The container window that holds the dialog
private var ok_btn:Button; //OK+Cancel buttons
private var cancel_btn:Button;
+ // headings (labels)
+ private var organisation_lbl:Label;
+ private var staff_lbl:Label;
+ private var learners_lbl:Label;
+
private var panel:MovieClip; //The underlaying panel base
private var treeview:Tree; //Treeview for navigation through workspace folder structure
@@ -84,6 +91,11 @@
private var _resultDTO:Object;
private var _selectedOrgId:Number; // selected organisation
+ private var _usersLoadCheckCount = 0; // instance counter for number of times we have checked to see if users are loaded
+ private var _UsersLoadCheckIntervalID:Number; //Interval ID for periodic check on UILoad status
+ private var _learnersLoaded:Boolean; //UI Loading status
+ private var _staffLoaded:Boolean;
+
//These are defined so that the compiler can 'see' the events that are added at runtime by EventDispatcher
private var dispatchEvent:Function;
public var addEventListener:Function;
@@ -97,7 +109,8 @@
//Set up this class to use the Flash event delegation model
EventDispatcher.initialize(this);
_resultDTO = new Object();
-
+ _learnersLoaded = false;
+ _staffLoaded = false;
//Create a clip that will wait a frame before dispatching init to give components time to setup
MovieClipUtils.doLater(Proxy.create(this,init));
}
@@ -108,19 +121,21 @@
private function init():Void{
trace('now initialising ...');
- //set the reference to the StyleManager
- //themeManager = ThemeManager.getInstance();
+ //set the reference to the StyleManager
+ themeManager = ThemeManager.getInstance();
+
// Set the styles
- //setStyles();
-
+ setStyles();
+ setLabels();
//Set the text for buttons
//ok_btn.label = Dictionary.getValue('lesson_dlg_ok');
//cancel_btn.label = Dictionary.getValue('lesson_dlg_cancel');
- ok_btn.label = "save";
- cancel_btn.label = "cancel";
+ // disable on startup until learners/staff loaded
+ enableButtons(false);
+
//Set the labels
//get focus manager + set focus to OK button, focus manager is available to all components through getFocusManager
@@ -176,25 +191,7 @@
//itemSelected(treeview.selectedNode);
}
-
- /**
- * Called on initialisation
- */
- private function setStyles(){
- //LFWindow, goes first to prevent being overwritten with inherited styles.
- var styleObj = themeManager.getStyleObject('LFWindow');
- _container.setStyle('styleName',styleObj);
- //Get the button style from the style manager and apply to both buttons
- styleObj = themeManager.getStyleObject('button');
- ok_btn.setStyle('styleName',styleObj);
- cancel_btn.setStyle('styleName',styleObj);
-
- //Apply label style
- styleObj = themeManager.getStyleObject('label');
-
- }
-
/**
* Event fired by StyleManager class to notify listeners that Theme has changed
* it is up to listeners to then query Style Manager for relevant style info
@@ -413,6 +410,9 @@
_monitorModel.setOrganisation(new Organisation(treeview.selectedNode.attributes.data));
+ // run polling method
+ checkUsersLoaded();
+
var callback:Function = Proxy.create(this,loadStaff);
_monitorModel.requestStaff(treeview.selectedNode.attributes.data, callback);
@@ -423,6 +423,31 @@
}
+ /**
+ * Runs periodically and dispatches events as they are ready
+ */
+ private function checkUsersLoaded() {
+ //If it's the first time through then set up the interval to keep polling this method
+ if(!_UsersLoadCheckIntervalID) {
+ _UsersLoadCheckIntervalID = setInterval(Proxy.create(this,checkUsersLoaded),USERS_LOAD_CHECK_INTERVAL);
+ } else {
+ _usersLoadCheckCount++;
+ //If all events dispatched clear interval and call start()
+ if(_learnersLoaded && _staffLoaded){
+ //Debugger.log('Clearing Interval and calling start :',Debugger.CRITICAL,'checkUILoaded','Application');
+ clearInterval(_UsersLoadCheckIntervalID);
+ enableButtons(true);
+ }else {
+ //Debugger.log('ALL UI LOADED, waiting for all true to dispatch init events: _dictionaryLoaded:'+_dictionaryLoaded+'_themeLoaded:'+_themeLoaded ,Debugger.GEN,'checkUILoaded','Application');
+ if(_usersLoadCheckCount >= USERS_LOAD_CHECK_TIMEOUT_COUNT){
+ //if we havent loaded the dict or theme by the timeout count then give up
+ Debugger.log('raeached time out waiting to load dict and themes, giving up.',Debugger.CRITICAL,'checkUILoaded','Application');
+ clearInterval(_UsersLoadCheckIntervalID);
+ }
+ }
+ }
+ }
+
public function getOrganisations(courseID:Number, classID:Number):Void{
// TODO check if already set
@@ -532,8 +557,10 @@
trace('loading: user ' + user.getFirstName() + ' ' + user.getLastName());
}
+
learner_scp.redraw(true);
+
var callback:Function = Proxy.create(_monitorModel,_monitorModel.saveLearners);
Application.getInstance().getComms().getRequest('monitoring/monitoring.do?method=getLessonLearners&lessonID='+_monitorModel.getSequence().ID,callback, false);
}
@@ -548,7 +575,8 @@
}
}
- learner_scp.redraw(true);
+ learner_scp.redraw(true);
+ _learnersLoaded = true;
}
/**
@@ -575,6 +603,7 @@
trace('loading: user ' + user.getFirstName() + ' ' + user.getLastName());
}
+
staff_scp.redraw(true);
var callback:Function = Proxy.create(_monitorModel,_monitorModel.saveStaff);
@@ -593,8 +622,55 @@
}
staff_scp.redraw(true);
+ _staffLoaded = true;
}
+ private function enableButtons(b:Boolean){
+ ok_btn.enabled = b;
+ cancel_btn.enabled = b;
+ }
+
+ /**
+ * Called on initialisation
+ */
+ private function setStyles(){
+ //LFWindow, goes first to prevent being overwritten with inherited styles.
+ var styleObj = themeManager.getStyleObject('LFWindow');
+ _container.setStyle('styleName',styleObj);
+
+ //Apply panel style
+ styleObj = themeManager.getStyleObject('BGPanel');
+ panel.setStyle('styleName', styleObj);
+
+ //Apply scrollpane style
+ styleObj = themeManager.getStyleObject('scrollpane');
+ learner_scp.setStyle('styleName', styleObj);
+ staff_scp.setStyle('styleName', styleObj);
+
+ //Apply tree style
+ styleObj = themeManager.getStyleObject('treeview');
+ treeview.setStyle('styleName', styleObj);
+
+ //Get the button style from the style manager and apply to both buttons
+ styleObj = themeManager.getStyleObject('button');
+ ok_btn.setStyle('styleName',styleObj);
+ cancel_btn.setStyle('styleName',styleObj);
+
+ //Apply label style
+ styleObj = themeManager.getStyleObject('label');
+ organisation_lbl.setStyle('styleName', styleObj);
+ staff_lbl.setStyle('styleName', styleObj);
+ learners_lbl.setStyle('styleName', styleObj);
+ }
+
+ private function setLabels(){
+ ok_btn.label = Dictionary.getValue('ls_win_editclass_save_btn');
+ cancel_btn.label = Dictionary.getValue('ls_win_editclass_cancel_btn');
+ organisation_lbl.text = Dictionary.getValue('ls_win_editclass_organisation_lbl');
+ staff_lbl.text = Dictionary.getValue('ls_win_editclass_staff_lbl');
+ learners_lbl.text = Dictionary.getValue('ls_win_editclass_learners_lbl');
+ }
+
/**
* Main resize method, called by scrollpane container/parent
*/
Index: lams_central/src/flash/org/lamsfoundation/lams/monitoring/mv/MonitorView.as
===================================================================
diff -u -r60604e99db3b67e629c8a20e7393c2ed957a87a3 -rc1774bfa6a2989cf32fc39f5f0fe7f3e8bfc9787
--- lams_central/src/flash/org/lamsfoundation/lams/monitoring/mv/MonitorView.as (.../MonitorView.as) (revision 60604e99db3b67e629c8a20e7393c2ed957a87a3)
+++ lams_central/src/flash/org/lamsfoundation/lams/monitoring/mv/MonitorView.as (.../MonitorView.as) (revision c1774bfa6a2989cf32fc39f5f0fe7f3e8bfc9787)
@@ -25,16 +25,15 @@
import org.lamsfoundation.lams.common.ui.*
import org.lamsfoundation.lams.common.style.*
import org.lamsfoundation.lams.monitoring.mv.*
-import org.lamsfoundation.lams.monitoring.mv.tabviews.*;
+import org.lamsfoundation.lams.monitoring.mv.tabviews.*
import org.lamsfoundation.lams.monitoring.*;
import org.lamsfoundation.lams.common.dict.*
import org.lamsfoundation.lams.common.mvc.*
import mx.managers.*
-import mx.containers.*;
+import mx.containers.*
import mx.events.*
import mx.utils.*
-import mx.controls.*;
-//import mx.controls.TabBar;
+import mx.controls.*
/**
@@ -45,6 +44,7 @@
class org.lamsfoundation.lams.monitoring.mv.MonitorView extends AbstractView{
private var _className = "MonitorView";
+
//constants:
private var GRID_HEIGHT:Number;
private var GRID_WIDTH:Number;
@@ -61,7 +61,6 @@
private var monitorTabs_tb:MovieClip;
private var learnerMenuBar:MovieClip;
private var bkg_pnl:MovieClip;
- //private var act_pnl:Panel;
private var _gridLayer_mc:MovieClip;
private var _lessonTabLayer_mc:MovieClip;
@@ -77,6 +76,7 @@
private var _monitorView:MonitorView;
//Tab Views Initialisers
+
//LessonTabView
private var lessonTabView:LessonTabView;
private var lessonTabView_mc:MovieClip;
@@ -96,15 +96,18 @@
private var dispatchEvent:Function;
public var addEventListener:Function;
public var removeEventListener:Function;
- //public var menu:ContextMenu;
-
+
/**
* Constructor
*/
function MonitorView(){
_monitorView = this;
_tm = ThemeManager.getInstance();
+
+ //_dictionary = Dictionary.getInstance();
+ //_dictionary.addEventListener('init',Proxy.create(this,setLabels));
+
//Init for event delegation
mx.events.EventDispatcher.initialize(this);
}
@@ -113,22 +116,14 @@
* Called to initialise Canvas . CAlled by the Canvas container
*/
public function init(m:Observable,c:Controller,x:Number,y:Number,w:Number,h:Number){
- //Invoke superconstructor, which sets up MVC relationships.
- //if(c==undefined){
- // c==defaultController();
- //}
+
super (m, c);
//Set up parameters for the grid
H_GAP = 10;
V_GAP = 10;
MovieClipUtils.doLater(Proxy.create(this,draw));
- //setupTabInit(m, c);
- //register to recive updates form the model
- //MonitorModel(m).addEventListener('update',this);
-
-
}
private function tabLoaded(evt:Object){
@@ -142,11 +137,11 @@
}
/**
- * Recieved update events from the CanvasModel. Dispatches to relevent handler depending on update.Type
- * @usage
- * @param event
- */
-public function update (o:Observable,infoObj:Object):Void{
+ * Recieved update events from the CanvasModel. Dispatches to relevent handler depending on update.Type
+ * @usage
+ * @param event
+ */
+ public function update (o:Observable,infoObj:Object):Void{
var mm:MonitorModel = MonitorModel(o);
_monitorController = getController();
@@ -177,12 +172,8 @@
*/
private function showData(mm:MonitorModel):Void{
var s:Object = mm.getSequence();
- //for (var i in s){
- trace("Item Description is : "+s._learningDesignID);
-
- //}
- //monitor_scp.contentPath = lessonTabView;
-
+ trace("Item Description is : "+s._learningDesignID);
+
}
/**
@@ -191,35 +182,28 @@
private function draw(){
var mcontroller = getController();
+
//get the content path for the sp
_monitor_mc = monitor_scp.content;
- //Debugger.log('_canvas_mc'+_canvas_mc,Debugger.GEN,'draw','CanvasView');
trace("Height of learnerMenuBar: "+learnerMenuBar._height)
- //Offset_Y_TabLayer_mc = learnerMenuBar._height
- //_monitor_mc._y = Offset_Y_TabLayer_mc;
_lessonTabLayer_mc = _monitor_mc.createEmptyMovieClip("_lessonTabLayer_mc", _monitor_mc.getNextHighestDepth());
_monitorTabLayer_mc = _monitor_mc.createEmptyMovieClip("_monitorTabLayer_mc", _monitor_mc.getNextHighestDepth());
_todoTabLayer_mc = _monitor_mc.createEmptyMovieClip("_todoTabLayer_mc", _monitor_mc.getNextHighestDepth());
_learnerTabLayer_mc = _monitor_mc.createEmptyMovieClip("_learnerTabLayer_mc", _monitor_mc.getNextHighestDepth());
- //trace('lesson tab view: ' + _tabsLayer_mc);
- //bkg_pnl.useHandCursor = false;
-
- var tab_arr:Array = [{label:"Lesson", data:"lesson"}, {label:"Sequence", data:"monitor"}, {label:"Learners", data:"learners"}, {label:"Todo", data:"todo"}];
- monitorTabs_tb.setSize(400, 22)
+
+ var tab_arr:Array = [{label:Dictionary.getValue('mtab_lesson'), data:"lesson"}, {label:Dictionary.getValue('mtab_seq'), data:"monitor"}, {label:Dictionary.getValue('mtab_learners'), data:"learners"}, {label:Dictionary.getValue('mtab_todo'), data:"todo"}];
+
monitorTabs_tb.dataProvider = tab_arr;
monitorTabs_tb.selectedIndex = 0;
- //learnerMenuBar = this.attachMovie("RefreshBar", "RefreshBar", this.getNextHighestDepth(), {_x:-30})
- //learnerMenuBar = eval(learnerMenuBar)
-
- //learnerMenuBar.refresh_btn.addEventListener("click",mcontroller);
refresh_btn.addEventListener("click",mcontroller);
+ help_btn.addEventListener("click",mcontroller);
monitorTabs_tb.addEventListener("change",mcontroller);
-
- //setStyles();
+ setLabels();
+ setStyles();
setupTabInit()
dispatchEvent({type:'load',target:this});
@@ -266,28 +250,36 @@
mm.addObserver(todoTabView);
}
-
-
/**
- * Event listener for when when tab is clicked
- *
- * @usage
- * @param evt
- * @return
+ * Get the CSSStyleDeclaration objects for each component and apply them
+ * directly to the instance
*/
- //private function clickEvt(evt):Void{
- // trace(evt.target);
- // trace("test: "+ String(evt.target.selectedIndex))
- //forClick.text="label is: " + evt.itemIndex.label + " index is: " + evt.index + " capital is: " + targetComp.dataProvider[evt.index].data;
- //}
+ private function setStyles():Void{
+ var styleObj = _tm.getStyleObject('CanvasPanel');
+ bkg_pnl.setStyle('styleName',styleObj);
+ styleObj = _tm.getStyleObject('scrollpane');
+ monitor_scp.setStyle('styleName',styleObj);
+ styleObj = _tm.getStyleObject('button');
+ monitorTabs_tb.setStyle('styleName', styleObj);
+ refresh_btn.setStyle('styleName',styleObj);
+ help_btn.setStyle('styleName',styleObj);
+
+ }
+
+ private function setLabels():Void{
+ refresh_btn.label = Dictionary.getValue('refresh_btn');
+ help_btn.label = Dictionary.getValue('help_btn');
+ }
+
/**
* Sets the size of the canvas on stage, called from update
*/
private function setSize(mm:MonitorModel):Void{
var s:Object = mm.getSize();
trace("Monitor Tab Widtht: "+s.w+" Monitor Tab Height: "+s.h);
- monitor_scp.setSize(s.w,s.h);
+ bkg_pnl.setSize(s.w,s.h);
+ monitor_scp.setSize(s.w-monitor_scp._x,s.h-monitor_scp._y);
refresh_btn._x = s.w - 180
help_btn._x = s.w - 80
Index: lams_central/src/flash/org/lamsfoundation/lams/monitoring/mv/tabviews/LearnerTabView.as
===================================================================
diff -u -r154e8c23af365fb667b39d9ce4da9172ab0ab25c -rc1774bfa6a2989cf32fc39f5f0fe7f3e8bfc9787
--- lams_central/src/flash/org/lamsfoundation/lams/monitoring/mv/tabviews/LearnerTabView.as (.../LearnerTabView.as) (revision 154e8c23af365fb667b39d9ce4da9172ab0ab25c)
+++ lams_central/src/flash/org/lamsfoundation/lams/monitoring/mv/tabviews/LearnerTabView.as (.../LearnerTabView.as) (revision c1774bfa6a2989cf32fc39f5f0fe7f3e8bfc9787)
@@ -197,7 +197,7 @@
*/
private function draw(){
//activityArr = new Array;
- //bkg_pnl = this.attachMovie("Panel", "bkg_pnl", this.getNextHighestDepth());
+ bkg_pnl = this.attachMovie("Panel", "bkg_pnl", this.getNextHighestDepth());
//set up the Movie Clips to load relevant
@@ -216,6 +216,9 @@
//learnerMenuBar.refresh_btn.onRelease = Proxy.create (this, reloadProgress);
trace("Help layer path: "+ learnerMenuBar.refresh_btn.label)
//setSize (mm)
+
+ setStyles();
+
dispatchEvent({type:'load',target:this});
}
@@ -400,6 +403,15 @@
//mm.getMonitor().getMV().getMonitorScp().redraw(true);
return s;
}
+
+ /**
+ * Get the CSSStyleDeclaration objects for each component and apply them
+ * directly to the instance
+ */
+ private function setStyles():Void{
+ var styleObj = _tm.getStyleObject('BGPanel');
+ bkg_pnl.setStyle('styleName',styleObj);
+ }
/**
* Sets the size of the canvas on stage, called from update
Index: lams_central/src/flash/org/lamsfoundation/lams/monitoring/mv/tabviews/LessonTabView.as
===================================================================
diff -u -r5ac58197e0875a235ceafc460b5fc85d37f16341 -rc1774bfa6a2989cf32fc39f5f0fe7f3e8bfc9787
--- lams_central/src/flash/org/lamsfoundation/lams/monitoring/mv/tabviews/LessonTabView.as (.../LessonTabView.as) (revision 5ac58197e0875a235ceafc460b5fc85d37f16341)
+++ lams_central/src/flash/org/lamsfoundation/lams/monitoring/mv/tabviews/LessonTabView.as (.../LessonTabView.as) (revision c1774bfa6a2989cf32fc39f5f0fe7f3e8bfc9787)
@@ -51,8 +51,14 @@
public static var ACTIVE_CBI:Number = 1;
public static var DISABLE_CBI:Number = 2;
public static var ARCHIVE_CBI:Number = 3;
- public static var UNARCHIVE_CBI:Number = 4;
- private var _className = "LessonTabView";
+ public static var UNARCHIVE_CBI:Number = 4;
+
+ public static var STARTED_STATUS:Number = 3;
+ public static var SUSPENDED_STATUS:Number = 4;
+ public static var ARCHIVED_STATUS:Number = 6;
+
+ private var _className = "LessonTabView";
+
//constants:
private var _tm:ThemeManager;
private var mm:MonitorModel;
@@ -64,7 +70,9 @@
private var _monitorReqTask_mc:MovieClip;
private var reqTasks_scp:MovieClip;
private var monitorTabs_tb:MovieClip;
- private var _lessonStateArr:Array;
+ private var _lessonStateArr:Array;
+ private var bkg_pnl:MovieClip;
+
//Labels
private var status_lbl:Label;
private var learner_lbl:Label;
@@ -83,9 +91,10 @@
private var numLearners_txt:TextField;
private var class_txt:TextField;
private var duration_txt:TextField;
+ private var startMsg_txt:TextField;
+
private var lessonManager:TextField;
- private var taskManager:TextField;
- private var startMsg_txt:TextField;
+ private var taskManager:TextField;
//Button
private var viewLearners_btn:Button;
@@ -172,7 +181,7 @@
case 'RELOADPROGRESS' :
if (infoObj.tabID == _tabID){
trace("called Reload progress")
- //reloadProgress()
+ mm.getMonitor().reloadLessonToMonitor();
}
break;
case 'LM_DIALOG' :
@@ -205,15 +214,17 @@
start_btn.addEventListener("click", _monitorController);
statusApply_btn.addEventListener("click", Delegate.create(this, changeStatus))
this.addEventListener("apply", Delegate.create(_monitorController, _monitorController.changeStatus));
-
+
}
/**
* layout visual elements on the canvas on initialisation
*/
- private function draw(){
+ private function draw(){
+
listCount = 0;
- this.onEnterFrame = setupLabels;
+ this.onEnterFrame = setupLabels;
+
//get the content path for the sp
_monitorReqTask_mc = reqTasks_scp.content;
_monitorController = getController();
@@ -228,28 +239,6 @@
populateLessonDetails();
enableEditClass(seq.state);
- if(seq.state != Sequence.ACTIVE_STATE_ID){
- // hide start buttons etc
- scheduleTime._visible = false;
- scheduleDate_dt.visible = false;
- start_btn.visible = false;
- schedule_btn.visible = false;
- manageDate_lbl.visible = false;
- //manageStart_lbl.visible = false;
-
- /**
- if(seq.isStarted()){
- startMsg_txt.text = "Currently Started."
- } else {
- startMsg_txt.text = "Scheduled to start at "
- }
-
- startMsg_txt.visible = true;
- */
- }
-
- //setStyles();
-
var requestLessonID:Number = seq.ID;
trace('seq id: ' + mm.getSequence().ID);
@@ -263,6 +252,9 @@
}else{
mm.getMonitor().getContributeActivities(mm.getSequence().ID);
}
+
+
+ setStyles();
dispatchEvent({type:'load',target:this});
}
@@ -277,7 +269,7 @@
LSTitle_txt.text = s.name;
LSDescription_txt.text = s.description;
sessionStatus_txt.text = showStatus(s.state);
- numLearners_txt.text = String(s.noStartedLearners) + " of "+String(s.noPossibleLearners);
+ numLearners_txt.text = String(s.noStartedLearners) + " " + Dictionary.getValue('ls_of_text')+" "+String(s.noPossibleLearners);
class_txt.text = s.organisationName;
}
@@ -286,61 +278,84 @@
switch(stateID){
case Sequence.SUSPENDED_STATE_ID :
- changeStatus_cmb.addItem("Select Status", LessonTabView.NULL_CBI);
- changeStatus_cmb.addItem("Active", LessonTabView.ACTIVE_CBI);
- changeStatus_cmb.addItem("Archive", LessonTabView.ARCHIVE_CBI);
+ changeStatus_cmb.addItem(Dictionary.getValue('ls_manage_status_cmb'), LessonTabView.NULL_CBI);
+ changeStatus_cmb.addItem(Dictionary.getValue('ls_status_cmb_enable'), LessonTabView.ACTIVE_CBI);
+ changeStatus_cmb.addItem(Dictionary.getValue('ls_status_cmb_archive'), LessonTabView.ARCHIVE_CBI);
break;
case Sequence.ARCHIVED_STATE_ID :
- changeStatus_cmb.addItem("Select Status", LessonTabView.NULL_CBI);
- changeStatus_cmb.addItem("Activate", LessonTabView.UNARCHIVE_CBI);
+ changeStatus_cmb.addItem(Dictionary.getValue('ls_manage_status_cmb'), LessonTabView.NULL_CBI);
+ changeStatus_cmb.addItem(Dictionary.getValue('ls_status_cmb_activate'), LessonTabView.UNARCHIVE_CBI);
break;
case Sequence.ACTIVE_STATE_ID :
- changeStatus_cmb.addItem("Select Status", LessonTabView.NULL_CBI);
- changeStatus_cmb.addItem("Archive", LessonTabView.ARCHIVE_CBI);
+ changeStatus_cmb.addItem(Dictionary.getValue('ls_manage_status_cmb'), LessonTabView.NULL_CBI);
+ changeStatus_cmb.addItem(Dictionary.getValue('ls_status_cmb_archive'), LessonTabView.ARCHIVE_CBI);
break;
case Sequence.NOTSTARTED_STATE_ID :
- changeStatus_cmb.addItem("Select Status", LessonTabView.NULL_CBI);
- changeStatus_cmb.addItem("Archive", LessonTabView.ARCHIVE_CBI);
+ changeStatus_cmb.addItem(Dictionary.getValue('ls_manage_status_cmb'), LessonTabView.NULL_CBI);
+ changeStatus_cmb.addItem(Dictionary.getValue('ls_status_cmb_archive'), LessonTabView.ARCHIVE_CBI);
break;
default :
- changeStatus_cmb.addItem("Select Status", LessonTabView.NULL_CBI);
- changeStatus_cmb.addItem("Disable", LessonTabView.DISABLE_CBI);
- changeStatus_cmb.addItem("Archive", LessonTabView.ARCHIVE_CBI);
+ changeStatus_cmb.addItem(Dictionary.getValue('ls_manage_status_cmb'), LessonTabView.NULL_CBI);
+ changeStatus_cmb.addItem(Dictionary.getValue('ls_status_cmb_disable'), LessonTabView.DISABLE_CBI);
+ changeStatus_cmb.addItem(Dictionary.getValue('ls_status_cmb_archive'), LessonTabView.ARCHIVE_CBI);
- }
- }
-
+ }
+
+ }
private function enableEditClass(stateID:Number):Void{
switch(stateID){
case Sequence.ACTIVE_STATE_ID :
+ showStartFields(true);
editClass_btn.enabled = true;
break;
case Sequence.NOTSTARTED_STATE_ID :
+ showStartFields(true);
editClass_btn.enabled = true;
break;
default :
+ showStartFields(false);
editClass_btn.enabled = false;
}
}
+
+ private function showStartFields(b:Boolean){
+ scheduleTime._visible = b;
+ scheduleDate_dt.visible = b;
+ start_btn.visible = b;
+ schedule_btn.visible = b;
+ manageDate_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{
var seqStat:String;
- switch(String(seqStatus)){
- case '6' :
- seqStat = "Archived"
+
+ switch(seqStatus){
+ case LessonTabView.ARCHIVED_STATUS :
+ seqStat = Dictionary.getValue('ls_status_archived_lbl');
break;
- case '3' :
- seqStat = "Started"
+ case LessonTabView.STARTED_STATUS :
+ seqStat = Dictionary.getValue('ls_status_started_lbl');
break;
- case '4' :
- seqStat = "Suspended"
+ case LessonTabView.SUSPENDED_STATUS :
+ seqStat = Dictionary.getValue('ls_status_disabled_lbl');
break;
default:
- seqStat = "Active"
+ seqStat = Dictionary.getValue('ls_status_active_lbl');
}
- return seqStat
+
+ return seqStat;
}
/**
@@ -439,6 +454,7 @@
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.text = Dictionary.getValue('todo_goContribute_btn');
requiredTaskList[listCount].goContribute.onRelease = function (){
trace("Contrybute Type is: "+o.taskURL);
getURL(String(o.taskURL), "_blank");
@@ -468,7 +484,7 @@
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:"Edit Class",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));
}
@@ -480,7 +496,7 @@
trace('doing Learners popup...');
trace('app root: ' + mm.getMonitor().root);
trace('lfwindow: ' + LFWindow);
- var opendialog:MovieClip = PopUpManager.createPopUp(mm.getMonitor().root, LFWindow, true,{title:"View Learners",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));
}
@@ -508,43 +524,47 @@
//max_lbl.text = Dictionary.getValue('pi_max_act');
//populate the synch type combo:
- status_lbl.text = "Status:"
- learner_lbl.text = "Learners:"
- class_lbl.text = "Class:"
- elapsed_lbl.text = "Elapsed duration:"
- manageClass_lbl.text = "Class:"
- manageStatus_lbl.text = "Status:"
- manageStart_lbl.text = "Start:"
- manageDate_lbl.text = "Date"
+ status_lbl.text = Dictionary.getValue('ls_status_lbl');
+ learner_lbl.text = Dictionary.getValue('ls_learners_lbl');
+ class_lbl.text = Dictionary.getValue('ls_class_lbl');
+ elapsed_lbl.text = Dictionary.getValue('ls_duration_lbl');
+ manageClass_lbl.text = Dictionary.getValue('ls_manage_class_lbl');
+ manageStatus_lbl.text = Dictionary.getValue('ls_manage_status_lbl');
+ manageStart_lbl.text = Dictionary.getValue('ls_manage_start_lbl');
+ manageDate_lbl.text = Dictionary.getValue('ls_manage_date_lbl');
//Button
- viewLearners_btn.label = "View Learners"
- editClass_btn.label = "Edit Class"
- statusApply_btn.label = "Apply"
- schedule_btn.label = "Schedule"
- start_btn.label = "Start Now"
+ viewLearners_btn.label = Dictionary.getValue('ls_manage_learners_btn');
+ editClass_btn.label = Dictionary.getValue('ls_manage_editclass_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');
- _lessonStateArr = ["CREATED", "NOT_STARTED", "STARTED", "SUSPENDED", "FINISHED", "ARCHIVED", "DISABLED"];
+ //_lessonStateArr = ["CREATED", "NOT_STARTED", "STARTED", "SUSPENDED", "FINISHED", "ARCHIVED", "DISABLED"];
taskManager.border = true
taskManager.borderColor = 0x003366;
+ taskManager.text = Dictionary.getValue('ls_tasks_txt');
+
lessonManager.border = true
lessonManager.borderColor = 0x003366;
+ lessonManager.text = Dictionary.getValue('ls_manage_txt');
+
taskManager.background = true
taskManager.backgroundColor = 0xEAEAEA;
lessonManager.background = true
lessonManager.backgroundColor = 0xEAEAEA;
- //Call to apply style to all the labels and input fields
+
delete this.onEnterFrame;
+
+ //Call to apply style to all the labels and input fields
setStyles();
}
/**
* Get the CSSStyleDeclaration objects for each component and apply them
* directly to the instance
- * @usage
- * @return
*/
private function setStyles() {
@@ -571,12 +591,18 @@
changeStatus_cmb.setStyle('styleName',styleObj);
scheduleDate_dt.setStyle('styleName',styleObj);
+ //BG PANEL
+ styleObj = _tm.getStyleObject('BGPanel');
+ bkg_pnl.setStyle('styleName',styleObj);
+
//STEPPER
- styleObj = _tm.getStyleObject('numericstepper');
+ //styleObj = _tm.getStyleObject('numericstepper');
//startHour_stp.setStyle('styleName',styleObj);
//startMin_stp.setStyle('styleName',styleObj);
//SCROLLPANE
+ styleObj = _tm.getStyleObject('scrollpane');
+ reqTasks_scp.setStyle('styleName', styleObj);
reqTasks_scp.border_mc.setStyle('_visible',false);
}
@@ -612,6 +638,7 @@
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,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);
Index: lams_central/src/flash/org/lamsfoundation/lams/monitoring/mv/tabviews/MonitorTabView.as
===================================================================
diff -u -r154e8c23af365fb667b39d9ce4da9172ab0ab25c -rc1774bfa6a2989cf32fc39f5f0fe7f3e8bfc9787
--- lams_central/src/flash/org/lamsfoundation/lams/monitoring/mv/tabviews/MonitorTabView.as (.../MonitorTabView.as) (revision 154e8c23af365fb667b39d9ce4da9172ab0ab25c)
+++ lams_central/src/flash/org/lamsfoundation/lams/monitoring/mv/tabviews/MonitorTabView.as (.../MonitorTabView.as) (revision c1774bfa6a2989cf32fc39f5f0fe7f3e8bfc9787)
@@ -65,7 +65,7 @@
//private var _monitor_mc:MovieClip;
private var learnerMenuBar:MovieClip;
private var monitorTabs_tb:MovieClip;
- private var _monitorTabViewContainer_mc:MovieClip
+ private var _monitorTabViewContainer_mc:MovieClip;
private var bkg_pnl:MovieClip;
private var _gridLayer_mc:MovieClip;
private var _transitionLayer_mc:MovieClip;
@@ -212,6 +212,9 @@
//learnerMenuBar.refresh_btn.onRelease = Proxy.create (this, reloadProgress);
trace("Loaded MonitorTabView Data"+ this)
//setSize (mm)
+
+ setStyles();
+
dispatchEvent({type:'load',target:this});
}
@@ -342,7 +345,17 @@
return s;
}
+
/**
+ * Get the CSSStyleDeclaration objects for each component and apply them
+ * directly to the instance
+ */
+ private function setStyles():Void{
+ var styleObj = _tm.getStyleObject('CanvasPanel');
+ bkg_pnl.setStyle('styleName',styleObj);
+ }
+
+ /**
* Sets the size of the canvas on stage, called from update
*/
private function setSize(mm:MonitorModel):Void{
Index: lams_central/src/flash/org/lamsfoundation/lams/monitoring/mv/tabviews/TodoTabView.as
===================================================================
diff -u -r2fb3f710180cf191ee1c8c1cb413250b64c638aa -rc1774bfa6a2989cf32fc39f5f0fe7f3e8bfc9787
--- lams_central/src/flash/org/lamsfoundation/lams/monitoring/mv/tabviews/TodoTabView.as (.../TodoTabView.as) (revision 2fb3f710180cf191ee1c8c1cb413250b64c638aa)
+++ lams_central/src/flash/org/lamsfoundation/lams/monitoring/mv/tabviews/TodoTabView.as (.../TodoTabView.as) (revision c1774bfa6a2989cf32fc39f5f0fe7f3e8bfc9787)
@@ -53,6 +53,9 @@
private var listCount:Number = 0;
private var todoTaskList:Array = new Array();
private var _monitorTodoTask_mc:MovieClip;
+
+ // Background
+ private var bkg_pnl:MovieClip;
//Text Items
private var genralInfo_txt:TextField;
@@ -145,18 +148,20 @@
}else{
mm.getMonitor().getContributeActivities(mm.getSequence().getSequenceID());
}
+
+ setStyles();
dispatchEvent({type:'load',target:this});
}
/**
* Populate the lesson details from HashTable Sequence in MOnitorModel
*/
- private function populateLessonDetails():Void{
- //var mm:Observable = getModel();
+ private function populateLessonDetails():Void{
+
var s:Object = mm.getSequence();
- var desc:String = "Advanced Controls: Use of this Todo Tab is not required to complete the sequence. See the help page for more information.
This feature is now fully functional."
- genralInfo_txt.htmlText = desc
+ var desc:String = "" + Dictionary.getValue('td_desc_heading') + "" + Dictionary.getValue('td_desc_text');
+ genralInfo_txt.htmlText = desc;
}
@@ -223,6 +228,7 @@
todoTaskList[listCount] = _monitorTodoTask_mc.attachMovie("contributeActivityRow", "contributeActivityRow"+listCount, _monitorTodoTask_mc.getNextHighestDepth(), {_x:x, _y:YPOS+(19*listCount)})
todoTaskList[listCount].contributeActivity.background = true;
todoTaskList[listCount].contributeActivity._width=_monitorTodoTask_mc._width-20
+
if (ca._parentActivityID == null){
todoTaskList[listCount].contributeActivity.text = " "+ca.title
todoTaskList[listCount].contributeActivity.backgroundColor = 0xD5E6FF;
@@ -242,7 +248,8 @@
trace('write out entry with GO link'+o.taskURL);
todoTaskList[listCount] =_monitorTodoTask_mc.attachMovie("contributeEntryRow", "contributeEntryRow"+listCount, this._monitorTodoTask_mc.getNextHighestDepth(), {_x:x, _y:YPOS+(19*listCount)})
todoTaskList[listCount].contributeEntry.text = "\t\t"+mm.getMonitor().getCELiteral(o._contributionType);
- todoTaskList[listCount].goContribute._x = this._width-50
+ todoTaskList[listCount].goContribute._x = this._width-50;
+ todoTaskList[listCount].goContribute.text = Dictionary.getValue('todo_goContribute_btn');
todoTaskList[listCount].goContribute.onRelease = function (){
trace("Contrybute Type is: "+o.taskURL);
getURL(String(o.taskURL), "_blank");
@@ -261,12 +268,22 @@
}
}
}
+
+ /**
+ * Get the CSSStyleDeclaration objects for each component and apply them
+ * directly to the instance
+ */
+ private function setStyles():Void{
+ var styleObj = _tm.getStyleObject('BGPanel');
+ bkg_pnl.setStyle('styleName',styleObj);
+ }
/**
* Sets the size of the canvas on stage, called from update
*/
private function setSize(mm:MonitorModel):Void{
- var s:Object = mm.getSize();
+ var s:Object = mm.getSize();
+ bkg_pnl.setSize(s.w,s.h);
genralInfo_txt._width = s.w-20
for (var i=0; i