Добро пожаловать на сайт <БагБД>, где вы можете задавать вопросы о программировании и разработке на Битрикс и Битрикс24, и получать быстрые и квалифицированные ответы от профессионалов!

Разные значения обязательного поля регистрации

00 голосов
4
Здравствуйте.
У меня следующая ситуация:
1) Есть страница регистрации, выводимая компонентом main.register.
Код
$APPLICATION->IncludeComponent( 
   "bitrix:main.register", 
   "", 
   Array( 
      "USER_PROPERTY_NAME" => "Дополнительные данные:", 
      "SEF_MODE" => "N", 
      "SHOW_FIELDS" => Array("LAST_NAME", "NAME", "SECOND_NAME", "PERSONAL_BIRTHDAY", "PERSONAL_PHONE", "PERSONAL_MOBILE", "PERSONAL_ZIP", "PERSONAL_STATE", "PERSONAL_CITY", "PERSONAL_STREET"), 
      "REQUIRED_FIELDS" => Array("LAST_NAME", "NAME", "SECOND_NAME", "PERSONAL_BIRTHDAY", "PERSONAL_PHONE","PERSONAL_MOBILE", "PERSONAL_ZIP", "PERSONAL_STATE", "PERSONAL_CITY",  "PERSONAL_STREET"), 
      "AUTH" => "Y", 
      "USE_BACKURL" => "Y", 
      "SUCCESS_PAGE" => $APPLICATION->GetCurPageParam('',array('backurl')), 
      "SET_TITLE" => "N", 
   ) 
); 

2) Есть обязательное пользовательское свойство UF_SPONSOR_NUM, которое, как я понимаю, выводится в форме регистрации по умолчанию (не нужно прописывать в параметрах компонента).

Как сделать, чтобы была возможность проверять значение этого свойства на разных сайтах? Скажем, на первом сайте значение должно быть — 18 знаков, на втором — 20 и при этом оно оставалось обязательным??
спросил 01 Июнь, 13 от Asteria (1,840 баллов)

4 Ответы

00 голосов
Для вывода ограничения кастомизируйте шаблон компонента:
http://dev.1c-bitrix.ru/learning/course/lesson.php?COURSE_ID=18&ID=938

Для проверки используйте событие OnBeforeUserAdd:
http://dev.1c-bitrix.ru/api_help/main/events/onbeforeuseradd.php
ответил 01 Июнь, 13 от JIETYHOK (2,260 баллов)
00 голосов
Цитата
Михаил Митрофанов пишет:
Для вывода ограничения кастомизируйте шаблон компонента

Для какого вывода ограничения?? Не совсем понял.
Цитата
Для проверки используйте событие OnBeforeUserAdd

В коде обработчика, как я понял, нужно определять id сайта. Как это сделать, подскажите?
ответил 06 Июнь, 13 от Asteria (1,840 баллов)
00 голосов
Цитата
Для какого вывода ограничения?? Не совсем понял.

Ну Вы же ограничиваете по количеству знаков.

Цитата
Юрий Шубин пишет:
В документации в коде обработчика, как я понял, нужно определять id сайта. Как это сделать, подскажите?

Используйте значение константы SITE_ID.
ответил 08 Сен, 13 от JIETYHOK (2,260 баллов)
00 голосов
Цитата
Ну Вы же ограничиваете по количеству знаков.

Имеете ввиду вывода сообщения об ошибке? Так оно же указывается в настройках пользовательского поля…?
Цитата
Используйте значение константы SITE_ID.

Код
<?
if(SITE_ID)==1){/*правило*/}
?>

Так константа будет видна обработчику?
ответил 06 Дек, 13 от Asteria (1,840 баллов)

Похожие вопросы