mirror of
https://github.com/moodle/moodle.git
synced 2025-04-24 18:04:43 +02:00
MDL-71148 core_navigation: Move unauthenticated user checks to the lib
- Part of: MDL-69588 Added conditional information in user_get_user_navigation_info for when a user is unauthenticated.
This commit is contained in:
parent
fe285d5496
commit
25e178aa59
@ -3321,41 +3321,26 @@ EOD;
|
||||
|
||||
$loginpage = $this->is_login_page();
|
||||
$loginurl = get_login_url();
|
||||
// If not logged in, show the typical not-logged-in string.
|
||||
if (!isloggedin()) {
|
||||
$returnstr = get_string('loggedinnot', 'moodle');
|
||||
if (!$loginpage) {
|
||||
$returnstr .= " (<a href=\"$loginurl\">" . get_string('login') . '</a>)';
|
||||
}
|
||||
return html_writer::div(
|
||||
html_writer::span(
|
||||
$returnstr,
|
||||
'login nav-link'
|
||||
),
|
||||
$usermenuclasses
|
||||
);
|
||||
|
||||
}
|
||||
|
||||
// If logged in as a guest user, show a string to that effect.
|
||||
if (isguestuser()) {
|
||||
$returnstr = get_string('loggedinasguest');
|
||||
if (!$loginpage && $withlinks) {
|
||||
$returnstr .= " (<a href=\"$loginurl\">".get_string('login').'</a>)';
|
||||
}
|
||||
|
||||
return html_writer::div(
|
||||
html_writer::span(
|
||||
$returnstr,
|
||||
'login nav-link'
|
||||
),
|
||||
$usermenuclasses
|
||||
);
|
||||
}
|
||||
|
||||
// Get some navigation opts.
|
||||
$opts = user_get_user_navigation_info($user, $this->page);
|
||||
|
||||
if (!empty($opts->unauthenticateduser)) {
|
||||
$returnstr = get_string($opts->unauthenticateduser['content'], 'moodle');
|
||||
// If not logged in, show the typical not-logged-in string.
|
||||
if (!$loginpage && (!$opts->unauthenticateduser['guest'] || $withlinks)) {
|
||||
$returnstr .= " (<a href=\"$loginurl\">" . get_string('login') . '</a>)';
|
||||
}
|
||||
|
||||
return html_writer::div(
|
||||
html_writer::span(
|
||||
$returnstr,
|
||||
'login nav-link'
|
||||
),
|
||||
$usermenuclasses
|
||||
);
|
||||
}
|
||||
|
||||
$avatarclasses = "avatars";
|
||||
$avatarcontents = html_writer::span($opts->metadata['useravatar'], 'avatar current');
|
||||
$usertextcontents = $opts->metadata['userfullname'];
|
||||
|
10
user/lib.php
10
user/lib.php
@ -823,6 +823,16 @@ function user_get_user_navigation_info($user, $page, $options = array()) {
|
||||
$returnobject->navitems = array();
|
||||
$returnobject->metadata = array();
|
||||
|
||||
$guest = isguestuser();
|
||||
if (!isloggedin() || $guest) {
|
||||
$returnobject->unauthenticateduser = [
|
||||
'guest' => $guest,
|
||||
'content' => $guest ? 'loggedinasguest' : 'loggedinnot',
|
||||
];
|
||||
|
||||
return $returnobject;
|
||||
}
|
||||
|
||||
$course = $page->course;
|
||||
|
||||
// Query the environment.
|
||||
|
@ -583,6 +583,7 @@ class core_userliblib_testcase extends advanced_testcase {
|
||||
|
||||
$PAGE->set_url('/');
|
||||
$user = $this->getDataGenerator()->create_user();
|
||||
$this->setUser($user);
|
||||
$opts = user_get_user_navigation_info($user, $PAGE, array('avatarsize' => $testsize));
|
||||
$avatarhtml = $opts->metadata['useravatar'];
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user