checkbox в multiTV, как убрать разделитель - запятую?

Добрый день.
Суть проблемы.
В multiTV используется тип поля checkbox. Если в конфигурации записать так
'preim' => array(
		'caption' => 'Достоинство',
		'type' => 'checkbox',
		'elements' => 'Параметр 1==1||Параметр 2==2||Параметр 3==3'
	),

и в админке выбрать Параметр 1 и Параметр 3, то выведется соответственно
2,3
Есть возможность сделать так, чтобы выводилось без запятой, или сделать разделителем, например, пробел? Если надо поправить код, то где (сам не нашел)?

В реальности конфиг такой
'preim' => array(
		'caption' => 'Достоинство',
		'type' => 'checkbox',
		'elements' => 'Экология==<li class="param-1">Экологичный профиль</li>||Морозоустойчивость==<li class="param-2">Устойчивость к морозу до -25</li>||Теплоизоляция==<li class="param-3">Высокая теплоизоляция</li>||Шумоизоляция==<li class="param-4">Шумо и звуко изоляция</li>||Гарантия==<li class="param-5">Гарантия 3 года</li>'
	),


Выводится так
<ul class="params">								                
   [+preim+]
</ul>

Все отлично, но запятая мешает, тем более она получается в списке между li.

7 комментариев

avatar
Попробуйте «Визуальный компонент» — DelimitedList и там экспериментируйте.
avatar
это не влияет, похоже у multiTV свой внутренний «DelimitedList» для checkbox, только я его найти не могу…
avatar
Так это наверно в конфиге мультитв задавать можно, как и остальные поля вроде caption, elements и т.п. посмотреть как это хранится в базе и задается для обычных тв и прописать также в конфиге мульти попробовать.
avatar
К сожалению, параметра fields для задания разделителя нет… или я не понял Вашу идею. В базе значения checkbox хранятся уже с запятыми.

Можно, конечно, для вывода без запятых написать сниппет, можно запятую просто скрыть стилями (отказавшись от ul>li в пользу div>span), но хотелось бы разобраться с самим multiTV
avatar
Наверно неправильно. Я не имею в виду значения тв, я имею в виду, то, что хранится в таблице site_tmplvars. Поля конфига multiTV вроде caption, elements и т.п. — это как раз и есть поля из той таблицы. Логично предположить, что если вы в конфиг допишете еще пару параметров вроде
'display' => 'delim',
'display_params' => '&format=~~'


то значения данного параметра в multiTV потом выведется через разделитель ~~. По крайней мере стоит попробовать, т.к. рендер там, скорее всего, общий идет.
avatar
Спасибо, теперь идею понял, но не помогает ((
avatar
Значит нет такой обработки в мультиТВ, а жаль. Если оно с запятыми хранится уже в базе, то вариант только написать какой-то сниппет который будет заменять в запятую на пустоту прямо в rowTpl
типа
[[replace? &text=`[+preim+]` &in=`,` &out=``]]


и сам сниппет replace
<?php
return str_replace($in, $out, $text);
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.