Index: lams_common/conf/language/lams/ApplicationResources.properties =================================================================== diff -u -rbb1a7ea8577e8a7fabc9d2f468a45d491f8450c6 -rdff974ef2462e40cacf7f8c737fc6ec4bb501806 --- lams_common/conf/language/lams/ApplicationResources.properties (.../ApplicationResources.properties) (revision bb1a7ea8577e8a7fabc9d2f468a45d491f8450c6) +++ lams_common/conf/language/lams/ApplicationResources.properties (.../ApplicationResources.properties) (revision dff974ef2462e40cacf7f8c737fc6ec4bb501806) @@ -40,14 +40,15 @@ audit.user.create =Created user: {0}, Full Name: {1} validation.error.sequenceActivityMustHaveFirstActivity =A Branch must have a first Activity. validation.error.branching.must.have.a.branch =A Branching Activity must have at least one Branch. -validation.error.toolBranchingMustHaveDefaultBranch =A Tool Output Based Branching Activity must have a Default Branch. +validation.error.toolBranchingMustHaveDefaultBranch =A Learner's Output Branching Activity must have a Default Branch. validation.error.groupedBranchingMustHaveAGrouping =A Group Based Branching Activity must have a Grouping Activity. Unless Define Later is turned on, it must have at least one group. validation.error.groupedBranchingMustHaveBranchForGroup =A Group Based Branching Activity must have all Groups assigned to Branches. validation.error.toolBranchingConditionInvalid =A condition has a bad or missing comparison value. -validation.error.toolBranchingMustHaveAnInputToolActivity =A Tool Output Based Branching Activity must have an Input Tool. +validation.error.toolBranchingMustHaveAnInputToolActivity =A Learner's Output Branching Activity must have an Input Tool. error.possibly.incompatible.version =Cannot confirm that the .zip file is compatible with the current version of LAMS. It may be from a newer version of LAMS. Version from .zip file is {0}, current LAMS version is {1}. Import may fail. validation.error.group.count.mismatch =More groups exist than the number of groups that should exist. msg.import.file.format =The import file must be a LAMS format .zip file exported from LAMS 2 or above, or a .las file exported from LAMS 1.0.2. You cannot import a design exported using the IMS Learning Design format. #======= End labels: Exported 42 labels for en AU ===== +validation.error.toolBranchingMustHaveACondition=A Learner's Output Branching Activity must have at least one condition. \ No newline at end of file Index: lams_common/src/java/org/lamsfoundation/lams/learningdesign/ToolBranchingActivity.java =================================================================== diff -u -r309a597eada52a4079f2985e0d97beedf9adda42 -rdff974ef2462e40cacf7f8c737fc6ec4bb501806 --- lams_common/src/java/org/lamsfoundation/lams/learningdesign/ToolBranchingActivity.java (.../ToolBranchingActivity.java) (revision 309a597eada52a4079f2985e0d97beedf9adda42) +++ lams_common/src/java/org/lamsfoundation/lams/learningdesign/ToolBranchingActivity.java (.../ToolBranchingActivity.java) (revision dff974ef2462e40cacf7f8c737fc6ec4bb501806) @@ -171,6 +171,7 @@ if ( getActivities() == null || getActivities().size() == 0 ) { listOfValidationErrors.add(new ValidationErrorDTO(ValidationErrorDTO.BRANCHING_ACTIVITY_MUST_HAVE_A_BRANCH_ERROR_CODE, messageService.getMessage(ValidationErrorDTO.BRANCHING_ACTIVITY_MUST_HAVE_A_BRANCH), this.getActivityUIID())); } else { + boolean conditionsExist = false; Iterator actIterator = getActivities().iterator(); while (actIterator.hasNext()) { SequenceActivity branch = (SequenceActivity) actIterator.next(); @@ -179,14 +180,25 @@ while (condIterator.hasNext()) { BranchActivityEntry entry = (BranchActivityEntry) condIterator.next(); BranchCondition condition = entry.getCondition(); - if ( condition == null || ! condition.isValid() ) { + if ( condition == null ) { listOfValidationErrors.add(new ValidationErrorDTO(ValidationErrorDTO.BRANCH_CONDITION_INVALID_ERROR_CODE, messageService.getMessage(ValidationErrorDTO.BRANCH_CONDITION_INVALID), this.getActivityUIID())); + } else { + conditionsExist = true; + if (! condition.isValid() ) { + listOfValidationErrors.add(new ValidationErrorDTO(ValidationErrorDTO.BRANCH_CONDITION_INVALID_ERROR_CODE, + messageService.getMessage(ValidationErrorDTO.BRANCH_CONDITION_INVALID), this.getActivityUIID())); + } } } } } + if ( ! conditionsExist ) { + listOfValidationErrors.add(new ValidationErrorDTO(ValidationErrorDTO.BRANCHING_ACTVITY_TOOLCONDITION_ERROR_CODE, + messageService.getMessage(ValidationErrorDTO.BRANCHING_ACTVITY_TOOLCONDITION), this.getActivityUIID())); + } } + return listOfValidationErrors; } Index: lams_common/src/java/org/lamsfoundation/lams/learningdesign/dto/ValidationErrorDTO.java =================================================================== diff -u -r30acfe9f54a7c8e0e67b987665d8e8d9e93f496c -rdff974ef2462e40cacf7f8c737fc6ec4bb501806 --- lams_common/src/java/org/lamsfoundation/lams/learningdesign/dto/ValidationErrorDTO.java (.../ValidationErrorDTO.java) (revision 30acfe9f54a7c8e0e67b987665d8e8d9e93f496c) +++ lams_common/src/java/org/lamsfoundation/lams/learningdesign/dto/ValidationErrorDTO.java (.../ValidationErrorDTO.java) (revision dff974ef2462e40cacf7f8c737fc6ec4bb501806) @@ -54,6 +54,7 @@ public static final String BRANCHING_ACTVITY_MUST_HAVE_ALL_GROUPS_ALLOCATED = "validation.error.groupedBranchingMustHaveBranchForGroup"; //BGM public static final String BRANCH_CONDITION_INVALID = "validation.error.toolBranchingConditionInvalid"; // BCOND public static final String BRANCHING_ACTVITY_TOOLINPUT = "validation.error.toolBranchingMustHaveAnInputToolActivity"; // BTI + public static final String BRANCHING_ACTVITY_TOOLCONDITION = "validation.error.toolBranchingMustHaveACondition"; // BTC public static final String OTHER_ERROR_CODE = "O"; public static final String TRANSITION_ERROR_CODE = "T"; @@ -75,6 +76,7 @@ public static final String BRANCHING_ACTVITY_MUST_HAVE_ALL_GROUPS_ALLOCATED_ERROR_CODE = "BGM"; public static final String BRANCH_CONDITION_INVALID_ERROR_CODE = "BCOND"; public static final String BRANCHING_ACTVITY_TOOLINPUT_ERROR_CODE = "BTI"; + public static final String BRANCHING_ACTVITY_TOOLCONDITION_ERROR_CODE = "BTC"; private static MessageResources resources = MessageResources.getMessageResources(CONFIG_PARAM);