sorting and cleanup

This commit is contained in:
maru21 2023-11-06 20:13:18 +01:00
parent 1c71af44ba
commit edfcc95cdf
7 changed files with 43 additions and 79 deletions

View File

@ -1,7 +1,7 @@
import { getFileName } from "./storage.js";
import pell from "./pell.js"
function transformTemplateObject(objects) {
function buildHtmlForm(objects) {
let form = document.createElement("FORM");
form.setAttribute("method", "post");
form.setAttribute("action", "javascript:void(0)");
@ -492,4 +492,4 @@ function userFileNameDiv(fileName) {
return divContainer;
}
export default transformTemplateObject;
export default buildHtmlForm;

View File

@ -1,5 +1,5 @@
import {setNewTemplate, loadTemplate} from "./web.js";
import { hideMenus, modalNotifier, resetNavBar } from "./evts.js";
import { hideMenus, modalNotifier, resetNavBar, resetPage } from "./evts.js";
import { passwordHash, sanitize } from "./scripts.js";
function createTemplate(template = false) {
@ -35,22 +35,7 @@ function createTemplate(template = false) {
hideMenus("force");
let mainFormDiv = document.getElementById("mainForm");
let outputDiv = document.getElementById("output");
let submitContainerDiv = document.getElementById("submitContainer");
let sidebarDiv = document.getElementById("sidebar");
let fileInfoDiv = document.getElementById("outputInfo");
fileInfoDiv.innerHTML = "";
fileInfoDiv.replaceWith(fileInfoDiv.cloneNode(true));
mainFormDiv.innerHTML = "";
mainFormDiv.replaceWith(mainFormDiv.cloneNode(true));
outputDiv.innerHTML = "";
outputDiv.replaceWith(outputDiv.cloneNode(true));
submitContainerDiv.innerHTML = "";
submitContainerDiv.replaceWith(submitContainerDiv.cloneNode(true));
sidebarDiv.innerHTML = "";
sidebarDiv.replaceWith(sidebarDiv.cloneNode(true));
resetPage();
document.getElementById("mainForm").appendChild(createTemplateInput());
document.getElementById("sidebar").appendChild(loadTemplateSidebar(activeState.templates));

View File

@ -296,6 +296,27 @@ function copyToClipBoard(html) {
document.body.removeChild(container);
}
function resetPage() {
let mainFormDiv = document.getElementById("mainForm");
let outputDiv = document.getElementById("output");
let submitContainerDiv = document.getElementById("submitContainer");
let sidebarDiv = document.getElementById("sidebar");
let fileInfoDiv = document.getElementById("outputInfo");
mainFormDiv.innerHTML = "";
mainFormDiv.replaceWith(mainFormDiv.cloneNode(true));
outputDiv.innerHTML = "";
outputDiv.replaceWith(outputDiv.cloneNode(true));
submitContainerDiv.innerHTML = "";
submitContainerDiv.replaceWith(submitContainerDiv.cloneNode(true));
sidebarDiv.innerHTML = "";
sidebarDiv.replaceWith(sidebarDiv.cloneNode(true));
fileInfoDiv.innerHTML = "";
fileInfoDiv.replaceWith(fileInfoDiv.cloneNode(true));
fileInfoDiv.style.display = "none";
}
export {
hideMenus,
showMenu,
@ -308,5 +329,6 @@ export {
resetNavBar,
printVersion,
wrongPwAlert,
copyToClipBoard
copyToClipBoard,
resetPage
};

View File

@ -1,7 +1,7 @@
import { storeData, clearData, retrieveData, setTimeStamp } from "./storage.js";
import { loadTemplate } from "./web.js";
import parseForm from "./parseForm.js";
import { copyToClipBoard, modalNotifier, resetNavBar } from "./evts.js";
import { copyToClipBoard, modalNotifier, resetNavBar, resetPage } from "./evts.js";
import { passwordHash } from "./scripts.js";
function buildFile() {
@ -46,22 +46,7 @@ function buildFile() {
document.getElementById("toggleTestBlocksMenu").style.display = "none";
//reset page and event listeners
let mainFormDiv = document.getElementById("mainForm");
let outputDiv = document.getElementById("output");
let submitContainerDiv = document.getElementById("submitContainer");
let sidebarDiv = document.getElementById("sidebar");
let fileInfoDiv = document.getElementById("outputInfo");
mainFormDiv.innerHTML = "";
mainFormDiv.replaceWith(mainFormDiv.cloneNode(true));
outputDiv.innerHTML = "";
outputDiv.replaceWith(outputDiv.cloneNode(true));
submitContainerDiv.innerHTML = "";
submitContainerDiv.replaceWith(submitContainerDiv.cloneNode(true));
sidebarDiv.innerHTML = "";
sidebarDiv.replaceWith(sidebarDiv.cloneNode(true));
fileInfoDiv.innerHTML = "";
fileInfoDiv.replaceWith(fileInfoDiv.cloneNode(true));
resetPage();
document.getElementById("mainForm").innerHTML = mainFormPlaceholder();
@ -90,6 +75,8 @@ function loadFileDiv(fileName, template, pos) {
function loadFileDivCallBack() {
let tF = retrieveData("templateFiles");
document.getElementById("sidebar").appendChild(loadFileSidebar(tF));
let lT = activeState.loadedTemplate;

View File

@ -1,8 +1,8 @@
import { retrieveData, storeData, createStorageObj } from "./storage.js";
import parseInput from "./parseTemplate.js";
import transformTemplateObject from "./buildForm.js";
import { copyToClipBoard, handleOnBlur, modalNotifier } from "./evts.js";
import parseTemplate from "./parseTemplate.js";
import buildHtmlForm from "./buildHtmlForm.js";
import { copyToClipBoard, handleOnBlur, modalNotifier, resetPage } from "./evts.js";
import parseForm, { parseTextMarkups } from "./parseForm.js";
import { setTemplatePreset } from "./web.js";
@ -51,13 +51,13 @@ function buildForm(templateInput, loadOnly = false) {
//parse text markups like !l !n in templateInput
templateInput = parseTextMarkups(templateInput);
//set objects array for parseInput Function
//set objects array for parseTemplate Function
var objects = [];
//loop through words, parse it individually and add it to objects array
for (let i = 0; i < wordArray.length; i++) {
parseInput(wordArray, objects, i);
parseTemplate(wordArray, objects, i);
//console.log(wordArray[i]);
}
@ -76,27 +76,12 @@ function buildForm(templateInput, loadOnly = false) {
activeState.templateObjectsPurified = objectsPurified;
//reset page and event listeners
let mainFormDiv = document.getElementById("mainForm");
let outputDiv = document.getElementById("output");
let submitContainerDiv = document.getElementById("submitContainer");
let sidebarDiv = document.getElementById("sidebar");
let fileInfoDiv = document.getElementById("outputInfo");
mainFormDiv.innerHTML = "";
mainFormDiv.replaceWith(mainFormDiv.cloneNode(true));
outputDiv.innerHTML = "";
outputDiv.replaceWith(outputDiv.cloneNode(true));
submitContainerDiv.innerHTML = "";
submitContainerDiv.replaceWith(submitContainerDiv.cloneNode(true));
sidebarDiv.innerHTML = "";
fileInfoDiv.innerHTML = "";
fileInfoDiv.replaceWith(fileInfoDiv.cloneNode(true));
fileInfoDiv.style.display = "none";
resetPage();
//finally build html code for Form and siddebar and add it to dom if needed
if (loadOnly) {return};
if (loadOnly) return;
transformTemplateObject(objectsPurified);
buildHtmlForm(objectsPurified);
//add events
formEvts();
}

View File

@ -1,4 +1,4 @@
function parseInput(wordArray, objects, i) {
function parseTemplate(wordArray, objects, i) {
let word = wordArray[i];
if (word.substring(0, 1) == "%") {
@ -385,4 +385,4 @@ function isCharNumber(c) {
return c >= "0" && c <= "9";
}
export default parseInput;
export default parseTemplate;

View File

@ -1,4 +1,4 @@
import { hideMenus, modalNotifier, printVersion, resetNavBar } from "./evts.js";
import { hideMenus, modalNotifier, printVersion, resetNavBar, resetPage } from "./evts.js";
import { passwordHash, sanitize } from "./scripts.js";
import { retrieveData, storeData, storeSettings } from "./storage.js";
@ -28,22 +28,7 @@ const buildSettings = () => {
hideMenus("force");
let mainFormDiv = document.getElementById("mainForm");
let outputDiv = document.getElementById("output");
let submitContainerDiv = document.getElementById("submitContainer");
let sidebarDiv = document.getElementById("sidebar");
let fileInfoDiv = document.getElementById("outputInfo");
fileInfoDiv.innerHTML = "";
fileInfoDiv.replaceWith(fileInfoDiv.cloneNode(true));
mainFormDiv.innerHTML = "";
mainFormDiv.replaceWith(mainFormDiv.cloneNode(true));
outputDiv.innerHTML = "";
outputDiv.replaceWith(outputDiv.cloneNode(true));
submitContainerDiv.innerHTML = "";
submitContainerDiv.replaceWith(submitContainerDiv.cloneNode(true));
sidebarDiv.innerHTML = "";
sidebarDiv.replaceWith(sidebarDiv.cloneNode(true));
resetPage();
addSidebar();