MDL-64038 core_message: add default group image
authorBas Brands <bas@moodle.com>
Tue, 11 Dec 2018 17:45:02 +0000 (18:45 +0100)
committerBas Brands <bas@moodle.com>
Fri, 14 Dec 2018 13:09:28 +0000 (14:09 +0100)
add default group image to improve the alignment
of group names in the message drawer group messages section

message/classes/api.php
message/tests/api_test.php
pix/g/g1.png [new file with mode: 0644]
pix/g/g1.svg [new file with mode: 0644]

index daab81d..a138fe4 100644 (file)
@@ -444,7 +444,9 @@ class api {
      * @throws \dml_exception
      */
     protected static function get_linked_conversation_extra_fields(array $conversations) : array {
-        global $DB;
+        global $DB, $PAGE;
+
+        $renderer = $PAGE->get_renderer('core');
 
         $linkedconversations = [];
         foreach ($conversations as $conversation) {
@@ -476,7 +478,7 @@ class api {
                     $extrafields[$convid]['subname'] = format_string($courseinfo[$groupid]->courseshortname);
 
                     // Imageurl.
-                    $extrafields[$convid]['imageurl'] = '';
+                    $extrafields[$convid]['imageurl'] = $renderer->image_url('g/g1')->out(false); // default image.
                     if ($url = get_group_picture_url($group, $group->courseid, true)) {
                         $extrafields[$convid]['imageurl'] = $url->out(false);
                     }
index 02b91ee..f3f534b 100644 (file)
@@ -1686,8 +1686,7 @@ class core_message_api_testcase extends core_message_messagelib_testcase {
         $conversations = \core_message\api::get_conversations($user3->id);
         $this->assertEquals(2, $conversations[0]->membercount);
         $this->assertEquals($course1->shortname, $conversations[0]->subname);
-        $groupimageurl = get_group_picture_url($group2, $group2->courseid, true);
-        $this->assertEquals($groupimageurl, $conversations[0]->imageurl);
+        $this->assertEquals('https://www.example.com/moodle/theme/image.php/_s/boost/core/1/g/g1', $conversations[0]->imageurl);
 
         // Now, disable the conversation linked to the group and verify it's no longer returned.
         $DB->set_field('message_conversations', 'enabled', 0, ['id' => $conversations[0]->id]);
diff --git a/pix/g/g1.png b/pix/g/g1.png
new file mode 100644 (file)
index 0000000..2e336c9
Binary files /dev/null and b/pix/g/g1.png differ
diff --git a/pix/g/g1.svg b/pix/g/g1.svg
new file mode 100644 (file)
index 0000000..27a5d4c
--- /dev/null
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="utf-8"?>
+<svg viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg" xmlns:bx="https://boxy-svg.com">
+  <rect width="100" height="100" style="fill: rgb(216, 216, 216);"/>
+  <path d="M 36.62 49.666 C 32.683 49.788 29.462 51.343 26.958 54.334 L 22.073 54.334 C 20.08 54.334 18.403 53.841 17.042 52.857 C 15.681 51.873 15 50.431 15 48.537 C 15 39.957 16.507 35.666 19.52 35.666 C 19.667 35.666 20.195 35.922 21.108 36.433 C 22.018 36.942 23.203 37.458 24.663 37.982 C 26.119 38.504 27.566 38.765 29 38.765 C 30.627 38.765 32.244 38.485 33.849 37.927 C 33.727 38.827 33.666 39.628 33.666 40.333 C 33.666 43.712 34.652 46.823 36.62 49.666 Z M 75.667 72.891 C 75.667 75.807 74.779 78.11 73.006 79.8 C 71.231 81.488 68.873 82.333 65.932 82.333 L 34.068 82.333 C 31.126 82.333 28.768 81.488 26.995 79.8 C 25.221 78.11 24.333 75.807 24.333 72.891 C 24.333 71.603 24.376 70.344 24.461 69.118 C 24.546 67.891 24.716 66.564 24.972 65.143 C 25.227 63.722 25.548 62.403 25.937 61.188 C 26.327 59.972 26.849 58.787 27.506 57.632 C 28.162 56.477 28.914 55.494 29.766 54.679 C 30.617 53.866 31.656 53.215 32.882 52.73 C 34.109 52.242 35.466 51.999 36.948 51.999 C 37.191 51.999 37.712 52.261 38.516 52.784 C 39.317 53.306 40.205 53.89 41.177 54.534 C 42.149 55.178 43.449 55.761 45.079 56.285 C 46.707 56.805 48.347 57.068 49.999 57.068 C 51.653 57.068 53.293 56.805 54.921 56.285 C 56.551 55.761 57.851 55.178 58.823 54.534 C 59.795 53.89 60.683 53.306 61.484 52.784 C 62.286 52.261 62.809 51.999 63.052 51.999 C 64.536 51.999 65.891 52.242 67.118 52.73 C 68.344 53.215 69.383 53.866 70.234 54.679 C 71.086 55.494 71.837 56.477 72.494 57.632 C 73.151 58.787 73.673 59.972 74.062 61.188 C 74.452 62.403 74.773 63.722 75.029 65.143 C 75.284 66.564 75.454 67.891 75.539 69.118 C 75.624 70.344 75.667 71.603 75.667 72.891 Z M 38.333 26.333 C 38.333 28.91 37.421 31.109 35.598 32.932 C 33.777 34.756 31.577 35.666 29 35.666 C 26.423 35.666 24.223 34.756 22.401 32.932 C 20.577 31.109 19.667 28.91 19.667 26.333 C 19.667 23.758 20.577 21.557 22.401 19.734 C 24.223 17.912 26.423 17 29 17 C 31.577 17 33.777 17.912 35.598 19.734 C 37.421 21.557 38.333 23.758 38.333 26.333 Z M 64 40.333 C 64 44.198 62.632 47.497 59.899 50.232 C 57.163 52.966 53.864 54.334 49.999 54.334 C 46.136 54.334 42.835 52.966 40.101 50.232 C 37.368 47.497 35.999 44.198 35.999 40.333 C 35.999 36.468 37.368 33.169 40.101 30.436 C 42.835 27.701 46.136 26.333 49.999 26.333 C 53.864 26.333 57.163 27.701 59.899 30.436 C 62.632 33.169 64 36.468 64 40.333 Z M 85 48.537 C 85 50.431 84.319 51.873 82.958 52.857 C 81.596 53.841 79.92 54.334 77.927 54.334 L 73.042 54.334 C 70.538 51.343 67.317 49.788 63.381 49.666 C 65.348 46.823 66.334 43.712 66.334 40.333 C 66.334 39.628 66.273 38.827 66.151 37.927 C 67.756 38.485 69.373 38.765 71 38.765 C 72.434 38.765 73.88 38.504 75.337 37.982 C 76.797 37.458 77.983 36.942 78.893 36.433 C 79.804 35.922 80.333 35.666 80.479 35.666 C 83.492 35.666 85 39.957 85 48.537 Z M 80.333 26.333 C 80.333 28.91 79.422 31.109 77.599 32.932 C 75.776 34.756 73.576 35.666 71 35.666 C 68.422 35.666 66.223 34.756 64.402 32.932 C 62.578 31.109 61.667 28.91 61.667 26.333 C 61.667 23.758 62.578 21.557 64.402 19.734 C 66.223 17.912 68.422 17 71 17 C 73.576 17 75.776 17.912 77.599 19.734 C 79.422 21.557 80.333 23.758 80.333 26.333 Z" fill="#fff" bx:origin="-2.38412 -1.795421"/>
+</svg>
\ No newline at end of file