Index: lams_admin/conf/language/lams/ApplicationResources.properties
===================================================================
diff -u -r5f82321c5864250c612773630ff209a45e71a3f1 -rfcc5eca8a605afdc9e927366827553a7862000cd
--- lams_admin/conf/language/lams/ApplicationResources.properties (.../ApplicationResources.properties) (revision 5f82321c5864250c612773630ff209a45e71a3f1)
+++ lams_admin/conf/language/lams/ApplicationResources.properties (.../ApplicationResources.properties) (revision fcc5eca8a605afdc9e927366827553a7862000cd)
@@ -534,4 +534,34 @@
label.select.type=Select type...
label.date=Date
label.between.dates=Between dates
+label.lesson.with.name=Lesson: {0}
+
+label.type.teacher.learning.design.create=Learning Design Created
+label.type.teacher.lesson.create=Lesson Created
+label.type.teacher.lesson.start=Lesson Started
+label.type.teacher.lesson.change.state=Lesson State Changed
+label.type.learner.activity.start=Activity Started
+label.type.learner.activity.finish=Activity Finished
+label.type.learner.lesson.complete=Lesson Complete
+label.type.learner.lesson.mark.submit=Mark Submitted
+label.type.activity.edit=Activity Edited
+label.type.force.complete=Learner Force Completed
+label.type.user.org.admin=Organisation or User Changed
+label.type.login.as=Sysadmin Logged In As
+label.type.password.change=Password Change
+label.type.role.failure=Action Attempted With Wrong Roles
+label.type.account.locked=Account Locked
+label.type.notification=Notification
+label.type.mark.updated=Mark Updated
+label.type.mark.released=Mark Released
+label.type.learner.content.updated=Learner's Entry Modified
+label.type.learner.content.show.hide=Learner's Entry Shown/Hidden
+label.type.unknown=Unknown
+label.area.lesson=Lesson
+label.area.security=Security
+label.area.notification=Notification
+label.area.marks=Marks
+label.area.learner.content=Learner Entry
+label.area.unknown=Unknown
+
#======= End labels: Exported 511 labels for en AU =====
Index: lams_admin/src/java/org/lamsfoundation/lams/admin/adminApplicationContext.xml
===================================================================
diff -u -rf3fbbb8ec1732de7e5ce51567287b42b55ab33e1 -rfcc5eca8a605afdc9e927366827553a7862000cd
--- lams_admin/src/java/org/lamsfoundation/lams/admin/adminApplicationContext.xml (.../adminApplicationContext.xml) (revision f3fbbb8ec1732de7e5ce51567287b42b55ab33e1)
+++ lams_admin/src/java/org/lamsfoundation/lams/admin/adminApplicationContext.xml (.../adminApplicationContext.xml) (revision fcc5eca8a605afdc9e927366827553a7862000cd)
@@ -19,8 +19,8 @@
-
-
+
+
\ No newline at end of file
Index: lams_admin/src/java/org/lamsfoundation/lams/admin/service/AdminServiceProxy.java
===================================================================
diff -u -rf4e34e708b87e42dea1b6d667135f09840d79aa3 -rfcc5eca8a605afdc9e927366827553a7862000cd
--- lams_admin/src/java/org/lamsfoundation/lams/admin/service/AdminServiceProxy.java (.../AdminServiceProxy.java) (revision f4e34e708b87e42dea1b6d667135f09840d79aa3)
+++ lams_admin/src/java/org/lamsfoundation/lams/admin/service/AdminServiceProxy.java (.../AdminServiceProxy.java) (revision fcc5eca8a605afdc9e927366827553a7862000cd)
@@ -28,6 +28,7 @@
import org.lamsfoundation.lams.events.IEventNotificationService;
import org.lamsfoundation.lams.integration.service.IIntegrationService;
import org.lamsfoundation.lams.lesson.service.ILessonService;
+import org.lamsfoundation.lams.logevent.service.ILogEventService;
import org.lamsfoundation.lams.monitoring.service.IMonitoringService;
import org.lamsfoundation.lams.security.ISecurityService;
import org.lamsfoundation.lams.statistics.service.IStatisticsService;
@@ -37,7 +38,6 @@
import org.lamsfoundation.lams.usermanagement.service.LdapService;
import org.lamsfoundation.lams.util.Configuration;
import org.lamsfoundation.lams.util.MessageService;
-import org.lamsfoundation.lams.util.audit.IAuditService;
import org.springframework.web.context.WebApplicationContext;
import org.springframework.web.context.support.WebApplicationContextUtils;
@@ -51,7 +51,7 @@
private static IUserManagementService manageService;
private static MessageService messageService;
private static IIntegrationService integrationService;
- private static IAuditService auditService;
+ private static ILogEventService logEventService;
private static IImportService importService;
private static LdapService ldapService;
private static IStatisticsService statisticsService;
@@ -88,12 +88,12 @@
return AdminServiceProxy.integrationService;
}
- public static final IAuditService getAuditService(ServletContext servletContext) {
- if (AdminServiceProxy.auditService == null) {
- AdminServiceProxy.auditService = (IAuditService) AdminServiceProxy.getDomainService(servletContext,
- "auditService");
+ public static final ILogEventService getLogEventService(ServletContext servletContext) {
+ if (AdminServiceProxy.logEventService == null) {
+ AdminServiceProxy.logEventService = (ILogEventService) AdminServiceProxy.getDomainService(servletContext,
+ "logEventService");
}
- return AdminServiceProxy.auditService;
+ return AdminServiceProxy.logEventService;
}
public static final IImportService getImportService(ServletContext servletContext) {
Index: lams_admin/src/java/org/lamsfoundation/lams/admin/service/IImportService.java
===================================================================
diff -u -r51fb2a37254f24bb2a805d4ffd54482c779f43fa -rfcc5eca8a605afdc9e927366827553a7862000cd
--- lams_admin/src/java/org/lamsfoundation/lams/admin/service/IImportService.java (.../IImportService.java) (revision 51fb2a37254f24bb2a805d4ffd54482c779f43fa)
+++ lams_admin/src/java/org/lamsfoundation/lams/admin/service/IImportService.java (.../IImportService.java) (revision fcc5eca8a605afdc9e927366827553a7862000cd)
@@ -80,7 +80,7 @@
* @return
* @throws IOException
*/
- public List parseGroupSpreadsheet(FormFile fileItem) throws IOException;
+ public List parseGroupSpreadsheet(FormFile fileItem, String sessionId) throws IOException;
/**
* Returns number of rows found in spreadsheet.
Index: lams_admin/src/java/org/lamsfoundation/lams/admin/service/ImportService.java
===================================================================
diff -u -r10a07b8ffe4a2ea92d2aed9a6401795213448b7e -rfcc5eca8a605afdc9e927366827553a7862000cd
--- lams_admin/src/java/org/lamsfoundation/lams/admin/service/ImportService.java (.../ImportService.java) (revision 10a07b8ffe4a2ea92d2aed9a6401795213448b7e)
+++ lams_admin/src/java/org/lamsfoundation/lams/admin/service/ImportService.java (.../ImportService.java) (revision fcc5eca8a605afdc9e927366827553a7862000cd)
@@ -38,7 +38,8 @@
import org.apache.poi.poifs.filesystem.POIFSFileSystem;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.struts.upload.FormFile;
-import org.lamsfoundation.lams.admin.AdminConstants;
+import org.lamsfoundation.lams.logevent.LogEvent;
+import org.lamsfoundation.lams.logevent.service.ILogEventService;
import org.lamsfoundation.lams.themes.Theme;
import org.lamsfoundation.lams.usermanagement.AuthenticationMethod;
import org.lamsfoundation.lams.usermanagement.Organisation;
@@ -53,7 +54,6 @@
import org.lamsfoundation.lams.util.LanguageUtil;
import org.lamsfoundation.lams.util.MessageService;
import org.lamsfoundation.lams.util.ValidationUtil;
-import org.lamsfoundation.lams.util.audit.IAuditService;
import org.lamsfoundation.lams.web.session.SessionManager;
import org.lamsfoundation.lams.web.util.AttributeNames;
@@ -70,7 +70,7 @@
private static Logger log = Logger.getLogger(ImportService.class);
public IUserManagementService service;
public MessageService messageService;
- public IAuditService auditService;
+ public ILogEventService logEventService;
public IUserManagementService getService() {
return service;
@@ -88,12 +88,12 @@
this.messageService = messageService;
}
- public IAuditService getAuditService() {
- return auditService;
+ public ILogEventService getLogEventService() {
+ return logEventService;
}
- public void setAuditService(IAuditService auditService) {
- this.auditService = auditService;
+ public void setLogEventService(ILogEventService logEventService) {
+ this.logEventService = logEventService;
}
// spreadsheet column indexes for user spreadsheet
@@ -175,12 +175,13 @@
// each item in the list lists the id, name, and parent's id of that org; otherwise
// the items in the list are error messages.
@Override
- public List parseGroupSpreadsheet(FormFile fileItem) throws IOException {
+ public List parseGroupSpreadsheet(FormFile fileItem, String sessionId) throws IOException {
results = new ArrayList();
parentOrg = service.getRootOrganisation();
HSSFSheet sheet = getSheet(fileItem);
int startRow = sheet.getFirstRowNum();
int endRow = sheet.getLastRowNum();
+ UserDTO userDTO = (UserDTO) SessionManager.getSession(sessionId).getAttribute(AttributeNames.USER);
ImportService.log.debug("Parsing spreadsheet rows " + startRow + " through " + endRow);
@@ -213,7 +214,7 @@
rowResult.add(org.getName());
rowResult.add(org.getParentOrganisation().getOrganisationId().toString());
rowResult.add(org.getOrganisationType().getOrganisationTypeId().toString());
- writeOrgAuditLog(org);
+ writeOrgAuditLog(org, userDTO);
// if we just added a group, then the rows under it become it's subgroups
if (parentOrg.getOrganisationType().getOrganisationTypeId().equals(OrganisationType.ROOT_TYPE)) {
parentOrg = org;
@@ -222,7 +223,7 @@
}
}
ImportService.log.debug("Found " + results.size() + " orgs in spreadsheet.");
- writeSuccessAuditLog(successful, null, "audit.successful.organisation.import");
+ writeSuccessAuditLog(successful, userDTO, "audit.successful.organisation.import");
return results;
}
@@ -274,7 +275,8 @@
org.setOrganisationType((OrganisationType) service.findById(OrganisationType.class,
parentOrg.getOrganisationType().getOrganisationTypeId().equals(OrganisationType.ROOT_TYPE)
- ? OrganisationType.COURSE_TYPE : OrganisationType.CLASS_TYPE));
+ ? OrganisationType.COURSE_TYPE
+ : OrganisationType.CLASS_TYPE));
org.setParentOrganisation(parentOrg);
org.setCourseAdminCanAddNewUsers(parseBooleanCell(row.getCell(ImportService.ADMIN_ADD_NEW_USERS)));
@@ -811,15 +813,18 @@
args[0] = user.getLogin() + "(" + user.getUserId() + ")";
args[1] = user.getFullName();
String message = messageService.getMessage("audit.user.create", args);
- auditService.log(userDTO, AdminConstants.MODULE_NAME, message);
+ logEventService.logEvent(LogEvent.TYPE_USER_ORG_ADMIN, userDTO != null ? userDTO.getUserID() : null,
+ user.getUserId(), null, null, message);
+
}
- private void writeOrgAuditLog(Organisation org) {
+ private void writeOrgAuditLog(Organisation org, UserDTO userDTO) {
String[] args = new String[2];
args[0] = org.getName() + "(" + org.getOrganisationId() + ")";
args[1] = org.getOrganisationType().getName();
String message = messageService.getMessage("audit.organisation.create", args);
- auditService.log(AdminConstants.MODULE_NAME, message);
+ logEventService.logEvent(LogEvent.TYPE_USER_ORG_ADMIN, userDTO != null ? userDTO.getUserID() : null, null, null,
+ null, message);
}
private void writeErrorsAuditLog(int row, List list, UserDTO userDTO) {
@@ -831,16 +836,14 @@
private void writeErrorAuditLog(int row, String error, UserDTO userDTO) {
String[] args = { Integer.toString(row), error };
String message = messageService.getMessage("audit.spreadsheet.error", args);
- auditService.log(userDTO, AdminConstants.MODULE_NAME, message);
+ logEventService.logEvent(LogEvent.TYPE_USER_ORG_ADMIN, userDTO != null ? userDTO.getUserID() : null, null, null,
+ null, message);
}
private void writeSuccessAuditLog(int successful, UserDTO userDTO, String key) {
String[] args = { Integer.toString(successful) };
String message = messageService.getMessage(key, args);
- if (userDTO == null) {
- auditService.log(AdminConstants.MODULE_NAME, message);
- } else {
- auditService.log(userDTO, AdminConstants.MODULE_NAME, message);
- }
+ logEventService.logEvent(LogEvent.TYPE_USER_ORG_ADMIN, userDTO != null ? userDTO.getUserID() : null, null, null,
+ null, message);
}
}
Index: lams_admin/src/java/org/lamsfoundation/lams/admin/web/action/ImportGroupsAction.java
===================================================================
diff -u -r85ef8aca5722a36582117db1e8b988e2c16b6369 -rfcc5eca8a605afdc9e927366827553a7862000cd
--- lams_admin/src/java/org/lamsfoundation/lams/admin/web/action/ImportGroupsAction.java (.../ImportGroupsAction.java) (revision 85ef8aca5722a36582117db1e8b988e2c16b6369)
+++ lams_admin/src/java/org/lamsfoundation/lams/admin/web/action/ImportGroupsAction.java (.../ImportGroupsAction.java) (revision fcc5eca8a605afdc9e927366827553a7862000cd)
@@ -36,6 +36,7 @@
import org.lamsfoundation.lams.admin.service.AdminServiceProxy;
import org.lamsfoundation.lams.admin.service.IImportService;
import org.lamsfoundation.lams.admin.web.form.ImportExcelForm;
+import org.lamsfoundation.lams.web.session.SessionManager;
/**
* @author jliew
@@ -69,7 +70,8 @@
return mapping.findForward("importGroups");
}
- List results = importService.parseGroupSpreadsheet(file);
+ String sessionId = SessionManager.getSession().getId();
+ List results = importService.parseGroupSpreadsheet(file, sessionId);
request.setAttribute("results", results);
return mapping.findForward("importGroups");
Index: lams_admin/src/java/org/lamsfoundation/lams/admin/web/action/LogEventAction.java
===================================================================
diff -u -r5f82321c5864250c612773630ff209a45e71a3f1 -rfcc5eca8a605afdc9e927366827553a7862000cd
--- lams_admin/src/java/org/lamsfoundation/lams/admin/web/action/LogEventAction.java (.../LogEventAction.java) (revision 5f82321c5864250c612773630ff209a45e71a3f1)
+++ lams_admin/src/java/org/lamsfoundation/lams/admin/web/action/LogEventAction.java (.../LogEventAction.java) (revision fcc5eca8a605afdc9e927366827553a7862000cd)
@@ -47,6 +47,7 @@
import org.lamsfoundation.lams.logevent.service.ILogEventService;
import org.lamsfoundation.lams.usermanagement.Role;
import org.lamsfoundation.lams.usermanagement.User;
+import org.lamsfoundation.lams.util.MessageService;
import org.lamsfoundation.lams.util.WebUtil;
import org.lamsfoundation.lams.web.action.LamsDispatchAction;
import org.lamsfoundation.lams.web.session.SessionManager;
@@ -60,6 +61,7 @@
public class LogEventAction extends LamsDispatchAction {
private static ILogEventService logEventService;
+ private MessageService messageService;
private static SimpleDateFormat START_DATE_FORMAT = new SimpleDateFormat("YYYY-MM-DD");
@Override
@@ -82,20 +84,24 @@
logEventService = getLogEventService();
+ if (messageService == null) {
+ messageService = AdminServiceProxy.getMessageService(getServlet().getServletContext());
+ }
+
// get the log type data and return display for user selection. Also get the start and stop dates from the log.
// TODO check conversion the dates to the user's timezone
List types = logEventService.getEventTypes();
List convertedTypes = new ArrayList(types.size());
- for ( LogEventType type : types ) {
- // TODO get message from the I18N files
- convertedTypes.add(new LogEventTypeDTO(type, type.getDescription().toLowerCase(), type.getArea().toLowerCase()));
+ for (LogEventType type : types) {
+ convertedTypes.add(new LogEventTypeDTO(type, messageService.getMessage(type.getDescriptionI18NKey()),
+ messageService.getMessage(type.getAreaI18NKey())));
}
request.setAttribute("eventLogTypes", convertedTypes);
// jsp page expects date of the first audit log entry as YYYY-DD-MM.
Date oldestDate = logEventService.getOldestEventDate();
// oldestDate = DateUtil.convertToTimeZoneFromDefault(userTimeZone, oldestDate);
- request.setAttribute("startDate", START_DATE_FORMAT.format(oldestDate));
+ request.setAttribute("startDate", START_DATE_FORMAT.format(oldestDate != null ? oldestDate : new Date()) );
return mapping.findForward("success");
}
@@ -156,26 +162,31 @@
String area = WebUtil.readStrParam(request, "area", true);
Integer typeId = WebUtil.readIntParam(request, "typeId", true);
- List events = logEventService.getEventsForTablesorter(page, size, sorting, null, startDate, endDate, area, typeId);
+ List