Как сделать необязательные поля "индивидуальный номер" уникальными, или пользовательское поле отобразить в "Записанные на курс пользователи"

Как сделать необязательные поля "индивидуальный номер" уникальными, или пользовательское поле отобразить в "Записанные на курс пользователи"

от Владислав Кравченко -
Количество ответов: 4

Нужно создать уникальное поле с которым могли бы работать (просматривать, фильтровать) учителя. 

Создал  уникальное пользовательское поле но не могу вывести его в "Записанные на курс пользователи".


Сделал обязательным поле "индивидуальный номер" и вывел его при регистрации но не знаю как прикрутить к нему проверку на уникальность.

$mform->addElement('text', 'idnumber', get_string('idnumber'), 'maxlength="255" size="25"');
$mform->setType('idnumber', core_user::get_property_type('idnumber'));
$mform->addRule('idnumber', $strrequired, 'required', null, 'client');

Версия moodle 3.3.



В ответ на Владислав Кравченко

Re: Как сделать необязательные поля "индивидуальный номер" уникальными, или пользовательское поле отобразить в "Записанные на курс пользователи"

от Vadim Tabunshchik -
Изображение пользователя Developers

Почему бы не поискать готовое решение в базе плагинов? Зачем сразу исходники редактировать?

Вот есть плагин Associated input С его помощью задача решается за 5 минут:

  1. В списке пользователей "индивидуальный номер" выводится элементарно, достаточно это поле галкой отметить в настройке showuseridentity
  2. Устанавливаем плагин Associated input и создаем новое поле, ассоциированное с "индивидуальный номер", выбираем «Да» в пунктах «Показывать на странице регистрации?» и «Значения должны быть уникальными?». Чтобы лишнее поле не светилось в форме редактирования профиля, ставим «Да» в настройке поля «Use original».
  3. Всё. Задача решена:
    Страница регистрации

    Профиль пользователя (доп. поле совпадает со стандартным idnumber):

    Любого пользователя при входе на сайт система заставляет заполнить поле:
    image003
В ответ на Vadim Tabunshchik

Re: Как сделать необязательные поля "индивидуальный номер" уникальными, или пользовательское поле отобразить в "Записанные на курс пользователи"

от Denis Glagolev -

Может ли загружать индивидуальные номера ( id) в профилях пользователей при записи глобальными группами через файл csv?

В ответ на Denis Glagolev

Re: Как сделать необязательные поля "индивидуальный номер" уникальными, или пользовательское поле отобразить в "Записанные на курс пользователи"

от Alexandre Scherbyna -

Думаю, что да. Но если вы сами попробуете, то узнаете ответ быстрее.

В ответ на Alexandre Scherbyna

Re: Как сделать необязательные поля "индивидуальный номер" уникальными, или пользовательское поле отобразить в "Записанные на курс пользователи"

от Denis Glagolev -

Нашел информацию в справке:


To provide values other than the default you can include one or more of these optional user fields:

institution,department,city,country,lang,auth,timezone,idnumber,icq,phone1,phone2,address,url,description,mailformat,maildisplay,maildigest,htmleditor,autosubscribe,interests

Most of the these are user profile fields or user preference fields that belong to the user profile and are the filled in the user or at manual creation. Some however require specific formats