44 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Twig
		
	
	
	
	
	
			
		
		
	
	
			44 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Twig
		
	
	
	
	
	
{% macro render_field(form, fields, scope) %}
 | 
						|
    {% for index, field in fields %}
 | 
						|
        {% set input = attribute(field, "input@") %}
 | 
						|
 | 
						|
        {% if input is null or input == true %}
 | 
						|
 | 
						|
            {% if form.value(scope ~ field.name) %}
 | 
						|
                {% block field %}
 | 
						|
                    <div>
 | 
						|
                        {% block field_label %}
 | 
						|
                            <strong>{{ field.name|t|e }}</strong>:
 | 
						|
                        {% endblock %}
 | 
						|
 | 
						|
                        {% block field_value %}
 | 
						|
                            {% if field.type == 'checkboxes' %}
 | 
						|
                                <ul>
 | 
						|
                                    {% set use_keys = field.use is defined and field.use == 'keys' %}
 | 
						|
                                    {% for key,value in form.value(scope ~ field.name) %}
 | 
						|
                                        {% set index = (use_keys ? key : value) %}
 | 
						|
                                        <li>{{ field.options[index]|e }}</li>
 | 
						|
                                    {% endfor %}
 | 
						|
                                </ul>
 | 
						|
                            {% elseif field.type == 'checkbox' %}
 | 
						|
                                {{ (form.value(scope ~ field.name) == 1) ? "PLUGIN_FORM.YES"|t|e : "PLUGIN_FORM.NO"|t|e }}
 | 
						|
                            {% elseif field.type == 'select' %}
 | 
						|
                                {{ field.options[form.value(scope ~ field.name)]|e }}
 | 
						|
                            {% else %}
 | 
						|
                                {{ string(form.value(scope ~ field.name))|nl2br }}
 | 
						|
                            {% endif %}
 | 
						|
                        {% endblock %}
 | 
						|
                    </div>
 | 
						|
                {% endblock %}
 | 
						|
            {% endif %}
 | 
						|
        {% else %}
 | 
						|
            {% if field.fields %}
 | 
						|
                {% set new_scope = field.nest_id ? scope ~ field.name ~ '.' : scope %}
 | 
						|
                {{ _self.render_field(form, field.fields, new_scope) }}
 | 
						|
            {% endif %}
 | 
						|
        {% endif %}
 | 
						|
    {% endfor %}
 | 
						|
{% endmacro %}
 | 
						|
 | 
						|
{{ _self.render_field(form, form.fields, '') }}
 |