Index: lams_common/conf/hibernate/mappings/org/lamsfoundation/lams/lesson/Lesson.hbm.xml
===================================================================
diff -u -r920894ca746cba5e080023c5cc80167d64d1653d -r61005a88dd89563773aff08d8e82672c96234c91
--- lams_common/conf/hibernate/mappings/org/lamsfoundation/lams/lesson/Lesson.hbm.xml (.../Lesson.hbm.xml) (revision 920894ca746cba5e080023c5cc80167d64d1653d)
+++ lams_common/conf/hibernate/mappings/org/lamsfoundation/lams/lesson/Lesson.hbm.xml (.../Lesson.hbm.xml) (revision 61005a88dd89563773aff08d8e82672c96234c91)
@@ -41,6 +41,10 @@
+
+
+
Index: lams_common/db/model/lams_11.clay
===================================================================
diff -u -r71d1ff69d56ec38b525fab3a282fa29c1d163e5a -r61005a88dd89563773aff08d8e82672c96234c91
--- lams_common/db/model/lams_11.clay (.../lams_11.clay) (revision 71d1ff69d56ec38b525fab3a282fa29c1d163e5a)
+++ lams_common/db/model/lams_11.clay (.../lams_11.clay) (revision 61005a88dd89563773aff08d8e82672c96234c91)
@@ -2491,7 +2491,7 @@
-
+
@@ -2627,6 +2627,19 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -3457,7 +3470,7 @@
-
+
Index: lams_common/db/sql/create_lams_11_tables.sql
===================================================================
diff -u -r0cc2f66ffca1eb4172a7f29fa90443534d1cdedc -r61005a88dd89563773aff08d8e82672c96234c91
--- lams_common/db/sql/create_lams_11_tables.sql (.../create_lams_11_tables.sql) (revision 0cc2f66ffca1eb4172a7f29fa90443534d1cdedc)
+++ lams_common/db/sql/create_lams_11_tables.sql (.../create_lams_11_tables.sql) (revision 61005a88dd89563773aff08d8e82672c96234c91)
@@ -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
===================================================================
diff -u -r920894ca746cba5e080023c5cc80167d64d1653d -r61005a88dd89563773aff08d8e82672c96234c91
--- lams_common/src/java/org/lamsfoundation/lams/lesson/Lesson.java (.../Lesson.java) (revision 920894ca746cba5e080023c5cc80167d64d1653d)
+++ lams_common/src/java/org/lamsfoundation/lams/lesson/Lesson.java (.../Lesson.java) (revision 61005a88dd89563773aff08d8e82672c96234c91)
@@ -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
===================================================================
diff -u -rf43da266c31a898f0fddc628bdeab7ebbdbef2dd -r61005a88dd89563773aff08d8e82672c96234c91
--- lams_common/src/java/org/lamsfoundation/lams/lesson/dto/LessonDetailsDTO.java (.../LessonDetailsDTO.java) (revision f43da266c31a898f0fddc628bdeab7ebbdbef2dd)
+++ lams_common/src/java/org/lamsfoundation/lams/lesson/dto/LessonDetailsDTO.java (.../LessonDetailsDTO.java) (revision 61005a88dd89563773aff08d8e82672c96234c91)
@@ -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;
+ }
}