fixed bugs
This commit is contained in:
parent
9ee0b3e2c8
commit
e4336766a0
@ -104,17 +104,10 @@
|
|||||||
<a
|
<a
|
||||||
class="w3-button w3-right w3-padding-large w3-hover-grey w3-large w3-flat-wet-aspalt"
|
class="w3-button w3-right w3-padding-large w3-hover-grey w3-large w3-flat-wet-aspalt"
|
||||||
href="javascript:void(0);"
|
href="javascript:void(0);"
|
||||||
title="Toggle Files Menu"
|
title="Open Files Menu"
|
||||||
id="toggleFilesMenu"
|
id="toggleFilesMenu"
|
||||||
><i class="fa fa-file"></i
|
><i class="fa fa-file"></i
|
||||||
></a>
|
></a>
|
||||||
<a
|
|
||||||
class="w3-button w3-right w3-padding-large w3-hover-grey w3-large w3-flat-wet-aspalt"
|
|
||||||
href="javascript:void(0);"
|
|
||||||
title="Logout"
|
|
||||||
id="logout"
|
|
||||||
><i class="fa fa-sign-out-alt"></i
|
|
||||||
></a>
|
|
||||||
<a
|
<a
|
||||||
href="."
|
href="."
|
||||||
class="w3-left-align w3-button w3-padding-large w3-flat-wet-asphalt"
|
class="w3-left-align w3-button w3-padding-large w3-flat-wet-asphalt"
|
||||||
|
|||||||
@ -71,7 +71,7 @@ function insertTextBlocks(t) {
|
|||||||
|
|
||||||
function handleOnBlur(t) {
|
function handleOnBlur(t) {
|
||||||
activeState.lastElement = t.id;
|
activeState.lastElement = t.id;
|
||||||
createStorageObj();
|
//createStorageObj();
|
||||||
}
|
}
|
||||||
|
|
||||||
function clickClearForm() {
|
function clickClearForm() {
|
||||||
|
|||||||
@ -229,7 +229,7 @@ function loadFileSidebar(tF) {
|
|||||||
|
|
||||||
function mainFormPlaceholder(msg = "Select a file") {
|
function mainFormPlaceholder(msg = "Select a file") {
|
||||||
return (
|
return (
|
||||||
"<div class='w3-row-padding w3-padding-24 w3-container w3-flat-clouds'><div class='w3-code notranslate w3-border-white' style='font-family: Arial, Helvetica, sans-serif;'><p>" +
|
"<div id='fileDisplay' class='w3-row-padding w3-padding-24 w3-container w3-flat-clouds'><div class='w3-code notranslate w3-border-white' style='font-family: Arial, Helvetica, sans-serif;'><p>" +
|
||||||
msg +
|
msg +
|
||||||
"</p><br><br><br><br><br><br><br><br><br><br><br></div></div>"
|
"</p><br><br><br><br><br><br><br><br><br><br><br></div></div>"
|
||||||
);
|
);
|
||||||
@ -315,6 +315,7 @@ function formEvts(storageName) {
|
|||||||
document.getElementById("mainForm").innerHTML =
|
document.getElementById("mainForm").innerHTML =
|
||||||
mainFormPlaceholder("No file yet");
|
mainFormPlaceholder("No file yet");
|
||||||
}
|
}
|
||||||
|
modalNotifier(activeState.fileName + " deleted!", 2);
|
||||||
|
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
@ -332,6 +333,10 @@ function loadSpecificTemplate(storageName) {
|
|||||||
//reset sidebar to clear events
|
//reset sidebar to clear events
|
||||||
let sidebarDiv = document.getElementById("sidebar");
|
let sidebarDiv = document.getElementById("sidebar");
|
||||||
sidebarDiv.replaceWith(sidebarDiv.cloneNode(true));
|
sidebarDiv.replaceWith(sidebarDiv.cloneNode(true));
|
||||||
|
|
||||||
|
//reset correct activePage
|
||||||
|
activeState.activePage = "template";
|
||||||
|
|
||||||
loadTemplate(storageName.split("_m21_")[1]);
|
loadTemplate(storageName.split("_m21_")[1]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
151
js/9.9.9/init.js
151
js/9.9.9/init.js
@ -1,6 +1,18 @@
|
|||||||
import { hideMenus, showMenu, showSidebar, showTextBlocks, clickSetForm, clickImportFiles, modalNotifier } from "./evts.js";
|
import {
|
||||||
|
hideMenus,
|
||||||
|
showMenu,
|
||||||
|
showSidebar,
|
||||||
|
showTextBlocks,
|
||||||
|
clickSetForm,
|
||||||
|
clickImportFiles,
|
||||||
|
modalNotifier,
|
||||||
|
} from "./evts.js";
|
||||||
import { buildFile } from "./files.js";
|
import { buildFile } from "./files.js";
|
||||||
import setPassword, { passwordHash, sessionVerification, inputRead } from "./scripts.js";
|
import setPassword, {
|
||||||
|
passwordHash,
|
||||||
|
sessionVerification,
|
||||||
|
inputRead,
|
||||||
|
} from "./scripts.js";
|
||||||
import { getUsrId, logout } from "./scripts.js";
|
import { getUsrId, logout } from "./scripts.js";
|
||||||
import parseFormOnSubmit from "./parseForm.js";
|
import parseFormOnSubmit from "./parseForm.js";
|
||||||
import { createStorageObj } from "./storage.js";
|
import { createStorageObj } from "./storage.js";
|
||||||
@ -8,7 +20,6 @@ import XORCipher from "./xorc.js";
|
|||||||
import sha256 from "./sha256.min.js";
|
import sha256 from "./sha256.min.js";
|
||||||
import { loadNavBar, initTextBlocks } from "./web.js";
|
import { loadNavBar, initTextBlocks } from "./web.js";
|
||||||
|
|
||||||
|
|
||||||
window.activeState = {
|
window.activeState = {
|
||||||
userId: getUsrId(),
|
userId: getUsrId(),
|
||||||
activePage: "landing",
|
activePage: "landing",
|
||||||
@ -25,18 +36,10 @@ window.activeState = {
|
|||||||
"current_date",
|
"current_date",
|
||||||
"markup",
|
"markup",
|
||||||
],
|
],
|
||||||
markups: [
|
markups: ["title", "link", "italic", "green_highlighted", "highlighted"],
|
||||||
"title",
|
|
||||||
"link",
|
|
||||||
"italic",
|
|
||||||
"green_highlighted",
|
|
||||||
"highlighted",
|
|
||||||
]
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
function init() {
|
function init() {
|
||||||
|
|
||||||
//load settings into activeState
|
//load settings into activeState
|
||||||
for (let setting of Object.entries(window.settings)) {
|
for (let setting of Object.entries(window.settings)) {
|
||||||
activeState[setting[0]] = setting[1];
|
activeState[setting[0]] = setting[1];
|
||||||
@ -51,7 +54,6 @@ function init() {
|
|||||||
//write verifiedStatus content into passwordHash for decode check later
|
//write verifiedStatus content into passwordHash for decode check later
|
||||||
passwordHash.set(XORCipher.decode(sha256("passwordHash"), verfiedStatus));
|
passwordHash.set(XORCipher.decode(sha256("passwordHash"), verfiedStatus));
|
||||||
document.getElementById("login").style.display = "none";
|
document.getElementById("login").style.display = "none";
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
document.getElementById("login").style.display = "block";
|
document.getElementById("login").style.display = "block";
|
||||||
}
|
}
|
||||||
@ -68,98 +70,89 @@ function init() {
|
|||||||
//print current version to footer
|
//print current version to footer
|
||||||
printVersion();
|
printVersion();
|
||||||
|
|
||||||
//add sign out
|
|
||||||
document
|
|
||||||
.getElementById("logout")
|
|
||||||
.addEventListener("click", logout);
|
|
||||||
|
|
||||||
|
|
||||||
//adjust title for mobile use
|
//adjust title for mobile use
|
||||||
if (screen.width < 993) {
|
if (screen.width < 993) {
|
||||||
document.getElementById("siteTitle").innerHTML = "TG";
|
document.getElementById("siteTitle").innerHTML = "TG";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function eventListeners() {
|
function eventListeners() {
|
||||||
|
|
||||||
//add hideMenu to Body
|
//add hideMenu to Body
|
||||||
document
|
document
|
||||||
.getElementsByClassName("w3-main")[0]
|
.getElementsByClassName("w3-main")[0]
|
||||||
.addEventListener("click", hideMenus);
|
.addEventListener("click", hideMenus);
|
||||||
|
|
||||||
//add set Password to loginForm
|
//add set Password to loginForm
|
||||||
document
|
document
|
||||||
.getElementById("submitPassword")
|
.getElementById("submitPassword")
|
||||||
.addEventListener("click", setPassword);
|
.addEventListener("click", setPassword);
|
||||||
//add toggle Navigation Menu
|
//add toggle Navigation Menu
|
||||||
document
|
document
|
||||||
.getElementById("toggleNavigationMenu")
|
.getElementById("toggleNavigationMenu")
|
||||||
.addEventListener("click", showMenu);
|
.addEventListener("click", showMenu);
|
||||||
//add loadTemplateBtn event showMenu
|
//add loadTemplateBtn event showMenu
|
||||||
document
|
document
|
||||||
.getElementById("loadTemplateBtn")
|
.getElementById("loadTemplateBtn")
|
||||||
.addEventListener("click", showMenu);
|
.addEventListener("click", showMenu);
|
||||||
//add toggle sideBar Menu
|
//add toggle sideBar Menu
|
||||||
document
|
document
|
||||||
.getElementById("toggleSidebarMenu")
|
.getElementById("toggleSidebarMenu")
|
||||||
.addEventListener("click", showSidebar);
|
.addEventListener("click", showSidebar);
|
||||||
//add toggle files Menu and sidebar button
|
//add toggle files Menu and sidebar button
|
||||||
document
|
document
|
||||||
.getElementById("toggleFilesMenuSB")
|
.getElementById("toggleFilesMenuSB")
|
||||||
.addEventListener("click", buildFile);
|
.addEventListener("click", buildFile);
|
||||||
document
|
document
|
||||||
.getElementById("toggleFilesMenu")
|
.getElementById("toggleFilesMenu")
|
||||||
.addEventListener("click", buildFile);
|
.addEventListener("click", buildFile);
|
||||||
//add load template sidebar entry
|
//add load template sidebar entry
|
||||||
document
|
document
|
||||||
.getElementById("loadTemplateBtn")
|
.getElementById("loadTemplateBtn")
|
||||||
.addEventListener("click", showMenu);
|
.addEventListener("click", showMenu);
|
||||||
//add toggle textBLocks Menu
|
//add toggle textBLocks Menu
|
||||||
document
|
document
|
||||||
.getElementById("toggleTestBlocksMenu")
|
.getElementById("toggleTestBlocksMenu")
|
||||||
.addEventListener("click", showTextBlocks);
|
.addEventListener("click", showTextBlocks);
|
||||||
|
|
||||||
//add setFormBtn for use in form
|
//add setFormBtn for use in form
|
||||||
document
|
document
|
||||||
.getElementById("setFormBtn")
|
.getElementById("setFormBtn")
|
||||||
.addEventListener("click", (e) => clickSetForm(e));
|
.addEventListener("click", (e) => clickSetForm(e));
|
||||||
|
|
||||||
//add saveFiles to server listener on launch page
|
//add saveFiles to server listener on launch page
|
||||||
document
|
document
|
||||||
.getElementById("importFilesSB")
|
.getElementById("importFilesSB")
|
||||||
.addEventListener("click", () => clickImportFiles());
|
.addEventListener("click", () => clickImportFiles());
|
||||||
|
|
||||||
//add key listener for ctrl s in form mode
|
//add key listener for ctrl s in form mode
|
||||||
inputRead.init();
|
inputRead.init();
|
||||||
window.addEventListener("keydown", (e) => {
|
window.addEventListener("keydown", (e) => {
|
||||||
inputRead.read(e);
|
if (activeState.activePage == "template") {
|
||||||
if (e.ctrlKey && e.key == "s") {
|
inputRead.read(e);
|
||||||
if (activeState.activePage == "form");
|
if (e.ctrlKey && e.key == "s") {
|
||||||
createStorageObj();
|
createStorageObj();
|
||||||
parseFormOnSubmit();
|
parseFormOnSubmit();
|
||||||
modalNotifier("File copied to clipboard", 1);
|
modalNotifier("File copied to clipboard", 1);
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
}
|
}
|
||||||
})
|
}
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
function printVersion() {
|
function printVersion() {
|
||||||
const scripts = document.getElementsByTagName("script");
|
const scripts = document.getElementsByTagName("script");
|
||||||
const versionSpan = document.getElementById("currentVersion").lastChild;
|
const versionSpan = document.getElementById("currentVersion").lastChild;
|
||||||
|
|
||||||
for (var i=0;i<scripts.length;i++) {
|
for (var i = 0; i < scripts.length; i++) {
|
||||||
if (scripts[i].src) {
|
if (scripts[i].src) {
|
||||||
let source = scripts[i].src;
|
let source = scripts[i].src;
|
||||||
// js/version/main.js
|
// js/version/main.js
|
||||||
let pathVersion = source.split("/");
|
let pathVersion = source.split("/");
|
||||||
pathVersion = pathVersion[pathVersion.length-2];
|
pathVersion = pathVersion[pathVersion.length - 2];
|
||||||
//add it to document footer currentVersion
|
//add it to document footer currentVersion
|
||||||
versionSpan.textContent = "version: " + pathVersion;
|
versionSpan.textContent = "version: " + pathVersion;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
init();
|
init();
|
||||||
|
|||||||
@ -181,7 +181,7 @@ export function sanitize(string) {
|
|||||||
return string.replace(reg, (match)=>(map[match]));
|
return string.replace(reg, (match)=>(map[match]));
|
||||||
}
|
}
|
||||||
|
|
||||||
function isAlphaNumeric(str) {
|
export function isAlphaNumeric(str) {
|
||||||
var code, i, len;
|
var code, i, len;
|
||||||
|
|
||||||
for (i = 0, len = str.length; i < len; i++) {
|
for (i = 0, len = str.length; i < len; i++) {
|
||||||
@ -201,26 +201,31 @@ export const inputRead = {
|
|||||||
this.inputString = "";
|
this.inputString = "";
|
||||||
this.source = "";
|
this.source = "";
|
||||||
this.inputContent = "";
|
this.inputContent = "";
|
||||||
|
this.lastRunTime = new Date();
|
||||||
|
this.lastExecId = "";
|
||||||
},
|
},
|
||||||
read: function (event) {
|
read: function (event) {
|
||||||
this.event = event;
|
this.event = event;
|
||||||
this.source = event.srcElement.id;
|
this.source = event.srcElement.id;
|
||||||
|
let previousContent = this.inputContent;
|
||||||
let key = (event.key !=undefined) ? event.key : "";
|
let key = (event.key !=undefined) ? event.key : "";
|
||||||
let contentElement = document.getElementById(this.source);
|
let contentElement = document.getElementById(this.source);
|
||||||
this.inputContent = (contentElement != undefined) ? contentElement.value + key : "";
|
this.inputContent = (contentElement != undefined) ? contentElement.value + key : "";
|
||||||
|
|
||||||
if (this.inputContent == "" || key == "") return;
|
if (this.inputContent == "" || key == "") return;
|
||||||
if (!isAlphaNumeric(key)) return;
|
|
||||||
if (key.length > 1) return;
|
if (key.length > 1) return;
|
||||||
if (activeState.activePage != "template") return;
|
if (event.ctrlKey) return;
|
||||||
|
if (this.inputContent == previousContent) return;
|
||||||
|
|
||||||
|
this.lastRunTime = new Date();
|
||||||
|
clearTimeout(this.lastExecId);
|
||||||
|
|
||||||
document.getElementById("toggleFilesMenu").style.backgroundColor = "#c0392b";
|
document.getElementById("toggleFilesMenu").style.backgroundColor = "#c0392b";
|
||||||
const run = setTimeout(() => {
|
this.lastExecId = setTimeout(() => {
|
||||||
createStorageObj();
|
createStorageObj();
|
||||||
document.getElementById("toggleFilesMenu").style.backgroundColor = "#34495e"
|
document.getElementById("toggleFilesMenu").style.backgroundColor = "#34495e"
|
||||||
}, 3000);
|
}, 1000);
|
||||||
},
|
},
|
||||||
//filter words
|
|
||||||
}
|
}
|
||||||
|
|
||||||
export default setPassword;
|
export default setPassword;
|
||||||
|
|||||||
@ -3,7 +3,7 @@ import { loadFileDivCallBack } from "./files.js";
|
|||||||
import { retrieveData, clearData, getFileName, importBookShelf } from "./storage.js";
|
import { retrieveData, clearData, getFileName, importBookShelf } from "./storage.js";
|
||||||
import { insertTextBlocks, modalNotifier } from "./evts.js";
|
import { insertTextBlocks, modalNotifier } from "./evts.js";
|
||||||
import { createTemplate, createTemplateCallBack} from "./createTemplate.js";
|
import { createTemplate, createTemplateCallBack} from "./createTemplate.js";
|
||||||
import { getUsrId, sessionVerification } from "./scripts.js";
|
import { getUsrId, logout, sessionVerification } from "./scripts.js";
|
||||||
|
|
||||||
function loadTemplate(template, newFlag = false, loadOnly = false) {
|
function loadTemplate(template, newFlag = false, loadOnly = false) {
|
||||||
document.getElementById("siteTitle").innerHTML = template.replace(/_/g, " ");
|
document.getElementById("siteTitle").innerHTML = template.replace(/_/g, " ");
|
||||||
@ -113,18 +113,30 @@ function loadNavBar() {
|
|||||||
}
|
}
|
||||||
let createEntry = document.createElement("a");
|
let createEntry = document.createElement("a");
|
||||||
createEntry.setAttribute("href", "#");
|
createEntry.setAttribute("href", "#");
|
||||||
createEntry.setAttribute("data-template", "createNew");
|
createEntry.setAttribute("data-template", "!createNew");
|
||||||
createEntry.classList.add("w3-bar-item", "w3-button", "w3-padding-large");
|
createEntry.classList.add("w3-bar-item", "w3-button", "w3-padding-large");
|
||||||
|
createEntry.style.borderTop = "2px solid rgb(221, 221, 221)";
|
||||||
createEntry.innerHTML = "Manage templates";
|
createEntry.innerHTML = "Manage templates";
|
||||||
|
|
||||||
divMob.appendChild(createEntry);
|
divMob.appendChild(createEntry);
|
||||||
|
|
||||||
|
createEntry = document.createElement("a");
|
||||||
|
createEntry.setAttribute("href", "#");
|
||||||
|
createEntry.setAttribute("data-template", "!logout");
|
||||||
|
createEntry.classList.add("w3-bar-item", "w3-button", "w3-padding-large", "w3-flat-pomegranate");
|
||||||
|
createEntry.innerHTML = "Logout";
|
||||||
|
divMob.appendChild(createEntry);
|
||||||
|
|
||||||
divMob.addEventListener("click", (e) => {
|
divMob.addEventListener("click", (e) => {
|
||||||
if (e.target && e.target.matches("a.w3-bar-item")) {
|
if (e.target && e.target.matches("a.w3-bar-item")) {
|
||||||
let template = e.target.dataset.template;
|
let template = e.target.dataset.template;
|
||||||
if (template == "createNew") {
|
if (template == "!createNew") {
|
||||||
createTemplate();
|
createTemplate();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
if (template == "!logout") {
|
||||||
|
logout();
|
||||||
|
return;
|
||||||
|
}
|
||||||
loadNewTemplate(template);
|
loadNewTemplate(template);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user