LDEV-1347: Update the validation for branching. Splitting the validation code off into a separate class, to make the LearningDesignService class easier to read.
LDEV-1348: Adding the tool id to the condition, so that conditions can be re-instated automatically in authoring if the user changes a branching activity from tool based to group/teacher chosen and back to tool based. On the server side, the data is redundant at present, so the id is added to the DTO only, and ignored in the extraction code.
LDEV-1280: Implementing assign groups to branch in monitor screen (for define later). Required adding new functionality to branch related objects and a new call in lesson that allows monitoring to check if the branching activity has been attempted (we don't let the user remove groups or users from a branch once the branching activity has been commenced). Also moved the UTF-8 ajax fix to a common class in lams.jar so it can be used for all AJAX calls if desired.
LDEV-1280: Implementing define in monitor for group based branching. Adding define later to the possible contribution types for branching activities, so that it will appear in the list in monitor.
LDEV-1134: Fixed the View Branches screen for tool output based branching - I can't list the users based on groups as they aren't in groups (and I can't put them in groups as the groups have to be linked to the condition and if the user goes to the default branch there is no condition). So for tool output based branching I have to find the users via their progress records.
move some audit log messages from lams_admin to lams_common (in order for system-generated audit messages such as when users are auto-created to be used)
LDEV-1109: Fixing bugs in the authoring support for tool output based branching and getting the progress engine working. A rough implementation of the condition checking down for one MCQ condition for demonstration purposes. Two new methods added to the tool contract.