{% set defaultInputClass = 'freetext' %} {% set containerType = defaultInputClass %} {# start: field_helper #} {% set defaultInputFormClass = defaultInputFormClass|default('') %} {% set defaultLabelClass = defaultLabelClass|default('label') %} {% set formName = formName|default('') %} {% set defaultInputClass = 'mauticform-' ~ defaultInputClass %} {% set defaultLabelClass = 'mauticform-' ~ defaultLabelClass %} {% set containerClass = containerClass|default(containerType) %} {% set order = field.order|default(0) %} {% set validationMessage = '' %} {% set inputAttributes = htmlAttributesStringToArray(field.inputAttributes|default('')) %} {% set labelAttributes = htmlAttributesStringToArray(field.labelAttributes|default('')) %} {% set containerAttributes = htmlAttributesStringToArray(field.containerAttributes|default('')) %} {% if ignoreName is not defined or (ignoreName is defined and ignoreName is empty) %} {% set inputName = 'mauticform[' ~ field.alias ~ ']' %} {% if field.properties.multiple is defined %} {% set inputName = inputName ~ '[]' %} {% endif %} {% set inputAttributes = inputAttributes|merge({ 'name': inputName, }) %} {% endif %} {% if field.type not in ['checkboxgrp', 'radiogrp', 'textarea'] %} {% set inputAttributes = inputAttributes|merge({ 'value': field.defaultValue|default(''), }) %} {% endif %} {% if ignoreId is not defined or (ignoreId is defined and ignoreId is empty) %} {% set inputAttributes = inputAttributes|merge({ 'id': 'mauticform_input' ~ formName ~ '_' ~ field.alias, }) %} {% set labelAttributes = labelAttributes|merge({ 'id': 'mauticform_label' ~ formName ~ '_' ~ field.alias, 'for': 'mauticform_input' ~ formName ~ '_' ~ field.alias, }) %} {% endif %} {% if field.properties.placeholder is defined and field.properties.placeholder is not empty %} {% set inputAttributes = inputAttributes|merge({ 'placeholder': field.properties.placeholder, }) %} {% endif %} {% if inForm is defined and (true == inForm or inForm is not empty) %} {% if field.type in ['button', 'pagebreak'] %} {% set defaultInputFormClass = defaultInputFormClass ~ ' btn btn-ghost' %} {% endif %} {% set labelAttributes = labelAttributes|merge({ 'class': labelAttributes.class|default([])|merge([defaultLabelClass]), }) %} {% set inputAttributes = inputAttributes|merge({ 'disabled': 'disabled', 'class': inputAttributes.class|default([])|merge([defaultInputClass, defaultInputFormClass]), }) %} {% else %} {% set labelAttributes = labelAttributes|merge({ 'class': labelAttributes.class|default([])|merge([defaultLabelClass]), }) %} {% set inputAttributes = inputAttributes|merge({ 'class': inputAttributes.class|default([])|merge([defaultInputClass]), }) %} {% endif %} {% set containerAttributes = containerAttributes|merge({ 'id': 'mauticform' ~ formName|default('') ~ '_' ~ id, 'class': containerAttributes.class|default([])|merge([ 'mauticform-row', 'mauticform-' ~ containerClass, 'mauticform-field-' ~ order, ]), }) %} {% if field.parent and fields[field.parent] is defined %} {% set values = field.conditions.values|join('|') %} {%- if field.conditions.any != false and 'notIn' != field.conditions.expr -%} {% set values = '*' %} {% endif %} {% set containerAttributes = containerAttributes|merge({ 'data-mautic-form-show-on': fields[field.parent].alias ~ ':' ~ values, 'data-mautic-form-expr': field.conditions.expr, 'class': containerAttributes.class|merge([ 'mauticform-field-hidden', ]), }) %} {% endif %} {% if field.isRequired is defined and field.isRequired %} {% set required = true %} {% set validationMessage = field.validationMessage %} {% if validationMessage is empty %} {% set validationMessage = 'mautic.form.field.generic.required'|trans([], 'validators', language|default(null)) %} {% endif %} {% set containerAttributes = containerAttributes|merge({ 'class': containerAttributes.class|default([])|merge([ 'mauticform-required', ]), 'data-validate': field.alias, 'data-validation-type': field.type, }) %} {% if field.properties.multiple is not empty %} {% set containerAttributes = containerAttributes|merge({ 'data-validate-multiple': 'true', }) %} {% endif %} {% elseif required is defined and true == required %} {# Forced to be required #} {% set containerAttributes = containerAttributes|merge({ 'class': containerAttributes.class|default([])|merge([ 'mauticform-required', ]), }) %} {% endif %} {% if list is defined or field.properties.syncList is defined or field.properties.list is defined or field.properties.optionList is defined %} {% set parseList = [] %} {% set isBooleanList = false %} {% set contactFields = contactFields|default([]) %} {% set companyFields = companyFields|default([]) %} {% set formFields = contactFields|merge(companyFields) %} {% if field.properties.syncList is defined and field.properties.syncList is not empty and field.leadField is defined and field.leadField is not empty and formFields[field.leadField] is defined %} {% set leadFieldType = formFields[field.leadField].type %} {% if formFields[field.leadField].properties.list is not empty %} {% set parseList = formFields[field.leadField].properties.list %} {% elseif 'boolean' == leadFieldType %} {% set parseList = { '0': formFields[field.leadField].properties.no, '1': formFields[field.leadField].properties.yes, }%} {% elseif 'country' == leadFieldType %} {% set list = leadFieldCountryChoices() %} {% elseif 'region' == leadFieldType %} {% set list = leadFieldRegionChoices() %} {% elseif 'timezone' == leadFieldType %} {% set list = leadFieldTimezonesChoices() %} {% elseif 'locale' == leadFieldType %} {% set list = leadFieldLocaleChoices() %} {% endif %} {% endif %} {% if parseList is empty %} {% if list is defined %} {% set parseList = list %} {% elseif field.properties.optionlist is not empty %} {% set parseList = field.properties.optionlist %} {% elseif field.properties.list is not empty %} {% set parseList = field.properties.list %} {% endif %} {% if parseList.list is defined %} {% set parseList = parseList.list %} {% endif %} {% endif %} {% if field.leadField and formFields[field.leadField].type is not empty and formFields[field.leadField].type in ['datetime', 'date'] %} {% set tempLeadFieldType = formFields[field.leadField].type %} {% for key, aTemp in parseList %} {% set date = 'datetime' == tempLeadFieldType ? dateToFull(aTemp.label) : dateToDate(aTemp.label) %} {% if date %} {% set parseList = parseList|merge({ (key): parseList[key]|merge({ 'label': date, }), }) %} {% endif %} {% endfor %} {% endif %} {% if isBooleanList %} {% set list = formFieldParseBooleanList(parseList) %} {% else %} {% set list = formFieldParseList(parseList) %} {% endif %} {% set firstListValue = list|first %} {% endif %} {# end: field_helper #}
{% if field.showLabel %}

{{ field.label|purify }}

{% endif %}
{{ field.properties.text|raw }}