diff --git a/src/server/api/client/[clientId]/enable.post.ts b/src/server/api/client/[clientId]/enable.post.ts index 406c33ac..16f2fbb8 100644 --- a/src/server/api/client/[clientId]/enable.post.ts +++ b/src/server/api/client/[clientId]/enable.post.ts @@ -12,6 +12,19 @@ export default definePermissionEventHandler( const client = await Database.clients.get(clientId); checkPermissions(client); + if ( + client && + client.expiresAt !== null && + new Date() > new Date(client.expiresAt) + ) { + throw createError({ + statusCode: 422, + statusMessage: + 'Client is expired. Please update the expiration date first.', + message: 'Client is expired. Please update the expiration date first.', + }); + } + await Database.clients.toggle(clientId, true); await WireGuard.saveConfig(); return { success: true };