This commit is contained in:
th committed 2026-04-10 11:46:15 +02:00
1 parent cc97754ae6
commit 86508ffcca
13 files changed
+945 -35

No files matched your search

+26 -6
View File
@@ -120,9 +120,31 @@ export async function loadSettings() {
}
function setCaldavTestStatus(text, kind = 'info') {
if (!testStatus) return;
if (!text) {
testStatus.classList.add('hidden');
testStatus.textContent = '';
testStatus.style.borderColor = '';
testStatus.style.color = '';
return;
}
testStatus.classList.remove('hidden');
testStatus.textContent = text;
if (kind === 'error') {
testStatus.style.borderColor = 'var(--t-danger)';
testStatus.style.color = 'var(--t-danger)';
} else if (kind === 'success') {
testStatus.style.borderColor = 'var(--t-accent)';
testStatus.style.color = 'var(--t-accent)';
} else {
testStatus.style.borderColor = 'var(--t-border)';
testStatus.style.color = 'var(--t-muted)';
}
}
$('caldav-test')?.addEventListener('click', async () => {
testStatus.textContent = 'testing...';
testStatus.style.color = 'var(--t-dim)';
setCaldavTestStatus('testing...');
const body = { url: urlInput.value, username: userInput.value };
if (passInput.value) body.password = passInput.value;
const res = await fetch('api/caldav/test', {
@@ -132,12 +154,10 @@ $('caldav-test')?.addEventListener('click', async () => {
if (res.ok) {
const names = (res.calendars || []).map(c => c.name).join(', ');
testStatus.textContent = `connected (${names || 'no calendars'})`;
testStatus.style.color = 'var(--t-accent)';
setCaldavTestStatus(`connected (${names || 'no calendars'})`, 'success');
if (res.calendars) renderCalList(res.calendars);
} else {
testStatus.textContent = res.error || 'failed';
testStatus.style.color = 'var(--t-danger)';
setCaldavTestStatus(res.error || 'failed', 'error');
}
showConnectionLog(res.log);
});