use of org.olat.core.id.User in project OpenOLAT by OpenOLAT.
the class OLATUpgrade_8_4_0 method checkMailOfDeletedUsers.
private boolean checkMailOfDeletedUsers(UpgradeManager upgradeManager, UpgradeHistoryData uhd) {
if (!uhd.getBooleanDataValue(TASK_CHECK_MAIL_DELETED_USERS)) {
int counter = 0;
List<Identity> deletedIdentities;
do {
SearchIdentityParams params = new SearchIdentityParams();
params.setStatus(new Integer(Identity.STATUS_DELETED));
deletedIdentities = securityManager.getIdentitiesByPowerSearch(params, counter, BATCH_SIZE);
for (Identity deletedIdentity : deletedIdentities) {
User deletedUser = deletedIdentity.getUser();
boolean changed = processDeletedIdentityEmail(deletedUser, UserConstants.EMAIL);
changed |= processDeletedIdentityEmail(deletedUser, UserConstants.INSTITUTIONALEMAIL);
if (changed) {
UserManager.getInstance().updateUser(deletedUser);
log.audit("Update emails of deleted identity: " + deletedIdentity.getName() + " with key: " + deletedIdentity.getKey());
}
}
counter += deletedIdentities.size();
log.audit("Processed deleted identities: " + deletedIdentities.size());
dbInstance.intermediateCommit();
} while (deletedIdentities.size() == BATCH_SIZE);
uhd.setBooleanDataValue(TASK_CHECK_MAIL_DELETED_USERS, true);
upgradeManager.setUpgradesHistory(uhd, VERSION);
}
return true;
}
use of org.olat.core.id.User in project OpenOLAT by OpenOLAT.
the class UserPrefsResetForm method formOK.
@Override
protected void formOK(UserRequest ureq) {
if (resetElements.isAtLeastSelected(1)) {
// Log out user first if logged in
boolean logout = false;
Set<UserSession> sessions = sessionManager.getAuthenticatedUserSessions();
for (UserSession session : sessions) {
Identity ident = session.getIdentity();
if (ident != null && tobeChangedIdentity.equalsByPersistableKey(ident)) {
sessionManager.signOffAndClear(session);
logout = true;
break;
}
}
// Delete gui prefs
if (resetElements.isSelected(0)) {
PropertyManager pm = PropertyManager.getInstance();
pm.deleteProperties(tobeChangedIdentity, null, null, null, "v2guipreferences");
}
// Reset preferences
if (resetElements.isSelected(1)) {
UserManager um = UserManager.getInstance();
User user = um.loadUserByKey(tobeChangedIdentity.getUser().getKey());
org.olat.core.id.Preferences preferences = user.getPreferences();
preferences.setFontsize(null);
preferences.setNotificationInterval(null);
preferences.setPresenceMessagesPublic(false);
preferences.setReceiveRealMail(null);
um.updateUser(user);
PropertyManager pm = PropertyManager.getInstance();
pm.deleteProperties(tobeChangedIdentity, null, null, null, "charset");
}
// Reset history
if (resetElements.isSelected(2)) {
HistoryManager.getInstance().deleteHistory(tobeChangedIdentity);
}
// reset form buttons
resetElements.uncheckAll();
if (logout) {
// if logout, need a redirect to the login page
String lang = i18nModule.getLocaleKey(ureq.getLocale());
ureq.getDispatchResult().setResultingMediaResource(new RedirectMediaResource(WebappHelper.getServletContextPath() + "/dmz/?lang=" + lang + "&logout=true"));
}
}
}
use of org.olat.core.id.User in project OpenOLAT by OpenOLAT.
the class ShibbolethAttributesTest method shouldRemovePropertyFromSyncedUserIfNotPresentInShibboleth.
@Test
public void shouldRemovePropertyFromSyncedUserIfNotPresentInShibboleth() {
User user = getIdenticalOlatUser();
user.setProperty(USER_CITY_KEY, USER_OLD_VALUE);
when(differenceCheckerMock.isDifferent(SHIB_CITY_KEY, SHIB_CITY_VALUE_NULL, USER_OLD_VALUE)).thenReturn(true);
User syncedUser = sut.syncUser(user);
assertThat(syncedUser.getProperty(USER_CITY_KEY, null)).isEqualTo(SHIB_CITY_VALUE_NULL);
}
use of org.olat.core.id.User in project OpenOLAT by OpenOLAT.
the class ShibbolethAttributesTest method shouldReturnFalseIfNoAttributeHasChanged.
@Test
public void shouldReturnFalseIfNoAttributeHasChanged() {
User user = getIdenticalOlatUser();
boolean hasDifference = sut.hasDifference(user);
assertThat(hasDifference).isFalse();
}
use of org.olat.core.id.User in project OpenOLAT by OpenOLAT.
the class ShibbolethAttributesTest method shouldChangeChangedPropertyOfSyncedUser.
@Test
public void shouldChangeChangedPropertyOfSyncedUser() {
User user = getIdenticalOlatUser();
user.setProperty(USER_NAME_KEY, USER_OLD_VALUE);
User syncedUser = sut.syncUser(user);
assertThat(syncedUser.getProperty(USER_CITY_KEY, null)).isEqualTo(SHIB_CITY_VALUE_NULL);
}
Aggregations