class imageEntry extends serverFetch{ static allInstances = []; constructor(id, cut = false) { super(); this.id = id; this.thumbnail = document.querySelector(`[thumbid='${this.id}']`); this.thumbnailLayer = this.thumbnail.querySelector(".custom-backend-layer"); // this.thumbnailImage = this.thumbnail.querySelector('img'); this.thumbnailcheckbox = this.thumbnail.querySelector('input'); imageEntry.allInstances.push(this); if (cut) { this.cut = true; } if(this.thumbnailLayer){ this.thumbnailLayer.addEventListener("click", ()=>{ if(backend.checkedImages && backend.checkedImages.length > 0){ this.thumbnailcheckbox.checked = !this.thumbnailcheckbox.checked; this.toogleCheckbox(); } else{ this.createModal(); } }); } if(this.thumbnailcheckbox){ this.thumbnailcheckbox.addEventListener("click", ()=>{ this.toogleCheckbox(); }) } } toogleCheckbox(uncheck = false){ if(uncheck){ this.thumbnailcheckbox.checked = false; } backend.multitool(); this.thumbnail.classList.toggle('activeThumb'); } createModal(){ this.modal = new entryModal(this); } getNext(){ let all = imageEntry.allInstances; let currentIndex = all.indexOf(this); if (currentIndex !== -1 && currentIndex < all.length - 1) { return all[currentIndex + 1]; } } async delete(){ console.log(new Date); console.log("aufruf von delete()"); let url = "/backend/delete/" + this.id; await this.makeFetch(url); return Promise.resolve; } }