Index: lams_tool_dimdim/conf/language/lams/ApplicationResources.properties =================================================================== diff -u -r65ab476801260e17f27b0f625ec4daa6a5a8d7fd -r7c68a5b7c9e928e763d087d92d8dd17170f2cb67 --- lams_tool_dimdim/conf/language/lams/ApplicationResources.properties (.../ApplicationResources.properties) (revision 65ab476801260e17f27b0f625ec4daa6a5a8d7fd) +++ lams_tool_dimdim/conf/language/lams/ApplicationResources.properties (.../ApplicationResources.properties) (revision 7c68a5b7c9e928e763d087d92d8dd17170f2cb67) @@ -19,6 +19,7 @@ label.authoring.basic.content =Content: advanced.lockOnFinished =Lock when finished advanced.allowRichEditor =Allow rich text editor +advanced.reflectOnActivity = Add Notebook at end of Dimdim with the following instructions: instructions.type.online =Online instructions.type.offline =Offline label.filename =Filename @@ -105,4 +106,9 @@ label.refresh = Refresh export.toolExportNotSupported = This tool does not support export portfolio. + +button.continue = Continue +button.edit = Edit +message.no.reflection.available = Notebook not available + #======= End labels: Exported 78 labels for en AU ===== Index: lams_tool_dimdim/db/sql/create_lams_tool_dimdim.sql =================================================================== diff -u -r65ab476801260e17f27b0f625ec4daa6a5a8d7fd -r7c68a5b7c9e928e763d087d92d8dd17170f2cb67 --- lams_tool_dimdim/db/sql/create_lams_tool_dimdim.sql (.../create_lams_tool_dimdim.sql) (revision 65ab476801260e17f27b0f625ec4daa6a5a8d7fd) +++ lams_tool_dimdim/db/sql/create_lams_tool_dimdim.sql (.../create_lams_tool_dimdim.sql) (revision 7c68a5b7c9e928e763d087d92d8dd17170f2cb67) @@ -10,10 +10,10 @@ drop table if exists tl_laddim10_session; drop table if exists tl_laddim10_user; create table tl_laddim10_attachment (uid bigint not null auto_increment, file_version_id bigint, file_type varchar(255), file_name varchar(255), file_uuid bigint, create_date datetime, dimdim_uid bigint, primary key (uid)); -create table tl_laddim10_dimdim (uid bigint not null auto_increment, create_date datetime, update_date datetime, create_by bigint, title varchar(255), instructions text, run_offline bit, lock_on_finished bit, allow_rich_editor bit, online_instructions text, offline_instructions text, content_in_use bit, define_later bit, tool_content_id bigint, topic varchar(255), max_attendee_mikes integer, primary key (uid)); +create table tl_laddim10_dimdim (uid bigint not null auto_increment, create_date datetime, update_date datetime, create_by bigint, title varchar(255), instructions text, run_offline bit, lock_on_finished bit, reflect_on_activity bit, reflect_instructions text, allow_rich_editor bit, online_instructions text, offline_instructions text, content_in_use bit, define_later bit, tool_content_id bigint, topic varchar(255), max_attendee_mikes integer, primary key (uid)); create table tl_laddim10_dimdim_config (uid bigint not null auto_increment, config_key varchar(255), config_value varchar(255), primary key (uid)); create table tl_laddim10_session (uid bigint not null auto_increment, session_end_date datetime, session_start_date datetime, status integer, session_id bigint, session_name varchar(250), dimdim_uid bigint, topic varchar(255), meeting_key varchar(255), max_attendee_mikes integer, primary key (uid)); -create table tl_laddim10_user (uid bigint not null auto_increment, user_id bigint, last_name varchar(255), login_name varchar(255), first_name varchar(255), finishedActivity bit, dimdim_session_uid bigint, entry_uid bigint, primary key (uid)); +create table tl_laddim10_user (uid bigint not null auto_increment, user_id bigint, last_name varchar(255), login_name varchar(255), first_name varchar(255), finishedActivity bit, dimdim_session_uid bigint, notebook_entry_uid bigint, primary key (uid)); -- end generated sql -- set engine to innodb for all tables @@ -39,7 +39,8 @@ lock_on_finished, content_in_use, define_later, - allow_rich_editor + allow_rich_editor, + reflect_on_activity ) VALUES( "Dimdim", @@ -51,6 +52,7 @@ 0, 0, 0, + 0, 0 ); Index: lams_tool_dimdim/db/sql/table-schema.sql =================================================================== diff -u -r65ab476801260e17f27b0f625ec4daa6a5a8d7fd -r7c68a5b7c9e928e763d087d92d8dd17170f2cb67 --- lams_tool_dimdim/db/sql/table-schema.sql (.../table-schema.sql) (revision 65ab476801260e17f27b0f625ec4daa6a5a8d7fd) +++ lams_tool_dimdim/db/sql/table-schema.sql (.../table-schema.sql) (revision 7c68a5b7c9e928e763d087d92d8dd17170f2cb67) @@ -7,10 +7,10 @@ drop table if exists tl_laddim10_session; drop table if exists tl_laddim10_user; create table tl_laddim10_attachment (uid bigint not null auto_increment, file_version_id bigint, file_type varchar(255), file_name varchar(255), file_uuid bigint, create_date datetime, dimdim_uid bigint, primary key (uid)); -create table tl_laddim10_dimdim (uid bigint not null auto_increment, create_date datetime, update_date datetime, create_by bigint, title varchar(255), instructions text, run_offline bit, lock_on_finished bit, allow_rich_editor bit, online_instructions text, offline_instructions text, content_in_use bit, define_later bit, tool_content_id bigint, topic varchar(255), max_attendee_mikes integer, primary key (uid)); +create table tl_laddim10_dimdim (uid bigint not null auto_increment, create_date datetime, update_date datetime, create_by bigint, title varchar(255), instructions text, run_offline bit, lock_on_finished bit, reflect_on_activity bit, reflect_instructions text, allow_rich_editor bit, online_instructions text, offline_instructions text, content_in_use bit, define_later bit, tool_content_id bigint, topic varchar(255), max_attendee_mikes integer, primary key (uid)); create table tl_laddim10_dimdim_config (uid bigint not null auto_increment, config_key varchar(255), config_value varchar(255), primary key (uid)); create table tl_laddim10_session (uid bigint not null auto_increment, session_end_date datetime, session_start_date datetime, status integer, session_id bigint, session_name varchar(250), dimdim_uid bigint, topic varchar(255), meeting_key varchar(255), max_attendee_mikes integer, primary key (uid)); -create table tl_laddim10_user (uid bigint not null auto_increment, user_id bigint, last_name varchar(255), login_name varchar(255), first_name varchar(255), finishedActivity bit, dimdim_session_uid bigint, entry_uid bigint, primary key (uid)); +create table tl_laddim10_user (uid bigint not null auto_increment, user_id bigint, last_name varchar(255), login_name varchar(255), first_name varchar(255), finishedActivity bit, dimdim_session_uid bigint, notebook_entry_uid bigint, primary key (uid)); alter table tl_laddim10_attachment add index fk_laddim10_dimdim_attachment_to_dimdim (dimdim_uid), add constraint fk_laddim10_dimdim_attachment_to_dimdim foreign key (dimdim_uid) references tl_laddim10_dimdim (uid); alter table tl_laddim10_session add index fk_laddim10_dimdim_session_to_dimdim (dimdim_uid), add constraint fk_laddim10_dimdim_session_to_dimdim foreign key (dimdim_uid) references tl_laddim10_dimdim (uid); alter table tl_laddim10_user add index fk_laddim10_dimdim_user_to_dimdim_session (dimdim_session_uid), add constraint fk_laddim10_dimdim_user_to_dimdim_session foreign key (dimdim_session_uid) references tl_laddim10_session (uid); Index: lams_tool_dimdim/src/java/org/lamsfoundation/lams/tool/dimdim/dto/ContentDTO.java =================================================================== diff -u -rd6d2a4921fc7dcdcf19f722ff0a4d6b28a15fbb6 -r7c68a5b7c9e928e763d087d92d8dd17170f2cb67 --- lams_tool_dimdim/src/java/org/lamsfoundation/lams/tool/dimdim/dto/ContentDTO.java (.../ContentDTO.java) (revision d6d2a4921fc7dcdcf19f722ff0a4d6b28a15fbb6) +++ lams_tool_dimdim/src/java/org/lamsfoundation/lams/tool/dimdim/dto/ContentDTO.java (.../ContentDTO.java) (revision 7c68a5b7c9e928e763d087d92d8dd17170f2cb67) @@ -47,6 +47,10 @@ public String offlineInstructions; + public boolean reflectOnActivity; + + public String reflectInstructions; + public boolean defineLater; public boolean contentInUse; @@ -78,6 +82,8 @@ this.onlineInstructions = dimdim.getOnlineInstructions(); this.offlineInstructions = dimdim.getOfflineInstructions(); this.contentInUse = dimdim.isContentInUse(); + this.reflectInstructions = dimdim.getReflectInstructions(); + this.reflectOnActivity = dimdim.isReflectOnActivity(); this.allowRichEditor = dimdim.isAllowRichEditor(); this.lockOnFinish = dimdim.isLockOnFinished(); @@ -156,6 +162,22 @@ this.onlineInstructionsFiles = onlineInstructionsFiles; } + public boolean isReflectOnActivity() { + return reflectOnActivity; + } + + public void setReflectOnActivity(boolean reflectOnActivity) { + this.reflectOnActivity = reflectOnActivity; + } + + public String getReflectInstructions() { + return reflectInstructions; + } + + public void setReflectInstructions(String reflectInstructions) { + this.reflectInstructions = reflectInstructions; + } + public String getTitle() { return title; } Index: lams_tool_dimdim/src/java/org/lamsfoundation/lams/tool/dimdim/dto/NotebookEntryDTO.java =================================================================== diff -u -rd6d2a4921fc7dcdcf19f722ff0a4d6b28a15fbb6 -r7c68a5b7c9e928e763d087d92d8dd17170f2cb67 --- lams_tool_dimdim/src/java/org/lamsfoundation/lams/tool/dimdim/dto/NotebookEntryDTO.java (.../NotebookEntryDTO.java) (revision d6d2a4921fc7dcdcf19f722ff0a4d6b28a15fbb6) +++ lams_tool_dimdim/src/java/org/lamsfoundation/lams/tool/dimdim/dto/NotebookEntryDTO.java (.../NotebookEntryDTO.java) (revision 7c68a5b7c9e928e763d087d92d8dd17170f2cb67) @@ -38,11 +38,11 @@ private Date lastModified; - public NotebookEntryDTO(NotebookEntry entry) { - this.uid = entry.getUid(); - this.entry = entry.getEntry(); - this.createDate = entry.getCreateDate(); - this.lastModified = entry.getLastModified(); + public NotebookEntryDTO(NotebookEntry notebookEntry) { + this.uid = notebookEntry.getUid(); + this.entry = notebookEntry.getEntry(); + this.createDate = notebookEntry.getCreateDate(); + this.lastModified = notebookEntry.getLastModified(); } public Date getCreateDate() { Index: lams_tool_dimdim/src/java/org/lamsfoundation/lams/tool/dimdim/dto/SessionDTO.java =================================================================== diff -u -rd6d2a4921fc7dcdcf19f722ff0a4d6b28a15fbb6 -r7c68a5b7c9e928e763d087d92d8dd17170f2cb67 --- lams_tool_dimdim/src/java/org/lamsfoundation/lams/tool/dimdim/dto/SessionDTO.java (.../SessionDTO.java) (revision d6d2a4921fc7dcdcf19f722ff0a4d6b28a15fbb6) +++ lams_tool_dimdim/src/java/org/lamsfoundation/lams/tool/dimdim/dto/SessionDTO.java (.../SessionDTO.java) (revision 7c68a5b7c9e928e763d087d92d8dd17170f2cb67) @@ -50,7 +50,7 @@ for (DimdimUser dimdimUser : session.getDimdimUsers()) { UserDTO userDTO = new UserDTO(dimdimUser); - if (userDTO.getEntryUID() != null) { + if (userDTO.getNotebookEntryUID() != null) { numberOfFinishedLearners++; } userDTOs.add(userDTO); Index: lams_tool_dimdim/src/java/org/lamsfoundation/lams/tool/dimdim/dto/UserDTO.java =================================================================== diff -u -rd6d2a4921fc7dcdcf19f722ff0a4d6b28a15fbb6 -r7c68a5b7c9e928e763d087d92d8dd17170f2cb67 --- lams_tool_dimdim/src/java/org/lamsfoundation/lams/tool/dimdim/dto/UserDTO.java (.../UserDTO.java) (revision d6d2a4921fc7dcdcf19f722ff0a4d6b28a15fbb6) +++ lams_tool_dimdim/src/java/org/lamsfoundation/lams/tool/dimdim/dto/UserDTO.java (.../UserDTO.java) (revision 7c68a5b7c9e928e763d087d92d8dd17170f2cb67) @@ -24,7 +24,6 @@ package org.lamsfoundation.lams.tool.dimdim.dto; -import org.lamsfoundation.lams.notebook.model.NotebookEntry; import org.lamsfoundation.lams.tool.dimdim.model.DimdimUser; public class UserDTO implements Comparable { @@ -39,27 +38,17 @@ public boolean finishedActivity; - public NotebookEntryDTO entryDTO; + public NotebookEntryDTO notebookEntryDTO; - public Long entryUID; + public Long notebookEntryUID; - public UserDTO(DimdimUser user, NotebookEntry entry) { - this.uid = user.getUid(); - this.loginName = user.getLoginName(); - this.firstName = user.getFirstName(); - this.lastName = user.getLastName(); - this.finishedActivity = user.isFinishedActivity(); - this.entryUID = user.getEntryUID(); - this.entryDTO = new NotebookEntryDTO(entry); - } - public UserDTO(DimdimUser user) { this.uid = user.getUid(); this.loginName = user.getLoginName(); this.firstName = user.getFirstName(); this.lastName = user.getLastName(); this.finishedActivity = user.isFinishedActivity(); - this.entryUID = user.getEntryUID(); + this.notebookEntryUID = user.getNotebookEntryUID(); } public int compareTo(UserDTO other) { @@ -102,20 +91,20 @@ this.uid = uid; } - public NotebookEntryDTO getEntryDTO() { - return entryDTO; + public NotebookEntryDTO getNotebookEntryDTO() { + return notebookEntryDTO; } - public void setEntryDTO(NotebookEntryDTO entryDTO) { - this.entryDTO = entryDTO; + public void setNotebookEntryDTO(NotebookEntryDTO notebookEntryDTO) { + this.notebookEntryDTO = notebookEntryDTO; } - public Long getEntryUID() { - return entryUID; + public Long getNotebookEntryUID() { + return notebookEntryUID; } - public void setEntryUID(Long entryUID) { - this.entryUID = entryUID; + public void setNotebookEntryUID(Long notebookEntryUID) { + this.notebookEntryUID = notebookEntryUID; } public boolean isFinishedActivity() { Index: lams_tool_dimdim/src/java/org/lamsfoundation/lams/tool/dimdim/model/Dimdim.java =================================================================== diff -u -rd6d2a4921fc7dcdcf19f722ff0a4d6b28a15fbb6 -r7c68a5b7c9e928e763d087d92d8dd17170f2cb67 --- lams_tool_dimdim/src/java/org/lamsfoundation/lams/tool/dimdim/model/Dimdim.java (.../Dimdim.java) (revision d6d2a4921fc7dcdcf19f722ff0a4d6b28a15fbb6) +++ lams_tool_dimdim/src/java/org/lamsfoundation/lams/tool/dimdim/model/Dimdim.java (.../Dimdim.java) (revision 7c68a5b7c9e928e763d087d92d8dd17170f2cb67) @@ -63,6 +63,10 @@ private boolean lockOnFinished; + private boolean reflectOnActivity; + + private String reflectInstructions; + private boolean allowRichEditor; private String onlineInstructions; @@ -217,6 +221,28 @@ } /** + * @hibernate.property column="reflect_on_activity" length="1" + */ + public boolean isReflectOnActivity() { + return reflectOnActivity; + } + + public void setReflectOnActivity(boolean reflectOnActivity) { + this.reflectOnActivity = reflectOnActivity; + } + + /** + * @hibernate.property column="reflect_instructions" length="65535" + */ + public String getReflectInstructions() { + return reflectInstructions; + } + + public void setReflectInstructions(String reflectInstructions) { + this.reflectInstructions = reflectInstructions; + } + + /** * @hibernate.property column="allow_rich_editor" length="1" * @return */ Index: lams_tool_dimdim/src/java/org/lamsfoundation/lams/tool/dimdim/model/DimdimUser.java =================================================================== diff -u -rd6d2a4921fc7dcdcf19f722ff0a4d6b28a15fbb6 -r7c68a5b7c9e928e763d087d92d8dd17170f2cb67 --- lams_tool_dimdim/src/java/org/lamsfoundation/lams/tool/dimdim/model/DimdimUser.java (.../DimdimUser.java) (revision d6d2a4921fc7dcdcf19f722ff0a4d6b28a15fbb6) +++ lams_tool_dimdim/src/java/org/lamsfoundation/lams/tool/dimdim/model/DimdimUser.java (.../DimdimUser.java) (revision 7c68a5b7c9e928e763d087d92d8dd17170f2cb67) @@ -54,7 +54,7 @@ private boolean finishedActivity; - private Long entryUID; + private Long notebookEntryUID; // Constructors @@ -164,14 +164,14 @@ } /** - * @hibernate.property column="entry_uid" + * @hibernate.property column="notebook_entry_uid" */ - public Long getEntryUID() { - return entryUID; + public Long getNotebookEntryUID() { + return notebookEntryUID; } - public void setEntryUID(Long entryUID) { - this.entryUID = entryUID; + public void setNotebookEntryUID(Long notebookEntryUID) { + this.notebookEntryUID = notebookEntryUID; } /** Index: lams_tool_dimdim/src/java/org/lamsfoundation/lams/tool/dimdim/service/DimdimService.java =================================================================== diff -u -rd6d2a4921fc7dcdcf19f722ff0a4d6b28a15fbb6 -r7c68a5b7c9e928e763d087d92d8dd17170f2cb67 --- lams_tool_dimdim/src/java/org/lamsfoundation/lams/tool/dimdim/service/DimdimService.java (.../DimdimService.java) (revision d6d2a4921fc7dcdcf19f722ff0a4d6b28a15fbb6) +++ lams_tool_dimdim/src/java/org/lamsfoundation/lams/tool/dimdim/service/DimdimService.java (.../DimdimService.java) (revision 7c68a5b7c9e928e763d087d92d8dd17170f2cb67) @@ -317,14 +317,28 @@ return coreNotebookService.createNotebookEntry(id, idType, signature, userID, "", entry); } - public NotebookEntry getEntry(Long uid) { + public NotebookEntry getEntry(Long id, Integer idType, String signature, Integer userID) { + + List list = coreNotebookService.getEntry(id, idType, signature, userID); + if (list == null || list.isEmpty()) { + return null; + } else { + return list.get(0); + } + } + + public NotebookEntry getNotebookEntry(Long uid) { return coreNotebookService.getEntry(uid); } - public void updateEntry(Long uid, String entry) { + public void updateNotebookEntry(Long uid, String entry) { coreNotebookService.updateEntry(uid, "", entry); } + public void updateNotebookEntry(NotebookEntry notebookEntry) { + coreNotebookService.updateEntry(notebookEntry); + } + public Long getDefaultContentIdBySignature(String toolSignature) { Long toolContentId = null; toolContentId = new Long(toolService.getToolDefaultContentIdBySignature(toolSignature)); @@ -471,6 +485,7 @@ // Get Dimdim server url DimdimConfig serverURL = getConfigEntry(Constants.CONFIG_SERVER_URL); if (serverURL == null) { + logger.error("Dimdim server URL is null, configure using dimdim tool management"); throw new DimdimException("Dimdim server url not found"); } @@ -599,6 +614,8 @@ dimdim.setLockOnFinished(Boolean.TRUE); dimdim.setOfflineInstructions(null); dimdim.setOnlineInstructions(null); + dimdim.setReflectInstructions(null); + dimdim.setReflectOnActivity(Boolean.FALSE); dimdim.setRunOffline(Boolean.FALSE); dimdim.setTitle((String) importValues.get(ToolContentImport102Manager.CONTENT_TITLE)); dimdim.setToolContentId(toolContentId); @@ -624,7 +641,8 @@ + " on activity toolContentId " + toolContentId + " as the tool content does not exist."); } - dimdim.setInstructions(description); + dimdim.setReflectOnActivity(Boolean.TRUE); + dimdim.setReflectInstructions(description); } // ========================================================================== Index: lams_tool_dimdim/src/java/org/lamsfoundation/lams/tool/dimdim/service/IDimdimService.java =================================================================== diff -u -rd6d2a4921fc7dcdcf19f722ff0a4d6b28a15fbb6 -r7c68a5b7c9e928e763d087d92d8dd17170f2cb67 --- lams_tool_dimdim/src/java/org/lamsfoundation/lams/tool/dimdim/service/IDimdimService.java (.../IDimdimService.java) (revision d6d2a4921fc7dcdcf19f722ff0a4d6b28a15fbb6) +++ lams_tool_dimdim/src/java/org/lamsfoundation/lams/tool/dimdim/service/IDimdimService.java (.../IDimdimService.java) (revision 7c68a5b7c9e928e763d087d92d8dd17170f2cb67) @@ -141,15 +141,21 @@ * @param uid * @return */ - NotebookEntry getEntry(Long uid); + NotebookEntry getNotebookEntry(Long uid); /** * + * @param notebookEntry + */ + void updateNotebookEntry(NotebookEntry notebookEntry); + + /** + * * @param uid * @param title * @param entry */ - void updateEntry(Long uid, String entry); + void updateNotebookEntry(Long uid, String entry); /** * Index: lams_tool_dimdim/src/java/org/lamsfoundation/lams/tool/dimdim/util/Constants.java =================================================================== diff -u -rd6d2a4921fc7dcdcf19f722ff0a4d6b28a15fbb6 -r7c68a5b7c9e928e763d087d92d8dd17170f2cb67 --- lams_tool_dimdim/src/java/org/lamsfoundation/lams/tool/dimdim/util/Constants.java (.../Constants.java) (revision d6d2a4921fc7dcdcf19f722ff0a4d6b28a15fbb6) +++ lams_tool_dimdim/src/java/org/lamsfoundation/lams/tool/dimdim/util/Constants.java (.../Constants.java) (revision 7c68a5b7c9e928e763d087d92d8dd17170f2cb67) @@ -45,15 +45,14 @@ // Attribute names public static final String ATTR_CONTENT_DTO = "contentDTO"; public static final String ATTR_CONTENT_FOLDER_ID = "contentFolderID"; - public static final String ATTR_FINISHED_ACTIVITY = "finishedActivity"; public static final String ATTR_SESSION_MAP = "sessionMap"; public static final String ATTR_USER_DTO = "userDTO"; public static final String ATTR_CONFERENCE_URL = "conferenceURL"; - public static final String ATTR_SAVE_SUCCESS = "saveSuccess"; + public static final String ATTR_CONFERENCE_OPEN = "conferenceOpen"; + public static final String ATTR_TOOL_SESSION_ID = "toolSessionID"; // Parameter names public static final String PARAM_USER_UID = "userUID"; - public static final String ATTR_CONFERENCE_OPEN = "conferenceOpen"; private Constants() { // prevent construction Index: lams_tool_dimdim/src/java/org/lamsfoundation/lams/tool/dimdim/web/actions/AuthoringAction.java =================================================================== diff -u -rd6d2a4921fc7dcdcf19f722ff0a4d6b28a15fbb6 -r7c68a5b7c9e928e763d087d92d8dd17170f2cb67 --- lams_tool_dimdim/src/java/org/lamsfoundation/lams/tool/dimdim/web/actions/AuthoringAction.java (.../AuthoringAction.java) (revision d6d2a4921fc7dcdcf19f722ff0a4d6b28a15fbb6) +++ lams_tool_dimdim/src/java/org/lamsfoundation/lams/tool/dimdim/web/actions/AuthoringAction.java (.../AuthoringAction.java) (revision 7c68a5b7c9e928e763d087d92d8dd17170f2cb67) @@ -345,6 +345,8 @@ if (mode.isAuthor()) { // Teacher cannot modify following dimdim.setOfflineInstructions(authForm.getOfflineInstruction()); dimdim.setOnlineInstructions(authForm.getOnlineInstruction()); + dimdim.setReflectOnActivity(authForm.isReflectOnActivity()); + dimdim.setReflectInstructions(authForm.getReflectInstructions()); dimdim.setLockOnFinished(authForm.isLockOnFinished()); dimdim.setAllowRichEditor(authForm.isAllowRichEditor()); Index: lams_tool_dimdim/src/java/org/lamsfoundation/lams/tool/dimdim/web/actions/LearningAction.java =================================================================== diff -u -rd6d2a4921fc7dcdcf19f722ff0a4d6b28a15fbb6 -r7c68a5b7c9e928e763d087d92d8dd17170f2cb67 --- lams_tool_dimdim/src/java/org/lamsfoundation/lams/tool/dimdim/web/actions/LearningAction.java (.../LearningAction.java) (revision d6d2a4921fc7dcdcf19f722ff0a4d6b28a15fbb6) +++ lams_tool_dimdim/src/java/org/lamsfoundation/lams/tool/dimdim/web/actions/LearningAction.java (.../LearningAction.java) (revision 7c68a5b7c9e928e763d087d92d8dd17170f2cb67) @@ -25,6 +25,7 @@ package org.lamsfoundation.lams.tool.dimdim.web.actions; import java.io.IOException; +import java.util.Date; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @@ -39,6 +40,8 @@ import org.lamsfoundation.lams.tool.ToolAccessMode; import org.lamsfoundation.lams.tool.ToolSessionManager; import org.lamsfoundation.lams.tool.dimdim.dto.ContentDTO; +import org.lamsfoundation.lams.tool.dimdim.dto.NotebookEntryDTO; +import org.lamsfoundation.lams.tool.dimdim.dto.UserDTO; import org.lamsfoundation.lams.tool.dimdim.model.Dimdim; import org.lamsfoundation.lams.tool.dimdim.model.DimdimSession; import org.lamsfoundation.lams.tool.dimdim.model.DimdimUser; @@ -50,7 +53,6 @@ import org.lamsfoundation.lams.tool.dimdim.web.forms.LearningForm; import org.lamsfoundation.lams.tool.exception.DataMissingException; import org.lamsfoundation.lams.tool.exception.ToolException; -import org.lamsfoundation.lams.usermanagement.dto.UserDTO; import org.lamsfoundation.lams.util.WebUtil; import org.lamsfoundation.lams.web.session.SessionManager; import org.lamsfoundation.lams.web.util.AttributeNames; @@ -60,6 +62,7 @@ * * @struts.action path="/learning" parameter="dispatch" scope="request" name="learningForm" * @struts.action-forward name="dimdim" path="tiles:/learning/main" + * @struts.action-forward name="notebook" path="tiles:/learning/notebook" * @struts.action-forward name="runOffline" path="tiles:/learning/runOffline" * @struts.action-forward name="defineLater" path="tiles:/learning/defineLater" */ @@ -112,6 +115,8 @@ contentDTO.instructions = dimdim.getInstructions(); contentDTO.allowRichEditor = dimdim.isAllowRichEditor(); contentDTO.lockOnFinish = dimdim.isLockOnFinished(); + contentDTO.reflectOnActivity = dimdim.isReflectOnActivity(); + contentDTO.reflectInstructions = dimdim.getReflectInstructions(); request.setAttribute(Constants.ATTR_CONTENT_DTO, contentDTO); @@ -134,23 +139,14 @@ dimdimUser = getCurrentUser(toolSessionID); } - // get any existing dimdim entry - NotebookEntry nbEntry = null; - if (dimdimUser != null) { - nbEntry = dimdimService.getEntry(dimdimUser.getEntryUID()); + // get any existing notebook entries and create userDTO + NotebookEntry entry = dimdimService.getNotebookEntry(dimdimUser.getNotebookEntryUID()); + UserDTO userDTO = new UserDTO(dimdimUser); + if (entry != null) { + userDTO.setNotebookEntryDTO(new NotebookEntryDTO(entry)); } - if (nbEntry != null) { - learningForm.setEntryText(nbEntry.getEntry()); - } + request.setAttribute(Constants.ATTR_USER_DTO, userDTO); - // set readOnly flag. - if (mode.equals(ToolAccessMode.TEACHER) || (dimdim.isLockOnFinished() && dimdimUser.isFinishedActivity())) { - request.setAttribute("contentEditable", false); - } else { - request.setAttribute("contentEditable", true); - } - request.setAttribute(Constants.ATTR_FINISHED_ACTIVITY, dimdimUser.isFinishedActivity()); - // Get LAMS userDTO org.lamsfoundation.lams.usermanagement.dto.UserDTO lamsUserDTO = (org.lamsfoundation.lams.usermanagement.dto.UserDTO) SessionManager .getSession().getAttribute(AttributeNames.USER); @@ -160,7 +156,9 @@ String meetingKey = DimdimUtil.generateMeetingKey(); connectURL = dimdimService.getDimdimStartConferenceURL(lamsUserDTO, meetingKey, dimdim.getTopic()); } else { - connectURL = dimdimService.getDimdimJoinConferenceURL(lamsUserDTO, dimdimSession.getMeetingKey()); + if (dimdimSession.getMeetingKey() != null) { + connectURL = dimdimService.getDimdimJoinConferenceURL(lamsUserDTO, dimdimSession.getMeetingKey()); + } // otherwise, meeting has not been started in monitoring } boolean conferenceOpen = connectURL.isEmpty() ? false : true; @@ -170,11 +168,15 @@ request.setAttribute(Constants.ATTR_CONFERENCE_URL, connectURL); } + // set toolSessionID in request + request.setAttribute(Constants.ATTR_TOOL_SESSION_ID, dimdimSession.getSessionId()); + return mapping.findForward("dimdim"); } private DimdimUser getCurrentUser(Long toolSessionId) { - UserDTO user = (UserDTO) SessionManager.getSession().getAttribute(AttributeNames.USER); + org.lamsfoundation.lams.usermanagement.dto.UserDTO user = (org.lamsfoundation.lams.usermanagement.dto.UserDTO) SessionManager + .getSession().getAttribute(AttributeNames.USER); // attempt to retrieve user using userId and toolSessionId DimdimUser dimdimUser = dimdimService.getUserByUserIdAndSessionId(new Long(user.getUserID().intValue()), @@ -188,6 +190,57 @@ return dimdimUser; } + public ActionForward openNotebook(ActionMapping mapping, ActionForm form, HttpServletRequest request, + HttpServletResponse response) throws Exception { + + LearningForm lrnForm = (LearningForm) form; + + // set the finished flag + DimdimUser dimdimUser = getCurrentUser(lrnForm.getToolSessionID()); + ContentDTO contentDTO = new ContentDTO(dimdimUser.getDimdimSession().getDimdim()); + + request.setAttribute(Constants.ATTR_CONTENT_DTO, contentDTO); + + NotebookEntry notebookEntry = dimdimService.getNotebookEntry(dimdimUser.getNotebookEntryUID()); + + if (notebookEntry != null) { + lrnForm.setEntryText(notebookEntry.getEntry()); + } + + return mapping.findForward("notebook"); + + } + + public ActionForward submitReflection(ActionMapping mapping, ActionForm form, HttpServletRequest request, + HttpServletResponse response) { + + // save the reflection entry and call the notebook. + + LearningForm lrnForm = (LearningForm) form; + + DimdimUser dimdimUser = getCurrentUser(lrnForm.getToolSessionID()); + Long toolSessionID = dimdimUser.getDimdimSession().getSessionId(); + Integer userID = dimdimUser.getUserId().intValue(); + + // check for existing notebook entry + NotebookEntry entry = dimdimService.getNotebookEntry(dimdimUser.getNotebookEntryUID()); + + if (entry == null) { + // create new entry + Long entryUID = dimdimService.createNotebookEntry(toolSessionID, CoreNotebookConstants.NOTEBOOK_TOOL, + Constants.TOOL_SIGNATURE, userID, lrnForm.getEntryText()); + dimdimUser.setNotebookEntryUID(entryUID); + dimdimService.saveOrUpdateDimdimUser(dimdimUser); + } else { + // update existing entry + entry.setEntry(lrnForm.getEntryText()); + entry.setLastModified(new Date()); + dimdimService.updateNotebookEntry(entry); + } + + return finishActivity(mapping, form, request, response); + } + public ActionForward finishActivity(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) { @@ -201,13 +254,13 @@ // TODO fix idType to use real value not 999 - if (dimdimUser.getEntryUID() == null) { - dimdimUser.setEntryUID(dimdimService.createNotebookEntry(toolSessionID, + if (dimdimUser.getNotebookEntryUID() == null) { + dimdimUser.setNotebookEntryUID(dimdimService.createNotebookEntry(toolSessionID, CoreNotebookConstants.NOTEBOOK_TOOL, Constants.TOOL_SIGNATURE, dimdimUser.getUserId() .intValue(), learningForm.getEntryText())); } else { // update existing entry. - dimdimService.updateEntry(dimdimUser.getEntryUID(), learningForm.getEntryText()); + dimdimService.updateNotebookEntry(dimdimUser.getNotebookEntryUID(), learningForm.getEntryText()); } dimdimUser.setFinishedActivity(true); Index: lams_tool_dimdim/src/java/org/lamsfoundation/lams/tool/dimdim/web/actions/MonitoringAction.java =================================================================== diff -u -rd6d2a4921fc7dcdcf19f722ff0a4d6b28a15fbb6 -r7c68a5b7c9e928e763d087d92d8dd17170f2cb67 --- lams_tool_dimdim/src/java/org/lamsfoundation/lams/tool/dimdim/web/actions/MonitoringAction.java (.../MonitoringAction.java) (revision d6d2a4921fc7dcdcf19f722ff0a4d6b28a15fbb6) +++ lams_tool_dimdim/src/java/org/lamsfoundation/lams/tool/dimdim/web/actions/MonitoringAction.java (.../MonitoringAction.java) (revision 7c68a5b7c9e928e763d087d92d8dd17170f2cb67) @@ -33,6 +33,7 @@ import org.apache.struts.actions.DispatchAction; import org.lamsfoundation.lams.notebook.model.NotebookEntry; import org.lamsfoundation.lams.tool.dimdim.dto.ContentDTO; +import org.lamsfoundation.lams.tool.dimdim.dto.NotebookEntryDTO; import org.lamsfoundation.lams.tool.dimdim.dto.UserDTO; import org.lamsfoundation.lams.tool.dimdim.model.Dimdim; import org.lamsfoundation.lams.tool.dimdim.model.DimdimSession; @@ -102,14 +103,15 @@ return mapping.findForward("success"); } - public ActionForward showDimdim(ActionMapping mapping, ActionForm form, HttpServletRequest request, + public ActionForward openNotebook(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) { Long uid = new Long(WebUtil.readLongParam(request, Constants.PARAM_USER_UID)); DimdimUser user = dimdimService.getUserByUID(uid); - NotebookEntry entry = dimdimService.getEntry(user.getEntryUID()); + NotebookEntry entry = dimdimService.getNotebookEntry(user.getNotebookEntryUID()); - UserDTO userDTO = new UserDTO(user, entry); + UserDTO userDTO = new UserDTO(user); + userDTO.setNotebookEntryDTO(new NotebookEntryDTO(entry)); request.setAttribute(Constants.ATTR_USER_DTO, userDTO); Index: lams_tool_dimdim/src/java/org/lamsfoundation/lams/tool/dimdim/web/forms/AuthoringForm.java =================================================================== diff -u -rd6d2a4921fc7dcdcf19f722ff0a4d6b28a15fbb6 -r7c68a5b7c9e928e763d087d92d8dd17170f2cb67 --- lams_tool_dimdim/src/java/org/lamsfoundation/lams/tool/dimdim/web/forms/AuthoringForm.java (.../AuthoringForm.java) (revision d6d2a4921fc7dcdcf19f722ff0a4d6b28a15fbb6) +++ lams_tool_dimdim/src/java/org/lamsfoundation/lams/tool/dimdim/web/forms/AuthoringForm.java (.../AuthoringForm.java) (revision 7c68a5b7c9e928e763d087d92d8dd17170f2cb67) @@ -53,6 +53,10 @@ private boolean lockOnFinished; + private boolean reflectOnActivity; + + private String reflectInstructions; + private boolean allowRichEditor; private FormFile onlineFile; @@ -121,6 +125,22 @@ this.lockOnFinished = lockOnFinished; } + public boolean isReflectOnActivity() { + return reflectOnActivity; + } + + public void setReflectOnActivity(boolean reflectOnActivity) { + this.reflectOnActivity = reflectOnActivity; + } + + public String getReflectInstructions() { + return reflectInstructions; + } + + public void setReflectInstructions(String reflectInstructions) { + this.reflectInstructions = reflectInstructions; + } + public FormFile getOfflineFile() { return offlineFile; } Index: lams_tool_dimdim/web/WEB-INF/struts/tiles-defs.xml =================================================================== diff -u -r2714c5d509bed30e460ccc453753e6504804d4a1 -r7c68a5b7c9e928e763d087d92d8dd17170f2cb67 --- lams_tool_dimdim/web/WEB-INF/struts/tiles-defs.xml (.../tiles-defs.xml) (revision 2714c5d509bed30e460ccc453753e6504804d4a1) +++ lams_tool_dimdim/web/WEB-INF/struts/tiles-defs.xml (.../tiles-defs.xml) (revision 7c68a5b7c9e928e763d087d92d8dd17170f2cb67) @@ -69,7 +69,9 @@ - + + + @@ -89,13 +91,17 @@ - - + + + + + + Index: lams_tool_dimdim/web/pages/authoring/advanced.jsp =================================================================== diff -u -r4c8de20e6e3ea73f98892f70662508e4011e96f6 -r7c68a5b7c9e928e763d087d92d8dd17170f2cb67 --- lams_tool_dimdim/web/pages/authoring/advanced.jsp (.../advanced.jsp) (revision 4c8de20e6e3ea73f98892f70662508e4011e96f6) +++ lams_tool_dimdim/web/pages/authoring/advanced.jsp (.../advanced.jsp) (revision 7c68a5b7c9e928e763d087d92d8dd17170f2cb67) @@ -18,3 +18,36 @@

+

+ + + +

+ +

+ +

+ + + + Index: lams_tool_dimdim/web/pages/authoring/basic.jsp =================================================================== diff -u -r65ab476801260e17f27b0f625ec4daa6a5a8d7fd -r7c68a5b7c9e928e763d087d92d8dd17170f2cb67 --- lams_tool_dimdim/web/pages/authoring/basic.jsp (.../basic.jsp) (revision 65ab476801260e17f27b0f625ec4daa6a5a8d7fd) +++ lams_tool_dimdim/web/pages/authoring/basic.jsp (.../basic.jsp) (revision 7c68a5b7c9e928e763d087d92d8dd17170f2cb67) @@ -23,6 +23,9 @@ + + Index: lams_tool_dimdim/web/pages/learning/learning.jsp =================================================================== diff -u -rc7764a3661e8b15fcd6b917e0597109edcb195c7 -r7c68a5b7c9e928e763d087d92d8dd17170f2cb67 --- lams_tool_dimdim/web/pages/learning/learning.jsp (.../learning.jsp) (revision c7764a3661e8b15fcd6b917e0597109edcb195c7) +++ lams_tool_dimdim/web/pages/learning/learning.jsp (.../learning.jsp) (revision 7c68a5b7c9e928e763d087d92d8dd17170f2cb67) @@ -79,31 +79,9 @@

- - - - - - - - - - -
- - - -
- -
- - - - -
- -
+ + + <%@ include file="parts/finishButton.jsp"%> + + Index: lams_tool_dimdim/web/pages/learning/notebook.jsp =================================================================== diff -u --- lams_tool_dimdim/web/pages/learning/notebook.jsp (revision 0) +++ lams_tool_dimdim/web/pages/learning/notebook.jsp (revision 7c68a5b7c9e928e763d087d92d8dd17170f2cb67) @@ -0,0 +1,32 @@ +<%@ include file="/common/taglibs.jsp"%> + + + +
+

+ ${contentDTO.title} +

+ + + +

+ +

+ + + +
+ + + + button.finish + +
+
+
+ Index: lams_tool_dimdim/web/pages/learning/parts/finishButton.jsp =================================================================== diff -u --- lams_tool_dimdim/web/pages/learning/parts/finishButton.jsp (revision 0) +++ lams_tool_dimdim/web/pages/learning/parts/finishButton.jsp (revision 7c68a5b7c9e928e763d087d92d8dd17170f2cb67) @@ -0,0 +1,64 @@ +<%@ include file="/common/taglibs.jsp"%> + + + + + + + + + +
+

+ ${contentDTO.reflectInstructions} +

+ +

+ + + + + + + + + +

+ + + + +
+
+
+ + + +
+ + + + + + + + + + + + + + + +
+
Fisheye: Tag 7c68a5b7c9e928e763d087d92d8dd17170f2cb67 refers to a dead (removed) revision in file `lams_tool_dimdim/web/pages/monitoring/dimdimDisplay.jsp'. Fisheye: No comparison available. Pass `N' to diff? Index: lams_tool_dimdim/web/pages/monitoring/notebook.jsp =================================================================== diff -u --- lams_tool_dimdim/web/pages/monitoring/notebook.jsp (revision 0) +++ lams_tool_dimdim/web/pages/monitoring/notebook.jsp (revision 7c68a5b7c9e928e763d087d92d8dd17170f2cb67) @@ -0,0 +1,49 @@ +<%@ include file="/common/taglibs.jsp"%> + + + +
+ +

+ +

+ +

+ ${userDTO.firstName} ${userDTO.lastName } +

+ + + + + + + + + + + + + + + +
+ + + + +
+ + + +
+ + + +
+ + + +
+ + \ No newline at end of file Index: lams_tool_dimdim/web/pages/monitoring/statistics.jsp =================================================================== diff -u -rd5314b799a1d54d0a172c05468a6ec63efc6c514 -r7c68a5b7c9e928e763d087d92d8dd17170f2cb67 --- lams_tool_dimdim/web/pages/monitoring/statistics.jsp (.../statistics.jsp) (revision d5314b799a1d54d0a172c05468a6ec63efc6c514) +++ lams_tool_dimdim/web/pages/monitoring/statistics.jsp (.../statistics.jsp) (revision 7c68a5b7c9e928e763d087d92d8dd17170f2cb67) @@ -3,18 +3,12 @@ +

+ ${session.sessionName} +

+ - - -
-

- ${session.sessionName} -

-
- - - Index: lams_tool_dimdim/web/pages/monitoring/summary.jsp =================================================================== diff -u -r65ab476801260e17f27b0f625ec4daa6a5a8d7fd -r7c68a5b7c9e928e763d087d92d8dd17170f2cb67 --- lams_tool_dimdim/web/pages/monitoring/summary.jsp (.../summary.jsp) (revision 65ab476801260e17f27b0f625ec4daa6a5a8d7fd) +++ lams_tool_dimdim/web/pages/monitoring/summary.jsp (.../summary.jsp) (revision 7c68a5b7c9e928e763d087d92d8dd17170f2cb67) @@ -118,53 +118,43 @@ -
heading.totalLearnersInGroup
- - - -
-

- ${session.sessionName} -

-
+

+ ${session.sessionName} +

- - - - - -
- - - ${session.numberOfLearners} -
+

+ + + + ${session.numberOfLearners} +

+ + -
- - - - -
+ +
+ ${user.firstName} ${user.lastName} + - + + href="./monitoring.do?dispatch=openNotebook&userUID=${user.uid}">