Index: lams_admin/src/java/org/lamsfoundation/lams/admin/util/ExcelUserImportFileParser.java =================================================================== diff -u -r0892350e28ca67031ad97e624f167dccd6272871 -r674e673e23b1be6044a7a003b3f5e7720588b0ca --- lams_admin/src/java/org/lamsfoundation/lams/admin/util/ExcelUserImportFileParser.java (.../ExcelUserImportFileParser.java) (revision 0892350e28ca67031ad97e624f167dccd6272871) +++ lams_admin/src/java/org/lamsfoundation/lams/admin/util/ExcelUserImportFileParser.java (.../ExcelUserImportFileParser.java) (revision 674e673e23b1be6044a7a003b3f5e7720588b0ca) @@ -36,6 +36,8 @@ import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.poifs.filesystem.POIFSFileSystem; import org.apache.struts.upload.FormFile; +import org.lamsfoundation.lams.admin.AdminConstants; +import org.lamsfoundation.lams.admin.service.AdminServiceProxy; import org.lamsfoundation.lams.themes.CSSThemeVisualElement; import org.lamsfoundation.lams.usermanagement.AuthenticationMethod; import org.lamsfoundation.lams.usermanagement.Organisation; @@ -47,6 +49,7 @@ import org.lamsfoundation.lams.util.ConfigurationKeys; import org.lamsfoundation.lams.util.HashUtil; import org.lamsfoundation.lams.util.MessageService; +import org.lamsfoundation.lams.util.audit.IAuditService; /** * TODO Add description here @@ -64,6 +67,7 @@ private static Logger log = Logger.getLogger(ExcelUserImportFileParser.class); private static IUserManagementService service; private static MessageService messageService; + private static IAuditService auditService; // spreadsheet column indexes private static final short LOGIN = 0; @@ -95,9 +99,10 @@ private boolean emptyRow; private boolean hasError; - public ExcelUserImportFileParser(IUserManagementService service, MessageService messageService){ + public ExcelUserImportFileParser(IUserManagementService service, MessageService messageService, IAuditService auditService){ this.service = service; this.messageService = messageService; + this.auditService = auditService; } /** @@ -144,6 +149,7 @@ log.debug("org: "+org+" roles: "+roles); if (org!=null && roles!=null) { service.save(user); + writeAuditLog(user); service.setRolesForUserOrganisation(user, org, roles); //rowResult.add(org.getOrganisationId().toString()); // for stat summary in save action log.debug("saved user: "+user.getUserId()+" with roles: "+roles); @@ -161,6 +167,7 @@ } } else { service.save(user); + writeAuditLog(user); //rowResult.add(String.valueOf(0)); // for stat summary in save action log.debug("saved user: "+user.getUserId()); } @@ -394,4 +401,12 @@ } } + private void writeAuditLog(User user) { + String[] args = new String[2]; + args[0] = user.getLogin()+"("+user.getUserId()+")"; + args[1] = user.getFullName(); + String message = messageService.getMessage("audit.user.create", args); + auditService.log(AdminConstants.MODULE_NAME, message); + } + } Index: lams_admin/src/java/org/lamsfoundation/lams/admin/web/ImportExcelSaveAction.java =================================================================== diff -u -ra7b0a98ccdef7a9308b07052506a7d3d8ecfa307 -r674e673e23b1be6044a7a003b3f5e7720588b0ca --- lams_admin/src/java/org/lamsfoundation/lams/admin/web/ImportExcelSaveAction.java (.../ImportExcelSaveAction.java) (revision a7b0a98ccdef7a9308b07052506a7d3d8ecfa307) +++ lams_admin/src/java/org/lamsfoundation/lams/admin/web/ImportExcelSaveAction.java (.../ImportExcelSaveAction.java) (revision 674e673e23b1be6044a7a003b3f5e7720588b0ca) @@ -38,6 +38,7 @@ import org.lamsfoundation.lams.admin.util.ExcelUserImportFileParser; import org.lamsfoundation.lams.usermanagement.service.IUserManagementService; import org.lamsfoundation.lams.util.MessageService; +import org.lamsfoundation.lams.util.audit.IAuditService; /** * @author jliew @@ -69,9 +70,10 @@ IUserManagementService service = AdminServiceProxy.getService(getServlet().getServletContext()); MessageService messageService = AdminServiceProxy.getMessageService(getServlet().getServletContext()); + IAuditService auditService = AdminServiceProxy.getAuditService(getServlet().getServletContext()); //Organisation org = (Organisation)service.findById(Organisation.class, orgId); - ExcelUserImportFileParser parser = new ExcelUserImportFileParser(service, messageService); + ExcelUserImportFileParser parser = new ExcelUserImportFileParser(service, messageService, auditService); List results = parser.parseSpreadsheet(file); int successful = 0;