MDL-56514 core_message: add missing is messaging enabled checks
authorSimey Lameze <simey@moodle.com>
Thu, 27 Oct 2016 03:02:45 +0000 (11:02 +0800)
committerSimey Lameze <simey@moodle.com>
Mon, 31 Oct 2016 07:06:50 +0000 (15:06 +0800)
message/externallib.php

index 994ab4a..8a19d2e 100644 (file)
@@ -1642,7 +1642,12 @@ class core_message_external extends external_api {
      * @return external_description
      */
     public static function get_unread_conversations_count($useridto) {
-        global $USER;
+        global $USER, $CFG;
+
+        // Check if messaging is enabled.
+        if (empty($CFG->messaging)) {
+            throw new moodle_exception('disabled', 'message');
+        }
 
         $params = self::validate_parameters(
             self::get_unread_conversations_count_parameters(),
@@ -1708,6 +1713,11 @@ class core_message_external extends external_api {
     public static function get_blocked_users($userid) {
         global $CFG, $USER, $PAGE;
 
+        // Check if messaging is enabled.
+        if (empty($CFG->messaging)) {
+            throw new moodle_exception('disabled', 'message');
+        }
+        
         // Warnings array, it can be empty at the end but is mandatory.
         $warnings = array();
 
@@ -1896,7 +1906,12 @@ class core_message_external extends external_api {
      * @return external_description
      */
     public static function mark_all_messages_as_read($useridto, $useridfrom) {
-        global $USER;
+        global $USER, $CFG;
+
+        // Check if messaging is enabled.
+        if (empty($CFG->messaging)) {
+            throw new moodle_exception('disabled', 'message');
+        }
 
         $params = self::validate_parameters(
             self::mark_all_messages_as_read_parameters(),
@@ -2145,7 +2160,12 @@ class core_message_external extends external_api {
      * @since 3.2
      */
     public static function message_processor_config_form($userid, $name, $formvalues) {
-        global $USER;
+        global $USER, $CFG;
+
+        // Check if messaging is enabled.
+        if (empty($CFG->messaging)) {
+            throw new moodle_exception('disabled', 'message');
+        }
 
         $params = self::validate_parameters(
             self::message_processor_config_form_parameters(),
@@ -2215,7 +2235,12 @@ class core_message_external extends external_api {
      * @since 3.2
      */
     public static function get_message_processor($userid = 0, $name) {
-        global $USER, $PAGE;
+        global $USER, $PAGE, $CFG;
+
+        // Check if messaging is enabled.
+        if (empty($CFG->messaging)) {
+            throw new moodle_exception('disabled', 'message');
+        }
 
         $params = self::validate_parameters(
             self::get_message_processor_parameters(),
@@ -2279,7 +2304,12 @@ class core_message_external extends external_api {
      * @since 3.2
      */
     public static function get_user_notification_preferences($userid = 0) {
-        global $USER, $PAGE;
+        global $USER, $PAGE, $CFG;
+
+        // Check if messaging is enabled.
+        if (empty($CFG->messaging)) {
+            throw new moodle_exception('disabled', 'message');
+        }
 
         $params = self::validate_parameters(
             self::get_user_notification_preferences_parameters(),