X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=app%2FDoctrineMigrations%2FVersion20160410190541.php;h=f034b0e467b46c83ffc67e393adfc6737c9b6845;hb=f53f542fa51075e742fc2295bfff2681b0375ea1;hp=f35f54cebd4573b14c9748db7b67c9fc396571a5;hpb=9a5231e8c424bf92c164c9bd27a9660c17cc7852;p=github%2Fwallabag%2Fwallabag.git diff --git a/app/DoctrineMigrations/Version20160410190541.php b/app/DoctrineMigrations/Version20160410190541.php index f35f54ce..f034b0e4 100644 --- a/app/DoctrineMigrations/Version20160410190541.php +++ b/app/DoctrineMigrations/Version20160410190541.php @@ -6,7 +6,6 @@ use Doctrine\DBAL\Migrations\AbstractMigration; use Doctrine\DBAL\Schema\Schema; use Symfony\Component\DependencyInjection\ContainerAwareInterface; use Symfony\Component\DependencyInjection\ContainerInterface; -use Wallabag\CoreBundle\Entity\Entry; class Version20160410190541 extends AbstractMigration implements ContainerAwareInterface { @@ -20,24 +19,23 @@ class Version20160410190541 extends AbstractMigration implements ContainerAwareI $this->container = $container; } + private function getTable($tableName) + { + return $this->container->getParameter('database_table_prefix') . $tableName; + } + /** * @param Schema $schema */ public function up(Schema $schema) { - $this->addSql('ALTER TABLE `wallabag_entry` ADD `uuid` LONGTEXT DEFAULT NULL'); - } - - public function postUp(Schema $schema) - { - $em = $this->container->get('doctrine.orm.entity_manager'); - $repository = $em->getRepository('WallabagCoreBundle:Entry'); - $entries = $repository->findAll(); - - /** @var Entry $entry */ - foreach ($entries as $entry) { - $this->addSql('UPDATE `wallabag_entry` SET `uuid` = "'.uniqid('', true).'" WHERE id = '.$entry->getId()); + if ($this->connection->getDatabasePlatform()->getName() == 'postgresql') { + $this->addSql('ALTER TABLE "'.$this->getTable('entry').'" ADD uuid UUID DEFAULT NULL'); + } else { + $this->addSql('ALTER TABLE "'.$this->getTable('entry').'" ADD uuid LONGTEXT DEFAULT NULL'); } + + $this->addSql("INSERT INTO \"".$this->getTable('craue_config_setting')."\" (name, value, section) VALUES ('share_public', '1', 'entry')"); } /** @@ -46,6 +44,8 @@ class Version20160410190541 extends AbstractMigration implements ContainerAwareI public function down(Schema $schema) { $this->abortIf($this->connection->getDatabasePlatform()->getName() != 'sqlite', 'This down migration can\'t be executed on SQLite databases, because SQLite don\'t support DROP COLUMN.'); - $this->addSql('ALTER TABLE `wallabag_entry` DROP `uuid`'); + + $this->addSql('ALTER TABLE "'.$this->getTable('entry').'" DROP uuid'); + $this->addSql("DELETE FROM \"".$this->getTable('craue_config_setting')."\" WHERE name = 'share_public'"); } }