MDL-77105 course_format: Add 'nofilter' class when necessary

Add the `.nofilter` class for activity icons when the icon URL's
`filtericon` parameter is not set, so they get rendered as they are on
the course homepage.
This commit is contained in:
Jun Pataleta 2023-02-10 16:21:43 +08:00
parent f5d445a68f
commit 84198e03c7
2 changed files with 6 additions and 2 deletions

View File

@ -102,9 +102,12 @@ class cmname implements named_templatable, renderable {
return [];
}
$iconurl = $mod->get_icon_url();
$iconclass = $iconurl->get_param('filtericon') ? '' : 'nofilter';
$data = [
'url' => $mod->url,
'icon' => $mod->get_icon_url(),
'icon' => $iconurl,
'iconclass' => $iconclass,
'modname' => $mod->modname,
'textclasses' => $displayoptions['textclasses'] ?? '',
'purpose' => plugin_supports('mod', $mod->modname, FEATURE_MOD_PURPOSE, MOD_PURPOSE_OTHER),

View File

@ -25,6 +25,7 @@
{
"url": "#",
"icon": "../../../pix/help.svg",
"iconclass": "",
"pluginname": "File",
"textclasses": "",
"purpose": "content",
@ -47,7 +48,7 @@
<div class="activity-instance d-flex flex-column">
<div class="activitytitle media {{textclasses}} modtype_{{modname}} position-relative align-self-start">
<div class="activityiconcontainer {{purpose}} courseicon align-self-start mr-3">
<img src="{{{icon}}}" class="activityicon " alt="{{{modname}}} icon">
<img src="{{{icon}}}" class="activityicon {{iconclass}}" alt="{{{modname}}} icon">
</div>
<div class="media-body align-self-center">
{{#pluginname}}