mirror of
https://github.com/moodle/moodle.git
synced 2025-08-04 08:26:37 +02:00
"MDL-17143, don't display the user description at all when user isn't enrolled in any courses, merged and modified from 1.9"
This commit is contained in:
parent
7b825c4f6f
commit
35f0660ab4
6 changed files with 30 additions and 1 deletions
|
@ -39,6 +39,9 @@ if ($hassiteconfig) { // speedup for non-admins, add all caps used on this page
|
|||
$temp->add(new admin_setting_configcheckbox('extendedusernamechars', get_string('extendedusernamechars', 'admin'), get_string('configextendedusernamechars', 'admin'), 0));
|
||||
$temp->add(new admin_setting_configtext('sitepolicy', get_string('sitepolicy', 'admin'), get_string('configsitepolicy', 'admin'), '', PARAM_RAW));
|
||||
$temp->add(new admin_setting_configcheckbox('keeptagnamecase', get_string('keeptagnamecase','admin'),get_string('configkeeptagnamecase', 'admin'),'1'));
|
||||
|
||||
$temp->add(new admin_setting_configcheckbox('profilesforenrolledusersonly', get_string('profilesforenrolledusersonly','admin'),get_string('configprofilesforenrolledusersonly', 'admin'),'1'));
|
||||
|
||||
$temp->add(new admin_setting_configcheckbox('cronclionly', get_string('cronclionly', 'admin'), get_string('configcronclionly', 'admin'), 0));
|
||||
$temp->add(new admin_setting_configpasswordunmask('cronremotepassword', get_string('cronremotepassword', 'admin'), get_string('configcronremotepassword', 'admin'), ''));
|
||||
|
||||
|
|
|
@ -189,6 +189,11 @@ $string['configoverride'] = 'Defined in config.php';
|
|||
$string['configpathtoclam'] = 'Path to clam AV. Probably something like /usr/bin/clamscan or /usr/bin/clamdscan. You need this in order for clam AV to run.';
|
||||
$string['configpathtodu'] = 'Path to du. Probably something like /usr/bin/du. If you enter this, pages that display directory contents will run much faster for directories with a lot of files.';
|
||||
$string['configperfdebug'] = 'If you turn this on, performance info will be printed in the footer of the standard theme';
|
||||
$string['configprofilesforenrolledusersonly'] = '
|
||||
<ul>
|
||||
<li>When showing the profile page, if a courseid isn\'t defined (this is the public view) AND the user is not enrolled in any courses AND this setting is set as true then replace the profile description won\'t display.</li>
|
||||
<li>When editing the profile page, if the description is blank AND the user is not enrolled in any courses AND this setting is set as true then completely hide the description field from the editing page.</li>
|
||||
</ul>';
|
||||
$string['configprotectusernames'] = 'By default forget_password.php does not display any hints that would allow guessing of usernames or email addresses.';
|
||||
$string['configproxybypass'] = 'Comma separated list of (partial) hostnames or IPs that should bypass proxy (e.g., 192.168., .mydomain.com)';
|
||||
$string['configproxyhost'] = 'If this <b>server</b> needs to use a proxy computer (eg a firewall) to access the Internet, then provide the proxy hostname here. Otherwise leave it blank.';
|
||||
|
@ -613,6 +618,7 @@ $string['profilefieldtypetextarea'] = 'Text area';
|
|||
$string['profilefieldmaxlength'] = 'Maximum length';
|
||||
$string['profilefieldispassword'] = 'Is this a password field?';
|
||||
$string['profileforceunique'] = 'Should the data be unique?';
|
||||
$string['profilesforenrolledusersonly'] = 'Profiles for enrolled users only';
|
||||
$string['profileinvaliddata'] = 'Invalid value';
|
||||
$string['profilelocked'] = 'Is this field locked?';
|
||||
$string['profilemenudefaultnotinoptions'] = 'The default value is not one of the options';
|
||||
|
|
|
@ -1220,6 +1220,7 @@ $string['previouslyselectedusers'] = 'Previously selected users not matching \'$
|
|||
$string['previoussection'] = 'Previous section';
|
||||
$string['primaryadminsetup'] = 'Setup administrator account';
|
||||
$string['profile'] = 'Profile';
|
||||
$string['profilenotshown'] = 'This profile description will not be shown until this person is enrolled in at least one course.';
|
||||
$string['publicdirectory'] = 'Public directory';
|
||||
$string['publicdirectory0'] = 'Please do not publish this site';
|
||||
$string['publicdirectory1'] = 'Publish the site name only';
|
||||
|
|
|
@ -60,8 +60,14 @@ class user_edit_form extends moodleform {
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
if ($user = $DB->get_record('user', array('id'=>$userid))) {
|
||||
|
||||
// remove description
|
||||
if (!$DB->get_record('role_assignments', array('userid'=>$userid)) && empty($user->description) && $CFG->profilesforenrolledusersonly) {
|
||||
$mform->removeElement('description');
|
||||
}
|
||||
|
||||
// print picture
|
||||
if (!empty($CFG->gdversion)) {
|
||||
$image_el =& $mform->getElement('currentpicture');
|
||||
|
|
|
@ -75,6 +75,13 @@ class user_editadvanced_form extends moodleform {
|
|||
}
|
||||
}
|
||||
|
||||
$sitecontext = get_context_instance(CONTEXT_SYSTEM);
|
||||
$can_edit_user = has_capability('moodle/user:update', $sitecontext);
|
||||
// remove description
|
||||
if (!$DB->get_record('role_assignments', array('userid'=>$userid)) && empty($user->description) && $CFG->profilesforenrolledusersonly && !$can_edit_user) {
|
||||
$mform->removeElement('description');
|
||||
}
|
||||
|
||||
// user can not change own auth method
|
||||
if ($userid == $USER->id) {
|
||||
$mform->hardFreeze('auth');
|
||||
|
|
|
@ -210,8 +210,14 @@
|
|||
// Print the description
|
||||
|
||||
if ($user->description && !isset($hiddenfields['description'])) {
|
||||
$has_courseid = ($course->id != SITEID);
|
||||
if (!$DB->get_record('role_assignments', array('userid'=>$id))
|
||||
&& !$has_courseid && $CFG->profilesforenrolledusersonly) {
|
||||
echo get_string('profilenotshown', 'moodle').'<hr />';
|
||||
} else {
|
||||
echo format_text($user->description, FORMAT_MOODLE)."<hr />";
|
||||
}
|
||||
}
|
||||
|
||||
// Print all the little details in a list
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue