2017-01-27 10:44:04 +00:00
< ? php
namespace Application\Migrations ;
use Doctrine\DBAL\Schema\Schema ;
2024-02-19 00:30:12 +00:00
use Wallabag\Doctrine\WallabagMigration ;
2017-01-27 10:44:04 +00:00
/**
2017-04-13 10:57:31 +00:00
* Added indexes on wallabag_entry . is_starred and wallabag_entry . is_archived .
2017-01-27 10:44:04 +00:00
*/
2018-06-14 11:43:09 +00:00
class Version20170127093841 extends WallabagMigration
2017-01-27 10:44:04 +00:00
{
private $indexStarredName = 'IDX_entry_starred' ;
private $indexArchivedName = 'IDX_entry_archived' ;
2022-12-14 13:36:29 +00:00
public function up ( Schema $schema ) : void
2017-01-27 10:44:04 +00:00
{
$entryTable = $schema -> getTable ( $this -> getTable ( 'entry' ));
2017-01-27 11:10:52 +00:00
$this -> skipIf ( $entryTable -> hasIndex ( $this -> indexStarredName ) && $entryTable -> hasIndex ( $this -> indexArchivedName ), 'It seems that you already played this migration.' );
2017-01-27 10:44:04 +00:00
$entryTable -> addIndex ([ 'is_starred' ], $this -> indexStarredName );
$entryTable -> addIndex ([ 'is_archived' ], $this -> indexArchivedName );
}
2022-12-14 13:36:29 +00:00
public function down ( Schema $schema ) : void
2017-01-27 10:44:04 +00:00
{
$entryTable = $schema -> getTable ( $this -> getTable ( 'entry' ));
2017-01-27 11:10:52 +00:00
$this -> skipIf ( false === $entryTable -> hasIndex ( $this -> indexStarredName ) && false === $entryTable -> hasIndex ( $this -> indexArchivedName ), 'It seems that you already played this migration.' );
2017-01-27 10:44:04 +00:00
$entryTable -> dropIndex ( $this -> indexStarredName );
$entryTable -> dropIndex ( $this -> indexArchivedName );
}
}