From 84a50ecfa58dd4a512a90ed1bbc7d75e83d22bb0 Mon Sep 17 00:00:00 2001 From: Ron Lucke <lucke@elan-ev.de> Date: Fri, 23 Aug 2024 09:12:01 +0000 Subject: [PATCH] =?UTF-8?q?Zusammenf=C3=BChren=20von=20Accounts=20nimmt=20?= =?UTF-8?q?keine=20Courseware-Inhalte=20mit?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Closes #2492 Merge request studip/studip!3311 --- lib/models/User.php | 86 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 86 insertions(+) diff --git a/lib/models/User.php b/lib/models/User.php index be0db840d99..08605d8db1f 100644 --- a/lib/models/User.php +++ b/lib/models/User.php @@ -1333,6 +1333,92 @@ class User extends AuthUserMd5 implements Range, PrivacyObject, Studip\Calendar\ AND range_type = 'user'"; DBManager::get()->execute($query, [$new_id, $old_id]); + // Courseware + $query = "UPDATE IGNORE cw_blocks SET owner_id = ? WHERE owner_id = ?"; + $statement = DBManager::get()->prepare($query); + $statement->execute([$new_id, $old_id]); + $query = "UPDATE IGNORE cw_blocks SET editor_id = ? WHERE editor_id = ?"; + $statement = DBManager::get()->prepare($query); + $statement->execute([$new_id, $old_id]); + $query = "UPDATE IGNORE cw_blocks SET edit_blocker_id = ? WHERE edit_blocker_id = ?"; + $statement = DBManager::get()->prepare($query); + $statement->execute([$new_id, $old_id]); + + $query = "UPDATE IGNORE cw_block_comments SET user_id = ? WHERE user_id = ?"; + $statement = DBManager::get()->prepare($query); + $statement->execute([$new_id, $old_id]); + $query = "UPDATE IGNORE cw_block_feedbacks SET user_id = ? WHERE user_id = ?"; + $statement = DBManager::get()->prepare($query); + $statement->execute([$new_id, $old_id]); + $query = "UPDATE IGNORE cw_bookmarks SET user_id = ? WHERE user_id = ?"; + $statement = DBManager::get()->prepare($query); + $statement->execute([$new_id, $old_id]); + $query = "UPDATE IGNORE cw_certificates SET user_id = ? WHERE user_id = ?"; + $statement = DBManager::get()->prepare($query); + $statement->execute([$new_id, $old_id]); + $query = "UPDATE IGNORE cw_clipboards SET user_id = ? WHERE user_id = ?"; + $statement = DBManager::get()->prepare($query); + $statement->execute([$new_id, $old_id]); + + $query = "UPDATE IGNORE cw_containers SET owner_id = ? WHERE owner_id = ?"; + $statement = DBManager::get()->prepare($query); + $statement->execute([$new_id, $old_id]); + $query = "UPDATE IGNORE cw_containers SET editor_id = ? WHERE editor_id = ?"; + $statement = DBManager::get()->prepare($query); + $statement->execute([$new_id, $old_id]); + $query = "UPDATE IGNORE cw_containers SET edit_blocker_id = ? WHERE edit_blocker_id = ?"; + $statement = DBManager::get()->prepare($query); + $statement->execute([$new_id, $old_id]); + + $query = "UPDATE IGNORE cw_public_links SET user_id = ? WHERE user_id = ?"; + $statement = DBManager::get()->prepare($query); + $statement->execute([$new_id, $old_id]); + + $query = "UPDATE IGNORE cw_structural_elements SET range_id = ? WHERE range_id = ?"; + $statement = DBManager::get()->prepare($query); + $statement->execute([$new_id, $old_id]); + $query = "UPDATE IGNORE cw_structural_elements SET owner_id = ? WHERE owner_id = ?"; + $statement = DBManager::get()->prepare($query); + $statement->execute([$new_id, $old_id]); + $query = "UPDATE IGNORE cw_structural_elements SET editor_id = ? WHERE editor_id = ?"; + $statement = DBManager::get()->prepare($query); + $statement->execute([$new_id, $old_id]); + $query = "UPDATE IGNORE cw_structural_elements SET edit_blocker_id = ? WHERE edit_blocker_id = ?"; + $statement = DBManager::get()->prepare($query); + $statement->execute([$new_id, $old_id]); + + $query = "UPDATE IGNORE cw_structural_element_comments SET user_id = ? WHERE user_id = ?"; + $statement = DBManager::get()->prepare($query); + $statement->execute([$new_id, $old_id]); + $query = "UPDATE IGNORE cw_structural_element_feedbacks SET user_id = ? WHERE user_id = ?"; + $statement = DBManager::get()->prepare($query); + + $query = "UPDATE IGNORE cw_tasks SET solver_id = ? WHERE solver_id = ?"; + $statement = DBManager::get()->prepare($query); + $statement->execute([$new_id, $old_id]); + $query = "UPDATE IGNORE cw_task_feedbacks SET lecturer_id = ? WHERE lecturer_id = ?"; + $statement = DBManager::get()->prepare($query); + $statement->execute([$new_id, $old_id]); + $query = "UPDATE IGNORE cw_task_groups SET lecturer_id = ? WHERE lecturer_id = ?"; + $statement = DBManager::get()->prepare($query); + $statement->execute([$new_id, $old_id]); + + $query = "UPDATE IGNORE cw_units SET range_id = ? WHERE range_id = ?"; + $statement = DBManager::get()->prepare($query); + $statement->execute([$new_id, $old_id]); + $query = "UPDATE IGNORE cw_units SET creator_id = ? WHERE creator_id = ?"; + $statement = DBManager::get()->prepare($query); + $statement->execute([$new_id, $old_id]); + + $query = "UPDATE IGNORE cw_user_data_fields SET user_id = ? WHERE user_id = ?"; + $statement = DBManager::get()->prepare($query); + $statement->execute([$new_id, $old_id]); + + $query = "UPDATE IGNORE cw_user_progresses SET user_id = ? WHERE user_id = ?"; + $statement = DBManager::get()->prepare($query); + $statement->execute([$new_id, $old_id]); + + NotificationCenter::postNotification('UserDidMigrate', $old_id, $new_id); $messages[] = _('Dateien, Termine, Adressbuch, Nachrichten und weitere Daten wurden migriert.'); -- GitLab