1 {% extends (mode == 'ajax') ? "ajax.html.twig" : "page.html.twig" %}
4 {% if action == 'edit' %}
5 <form action="{{ url_for('doEditDynamicField', {'form_name': form_name, 'id': df.getId()}) }}" method="post" class="ui form">
6 {% if mode != 'ajax' %}
7 <div class="ui top attached accordion-styled header">
8 {{ _T("Edit field %field")|replace({'%field': df.getName()}) }}
10 <div class="ui bottom attached accordion-styled segment">
11 <div class="active content field">
13 <div class="{% if df.getType != 0 %} required {% endif %}inline field">
14 <label for="field_name">{{ _T("Name:") }}</label>
15 <input type="text" name="field_name" id="field_name" value="{{ df.getName(false) }}"{% if df.getType != 0 %} required="required"{% endif %}/>
17 <div class="inline field">
18 <label for="field_perm">{{ _T("Permissions:") }}</label>
19 <select name="field_perm" id="field_perm" class="ui dropdown">
20 {% for key, value in perm_names %}
21 <option value="{{ key }}"{% if key == df.getPerm() %} selected="selected"{% endif %}>{{ value }}</option>
26 <div class="inline field">
27 <label for="field_required">{{ _T("Required:") }}</label>
28 <select name="field_required" id="field_required" class="ui dropdown">
29 <option value="0" {% if not df.isRequired() %}selected="selected"{% endif %}>{{ _T("No") }}</option>
30 <option value="1" {% if df.isRequired() %}selected="selected"{% endif %}>{{ _T("Yes") }}</option>
34 {% if df.hasWidth() %}
35 <div class="inline field">
36 <label for="field_width">{{ _T("Width:") }}</label>
37 <input type="text" name="field_width" id="field_width" value="{{ df.getWidth() }}" size="3"/>
40 {% if df.hasHeight() %}
41 <div class="inline field">
42 <label for="field_height">{{ _T("Height:") }}</label>
43 <input type="text" name="field_height" id="field_height" value="{{ df.getHeight() }}" size="3"/>
47 <div class="inline field">
48 <label for="field_size">{{ _T("Size:") }}</label>
49 <input type="text" name="field_size" id="field_size" value="{{ df.getSize() }}" size="3"/>
50 {% if df.getType == 6 %}
51 <span class="exemple">{{ _T("Maximum file size, in Ko.") }}</span>
53 <span class="exemple">{{ _T("Maximum number of characters.") }}</span>
57 {% if df.isMultiValued() %}
58 <div class="inline field">
59 <label for="field_repeat">{{ _T("Repeat:") }}</label>
60 <input type="text" name="field_repeat" id="field_repeat" value="{{ df.getRepeat() }}" size="3"/>
61 <span class="exemple">{{ _T("Number of values or zero if infinite.") }}</span>
64 {% if df.hasFixedValues() %}
65 <div class="inline field">
66 <label for="fixed_values">{{ _T("Values:") }}</label>
67 <textarea name="fixed_values" id="fixed_values" cols="20" rows="6">{{ df.getValues(true) }}</textarea>
68 <br/><span class="exemple">{{ _T("Choice list (one entry per line).") }}</span>
72 <label for="field_information">{{ _T("Information:") }}</label>
73 <textarea name="field_information" id="field_information" cols="20" rows="6">{{ df.getInformation() }}</textarea>
74 <span class="tip">{{ _T("Extra information displayed along with dynamic field.") }}</span>
76 {% if mode != 'ajax' %}
80 <div class="ui basic center aligned segment">
81 <button type="submit" class="ui labeled icon primary button action">
82 <i class="save icon" aria-hidden="true"></i> {{ _T("Save") }}
84 <input type="submit" name="cancel" value="{{ _T("Cancel") }}" class="ui button"/>
85 <input type="hidden" name="form_name" id="form_name" value="{{ form_name }}"/>
88 {% include "components/forms/csrf.html.twig" %}
90 {% elseif action == 'add' %}
91 <form action="{{ url_for('doAddDynamicField', {'form_name': form_name}) }}" method="post" enctype="multipart/form-data" title="{{ _T("New dynamic field") }}" class="ui form">
92 {% if mode != 'ajax' %}
93 <div class="ui top attached accordion-styled header">
94 {{ _T("New dynamic field") }}
96 <div class="ui bottom attached accordion-styled segment">
97 <div class="active content field">
99 <div class="inline field">
100 <label for="field_name">{{ _T("Field name") }}</label>
101 <input size="40" type="text" name="field_name" id="field_name" value="{% if df is defined %}{{ df.getName() }}{% endif %}"/>
103 <div class="inline field">
104 <label for="field_perm">{{ _T("Visibility") }}</label>
105 <select name="field_perm" id="field_perm" class="ui dropdown">
107 {% if df is defined %}
108 {% set perm = df.getPerm() %}
110 {% for key, value in perm_names %}
111 <option value="{{ key }}"{% if key == perm %} selected="selected"{% endif %}>{{ value }}</option>
115 <div class="inline field">
116 <label for="field_type">{{ _T("Type") }}</label>
117 <select name="field_type" id="field_type" class="ui dropdown">
119 {% if df is defined %}
120 {% set type = df.getType() %}
122 {% for key, value in field_type_names %}
123 <option value="{{ key }}"{% if key == type %} selected="selected"{% endif %}>{{ value }}</option>
127 <div class="inline field">
128 <label for="field_required">{{ _T("Required") }}</label>
129 <select name="field_required" id="field_required" class="ui dropdown">
130 <option value="0"{% if df is not defined or not df.isRequired() %} selected="selected"{% endif %}>{{ _T("No") }}</option>
131 <option value="1"{% if df is defined and df.isRequired() %} selected="selected"{% endif %}>{{ _T("Yes") }}</option>
133 {% include "components/forms/csrf.html.twig" %}
135 {% if mode != 'ajax' %}
138 <div class="ui basic center aligned segment">
139 <button type="submit" name="valid" class="ui labeled icon primary button action">
140 <i class="plus icon" aria-hidden="true"></i> {{ _T("Add") }}
142 <input type="submit" name="cancel" value="{{ _T("Cancel") }}" class="ui button"/>
144 <input type="hidden" name="form_name" id="form_name" value="{{ form_name }}"/>
145 {% if mode == 'ajax' %}
146 <input type="hidden" name="ajax" value="true"/>
148 {% if mode != 'ajax' %}
155 {% block javascripts %}
157 $('#field_information').summernote({
158 lang: '{{ i18n.getID()|replace({'_': '-'}) }}',
161 ['style', ['style']],
162 ['font', ['bold', 'italic', 'strikethrough', 'clear']],
163 ['para', ['ul', 'ol', 'paragraph']],
164 ['insert', ['link', 'picture']],
165 ['view', ['codeview', 'help']]
168 'p', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6'
171 $('#field_information').summernote('focus');