mirror of
https://github.com/moodle/moodle.git
synced 2025-04-13 12:32:08 +02:00
Merge branch 'MDL-72585-master' of git://github.com/dpalou/moodle
This commit is contained in:
commit
2f0fb8f99b
@ -1991,7 +1991,7 @@ class core_message_external extends external_api {
|
||||
*/
|
||||
public static function get_messages($useridto, $useridfrom = 0, $type = 'both', $read = MESSAGE_GET_READ,
|
||||
$newestfirst = true, $limitfrom = 0, $limitnum = 0) {
|
||||
global $CFG, $USER;
|
||||
global $CFG, $USER, $PAGE;
|
||||
|
||||
$warnings = array();
|
||||
|
||||
@ -2089,13 +2089,26 @@ class core_message_external extends external_api {
|
||||
}
|
||||
foreach ($messages as $mid => $message) {
|
||||
|
||||
// Do not return deleted messages.
|
||||
if (!$message->notification) {
|
||||
// Do not return deleted messages.
|
||||
if (($useridto == $USER->id and $message->timeusertodeleted) or
|
||||
($useridfrom == $USER->id and $message->timeuserfromdeleted)) {
|
||||
unset($messages[$mid]);
|
||||
continue;
|
||||
}
|
||||
} else {
|
||||
// Return iconurl for notifications.
|
||||
if (!isset($output)) {
|
||||
$output = $PAGE->get_renderer('core');
|
||||
}
|
||||
|
||||
if (!empty($message->component) && substr($message->component, 0, 4) == 'mod_') {
|
||||
$iconurl = $output->image_url('icon', $message->component);
|
||||
} else {
|
||||
$iconurl = $output->image_url('i/marker', 'core');
|
||||
}
|
||||
|
||||
$message->iconurl = clean_param($iconurl->out(), PARAM_URL);
|
||||
}
|
||||
|
||||
// We need to get the user from the query.
|
||||
@ -2168,6 +2181,7 @@ class core_message_external extends external_api {
|
||||
'eventtype' => new external_value(PARAM_TEXT, 'The type of notification', VALUE_OPTIONAL),
|
||||
'customdata' => new external_value(PARAM_RAW, 'Custom data to be passed to the message processor.
|
||||
The data here is serialised using json_encode().', VALUE_OPTIONAL),
|
||||
'iconurl' => new external_value(PARAM_URL, 'URL for icon, only for notifications.', VALUE_OPTIONAL),
|
||||
), 'message'
|
||||
)
|
||||
),
|
||||
|
@ -1292,7 +1292,7 @@ class core_message_externallib_testcase extends externallib_advanced_testcase {
|
||||
* Test get_messages.
|
||||
*/
|
||||
public function test_get_messages() {
|
||||
global $CFG, $DB;
|
||||
global $CFG, $DB, $PAGE;
|
||||
$this->resetAfterTest(true);
|
||||
|
||||
$this->preventResetByRollback();
|
||||
@ -1482,6 +1482,8 @@ class core_message_externallib_testcase extends externallib_advanced_testcase {
|
||||
$this->assertObjectHasAttribute('datakey', json_decode($messages['messages'][0]['customdata']));
|
||||
$this->assertEquals('mod_feedback', $messages['messages'][0]['component']);
|
||||
$this->assertEquals('submission', $messages['messages'][0]['eventtype']);
|
||||
$feedbackicon = clean_param($PAGE->get_renderer('core')->image_url('icon', 'mod_feedback')->out(), PARAM_URL);
|
||||
$this->assertEquals($feedbackicon, $messages['messages'][0]['iconurl']);
|
||||
|
||||
// Test warnings.
|
||||
$CFG->messaging = 0;
|
||||
|
Loading…
x
Reference in New Issue
Block a user