3 namespace Application\Migrations
;
5 use Doctrine\DBAL\Schema\Schema
;
6 use Wallabag\CoreBundle\Doctrine\WallabagMigration
;
9 * Added `given_url` & `hashed_given_url` field in entry table.
11 class Version20190601125843
extends WallabagMigration
14 * @param Schema $schema
16 public function up(Schema
$schema)
18 $entryTable = $schema->getTable($this->getTable('entry'));
20 if (!$entryTable->hasColumn('given_url')) {
21 $entryTable->addColumn('given_url', 'text', [
26 if (!$entryTable->hasColumn('hashed_given_url')) {
27 $entryTable->addColumn('hashed_given_url', 'text', [
33 $entryTable->dropIndex('hashed_url_user_id');
34 $entryTable->addIndex(
40 'hashed_urls_user_id',
43 // specify length for index which is required by MySQL on text field
57 * @param Schema $schema
59 public function down(Schema
$schema)
61 $entryTable = $schema->getTable($this->getTable('entry'));
63 if ($entryTable->hasColumn('given_url')) {
64 $entryTable->dropColumn('given_url');
67 if ($entryTable->hasColumn('hashed_given_url')) {
68 $entryTable->dropColumn('hashed_given_url');
71 $entryTable->dropIndex('hashed_urls_user_id');
72 $entryTable->addIndex(['user_id', 'hashed_url'], 'hashed_url_user_id', [], ['lengths' => [null, 40]]);