<?php
declare(strict_types=1);
namespace DoctrineMigrations;
use Doctrine\DBAL\Schema\Schema;
use Doctrine\Migrations\AbstractMigration;
/**
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20230206203725 extends AbstractMigration
{
public function getDescription(): string
{
return '';
}
public function up(Schema $schema): void
{
// this up() migration is auto-generated, please modify it to your needs
$this->addSql('CREATE TABLE article (id INT AUTO_INCREMENT NOT NULL, titre VARCHAR(255) NOT NULL, slug VARCHAR(255) NOT NULL, bandeau VARCHAR(255) NOT NULL, vignette VARCHAR(255) NOT NULL, chapo LONGTEXT DEFAULT NULL, texte LONGTEXT NOT NULL, date DATE DEFAULT NULL, PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE article_theme (article_id INT NOT NULL, theme_id INT NOT NULL, INDEX IDX_E0C295197294869C (article_id), INDEX IDX_E0C2951959027487 (theme_id), PRIMARY KEY(article_id, theme_id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE article_evenement (article_id INT NOT NULL, evenement_id INT NOT NULL, INDEX IDX_D113383A7294869C (article_id), INDEX IDX_D113383AFD02F13 (evenement_id), PRIMARY KEY(article_id, evenement_id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE contact (id INT AUTO_INCREMENT NOT NULL, liste_id INT DEFAULT NULL, nom VARCHAR(100) NOT NULL, prenom VARCHAR(100) NOT NULL, email VARCHAR(200) NOT NULL, civilite VARCHAR(10) NOT NULL, societe VARCHAR(255) DEFAULT NULL, fonction VARCHAR(255) DEFAULT NULL, telephone VARCHAR(25) DEFAULT NULL, type VARCHAR(30) DEFAULT NULL, invitant_nom VARCHAR(150) DEFAULT NULL, invitant_prenom VARCHAR(150) DEFAULT NULL, invitant_email VARCHAR(255) DEFAULT NULL, invitant_territoire VARCHAR(255) DEFAULT NULL, invitant_agence VARCHAR(255) DEFAULT NULL, INDEX IDX_4C62E638E85441D8 (liste_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE diaporama (id INT AUTO_INCREMENT NOT NULL, evenement_id INT NOT NULL, titre VARCHAR(255) DEFAULT NULL, youtube VARCHAR(255) DEFAULT NULL, image VARCHAR(255) DEFAULT NULL, ordre INT NOT NULL, INDEX IDX_776658BEFD02F13 (evenement_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE document (id INT AUTO_INCREMENT NOT NULL, titre VARCHAR(255) NOT NULL, fichier VARCHAR(255) NOT NULL, date DATETIME NOT NULL, PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE envoi (id INT AUTO_INCREMENT NOT NULL, contact_id INT NOT NULL, message_id INT NOT NULL, date_envoi DATETIME DEFAULT NULL, date_ouverture DATETIME DEFAULT NULL, prog DATETIME NOT NULL, INDEX IDX_CA7E3566E7A1254A (contact_id), INDEX IDX_CA7E3566537A1329 (message_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE evenement (id INT AUTO_INCREMENT NOT NULL, utilisateur_id INT NOT NULL, titre VARCHAR(255) NOT NULL, date DATE DEFAULT NULL, lieu LONGTEXT DEFAULT NULL, enjeux LONGTEXT DEFAULT NULL, heure TIME DEFAULT NULL, ville VARCHAR(100) NOT NULL, texte LONGTEXT DEFAULT NULL, info_pratique LONGTEXT DEFAULT NULL, info_pratique_map VARCHAR(255) DEFAULT NULL, bandeau VARCHAR(255) DEFAULT NULL, vignette VARCHAR(255) DEFAULT NULL, entete_masque TINYINT(1) NOT NULL, soustitre VARCHAR(255) DEFAULT NULL, email_image VARCHAR(255) DEFAULT NULL, cache TINYINT(1) NOT NULL, INDEX IDX_B26681EFB88E14F (utilisateur_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE evenement_liste_contact (evenement_id INT NOT NULL, liste_contact_id INT NOT NULL, INDEX IDX_7FFCA7C4FD02F13 (evenement_id), INDEX IDX_7FFCA7C4F54BB8DC (liste_contact_id), PRIMARY KEY(evenement_id, liste_contact_id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE evenement_document (evenement_id INT NOT NULL, document_id INT NOT NULL, INDEX IDX_570F119EFD02F13 (evenement_id), INDEX IDX_570F119EC33F7837 (document_id), PRIMARY KEY(evenement_id, document_id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE evenement_intervenant (id INT AUTO_INCREMENT NOT NULL, evenement_id INT NOT NULL, intervenant_id INT NOT NULL, INDEX IDX_E2450277FD02F13 (evenement_id), INDEX IDX_E2450277AB9A1716 (intervenant_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE galerie (id INT AUTO_INCREMENT NOT NULL, evenement_id INT NOT NULL, photo VARCHAR(255) DEFAULT NULL, youtube VARCHAR(255) DEFAULT NULL, ordre INT NOT NULL, INDEX IDX_9E7D1590FD02F13 (evenement_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE inscription (id INT AUTO_INCREMENT NOT NULL, contact_id INT DEFAULT NULL, message_id INT DEFAULT NULL, evenement_id INT NOT NULL, date_inscription DATETIME NOT NULL, hebergement TINYINT(1) NOT NULL, accord_image TINYINT(1) NOT NULL, envoi_recap DATETIME DEFAULT NULL, envoi_satisfaction DATETIME DEFAULT NULL, envoi_satisfaction_j5 DATETIME DEFAULT NULL, integralite TINYINT(1) NOT NULL, visite TINYINT(1) NOT NULL, deuxieme TINYINT(1) NOT NULL, navette TINYINT(1) NOT NULL, INDEX IDX_5E90F6D6E7A1254A (contact_id), INDEX IDX_5E90F6D6537A1329 (message_id), INDEX IDX_5E90F6D6FD02F13 (evenement_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE intervenant (id INT AUTO_INCREMENT NOT NULL, prenom VARCHAR(100) NOT NULL, nom VARCHAR(100) NOT NULL, poste VARCHAR(255) DEFAULT NULL, societe VARCHAR(255) DEFAULT NULL, image VARCHAR(255) DEFAULT NULL, linkedin VARCHAR(255) DEFAULT NULL, PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE liste_contact (id INT AUTO_INCREMENT NOT NULL, utilisateur_id INT NOT NULL, titre VARCHAR(255) NOT NULL, INDEX IDX_FD587E69FB88E14F (utilisateur_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE message (id INT AUTO_INCREMENT NOT NULL, evenement_id INT NOT NULL, type VARCHAR(100) NOT NULL, objet VARCHAR(255) NOT NULL, date_envoi DATETIME NOT NULL, texte LONGTEXT DEFAULT NULL, piecejointe VARCHAR(255) DEFAULT NULL, soustitre VARCHAR(255) DEFAULT NULL, titre VARCHAR(255) NOT NULL, INDEX IDX_B6BD307FFD02F13 (evenement_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE optout (id INT AUTO_INCREMENT NOT NULL, email VARCHAR(150) NOT NULL, date DATETIME NOT NULL, PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE programme (id INT AUTO_INCREMENT NOT NULL, evenement_id INT DEFAULT NULL, heure_debut TIME NOT NULL, heure_fin TIME DEFAULT NULL, titre VARCHAR(255) NOT NULL, chapo LONGTEXT DEFAULT NULL, texte LONGTEXT DEFAULT NULL, jour DATE DEFAULT NULL, INDEX IDX_3DDCB9FFFD02F13 (evenement_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE question (id INT AUTO_INCREMENT NOT NULL, evenement_id INT DEFAULT NULL, intitule LONGTEXT NOT NULL, type VARCHAR(100) NOT NULL, reponse1 VARCHAR(255) DEFAULT NULL, reponse2 VARCHAR(255) DEFAULT NULL, reponse3 VARCHAR(255) DEFAULT NULL, reponse4 VARCHAR(255) DEFAULT NULL, ordre SMALLINT NOT NULL, desactive TINYINT(1) NOT NULL, INDEX IDX_B6F7494EFD02F13 (evenement_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE questionnaire (id INT AUTO_INCREMENT NOT NULL, titre VARCHAR(255) NOT NULL, PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE reponse (id INT AUTO_INCREMENT NOT NULL, inscription_id INT NOT NULL, question_id INT NOT NULL, contact_id INT NOT NULL, contenu LONGTEXT NOT NULL, commentaire LONGTEXT DEFAULT NULL, home TINYINT(1) NOT NULL, INDEX IDX_5FB6DEC75DAC5993 (inscription_id), INDEX IDX_5FB6DEC71E27F6BF (question_id), INDEX IDX_5FB6DEC7E7A1254A (contact_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE reset_password_request (id INT AUTO_INCREMENT NOT NULL, user_id INT NOT NULL, selector VARCHAR(20) NOT NULL, hashed_token VARCHAR(100) NOT NULL, requested_at DATETIME NOT NULL COMMENT \'(DC2Type:datetime_immutable)\', expires_at DATETIME NOT NULL COMMENT \'(DC2Type:datetime_immutable)\', INDEX IDX_7CE748AA76ED395 (user_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE theme (id INT AUTO_INCREMENT NOT NULL, titre VARCHAR(255) NOT NULL, slug VARCHAR(255) DEFAULT NULL, PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE user (id INT AUTO_INCREMENT NOT NULL, email VARCHAR(180) NOT NULL, roles JSON NOT NULL, password VARCHAR(255) NOT NULL, UNIQUE INDEX UNIQ_8D93D649E7927C74 (email), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE utilisateur (id INT AUTO_INCREMENT NOT NULL, email VARCHAR(255) NOT NULL, nom VARCHAR(80) NOT NULL, prenom VARCHAR(80) NOT NULL, roles JSON NOT NULL, password VARCHAR(255) DEFAULT NULL, PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE messenger_messages (id BIGINT AUTO_INCREMENT NOT NULL, body LONGTEXT NOT NULL, headers LONGTEXT NOT NULL, queue_name VARCHAR(190) NOT NULL, created_at DATETIME NOT NULL, available_at DATETIME NOT NULL, delivered_at DATETIME DEFAULT NULL, INDEX IDX_75EA56E0FB7336F0 (queue_name), INDEX IDX_75EA56E0E3BD61CE (available_at), INDEX IDX_75EA56E016BA31DB (delivered_at), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('ALTER TABLE article_theme ADD CONSTRAINT FK_E0C295197294869C FOREIGN KEY (article_id) REFERENCES article (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE article_theme ADD CONSTRAINT FK_E0C2951959027487 FOREIGN KEY (theme_id) REFERENCES theme (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE article_evenement ADD CONSTRAINT FK_D113383A7294869C FOREIGN KEY (article_id) REFERENCES article (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE article_evenement ADD CONSTRAINT FK_D113383AFD02F13 FOREIGN KEY (evenement_id) REFERENCES evenement (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE contact ADD CONSTRAINT FK_4C62E638E85441D8 FOREIGN KEY (liste_id) REFERENCES liste_contact (id)');
$this->addSql('ALTER TABLE diaporama ADD CONSTRAINT FK_776658BEFD02F13 FOREIGN KEY (evenement_id) REFERENCES evenement (id)');
$this->addSql('ALTER TABLE envoi ADD CONSTRAINT FK_CA7E3566E7A1254A FOREIGN KEY (contact_id) REFERENCES contact (id)');
$this->addSql('ALTER TABLE envoi ADD CONSTRAINT FK_CA7E3566537A1329 FOREIGN KEY (message_id) REFERENCES message (id)');
$this->addSql('ALTER TABLE evenement ADD CONSTRAINT FK_B26681EFB88E14F FOREIGN KEY (utilisateur_id) REFERENCES utilisateur (id)');
$this->addSql('ALTER TABLE evenement_liste_contact ADD CONSTRAINT FK_7FFCA7C4FD02F13 FOREIGN KEY (evenement_id) REFERENCES evenement (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE evenement_liste_contact ADD CONSTRAINT FK_7FFCA7C4F54BB8DC FOREIGN KEY (liste_contact_id) REFERENCES liste_contact (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE evenement_document ADD CONSTRAINT FK_570F119EFD02F13 FOREIGN KEY (evenement_id) REFERENCES evenement (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE evenement_document ADD CONSTRAINT FK_570F119EC33F7837 FOREIGN KEY (document_id) REFERENCES document (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE evenement_intervenant ADD CONSTRAINT FK_E2450277FD02F13 FOREIGN KEY (evenement_id) REFERENCES evenement (id)');
$this->addSql('ALTER TABLE evenement_intervenant ADD CONSTRAINT FK_E2450277AB9A1716 FOREIGN KEY (intervenant_id) REFERENCES intervenant (id)');
$this->addSql('ALTER TABLE galerie ADD CONSTRAINT FK_9E7D1590FD02F13 FOREIGN KEY (evenement_id) REFERENCES evenement (id)');
$this->addSql('ALTER TABLE inscription ADD CONSTRAINT FK_5E90F6D6E7A1254A FOREIGN KEY (contact_id) REFERENCES contact (id)');
$this->addSql('ALTER TABLE inscription ADD CONSTRAINT FK_5E90F6D6537A1329 FOREIGN KEY (message_id) REFERENCES message (id)');
$this->addSql('ALTER TABLE inscription ADD CONSTRAINT FK_5E90F6D6FD02F13 FOREIGN KEY (evenement_id) REFERENCES evenement (id)');
$this->addSql('ALTER TABLE liste_contact ADD CONSTRAINT FK_FD587E69FB88E14F FOREIGN KEY (utilisateur_id) REFERENCES utilisateur (id)');
$this->addSql('ALTER TABLE message ADD CONSTRAINT FK_B6BD307FFD02F13 FOREIGN KEY (evenement_id) REFERENCES evenement (id)');
$this->addSql('ALTER TABLE programme ADD CONSTRAINT FK_3DDCB9FFFD02F13 FOREIGN KEY (evenement_id) REFERENCES evenement (id)');
$this->addSql('ALTER TABLE question ADD CONSTRAINT FK_B6F7494EFD02F13 FOREIGN KEY (evenement_id) REFERENCES evenement (id)');
$this->addSql('ALTER TABLE reponse ADD CONSTRAINT FK_5FB6DEC75DAC5993 FOREIGN KEY (inscription_id) REFERENCES inscription (id)');
$this->addSql('ALTER TABLE reponse ADD CONSTRAINT FK_5FB6DEC71E27F6BF FOREIGN KEY (question_id) REFERENCES question (id)');
$this->addSql('ALTER TABLE reponse ADD CONSTRAINT FK_5FB6DEC7E7A1254A FOREIGN KEY (contact_id) REFERENCES contact (id)');
$this->addSql('ALTER TABLE reset_password_request ADD CONSTRAINT FK_7CE748AA76ED395 FOREIGN KEY (user_id) REFERENCES utilisateur (id)');
}
public function down(Schema $schema): void
{
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE article_theme DROP FOREIGN KEY FK_E0C295197294869C');
$this->addSql('ALTER TABLE article_evenement DROP FOREIGN KEY FK_D113383A7294869C');
$this->addSql('ALTER TABLE envoi DROP FOREIGN KEY FK_CA7E3566E7A1254A');
$this->addSql('ALTER TABLE inscription DROP FOREIGN KEY FK_5E90F6D6E7A1254A');
$this->addSql('ALTER TABLE reponse DROP FOREIGN KEY FK_5FB6DEC7E7A1254A');
$this->addSql('ALTER TABLE evenement_document DROP FOREIGN KEY FK_570F119EC33F7837');
$this->addSql('ALTER TABLE article_evenement DROP FOREIGN KEY FK_D113383AFD02F13');
$this->addSql('ALTER TABLE diaporama DROP FOREIGN KEY FK_776658BEFD02F13');
$this->addSql('ALTER TABLE evenement_liste_contact DROP FOREIGN KEY FK_7FFCA7C4FD02F13');
$this->addSql('ALTER TABLE evenement_document DROP FOREIGN KEY FK_570F119EFD02F13');
$this->addSql('ALTER TABLE evenement_intervenant DROP FOREIGN KEY FK_E2450277FD02F13');
$this->addSql('ALTER TABLE galerie DROP FOREIGN KEY FK_9E7D1590FD02F13');
$this->addSql('ALTER TABLE inscription DROP FOREIGN KEY FK_5E90F6D6FD02F13');
$this->addSql('ALTER TABLE message DROP FOREIGN KEY FK_B6BD307FFD02F13');
$this->addSql('ALTER TABLE programme DROP FOREIGN KEY FK_3DDCB9FFFD02F13');
$this->addSql('ALTER TABLE question DROP FOREIGN KEY FK_B6F7494EFD02F13');
$this->addSql('ALTER TABLE reponse DROP FOREIGN KEY FK_5FB6DEC75DAC5993');
$this->addSql('ALTER TABLE evenement_intervenant DROP FOREIGN KEY FK_E2450277AB9A1716');
$this->addSql('ALTER TABLE contact DROP FOREIGN KEY FK_4C62E638E85441D8');
$this->addSql('ALTER TABLE evenement_liste_contact DROP FOREIGN KEY FK_7FFCA7C4F54BB8DC');
$this->addSql('ALTER TABLE envoi DROP FOREIGN KEY FK_CA7E3566537A1329');
$this->addSql('ALTER TABLE inscription DROP FOREIGN KEY FK_5E90F6D6537A1329');
$this->addSql('ALTER TABLE reponse DROP FOREIGN KEY FK_5FB6DEC71E27F6BF');
$this->addSql('ALTER TABLE article_theme DROP FOREIGN KEY FK_E0C2951959027487');
$this->addSql('ALTER TABLE evenement DROP FOREIGN KEY FK_B26681EFB88E14F');
$this->addSql('ALTER TABLE liste_contact DROP FOREIGN KEY FK_FD587E69FB88E14F');
$this->addSql('ALTER TABLE reset_password_request DROP FOREIGN KEY FK_7CE748AA76ED395');
$this->addSql('DROP TABLE article');
$this->addSql('DROP TABLE article_theme');
$this->addSql('DROP TABLE article_evenement');
$this->addSql('DROP TABLE contact');
$this->addSql('DROP TABLE diaporama');
$this->addSql('DROP TABLE document');
$this->addSql('DROP TABLE envoi');
$this->addSql('DROP TABLE evenement');
$this->addSql('DROP TABLE evenement_liste_contact');
$this->addSql('DROP TABLE evenement_document');
$this->addSql('DROP TABLE evenement_intervenant');
$this->addSql('DROP TABLE galerie');
$this->addSql('DROP TABLE inscription');
$this->addSql('DROP TABLE intervenant');
$this->addSql('DROP TABLE liste_contact');
$this->addSql('DROP TABLE message');
$this->addSql('DROP TABLE optout');
$this->addSql('DROP TABLE programme');
$this->addSql('DROP TABLE question');
$this->addSql('DROP TABLE questionnaire');
$this->addSql('DROP TABLE reponse');
$this->addSql('DROP TABLE reset_password_request');
$this->addSql('DROP TABLE theme');
$this->addSql('DROP TABLE user');
$this->addSql('DROP TABLE utilisateur');
$this->addSql('DROP TABLE messenger_messages');
}
}