Войти

Что вас интересует?

Добавляем скрытые свойства заказа со значениями по умолчанию

Задача: создать свойство заказа «Источник заказа». Свойство должно быть типа Select со значением по умолчанию «Корзина».

В Битриксе для скрытия свойства заказа от пользователя существует галочка — «Служебное», а для выставления какого либо значения по умолчанию для поля типа SELECT достаточно вписать его код в поле «Значение по умолчанию».

Все бы ничего, но значение по умолчанию для служебных полей выставляется только когда заказ создается через администативную панель, но не пользователем через публичную часть сайта.

Чтобы значение по умолчанию выставлялось в обоих случаях и не было видно пользователю, создадим группу свойств заказа с названием «Скрытые» и снимем галочку с поля «Служебное» и добавим в шаблон оформления заказа условие «Если поле из группы скрытых то делаем невидимым».

skrytye-svoystva.png

Шаблон по умолчанию bitrix/components/bitrix/sale.order.ajax/templates/.default/props.php

<?foreach($arSource as $arProperties)
{
   if('Скрытые' == $arProperties["GROUP_NAME"]){$isHidden = true;}else{ $isHidden = false;}

   if($arProperties["SHOW_GROUP_NAME"] == "Y")
   {
      ?>
      <tr <?if($isHidden) echo 'style="display: none;"'?>>
         <td colspan="2">
            <b><?= $arProperties["GROUP_NAME"] ?></b>
         </td>
      </tr>
      <?
   }
   ?>
   <tr <?if($isHidden) echo 'style="display: none;"'?>>
...
...
?>

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

Теги:
Комментрии

Код уже нерабочий. Такого файла нет по этому пути.

Разработчик

14.10.2022 10:09

Да, данный код работает на более ранних версиях битрикс. Спасибо за уточнение!

Администратор

30.12.2022 14:56

Оставить комментарий
Пожалуйста, введите ваше Имя.
Пожалуйста, введите ваш Email.
Пожалуйста, напишите комментарий.