Promote develop → main (2026-07-23 09:09 UTC) #9
@@ -294,7 +294,7 @@ a { color:inherit; text-decoration:none; }
|
||||
.modal-close:hover { color:var(--navy); }
|
||||
.modal-content h2 { font-size:1.5rem; font-weight:700; color:var(--navy); margin-bottom:8px; }
|
||||
.modal-sub { font-size:0.95rem; color:var(--text-light); margin-bottom:28px; }
|
||||
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
|
||||
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:16px; align-items:end; }
|
||||
.form-group { margin-bottom:16px; }
|
||||
.form-group label { display:block; font-size:0.82rem; font-weight:600; color:var(--navy); margin-bottom:6px; text-transform:uppercase; letter-spacing:0.04em; }
|
||||
.form-group input, .form-group textarea { width:100%; padding:10px 14px; border:1px solid var(--gray-200); border-radius:var(--radius); font-family:inherit; font-size:0.95rem; color:var(--text); background:var(--base); transition:border-color 0.2s; }
|
||||
@@ -316,10 +316,9 @@ a { color:inherit; text-decoration:none; }
|
||||
.tf-note { display:block; font-size:0.85rem; margin-top:6px; line-height:1.5; }
|
||||
.tf-note-error { color:#C0392B; }
|
||||
.tf-note-ok { color:#1E7A44; }
|
||||
.tf-hint { font-size:0.82rem; color:var(--text-light); margin-left:5px; font-weight:400; text-transform:none; letter-spacing:0; }
|
||||
/* Gleiche Labelhoehe, damit die Felder einer Reihe auf einer Linie starten */
|
||||
#trial-form .form-row label { min-height:42px; }
|
||||
@media(max-width:768px) { #trial-form .form-row label { min-height:0; } }
|
||||
.tf-hint { font-size:0.82rem; color:var(--text-light); margin-left:5px; font-weight:400; text-transform:none; letter-spacing:0; white-space:nowrap; }
|
||||
/* Kompakte Zeilenhoehe fuer mehrzeilige Labels; Felder einer Reihe per align-items:end buendig */
|
||||
#trial-form .form-row label { line-height:1.35; }
|
||||
.tf-consent { display:flex; align-items:flex-start; gap:12px; margin:6px 0 22px; }
|
||||
.tf-consent input { width:18px; height:18px; margin-top:2px; flex:0 0 auto; accent-color:var(--gold-dark); }
|
||||
.tf-consent label { font-size:0.9rem; color:var(--text-light); line-height:1.6; font-weight:400; text-transform:none; letter-spacing:0; margin:0; }
|
||||
|
||||
@@ -748,7 +748,7 @@
|
||||
<div class="modal-content">
|
||||
<button class="modal-close" onclick="closeContactModal()" aria-label="Close">×</button>
|
||||
<h2>Request trial access</h2>
|
||||
<p class="modal-sub">Test the Monitor for one week with the full feature set, free of charge and without obligation. We need your work email address for the request.</p>
|
||||
<p class="modal-sub">Test the Monitor for one week with the full feature set, free of charge and without obligation. Trial access is available only with an official email address from a public authority or a company.</p>
|
||||
|
||||
<div class="tf-error" id="tf-error" role="alert"></div>
|
||||
|
||||
|
||||
@@ -749,7 +749,7 @@
|
||||
<div class="modal-content">
|
||||
<button class="modal-close" onclick="closeContactModal()">×</button>
|
||||
<h2>Testzugang anfragen</h2>
|
||||
<p class="modal-sub">Eine Woche lang mit vollem Funktionsumfang testen, kostenfrei und ohne Verpflichtung. Für die Anfrage benötigen wir Ihre dienstliche E-Mail-Adresse.</p>
|
||||
<p class="modal-sub">Eine Woche lang mit vollem Funktionsumfang testen, kostenfrei und ohne Verpflichtung. Ein Testzugang ist ausschließlich mit einer dienstlichen E-Mail-Adresse einer Behörde oder eines Unternehmens möglich.</p>
|
||||
|
||||
<div class="tf-error" id="tf-error" role="alert"></div>
|
||||
|
||||
|
||||
@@ -621,6 +621,7 @@ function mdToHtml(md) {
|
||||
|
||||
/* ==================== CONTACT MODAL ==================== */
|
||||
window.openContactModal = function () {
|
||||
if (typeof window.resetTrialForm === 'function') window.resetTrialForm();
|
||||
document.getElementById('contact-modal').style.display = 'flex';
|
||||
document.body.style.overflow = 'hidden';
|
||||
if (window.umami) umami.track('contact_modal_open');
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
sending: 'Wird gesendet...',
|
||||
send: 'Testzugang anfragen',
|
||||
nameFehlt: 'Bitte geben Sie Ihren Namen an.',
|
||||
freemail: 'Bitte geben Sie Ihre dienstliche E-Mail-Adresse an. Adressen bei Freemail-Anbietern wie Gmail, GMX oder web.de können wir für einen Testzugang nicht berücksichtigen.',
|
||||
freemail: 'Ein Testzugang ist ausschließlich mit einer dienstlichen E-Mail-Adresse einer Behörde oder eines Unternehmens möglich. Adressen bei Freemail-Anbietern wie Gmail, GMX oder web.de können wir nicht berücksichtigen.',
|
||||
invalidMail: 'Diese E-Mail-Adresse sieht nicht vollständig aus. Bitte prüfen Sie Ihre Eingabe.',
|
||||
consent: 'Bitte bestätigen Sie die Datenschutzhinweise, damit wir Ihre Anfrage bearbeiten dürfen.',
|
||||
tooFast: 'Bitte nehmen Sie sich einen Moment für das Formular. Versuchen Sie es gleich noch einmal.',
|
||||
@@ -39,7 +39,7 @@
|
||||
sending: 'Sending...',
|
||||
send: 'Request trial access',
|
||||
nameFehlt: 'Please enter your name.',
|
||||
freemail: 'Please enter your official work email address. Addresses from free providers such as Gmail, GMX or web.de cannot be accepted for trial access.',
|
||||
freemail: 'Trial access requires an official email address from a public authority or a company. Addresses from free providers such as Gmail, GMX or web.de cannot be accepted.',
|
||||
invalidMail: 'This email address looks incomplete. Please check your entry.',
|
||||
consent: 'Please confirm the privacy notice so that we may process your request.',
|
||||
tooFast: 'Please take a moment to fill in the form, then try again.',
|
||||
@@ -134,6 +134,23 @@
|
||||
var mailField = document.getElementById('tf-email');
|
||||
var mailNote = document.getElementById('tf-email-note');
|
||||
|
||||
/* Formular in den Ausgangszustand zuruecksetzen. Wird beim Oeffnen
|
||||
des Modals aufgerufen, damit niemand die Eingaben oder die
|
||||
Erfolgsmeldung eines vorherigen Nutzers sieht. */
|
||||
function resetTrialForm() {
|
||||
form.reset();
|
||||
form.style.display = '';
|
||||
var ok = document.getElementById('tf-success');
|
||||
if (ok) ok.style.display = 'none';
|
||||
var errorBox = document.getElementById('tf-error');
|
||||
if (errorBox) { errorBox.style.display = 'none'; errorBox.textContent = ''; }
|
||||
if (mailNote) { mailNote.textContent = ''; mailNote.className = 'tf-note'; }
|
||||
if (mailField) mailField.removeAttribute('aria-invalid');
|
||||
var btn = form.querySelector('button[type="submit"]');
|
||||
if (btn) { btn.disabled = false; btn.textContent = T.send; }
|
||||
}
|
||||
window.resetTrialForm = resetTrialForm;
|
||||
|
||||
/* Live-Rueckmeldung am E-Mail-Feld */
|
||||
if (mailField && mailNote) {
|
||||
mailField.addEventListener('blur', function () {
|
||||
|
||||
In neuem Issue referenzieren
Einen Benutzer sperren