| 1 |
<?php |
| 2 |
namespace Depicter\Editor\Migrations; |
| 3 |
|
| 4 |
|
| 5 |
class JobsQueue |
| 6 |
{ |
| 7 |
|
| 8 |
public function migrate(){ |
| 9 |
$jobsList = \Depicter::storage()->filesystem()->scan(__DIR__); |
| 10 |
|
| 11 |
$latestExecutedJob = \Depicter::options()->get('last_document_migration', 0 ); |
| 12 |
if ( $jobsList ) { |
| 13 |
foreach( $jobsList as $key => $job ) { |
| 14 |
if ( $job['name'] == 'JobsQueue.php' ) { |
| 15 |
continue; |
| 16 |
} |
| 17 |
|
| 18 |
$jobName = basename( $job['name'], '.php'); |
| 19 |
$jobVersion = str_replace( 'Version', '', $jobName ); |
| 20 |
if ( $jobVersion > $latestExecutedJob ) { |
| 21 |
$jobClassName = "Depicter\Editor\Migrations\\" . $jobName; |
| 22 |
( new $jobClassName() )->up(); |
| 23 |
\Depicter::options()->set( 'last_document_migration', $jobVersion ); |
| 24 |
} |
| 25 |
} |
| 26 |
} |
| 27 |
} |
| 28 |
} |
| 29 |
|