Компонент Регистрация. Как сделать обязательным поле ?

#1 21 июля 2014 в 05:34
Вопрос… Как на форме регистрации сделать обязательным для заполнения поле "Город:"?
#2 21 июля 2014 в 13:06

Этот вопрос тут несколько раз поднимался и всегда те кто мог бы помочь убеждали вопрошающего, что нет в этом смысла.
Заставлять созревшего для регистрации вводить что-то кроме логина и пароля
— это дать ему повод усомниться в необходимости регистрации вообще
или подтолкнуть к вводу неверных данных.

Если меня "заставят" выбирать город я выберу первое, из выпадающего списка.
Также как и требующие дату рождения "узнают", что я родился 1 января.

#3 21 июля 2014 в 18:41
Хм… а все таки… Как? Я несколько часов рыл движок… Не нашел… Мне кажется тут дело хитрое..
Что удалось накопать: существует некое глобальное понятие "обязательность", встречается в виде слова mustbe.
#4 23 июля 2014 в 23:19
Каким образом в Instante реализована обязательность? Подскажите, кто знает, пожалуйста…
#5 24 июля 2014 в 09:42
в файле /components/registration/frontend.php
где функция "получаем данные"
после
  1. $item['birthdate'] = sprintf('%04d-%02d-%02d', $item['byear'], $item['bmonth'], $item['bday']);
добавьте
  1. // Проверяем город
  2. if(!$item['city']) { cmsCore::addSessionMessage($_LANG['ERR_CITY'], 'error'); $errors = true; }
Далее в файл /languages/ru/components/registration.php после
  1. $_LANG['ERR_CAPTCHA'] ='Неверно указан код на картинке!';
добавить
  1. $_LANG['ERR_CITY'] ='Вы не указали город!';
Смотрел по 1.10.3, на правильность не претендую, можете пробовать.
#6 10 августа 2014 в 17:41
Спасибо, сработало!
Но как сделать, что-бы при отключении города отключалась и его обязательность?
#7 13 августа 2014 в 12:59
Получается, что зарегестрироваться невозможно, если человек не ввел город, не смотря на то, что поле город отключен в админке..
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.