- if (field.value_type.hasLanguage) {
- let pp = $("<div class='input-group-prepend'>");
- let lang_input = $("<input class='form-control' size='1' class='lang'>");
- lang_input.data('edited', $(element));
- lang_input.data('edited-attr', 'x-a-xml-lang');
- lang_input.val(
- $(element).attr('x-a-xml-lang')
+ addMetaInput(cont, field, element) {
+ let self = this;
+
+ let ig = $('<div class="input-group">');
+ //ig.data('edited', element);
+ ig.appendTo(cont);
+
+ if (field.value_type.hasLanguage) {
+ let pp = $("<div class='input-group-prepend'>");
+ let lang_input = $("<input class='form-control' size='1' class='lang'>");
+ lang_input.data('edited', $(element));
+ lang_input.data('edited-attr', 'x-a-xml-lang');
+ lang_input.val(
+ $(element).attr('x-a-xml-lang')
+ );
+ lang_input.appendTo(pp);
+ pp.appendTo(ig);
+ }
+
+ let $aninput;
+ if (field.value_type.widget == 'select') {
+ $aninput = $("<select class='form-control'>");
+ $.each(field.value_type.options, function() {
+ $("<option>").text(this).appendTo($aninput);
+ })
+ } else {
+ $aninput = $("<input class='form-control'>");
+ if (field.value_type.autocomplete) {
+ let autoOptions = field.value_type.autocomplete;
+ $aninput.autocomplete(autoOptions).autocomplete('instance')._renderItem = function(ul, item) {
+ let t = item.label;
+ if (item.name) t += '<br><small><strong>' + item.name + '</strong></small>';
+ if (item.description) t += '<br><small><em>' + item.description + '</em></small>';
+ return $( "<li>" )
+ .append( "<div>" + t + "</div>" )
+ .appendTo( ul );
+ };
+ }
+ }
+ $aninput.data('edited', $(element))
+ $aninput.val(
+ $(element).text()