Correctly take user ignore types into account
authorTim Düsterhus <duesterhus@woltlab.com>
Fri, 23 Apr 2021 08:59:57 +0000 (10:59 +0200)
committerTim Düsterhus <duesterhus@woltlab.com>
Fri, 23 Apr 2021 08:59:57 +0000 (10:59 +0200)
see WoltLab/WCF#3981
see WoltLab/WCF#4064

files/lib/data/conversation/Conversation.class.php

index 4c306062aee646d1ab4d878b17534aab554ad46f..a008426250c1e216ee44443e599d578c06d96153 100644 (file)
@@ -6,6 +6,7 @@ use wcf\data\conversation\message\ConversationMessage;
 use wcf\data\DatabaseObject;
 use wcf\data\IPopoverObject;
 use wcf\data\user\group\UserGroup;
+use wcf\data\user\ignore\UserIgnore;
 use wcf\data\user\UserProfile;
 use wcf\system\cache\runtime\UserProfileRuntimeCache;
 use wcf\system\conversation\ConversationHandler;
@@ -682,7 +683,7 @@ class Conversation extends DatabaseObject implements IPopoverObject, IRouteContr
             }
 
             // active user is ignored by participant
-            if ($user->isIgnoredUser(WCF::getUser()->userID)) {
+            if ($user->isIgnoredUser(WCF::getUser()->userID, UserIgnore::TYPE_BLOCK_DIRECT_CONTACT)) {
                 throw new UserInputException($field, 'ignoresYou');
             }