|
75 | 75 | {% endif %} |
76 | 76 | {% endmacro %} |
77 | 77 |
|
| 78 | +{# Render a field for the form #} |
| 79 | +{% macro render_custom_select(field) %} |
| 80 | + {{ field.label }} |
| 81 | + {% if field.description %} |
| 82 | + <div class="ui pointing below label"> |
| 83 | + {{ field.description }} |
| 84 | + </div> |
| 85 | + {% endif %} |
| 86 | + <div id="{{field.name}}" class="ui fluid {% if field.multiple %}multiple {% endif %}search selection dropdown"> |
| 87 | + {{ field() }} |
| 88 | + <i class="dropdown icon"></i> |
| 89 | + <div class="default text">{{field.label.text}}</div> |
| 90 | + <div class="menu"> |
| 91 | + {% for choice in field.choices %} |
| 92 | + <div class="item">{{choice}}</div> |
| 93 | + {% endfor %} |
| 94 | + </div> |
| 95 | + </div> |
| 96 | + {% if field.allow_custom %} |
| 97 | + <script> |
| 98 | + $(document).ready(function() { |
| 99 | + $('div#{{field.name}}').dropdown({ |
| 100 | + allowAdditions: true |
| 101 | + }) |
| 102 | + }); |
| 103 | + </script> |
| 104 | + {% endif %} |
| 105 | +{% endmacro %} |
| 106 | + |
78 | 107 | {# Render a field for the form #} |
79 | 108 | {% macro render_form_field(field, extra_classes='') %} |
80 | 109 | {% if field.type == 'Radio Field' %} |
|
97 | 126 | {{ field.label }} |
98 | 127 | </div> |
99 | 128 | {% elif field.type == 'RadioField' %} |
| 129 | + {{ field.label }} |
100 | 130 | {% for item in field %} |
101 | | - {{ field.label }} |
102 | 131 | <div class="ui radio checkbox"> |
103 | 132 | {{ item }} |
104 | 133 | {{ item.label }} |
|
108 | 137 | {{ field(class='ui button') }} |
109 | 138 | {% elif field.type == 'FormField' %} |
110 | 139 | {{ render_form(field) }} |
| 140 | + {% elif field.type == 'CustomSelectField' %} |
| 141 | + {{ render_custom_select(field) }} |
111 | 142 | {% else %} |
112 | 143 | {{ field.label }} |
113 | | - {% if field.description %} |
114 | | - <div class="ui pointing below label"> |
115 | | - {{ field.description }} |
116 | | - </div> |
117 | | - {% endif %} |
| 144 | + {% if field.description %} |
| 145 | + <div class="ui pointing below label"> |
| 146 | + {{ field.description }} |
| 147 | + </div> |
| 148 | + {% endif %} |
118 | 149 | {{ field(placeholder=field.label.text) }} |
119 | 150 | {% endif %} |
120 | 151 | {% endmacro %} |
0 commit comments