Include the name of the blacklist matches for disabled users
authorAlexander Ebert <ebert@woltlab.com>
Thu, 25 Jul 2019 10:21:47 +0000 (12:21 +0200)
committerAlexander Ebert <ebert@woltlab.com>
Thu, 25 Jul 2019 10:21:47 +0000 (12:21 +0200)
See #2948

wcfsetup/install/files/lib/data/user/User.class.php
wcfsetup/install/lang/de.xml
wcfsetup/install/lang/en.xml

index a0eee159c3c06f9d5f4b913b2c245149fa152966..e167da20fd4991db5e01555a3f1e381653be4f77 100644 (file)
@@ -613,4 +613,18 @@ final class User extends DatabaseObject implements IRouteController, IUserConten
                
                return [];
        }
+       
+       /**
+        * Returns a human readable list of fields that have positive matches against the
+        * blacklist. If you require the raw field names, please use `getBlacklistMatches()`
+        * instead.
+        * 
+        * @return string[]
+        * @since 5.2
+        */
+       public function getBlacklistMatchesTitle() {
+               return array_map(function($field) {
+                       return WCF::getLanguage()->get('wcf.user.' . $field);
+               }, $this->getBlacklistMatches());
+       }
 }
index 9590923f6d17c4ecc1d54ca446118ef934837b49..bb7733a34aef46d8a51e610c04aabcdeb388a0eb 100644 (file)
@@ -4625,7 +4625,7 @@ sich{/if} nicht bei uns registriert {if LANGUAGE_USE_INFORMAL_VARIANT}hast{else}
                <item name="wcf.user.articles"><![CDATA[Artikel]]></item>
                <item name="wcf.user.status.banned"><![CDATA[Der Benutzer ist gesperrt.]]></item>
                <item name="wcf.user.status.isDisabled"><![CDATA[Der Benutzer ist nicht freigeschaltet.]]></item>
-               <item name="wcf.user.status.blacklistMatches"><![CDATA[Der Benutzer wurde aufgrund eines Treffers in der Datenbank von „Stop Forum Spam“ automatisch deaktiviert.]]></item>
+               <item name="wcf.user.status.blacklistMatches"><![CDATA[Der Benutzer wurde aufgrund eines Treffers in der Datenbank von „Stop Forum Spam“ automatisch deaktiviert (Übereinstimmungen: {implode glue=', ' from=$user->getBlacklistMatchesTitle() item=matchLabel}{$matchLabel}{/implode}).]]></item>
        </category>
        <category name="wcf.user.menu">
                <item name="wcf.user.menu.community"><![CDATA[Community]]></item>
index 3b830470689bca50d27dda7c57144d3cc5c142f3..231c2d4597308315fc625052757a48423bc803b4 100644 (file)
@@ -4622,7 +4622,7 @@ not register with us.]]></item>
                <item name="wcf.user.articles"><![CDATA[Articles]]></item>
                <item name="wcf.user.status.banned"><![CDATA[The user has been banned.]]></item>
                <item name="wcf.user.status.isDisabled"><![CDATA[The user has not been approved yet.]]></item>
-               <item name="wcf.user.status.blacklistMatches"><![CDATA[The user has been automatically disabled because of matches in the “Stop Forum Spam” database.]]></item>
+               <item name="wcf.user.status.blacklistMatches"><![CDATA[The user has been automatically disabled because of matches in the “Stop Forum Spam” database (Matches: {implode glue=', ' from=$user->getBlacklistMatchesTitle() item=matchLabel}{$matchLabel}{/implode}).]]></item>
        </category>
        <category name="wcf.user.menu">
                <item name="wcf.user.menu.community"><![CDATA[Community]]></item>