Fix text-area type, support for newlines in key substitutions (fix #543), small tweaks to etymology-theme (fix #537)

This commit is contained in:
pietervdvn 2021-11-07 18:37:42 +01:00
parent 7839712deb
commit fdb769a0fc
6 changed files with 19 additions and 10 deletions

View file

@ -48,6 +48,9 @@ export default class TagRenderingConfig {
this.render = null;
this.question = null;
this.condition = null;
this.id = "questions"
this.group = ""
return;
}

View file

@ -66,12 +66,6 @@ export default class WithContextLoader {
if (renderingJson["builtin"] !== undefined) {
const renderingId = renderingJson["builtin"]
if (renderingId === "questions") {
if (readOnly) {
throw `A tagrendering has a question, but asking a question does not make sense here: is it a title icon or a geojson-layer? ${context}. The offending tagrendering is ${JSON.stringify(
renderingJson
)}`;
}
const tr = new TagRenderingConfig("questions", context);
renderings.push(tr)
continue;

View file

@ -196,7 +196,7 @@ export default class ValidatedTextField {
"A basic string"),
ValidatedTextField.tp(
"text",
"A string, but allows input of longer strings more comfortably (a text area)",
"A string, but allows input of longer strings more comfortably and supports newlines (a text area)",
undefined,
undefined,
undefined,
@ -473,6 +473,9 @@ export default class ValidatedTextField {
options.inputMode = tp.inputmode;
if(tp.inputmode === "text") {
options.htmlType = "area"
}
let input: InputElement<string> = new TextField(options);

View file

@ -186,7 +186,14 @@ Note that these values can be prepare with javascript in the theme by using a [c
while (match) {
const key = match[1]
txt = txt.replace("{" + key + "}", tags[key] ?? "")
let v = tags[key]
if(v !== undefined ){
if(typeof v !== "string"){
v = ""+v
}
v = v.replace(/\n/g, "<br/>")
}
txt = txt.replace("{" + key + "}", v ?? "")
match = txt.match(regex)
}

View file

@ -84,7 +84,7 @@
"nl": "<a href='https://inventaris.onroerenderfgoed.be/erfgoedobjecten?tekst={name}' target='_blank'>Zoeken op inventaris onroerend erfgoed</a>",
"en": "<a href='https://inventaris.onroerenderfgoed.be/erfgoedobjecten?tekst={name}' target='_blank'>Search on inventaris onroerend erfgoed</a>"
},
"conditions": "_country=be"
"condition": "_country=be"
},
{
"id": "simple etymology",
@ -118,6 +118,7 @@
]
}
},
"questions",
{
"id": "street-name-sign-image",
"render": {

View file

@ -165,7 +165,8 @@
"id": "<i>{inscription}</i>"
},
"freeform": {
"key": "inscription"
"key": "inscription",
"type": "text"
},
"id": "ghost_bike-inscription"
},