Index: lams_common/conf/hibernate/mappings/org/lamsfoundation/lams/lesson/Lesson.hbm.xml =================================================================== RCS file: /usr/local/cvsroot/lams_common/conf/hibernate/mappings/org/lamsfoundation/lams/lesson/Lesson.hbm.xml,v diff -u -r1.22 -r1.23 --- lams_common/conf/hibernate/mappings/org/lamsfoundation/lams/lesson/Lesson.hbm.xml 23 Oct 2006 23:58:55 -0000 1.22 +++ lams_common/conf/hibernate/mappings/org/lamsfoundation/lams/lesson/Lesson.hbm.xml 16 Nov 2006 01:05:05 -0000 1.23 @@ -41,6 +41,10 @@ + + + Index: lams_common/db/model/lams_11.clay =================================================================== RCS file: /usr/local/cvsroot/lams_common/db/model/lams_11.clay,v diff -u -r1.68 -r1.69 --- lams_common/db/model/lams_11.clay 16 Oct 2006 07:25:23 -0000 1.68 +++ lams_common/db/model/lams_11.clay 16 Nov 2006 01:06:22 -0000 1.69 @@ -2491,7 +2491,7 @@ - + @@ -2627,6 +2627,19 @@ + + + + + + + + + + + + + @@ -3457,7 +3470,7 @@
- + Index: lams_common/db/sql/create_lams_11_tables.sql =================================================================== RCS file: /usr/local/cvsroot/lams_common/db/sql/create_lams_11_tables.sql,v diff -u -r1.84 -r1.85 --- lams_common/db/sql/create_lams_11_tables.sql 30 Oct 2006 23:59:48 -0000 1.84 +++ lams_common/db/sql/create_lams_11_tables.sql 16 Nov 2006 01:06:22 -0000 1.85 @@ -554,6 +554,7 @@ , end_date_time DATETIME , schedule_end_date_time DATETIME , previous_state_id INT(3) + , learner_exportport_avail TINYINT(1) , PRIMARY KEY (lesson_id) , INDEX (learning_design_id) , CONSTRAINT FK_lams_lesson_1_1 FOREIGN KEY (learning_design_id) Index: lams_common/src/java/org/lamsfoundation/lams/lesson/Lesson.java =================================================================== RCS file: /usr/local/cvsroot/lams_common/src/java/org/lamsfoundation/lams/lesson/Lesson.java,v diff -u -r1.27 -r1.28 --- lams_common/src/java/org/lamsfoundation/lams/lesson/Lesson.java 23 Oct 2006 23:58:55 -0000 1.27 +++ lams_common/src/java/org/lamsfoundation/lams/lesson/Lesson.java 16 Nov 2006 01:04:50 -0000 1.28 @@ -117,6 +117,9 @@ /** persistent field */ private Set learnerProgresses; + /** Persistent field. Defaults to FALSE if not set to anything by a constructor parameter. */ + private Boolean learnerExportAvailable; + //--------------------------------------------------------------------- // constructors //--------------------------------------------------------------------- @@ -129,10 +132,12 @@ * organization and class information. * Cain constructor pattern implementation. */ - public Lesson(String name,String description,Date createDateTime, User user, Integer lessonStateId, Integer previousLessonStateId, + public Lesson(String name,String description,Date createDateTime, User user, Integer lessonStateId, + Integer previousLessonStateId, Boolean learnerExportAvailable, LearningDesign learningDesign,Set learnerProgresses) { - this(null,name,description,createDateTime,null,null,user,lessonStateId,previousLessonStateId,learningDesign,null,null,learnerProgresses); + this(null,name,description,createDateTime,null,null,user,lessonStateId,previousLessonStateId, + learnerExportAvailable,learningDesign,null,null,learnerProgresses); } /** @@ -141,15 +146,17 @@ * Chain construtor pattern implementation. */ public Lesson(String name,String description,Date createDateTime, User user, Integer lessonStateId, Integer previousLessonStateId, - LearningDesign learningDesign, LessonClass lessonClass, Organisation organisation, Set learnerProgresses) + Boolean learnerExportAvailable, LearningDesign learningDesign, LessonClass lessonClass, + Organisation organisation, Set learnerProgresses) { this(null,name,description,createDateTime,null,null,user,lessonStateId,previousLessonStateId, - learningDesign,lessonClass,organisation,learnerProgresses); + learnerExportAvailable, learningDesign,lessonClass,organisation,learnerProgresses); } /** full constructor */ public Lesson(Long lessonId,String name,String description, Date createDateTime, Date startDateTime, Date endDateTime, User user, - Integer lessonStateId, Integer previousLessonStateId, LearningDesign learningDesign, LessonClass lessonClass, + Integer lessonStateId, Integer previousLessonStateId, Boolean learnerExportAvailable, + LearningDesign learningDesign, LessonClass lessonClass, Organisation organisation, Set learnerProgresses) { this.lessonId = lessonId; @@ -161,6 +168,7 @@ this.user = user; this.lessonStateId = lessonStateId; this.previousLessonStateId = previousLessonStateId; + this.learnerExportAvailable = learnerExportAvailable != null ? learnerExportAvailable : Boolean.FALSE; this.learningDesign = learningDesign; this.lessonClass = lessonClass; this.organisation = organisation; @@ -172,6 +180,7 @@ * It is designed for monitor side to create a lesson by teacher. * * @param user the teacher who created this lesson + * @pram learnerExportAvailable should the export portfolio option be made available to the learner? * @param organisation the organisation associated with this lesson. * @param ld the learning design associated with this lesson. * @param newLessonClass the lesson class that will run this lesson. @@ -181,6 +190,7 @@ String lessonDescription, User user, Organisation organisation, + Boolean learnerExportAvailable, LearningDesign ld, LessonClass newLessonClass) { @@ -191,6 +201,7 @@ user, Lesson.CREATED, null, + learnerExportAvailable, ld, newLessonClass,//lesson class organisation, @@ -203,12 +214,14 @@ * and lesson class data later. * * @param user the user who want to create a lesson. + * @param learnerExportAvailable should the export portfolio option be made available to the learner? * @param ld the learning design that this lesson is based on. * @return the lesson created. */ public static Lesson createNewLessonWithoutClass(String lessonName, String lessonDescription, User user, + Boolean learnerExportAvailable, LearningDesign ld) { return new Lesson(lessonName, @@ -217,6 +230,7 @@ user, Lesson.CREATED, null, + learnerExportAvailable, ld, new HashSet()); } @@ -373,6 +387,18 @@ } /** + * @hibernate.property type="java.lang.Boolean" column="learner_exportport_avail" + * length="1" + */ + public Boolean getLearnerExportAvailable() { + return learnerExportAvailable; + } + + public void setLearnerExportAvailable(Boolean learnerExportAvailable) { + this.learnerExportAvailable = learnerExportAvailable; + } + + /** * @hibernate.many-to-one not-null="true" cascade="none" * @hibernate.column name="learning_design_id" */ @@ -423,6 +449,7 @@ this.learnerProgresses = learnerProgresses; } + public String toString() { return new ToStringBuilder(this) .append("lessonId", getLessonId()) @@ -488,4 +515,5 @@ ( stateId.equals(STARTED_STATE) || stateId.equals(FINISHED_STATE) || stateId.equals(ARCHIVED_STATE) || stateId.equals(REMOVED_STATE) ) ) ; } + } Index: lams_common/src/java/org/lamsfoundation/lams/lesson/dto/LessonDetailsDTO.java =================================================================== RCS file: /usr/local/cvsroot/lams_common/src/java/org/lamsfoundation/lams/lesson/dto/LessonDetailsDTO.java,v diff -u -r1.12 -r1.13 --- lams_common/src/java/org/lamsfoundation/lams/lesson/dto/LessonDetailsDTO.java 19 Sep 2006 04:55:57 -0000 1.12 +++ lams_common/src/java/org/lamsfoundation/lams/lesson/dto/LessonDetailsDTO.java 16 Nov 2006 01:04:50 -0000 1.13 @@ -24,7 +24,6 @@ package org.lamsfoundation.lams.lesson.dto; import java.util.Date; -import java.text.DateFormat; import java.util.Set; import org.lamsfoundation.lams.lesson.Lesson; @@ -56,6 +55,7 @@ private Long learningDesignID; private Integer numberPossibleLearners; private Integer numberStartedLearners; + private Boolean learnerExportAvailable; /** Create the DTO based on the lesson. Sets up all the fields except numberStartedLearners */ public LessonDetailsDTO(Lesson lesson){ @@ -111,6 +111,8 @@ Set allLearners = lesson.getAllLearners(); this.numberPossibleLearners = new Integer(allLearners !=null ? allLearners.size() : 0); this.numberStartedLearners = new Integer(0); + + this.learnerExportAvailable = lesson.getLearnerExportAvailable(); } public Date getScheduleEndDate() { return scheduleEndDate; @@ -228,4 +230,7 @@ public Integer getNumberPossibleLearners() { return numberPossibleLearners; } + public Boolean getLearnerExportAvailable() { + return learnerExportAvailable; + } }