implemented title and fixed empty results cause newline

This commit is contained in:
maru21 2023-11-06 00:00:41 +01:00
parent 77c7a7597a
commit 9fc05b97d3
7 changed files with 37 additions and 7 deletions

View File

@ -216,6 +216,7 @@
<code class="w3-codespan">hiddenField</code><br />
<code class="w3-codespan">current_time</code><br />
<code class="w3-codespan">current_date</code><br />
<code class="w3-codespan">title</code><br />
<code class="w3-codespan">markup:title</code><br />
And these are the markups you can add:<br />
<code class="w3-codespan">title</code><br />
@ -253,6 +254,12 @@
><br />
You can also have multiple hidden fields selectable by a list
</li>
<li>
<b>For titles in form</b><br />
Use
<code class="w3-codespan"
>%Sample Expression=title%1</code>
</li>
<li>
You can also use markups in the template file at the beginning
of a line.<br />

View File

@ -318,6 +318,17 @@ function buildField(obj, form, sidebarList) {
div.appendChild(label);
div.appendChild(input3);
break;
case "title":
let title = document.createElement("p");
title.classList.add("w3-xxlarge");
title.innerHTML = obj.word;
title.id = obj.word.replace(/ /g, "_");
title.setAttribute("tabindex", "-1");
title.style.cssText = "margin: 20px 0 0 0";
divContainer.className = "w3-container";
div.style.cssText = "padding: 0 10px";
div.appendChild(title);
break;
}
//check if item is connected list item cl
@ -397,6 +408,13 @@ function buildSidebarList(obj, sidebarList) {
sidebarListItem.setAttribute("data-item", obj.word.replace(/ /g, "_"));
sidebarListItem.innerHTML = obj.word;
sidebarListItem;
if (obj.type == "title") {
sidebarListItem.setAttribute("data-item", "_title");
sidebarListItem.style.backgroundColor = "#e3e7e8";
sidebarListItem.classList.remove("w3-button");
sidebarListItem.style.borderTop = "1px solid rgb(221, 221, 221)";
sidebarListItem.innerHTML = "<b>"+obj.word+"</b>";
}
sidebarList.appendChild(sidebarListItem);
}

View File

@ -234,12 +234,9 @@ function loadFileSidebar(tF) {
sidebarList.appendChild(sidebarListItem);
let c = 0;
let sidebarItemsAmount = 10;
let sidebarItemsAmount = 6;
for (let obj of tF.reverse()) {
console.log(obj);
sidebarListItem = document.createElement("li");
sidebarListItem.classList.add(
"w3-bar-item",

View File

@ -273,6 +273,7 @@ function formEvts() {
//add handle on blur event listener to each form object
let mainForm = document.getElementById("mainFormObj");
for (let formElement of mainForm.children) {
if (formElement.firstChild.lastChild == null) continue;
let id = formElement.firstChild.lastChild.id;
document.getElementById(id).addEventListener("blur", (e) => {
e.preventDefault;
@ -283,6 +284,7 @@ function formEvts() {
function focusOnField(id) {
let targetElement = document.getElementById(id);
if (targetElement == null) return;
//handle pell content focus
if (targetElement.parentElement != undefined) {

View File

@ -45,6 +45,7 @@ window.activeState = {
"current_time",
"current_date",
"markup",
"title",
],
markups: ["title", "link", "italic", "green_highlighted", "highlighted"],
storage: [],

View File

@ -63,6 +63,7 @@ function parseFormOnSubmit(returnJSON = false, parseOnly = false) {
//iterate through templateObjects and look for according formdata
for (let obj of objects) {
obj.result = "";
//compaire each obj with elements from mainFormObj
for (let data of dataArray) {
@ -114,9 +115,12 @@ function parseFormOnSubmit(returnJSON = false, parseOnly = false) {
objects[i].result +
fullString.substring(objects[i].epos, fullString.length);
} else {
let tepos = objects[i].epos;
//skip empty results by skipping the newline char
if (objects[i].result == "") tepos += 1;
b +=
objects[i].result +
fullString.substring(objects[i].epos, objects[j].spos);
fullString.substring(tepos, objects[j].spos);
}
}

View File

@ -1,5 +1,6 @@
#connected list test
%Con List Selection=h:Die Patientin ist erwerbstätig:longText:!ls;h:Der Patient ist erwerbstätig auf dem 2. AM:longText:!ls;h: Der Patient ist nicht erwerbstätig:longText:!ls;h:Andere:simpleInput:!ls;%1
%Con List Selection=h:Die Patientin ist erwerbstätig:longText:!ls;h:Der Patient ist erwerbstätig auf dem 2. AM:longText:!ls;h: Der Patient ist nicht erwerbstätig:longText:!ls;h:Andere:simpleInput:!ls;%10
#connected list one item test
%Con List Button=h:Lebensmittelpunkt:longText:!ls;%2
%Wohnen=title%12
%Con List Button=h:Lebensmittelpunkt:longText:!ls;%20