2019-04-01 09:50:33 +00:00
|
|
|
<?php
|
|
|
|
|
|
|
|
namespace Application\Migrations;
|
|
|
|
|
|
|
|
use Doctrine\DBAL\Schema\Schema;
|
|
|
|
use Wallabag\CoreBundle\Doctrine\WallabagMigration;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Add hashed_url in entry.
|
|
|
|
*/
|
|
|
|
class Version20190401105353 extends WallabagMigration
|
|
|
|
{
|
|
|
|
/**
|
|
|
|
* @param Schema $schema
|
|
|
|
*/
|
|
|
|
public function up(Schema $schema)
|
|
|
|
{
|
|
|
|
$entryTable = $schema->getTable($this->getTable('entry'));
|
|
|
|
|
|
|
|
$this->skipIf($entryTable->hasColumn('hashed_url'), 'It seems that you already played this migration.');
|
|
|
|
|
|
|
|
$entryTable->addColumn('hashed_url', 'text', [
|
2019-04-01 11:51:57 +00:00
|
|
|
'length' => 40,
|
2019-04-01 09:50:33 +00:00
|
|
|
'notnull' => false,
|
|
|
|
]);
|
|
|
|
|
2019-04-01 13:45:17 +00:00
|
|
|
$entryTable->addIndex(['user_id', 'hashed_url'], 'hashed_url_user_id', [], ['lengths' => [null, 40]]);
|
2019-04-01 09:50:33 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @param Schema $schema
|
|
|
|
*/
|
|
|
|
public function down(Schema $schema)
|
|
|
|
{
|
|
|
|
$entryTable = $schema->getTable($this->getTable('entry'));
|
|
|
|
|
|
|
|
$this->skipIf(!$entryTable->hasColumn('hashed_url'), 'It seems that you already played this migration.');
|
|
|
|
|
2019-04-01 11:51:57 +00:00
|
|
|
$entryTable->dropIndex('hashed_url_user_id');
|
2019-04-01 09:50:33 +00:00
|
|
|
$entryTable->dropColumn('hashed_url');
|
|
|
|
}
|
|
|
|
}
|