diff --git a/api.php b/api.php index 78923c9..108a118 100644 --- a/api.php +++ b/api.php @@ -2996,19 +2996,12 @@ switch ($action) { 'smtp_encryption' => $mailbox['smtp_encryption'] ?? '', 'smtp_from_email' => $mailbox['smtp_from_email'] ?? '', ]; - // Override: käyttäjä voi antaa tunnukset suoraan testiin (ohittaa DB:n) - $overrideUser = trim($input['override_user'] ?? ''); - $overridePass = $input['override_pass'] ?? ''; // Laske fallback-arvot $effectiveUser = $mailbox['smtp_user'] ?? ''; if ($effectiveUser === '') $effectiveUser = $mailbox['imap_user'] ?? ''; if ($effectiveUser === '') $effectiveUser = $mailbox['smtp_from_email'] ?? ''; $effectivePass = $mailbox['smtp_password'] ?? ''; if ($effectivePass === '') $effectivePass = $mailbox['imap_password'] ?? ''; - // Jos override annettu, käytä sitä - $usingOverride = false; - if ($overrideUser !== '') { $effectiveUser = $overrideUser; $usingOverride = true; } - if ($overridePass !== '') { $effectivePass = $overridePass; $usingOverride = true; } $host = $mailbox['smtp_host'] ?? ''; $port = (int)($mailbox['smtp_port'] ?? 587); $encryption = $mailbox['smtp_encryption'] ?? 'tls'; @@ -3022,7 +3015,6 @@ switch ($action) { 'effective_user' => $effectiveUser, 'effective_pass_hint' => $passHint, 'effective_pass_len' => strlen($effectivePass), - 'using_override' => $usingOverride, 'steps' => [], ]; diff --git a/index.html b/index.html index 28b2336..45a733f 100644 --- a/index.html +++ b/index.html @@ -831,11 +831,11 @@
+
-
- - -
- diff --git a/script.js b/script.js index b8ebc6d..f4052a0 100644 --- a/script.js +++ b/script.js @@ -2590,9 +2590,17 @@ document.getElementById('btn-save-mailbox').addEventListener('click', async () = aktiivinen: true, }; try { - await apiCall('mailbox_save', 'POST', data); - document.getElementById('mailbox-form-container').style.display = 'none'; + const saved = await apiCall('mailbox_save', 'POST', data); + // Päivitä lomakkeen ID (uusi laatikko saa ID:n backendiltä) + if (saved.id) document.getElementById('mailbox-form-id').value = saved.id; + // Päivitä lista taustalle mutta pidä lomake auki loadMailboxes(); + // Näytä lyhyt "Tallennettu" -ilmoitus + const btn = document.getElementById('btn-save-mailbox'); + const orig = btn.textContent; + btn.textContent = '✓ Tallennettu'; + btn.style.background = '#4caf50'; + setTimeout(() => { btn.textContent = orig; btn.style.background = ''; }, 2000); } catch (e) { alert(e.message); } }); @@ -2601,7 +2609,7 @@ document.getElementById('btn-cancel-mailbox').addEventListener('click', () => { }); // SMTP-testaus -async function runSmtpTest(overrideUser = '', overridePass = '') { +document.getElementById('btn-test-smtp').addEventListener('click', async () => { const mailboxId = document.getElementById('mailbox-form-id').value; const resultEl = document.getElementById('smtp-test-result'); if (!mailboxId) { @@ -2611,13 +2619,8 @@ async function runSmtpTest(overrideUser = '', overridePass = '') { } resultEl.style.display = ''; resultEl.textContent = '⏳ Testataan SMTP-yhteyttä...'; - // Näytä override-kentät - document.getElementById('smtp-test-override').style.display = ''; try { - const payload = { mailbox_id: mailboxId }; - if (overrideUser) payload.override_user = overrideUser; - if (overridePass) payload.override_pass = overridePass; - const res = await apiCall('smtp_test', 'POST', payload); + const res = await apiCall('smtp_test', 'POST', { mailbox_id: mailboxId }); let output = '=== TIETOKANNAN ARVOT ===\n'; if (res.db_values) { for (const [k, v] of Object.entries(res.db_values)) { @@ -2625,27 +2628,16 @@ async function runSmtpTest(overrideUser = '', overridePass = '') { } } output += `\n=== KÄYTETTÄVÄT ARVOT ===\n`; - if (res.using_override) output += ` ⚠️ KÄYTETÄÄN OVERRIDE-TUNNUKSIA\n`; output += ` Käyttäjä: ${res.effective_user || '(tyhjä)'}\n`; output += ` Salasana: ${res.effective_pass_hint || '?'} (${res.effective_pass_len} merkkiä)\n\n`; output += `=== TESTIN VAIHEET ===\n`; if (res.steps) { res.steps.forEach(s => { output += ` ${s}\n`; }); } - if (res.ehlo_capabilities_tls) { - output += `\n=== EHLO (TLS jälkeen) ===\n${res.ehlo_capabilities_tls}\n`; - } resultEl.textContent = output; } catch (e) { resultEl.textContent = '❌ Virhe: ' + e.message; } -} - -document.getElementById('btn-test-smtp').addEventListener('click', () => runSmtpTest()); -document.getElementById('btn-test-smtp-override').addEventListener('click', () => { - const user = document.getElementById('smtp-test-user').value; - const pass = document.getElementById('smtp-test-pass').value; - runSmtpTest(user, pass); }); // ==================== YRITYKSEN KÄYTTÄJÄOIKEUDET ====================