Index: lams_tool_larsrc/conf/language/lams/ApplicationResources.properties =================================================================== diff -u -r77491c8baf27f5b5d8705ea6b306e8db142389e7 -r8ce4c8dc7ae724fbaca90e665060f93d4d0552a7 --- lams_tool_larsrc/conf/language/lams/ApplicationResources.properties (.../ApplicationResources.properties) (revision 77491c8baf27f5b5d8705ea6b306e8db142389e7) +++ lams_tool_larsrc/conf/language/lams/ApplicationResources.properties (.../ApplicationResources.properties) (revision 8ce4c8dc7ae724fbaca90e665060f93d4d0552a7) @@ -139,8 +139,8 @@ monitor.summary.td.addNotebook = Add a notebook at end of Shared Resources monitor.summary.td.notebookInstructions = Notebook instructions label.authoring.advanced.notify.onassigmentsubmit = Notify instructors when a learner submits a resource -event.assigment.submit.subject = LAMS: A learner submitted an assignment in a Shared Resources tool -event.assigment.submit.body = The learner {0} submitted an assignment in a Shared Resources tool.\n\nThis message was sent automatically, following the tool''s advanced settings. +event.assigment.submit.subject = LAMS: A learner submitted a resource in a Shared Resources tool +event.assigment.submit.body = Hi,

The learner {0} submitted a resource ({1}) in a Shared Resources tool.

Here is the link:
{2}

This message was sent automatically, following the tool's advanced settings.

Thank you,
LAMS error.planner.no.resource.save = There has to be at least one resource to save. error.planner.url.blank = In resource {0} URL can not be blank. error.planner.file.blank = In resource {0} file can not be blank. Index: lams_tool_larsrc/conf/language/lams/ApplicationResources_en_AU.properties =================================================================== diff -u -r77491c8baf27f5b5d8705ea6b306e8db142389e7 -r8ce4c8dc7ae724fbaca90e665060f93d4d0552a7 --- lams_tool_larsrc/conf/language/lams/ApplicationResources_en_AU.properties (.../ApplicationResources_en_AU.properties) (revision 77491c8baf27f5b5d8705ea6b306e8db142389e7) +++ lams_tool_larsrc/conf/language/lams/ApplicationResources_en_AU.properties (.../ApplicationResources_en_AU.properties) (revision 8ce4c8dc7ae724fbaca90e665060f93d4d0552a7) @@ -139,8 +139,8 @@ monitor.summary.td.addNotebook = Add a notebook at end of Shared Resources monitor.summary.td.notebookInstructions = Notebook instructions label.authoring.advanced.notify.onassigmentsubmit = Notify instructors when a learner submits a resource -event.assigment.submit.subject = LAMS: A learner submitted an assignment in a Shared Resources tool -event.assigment.submit.body = The learner {0} submitted an assignment in a Shared Resources tool.\n\nThis message was sent automatically, following the tool''s advanced settings. +event.assigment.submit.subject = LAMS: A learner submitted a resource in a Shared Resources tool +event.assigment.submit.body = Hi,

The learner {0} submitted a resource ({1}) in a Shared Resources tool.

Here is the link:
{2}

This message was sent automatically, following the tool's advanced settings.

Thank you,
LAMS error.planner.no.resource.save = There has to be at least one resource to save. error.planner.url.blank = In resource {0} URL can not be blank. error.planner.file.blank = In resource {0} file can not be blank. Index: lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/ResourceConstants.java =================================================================== diff -u -r599997e40ac269606e85484eaf2110bce594a2de -r8ce4c8dc7ae724fbaca90e665060f93d4d0552a7 --- lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/ResourceConstants.java (.../ResourceConstants.java) (revision 599997e40ac269606e85484eaf2110bce594a2de) +++ lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/ResourceConstants.java (.../ResourceConstants.java) (revision 8ce4c8dc7ae724fbaca90e665060f93d4d0552a7) @@ -155,7 +155,5 @@ public static final String ATTR_USER_UID = "userUid"; - public static final String EVENT_NAME_NOTIFY_TEACHERS_ON_ASSIGMENT_SUBMIT = "notify_teachers_on_assigment_submit"; - public static final String SHARED_ITEMS_DEFINITION_NAME = "shared.items.output.definition.rsrc"; } Index: lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/service/ResourceServiceImpl.java =================================================================== diff -u -r77491c8baf27f5b5d8705ea6b306e8db142389e7 -r8ce4c8dc7ae724fbaca90e665060f93d4d0552a7 --- lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/service/ResourceServiceImpl.java (.../ResourceServiceImpl.java) (revision 77491c8baf27f5b5d8705ea6b306e8db142389e7) +++ lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/service/ResourceServiceImpl.java (.../ResourceServiceImpl.java) (revision 8ce4c8dc7ae724fbaca90e665060f93d4d0552a7) @@ -551,28 +551,37 @@ ResourceItem item = getResourceItemByUid(itemUid); ResourceUser resourceUser = item.getCreateBy(); ResourceSession session = resourceUser.getSession(); - Resource resource = session.getResource(); - String userName = resourceUser.getLastName() + " " + resourceUser.getFirstName(); - String message = getLocalisedMessage("event.assigment.submit.body", new Object[] { userName }); - - if (item.getType() == ResourceConstants.RESOURCE_TYPE_FILE) { - String eventName = new StringBuilder("resources_file_upload_").append(toolContentId).append("_") - .append(System.currentTimeMillis()).toString(); - String url = new StringBuilder("") - .append(getLocalisedMessage("event.file.upload", new Object[] { userName, fileName })).append("") - .toString(); - eventNotificationService.createLessonEvent(IEventNotificationService.LESSON_MONITORS_SCOPE, eventName, - toolContentId, null, url, true, IEventNotificationService.DELIVERY_METHOD_NOTIFICATION); + String userName = new StringBuilder() + .append(StringUtils.isBlank(resourceUser.getFirstName()) ? "" : resourceUser.getFirstName() + " ") + .append(StringUtils.isBlank(resourceUser.getLastName()) ? "" : resourceUser.getLastName() + " ") + .append("(").append(resourceUser.getLoginName()).append(")").toString(); + String resourceType = getLocalisedMessage( + item.getType() == ResourceConstants.RESOURCE_TYPE_URL ? "label.authoring.basic.resource.url" + : "label.authoring.basic.resource.file", + new Object[] {}); + + String url = null; + StringBuilder link = new StringBuilder("").append(url).append(""); + + String subject = getLocalisedMessage("event.assigment.submit.subject", new Object[] {}); + String message = getLocalisedMessage("event.assigment.submit.body", + new Object[] { userName, resourceType, link.toString() }); + + eventNotificationService.notifyLessonMonitors(session.getSessionId(), subject, message, true); + } // ***************************************************************************** @@ -1227,8 +1236,6 @@ resource.setMiniViewResourceNumber(JsonUtil.optInt(toolContentJSON, "minViewResourceNumber", 0)); resource.setNotifyTeachersOnAssigmentSumbit( JsonUtil.optBoolean(toolContentJSON, "notifyTeachersOnAssigmentSubmit", Boolean.FALSE)); - resource.setNotifyTeachersOnAssigmentSumbit( - JsonUtil.optBoolean(toolContentJSON, "notifyTeachersOnFileUpload", Boolean.FALSE)); resource.setReflectOnActivity( JsonUtil.optBoolean(toolContentJSON, RestTags.REFLECT_ON_ACTIVITY, Boolean.FALSE)); resource.setReflectInstructions(JsonUtil.optString(toolContentJSON, RestTags.REFLECT_INSTRUCTIONS)); Index: lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/web/controller/ViewItemController.java =================================================================== diff -u -r0a46648d9547d3fca73e1931d4e628be7e1acd7b -r8ce4c8dc7ae724fbaca90e665060f93d4d0552a7 --- lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/web/controller/ViewItemController.java (.../ViewItemController.java) (revision 0a46648d9547d3fca73e1931d4e628be7e1acd7b) +++ lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/web/controller/ViewItemController.java (.../ViewItemController.java) (revision 8ce4c8dc7ae724fbaca90e665060f93d4d0552a7) @@ -62,14 +62,21 @@ /** * Display main frame to display instrcution and item content. */ + @SuppressWarnings("unchecked") @RequestMapping("/reviewItem") private String reviewItem(HttpServletRequest request) { - String mode = request.getParameter(AttributeNames.ATTR_MODE); - String sessionMapID = WebUtil.readStrParam(request, ResourceConstants.ATTR_SESSION_MAP_ID); - SessionMap sessionMap = (SessionMap) request.getSession() - .getAttribute(sessionMapID); - + SessionMap sessionMap = null; + String sessionMapID = WebUtil.readStrParam(request, ResourceConstants.ATTR_SESSION_MAP_ID, true); + if (sessionMapID == null) { + sessionMap = new SessionMap<>(); + sessionMapID = sessionMap.getSessionID(); + request.getSession().setAttribute(sessionMapID, sessionMap); + } else { + sessionMap = (SessionMap) request.getSession().getAttribute(sessionMapID); + } + + String mode = request.getParameter(AttributeNames.ATTR_MODE); ResourceItem item = getResourceItem(request, sessionMap, mode); String idStr = request.getParameter(ResourceConstants.ATTR_TOOL_SESSION_ID); @@ -184,7 +191,7 @@ // ************************************************************************************* // Private methods // ************************************************************************************* - + /** * Return resource item according to ToolAccessMode. *