Index: lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/service/ForumOutputFactory.java =================================================================== RCS file: /usr/local/cvsroot/lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/service/ForumOutputFactory.java,v diff -u -r1.9 -r1.10 --- lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/service/ForumOutputFactory.java 2 Aug 2009 20:15:08 -0000 1.9 +++ lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/service/ForumOutputFactory.java 24 Nov 2010 14:35:55 -0000 1.10 @@ -71,14 +71,19 @@ ToolOutputDefinition chosenTopicAnswersDefinition = buildComplexOutputDefinition( ForumConstants.TOPIC_DATE_TO_ANSWERS_DEFINITION_NAME, topicDatesToAnswersClass); Forum forum = (Forum) toolContentObject; + // adding all existing conditions chosenTopicAnswersDefinition .setDefaultConditions(new ArrayList(forum.getConditions())); + // if no conditions were created in the tool instance, a default condition is added; if (chosenTopicAnswersDefinition.getDefaultConditions().isEmpty() && !forum.getMessages().isEmpty()) { + ForumCondition defaultCondition = createDefaultTopicDateToAnswersCondition(forum); - forum.getConditions().add(defaultCondition); - chosenTopicAnswersDefinition.getDefaultConditions().add(defaultCondition); + if (defaultCondition != null) { + forum.getConditions().add(defaultCondition); + chosenTopicAnswersDefinition.getDefaultConditions().add(defaultCondition); + } } chosenTopicAnswersDefinition.setShowConditionNameOnly(true); definitionMap.put(ForumConstants.TOPIC_DATE_TO_ANSWERS_DEFINITION_NAME, chosenTopicAnswersDefinition); @@ -225,17 +230,18 @@ * @return default Forum condition */ protected ForumCondition createDefaultTopicDateToAnswersCondition(Forum forum) { - - if (forum.getMessages().isEmpty()) { - return null; - } + Set messages = new HashSet(); for (Message message : (Set) forum.getMessages()) { if (message.getIsAuthored()) { messages.add(message); break; } } + + if (messages.isEmpty()) { + return null; + } String name = buildConditionName(ForumConstants.TOPIC_DATE_TO_ANSWERS_DEFINITION_NAME, forum.getContentId() .toString()); Index: lams_tool_survey/src/java/org/lamsfoundation/lams/tool/survey/service/SurveyOutputFactory.java =================================================================== RCS file: /usr/local/cvsroot/lams_tool_survey/src/java/org/lamsfoundation/lams/tool/survey/service/SurveyOutputFactory.java,v diff -u -r1.9 -r1.10 --- lams_tool_survey/src/java/org/lamsfoundation/lams/tool/survey/service/SurveyOutputFactory.java 26 Jul 2009 22:19:46 -0000 1.9 +++ lams_tool_survey/src/java/org/lamsfoundation/lams/tool/survey/service/SurveyOutputFactory.java 24 Nov 2010 14:35:59 -0000 1.10 @@ -63,13 +63,18 @@ ToolOutputDefinition allAnswersDefinition = buildComplexOutputDefinition( SurveyConstants.TEXT_SEARCH_DEFINITION_NAME, stringArrayClass); Survey survey = (Survey) toolContentObject; + // adding all existing conditions allAnswersDefinition.setDefaultConditions(new ArrayList(survey.getConditions())); + // if no conditions were created in the tool instance, a default condition is added; if (allAnswersDefinition.getDefaultConditions().isEmpty() && !survey.getQuestions().isEmpty()) { + SurveyCondition defaultCondition = createDefaultComplexCondition(survey); - survey.getConditions().add(defaultCondition); - allAnswersDefinition.getDefaultConditions().add(defaultCondition); + if (defaultCondition != null) { + survey.getConditions().add(defaultCondition); + allAnswersDefinition.getDefaultConditions().add(defaultCondition); + } } allAnswersDefinition.setShowConditionNameOnly(true); definitionMap.put(SurveyConstants.TEXT_SEARCH_DEFINITION_NAME, allAnswersDefinition);