Backend: - path_validator.py: PathValidator-Klasse für Pfad-Validierung - file_ops.py: read_file, write_file, directory_exists, file_exists - content_types.py: get_content_type mit EXTENSION_MAP - handler.py: Handler-Klasse mit do_GET/do_PUT, nutzt above modules - serve.py: Entry-Point (main, find_free_port), setzt Handler.validator/directory Frontend: - css/variables.css: CSS-Variablen (--bg-*, --text-*, --accent, etc.) - css/styles.css: Alle CSS-Regeln (modal, card, template-grid, etc.) - js/utils.js: esc, showToast, copyContentToClipboard - js/modal.js: showModal, closeModal, closeEditModal, wasViewModalOpen - js/editor.js: editModalContent, createJsonEditUI, extractJsonFromForm - js/api.js: viewTemplate, copyContent, loadTemplates, saveEditedContent - js/templates.js: renderTemplates, applyFilters, parseTypeFromHash - js/main.js: Event-Listener, Hash-Filter, Initialisierung - index.html: Inline-CSS/JS entfernt, <link>/<script src>-Tags hinzugefügt Smoke test: SO_REUSEADDR für schnelle Port-Wiederverwendung
51 lines
1 KiB
JavaScript
51 lines
1 KiB
JavaScript
/**
|
|
* Modal-Management für View und Edit Modals.
|
|
*/
|
|
|
|
/**
|
|
* Zeige View-Modal mit Titel und Inhalt
|
|
* @param {string} title - Titel des Modals
|
|
* @param {string} content - Inhalt als Text
|
|
*/
|
|
function showModal(title, content) {
|
|
document.getElementById('modal-title').textContent = title;
|
|
document.getElementById('modal-content').textContent = content;
|
|
document.getElementById('modal').classList.add('active');
|
|
}
|
|
|
|
/**
|
|
* Schließe View-Modal
|
|
*/
|
|
function closeModal() {
|
|
document.getElementById('modal').classList.remove('active');
|
|
}
|
|
|
|
/**
|
|
* Schließe Edit-Modal
|
|
*/
|
|
function closeEditModal() {
|
|
document.getElementById('edit-modal').classList.remove('active');
|
|
}
|
|
|
|
/**
|
|
* Prüfe ob View-Modal offen war (für Copy-After-View-Logic)
|
|
* @returns {boolean}
|
|
*/
|
|
function wasViewModalOpen() {
|
|
return window._wasViewModalOpen || false;
|
|
}
|
|
|
|
/**
|
|
* Merke dass View-Modal offen war
|
|
*/
|
|
function rememberViewModalOpen() {
|
|
window._wasViewModalOpen = true;
|
|
}
|
|
|
|
export {
|
|
showModal,
|
|
closeModal,
|
|
closeEditModal,
|
|
wasViewModalOpen,
|
|
rememberViewModalOpen,
|
|
};
|