{% macro render_breadcrumbs(record, ancestors) %} {% endmacro %} {% macro render_field(item, field, prefix) %} {% set record = item.record or item %} {% set field_name = prefix + field.name %} {% set field_id = 'field-' + field_name %} {% set field_value = item[field.name] %}
{% set widget = field.label_i18n.get('widget') %} {% if field.type.name == 'datetime' %} {% elif field.type.name == 'date' %} {% elif field.type.name == 'boolean' %} {% elif field.type.name == 'select' %} {% elif field.type.name == 'url' %} {% elif field.type.name == 'string' %} {% if widget == 'time' %} {% elif widget == 'navigate' %} {% else %} {% endif %} {% elif field.type.name in ('integer', 'sort_key') %} {% elif field.type.name == 'float' %} {% elif field.type.name in ('text', 'strings') %} {% elif field.type.name in ('markdown', 'html') %} {% elif field.type.name == 'rst' %} {% elif field.type.name == 'flow' %}
{% if field_value %} {% for block in field_value.blocks %} {{ render_flowblock(block, field_name, '%d' % loop.index) }} {% endfor %} {% endif %}
{{ _('Add') }} {% set block_models = record.pad.db.flowblocks %} {% for flow_type in (field.type.flow_blocks or block_models) %} {% endfor %}
{% endif %}
{% endmacro %} {% macro render_flowblock(block, field_name, block_index) %} {% set new_block = block_index.startswith('uuid_') %}
{{ block.flowblockmodel.name_i18n.get(g.lang_code) }} {% for block_field in block.flowblockmodel.fields %} {{ render_field(block, block_field, prefix='%s-%s-%s-' % (field_name, block_index, block.flowblockmodel.id)) }} {% endfor %}
{% endmacro %}