]>
Commit | Line | Data |
---|---|---|
1 | <?php | |
2 | ||
3 | namespace Application\Migrations; | |
4 | ||
5 | use Doctrine\DBAL\Schema\Schema; | |
6 | use Wallabag\CoreBundle\Doctrine\WallabagMigration; | |
7 | ||
8 | /** | |
9 | * Removed locked, credentials_expire_at and expires_at. | |
10 | */ | |
11 | class Version20161128131503 extends WallabagMigration | |
12 | { | |
13 | private $fields = [ | |
14 | 'locked' => 'smallint', | |
15 | 'credentials_expire_at' => 'datetime', | |
16 | 'expires_at' => 'datetime', | |
17 | ]; | |
18 | ||
19 | /** | |
20 | * @param Schema $schema | |
21 | */ | |
22 | public function up(Schema $schema) | |
23 | { | |
24 | $userTable = $schema->getTable($this->getTable('user')); | |
25 | ||
26 | foreach ($this->fields as $field => $type) { | |
27 | $this->skipIf(!$userTable->hasColumn($field), 'It seems that you already played this migration.'); | |
28 | $userTable->dropColumn($field); | |
29 | } | |
30 | } | |
31 | ||
32 | /** | |
33 | * @param Schema $schema | |
34 | */ | |
35 | public function down(Schema $schema) | |
36 | { | |
37 | $userTable = $schema->getTable($this->getTable('user')); | |
38 | ||
39 | foreach ($this->fields as $field => $type) { | |
40 | $this->skipIf($userTable->hasColumn($field), 'It seems that you already played this migration.'); | |
41 | $userTable->addColumn($field, $type, ['notnull' => false]); | |
42 | } | |
43 | } | |
44 | } |