diff --git a/lib/ilias_interface/ConnectedIlias.class.php b/lib/ilias_interface/ConnectedIlias.class.php index c724081dc93e64d3bb1a2b9a7e599fda0c2e9a4c..6ae419a65545090bf5deb53d3fc81b9cd41ac213 100644 --- a/lib/ilias_interface/ConnectedIlias.class.php +++ b/lib/ilias_interface/ConnectedIlias.class.php @@ -349,7 +349,6 @@ class ConnectedIlias } else { $role_id = 4; } - $this->soap_client->setCachingStatus(false); $this->soap_client->clearCache(); $user_id = $this->soap_client->addUser($user_data, $role_id); @@ -1026,17 +1025,19 @@ class ConnectedIlias */ public function checkUser() { - $user_exists = $this->soap_client->getUser($this->user->getId()); - if (!is_array($user_exists)) { - $admin_user_id = $this->soap_client->lookupUser($this->ilias_config['admin']); - $admin_user_exists = $this->soap_client->getUser($admin_user_id); - if (is_array($admin_user_exists)) { - $this->user->unsetConnection(true); - if ($this->newUser()) { - PageLayout::postSuccess(_("Neue Verknüpfung zu ILIAS-User angelegt.")); + if ($this->user->getId()) { + $user_exists = $this->soap_client->getUser($this->user->getId()); + if (!is_array($user_exists)) { + $admin_user_id = $this->soap_client->lookupUser($this->ilias_config['admin']); + $admin_user_exists = $this->soap_client->getUser($admin_user_id); + if (is_array($admin_user_exists)) { + $this->user->unsetConnection(true); + if ($this->newUser()) { + PageLayout::postSuccess(_("Neue Verknüpfung zu ILIAS-User angelegt.")); + } } - } - } else return true; + } else return true; + } return false; } diff --git a/lib/ilias_interface/IliasSoap.class.php b/lib/ilias_interface/IliasSoap.class.php index 6d5a84560eec509e92f794200acf1a975a0b5377..a3e2f4e5709f6ab9f62b2f741cb9382a3af910b3 100644 --- a/lib/ilias_interface/IliasSoap.class.php +++ b/lib/ilias_interface/IliasSoap.class.php @@ -1038,7 +1038,7 @@ class IliasSoap extends StudipSoapClient $update = $user_data["id"]; $usr_xml = "<Users> -<User".($update ? ' Id="'.$user_data["id"].'"' : '')." Action=".($update ? '"Update"' : '"Insert"')."> +<User ".($update ? 'Id="'.$user_data["id"].'"' : 'Id=""')." Action=".($update ? '"Update"' : '"Insert"')."> <UDFDefinitions></UDFDefinitions> <Login>".$user_data["login"]."</Login> <Password Type=\"PLAIN\">".$user_data["passwd"]."</Password> @@ -1070,7 +1070,7 @@ class IliasSoap extends StudipSoapClient 'sid' => $this->getSID(), 'folder_id' => -1, 'usr_xml' => $usr_xml, - 'conflict_role' => 1, + 'conflict_rule' => 1, 'send_account_mail' => 0 ]; $result = $this->call('importUsers', $param);