migrations/Version20250311115852.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 Version20250311115852 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.         $conn $this->connection;
  19.         //get all languages from std_languages
  20.         $sql "SELECT `language_code` FROM `std_languages`";
  21.         $stmt $conn->executeQuery($sql);
  22.         $languages $stmt->fetchAllAssociative();
  23.         //iterate through all the languages and create a menu config for each language        
  24.           
  25.         foreach ($languages as $language) {
  26.             $languageCode $language['language_code'];           
  27.             $this->addSql("
  28.                 SET @order_value = (SELECT MAX(`order_value`) FROM `std_config` WHERE `parent_name` = 'Default SEO') + 1
  29.             ");
  30.             
  31.             $this->addSql("
  32.                 INSERT INTO `std_config` (`machine_name`, `created_by`, `updated_by`, `value`, `description_machine_name`, `details_machine_name`, `parent_name`, `variable_type`, `order_value`, `is_hidden`, `is_active`, `created_date`, `updated_date`, `label`, `content`, `language_code`, `roles`) VALUES
  33.                 ('extra_text_title', 1, 1, NULL, 'extra_text_title', 'extra_text_title', 'Default SEO', 'INPUT', @order_value, 0, 1, now(), now(), 'Extra Text for Title', NULL, '$languageCode', NULL);
  34.             ");
  35.             $this->addSql("
  36.                 INSERT INTO `std_config` (`machine_name`, `created_by`, `updated_by`, `value`, `description_machine_name`, `details_machine_name`, `parent_name`, `variable_type`, `order_value`, `is_hidden`, `is_active`, `created_date`, `updated_date`, `label`, `content`, `language_code`, `roles`) VALUES
  37.                 ('extra_text_left', 1, 1, '0', 'extra_text_left', 'extra_text_left', 'Default SEO', 'CHECKBOX', @order_value + 1, 0, 1, now(), now(), 'Add extra text to the left of the title?', NULL, '$languageCode', NULL);
  38.             ");
  39.         }        
  40.     }
  41.     public function down(Schema $schema): void
  42.     {
  43.         // this down() migration is auto-generated, please modify it to your needs
  44.         $this->addSql("
  45.             DELETE FROM `std_config` WHERE `machine_name` = 'extra_text_title';
  46.             DELETE FROM `std_config` WHERE `machine_name` = 'extra_text_left';
  47.             "
  48.         );
  49.     }
  50. }