/** * update existing user * * @access protected */ protected function updateUser(ilECSUser $user, $a_local_user_id) { global $ilClientIniFile, $ilLog, $rbacadmin; $user_obj = new ilObjUser($a_local_user_id); $user_obj->setFirstname($user->getFirstname()); $user_obj->setLastname($user->getLastname()); $user_obj->setEmail($user->getEmail()); $user_obj->setInstitution($user->getInstitution()); $user_obj->setActive(true); $until = $user_obj->getTimeLimitUntil(); $user_obj->setTimeLimitFrom(time() - 5); if ($until < time() + $ilClientIniFile->readVariable('session', 'expire')) { $user_obj->setTimeLimitUntil(time() + $ilClientIniFile->readVariable("session", "expire")); } $user_obj->update(); $user_obj->refreshLogin(); if ($global_role = $this->getCurrentServer()->getGlobalRole()) { $rbacadmin->assignUser($this->getCurrentServer()->getGlobalRole(), $user_obj->getId(), true); } $ilLog->write(__METHOD__ . ': Finished update of remote user with usr_id: ' . $user->getImportId()); return $user_obj->getLogin(); }