mirror of
https://github.com/pelican-dev/panel.git
synced 2025-05-20 01:44:45 +02:00
30 lines
692 B
PHP
30 lines
692 B
PHP
<?php
|
|
|
|
namespace App\Traits;
|
|
|
|
use Illuminate\Database\Migrations\Migrator;
|
|
|
|
trait CheckMigrationsTrait
|
|
{
|
|
/**
|
|
* Checks if the migrations have finished running by comparing the last migration file.
|
|
*/
|
|
protected function hasCompletedMigrations(): bool
|
|
{
|
|
/** @var Migrator $migrator */
|
|
$migrator = app()->make('migrator'); // @phpstan-ignore-line
|
|
|
|
$files = $migrator->getMigrationFiles(database_path('migrations'));
|
|
|
|
if (!$migrator->repositoryExists()) {
|
|
return false;
|
|
}
|
|
|
|
if (array_diff(array_keys($files), $migrator->getRepository()->getRan())) {
|
|
return false;
|
|
}
|
|
|
|
return true;
|
|
}
|
|
}
|