feat: implement DASHBOARD_ORIGIN for invite and email links, enhancing self-hosted configuration and updating related documentation

This commit is contained in:
Rotimi Best
2026-03-11 17:00:44 +01:00
parent c5c65b96d7
commit fd11bdd4b0
14 changed files with 41 additions and 33 deletions
+2 -6
View File
@@ -10,7 +10,7 @@ import {
revokeActiveOrganizationInvitesByEmails
} from '@cio/db/queries/organization';
import { db } from '@cio/db/drizzle';
import { env } from '@api/config/env';
import { getDashboardBaseUrl } from '@api/config/dashboard-url';
import { sendEmail } from '@cio/email';
import { ROLE } from '@cio/utils/constants';
import * as schema from '@cio/db/schema';
@@ -42,12 +42,8 @@ function normalizeEmails(emails: string[]): string[] {
return [...new Set(emails.map((email) => email.toLowerCase().trim()).filter(Boolean))];
}
function getAppBaseUrl(): string {
return env.NODE_ENV === 'development' ? 'http://localhost:5173' : 'https://app.classroomio.com';
}
function buildInviteLink(token: string): string {
return `${getAppBaseUrl()}/invite/t/${encodeURIComponent(token)}`;
return `${getDashboardBaseUrl()}/invite/t/${encodeURIComponent(token)}`;
}
function getRoleLabel(roleId: number): string {