Index: lams_admin/src/java/org/lamsfoundation/lams/admin/service/ImportService.java =================================================================== diff -u -r887b418fede977524af40bed054e33e1eda4f382 -rfebc5ec394566f98439ce776a0be320b34310b0a --- lams_admin/src/java/org/lamsfoundation/lams/admin/service/ImportService.java (.../ImportService.java) (revision 887b418fede977524af40bed054e33e1eda4f382) +++ lams_admin/src/java/org/lamsfoundation/lams/admin/service/ImportService.java (.../ImportService.java) (revision febc5ec394566f98439ce776a0be320b34310b0a) @@ -338,7 +338,7 @@ continue; } else { try { - service.save(user); + service.saveUser(user); successful++; writeAuditLog(user, userDTO); ImportService.log.debug("Row " + i + " saved user: " + user.getLogin()); Index: lams_admin/src/java/org/lamsfoundation/lams/admin/web/UserAction.java =================================================================== diff -u -r2808afde61e72ed316431219a592f53ec2ba05f6 -rfebc5ec394566f98439ce776a0be320b34310b0a --- lams_admin/src/java/org/lamsfoundation/lams/admin/web/UserAction.java (.../UserAction.java) (revision 2808afde61e72ed316431219a592f53ec2ba05f6) +++ lams_admin/src/java/org/lamsfoundation/lams/admin/web/UserAction.java (.../UserAction.java) (revision febc5ec394566f98439ce776a0be320b34310b0a) @@ -380,7 +380,7 @@ UserAction.log.debug("enabling user: " + userId); user.setDisabledFlag(false); - service.save(user); + service.saveUser(user); return mapping.findForward("disabledlist"); } Index: lams_admin/src/java/org/lamsfoundation/lams/admin/web/UserSaveAction.java =================================================================== diff -u -rb366e36dfedfe2cdc66d1fc1052046a62558aea4 -rfebc5ec394566f98439ce776a0be320b34310b0a --- lams_admin/src/java/org/lamsfoundation/lams/admin/web/UserSaveAction.java (.../UserSaveAction.java) (revision b366e36dfedfe2cdc66d1fc1052046a62558aea4) +++ lams_admin/src/java/org/lamsfoundation/lams/admin/web/UserSaveAction.java (.../UserSaveAction.java) (revision febc5ec394566f98439ce776a0be320b34310b0a) @@ -162,7 +162,7 @@ Theme cssTheme = (Theme) UserSaveAction.service.findById(Theme.class, (Long) userForm.get("userTheme")); user.setTheme(cssTheme); - UserSaveAction.service.save(user); + UserSaveAction.service.saveUser(user); } else { // create user //password validation @@ -198,7 +198,7 @@ (Long) userForm.get("userTheme")); user.setTheme(theme); - UserSaveAction.service.save(user); + UserSaveAction.service.saveUser(user); // make 'create user' audit log entry UserSaveAction.service.auditUserCreated(user, AdminConstants.MODULE_NAME); @@ -252,7 +252,7 @@ String passwordHash = HashUtil.sha256(password, salt); user.setSalt(salt); user.setPassword(passwordHash); - UserSaveAction.service.save(user); + UserSaveAction.service.saveUser(user); return mapping.findForward("userChangePass"); } Index: lams_build/lib/lams/lams.jar =================================================================== diff -u -r380ede712d98f28edcaea21f3525f12cc52b3237 -rfebc5ec394566f98439ce776a0be320b34310b0a Binary files differ Index: lams_central/src/java/org/lamsfoundation/lams/web/IndexAction.java =================================================================== diff -u -rf290dd48e471facda515082e1436faa2235143f2 -rfebc5ec394566f98439ce776a0be320b34310b0a --- lams_central/src/java/org/lamsfoundation/lams/web/IndexAction.java (.../IndexAction.java) (revision f290dd48e471facda515082e1436faa2235143f2) +++ lams_central/src/java/org/lamsfoundation/lams/web/IndexAction.java (.../IndexAction.java) (revision febc5ec394566f98439ce776a0be320b34310b0a) @@ -86,7 +86,7 @@ request.setAttribute("firstLogin", true); User user = getUserManagementService().getUserByLogin(userDTO.getLogin()); user.setFirstLogin(false); - getUserManagementService().save(user); + getUserManagementService().saveUser(user); userDTO.setFirstLogin(false); } @@ -244,7 +244,7 @@ if (lastVisitedOrganisationId != null) { User user = userManagementService.getUserByLogin(request.getRemoteUser()); user.setLastVisitedOrganisationId(lastVisitedOrganisationId); - userManagementService.save(user); + userManagementService.saveUser(user); } return null; Index: lams_central/src/java/org/lamsfoundation/lams/web/PasswordChangeAction.java =================================================================== diff -u -rf290dd48e471facda515082e1436faa2235143f2 -rfebc5ec394566f98439ce776a0be320b34310b0a --- lams_central/src/java/org/lamsfoundation/lams/web/PasswordChangeAction.java (.../PasswordChangeAction.java) (revision f290dd48e471facda515082e1436faa2235143f2) +++ lams_central/src/java/org/lamsfoundation/lams/web/PasswordChangeAction.java (.../PasswordChangeAction.java) (revision febc5ec394566f98439ce776a0be320b34310b0a) @@ -112,7 +112,7 @@ user.setSalt(salt); user.setPassword(HashUtil.sha256(password, salt)); user.setChangePassword(false); - service.save(user); + service.saveUser(user); // make 'password changed' audit log entry IAuditService auditService = (IAuditService) ctx.getBean("auditService"); Index: lams_central/src/java/org/lamsfoundation/lams/web/PortraitSaveAction.java =================================================================== diff -u -rc33d82bf97152099b7a309a156ec2707239b622c -rfebc5ec394566f98439ce776a0be320b34310b0a --- lams_central/src/java/org/lamsfoundation/lams/web/PortraitSaveAction.java (.../PortraitSaveAction.java) (revision c33d82bf97152099b7a309a156ec2707239b622c) +++ lams_central/src/java/org/lamsfoundation/lams/web/PortraitSaveAction.java (.../PortraitSaveAction.java) (revision febc5ec394566f98439ce776a0be320b34310b0a) @@ -120,7 +120,7 @@ getCentralToolContentHandler().deleteFile(user.getPortraitUuid()); } user.setPortraitUuid(node.getUuid()); - getService().save(user); + getService().saveUser(user); return mapping.findForward("profile"); } @@ -163,7 +163,7 @@ getCentralToolContentHandler().deleteFile(user.getPortraitUuid()); } user.setPortraitUuid(node.getUuid()); - getService().save(user); + getService().saveUser(user); return null; } Index: lams_central/src/java/org/lamsfoundation/lams/web/ProfileSaveAction.java =================================================================== diff -u -rc33d82bf97152099b7a309a156ec2707239b622c -rfebc5ec394566f98439ce776a0be320b34310b0a --- lams_central/src/java/org/lamsfoundation/lams/web/ProfileSaveAction.java (.../ProfileSaveAction.java) (revision c33d82bf97152099b7a309a156ec2707239b622c) +++ lams_central/src/java/org/lamsfoundation/lams/web/ProfileSaveAction.java (.../ProfileSaveAction.java) (revision febc5ec394566f98439ce776a0be320b34310b0a) @@ -141,7 +141,7 @@ } } - getService().save(requestor); + getService().saveUser(requestor); // replace UserDTO in the shared session HttpSession ss = SessionManager.getSession(); Index: lams_central/src/java/org/lamsfoundation/lams/web/TutorialAction.java =================================================================== diff -u -r51fb2a37254f24bb2a805d4ffd54482c779f43fa -rfebc5ec394566f98439ce776a0be320b34310b0a --- lams_central/src/java/org/lamsfoundation/lams/web/TutorialAction.java (.../TutorialAction.java) (revision 51fb2a37254f24bb2a805d4ffd54482c779f43fa) +++ lams_central/src/java/org/lamsfoundation/lams/web/TutorialAction.java (.../TutorialAction.java) (revision febc5ec394566f98439ce776a0be320b34310b0a) @@ -73,7 +73,7 @@ User user = getService().getUserByLogin(userDTO.getLogin()); user.getPagesWithDisabledTutorials().add(pageString); - getService().save(user); + getService().saveUser(user); ss.setAttribute(AttributeNames.USER, user.getUserDTO()); @@ -99,7 +99,7 @@ User user = getService().getUserByLogin(userDTO.getLogin()); user.getPagesWithDisabledTutorials().remove(pageString); - getService().save(user); + getService().saveUser(user); ss.setAttribute(AttributeNames.USER, user.getUserDTO()); @@ -152,7 +152,7 @@ User user = getService().getUserByLogin(userDTO.getLogin()); user.setTutorialsDisabled(true); - getService().save(user); + getService().saveUser(user); ss.setAttribute(AttributeNames.USER, user.getUserDTO()); Index: lams_central/src/java/org/lamsfoundation/lams/web/action/TwoFactorAuthenticationAction.java =================================================================== diff -u -rc33d82bf97152099b7a309a156ec2707239b622c -rfebc5ec394566f98439ce776a0be320b34310b0a --- lams_central/src/java/org/lamsfoundation/lams/web/action/TwoFactorAuthenticationAction.java (.../TwoFactorAuthenticationAction.java) (revision c33d82bf97152099b7a309a156ec2707239b622c) +++ lams_central/src/java/org/lamsfoundation/lams/web/action/TwoFactorAuthenticationAction.java (.../TwoFactorAuthenticationAction.java) (revision febc5ec394566f98439ce776a0be320b34310b0a) @@ -61,7 +61,7 @@ String sharedSecret = key.getKey(); loggedInUser.setTwoFactorAuthenticationSecret(sharedSecret); - userManagementService.save(loggedInUser); + userManagementService.saveUser(loggedInUser); request.setAttribute("sharedSecret", sharedSecret); String QRCode = GoogleAuthenticatorQRGenerator.getOtpAuthURL(null, "LAMS account: " + loggedInUser.getLogin(), key); Index: lams_central/src/java/org/lamsfoundation/lams/web/lamscommunity/LamsCommunityLoginAction.java =================================================================== diff -u -r51fb2a37254f24bb2a805d4ffd54482c779f43fa -rfebc5ec394566f98439ce776a0be320b34310b0a --- lams_central/src/java/org/lamsfoundation/lams/web/lamscommunity/LamsCommunityLoginAction.java (.../LamsCommunityLoginAction.java) (revision 51fb2a37254f24bb2a805d4ffd54482c779f43fa) +++ lams_central/src/java/org/lamsfoundation/lams/web/lamscommunity/LamsCommunityLoginAction.java (.../LamsCommunityLoginAction.java) (revision febc5ec394566f98439ce776a0be320b34310b0a) @@ -161,7 +161,7 @@ User user = getUser(request); user.setLamsCommunityUsername(loginForm.getLcUserName()); user.setLamsCommunityToken(result[1]); - getService().save(user); + getService().saveUser(user); // then login return loginToLamsCommunity(mapping, form, request, response); Index: lams_central/src/java/org/lamsfoundation/lams/web/planner/PedagogicalPlannerAction.java =================================================================== diff -u -r51fb2a37254f24bb2a805d4ffd54482c779f43fa -rfebc5ec394566f98439ce776a0be320b34310b0a --- lams_central/src/java/org/lamsfoundation/lams/web/planner/PedagogicalPlannerAction.java (.../PedagogicalPlannerAction.java) (revision 51fb2a37254f24bb2a805d4ffd54482c779f43fa) +++ lams_central/src/java/org/lamsfoundation/lams/web/planner/PedagogicalPlannerAction.java (.../PedagogicalPlannerAction.java) (revision febc5ec394566f98439ce776a0be320b34310b0a) @@ -1669,7 +1669,7 @@ Long recentLD = iter.next(); if (recentLD.equals(learningDesignId)) { iter.remove(); - getUserManagementService().save(user); + getUserManagementService().saveUser(user); ldFound = true; break; } Index: lams_central/src/java/org/lamsfoundation/lams/webservice/RegisterAction.java =================================================================== diff -u -r11b64f81e406ff277c7c35988304b0064300de57 -rfebc5ec394566f98439ce776a0be320b34310b0a --- lams_central/src/java/org/lamsfoundation/lams/webservice/RegisterAction.java (.../RegisterAction.java) (revision 11b64f81e406ff277c7c35988304b0064300de57) +++ lams_central/src/java/org/lamsfoundation/lams/webservice/RegisterAction.java (.../RegisterAction.java) (revision febc5ec394566f98439ce776a0be320b34310b0a) @@ -582,7 +582,7 @@ Set userOrganisations = user.getUserOrganisations(); userOrganisations.remove(userOrganisation); - userManagementService.save(user); + userManagementService.saveUser(user); // userOrganisation and UserOrganisationRoles will be deleted by Hibernate automatically. } Index: lams_common/src/java/org/lamsfoundation/lams/integration/service/IntegrationService.java =================================================================== diff -u -r11b64f81e406ff277c7c35988304b0064300de57 -rfebc5ec394566f98439ce776a0be320b34310b0a --- lams_common/src/java/org/lamsfoundation/lams/integration/service/IntegrationService.java (.../IntegrationService.java) (revision 11b64f81e406ff277c7c35988304b0064300de57) +++ lams_common/src/java/org/lamsfoundation/lams/integration/service/IntegrationService.java (.../IntegrationService.java) (revision febc5ec394566f98439ce776a0be320b34310b0a) @@ -210,7 +210,7 @@ uo = new UserOrganisation(user, org); service.save(uo); user.addUserOrganisation(uo); - service.save(user); + service.saveUser(user); } Integer[] roles; @@ -330,7 +330,7 @@ user.setEmail(email); user.setModifiedDate(new Date()); user.setLocale(LanguageUtil.getSupportedLocale(language, country)); - service.save(user); + service.saveUser(user); return extUserUseridMap; @@ -445,7 +445,7 @@ user.setDisabledFlag(false); user.setLocale(LanguageUtil.getSupportedLocale(userData[13], userData[12])); user.setTheme(service.getDefaultTheme()); - service.save(user); + service.saveUser(user); ExtUserUseridMap extUserUseridMap = new ExtUserUseridMap(); extUserUseridMap.setExtServer(extServer); extUserUseridMap.setExtUsername(extUsername); Index: lams_common/src/java/org/lamsfoundation/lams/signup/service/SignupService.java =================================================================== diff -u -r5773f84ed608838de3521ecde87c52f3c72d478c -rfebc5ec394566f98439ce776a0be320b34310b0a --- lams_common/src/java/org/lamsfoundation/lams/signup/service/SignupService.java (.../SignupService.java) (revision 5773f84ed608838de3521ecde87c52f3c72d478c) +++ lams_common/src/java/org/lamsfoundation/lams/signup/service/SignupService.java (.../SignupService.java) (revision febc5ec394566f98439ce776a0be320b34310b0a) @@ -37,7 +37,7 @@ user.setAuthenticationMethod(getAuthenticationMethod(AuthenticationMethod.DB)); user.setLocale(getDefaultLocale()); user.setCreateDate(new Date()); - userManagementService.save(user); + userManagementService.saveUser(user); // add to org SignupOrganisation signup = signupDAO.getSignupOrganisation(context); Index: lams_common/src/java/org/lamsfoundation/lams/usermanagement/service/IUserManagementService.java =================================================================== diff -u -r353fe07604639c2166ed68fbf832810959f3f3cf -rfebc5ec394566f98439ce776a0be320b34310b0a --- lams_common/src/java/org/lamsfoundation/lams/usermanagement/service/IUserManagementService.java (.../IUserManagementService.java) (revision 353fe07604639c2166ed68fbf832810959f3f3cf) +++ lams_common/src/java/org/lamsfoundation/lams/usermanagement/service/IUserManagementService.java (.../IUserManagementService.java) (revision febc5ec394566f98439ce776a0be320b34310b0a) @@ -58,6 +58,8 @@ * The object to be inserted */ void save(Object object); + + User saveUser(User user); /** * Remove an object from the database. Index: lams_common/src/java/org/lamsfoundation/lams/usermanagement/service/LdapService.java =================================================================== diff -u -r51fb2a37254f24bb2a805d4ffd54482c779f43fa -rfebc5ec394566f98439ce776a0be320b34310b0a --- lams_common/src/java/org/lamsfoundation/lams/usermanagement/service/LdapService.java (.../LdapService.java) (revision 51fb2a37254f24bb2a805d4ffd54482c779f43fa) +++ lams_common/src/java/org/lamsfoundation/lams/usermanagement/service/LdapService.java (.../LdapService.java) (revision febc5ec394566f98439ce776a0be320b34310b0a) @@ -102,7 +102,7 @@ user.setMobilePhone(map.get("mobile")); user.setLocale(getLocale(map.get("locale"))); user.setDisabledFlag(getDisabledBoolean(attrs)); - getService().save(user); + getService().saveUser(user); } // tries to match ldap attribute to a locale, otherwise returns server @@ -162,7 +162,7 @@ user.setTimeZone(user.getTimeZone()); user.setTutorialsDisabled(false); user.setFirstLogin(true); - service.save(user); + service.saveUser(user); service.auditUserCreated(user, "common"); return true; } else { Index: lams_common/src/java/org/lamsfoundation/lams/usermanagement/service/UserManagementService.java =================================================================== diff -u -r353fe07604639c2166ed68fbf832810959f3f3cf -rfebc5ec394566f98439ce776a0be320b34310b0a --- lams_common/src/java/org/lamsfoundation/lams/usermanagement/service/UserManagementService.java (.../UserManagementService.java) (revision 353fe07604639c2166ed68fbf832810959f3f3cf) +++ lams_common/src/java/org/lamsfoundation/lams/usermanagement/service/UserManagementService.java (.../UserManagementService.java) (revision febc5ec394566f98439ce776a0be320b34310b0a) @@ -99,7 +99,7 @@ private IUserDAO userDAO; private IUserOrganisationDAO userOrganisationDAO; - + private IFavoriteOrganisationDAO favoriteOrganisationDAO; protected MessageService messageService; @@ -112,14 +112,10 @@ @Override public void save(Object object) { - if (object instanceof User) { - User user = (User) object; - object = saveUser(user); - } baseDAO.insertOrUpdate(object); } - protected User saveUser(User user) { + public User saveUser(User user) { if (user != null) { // create user if (user.getUserId() == null) { @@ -246,30 +242,30 @@ return users; } - + @Override public List getFavoriteOrganisationsByUser(Integer userId) { return favoriteOrganisationDAO.getFavoriteOrganisationsByUser(userId); } - + @Override public boolean isOrganisationFavorite(Integer organisationId, Integer userId) { return favoriteOrganisationDAO.isOrganisationFavorite(organisationId, userId); } - + @Override public void toggleOrganisationFavorite(Integer orgId, Integer userId) { FavoriteOrganisation favoriteOrganisation = favoriteOrganisationDAO.getFavoriteOrganisation(orgId, userId); - + //create new favoriteOrganisation if it doesn't exist if (favoriteOrganisation == null) { - + User user = (User) findById(User.class, userId); Organisation organisation = (Organisation) findById(Organisation.class, orgId); favoriteOrganisation = new FavoriteOrganisation(user, organisation); save(favoriteOrganisation); - - //remove favoriteOrganisation if it existed + + //remove favoriteOrganisation if it existed } else { delete(favoriteOrganisation); } @@ -590,7 +586,7 @@ iter.remove(); } log.debug("disabling user " + user.getLogin()); - save(user); + saveUser(user); } @Override @@ -668,7 +664,7 @@ } } uo.setUserOrganisationRoles(uors); - save(user); + saveUser(user); // make sure group managers have monitor and learner in each subgroup checkGroupManager(user, org); } @@ -913,7 +909,7 @@ String searchString) { return organisationDAO.getActiveCoursesByUser(userId, isSysadmin, page, size, searchString); } - + @Override public int getCountActiveCoursesByUser(Integer userId, boolean isSysadmin, String searchString) { return organisationDAO.getCountActiveCoursesByUser(userId, isSysadmin, searchString); @@ -1029,7 +1025,7 @@ public void setUserOrganisationDAO(IUserOrganisationDAO userOrganisationDAO) { this.userOrganisationDAO = userOrganisationDAO; } - + public void setFavoriteOrganisationDAO(IFavoriteOrganisationDAO favoriteOrganisationDAO) { this.favoriteOrganisationDAO = favoriteOrganisationDAO; }