diff --git a/src/core/js/edit_mode.js b/src/core/js/edit_mode.js index 0de4266e10db1e0ddec970578b152c0ed454d080..851fe39aea9b1c45495d0a2e02137bd86bfcfb52 100644 --- a/src/core/js/edit_mode.js +++ b/src/core/js/edit_mode.js @@ -987,7 +987,10 @@ var edit_mode = new function () { } else if (property.datatype == "INTEGER") { result = "<input type='number' value='" + property.value + "'></input>"; } else if (property.datatype == "BOOLEAN") { - result = `<select class="selectpicker form-control caosdb-list-${property.datatype}"><option value=""></option><option ${property.value=="FALSE" ? "selected" : ""}>FALSE</option><option ${property.value=="TRUE" ? "selected" : ""}>TRUE</option></select>`; + result = $(`<select class="selectpicker form-control caosdb-list-${property.datatype}"><option value=""></option><option>FALSE</option><option>TRUE</option></select>`); + if(property.value) { + result.val(property.value); + } } else if (property.reference || property.datatype == "FILE") { result = $('<div/>'); var css = { @@ -1823,8 +1826,8 @@ var edit_mode = new function () { */ this.retrieve_datatype_list = async function (datatype) { var find_entity = ["FILE", "REFERENCE"].includes(datatype) ? "" : `"${datatype}"`; - var entities = datatype !== "FILE" ? edit_mode.query(`FIND Record ${find_entity}`) : []; - var files = edit_mode.query(`FIND File ${find_entity}`); + var entities = datatype !== "FILE" ? edit_mode.query(`FIND Record ${find_entity}`, true) : []; + var files = edit_mode.query(`FIND File ${find_entity}`, true); await Promise.all([entities, files]) @@ -2074,12 +2077,14 @@ var edit_mode = new function () { const query_cache = {}; - this.query = (str) => { - if (query_cache[str]) { - return query_cache[str]; + this.query = (str, use_cache) => { + if (use_cache && query_cache[str]) { + return query_cache[str]; } const result = query(str); - query_cache[str] = result; + if (use_cache) { + query_cache[str] = result; + } return result; }