migrations/Version20201026154142.php line 1

Open in your IDE?
  1. <?php
  2. declare(strict_types=1);
  3. namespace DoctrineMigrations;
  4. use Doctrine\DBAL\Schema\Schema;
  5. use Doctrine\Migrations\AbstractMigration;
  6. /**
  7.  * Auto-generated Migration: Please modify to your needs!
  8.  */
  9. final class Version20201026154142 extends AbstractMigration
  10. {
  11.     public function getDescription(): string
  12.     {
  13.         return '';
  14.     }
  15.     public function up(Schema $schema): void
  16.     {
  17.         // this up() migration is auto-generated, please modify it to your needs
  18.         $this->abortIf('mysql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'mysql\'.');
  19.         $this->addSql('CREATE TABLE stream_comment (id INT AUTO_INCREMENT NOT NULL, stream_id INT DEFAULT NULL, user_id INT DEFAULT NULL, parent_id INT DEFAULT NULL, body LONGTEXT NOT NULL, created_at DATETIME NOT NULL, modified_at DATETIME NOT NULL, INDEX IDX_C21DB99FD0ED463E (stream_id), INDEX IDX_C21DB99FA76ED395 (user_id), INDEX IDX_C21DB99F727ACA70 (parent_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci ENGINE = InnoDB');
  20.         $this->addSql('CREATE TABLE stream_participant (id INT AUTO_INCREMENT NOT NULL, stream_id INT DEFAULT NULL, user_id INT DEFAULT NULL, viewed TINYINT(1) NOT NULL, unread TINYINT(1) NOT NULL, INDEX IDX_D0CCC936D0ED463E (stream_id), INDEX IDX_D0CCC936A76ED395 (user_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci ENGINE = InnoDB');
  21.         $this->addSql('CREATE TABLE stream (id INT AUTO_INCREMENT NOT NULL, user_id INT DEFAULT NULL, name VARCHAR(255) NOT NULL, created_at DATETIME NOT NULL, modified_at DATETIME NOT NULL, allow_all_users TINYINT(1) NOT NULL, allow_all_groups TINYINT(1) NOT NULL, INDEX IDX_F0E9BE1CA76ED395 (user_id), INDEX idx_name (name), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci ENGINE = InnoDB');
  22.         $this->addSql('CREATE TABLE stream_join_user (stream_id INT NOT NULL, user_id INT NOT NULL, INDEX IDX_14824437D0ED463E (stream_id), INDEX IDX_14824437A76ED395 (user_id), PRIMARY KEY(stream_id, user_id)) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci ENGINE = InnoDB');
  23.         $this->addSql('CREATE TABLE stream_join_group (stream_id INT NOT NULL, group_id INT NOT NULL, INDEX IDX_DAE4096CD0ED463E (stream_id), INDEX IDX_DAE4096CFE54D947 (group_id), PRIMARY KEY(stream_id, group_id)) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci ENGINE = InnoDB');
  24.         $this->addSql('ALTER TABLE stream_comment ADD CONSTRAINT FK_C21DB99FD0ED463E FOREIGN KEY (stream_id) REFERENCES stream (id) ON DELETE CASCADE');
  25.         $this->addSql('ALTER TABLE stream_comment ADD CONSTRAINT FK_C21DB99FA76ED395 FOREIGN KEY (user_id) REFERENCES user (id) ON DELETE SET NULL');
  26.         $this->addSql('ALTER TABLE stream_comment ADD CONSTRAINT FK_C21DB99F727ACA70 FOREIGN KEY (parent_id) REFERENCES stream_comment (id) ON DELETE SET NULL');
  27.         $this->addSql('ALTER TABLE stream_participant ADD CONSTRAINT FK_D0CCC936D0ED463E FOREIGN KEY (stream_id) REFERENCES stream (id) ON DELETE CASCADE');
  28.         $this->addSql('ALTER TABLE stream_participant ADD CONSTRAINT FK_D0CCC936A76ED395 FOREIGN KEY (user_id) REFERENCES user (id) ON DELETE CASCADE');
  29.         $this->addSql('ALTER TABLE stream ADD CONSTRAINT FK_F0E9BE1CA76ED395 FOREIGN KEY (user_id) REFERENCES user (id) ON DELETE SET NULL');
  30.         $this->addSql('ALTER TABLE stream_join_user ADD CONSTRAINT FK_14824437D0ED463E FOREIGN KEY (stream_id) REFERENCES stream (id) ON DELETE CASCADE');
  31.         $this->addSql('ALTER TABLE stream_join_user ADD CONSTRAINT FK_14824437A76ED395 FOREIGN KEY (user_id) REFERENCES user (id) ON DELETE CASCADE');
  32.         $this->addSql('ALTER TABLE stream_join_group ADD CONSTRAINT FK_DAE4096CD0ED463E FOREIGN KEY (stream_id) REFERENCES stream (id) ON DELETE CASCADE');
  33.         $this->addSql('ALTER TABLE stream_join_group ADD CONSTRAINT FK_DAE4096CFE54D947 FOREIGN KEY (group_id) REFERENCES user_group (id) ON DELETE CASCADE');
  34.     }
  35.     public function down(Schema $schema): void
  36.     {
  37.         // this down() migration is auto-generated, please modify it to your needs
  38.         $this->abortIf('mysql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'mysql\'.');
  39.         $this->addSql('ALTER TABLE stream_comment DROP FOREIGN KEY FK_C21DB99F727ACA70');
  40.         $this->addSql('ALTER TABLE stream_comment DROP FOREIGN KEY FK_C21DB99FD0ED463E');
  41.         $this->addSql('ALTER TABLE stream_participant DROP FOREIGN KEY FK_D0CCC936D0ED463E');
  42.         $this->addSql('ALTER TABLE stream_join_user DROP FOREIGN KEY FK_14824437D0ED463E');
  43.         $this->addSql('ALTER TABLE stream_join_group DROP FOREIGN KEY FK_DAE4096CD0ED463E');
  44.         $this->addSql('DROP TABLE stream_comment');
  45.         $this->addSql('DROP TABLE stream_participant');
  46.         $this->addSql('DROP TABLE stream');
  47.         $this->addSql('DROP TABLE stream_join_user');
  48.         $this->addSql('DROP TABLE stream_join_group');
  49.     }
  50. }