<?php declare(strict_types=1);

namespace Application\Migrations;

use Doctrine\DBAL\Schema\Schema;
use Doctrine\DBAL\Migrations\AbstractMigration;

/**
 * Auto-generated Migration: Please modify to your needs!
 */
final class Version20180730142300 extends AbstractMigration
{
    public function up(Schema $schema) : void
    {
        // this up() migration is auto-generated, please modify it to your needs
        $this->abortIf($this->connection->getDatabasePlatform()->getName() !== 'postgresql', 'Migration can only be executed safely on \'postgresql\'.');

        $this->addSql('INSERT INTO typetemplate ("id", "title", "is_active") VALUES (9, \'Contact\', \'t\')');
        $this->addSql('UPDATE menu SET "typetemplate" = 9 WHERE "title" = \'Contact\'');

        $this->addSql('CREATE SEQUENCE contact_form_data_id_seq INCREMENT BY 1 MINVALUE 1 START 1');
        $this->addSql('CREATE TABLE contact_form_data (id INT NOT NULL, firstname VARCHAR(255) DEFAULT NULL, lastname VARCHAR(255) DEFAULT NULL, company VARCHAR(255) DEFAULT NULL, email VARCHAR(255) NOT NULL, category VARCHAR(255) NOT NULL, subject VARCHAR(255) NOT NULL, content TEXT NOT NULL, created TIMESTAMP(0) WITHOUT TIME ZONE NOT NULL, updated TIMESTAMP(0) WITHOUT TIME ZONE DEFAULT NULL, PRIMARY KEY(id))');
    }

    public function down(Schema $schema) : void
    {
        // this down() migration is auto-generated, please modify it to your needs
        $this->abortIf($this->connection->getDatabasePlatform()->getName() !== 'postgresql', 'Migration can only be executed safely on \'postgresql\'.');

        $this->addSql('UPDATE menu SET "typetemplate" = 1 WHERE "title" = \'Contact\'');
        $this->addSql('DELETE FROM typetemplate WHERE "title" = \'Contact\'');

        $this->addSql('DROP SEQUENCE contact_form_data_id_seq CASCADE');
        $this->addSql('DROP TABLE contact_form_data');
    }
}
