Index: lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/DesignDataModel.as =================================================================== RCS file: /usr/local/cvsroot/lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/DesignDataModel.as,v diff -u -r1.48 -r1.49 --- lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/DesignDataModel.as 13 Mar 2008 05:05:33 -0000 1.48 +++ lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/DesignDataModel.as 10 Apr 2008 08:42:33 -0000 1.49 @@ -1428,6 +1428,10 @@ _branches = a; } + public function get groupings():Hashtable{ + return _groupings; + } + public function get branchMappings():Hashtable { return _branchMappings; } Index: lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/cv/Canvas.as =================================================================== RCS file: /usr/local/cvsroot/lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/cv/Canvas.as,v diff -u -r1.31 -r1.32 --- lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/cv/Canvas.as 17 Mar 2008 07:14:53 -0000 1.31 +++ lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/cv/Canvas.as 10 Apr 2008 08:42:34 -0000 1.32 @@ -217,9 +217,17 @@ LFMessage.showMessageConfirm(Dictionary.getValue("redundant_branch_mappings_msg"), Proxy.create(_ddm, _ddm.removeRedundantBranchMappings, Proxy.create(this, saveDesignToServer, workspaceResultDTO)), null, Dictionary.getValue("al_continue"), null); } else { var dto:Object = _ddm.getDesignForSaving(); - var callback:Function = Proxy.create(this,onStoreDesignResponse); + var groupingUIID:Number = null; + if((groupingUIID = validateGroupings()) != null) { + // return error message + Cursor.showCursor(Application.C_DEFAULT); + LFMessage.showMessageAlert('Group names must be unique. Please review the Grouping Activity: '' + _ddm.getGroupingActivityByGroupingUIID(groupingUIID).title + ''', null); + return false; + } else { + var callback:Function = Proxy.create(this,onStoreDesignResponse); - Application.getInstance().getComms().sendAndReceive(dto,"servlet/authoring/storeLearningDesignDetails",callback,false); + Application.getInstance().getComms().sendAndReceive(dto,"servlet/authoring/storeLearningDesignDetails",callback,false); + } } return true; @@ -300,6 +308,30 @@ } } + public function validateGroupings():Number { + var keys:Array = _ddm.groupings.keys(); + var currentGrouping:Grouping = null; + + for(var i=0; i 0) + group = groups[0]; + + for(var j=1; j