
Калькулятор подоконников
Давайте попробуем воспроизвести пример калькулятора с демо-сайта. Заходим на страницу компонента в бек-энде.
Шаг 1
Первым делом создадим поля для нашего калькулятора. Для этого переходим во вкладку "Поля" и по-очереди создаём необходимые нам. Обратите внимание, что значения для поля можно задать только после его добавления. По сути, оно должно быть в базе, чтобы привязать к нему значения. Также, если вы добавляете поле msProducts, то нужно понимать, что вместо значений для него забиваются параметры сниппета msProducts в формате JSON.
Ширина (мм)
- Тип:
Число - Ключ:
width - По-умолчанию:
1900 - Обязательно:
Да
Длина (мм)
- Тип:
Число - Ключ:
length - По-умолчанию:
500 - Обязательно:
Да
Материал
- Тип:
msProducts - Ключ:
material - Обязательно:
Да - Значения:
- Параметры (JSON):
{
"parents": 5,
"where": {},
"sortby": {"parent":"ASC", "menuindex":"ASC"},
"limit": 0
}Профиль
- Тип:
Radiobox - Ключ:
chamfer - По-умолчанию:
1500 - Обязательно:
Да - Значения:
- Профиль Zx:
1500 - Профиль V:
2200 - Профиль H:
2500 - Профиль F '3:
3000 - Профиль E:
1800 - Профиль B:
1950 - Профиль A:
180 - Профиль F:
3500
- Профиль Zx:
Монтаж подоконника
- Тип:
Checkbox - Ключ:
mounting - Значения:
- Монтаж подоконника 200 мм:
1800 - Монтаж подоконника 300 мм:
2000 - Монтаж подоконника 400 мм:
2200 - Монтаж подоконника 500 мм:
2300 - Монтаж подоконника 600 мм:
2500
- Монтаж подоконника 200 мм:
Ухо подоконника
- Тип:
Checkbox - Ключ:
ear - Значения:
- Подрезка уха подоконника:
300
- Подрезка уха подоконника:
Шаг 2
Теперь нам нужно создать объект калькулятора, в котором мы соберём все необходимые поля. На вкладке "Калькуляторы" создаём:
- Заголовок:
Калькулятор подоконников - Сниппет:
xcc.results
Сниппет - это наш обработчик результатов расчёта. В комплекте с компонентом, в качестве примера поставляется сниппет xcc.results, рассчитанный как раз на данный калькулятор. Поэтому править нам его не нужно. Однако, если вам что-то надо добавить, то сниппет хорошо задокументирован.
Сохраняем.
Шаг 3
Сейчас нам надо привязать к калькулятору недавно созданные поля. На только что созданном калькуляторе жмём "Редактировать", откроется окошко, в нём переходим во вкладку "Поля". Жмём кнопку "Добавить" и по-очереди добавляем в калькулятор нужные поля. При желании можно перетащить поля вверх или вниз, таким образом сортируя вывод полей в форме на фронт-энде.
Шаг 4
Вывести калькулятор на фронте достаточно просто:
{'!xCalc' | snippet : [
'id' => 1,
'tplOuter' => 'tpl.xCalc.outer',
'tplResults' => 'tpl.xCalc.results',
]}В параметр id указываем ID нового калькулятора. В параметр tplResults указываем чанк вывода результатов расчёта. В комплекте с компонентом в чанке tpl.xCalc.results настроен вывод, рассчитанный на данный калькулятор.
