A list of renderable components to be used with output renderers.
An avatar for a given user object, which can be rendered after being constructed directly:
$userpic1 = new user_picture($USER); $OUTPUT->render($userpic1);
Or by using a helper method in the core renderer (preferred):
$options = array( 'visibletoscreenreaders' => false, 'includefullname' => true, // New in Moodle 3.4. Setting to true will render the user's full name beside it. Defaults to false. ); $userpic2 = $OUTPUT->user_picture($USER, $options);
The user object should have the following fields:
id picture imagealt firstname lastname
If the object does not have these fields, the db will be queried with significant performance implications. A list of these fields can be obtained from user_picture::fields() for the purposes of getting values ahead of time if necessary.
The following options can be set on the user_picture, either by changing each field after construction or by passing in an associative array as the second argument.
$userpic->courseid = $this->page->course->id; // course id of user profile in link $userpic->size = 35; // size of image $userpic->link = true; // make image clickable - the link leads to user profile $userpic->popup = false; // open in popup $userpic->alttext = true; // add image alt attribute $userpic->class = "userpicture"; // image class attribute $userpic->visibletoscreenreaders = true; // whether to be visible to screen readers