diff --git a/crates/api/src/event/create_event.rs b/crates/api/src/event/create_event.rs index ebed6938..f36ed89b 100644 --- a/crates/api/src/event/create_event.rs +++ b/crates/api/src/event/create_event.rs @@ -10,6 +10,7 @@ use nittei_domain::{ User, }; use nittei_infra::NitteiContext; +use nittei_utils::config::APP_CONFIG; use super::subscribers::CreateRemindersOnEventCreated; use crate::{ @@ -234,10 +235,14 @@ impl UseCase for CreateEventUseCase { } fn subscribers() -> Vec>> { - vec![ - Box::new(CreateRemindersOnEventCreated), - Box::new(CreateSyncedEventsOnEventCreated), - ] + if APP_CONFIG.enable_reminders { + vec![ + Box::new(CreateRemindersOnEventCreated), + Box::new(CreateSyncedEventsOnEventCreated), + ] + } else { + vec![] + } } } diff --git a/crates/api/src/event/delete_event.rs b/crates/api/src/event/delete_event.rs index a8af5a99..a9de1f30 100644 --- a/crates/api/src/event/delete_event.rs +++ b/crates/api/src/event/delete_event.rs @@ -6,6 +6,7 @@ use nittei_infra::{ google_calendar::GoogleCalendarProvider, outlook_calendar::OutlookCalendarProvider, }; +use nittei_utils::config::APP_CONFIG; use tracing::error; use crate::{ @@ -105,7 +106,9 @@ impl UseCase for DeleteEventUseCase { _ => return Err(UseCaseError::NotFound(self.event_id.clone())), }; - self.delete_synced_events(&e, ctx).await; + if APP_CONFIG.enable_reminders { + self.delete_synced_events(&e, ctx).await; + } ctx.repos .events diff --git a/crates/api/src/event/update_event.rs b/crates/api/src/event/update_event.rs index 127f8171..9854a9b9 100644 --- a/crates/api/src/event/update_event.rs +++ b/crates/api/src/event/update_event.rs @@ -11,6 +11,7 @@ use nittei_domain::{ User, }; use nittei_infra::NitteiContext; +use nittei_utils::config::APP_CONFIG; use crate::{ error::NitteiError, @@ -354,10 +355,14 @@ impl UseCase for UpdateEventUseCase { } fn subscribers() -> Vec>> { - vec![ - Box::new(SyncRemindersOnEventUpdated), - Box::new(UpdateSyncedEventsOnEventUpdated), - ] + if APP_CONFIG.enable_reminders { + vec![ + Box::new(SyncRemindersOnEventUpdated), + Box::new(UpdateSyncedEventsOnEventUpdated), + ] + } else { + vec![] + } } } diff --git a/crates/utils/src/config.rs b/crates/utils/src/config.rs index 4e702649..f6cf06df 100644 --- a/crates/utils/src/config.rs +++ b/crates/utils/src/config.rs @@ -42,10 +42,10 @@ pub struct AppConfig { /// Env var: NITTEI__SKIP_DB_MIGRATIONS pub skip_db_migrations: bool, - /// This is a flag to enable the reminders job + /// This is a flag to enable the reminders features /// Default is false - /// Env var: NITTEI__ENABLE_REMINDERS_JOB - pub enable_reminders_job: bool, + /// Env var: NITTEI__ENABLE_REMINDERS + pub enable_reminders: bool, /// The account configuration /// This is used to find the superadmin account