Index: lams_central/src/java/org/lamsfoundation/lams/web/HomeAction.java =================================================================== RCS file: /usr/local/cvsroot/lams_central/src/java/org/lamsfoundation/lams/web/HomeAction.java,v diff -u -r1.45 -r1.46 --- lams_central/src/java/org/lamsfoundation/lams/web/HomeAction.java 21 Mar 2013 09:37:07 -0000 1.45 +++ lams_central/src/java/org/lamsfoundation/lams/web/HomeAction.java 22 Mar 2013 10:33:55 -0000 1.46 @@ -53,6 +53,7 @@ import org.jdom.JDOMException; import org.lamsfoundation.lams.contentrepository.RepositoryCheckedException; import org.lamsfoundation.lams.learningdesign.GroupUser; +import org.lamsfoundation.lams.learningdesign.LearningDesign; import org.lamsfoundation.lams.learningdesign.dao.IGroupUserDAO; import org.lamsfoundation.lams.learningdesign.service.ILearningDesignService; import org.lamsfoundation.lams.lesson.Lesson; @@ -473,10 +474,16 @@ WorkspaceFolder.RUN_SEQUENCES.equals(folderContent.getResourceTypeID().intValue())); result.append("folders", subfolder); } else if (FolderContentDTO.DESIGN.equals(contentType)) { - JSONObject learningDesign = new JSONObject(); - learningDesign.put("learningDesignId", folderContent.getResourceID()); - learningDesign.put("name", folderContent.getName()); - result.append("learningDesigns", learningDesign); + Long learningDesignID = folderContent.getResourceID(); + LearningDesign learningDesign = (LearningDesign) getService().findById(LearningDesign.class, + learningDesignID); + // use only valid designs + if (learningDesign != null && learningDesign.getValidDesign()) { + JSONObject learningDesignJSON = new JSONObject(); + learningDesignJSON.put("learningDesignId", learningDesignID); + learningDesignJSON.put("name", folderContent.getName()); + result.append("learningDesigns", learningDesignJSON); + } } else { if (HomeAction.log.isDebugEnabled()) { HomeAction.log.debug("Unsupported folder content found, named \"" + folderContent.getName() + "\"");