<?php /** * Copyright (c) D3 Data Development (Inh. Thomas Dartsch) * * For the full copyright and license information, please view * the LICENSE file that was distributed with this source code. * * https://www.d3data.de * * @copyright (C) D3 Data Development (Inh. Thomas Dartsch) * @author D3 Data Development - Max Buhe, Daniel Seifert <info@shopmodule.com> * @link https://www.oxidmodule.com */ declare(strict_types=1); namespace D3\ManufacturerInformation\Migrations; use Doctrine\DBAL\Schema\Schema; use Doctrine\DBAL\Types\TextType; use Doctrine\Migrations\AbstractMigration; /** * Auto-generated Migration: Please modify to your needs! */ final class Version20241023154223 extends AbstractMigration { public function getDescription(): string { return 'Add the D3 manufacturer longdesc column'; } public function up(Schema $schema): void { $this->connection->getDatabasePlatform()->registerDoctrineTypeMapping('enum', 'string'); $this->d3AddLongdescColumnToOxmanufacturers($schema); } public function down(Schema $schema): void { } /** * @param Schema $schema * @return void * @throws \Doctrine\DBAL\Schema\SchemaException */ public function d3AddLongdescColumnToOxmanufacturers(Schema $schema) { $table = !$schema->hasTable('oxmanufacturers') ? $schema->createTable('oxmanufacturers') : $schema->getTable('oxmanufacturers'); // Beschreibung if (!$table->hasColumn('D3DESCRIPTION')) { $table->addColumn('D3DESCRIPTION', (new TextType())->getName()) ->setLength($this->connection->getDatabasePlatform()::LENGTH_LIMIT_TEXT) ->setNotnull(true); } } }