Index: lams_tool_forum/conf/language/ApplicationResources.properties =================================================================== diff -u -r37e4e5b1629910246f52ac064021a1062f639441 -r2700025047410d38f40b3bd7c56966a9fc08bb29 --- lams_tool_forum/conf/language/ApplicationResources.properties (.../ApplicationResources.properties) (revision 37e4e5b1629910246f52ac064021a1062f639441) +++ lams_tool_forum/conf/language/ApplicationResources.properties (.../ApplicationResources.properties) (revision 2700025047410d38f40b3bd7c56966a9fc08bb29) @@ -167,3 +167,4 @@ #======= End labels: Exported 158 labels for en AU ===== +label.default.user.name=Default \ No newline at end of file Index: lams_tool_forum/db/sql/create_lams_tool_forum.sql =================================================================== diff -u -r62c0d1eb5c28094e0719349e883324f592807cd4 -r2700025047410d38f40b3bd7c56966a9fc08bb29 --- lams_tool_forum/db/sql/create_lams_tool_forum.sql (.../create_lams_tool_forum.sql) (revision 62c0d1eb5c28094e0719349e883324f592807cd4) +++ lams_tool_forum/db/sql/create_lams_tool_forum.sql (.../create_lams_tool_forum.sql) (revision 2700025047410d38f40b3bd7c56966a9fc08bb29) @@ -115,5 +115,10 @@ alter table tl_lafrum11_tool_session add index FK5A04D7AE131CE31E (forum_uid), add constraint FK5A04D7AE131CE31E foreign key (forum_uid) references tl_lafrum11_forum (uid); -INSERT INTO tl_lafrum11_forum (title,instructions,online_instructions,offline_instructions,content_id,allow_anonym,run_offline,lock_on_finished,content_in_use,define_later,allow_edit,allow_rich_editor, allow_new_topic,allow_upload,maximum_reply, minimum_reply,limited_input_flag,limited_of_chars,reflect_on_activity) VALUES("LAMS Forum","Instruction","Online instruction","Offline instruction",${default_content_id},0,0,0,0,0,1,0,1,1,0,0,1,5000,0); +INSERT INTO tl_lafrum11_forum (uid,title,instructions,online_instructions,offline_instructions,content_id,allow_anonym,run_offline,lock_on_finished,content_in_use,define_later,allow_edit,allow_rich_editor, allow_new_topic,allow_upload,maximum_reply, minimum_reply,limited_input_flag,limited_of_chars,reflect_on_activity) +VALUES(1,"LAMS Forum","Instruction","Online instruction","Offline instruction",${default_content_id},0,0,0,0,0,1,0,1,1,0,0,1,5000,0); + +INSERT INTO `tl_lafrum11_message` (`uid`, `create_date`, `last_reply_date`, `update_date`, `create_by`, `modified_by`, `subject`, `body`, `is_authored`, `is_anonymous`, `forum_session_uid`, `parent_uid`, `forum_uid`, `reply_number`, `hide_flag`, `report_id`) VALUES + (1,NOW(),NOW(),NOW(),null,null,'Topic Title','Topic message',1,0,NULL,NULL,1,0,0,NULL); + SET FOREIGN_KEY_CHECKS=1; \ No newline at end of file Index: lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/dto/MessageDTO.java =================================================================== diff -u -r08950e1090443c3423a3d1c587416a2fccd8bbdf -r2700025047410d38f40b3bd7c56966a9fc08bb29 --- lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/dto/MessageDTO.java (.../MessageDTO.java) (revision 08950e1090443c3423a3d1c587416a2fccd8bbdf) +++ lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/dto/MessageDTO.java (.../MessageDTO.java) (revision 2700025047410d38f40b3bd7c56966a9fc08bb29) @@ -61,7 +61,8 @@ MessageDTO dto = new MessageDTO(); dto.setMessage(msg); - dto.setAuthor(msg.getCreatedBy().getFirstName()+" "+msg.getCreatedBy().getLastName()); + if(msg.getCreatedBy() != null) + dto.setAuthor(msg.getCreatedBy().getFirstName()+" "+msg.getCreatedBy().getLastName()); if(msg.getAttachments() == null || msg.getAttachments().isEmpty()) dto.setHasAttachment(false); else @@ -92,7 +93,8 @@ Message msg = (Message) iter.next(); MessageDTO msgDto = new MessageDTO(); msgDto.setMessage(msg); - msgDto.setAuthor(msg.getCreatedBy().getFirstName()+" "+msg.getCreatedBy().getLastName()); + if(msg.getCreatedBy() != null) + msgDto.setAuthor(msg.getCreatedBy().getFirstName()+" "+msg.getCreatedBy().getLastName()); if(msg.getAttachments() == null || msg.getAttachments().isEmpty()) msgDto.setHasAttachment(false); Index: lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/service/ForumService.java =================================================================== diff -u -r6cac5dc66a09730ddbf7ec39b426e5bb37e43920 -r2700025047410d38f40b3bd7c56966a9fc08bb29 --- lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/service/ForumService.java (.../ForumService.java) (revision 6cac5dc66a09730ddbf7ec39b426e5bb37e43920) +++ lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/service/ForumService.java (.../ForumService.java) (revision 2700025047410d38f40b3bd7c56966a9fc08bb29) @@ -215,12 +215,18 @@ Message message = getMessage(messageId); if ( message !=null ) { + Long userId = 0L; + String loginName = "Default"; + if(message.getCreatedBy() == null){ + userId = message.getCreatedBy().getUserId(); + loginName = message.getCreatedBy().getLoginName(); + } if ( hideFlag ) { - auditService.logHideEntry(ForumConstants.TOOL_SIGNATURE, message.getCreatedBy().getUserId(), - message.getCreatedBy().getLoginName(), message.toString()); + auditService.logHideEntry(ForumConstants.TOOL_SIGNATURE, userId, + loginName, message.toString()); } else { - auditService.logShowEntry(ForumConstants.TOOL_SIGNATURE, message.getCreatedBy().getUserId(), - message.getCreatedBy().getLoginName(), message.toString()); + auditService.logShowEntry(ForumConstants.TOOL_SIGNATURE,userId, + loginName, message.toString()); } message.setHideFlag(hideFlag); @@ -363,9 +369,9 @@ while(iter.hasNext()){ msg = (Message) iter.next(); if(OLD_FORUM_STYLE) - map.put(msg.getLastReplyDate(),msg); - else map.put(msg.getCreated(),msg); + else + map.put(msg.getLastReplyDate(),msg); } return MessageDTO.getMessageDTO(new ArrayList(map.values())); @@ -813,10 +819,10 @@ } Forum defaultContent = getDefaultForum(); - //save default content by given ID. + //get default content by given ID. Forum content = new Forum(); content = Forum.newInstance(defaultContent,contentID,forumToolContentHandler); - //save topics in this forum + Set topics = content.getMessages(); if(topics != null){ Iterator iter = topics.iterator(); Index: lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/web/actions/AuthoringAction.java =================================================================== diff -u -rd72cf676b7ac9de46a6f6a9cdb96b2439ed6287f -r2700025047410d38f40b3bd7c56966a9fc08bb29 --- lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/web/actions/AuthoringAction.java (.../AuthoringAction.java) (revision d72cf676b7ac9de46a6f6a9cdb96b2439ed6287f) +++ lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/web/actions/AuthoringAction.java (.../AuthoringAction.java) (revision 2700025047410d38f40b3bd7c56966a9fc08bb29) @@ -182,7 +182,7 @@ //get back the topic list and display them on page forumService = getForumManager(); - List topics = null; + List topics = null; Forum forum = null; try { forum = forumService.getForumByContentId(contentId); @@ -195,13 +195,32 @@ Iterator iter = forum.getMessages().iterator(); while(iter.hasNext()){ Message topic = (Message) iter.next(); + if(topic.getCreatedBy() == null){ + //get login user (author) + HttpSession ss = SessionManager.getSession(); + //get back login user DTO + UserDTO user = (UserDTO) ss.getAttribute(AttributeNames.USER); + ForumUser fuser = new ForumUser(user,null); + topic.setCreatedBy(fuser); + } map.put(topic.getCreated(),topic); } - topics = new ArrayList(map.values()); + topics = MessageDTO.getMessageDTO(new ArrayList(map.values())); }else topics = null; }else{ topics = forumService.getAuthoredTopics(forum.getUid()); + //failure tolerance: if current contentID is defaultID, the createBy will be null. + for (MessageDTO messageDTO : topics) { + if(StringUtils.isBlank(messageDTO.getAuthor())){ + //get login user (author) + HttpSession ss = SessionManager.getSession(); + //get back login user DTO + UserDTO user = (UserDTO) ss.getAttribute(AttributeNames.USER); + ForumUser fuser = new ForumUser(user,null); + messageDTO.setAuthor(fuser.getFirstName()+" "+fuser.getLastName()); + } + } } //initialize attachmentList List attachmentList = getAttachmentList(sessionMap); @@ -217,7 +236,7 @@ //set back STRUTS component value //init it to avoid null exception in following handling if(topics == null) - topics = new ArrayList(); + topics = new ArrayList(); sessionMap.put(ForumConstants.AUTHORING_TOPICS_LIST, topics); return mapping.findForward("success"); Index: lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/web/actions/ExportServlet.java =================================================================== diff -u -re32edf3f59266506e8fdbd10f7b61175111fc4dc -r2700025047410d38f40b3bd7c56966a9fc08bb29 --- lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/web/actions/ExportServlet.java (.../ExportServlet.java) (revision e32edf3f59266506e8fdbd10f7b61175111fc4dc) +++ lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/web/actions/ExportServlet.java (.../ExportServlet.java) (revision 2700025047410d38f40b3bd7c56966a9fc08bb29) @@ -123,6 +123,7 @@ // get root topic list and its children topics List msgDtoList = getSessionTopicList(toolSessionID, directoryName, forumService); + //set author flag, to decide if display mark of topics.Only author allow see his own mark. setAuthorMark(msgDtoList); ForumToolSession session = forumService.getSessionBySessionId(toolSessionID); Index: lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/web/actions/LearningAction.java =================================================================== diff -u -r08950e1090443c3423a3d1c587416a2fccd8bbdf -r2700025047410d38f40b3bd7c56966a9fc08bb29 --- lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/web/actions/LearningAction.java (.../LearningAction.java) (revision 08950e1090443c3423a3d1c587416a2fccd8bbdf) +++ lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/web/actions/LearningAction.java (.../LearningAction.java) (revision 2700025047410d38f40b3bd7c56966a9fc08bb29) @@ -612,8 +612,14 @@ setAttachment(messageForm, messagePO); if ( makeAuditEntry ) { + Long userId = 0L; + String loginName = "Default"; + if(message.getCreatedBy() == null){ + userId = message.getCreatedBy().getUserId(); + loginName = message.getCreatedBy().getLoginName(); + } forumService.getAuditService().logChange(ForumConstants.TOOL_SIGNATURE, - messagePO.getCreatedBy().getUserId(), messagePO.getCreatedBy().getLoginName(), + userId,loginName, oldMessageString, messagePO.toString()); } Index: lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/web/actions/MonitoringAction.java =================================================================== diff -u -rf50903db417c658ce7f49580001c058e012b7f13 -r2700025047410d38f40b3bd7c56966a9fc08bb29 --- lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/web/actions/MonitoringAction.java (.../MonitoringAction.java) (revision f50903db417c658ce7f49580001c058e012b7f13) +++ lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/web/actions/MonitoringAction.java (.../MonitoringAction.java) (revision 2700025047410d38f40b3bd7c56966a9fc08bb29) @@ -285,8 +285,7 @@ sheet.setColumnWidth((short) 0, (short) 5000); HSSFRow row = null; HSSFCell cell; - Iterator iter = getTopicsSortedByAuthor(topicList).values() - .iterator(); + Iterator iter = getTopicsSortedByAuthor(topicList).values().iterator(); Iterator dtoIter; boolean first = true; int idx = 0; @@ -481,7 +480,7 @@ request.setAttribute(ForumConstants.PARAM_UPDATE_MODE, updateMode); String mark = markForm.getMark(); - ActionErrors errors = new ActionErrors(); + ActionMessages errors = new ActionMessages(); if (StringUtils.isBlank(mark)) { ActionMessage error = new ActionMessage("error.valueReqd"); errors.add("report.mark", error); @@ -507,7 +506,7 @@ if(!errors.isEmpty()){ // each back to web page request.setAttribute(ForumConstants.ATTR_TOPIC, MessageDTO.getMessageDTO(msg)); - saveMessages(request, errors); + saveErrors(request, errors); return mapping.getInputForward(); } @@ -803,6 +802,8 @@ forumService = getForumService(); while (iter.hasNext()) { MessageDTO dto = (MessageDTO) iter.next(); + if(dto.getMessage().getIsAuthored()) + continue; dto.getMessage().getReport(); ForumUser user = (ForumUser) dto.getMessage().getCreatedBy().clone(); List list = (List) topicsByUser.get(user); Index: lams_tool_forum/web/common/messages.jsp =================================================================== diff -u -rf50903db417c658ce7f49580001c058e012b7f13 -r2700025047410d38f40b3bd7c56966a9fc08bb29 --- lams_tool_forum/web/common/messages.jsp (.../messages.jsp) (revision f50903db417c658ce7f49580001c058e012b7f13) +++ lams_tool_forum/web/common/messages.jsp (.../messages.jsp) (revision 2700025047410d38f40b3bd7c56966a9fc08bb29) @@ -1,6 +1,5 @@ <%-- Error Messages --%> -

 


Index: lams_tool_forum/web/jsps/export/exportportfolio.jsp =================================================================== diff -u -rca73a51b45e6071a6a9edd5da8b0d61bf3a39929 -r2700025047410d38f40b3bd7c56966a9fc08bb29 --- lams_tool_forum/web/jsps/export/exportportfolio.jsp (.../exportportfolio.jsp) (revision ca73a51b45e6071a6a9edd5da8b0d61bf3a39929) +++ lams_tool_forum/web/jsps/export/exportportfolio.jsp (.../exportportfolio.jsp) (revision 2700025047410d38f40b3bd7c56966a9fc08bb29) @@ -50,7 +50,13 @@ - + + + + + + + ${author} - Index: lams_tool_forum/web/jsps/learning/message/topiclist.jsp =================================================================== diff -u -r4fa9a710e5680a5d0f363bd840c2ddeda43bca46 -r2700025047410d38f40b3bd7c56966a9fc08bb29 --- lams_tool_forum/web/jsps/learning/message/topiclist.jsp (.../topiclist.jsp) (revision 4fa9a710e5680a5d0f363bd840c2ddeda43bca46) +++ lams_tool_forum/web/jsps/learning/message/topiclist.jsp (.../topiclist.jsp) (revision 2700025047410d38f40b3bd7c56966a9fc08bb29) @@ -29,7 +29,13 @@ - + + + + + + + ${author} Index: lams_tool_forum/web/jsps/learning/message/topicview.jsp =================================================================== diff -u -r4fa9a710e5680a5d0f363bd840c2ddeda43bca46 -r2700025047410d38f40b3bd7c56966a9fc08bb29 --- lams_tool_forum/web/jsps/learning/message/topicview.jsp (.../topicview.jsp) (revision 4fa9a710e5680a5d0f363bd840c2ddeda43bca46) +++ lams_tool_forum/web/jsps/learning/message/topicview.jsp (.../topicview.jsp) (revision 2700025047410d38f40b3bd7c56966a9fc08bb29) @@ -20,7 +20,13 @@ - + + + + + + + ${author} - Index: lams_tool_forum/web/jsps/monitoring/message/viewtopic.jsp =================================================================== diff -u -r4fa9a710e5680a5d0f363bd840c2ddeda43bca46 -r2700025047410d38f40b3bd7c56966a9fc08bb29 --- lams_tool_forum/web/jsps/monitoring/message/viewtopic.jsp (.../viewtopic.jsp) (revision 4fa9a710e5680a5d0f363bd840c2ddeda43bca46) +++ lams_tool_forum/web/jsps/monitoring/message/viewtopic.jsp (.../viewtopic.jsp) (revision 2700025047410d38f40b3bd7c56966a9fc08bb29) @@ -12,7 +12,14 @@ - + + + + + + + ${author} + - Index: lams_tool_forum/web/jsps/monitoring/message/viewtopictree.jsp =================================================================== diff -u -r4fa9a710e5680a5d0f363bd840c2ddeda43bca46 -r2700025047410d38f40b3bd7c56966a9fc08bb29 --- lams_tool_forum/web/jsps/monitoring/message/viewtopictree.jsp (.../viewtopictree.jsp) (revision 4fa9a710e5680a5d0f363bd840c2ddeda43bca46) +++ lams_tool_forum/web/jsps/monitoring/message/viewtopictree.jsp (.../viewtopictree.jsp) (revision 2700025047410d38f40b3bd7c56966a9fc08bb29) @@ -13,7 +13,14 @@ - + + + + + + + ${author} + - Index: lams_tool_forum/web/jsps/monitoring/updatemarks.jsp =================================================================== diff -u -re32edf3f59266506e8fdbd10f7b61175111fc4dc -r2700025047410d38f40b3bd7c56966a9fc08bb29 --- lams_tool_forum/web/jsps/monitoring/updatemarks.jsp (.../updatemarks.jsp) (revision e32edf3f59266506e8fdbd10f7b61175111fc4dc) +++ lams_tool_forum/web/jsps/monitoring/updatemarks.jsp (.../updatemarks.jsp) (revision 2700025047410d38f40b3bd7c56966a9fc08bb29) @@ -32,7 +32,13 @@ - + + + + + + + ${author} Index: lams_tool_forum/web/jsps/monitoring/viewmarks.jsp =================================================================== diff -u -r4fa9a710e5680a5d0f363bd840c2ddeda43bca46 -r2700025047410d38f40b3bd7c56966a9fc08bb29 --- lams_tool_forum/web/jsps/monitoring/viewmarks.jsp (.../viewmarks.jsp) (revision 4fa9a710e5680a5d0f363bd840c2ddeda43bca46) +++ lams_tool_forum/web/jsps/monitoring/viewmarks.jsp (.../viewmarks.jsp) (revision 2700025047410d38f40b3bd7c56966a9fc08bb29) @@ -50,7 +50,13 @@ - + + + + + + + ${author} Index: lams_tool_larsrc/db/sql/create_lams_tool_rsrc.sql =================================================================== diff -u -r54b769dc17794d41f2d636100fcf8db59fc45395 -r2700025047410d38f40b3bd7c56966a9fc08bb29 --- lams_tool_larsrc/db/sql/create_lams_tool_rsrc.sql (.../create_lams_tool_rsrc.sql) (revision 54b769dc17794d41f2d636100fcf8db59fc45395) +++ lams_tool_larsrc/db/sql/create_lams_tool_rsrc.sql (.../create_lams_tool_rsrc.sql) (revision 2700025047410d38f40b3bd7c56966a9fc08bb29) @@ -111,6 +111,14 @@ -INSERT INTO `tl_larsrc11_resource` (`uid`, `create_date`, `update_date`, `create_by`, `title`, `run_offline`, `lock_on_finished`, `instructions`, `online_instructions`, `offline_instructions`, `content_in_use`, `define_later`, `content_id`, `allow_add_files`, `allow_add_urls`, `mini_view_resource_number`, `allow_auto_run`,`reflect_on_activity`) VALUES - (2,NULL,NULL,NULL,'Shared Resources','0','0','Instruction','Online instruction','Offline instruction',0,0,${default_content_id},1,1,0,0,0); +INSERT INTO `tl_larsrc11_resource` (`uid`, `create_date`, `update_date`, `create_by`, `title`, `run_offline`, `lock_on_finished`, + `instructions`, `online_instructions`, `offline_instructions`, `content_in_use`, `define_later`, `content_id`, `allow_add_files`, + `allow_add_urls`, `mini_view_resource_number`, `allow_auto_run`,`reflect_on_activity`) VALUES + (1,NULL,NULL,NULL,'Shared Resources','0','0','Instruction','Online instruction','Offline instruction',0,0,${default_content_id},0,0,0,0,0); + +INSERT INTO `tl_larsrc11_resource_item` (`uid`, `file_uuid`, `file_version_id`, `description`, `ims_schema`, `init_item`, `organization_xml`, `title`, `url`, `create_by`, `create_date`, `create_by_author`, `is_hide`, `item_type`, `file_type`, `file_name`, `open_url_new_window`, `resource_uid`, `session_uid`) VALUES + (1,NULL,NULL,NULL,NULL,NULL,NULL,'Web Search','http://www.google.com ',null,NOW(),1,0,1,NULL,NULL,0,1,NULL); +INSERT INTO `tl_larsrc11_item_instruction` (`uid`, `description`, `sequence_id`, `item_uid`) VALUES + (1,'Use Google to search on the web ',0,1); + SET FOREIGN_KEY_CHECKS=1; \ No newline at end of file Index: lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/service/ResourceServiceImpl.java =================================================================== diff -u -r28b3045d39cf68d79a469dfa23e625b3822abfe0 -r2700025047410d38f40b3bd7c56966a9fc08bb29 --- lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/service/ResourceServiceImpl.java (.../ResourceServiceImpl.java) (revision 28b3045d39cf68d79a469dfa23e625b3822abfe0) +++ lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/service/ResourceServiceImpl.java (.../ResourceServiceImpl.java) (revision 2700025047410d38f40b3bd7c56966a9fc08bb29) @@ -586,12 +586,19 @@ public void setItemVisible(Long itemUid, boolean visible) { ResourceItem item = resourceItemDao.getByUid(itemUid); if ( item != null ) { + //createBy should be null for system default value. + Long userId = 0L; + String loginName = "No user"; + if(item.getCreateBy() != null){ + userId = item.getCreateBy().getUserId(); + loginName = item.getCreateBy().getLoginName(); + } if ( visible ) { - auditService.logShowEntry(ResourceConstants.TOOL_SIGNATURE, item.getCreateBy().getUserId(), - item.getCreateBy().getLoginName(), item.toString()); + auditService.logShowEntry(ResourceConstants.TOOL_SIGNATURE,userId, + loginName, item.toString()); } else { - auditService.logHideEntry(ResourceConstants.TOOL_SIGNATURE, item.getCreateBy().getUserId(), - item.getCreateBy().getLoginName(), item.toString()); + auditService.logHideEntry(ResourceConstants.TOOL_SIGNATURE, userId, + loginName, item.toString()); } item.setHide(!visible); resourceItemDao.saveObject(item); Index: lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/web/action/AuthoringAction.java =================================================================== diff -u -r63496b9bc573a2c632458fa9009900b74193dcbc -r2700025047410d38f40b3bd7c56966a9fc08bb29 --- lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/web/action/AuthoringAction.java (.../AuthoringAction.java) (revision 63496b9bc573a2c632458fa9009900b74193dcbc) +++ lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/web/action/AuthoringAction.java (.../AuthoringAction.java) (revision 2700025047410d38f40b3bd7c56966a9fc08bb29) @@ -369,7 +369,7 @@ // get back the resource and item list and display them on page IResourceService service = getResourceService(); - List items = null; + List items = null; Resource resource = null; ResourceForm resourceForm = (ResourceForm)form; @@ -388,7 +388,7 @@ if(resource == null){ resource = service.getDefaultContent(contentId); if(resource.getResourceItems() != null){ - items = new ArrayList(resource.getResourceItems()); + items = new ArrayList(resource.getResourceItems()); }else items = null; }else @@ -407,8 +407,22 @@ //init it to avoid null exception in following handling if(items == null) - items = new ArrayList(); - + items = new ArrayList(); + else{ + ResourceUser resourceUser = null; + //handle system default question: createBy is null, now set it to current user + for (ResourceItem item : items) { + if(item.getCreateBy() == null){ + if(resourceUser == null){ + //get back login user DTO + HttpSession ss = SessionManager.getSession(); + UserDTO user = (UserDTO) ss.getAttribute(AttributeNames.USER); + resourceUser = new ResourceUser(user,resource); + } + item.setCreateBy(resourceUser); + } + } + } //init resource item list SortedSet resourceItemList = getResourceItemList(sessionMap); resourceItemList.clear(); Index: lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/web/action/LearningAction.java =================================================================== diff -u -r08950e1090443c3423a3d1c587416a2fccd8bbdf -r2700025047410d38f40b3bd7c56966a9fc08bb29 --- lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/web/action/LearningAction.java (.../LearningAction.java) (revision 08950e1090443c3423a3d1c587416a2fccd8bbdf) +++ lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/web/action/LearningAction.java (.../LearningAction.java) (revision 2700025047410d38f40b3bd7c56966a9fc08bb29) @@ -214,7 +214,8 @@ for(ResourceItem item : items){ //becuase in webpage will use this login name. Here is just //initial it to avoid session close error in proxy object. - item.getCreateBy().getLoginName(); + if(item.getCreateBy() != null) + item.getCreateBy().getLoginName(); if(!item.isHide()){ resourceItemList.add(item); } Index: lams_tool_larsrc/web/pages/learning/learning.jsp =================================================================== diff -u -r64ef89247b8a1055e73517892fec7ace24a5b9a7 -r2700025047410d38f40b3bd7c56966a9fc08bb29 --- lams_tool_larsrc/web/pages/learning/learning.jsp (.../learning.jsp) (revision 64ef89247b8a1055e73517892fec7ace24a5b9a7) +++ lams_tool_larsrc/web/pages/learning/learning.jsp (.../learning.jsp) (revision 2700025047410d38f40b3bd7c56966a9fc08bb29) @@ -95,7 +95,7 @@ ${item.title} - + [${item.createBy.loginName}] Index: lams_tool_survey/db/sql/create_lams_tool_survey.sql =================================================================== diff -u -r6a5d35ec57dde95eae93fb628d669af257d36949 -r2700025047410d38f40b3bd7c56966a9fc08bb29 --- lams_tool_survey/db/sql/create_lams_tool_survey.sql (.../create_lams_tool_survey.sql) (revision 6a5d35ec57dde95eae93fb628d669af257d36949) +++ lams_tool_survey/db/sql/create_lams_tool_survey.sql (.../create_lams_tool_survey.sql) (revision 2700025047410d38f40b3bd7c56966a9fc08bb29) @@ -110,6 +110,26 @@ INSERT INTO `tl_lasurv11_survey` (`uid`, `create_date`, `update_date`, `create_by`, `title`, `run_offline`, `lock_on_finished`, `instructions`, `online_instructions`, `offline_instructions`, `content_in_use`, `define_later`, `content_id`,`show_questions_on_one_page`,`reflect_on_activity`) VALUES - (2,NULL,NULL,NULL,'Survey','0','0','Instruction','Online instruction','Offline instruction',0,0,${default_content_id},1,0); + (1,NULL,NULL,NULL,'Survey','0','0','Instruction','Online instruction','Offline instruction',0,0,${default_content_id},1,0); +INSERT INTO `tl_lasurv11_question` (`uid`, `sequence_id`, `description`, `create_by`, `create_date`, `question_type`, `append_text`, `optional`, `allow_multiple_answer`, `survey_uid`) VALUES + (1,1,'Sample Multiple choice - only one response allowed?',null,NOW(),1,0,0,0,1); +INSERT INTO `tl_lasurv11_question` (`uid`, `sequence_id`, `description`, `create_by`, `create_date`, `question_type`, `append_text`, `optional`, `allow_multiple_answer`, `survey_uid`) VALUES + (2,2,'Sample Multiple choice - multiple response allowed?',null,NOW(),2,0,0,1,1); +INSERT INTO `tl_lasurv11_question` (`uid`, `sequence_id`, `description`, `create_by`, `create_date`, `question_type`, `append_text`, `optional`, `allow_multiple_answer`, `survey_uid`) VALUES + (3,3,'Sample Free text question?',null,NOW(),3,0,0,0,1); + + +INSERT INTO `tl_lasurv11_option` (`uid`, `description`, `sequence_id`, `question_uid`) VALUES + (1,'Option 1',0,1); +INSERT INTO `tl_lasurv11_option` (`uid`, `description`, `sequence_id`, `question_uid`) VALUES + (2,'Option 2',1,1); +INSERT INTO `tl_lasurv11_option` (`uid`, `description`, `sequence_id`, `question_uid`) VALUES + (3,'Option 3',2,1); +INSERT INTO `tl_lasurv11_option` (`uid`, `description`, `sequence_id`, `question_uid`) VALUES + (4,'Option 1',0,2); +INSERT INTO `tl_lasurv11_option` (`uid`, `description`, `sequence_id`, `question_uid`) VALUES + (5,'Option 2',1,2); +INSERT INTO `tl_lasurv11_option` (`uid`, `description`, `sequence_id`, `question_uid`) VALUES + (6,'Option 3',2,2); SET FOREIGN_KEY_CHECKS=1; Index: lams_tool_survey/src/java/org/lamsfoundation/lams/tool/survey/web/action/AuthoringAction.java =================================================================== diff -u -r7ed78ed8506a377056c19c18d0c105cafc384f44 -r2700025047410d38f40b3bd7c56966a9fc08bb29 --- lams_tool_survey/src/java/org/lamsfoundation/lams/tool/survey/web/action/AuthoringAction.java (.../AuthoringAction.java) (revision 7ed78ed8506a377056c19c18d0c105cafc384f44) +++ lams_tool_survey/src/java/org/lamsfoundation/lams/tool/survey/web/action/AuthoringAction.java (.../AuthoringAction.java) (revision 2700025047410d38f40b3bd7c56966a9fc08bb29) @@ -374,7 +374,7 @@ // get back the survey and item list and display them on page ISurveyService service = getSurveyService(); - List questions = null; + List questions = null; Survey survey = null; SurveyForm surveyForm = (SurveyForm)form; @@ -392,11 +392,11 @@ if(survey == null){ survey = service.getDefaultContent(contentId); if(survey.getQuestions() != null){ - questions = new ArrayList(survey.getQuestions()); + questions = new ArrayList(survey.getQuestions()); }else questions = null; }else - questions = new ArrayList(survey.getQuestions()); + questions = new ArrayList(survey.getQuestions()); surveyForm.setSurvey(survey); @@ -408,7 +408,21 @@ //init it to avoid null exception in following handling if(questions == null) questions = new ArrayList(); - + else{ + SurveyUser surveyUser = null; + //handle system default question: createBy is null, now set it to current user + for (SurveyQuestion question : questions) { + if(question.getCreateBy() == null){ + if(surveyUser == null){ + //get back login user DTO + HttpSession ss = SessionManager.getSession(); + UserDTO user = (UserDTO) ss.getAttribute(AttributeNames.USER); + surveyUser = new SurveyUser(user,survey); + } + question.setCreateBy(surveyUser); + } + } + } //init survey item list SortedSet surveyItemList = getSurveyItemList(sessionMap); surveyItemList.clear(); Index: lams_tool_survey/web/pages/monitoring/listanswers.jsp =================================================================== diff -u -r825e32a1131e134c0e2d560418cc349973b3702f -r2700025047410d38f40b3bd7c56966a9fc08bb29 --- lams_tool_survey/web/pages/monitoring/listanswers.jsp (.../listanswers.jsp) (revision 825e32a1131e134c0e2d560418cc349973b3702f) +++ lams_tool_survey/web/pages/monitoring/listanswers.jsp (.../listanswers.jsp) (revision 2700025047410d38f40b3bd7c56966a9fc08bb29) @@ -24,7 +24,7 @@ <%-- --%> - + <%-- @@ -33,7 +33,7 @@ --%> - -
+ <%= SurveyConstants.OPTION_SHORT_HEADER %>${optStatus.count} @@ -43,7 +43,7 @@
+