From c99ebca063fb379bbef08596fbc1976abeb6577c Mon Sep 17 00:00:00 2001 From: HolgerHatGarKeineNode Date: Fri, 24 Feb 2023 11:40:02 +0100 Subject: [PATCH] nostr events schedule --- .../Nostr/PublishUnpublishedItems.php | 2 ++ app/Console/Kernel.php | 29 +++++++++++++++++++ 2 files changed, 31 insertions(+) diff --git a/app/Console/Commands/Nostr/PublishUnpublishedItems.php b/app/Console/Commands/Nostr/PublishUnpublishedItems.php index 6b38a343..597f9ca4 100644 --- a/app/Console/Commands/Nostr/PublishUnpublishedItems.php +++ b/app/Console/Commands/Nostr/PublishUnpublishedItems.php @@ -26,6 +26,7 @@ class PublishUnpublishedItems extends Command */ public function handle(): void { + config(['app.user-timezone' => 'Europe/Berlin']); $modelName = $this->option('model'); $className = '\\App\Models\\'.$modelName; $model = $className::query() @@ -33,6 +34,7 @@ class PublishUnpublishedItems extends Command ->when($modelName === 'BitcoinEvent', fn($q) => $q->where('from', '>', now())) ->when($modelName === 'CourseEvent', fn($q) => $q->where('from', '>', now())) ->when($modelName === 'MeetupEvent', fn($q) => $q->where('start', '>', now())) + ->when($modelName === 'LibraryItem', fn($q) => $q->where('type', '<>', 'markdown_article')) ->first(); $this->publishOnNostr($model, $this->getText($model)); } diff --git a/app/Console/Kernel.php b/app/Console/Kernel.php index 3af3953f..62497af1 100644 --- a/app/Console/Kernel.php +++ b/app/Console/Kernel.php @@ -4,6 +4,7 @@ namespace App\Console; use App\Console\Commands\Database\CleanupLoginKeys; use App\Console\Commands\Feed\ReadAndSyncPodcastFeeds; +use App\Console\Commands\Nostr\PublishUnpublishedItems; use App\Console\Commands\OpenBooks\SyncOpenBooks; use Illuminate\Console\Scheduling\Schedule; use Illuminate\Foundation\Console\Kernel as ConsoleKernel; @@ -29,6 +30,34 @@ class Kernel extends ConsoleKernel ->dailyAt('04:30'); $schedule->command(CleanupLoginKeys::class) ->everyFifteenMinutes(); + $schedule->command(PublishUnpublishedItems::class, [ + '--model' => 'LibraryItem', + ]) + ->everySixHours(); + $schedule->command(PublishUnpublishedItems::class, [ + '--model' => 'BitcoinEvent', + ]) + ->hourly(); + $schedule->command(PublishUnpublishedItems::class, [ + '--model' => 'CourseEvent', + ]) + ->everyTwoHours(); + $schedule->command(PublishUnpublishedItems::class, [ + '--model' => 'MeetupEvent', + ]) + ->everyThreeHours(); + $schedule->command(PublishUnpublishedItems::class, [ + '--model' => 'Meetup', + ]) + ->everyFourHours(); + $schedule->command(PublishUnpublishedItems::class, [ + '--model' => 'Course', + ]) + ->everySixHours(); + $schedule->command(PublishUnpublishedItems::class, [ + '--model' => 'OrangePill', + ]) + ->everyFourHours(); } /**