Export IP addresses stored with filebase versions
authorMatthias Schmidt <gravatronics@live.com>
Tue, 4 May 2021 11:37:14 +0000 (13:37 +0200)
committerMatthias Schmidt <gravatronics@live.com>
Tue, 4 May 2021 11:37:14 +0000 (13:37 +0200)
See WoltLab/com.woltlab.filebase#146

wcfsetup/install/files/lib/acp/action/UserExportGdprAction.class.php

index 3a300ebc91f2d205eac56210595cc4a13fb7154e..7762964eb6670563e602c292a182da4bc6fda217 100644 (file)
@@ -156,9 +156,6 @@ class UserExportGdprAction extends AbstractAction
         $this->ipAddresses = [
             'com.woltlab.blog' => ['blog' . WCF_N . '_entry '],
             'com.woltlab.calendar' => ['calendar' . WCF_N . '_event'],
-            // do not include filebaseN_file_version here, it lacks a userID column and therefore we cannot
-            // reliably determine if that ip address belongs to the file author, or if it was somebody else,
-            // e. g. moderators or other authors
             'com.woltlab.filebase' => [
                 'filebase' . WCF_N . '_file',
                 'filebase' . WCF_N . '_file_download',
@@ -210,7 +207,12 @@ class UserExportGdprAction extends AbstractAction
                 );
             }
 
-            if ($package === 'com.woltlab.gallery') {
+            if ($package === 'com.woltlab.filebase') {
+                $ipAddresses = \array_merge(
+                    $ipAddresses,
+                    $this->exportIpAddresses('filebase' . WCF_N . '_file_version', 'ipAddress', 'uploadTime', 'userID')
+                );
+            } elseif ($package === 'com.woltlab.gallery') {
                 $ipAddresses = \array_merge(
                     $ipAddresses,
                     $this->exportIpAddresses('gallery' . WCF_N . '_image', 'ipAddress', 'uploadTime', 'userID')