# frozen_string_literal: true

module Jobs
  class ProcessUserNotificationSchedules < ::Jobs::Scheduled
    every 1.day

    def execute(args)
      UserNotificationSchedule.enabled.includes(:user).each do |schedule|
        begin
          schedule.create_do_not_disturb_timings
        rescue => e
          Discourse.warn_exception(e, message: "Failed to process user_notification_schedule with ID #{schedule.id}")
        end
      end
    end
  end
end