| Conditions | 7 |
| Paths | 8 |
| Total Lines | 23 |
| Code Lines | 13 |
| Lines | 0 |
| Ratio | 0 % |
| Changes | 0 | ||
| 1 | <?php |
||
| 42 | public function handle() |
||
| 43 | { |
||
| 44 | $domains = Domain::whereVerified('1')->get(); |
||
| 45 | /** @var Domain $domain */ |
||
| 46 | $bar = $this->output->createProgressBar(\count($domains)); |
||
| 47 | // If RECURRENT_PER_RUN is defined and > 0 this many scans are started |
||
| 48 | // per run |
||
| 49 | $max_schedule = array_key_exists('RECURRENT_PER_RUN', $_ENV) ? $_ENV['RECURRENT_PER_RUN'] : (getenv('RECURRENT_PER_RUN') | 0); |
||
|
|
|||
| 50 | foreach ($domains as $domain) { |
||
| 51 | /** @var Scan $latestScan */ |
||
| 52 | $latestScan = $domain->scans()->latest()->first(); |
||
| 53 | // TIME CHECK |
||
| 54 | if ($latestScan && $latestScan instanceof Scan && $latestScan->updated_at > Carbon::now()->addDays(-1)) { |
||
| 55 | continue; |
||
| 56 | } |
||
| 57 | if ($latestScan->created_at > Carbon::now()->addHours(-2)) { |
||
| 58 | continue; |
||
| 59 | } |
||
| 60 | ScanController::startScanJob($domain->token, $domain->domain, true, 10); |
||
| 61 | $this->info('Scan started for: '.$domain->domain); |
||
| 62 | $bar->advance(); |
||
| 63 | } |
||
| 64 | $bar->finish(); |
||
| 65 | } |
||
| 67 |