MDL-37704 user_profile: Make sure description field can be locked

Thanks JD for the initial patch.
This commit is contained in:
Ankit Agarwal
2014-12-02 09:43:55 +05:30
parent 296b602f2c
commit 39ab2e44d0
+11 -5
View File
@@ -133,17 +133,23 @@ class user_edit_form extends moodleform {
$fields = get_user_fieldnames();
$authplugin = get_auth_plugin($user->auth);
foreach ($fields as $field) {
if (!$mform->elementExists($field)) {
if ($field === 'description') {
// Hard coded hack for description field. See MDL-37704 for details.
$formfield = 'description_editor';
} else {
$formfield = $field;
}
if (!$mform->elementExists($formfield)) {
continue;
}
$configvariable = 'field_lock_' . $field;
if (isset($authplugin->config->{$configvariable})) {
if ($authplugin->config->{$configvariable} === 'locked') {
$mform->hardFreeze($field);
$mform->setConstant($field, $user->$field);
$mform->hardFreeze($formfield);
$mform->setConstant($formfield, $user->$field);
} else if ($authplugin->config->{$configvariable} === 'unlockedifempty' and $user->$field != '') {
$mform->hardFreeze($field);
$mform->setConstant($field, $user->$field);
$mform->hardFreeze($formfield);
$mform->setConstant($formfield, $user->$field);
}
}
}