summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'UserMerge/includes/UserMergeLogger.php')
-rw-r--r--UserMerge/includes/UserMergeLogger.php42
1 files changed, 42 insertions, 0 deletions
diff --git a/UserMerge/includes/UserMergeLogger.php b/UserMerge/includes/UserMergeLogger.php
new file mode 100644
index 00000000..8c63d075
--- /dev/null
+++ b/UserMerge/includes/UserMergeLogger.php
@@ -0,0 +1,42 @@
+<?php
+
+class UserMergeLogger implements IUserMergeLogger {
+
+ /**
+ * Adds a merge log entry
+ *
+ * @param User $performer
+ * @param User $oldUser
+ * @param User $newUser
+ */
+ public function addMergeEntry( User $performer, User $oldUser, User $newUser ) {
+ $logEntry = new ManualLogEntry( 'usermerge', 'mergeuser' );
+ $logEntry->setPerformer( $performer );
+ $logEntry->setTarget( $newUser->getUserPage() );
+ $logEntry->setParameters( [
+ 'oldName' => $oldUser->getName(),
+ 'oldId' => $oldUser->getId(),
+ 'newName' => $newUser->getName(),
+ 'newId' => $newUser->getId(),
+ ] );
+ $logEntry->setRelations( [ 'oldname' => $oldUser->getName() ] );
+ $logEntry->insert();
+ }
+
+ /**
+ * Adds a user deletion log entry
+ *
+ * @param User $performer
+ * @param User $oldUser
+ */
+ public function addDeleteEntry( User $performer, User $oldUser ) {
+ $logEntry = new ManualLogEntry( 'usermerge', 'deleteuser' );
+ $logEntry->setPerformer( $performer );
+ $logEntry->setTarget( $oldUser->getUserPage() );
+ $logEntry->setParameters( [
+ 'oldName' => $oldUser->getName(),
+ 'oldId' => $oldUser->getId(),
+ ] );
+ $logEntry->insert();
+ }
+}