diff --git a/app.py b/app.py index 43503a4..a936578 100644 --- a/app.py +++ b/app.py @@ -1870,7 +1870,7 @@ def public_frontend(): .submit-bubble { bottom:1rem; right:5rem; } .chat-overlay { bottom:5rem; right:0.5rem; width:calc(100vw - 1rem); max-height:60vh; } .chat-bubble { bottom:1rem; right:1rem; } - .submit-overlay { bottom:5rem; right:0.5rem; width:calc(100vw - 1rem); max-height:65vh; } + .submit-overlay { bottom:4rem; right:0.5rem; width:calc(100vw - 1rem); max-height:90vh; } } .chat-bubble { position:fixed; bottom:1.5rem; right:1.5rem; z-index:9999; width:56px; height:56px; border-radius:50%; background:#20228a; @@ -1923,7 +1923,7 @@ def public_frontend(): .submit-bubble:active { transform:scale(0.95); } .submit-overlay { position:fixed; bottom:5.5rem; right:1.5rem; z-index:9998; - width:400px; max-width:calc(100vw - 2rem); max-height:70vh; + width:400px; max-width:calc(100vw - 2rem); max-height:85vh; background:#fff; border-radius:18px; box-shadow:0 12px 48px rgba(0,0,0,0.22); display:none; flex-direction:column; overflow:hidden; } .submit-overlay.open { display:flex; } @@ -1932,7 +1932,7 @@ def public_frontend(): .submit-header button { background:none; border:none; color:#fff; font-size:1.3rem; cursor:pointer; opacity:0.8; padding:0; line-height:1; } .submit-header button:hover { opacity:1; } - .submit-body { flex:1; overflow-y:auto; padding:1.2rem; max-height:55vh; background:#fafafa; } + .submit-body { flex:1; overflow-y:auto; padding:1rem; max-height:75vh; background:#fafafa; } .submit-body .hint { font-size:0.75rem; color:#888; margin-bottom:1rem; line-height:1.5; } .submit-body label { display:block; font-size:0.7rem; font-weight:600; color:#555; text-transform:uppercase; letter-spacing:0.03em; margin-bottom:0.2rem; margin-top:0.8rem; } @@ -1950,6 +1950,11 @@ def public_frontend(): .submit-body .submit-btn:disabled { opacity:0.5; cursor:default; } .submit-body .status-msg { text-align:center; font-size:0.8rem; margin-top:0.6rem; min-height:1.2rem; } + .capture-row { display:flex; gap:0.5rem; margin-top:0.3rem; } + .capture-btn { flex:1; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:0.15rem; background:#fff; border:2px solid #ddd; border-radius:12px; padding:0.7rem 0.3rem; cursor:pointer; transition:all 0.15s; min-height:64px; -webkit-tap-highlight-color:transparent; touch-action:manipulation; } + .capture-btn:active { transform:scale(0.95); background:#f0f0f0; border-color:#20228a; } + .capture-icon { font-size:1.6rem; line-height:1; } + .capture-label { font-size:0.7rem; font-weight:600; color:#888; text-transform:uppercase; letter-spacing:0.04em; } @@ -2018,8 +2023,25 @@ def public_frontend(): - - + +
+ + + +
+ @@ -2049,8 +2071,8 @@ def public_frontend(): sSend.addEventListener('click', async () => { const name = document.getElementById('subName').value.trim(); const text = document.getElementById('subText').value.trim(); - const fileInput = document.getElementById('subMedia'); - const file = fileInput.files[0]; + const fileInput = document.getElementById('subPhoto'); + const file = fileInput.files[0] || document.getElementById('subVideo').files[0] || document.getElementById('subAudio').files[0] || document.getElementById('subGallery').files[0]; const halle = document.getElementById('subHalle').value.trim(); const spiel = document.getElementById('subSpiel').value.trim(); @@ -2080,6 +2102,9 @@ def public_frontend(): document.getElementById('subName').value = ''; document.getElementById('subText').value = ''; fileInput.value = ''; + document.getElementById('subVideo').value = ''; + document.getElementById('subAudio').value = ''; + document.getElementById('subGallery').value = ''; document.getElementById('subHalle').value = ''; document.getElementById('subSpiel').value = ''; setTimeout(() => { sOverlay.classList.remove('open'); sOpen = false; sStatus.textContent = ''; }, 2500);