[TASK] refactor sidebar forms (reduced size dramatically)

This commit is contained in:
Marie Birner
2023-04-07 11:35:39 +02:00
parent 5e4df13289
commit 2d75e7696d
3 changed files with 80 additions and 62 deletions

View File

@ -17,7 +17,7 @@ export class Sidebar {
this.isOpen = false;
}
checkStatus() {
checkStatus(): Boolean {
return this.isOpen;
}

View File

@ -51,10 +51,36 @@ function initSidebar() {
const sidebar = new Sidebar(triggerElement.dataset.trigger);
triggerElement.addEventListener('click', () => {
if(triggerElement.dataset.trigger === 'addTrip') {
initTripSidebar(triggerElement);
}
sidebar.toggle();
});
}
});
}
}
function initTripSidebar(triggerElement: HTMLElement) {
const sidebarElement = <HTMLElement>document.querySelector('#addTrip');
if(sidebarElement && triggerElement.dataset.form && triggerElement.dataset.header) {
let formElement = <HTMLElement>document.querySelector(triggerElement.dataset.form);
let formContainerElement = <HTMLElement>sidebarElement.querySelector('.form-js');
if(formContainerElement) {
formContainerElement.innerHTML = '';
formContainerElement.append(formElement);
}
if(triggerElement.dataset.day) {
let hiddenElement = <HTMLInputElement>formElement.querySelector('.day-js');
if(hiddenElement) {
hiddenElement.value = triggerElement.dataset.day;
}
}
let headerElement = sidebarElement.querySelector('.header-js');
if(headerElement) {
headerElement.innerHTML = triggerElement.dataset.header;
}
}
}