{"id":13,"date":"2026-03-29T11:17:23","date_gmt":"2026-03-29T09:17:23","guid":{"rendered":"http:\/\/192.168.1.14\/?page_id=13"},"modified":"2026-04-02T10:21:20","modified_gmt":"2026-04-02T08:21:20","slug":"eine-erinnerung-einreichen","status":"publish","type":"page","link":"https:\/\/michaskinder.de\/index.php\/eine-erinnerung-einreichen\/","title":{"rendered":"Eine Erinnerung einreichen &#8211; submit a memory"},"content":{"rendered":"\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-794e3cfa wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<p class=\"has-text-align-left is-style-default has-base-background-color has-background has-small-font-size wp-block-paragraph\" style=\"border-top-left-radius:0px;border-top-right-radius:0px;border-bottom-left-radius:0px;border-bottom-right-radius:0px\">schreibt oder malt oder bastelt wie ihr es m\u00f6chtet. <br>Ihr k\u00f6nnt Fotos, Scans oder Textdateien hochladen, oder direkt im Textfeld schreiben. <br>Nichts davon wird \u00f6ffentlich zu sehen sein.<br><\/p>\n\n\n\n<p class=\"has-text-align-center is-style-default has-accent-5-color has-contrast-background-color has-text-color has-background has-link-color has-large-font-size wp-elements-afa5a4d0a35b5826584a64de9594d02f wp-block-paragraph\" style=\"border-style:none;border-width:0px;border-top-left-radius:0px;border-top-right-radius:0px;border-bottom-left-radius:0px;border-bottom-right-radius:0px;margin-top:0;margin-right:0;margin-bottom:0;margin-left:0\">Wenn ihr einen Anfang sucht: Wie w\u00e4re ein Brief an die Kinder? <br><br><em>&#8222;Lieber Eddi, Liebe Thea, als ich euren Papa kennenlernte\u2026&#8220;<\/em><\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<p class=\"has-text-align-left is-style-default has-base-background-color has-background has-small-font-size wp-block-paragraph\" style=\"border-top-left-radius:0px;border-top-right-radius:0px;border-bottom-left-radius:0px;border-bottom-right-radius:0px\">write, draw, or create whatever you\u2019d like. <br>You can upload photos, scans, or text files, or write directly in the text box. <br>None of this will be visible to the public.<br><\/p>\n\n\n\n<p class=\"has-text-align-center is-style-default has-accent-5-color has-contrast-background-color has-text-color has-background has-link-color has-large-font-size wp-elements-0dcfa79a72e3a4746f4bd4f9087dd880 wp-block-paragraph\" style=\"border-style:none;border-width:0px;border-top-left-radius:0px;border-top-right-radius:0px;border-bottom-left-radius:0px;border-bottom-right-radius:0px;margin-top:0;margin-right:0;margin-bottom:0;margin-left:0\">If you\u2019re looking for a starting point: how about a letter to the children? <br><br><br><em>\u201cDear Eddi, Dear Thea, when I first met your dad\u2026\u201d<\/em><\/p>\n<\/div>\n<\/div>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<form id=\"fp-form\" enctype=\"multipart\/form-data\">\n\n    <input type=\"text\" name=\"fp_title\" placeholder=\"Titel\" required>\n\n    <textarea name=\"fp_content\" placeholder=\"Geschichte\"><\/textarea>\n\n    <div id=\"fp-dropzone\">\n        <p id=\"fp-drop-text\">Dateien hierher ziehen oder anklicken zum Hochladen<\/p>\n        <input type=\"file\" name=\"fp_files[]\" id=\"fp-files\" multiple>\n    <\/div>\n\n    <ul id=\"fp-file-list\"><\/ul>\n\n    <div id=\"fp-progress-container\">\n        <div id=\"fp-progress-bar\"><\/div>\n    <\/div>\n\n    <button type=\"submit\" id=\"fp-submit\">Einreichen<\/button>\n\n    <div id=\"fp-message\"><\/div>\n\n<\/form>\n\n    <style>\n#fp-form {\n    max-width: 500px;\n    font-family: system-ui, sans-serif;\n}\n\n#fp-form input,\n#fp-form textarea {\n    width: 100%;\n    margin-bottom: 10px;\n    padding: 10px;\n    border: 1px solid #ddd;\n    border-radius: 6px;\n}\n\n#fp-dropzone {\n    border: 2px dashed #ccc;\n    padding: 20px;\n    text-align: center;\n    cursor: pointer;\n    margin-bottom: 10px;\n    border-radius: 8px;\n    transition: 0.2s;\n}\n\n#fp-dropzone.dragover {\n    border-color: #333;\n    background: #f7f7f7;\n}\n\n#fp-files {\n    display: none;\n}\n\n#fp-file-list {\n    list-style: none;\n    padding: 0;\n    margin-bottom: 10px;\n}\n\n#fp-file-list li {\n    font-size: 14px;\n    padding: 4px 0;\n    border-bottom: 1px solid #eee;\n}\n\n#fp-progress-container {\n    width: 100%;\n    background: #eee;\n    height: 8px;\n    border-radius: 4px;\n    overflow: hidden;\n    margin-bottom: 12px;\n    display: none;\n}\n\n#fp-progress-bar {\n    width: 0%;\n    height: 100%;\n    background: #4caf50;\n}\n\n#fp-submit {\n    width: 100%;\n    padding: 10px;\n    border: none;\n    background: #111;\n    color: #fff;\n    border-radius: 6px;\n    cursor: pointer;\n    transition: 0.2s;\n}\n\n#fp-submit:hover {\n    background: #333;\n}\n\n#fp-message {\n    margin-top: 10px;\n    font-size: 14px;\n}\n\n#fp-form textarea {\n    min-height: 150px;\n    resize: vertical;\n\tline-height: 1.4;\n}\n\n.fp-gallery {\n    display: grid;\n    grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));\n    gap: 10px;\n    margin-top: 15px;\n}\n\n.fp-gallery-item img {\n    width: 100%;\n    height: auto;\n    border-radius: 6px;\n    display: block;\n    transition: 0.2s;\n}\n\n.fp-gallery-item img:hover {\n    transform: scale(1.03);\n}\n\n.fp-files {\n    margin-top: 20px;\n}\n\n.fp-files ul {\n    list-style: none;\n    padding: 0;\n}\n\n.fp-files li {\n    margin-bottom: 6px;\n    font-size: 14px;\n}\n\n<\/style>\n\n\n <script>\ndocument.addEventListener('DOMContentLoaded', function () {\n\n    const form = document.getElementById('fp-form');\n    if (!form) return; \/\/ safety\n\n    const dropzone = document.getElementById('fp-dropzone');\n    const fileInput = document.getElementById('fp-files');\n    const fileList = document.getElementById('fp-file-list');\n    const progressBar = document.getElementById('fp-progress-bar');\n    const progressContainer = document.getElementById('fp-progress-container');\n    const message = document.getElementById('fp-message');\n\n    const title = form.querySelector('input[name=\"fp_title\"]');\n    const content = form.querySelector('textarea');\n\n    const STORAGE_KEY = 'fp_form_data';\n\n    \/\/ =====================\n    \/\/ \ud83d\udcc2 FILE LIST\n    \/\/ =====================\n    function updateFileList(files) {\n        fileList.innerHTML = '';\n        Array.from(files).forEach(file => {\n            const li = document.createElement('li');\n            li.textContent = file.name;\n            fileList.appendChild(li);\n        });\n    }\n\n    dropzone.addEventListener('click', () => fileInput.click());\n\n    fileInput.addEventListener('change', () => {\n        updateFileList(fileInput.files);\n    });\n\n    dropzone.addEventListener('dragover', e => {\n        e.preventDefault();\n        dropzone.classList.add('dragover');\n    });\n\n    dropzone.addEventListener('dragleave', () => {\n        dropzone.classList.remove('dragover');\n    });\n\n    dropzone.addEventListener('drop', e => {\n        e.preventDefault();\n        dropzone.classList.remove('dragover');\n        fileInput.files = e.dataTransfer.files;\n        updateFileList(fileInput.files);\n    });\n\n    \/\/ =====================\n    \/\/ \ud83d\udcbe LOAD SAVED DATA\n    \/\/ =====================\n    const saved = localStorage.getItem(STORAGE_KEY);\n    if (saved) {\n        try {\n            const data = JSON.parse(saved);\n            if (data.title && title) title.value = data.title;\n            if (data.content && content) content.value = data.content;\n\n            if (data.title || data.content) {\n                message.innerHTML = \"<span style='color:#666;'>\u21ba Entwurf wiederhergestellt<\/span>\";\n            }\n        } catch(e) {}\n    }\n\n    \/\/ =====================\n    \/\/ \ud83d\udcbe SAVE ON INPUT\n    \/\/ =====================\n    function saveForm() {\n        const data = {\n            title: title ? title.value : '',\n            content: content ? content.value : ''\n        };\n        localStorage.setItem(STORAGE_KEY, JSON.stringify(data));\n    }\n\n    if (title) title.addEventListener('input', saveForm);\n    if (content) content.addEventListener('input', saveForm);\n\n    \/\/ =====================\n    \/\/ \ud83d\ude80 SUBMIT (AJAX)\n    \/\/ =====================\n    form.addEventListener('submit', function(e) {\n        e.preventDefault();\n\n        const formData = new FormData(form);\n        formData.append('action', 'fp_submit_post');\n\n        const xhr = new XMLHttpRequest();\n        xhr.open('POST', 'https:\/\/michaskinder.de\/wp-admin\/admin-ajax.php', true);\n\n        progressContainer.style.display = 'block';\n        message.textContent = '';\n\n        xhr.upload.onprogress = function(e) {\n            if (e.lengthComputable) {\n                let percent = (e.loaded \/ e.total) * 100;\n                progressBar.style.width = percent + '%';\n            }\n        };\n\n        xhr.upload.onprogress = function(e) {\n    if (e.lengthComputable) {\n        let percent = (e.loaded \/ e.total) * 100;\n        progressBar.style.width = percent + '%';\n\n        if (percent === 100) {\n            message.innerHTML = \"<span style='color:#666;'>Verarbeitung l\u00e4uft. Bitte habe einen Moment Geduld...<\/span>\";\n        }\n    }\n};\n\nxhr.onload = function() {\n    if (xhr.status === 200) {\n\n        message.innerHTML = \"<span style='color:green;'>Speichern erfolgreich. Danke f\u00fcr die Geschichte!<\/span>\";\n\n        form.reset();\n        fileList.innerHTML = '';\n        progressBar.style.width = \"0%\";\n\n        localStorage.removeItem(STORAGE_KEY);\n\n    } else {\n        message.innerHTML = \"<span style='color:red;'>Leider ist etwas schiefgegangen.<\/span>\";\n    }\n};\n\n        xhr.send(formData);\n    });\n\n});\n<\/script>\n\n    \n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>schreibt oder malt oder bastelt wie ihr es m\u00f6chtet. Ihr k\u00f6nnt Fotos, Scans oder Textdateien hochladen, oder direkt im Textfeld schreiben. Nichts davon wird \u00f6ffentlich zu sehen sein. Wenn ihr einen Anfang sucht: Wie w\u00e4re ein Brief an die Kinder? &#8222;Lieber Eddi, Liebe Thea, als ich euren Papa kennenlernte\u2026&#8220; write, draw, or create whatever you\u2019d [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-13","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/michaskinder.de\/index.php\/wp-json\/wp\/v2\/pages\/13","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/michaskinder.de\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/michaskinder.de\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/michaskinder.de\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/michaskinder.de\/index.php\/wp-json\/wp\/v2\/comments?post=13"}],"version-history":[{"count":14,"href":"https:\/\/michaskinder.de\/index.php\/wp-json\/wp\/v2\/pages\/13\/revisions"}],"predecessor-version":[{"id":355,"href":"https:\/\/michaskinder.de\/index.php\/wp-json\/wp\/v2\/pages\/13\/revisions\/355"}],"wp:attachment":[{"href":"https:\/\/michaskinder.de\/index.php\/wp-json\/wp\/v2\/media?parent=13"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}