diff --git a/backend/src/app.module.ts b/backend/src/app.module.ts index bbc133f..a731c78 100644 --- a/backend/src/app.module.ts +++ b/backend/src/app.module.ts @@ -1,6 +1,7 @@ import { Module } from '@nestjs/common'; import { ConfigModule } from '@nestjs/config'; import { TypeOrmModule } from '@nestjs/typeorm'; +import { APP_GUARD } from '@nestjs/core'; import { AppController } from './app.controller'; import { AppService } from './app.service'; import { ArticlesModule } from './modules/articles.module'; @@ -23,6 +24,7 @@ import { } from './modules/entities'; import { ShareEvent } from './modules/analytics/analytics.entity'; import { PushSubscriptionEntity } from './modules/push/push-subscription.entity'; +import { JwtAuthPublicGuard } from './modules/auth/jwt-auth-public.guard'; @Module({ imports: [ @@ -61,6 +63,12 @@ import { PushSubscriptionEntity } from './modules/push/push-subscription.entity' PushModule, ], controllers: [AppController], - providers: [AppService], + providers: [ + AppService, + { + provide: APP_GUARD, + useClass: JwtAuthPublicGuard, + }, + ], }) export class AppModule {} diff --git a/backend/src/main.ts b/backend/src/main.ts index e7c8541..715666a 100644 --- a/backend/src/main.ts +++ b/backend/src/main.ts @@ -1,7 +1,6 @@ -import { NestFactory, Reflector } from '@nestjs/core'; +import { NestFactory } from '@nestjs/core'; import { ValidationPipe } from '@nestjs/common'; import { AppModule } from './app.module'; -import { JwtAuthPublicGuard } from './modules/auth/jwt-auth-public.guard'; async function bootstrap() { const app = await NestFactory.create(AppModule); @@ -36,10 +35,6 @@ async function bootstrap() { }), ); - // Apply global authentication guard - const reflector = app.get(Reflector); - app.useGlobalGuards(new JwtAuthPublicGuard(reflector)); - const port = process.env.PORT ?? 3000; const host = '0.0.0.0'; // Bind to all interfaces for Docker await app.listen(port, host); diff --git a/backend/src/modules/strapi.controller.ts b/backend/src/modules/strapi.controller.ts index e37a2d9..bb22925 100644 --- a/backend/src/modules/strapi.controller.ts +++ b/backend/src/modules/strapi.controller.ts @@ -134,12 +134,14 @@ export class StrapiController { } @Post('sync/live-blogs') + @Public() async syncAllLiveBlogs() { await this.strapiService.syncLiveBlogs(); return { message: 'Live blogs sync completed' }; } @Post('sync/everything') + @Public() async syncEverything() { await Promise.all([ this.strapiService.syncArticles(),