Add maps of objects + add entity effect property

This commit is contained in:
Misode
2019-10-04 10:15:47 +02:00
parent 148f5a19a3
commit 5e9fbc0f89
4 changed files with 98 additions and 11 deletions

18
view.js
View File

@@ -197,13 +197,23 @@ function generateMap(data, struct) {
let $el = $('#components').find('[data-type="map"]').clone();
$el.attr('data-index', struct.id).attr('data-item-type', struct.values.type);
$el.find('[data-name="1"]').attr('data-i18n', struct.translate);
$el.find('[data-name="2"]').attr('data-i18n', struct.translateValue + '_add');
$el.find('[data-name="2"]').attr('data-i18n', struct.translate + '_add');
$el.find('input').keypress((e) => {if (e.which == 13) addToMap(e.target);});
if (data) {
for (let key of Object.keys(data)) {
console.log(data[key]);
let $item = generateComponent(data[key], {id: key, type: struct.values.type, translate: key});
$item.append('<div class="input-group-append"><button class="btn btn-outline-danger bg-light" type="button" onclick="removeFromMap(this)" data-i18n="remove"></button></div>');
let field = struct.values;
field.id = key;
field.translate = key;
let $item = generateComponent(data[key], field);;
if (field.type === 'object') {
let $header = $('<div class="card-header pb-1"></div>');
$header.append(('<span class="input-group-text mr-3 mb-2 float-left" data-i18n="' + field.translate + '"></span>'));
$header.append('<button type="button" class="btn btn-danger mb-2 float-right" onclick="removeFromMap(this)" data-i18n="' + struct.translate + '_remove"></button>');
$item.prepend($header);
} else {
$item.append('<div class="input-group-append"><button class="btn btn-outline-danger bg-light" type="button" onclick="removeFromMap(this)" data-i18n="remove"></button></div>');
}
$item.attr('data-index', field.id);
$el.append($item);
}
}