* * @copyright Copyright (c) 2022 OXID eSales AG (https://www.oxid-esales.com) * @copyright Copyright (c) 2022 O3-Shop (https://www.o3-shop.com) * @license https://www.gnu.org/licenses/gpl-3.0 GNU General Public License 3 (GPLv3) */ namespace OxidEsales\EshopCommunity\Migrations; use Doctrine\Migrations\AbstractMigration; use Doctrine\DBAL\Schema\Schema; use OxidEsales\Eshop\Core\Config; use OxidEsales\Eshop\Core\ConfigFile; use OxidEsales\Facts\Facts; /** * Auto-generated Migration: Please modify to your needs! */ class Version20180703135728 extends AbstractMigration { /** * @param Schema $schema */ public function up(Schema $schema): void { $facts = new Facts(); $configFile = new ConfigFile($facts->getSourcePath() . '/config.inc.php'); $configKey = is_null($configFile->getVar('sConfigKey')) ? Config::DEFAULT_CONFIG_KEY : $configFile->getVar('sConfigKey'); $varName = 'contactFormRequiredFields'; $varType = 'arr'; $rawValue = serialize(['email']); $query = "INSERT INTO `oxconfig` ( `OXID`, `OXSHOPID`, `OXVARNAME`, `OXVARTYPE`, `OXVARVALUE` ) SELECT REPLACE(UUID( ) , '-', '' ), `OXID`, ?, ?, ? FROM `oxshops` WHERE NOT EXISTS ( SELECT `OXVARNAME` FROM `oxconfig` WHERE `OXVARNAME` = ? AND `oxconfig`.OXSHOPID = `oxshops`.OXID )"; $this->addSql( $query, [$varName, $varType, $rawValue, $varName] ); } /** * @param Schema $schema */ public function down(Schema $schema): void { // this down() migration is auto-generated, please modify it to your needs } public function isTransactional(): bool { return false; } }