feat:add registration management with token-based access
Add management tokens to registrations allowing users to view, edit, and cancel their registration via a unique URL. Implement email notifications for confirmations, updates, and cancellations using nodemailer. Simplify art forms grid from 6 to 4 items and remove trajectory links. Translate footer links to Dutch and fix matzah spelling in info section.
This commit is contained in:
@@ -15,6 +15,7 @@ import { Route as LoginRouteImport } from './routes/login'
|
||||
import { Route as ContactRouteImport } from './routes/contact'
|
||||
import { Route as AdminRouteImport } from './routes/admin'
|
||||
import { Route as IndexRouteImport } from './routes/index'
|
||||
import { Route as ManageTokenRouteImport } from './routes/manage.$token'
|
||||
import { Route as ApiRpcSplatRouteImport } from './routes/api/rpc/$'
|
||||
import { Route as ApiAuthSplatRouteImport } from './routes/api/auth/$'
|
||||
|
||||
@@ -48,6 +49,11 @@ const IndexRoute = IndexRouteImport.update({
|
||||
path: '/',
|
||||
getParentRoute: () => rootRouteImport,
|
||||
} as any)
|
||||
const ManageTokenRoute = ManageTokenRouteImport.update({
|
||||
id: '/manage/$token',
|
||||
path: '/manage/$token',
|
||||
getParentRoute: () => rootRouteImport,
|
||||
} as any)
|
||||
const ApiRpcSplatRoute = ApiRpcSplatRouteImport.update({
|
||||
id: '/api/rpc/$',
|
||||
path: '/api/rpc/$',
|
||||
@@ -66,6 +72,7 @@ export interface FileRoutesByFullPath {
|
||||
'/login': typeof LoginRoute
|
||||
'/privacy': typeof PrivacyRoute
|
||||
'/terms': typeof TermsRoute
|
||||
'/manage/$token': typeof ManageTokenRoute
|
||||
'/api/auth/$': typeof ApiAuthSplatRoute
|
||||
'/api/rpc/$': typeof ApiRpcSplatRoute
|
||||
}
|
||||
@@ -76,6 +83,7 @@ export interface FileRoutesByTo {
|
||||
'/login': typeof LoginRoute
|
||||
'/privacy': typeof PrivacyRoute
|
||||
'/terms': typeof TermsRoute
|
||||
'/manage/$token': typeof ManageTokenRoute
|
||||
'/api/auth/$': typeof ApiAuthSplatRoute
|
||||
'/api/rpc/$': typeof ApiRpcSplatRoute
|
||||
}
|
||||
@@ -87,6 +95,7 @@ export interface FileRoutesById {
|
||||
'/login': typeof LoginRoute
|
||||
'/privacy': typeof PrivacyRoute
|
||||
'/terms': typeof TermsRoute
|
||||
'/manage/$token': typeof ManageTokenRoute
|
||||
'/api/auth/$': typeof ApiAuthSplatRoute
|
||||
'/api/rpc/$': typeof ApiRpcSplatRoute
|
||||
}
|
||||
@@ -99,6 +108,7 @@ export interface FileRouteTypes {
|
||||
| '/login'
|
||||
| '/privacy'
|
||||
| '/terms'
|
||||
| '/manage/$token'
|
||||
| '/api/auth/$'
|
||||
| '/api/rpc/$'
|
||||
fileRoutesByTo: FileRoutesByTo
|
||||
@@ -109,6 +119,7 @@ export interface FileRouteTypes {
|
||||
| '/login'
|
||||
| '/privacy'
|
||||
| '/terms'
|
||||
| '/manage/$token'
|
||||
| '/api/auth/$'
|
||||
| '/api/rpc/$'
|
||||
id:
|
||||
@@ -119,6 +130,7 @@ export interface FileRouteTypes {
|
||||
| '/login'
|
||||
| '/privacy'
|
||||
| '/terms'
|
||||
| '/manage/$token'
|
||||
| '/api/auth/$'
|
||||
| '/api/rpc/$'
|
||||
fileRoutesById: FileRoutesById
|
||||
@@ -130,6 +142,7 @@ export interface RootRouteChildren {
|
||||
LoginRoute: typeof LoginRoute
|
||||
PrivacyRoute: typeof PrivacyRoute
|
||||
TermsRoute: typeof TermsRoute
|
||||
ManageTokenRoute: typeof ManageTokenRoute
|
||||
ApiAuthSplatRoute: typeof ApiAuthSplatRoute
|
||||
ApiRpcSplatRoute: typeof ApiRpcSplatRoute
|
||||
}
|
||||
@@ -178,6 +191,13 @@ declare module '@tanstack/react-router' {
|
||||
preLoaderRoute: typeof IndexRouteImport
|
||||
parentRoute: typeof rootRouteImport
|
||||
}
|
||||
'/manage/$token': {
|
||||
id: '/manage/$token'
|
||||
path: '/manage/$token'
|
||||
fullPath: '/manage/$token'
|
||||
preLoaderRoute: typeof ManageTokenRouteImport
|
||||
parentRoute: typeof rootRouteImport
|
||||
}
|
||||
'/api/rpc/$': {
|
||||
id: '/api/rpc/$'
|
||||
path: '/api/rpc/$'
|
||||
@@ -202,6 +222,7 @@ const rootRouteChildren: RootRouteChildren = {
|
||||
LoginRoute: LoginRoute,
|
||||
PrivacyRoute: PrivacyRoute,
|
||||
TermsRoute: TermsRoute,
|
||||
ManageTokenRoute: ManageTokenRoute,
|
||||
ApiAuthSplatRoute: ApiAuthSplatRoute,
|
||||
ApiRpcSplatRoute: ApiRpcSplatRoute,
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user