original_string: public static function get_popup_notifications($useridto = 0, $sort = 'DESC', $limit = 0, $offset = 0) {
          global $DB, $USER;
  
          $sort = strtoupper($sort);
          if ($sort != 'DESC' && $sort != 'ASC') {
              throw new \moodle_exception('invalid parameter: sort: must be "DESC" or "ASC"');
          }
  
          if (empty($useridto)) {
              $useridto = $USER->id;
          }
  
          // Is notification enabled ?
          if ($useridto == $USER->id) {
              $disabled = $USER->emailstop;
          } else {
              $user = \core_user::get_user($useridto, "emailstop", MUST_EXIST);
              $disabled = $user->emailstop;
          }
          if ($disabled) {
              // Notifications are disabled.
              return array();
          }
  
          $sql = "SELECT n.id, n.useridfrom, n.useridto,
                         n.subject, n.fullmessage, n.fullmessageformat,
                         n.fullmessagehtml, n.smallmessage, n.contexturl,
                         n.contexturlname, n.timecreated, n.component,
                         n.eventtype, n.timeread, n.customdata
                    FROM {notifications} n
                   WHERE n.id IN (SELECT notificationid FROM {message_popup_notifications})
                     AND n.useridto = ?
                ORDER BY timecreated $sort, timeread $sort, id $sort";
  
          $notifications = [];
          $records = $DB->get_recordset_sql($sql, [$useridto], $offset, $limit);
          foreach ($records as $record) {
              $notifications[] = (object) $record;
          }
          $records->close();
  
          return $notifications;
      }
code: public static function get_popup_notifications($useridto = 0, $sort = 'DESC', $limit = 0, $offset = 0) {
          global $DB, $USER;
  
          $sort = strtoupper($sort);
          if ($sort != 'DESC' && $sort != 'ASC') {
              throw new \moodle_exception('invalid parameter: sort: must be "DESC" or "ASC"');
          }
  
          if (empty($useridto)) {
              $useridto = $USER->id;
          }
  
          // Is notification enabled ?
          if ($useridto == $USER->id) {
              $disabled = $USER->emailstop;
          } else {
              $user = \core_user::get_user($useridto, "emailstop", MUST_EXIST);
              $disabled = $user->emailstop;
          }
          if ($disabled) {
              // Notifications are disabled.
              return array();
          }
  
          $sql = "SELECT n.id, n.useridfrom, n.useridto,
                         n.subject, n.fullmessage, n.fullmessageformat,
                         n.fullmessagehtml, n.smallmessage, n.contexturl,
                         n.contexturlname, n.timecreated, n.component,
                         n.eventtype, n.timeread, n.customdata
                    FROM {notifications} n
                   WHERE n.id IN (SELECT notificationid FROM {message_popup_notifications})
                     AND n.useridto = ?
                ORDER BY timecreated $sort, timeread $sort, id $sort";
  
          $notifications = [];
          $records = $DB->get_recordset_sql($sql, [$useridto], $offset, $limit);
          foreach ($records as $record) {
              $notifications[] = (object) $record;
          }
          $records->close();
  
          return $notifications;
      }
code_tokens: public static function get_popup_notifications ( $ useridto = 0 , $ sort = 'DESC' , $ limit = 0 , $ offset = 0 ) { global $ DB , $ USER ; $ sort = strtoupper ( $ sort ) ; if ( $ sort != 'DESC' && $ sort != 'ASC' ) { throw new \ moodle_exception ( 'invalid parameter: sort: must be "DESC" or "ASC"' ) ; } if ( empty ( $ useridto ) ) { $ useridto = $ USER -> id ; } // Is notification enabled ? if ( $ useridto == $ USER -> id ) { $ disabled = $ USER -> emailstop ; } else { $ user = \ core_user :: get_user ( $ useridto , "emailstop" , MUST_EXIST ) ; $ disabled = $ user -> emailstop ; } if ( $ disabled ) { // Notifications are disabled. return array ( ) ; } $ sql = "SELECT n.id, n.useridfrom, n.useridto,
                         n.subject, n.fullmessage, n.fullmessageformat,
                         n.fullmessagehtml, n.smallmessage, n.contexturl,
                         n.contexturlname, n.timecreated, n.component,
                         n.eventtype, n.timeread, n.customdata
                    FROM {notifications} n
                   WHERE n.id IN (SELECT notificationid FROM {message_popup_notifications})
                     AND n.useridto = ?
                ORDER BY timecreated $sort, timeread $sort, id $sort" ; $ notifications = [ ] ; $ records = $ DB -> get_recordset_sql ( $ sql , [ $ useridto ] , $ offset , $ limit ) ; foreach ( $ records as $ record ) { $ notifications [ ] = ( object ) $ record ; } $ records -> close ( ) ; return $ notifications ; }
docstring: Get popup notifications for the specified users. Nothing is returned if notifications are disabled.
  
  @param int $useridto the user id who received the notification
  @param string $sort the column name to order by including optionally direction
  @param int $limit limit the number of result returned
  @param int $offset offset the result set by this amount
  @return array notification records
  @throws \moodle_exception
  @since 3.2
docstring_tokens: Get popup notifications for the specified users . Nothing is returned if notifications are disabled .