Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
0.00% covered (danger)
0.00%
0 / 8
0.00% covered (danger)
0.00%
0 / 1
CRAP
0.00% covered (danger)
0.00%
0 / 1
FetchNewArticlesCommand
0.00% covered (danger)
0.00%
0 / 8
0.00% covered (danger)
0.00%
0 / 1
12
0.00% covered (danger)
0.00%
0 / 1
 handle
0.00% covered (danger)
0.00%
0 / 8
0.00% covered (danger)
0.00%
0 / 1
12
1<?php
2
3namespace App\Console\Commands;
4
5use App\Jobs\ArticleDiscoveryJob;
6use App\Models\Feed;
7use App\Models\Setting;
8use Illuminate\Console\Command;
9
10class FetchNewArticlesCommand extends Command
11{
12    protected $signature = 'article:refresh';
13
14    protected $description = 'Fetches latest articles';
15
16    public function handle(): int
17    {
18        if (!Setting::isArticleProcessingEnabled()) {
19            $this->info('Article processing is disabled. Article discovery skipped.');
20
21            return self::SUCCESS;
22        }
23
24        if (!Feed::where('is_active', true)->exists()) {
25            $this->info('No active feeds found. Article discovery skipped.');
26
27            return self::SUCCESS;
28        }
29
30        ArticleDiscoveryJob::dispatch();
31
32        return self::SUCCESS;
33    }
34}