feat: Gitea Webhook, IMAP, Settings & Deployment docs

- Webhook route and Gitea integration
- IMAP service and Nextcloud/Porkbun setup docs
- Settings UI improvements and API updates
- SSH/Webhook fix prompt for emailsorter.webklar.com
- Bootstrap, config and AI sorter updates
This commit is contained in:
2026-01-31 15:00:00 +01:00
parent 7e7ec1013b
commit cbb225c001
24 changed files with 2173 additions and 32 deletions

View File

@@ -161,6 +161,12 @@ async function setupCollections() {
db.createBooleanAttribute(DB_ID, 'email_accounts', 'isActive', true));
await ensureAttribute('email_accounts', 'lastSync', () =>
db.createDatetimeAttribute(DB_ID, 'email_accounts', 'lastSync', false));
await ensureAttribute('email_accounts', 'imapHost', () =>
db.createStringAttribute(DB_ID, 'email_accounts', 'imapHost', 256, false));
await ensureAttribute('email_accounts', 'imapPort', () =>
db.createIntegerAttribute(DB_ID, 'email_accounts', 'imapPort', false));
await ensureAttribute('email_accounts', 'imapSecure', () =>
db.createBooleanAttribute(DB_ID, 'email_accounts', 'imapSecure', false));
// ==================== Email Stats ====================
await ensureCollection('email_stats', 'Email Stats', PERM_AUTHENTICATED);