MDL-63289 message: Deprecate is_user_non_contact_blocked method
authorSara Arjona <sara@moodle.com>
Thu, 18 Oct 2018 15:48:24 +0000 (17:48 +0200)
committerSara Arjona <sara@moodle.com>
Sat, 20 Oct 2018 06:36:24 +0000 (08:36 +0200)
This function has been deprecated and no other function has been
added to replace it. It was only called from can_post_message, so
its code has been moved there.

message/classes/api.php
message/tests/api_test.php
message/upgrade.txt

index 5c1b04f..9eb9759 100644 (file)
@@ -987,11 +987,14 @@ class api {
      * contact. If not then it checks to make sure the sender is in the
      * recipient's contacts.
      *
      * contact. If not then it checks to make sure the sender is in the
      * recipient's contacts.
      *
+     * @deprecated since 3.6
      * @param \stdClass $recipient The user object.
      * @param \stdClass|null $sender The user object.
      * @return bool true if $sender is blocked, false otherwise.
      */
     public static function is_user_non_contact_blocked($recipient, $sender = null) {
      * @param \stdClass $recipient The user object.
      * @param \stdClass|null $sender The user object.
      * @return bool true if $sender is blocked, false otherwise.
      */
     public static function is_user_non_contact_blocked($recipient, $sender = null) {
+        debugging('\core_message\api::is_user_non_contact_blocked() is deprecated', DEBUG_DEVELOPER);
+
         global $USER, $CFG;
 
         if (is_null($sender)) {
         global $USER, $CFG;
 
         if (is_null($sender)) {
index 3bcb7d7..545f277 100644 (file)
@@ -1582,28 +1582,33 @@ class core_message_api_testcase extends core_message_messagelib_testcase {
 
         // By default, user only can be messaged by contacts and members of any of his/her courses.
         $this->assertTrue(\core_message\api::is_user_non_contact_blocked($user2));
 
         // By default, user only can be messaged by contacts and members of any of his/her courses.
         $this->assertTrue(\core_message\api::is_user_non_contact_blocked($user2));
+        $this->assertDebuggingCalled();
 
         // Enable all users privacy messaging and check now the default user's preference has been set to allow receiving
         // messages from everybody.
         set_config('messagingallusers', true);
         // Check that the return result is now false because any site user can contact him/her.
         $this->assertFalse(\core_message\api::is_user_non_contact_blocked($user2));
 
         // Enable all users privacy messaging and check now the default user's preference has been set to allow receiving
         // messages from everybody.
         set_config('messagingallusers', true);
         // Check that the return result is now false because any site user can contact him/her.
         $this->assertFalse(\core_message\api::is_user_non_contact_blocked($user2));
+        $this->assertDebuggingCalled();
 
         // Set the second user's preference to not receive messages from non-contacts.
         set_user_preference('message_blocknoncontacts', \core_message\api::MESSAGE_PRIVACY_ONLYCONTACTS, $user2->id);
         // Check that the return result is still true (because is even more restricted).
         $this->assertTrue(\core_message\api::is_user_non_contact_blocked($user2));
 
         // Set the second user's preference to not receive messages from non-contacts.
         set_user_preference('message_blocknoncontacts', \core_message\api::MESSAGE_PRIVACY_ONLYCONTACTS, $user2->id);
         // Check that the return result is still true (because is even more restricted).
         $this->assertTrue(\core_message\api::is_user_non_contact_blocked($user2));
+        $this->assertDebuggingCalled();
 
         // Add the first user as a contact for the second user.
         \core_message\api::add_contact($user2->id, $user1->id);
 
         // Check that the return result is now false.
         $this->assertFalse(\core_message\api::is_user_non_contact_blocked($user2));
 
         // Add the first user as a contact for the second user.
         \core_message\api::add_contact($user2->id, $user1->id);
 
         // Check that the return result is now false.
         $this->assertFalse(\core_message\api::is_user_non_contact_blocked($user2));
+        $this->assertDebuggingCalled();
 
         // Set the second user's preference to receive messages from course members.
         set_user_preference('message_blocknoncontacts', \core_message\api::MESSAGE_PRIVACY_COURSEMEMBER, $user2->id);
         // Check that the return result is still false (because $user1 is still his/her contact).
         $this->assertFalse(\core_message\api::is_user_non_contact_blocked($user2));
 
         // Set the second user's preference to receive messages from course members.
         set_user_preference('message_blocknoncontacts', \core_message\api::MESSAGE_PRIVACY_COURSEMEMBER, $user2->id);
         // Check that the return result is still false (because $user1 is still his/her contact).
         $this->assertFalse(\core_message\api::is_user_non_contact_blocked($user2));
+        $this->assertDebuggingCalled();
     }
 
     /**
     }
 
     /**
index b623af2..6060c8b 100644 (file)
@@ -29,6 +29,7 @@ information provided here is intended especially for developers.
 * The following methods have been deprecated and should not be used any more:
   - \core_message\api::is_user_blocked()
   - \core_message\api::delete_conversation()
 * The following methods have been deprecated and should not be used any more:
   - \core_message\api::is_user_blocked()
   - \core_message\api::delete_conversation()
+  - \core_message\api::is_user_non_contact_blocked()
 * The method \core_message\api::can_delete_conversation() now expects a 'conversationid' to be passed
   as the second parameter.
 * The following web services have been deprecated. Please do not call these any more.
 * The method \core_message\api::can_delete_conversation() now expects a 'conversationid' to be passed
   as the second parameter.
 * The following web services have been deprecated. Please do not call these any more.