Index: lams_central/src/flash/org/lamsfoundation/lams/authoring/DesignDataModel.as =================================================================== diff -u -r2e8644b7159adf3a842b1c622ccbb8a51136e18a -r85778860894cb37b9d17b1f4cb47915ff1ac4d6c --- lams_central/src/flash/org/lamsfoundation/lams/authoring/DesignDataModel.as (.../DesignDataModel.as) (revision 2e8644b7159adf3a842b1c622ccbb8a51136e18a) +++ lams_central/src/flash/org/lamsfoundation/lams/authoring/DesignDataModel.as (.../DesignDataModel.as) (revision 85778860894cb37b9d17b1f4cb47915ff1ac4d6c) @@ -64,6 +64,7 @@ private var _duration:Number; private var _readOnly:Boolean; private var _autoSaved:Boolean + private var _saveMode:Number; private var _validDesign:Boolean; private var _modified:Boolean; private var _maxID:Number; @@ -402,9 +403,9 @@ * @usage * @return */ - public function getDesignForSaving(isCopy:Boolean):Object{ + public function getDesignForSaving():Object{ prepareDesignForSaving(); - return toData(isCopy); + return toData(); } public function getDesignForAutoSave():Object{ @@ -434,7 +435,7 @@ * @usage * @return */ - public function toData(isCopy:Boolean):Object{ + public function toData():Object{ var design:Object = new Object(); //if null, use default @@ -493,6 +494,9 @@ //valid design must be in the DTO, so if its null, then give a false design.validDesign = (_validDesign==null) ? false : _validDesign; + design.saveMode = (_saveMode!=null) ? _saveMode : Config.NUMERIC_NULL_VALUE; + + if(_maxID){ design.maxID = _maxID; } if(_firstActivityID){ design.firstActivityID = _firstActivityID; } if(_firstActivityUIID){ design.firstActivityUIID= _firstActivityID; } @@ -512,7 +516,7 @@ if(classActs.length > 0){ for(var i=0; i getToolActivities(Long learningDesignId) { + LearningDesign learningDesign = learningDesignDAO.getLearningDesignById(learningDesignId); + Vector listOfAuthoringActivityDTOs = new Vector(); + + for (Iterator i = learningDesign.getActivities().iterator(); i.hasNext();) + { + Activity currentActivity = (Activity) i.next(); + if (currentActivity.isToolActivity()) + { + try { + ToolActivity toolActivity = (ToolActivity) activityDAO.getActivityByActivityId(currentActivity.getActivityId()); + AuthoringActivityDTO activityDTO = new AuthoringActivityDTO(toolActivity); + listOfAuthoringActivityDTOs.add(activityDTO); + } catch (ToolException e) { + String error = "" + +e.getMessage(); + log.error(error,e); + throw new LearningDesignException(error,e); + } + } + } + + return listOfAuthoringActivityDTOs; + } + /** * (non-Javadoc) * @see org.lamsfoundation.lams.authoring.service.IAuthoringService#getAllLearningDesignDetails() @@ -678,16 +756,8 @@ // lowercase to resolve OS issues newUniqueContentFolderID = ((String) uuidGen.generate(null, null)).toLowerCase(); - // directory pathname - //String dirPath = Configuration.get(ConfigurationKeys.LAMS_EAR_DIR) + File.separator + AuthoringConstants.LAMS_WWW_DIR + File.separator + AuthoringConstants.LAMS_WWW_SECURE_DIR + File.separator + newUniqueContentFolderID; + flashMessage = new FlashMessage("createUniqueContentFolder", newUniqueContentFolderID); - // create new directory - //if(FileUtil.createDirectory(dirPath)){ - flashMessage = new FlashMessage("createUniqueContentFolder", newUniqueContentFolderID); - //} else { - // throw new FileUtilException(); - //} - return flashMessage.serializeMessage(); } Index: lams_central/src/java/org/lamsfoundation/lams/authoring/service/IAuthoringService.java =================================================================== diff -u -re21e46d35a751657ff3b63704419ad212747425e -r85778860894cb37b9d17b1f4cb47915ff1ac4d6c --- lams_central/src/java/org/lamsfoundation/lams/authoring/service/IAuthoringService.java (.../IAuthoringService.java) (revision e21e46d35a751657ff3b63704419ad212747425e) +++ lams_central/src/java/org/lamsfoundation/lams/authoring/service/IAuthoringService.java (.../IAuthoringService.java) (revision 85778860894cb37b9d17b1f4cb47915ff1ac4d6c) @@ -28,6 +28,7 @@ import java.util.Vector; import org.lamsfoundation.lams.learningdesign.LearningDesign; +import org.lamsfoundation.lams.learningdesign.dto.AuthoringActivityDTO; import org.lamsfoundation.lams.learningdesign.dto.ValidationErrorDTO; import org.lamsfoundation.lams.learningdesign.exception.LearningDesignException; import org.lamsfoundation.lams.usermanagement.User; @@ -92,7 +93,19 @@ public LearningDesign copyLearningDesign(Long originalLearningDesignID,Integer copyType, Integer userID, Integer workspaceFolder, boolean setOriginalDesign)throws UserException, LearningDesignException, WorkspaceFolderException, IOException; + /** + * + * @param design + * @param originalLearningDesign + * @param copyType + * @return + * @throws LearningDesignException + */ + public LearningDesign copyLearningDesignToolContent(LearningDesign design, LearningDesign originalLearningDesign, Integer copyType ) throws LearningDesignException; + + + /** * @return List Returns the list of all the available LearningDesign's * */ public List getAllLearningDesigns(); @@ -138,6 +151,13 @@ public Vector validateLearningDesign(Long learningDesignId); /** + * + * @param learningDesignId + * @return + */ + public Vector getToolActivities(Long learningDesignId); + + /** * This method returns a list of all available Learning Designs * in WDDX format. * Index: lams_central/src/java/org/lamsfoundation/lams/authoring/web/StoreLDServlet.java =================================================================== diff -u -r016db2a9e2faacd0b9d20dd874571756eea79a14 -r85778860894cb37b9d17b1f4cb47915ff1ac4d6c --- lams_central/src/java/org/lamsfoundation/lams/authoring/web/StoreLDServlet.java (.../StoreLDServlet.java) (revision 016db2a9e2faacd0b9d20dd874571756eea79a14) +++ lams_central/src/java/org/lamsfoundation/lams/authoring/web/StoreLDServlet.java (.../StoreLDServlet.java) (revision 85778860894cb37b9d17b1f4cb47915ff1ac4d6c) @@ -31,6 +31,8 @@ import org.lamsfoundation.lams.authoring.dto.StoreLearningDesignResultsDTO; import org.lamsfoundation.lams.authoring.service.IAuthoringService; import org.lamsfoundation.lams.learningdesign.dto.ValidationErrorDTO; +import org.lamsfoundation.lams.learningdesign.dto.AuthoringActivityDTO; + import org.lamsfoundation.lams.util.wddx.FlashMessage; import org.lamsfoundation.lams.web.servlet.AbstractStoreWDDXPacketServlet; import org.springframework.web.context.WebApplicationContext; @@ -63,14 +65,15 @@ try { Long learningDesignID = authoringService.storeLearningDesignDetails(designDetails); + Vector activityDTOS = authoringService.getToolActivities(learningDesignID); Vector validationDTOS = authoringService.validateLearningDesign(learningDesignID); FlashMessage flashMessage = null; if ( validationDTOS != null &&validationDTOS.size()>0) { flashMessage = new FlashMessage(getMessageKey(designDetails, request), - new StoreLearningDesignResultsDTO(Boolean.FALSE,validationDTOS, learningDesignID), FlashMessage.OBJECT_MESSAGE); + new StoreLearningDesignResultsDTO(Boolean.FALSE,validationDTOS, activityDTOS, learningDesignID), FlashMessage.OBJECT_MESSAGE); } else { flashMessage = new FlashMessage(getMessageKey(designDetails, request), - new StoreLearningDesignResultsDTO(Boolean.TRUE, learningDesignID)); + new StoreLearningDesignResultsDTO(Boolean.TRUE, activityDTOS, learningDesignID)); } returnPacket = flashMessage.serializeMessage();