Ограничение доступа по Дате рождения, возраст

Ограничение доступа по Дате рождения, возраст

от Ренат Зиганшин -
Количество ответов: 5

Поле профиля пользователя -> "Дата рождения (тип дата время)" при регистрации пользователя отображается корректно в формате день.месяц.год. Но в профиле и при использовании на сайте ограничений по полю пользователя дата рождения отображается в формате "624315600 (пример)".

Версия Moodle 3.6.2.

Вопрос 1: Как ограничить доступ по Дате рождения, возрасту, либо ограничить самостоятельное зачисление в группу по возрасту?

Вопрос 2: Как можно организовать правильное отображение Даты Рождения  на платформе?

Цель: проведение олимпиады с разделением по возрасту.

В ответ на Ренат Зиганшин

Re: Ограничение доступа по Дате рождения, возраст

от Vadim Tabunshchik -
Изображение пользователя Developers
Доп. поля с датой хранят данные в unix-формате, причем считается только разница между введенной датой и полночью 1 января 1970 г. (Unix Epoch), например:
-2088208230 (да, с минусом) - если дата рождения раньше 1970 года
104158800 = ДР после 1970 года.
Поэтому ограничение по ДР вы никак не сделаете с использованием этого поля.
Вижу такой способ: поле ДР оставить. Пользователи пусть заполнят, потом вы создаете группы по возрасту, настраиваете доступ в зависимости от группы.
Или поле ДР делать не дата/время, а простое текстовое, но тут придется следить за форматом ввода данных.
В ответ на Vadim Tabunshchik

Re: Ограничение доступа по Дате рождения, возраст

от Ренат Зиганшин -
А как можно организовать правильное отображение Даты Рождения на платформе?
В профиле отображается в unix-формате.
Спасибо.
В ответ на Ренат Зиганшин

Re: Ограничение доступа по Дате рождения, возраст

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

Не знаю, в чем у вас проблема, у меня отображается как положено:

ris09

Версия Мудл какая?

В ответ на Vadim Tabunshchik

Re: Ограничение доступа по Дате рождения, возраст

от Ренат Зиганшин -

У мне вот как отображается. Версия moodle 3.6 Тема оформления Adaptable

Дата рождения

Раз у вас нормально, значит проблема именно у меня буду искать дальше.

В ответ на Ренат Зиганшин

Re: Ограничение доступа по Дате рождения, возраст

от Alexandre Scherbyna -

Понятие "больше" или "меньше" существует для данных в любом формате: число, текст, дата. Например, муха < слон потому, что при упорядочивании по алфавиту слово "муха" встречается раньше, чем "слон". Поэтому надо просто правильно сравнивать. Если дата храниться в unix-формате, то и сравнивать ее нужно с другой датой тоже в unix-формате: каким-то 624315600. 

Если это вызывает сложности у того, кто такое сравнение должен прописать, то можно подумать об изменении формата. Например, дату можно хранить в виде числа 19750401 или текста 1975-04-01. А если точность позволяет, то проще было бы только годом обойтись: 1975.